快轉到主要內容

安新電腦玩老遊戲:使用QEMU/KVM安裝Windows 7虛擬機

· 民國115年丙午年
·
切換繁體/簡體
分類 資訊科技 虛擬機與容器技術
標籤 Libvirt Windows
目錄

在Linux系統使用Virt Manager + QEMU/KVM跑舊版Windows系統的虛擬機。

想用Windows虛擬機執行一些老遊戲。嘗試安裝看看Windows 98、Windows XP、Windows 7這類20年前的老系統吧!沒有現代Windows 11那麼重型又有種懷舊風味。

雖然很多Windows老遊戲在Linux都能用Wine執行,它有辦法相容到DOS時代的遊戲,不過有些遊戲就是要在Windows環境玩才對味嘛。

需要安裝Windows XP嗎?Windows 7的年代就夠久了,還相容許多32位元老遊戲。系統UI有屬於那個年代的美感,屬於是夾在現代與舊時代作業系統的交界。

1. 測試環境
#

  • Ubuntu 26.04
  • Windows 7 Ultimate

2. 下載Windows 7 ISO
#

自己找ㄅ 啟用序號也自行找…譬如Microsoft Activation Scripts。

Internet Archive上面的ISO感覺都不太能信任…那這個網站好像風評還不錯,有很多老舊系統:https://os.click/en 直接下載64位元的就好。

3. 安裝Windows 7虛擬機
#

  1. 安裝QEMU/KVM與Virt Manager

  2. 新增虛擬機,新版QEMU似乎將32位元與64位元合併了,所以模擬選項只有x86_64可選,但虛擬CPU可以選擇使用宿主機型號,或者使用舊型Intel CPU模擬。

  3. 為了相容性,選擇SATA磁碟,不用VirtIO。如果藍螢幕,使用IDE。

  4. 機器類型選Q35,Windows 7理應支援,除非要用Windows XP再選更舊的i440fx。不用選UEFI系統,維持傳統BIOS就好了。除非你要搞GPU直通,那才需要OVMF UEFI。

  5. 開機後依照指示完成Windows 7安裝。

4. 快速安裝Windows Update
#

Windows 7直到維護週期結束之前都還有推送更新。透過Updatepack7R2這個程式可以一次將需要的更新檔全部載下來,不用一直重開機。

尚支援Windows 7的瀏覽器有Supermium

5. 如何與Windows虛擬機共享檔案
#

Virt Manager沒有VirtulalBox那種簡單的檔案傳輸方案。

我通常是用virtio-fs,可是那要Windows 10以上才能用,Windows 7和Windows XP支援度不確定。嘗試下載virtio 285版本,用CDROM裝置掛載到Windows 7虛擬機,嘿,居然還能裝耶,但只有一部分。但不能直接執行virtio-win-gt.exe。

那麼對於老版本Windows而言,就只有透過SMB了,區域網路讀取速度應該很快。

參見如何在Linux用Docker架設一個SAMBA服務:用Docker在Linux架設SMB伺服器

或者,單純要傳輸檔案的話:在宿主機python3 -m http.server執行一個簡易Server,將目前目錄暴露到區域網路。即使是古老版本的IE也可以打開網頁下載檔案。這樣我至少可以先把Supermium的安裝檔空投進去。然後下載Update7R2完成更新修補。

6. 3D圖形加速
#

需要手動到Window 7 裝置管理員,開啟virtio的QXL資料夾,讓它安裝驅動。安裝後就可以開啟Aero特效了?還是不行呀…。起碼QXL顯卡提供基本2D加速,讓虛擬機監視器畫面不太會撕裂了。

最後要如何搞定虛擬機3D加速呢…GPU直通無效,因為我的內顯和獨顯都太新了!除非我去找一張Windows 7時代支援的顯卡並直通進去吧…。

或許我電腦的Intel UHD 630多少還是受Windows 7支援的,但找不到驅動程式。

相關文章


此處提供二種留言板。點選按鈕,選擇您覺得方便的留言板。

(留言板載入中)這是Giscus留言板,需要Github帳號才能留言。支援Markdown語法,若要上傳圖片請善用外部圖床。您的留言會在Github Discussions向所有人公開。

Click here to edit your comments.

(留言板載入中)這是Disqus留言板,您可能會看到Disqus強制投放的廣告。為防止垃圾內容,有時留言可能會被系統判定需審核,導致延遲顯示,請見諒。若要上傳圖片請善用外部圖床網站。