Win7も2020/1/14 に延長サポート期間が終了します。マイクロソフトは、最新の Windows 10 環境への移行を勧めています。移行がスムーズに行われるように多くの動作検証、アップグレードのためのドキュメントも公開しています。移行に関する記事も多数、存在します。それでも移行につまずく方も多いようです。
本記事は、アップグレードによるトラブル、特に直接業務に影響することを心配されている企業の方、いずれかのタイミングでアップグレードをしようと思ったものの、無料アップグレードのタイミングを失してアップグレードができずにいる方、あるいは、アップグレードしたものの、度重なる半強制的な自動更新にまつわる、さまざまな不具合に遭遇して疲弊している方への情報です。
皆さんは Windows に何を期待していますか?多くの人は「いつも通りの操作」で、「いつも通りのアプリケーションが安心して安定的に動く事」だと思います。Windows 10 にアップグレードした方の多くも、「安心して動かすため」とか、特に何も考えずに「サポートが終了するから」という回答だと思います。
本稿では、いつも通りのアプリケーションを安心して安定的に動かすために、Windows10へのアップグレードではなく、「Linuxの上のゲストWinXP」を提案します。
図1 Linux上のブラウザFirefox と WinXP上のテキストエディタmeryを使っているシーン
・ホストPC(Ubuntu)を起動(実測68秒)して、VirtualBoxを起動(1秒)、ゲストPC(WinXP)を起動(13秒)
・ネットアクセスはLinuxのFirefoxとThunderbird
・その他はWinXPの上で作業
●クリップボードはホスト・ゲストで双方向に利用可能なので、検索結果のコピペはネットにつながったオンラインWinXPとそん色ない使い心地を実現しています!
●ネットコンテンツからウイルスを持ち込まないために筆者は、テキストエディタにいったんコピーして、文字情報だけになったコンテンツをテキストエディタからワードやエクセルにコピペしています。
●USBメモリも(USB接続の)プリンタもWinXPから使えます。
●右CTRL-Fで全画面/ウインド画面の切り換え。全画面にすると正に WinXP そのもの!
●WinXPから「オフラインなのでネットに接続しないのか」といった趣旨のメッセージが来ますが、当然、無視します。
図2 ゲストPC(WinXP)の起動、FirefoxとThunderbird起動の各アイコン
マイクロソフトには申し訳ないことですが、最新の Windows 10
環境に引っ越すことなく、半永久的にWinXPの環境で安心してワード・エクセル等を使っての事務作業が可能となります。
万が一、PCのハードウエアが故障したとしても、オフライン部は、
WinXPの仮想PCのディスクイメージファイル XP.vdi
とDドライブのデータ
があれば、簡単に別のPCで同じ環境が再構築できます。
・調子のよいときのXP.DVIを、Windows用のDドライブにコピー(マイリカバリイメージ保存)
・調子が悪くなったら、保存していたXP.DVIを
/home/vboximg に上書き(マイリカバリ)
環境の変更は面倒なので、個人的には、Win7の延長サポート期間が終了するタイミングで変更することを検討していました。しかし、最近(2018-10月以降)PCの動作が重くなり、リカバリしても回復しないという原因不明の症状に至りました。ネット検索すると、同様の症状らしき書き込みもあり、オフラインのアプリの起動も遅くなってきています。マイクロソフトが何かしたのかしら? 新種のウイルスが悪さしているのかしら? 原因はわかりません。
そんな中、重くなったPCからの脱出を試行錯誤するうちに、試しにゲストPCにWinXPをインストールして使ってみると、Win7と同じアプリが、遅くなったホストPCのWin7より、ゲストPCのWinXPで軽快に起動することを発見。考えてみれば、日常使っているワードやエクセル、パワポ、テキストエディタはバージョンアップはしたもののすべてWinXP時代から引き継いだアプリばかり。いっそのこと、OSはWinXPに戻しても、特段、困った事態には至らないのではとの考えに至るのでした。
皆さんは、PCをどのような目的で使用されているのでしょう?
ネットサーフィンをしたり、ネットにデータをアップして情報発信をする目的であれば、ネット接続は必須です。一方、ワードやエクセルなどの事務処理では、ネット接続は基本的に不必要です。フォトショップやGIMP等で画像処理、専用ソフトでの音楽の再生や編集など、ネット接続が不必要なアプリや処理が実はたくさんあることに気が付くと思います。これらは、5年前にサポートを終了したWinXPでも、ネットから隔離してオフラインで使用すれば安全に快適に処理できることは、想像に難くないでしょう。
延長サポート期間が終了している、ということは、仮に WinXP に何かしらの不備が発見された場合でも、もはや WinXP の更新プログラムはマイクロソフトから提供されないということです。しかし、WinXPの不備には基本動作の不備とネット関連のセキュリティホールに関連する不備があり、前者の不備については長期間の利用により、ほぼ問題は出尽くした感があるといってよいと思います。
一方、後者の不備に関しては、日々更新され変化し増殖し続けるウイルスソフトに対応するため、安全といえるのは、新しいウイルスソフトが開発されるまでの一時的な状況になります。つまり、 常に最新のウイルス対策を行わない限り安心してPCを使うことができないということになります。したがって、サポート期間が終了しているOSの利用は危険であるとの結論になるわけです。
逆に、オフラインでネットに接続しないのであれば、
WinXPは基本動作の不備が無くなったほぼ完成された OS
とも言えるわけです。
図3 サポートとは? WinXPに不具合は見つかった場合に、更新プログラムが提供されるということ。
WinXPの基本動作の不備はほぼ解決しているので、ネット関連のセキュリティ対策のサポートがほとんど。
本記事では、「Linuxの上のゲストWinXP」の作り方について解説します。
実はこの記事は2回目なのです。前記事を書いたから5年程経過しました。前記事では、WinXPのマシンをホストOSをLinuxにしてその中にゲストOSとしてWinXPをインストールする方法を書きました。しかし、非力なPCでは、ホストマシンとしてXP運用は可能でも、仮想マシンのXPでは動きがギクシャクして実用に耐えない場合がありました。しかし、Win7のマシンで同じことを実行してみたところ、ゲストマシンのWinXPも十分実用的な応答が得られましたので、自信をもってお勧めします。
概要は、
・HDDのパーティションを「/ 15GB,/home 35GB,swap
2GB,/home/windows
ドライブ(残り)」の4つに分割して、ホストPCにLinuxをインストール
・VirtualBoxでゲストPCを用意し、WinXPをインストール
・共有フォルダとして、/home/windowsを指定して、ゲストPCを起動
・メール送受信等ネットアクセスはホストPCで、ワードやエクセルはオフラインのゲストPCで運用
です。
以下、設定の詳細を説明します。
用意するものは以下の4点です。
WinXPの仮想PCのディスクイメージファイル XP.vdi
(4.4GB) (注*)
ubuntu-ja-18.04.1-desktop-amd64.iso
(1.85GB)
HDD 1000GB
USBメモリ 2GB以上
注*) 今回使用したWinXPの仮想PCのディスクイメージファイル XP.vdi は前記事の 「WinXPをネットから隔離して仮想マシンの上で運用しよう」で作成したものを流用しました。
「仮想マシン 作成方法」等の検索ワードで検索するといろいろな作り方があります。
例1:フリーのユーティリティ「Disk2vhd」。ダウンロードしたのちダブルクリックして起動、形式を“vhdx”ではなく“vhd”を指定し、保存先を指定して[Create]ボタンをクリック。
例2:フリーのEaseUs Todo
Backupでディスクイメージを作成。VirtualBoxを起動して、仮想PC環境で「CD起動のEaseUs Todo
Backupを使ってリカバリ」する。結果、XP.vdiが作成できる。
例3:VirtualBox「新規」で、WindowsXPのインストールCDから作成。WindowsXPのインストールCDのISOイメージを用意。VirtualBoxを起動し、
新規
- XP
メモリは実メモリの半分程度
仮想ハードドライブを作成する(C)
VDI(VirtualBox Disk
Image)
可変サイズ(D)
設定 -
ストレージ
コントローラーIDE
「+」のCDのアイコンクリック 「ディスクの使用」 WinXP起動用のISOイメージを指定
起動
下図のようなパーティションのHDDを作ります。
(Windowsの外付けHDDとして、図のようなパーティション配置にしてから、手順5)を先に行ってもよいですが、ここではLINUXでパーティションの設定を行う手順で説明します。)
・HDDをPCにセットし、電源投入直後にF12を打鍵してUSBメモリ起動
・ubuntuが起動するので、日本語を選んで「Ubuntuをインストール」をクリック
・ネット接続、サードパーティソフトのインストールにチェック
「インストールの種類」で「それ以外」を選択
・HDDを真っ新にする(パーティションがあったら左下の「−」でパーティションを削除し)、HDDの先頭から
15GB (/)
35GB (/home)
末尾から
2GB SWAP
を確保し、残りを/home/windows に、(NTFSを選びたいがなかったので
)とりあえずFAT32として確保
・「続ける」をクリックして、ubuntuのインストール
タイムゾーン
キーボードレイアウト
ユーザ名 ******* パスワード ******** 「自動的にログインする」
(30分ほど待つ)
・「HDDからubuntuを起動」を選び、USBメモリを取り外せとのメッセージが出るまで(3分ほど)待って、指示通り再起動
・ubuntuが起動するので、画面左メニューの「ソフトウエアセンター」
・検索窓に「virtualbox」
・ネットにつないで、virtualBoxをダウンロード&インストール
・VirtualBox を起動
ファイル - 環境設定 - 拡張機能 - 右端のボタン
Extention Pack
を選択し、インストール
●共有のDフォルダをDドライブとして使用する設定
DドライブがたとえばCD-ROMに割り当てられている場合:
・コントロールパネル - 管理ツール - コンピュータの管理 - 記憶域 - ディスクの管理
CD-ROMを選択 - 右クリック - ドライブ文字とパスの変更
DドライブならEドライブに変更してDドライブを空ける
●オフラインの設定
・コントロールパネル - システム
ハードウエア - デバイスマネージャ(D)
「ネットワークアダプタ」を選択し、現在選択されているドライバを無効にする
→これにより、万が一 WinXP がウイルス感染しても、情報漏洩のリスクが回避できる。
(念には念を入れて)
自動更新 - 「自動更新を無効にする(T)」
リモート- チェックを外す
(ついでに)
システムの復元 - 「システムの復元を無効にする」にチェック
・コントロールパネル - 管理ツール - サービス
「状態」が「開始」になっているネット関連のサービスを「無効」にする。(筆者が無効化したのは以下のサービス)
Automatic Updates
Computer Browser
Network Connections
Network Location Awareness (NLA)
Remote Access Connection Manager
Security center
Server
TCP/IP NetBIOS Helper
Telephony
Terminal Services
WebClient
Wireless Zero Configuration
Workstation
●USB機器のドライバのインストール
裸のWinXPでのドライバインストールと同じ手順
仮想ディスクイメージは使っているうちに肥大化していきます。
肥大化した場合、保存しておいたスリムなディスクイメージに取り換える(マイリカバリ)するのも手ですが、今あるディスクイメージファイルを縮小する方法もあります。
●圧縮する前に仮想ディスクの空き領域を0で埋める必要があります
ゲストPCでの処理
Windows: マイクロソフトが無料で提供している SDelete ツールを利用して、コマンドラインで
>sdelete -z c:
を実行
Linuxの場合はddコマンドを実行
$ dd if=/dev/zero of=zero bs=4k; \rm zero
●VboxManage コマンドで圧縮します
ホストPCでの処理 (windows/Linux共通)
>VBoxManage list hdds
でUUIDを調べて、
>VBoxManage modifyhd [仮想ディスクのUUID] --compact
これで、使われなくなったディスクスペースが解放されて、ディスクイメージファイルのサイズが小さくなる