原來以為透過 WSL 執行 ArchLinux 是在 Windows 10 系統內執行 Linux 相關應用程式會是理想的解決方案。但,當我在 WSL 要安裝 XFCE 桌面環境卻是問題多多 (Console 模式則很正常)。雖然仍可以啟動 XFCE 並跑應用程式,但我查看 Log 卻是錯誤訊息一堆,大都與 DBus、GTK 等相關的問題,查找 Google 卻是沒看出所以然。看來現階段在 WSL 跑 Linux 還不太完美 (另外還有效能的問題),所以只好先關閉 WSL,等待下一次 Windows 10 釋出較大改版再來試裝。
退而求其次,只好還是在虛擬機上執行 ArchLinux 了。這次我不使用 Vmware 了,占用系統資源太多 (雖然它執行虛擬系統效能會好上很多),改嘗試使用 Virtualbox 並透過它的 Seamless 無縫模式執行 Linux 應用程式。
這是我第一次使用 Virtualbox,不過安裝虛擬系統倒是很簡單,網路分享安裝文件很多。大概幾個選項,勾選 3D 加速、動態配置儲存空間 (最大空間設為 32Gb)、4GB RAM、切了單核2線程 (我的 Intel CPU 是 i7-7700hq 八核心),這樣就可以在虛擬機環境下安裝 ArchLinux 了。
至於安裝 ArchLinux 的前置安裝程序,與在獨立機器下安裝過程是一樣的,而且還更簡單,不需要考量特別的硬體驅動程式。稍稍注意的是網路,因為我採預設的 NAT,所以只要設定開機啟動 DHCP 服務即可。
$ sudo systemctl enable dhcpcd
後續安裝設定最重要的,是要能支持 Virtualbox 的 Seamless 無縫模式,所以需要安裝特定的 Guest Additions for Linux 驅動才可 (同時也能優化系統效能,必裝)。還好在 Archlinux 官方儲庫 (repository)已有支持該驅動,安裝很簡單,參考 Archlinux Wiki:Install the guest Addons:
$ sudo pacman -S virtualbox-guest-utils
然後安裝時選擇配合的預設 kernel 模組套件為:virtualbox-guest-modules-arch,重新啟動,然後安裝 XFCE 桌面環境:
$ sudo pacman -S xorg
$ sudo pacman -S lightdm lightdm-gtk-greeter
$ sudo systemctl enable lightdm.service
$ sudo pacman -S xfce4 xfce4-goodies
重新啟動,一個完整的 XFCE 桌面就可以正常在虛擬機內執行了。另外我也特別簡單的美化了 XFCE 桌面環境,安裝了 Theme 與 Icon (我都使用 Numix 風格),設定自動登入等等,美化後的 XFCE 桌面看來相當簡潔。
啟動無縫模式可以透過 Hotkey 切換,預設是 Host (Windows 預設為右 CTRL)+L;也可以透過 Virtualbox 選單列直接選擇,如此就可以在 Windows 10 桌面環境內透過 XFCE 工作列與快捷列 (我設定在桌面上方與右方)直接執行 Linux 應用程式了。看看如下圖,我在桌面右方擺了 Tilix 終端模擬 (搭配 zsh 強推)與 Linux 版的檔案總管,然後左方擺個 Windows 版的檔案總管作個對比,毫無違和感。
我挺訝異透過 Virtualbox 啟動 Archlinux 其實速度很快,不到 10 秒就可以完成,當然我的儲存硬體為 Nvme M.2 512G SSD (Thinkpad T470p 購買時搭配),讀取效能是相當不錯了。另外 Virtualbox 系統占用資源極小,竟然我執行一個預設的虛擬機系統記憶體還不到 100 Mb,超不可以思義!(對比 Windows 版 Chrome,開了 20個 Tab 就佔用了 1GB!)
相當相當滿意,Windows 10 與 Archlinux 可以完美搭配在一起,而且還能透過共享資料夾與複製/剪貼功能 (虛擬機系統設定值要勾選),兩者相互交換檔案與內容都非常方便。