微軟選擇Ubuntu放到Windows 10的Linux子系統(tǒng)中,或許“錯(cuò)”了
雖然并非微軟官方出品,不過你現(xiàn)在可以在 Windows 10的Linux子系統(tǒng)(WSL)中使用openSUSE Leap或SUSE Linux企業(yè)版(SLES)了。
正如你所知道的,***的 Windows 10 版本中含有一個(gè)完整的、基于 Ubuntu 的 Bash,開發(fā)者們可以在 Windows 桌面中直接運(yùn)行 Linux 軟件或命令。這被稱為“Bash on Ubuntu on Windows”——一個(gè)啰嗦的名字——現(xiàn)在可以從 Windows 的開始菜單直接訪問到了。
不過,SUSE 的資深產(chǎn)品經(jīng)理 Hannes Kühnemund 卻表示,以他自己的觀點(diǎn)來看,微軟在選擇 Linux 發(fā)行版時(shí)選“錯(cuò)”了——明顯應(yīng)該選 openSUSE 嘛。
“在 Windows 上原生地運(yùn)行 Linux 二進(jìn)制程序……這聽起來真棒!然而,十分不幸是,微軟在 WSL 里面選用了一個(gè)錯(cuò)誤的 Linux(當(dāng)然,這是我個(gè)人的看法),而現(xiàn)在是我們讓它回到軌道上的時(shí)候了。” Hannes Kühnemund 說到,“為啥選 SUSE?因?yàn)?SUSE 從 1992 年開始就在做 Linux 發(fā)行版了。想找一個(gè)資格更老的 Linux 廠商(也可以叫發(fā)行版),對(duì)不起,你找不到,根本就木有!”
好吧,不管怎么說,如果你也對(duì)此感興趣的話,他還寫了篇文章教給你如何在 Windows 10 的 WSL 中安裝 SUSE。
在 Windows 10 中安裝 openSUSE Leap 42.2
如果你是 SUSE 粉,而你又想在 Windows 10 中使用你喜愛的 SUSE,但是又厭倦了使用虛擬機(jī)或配置雙引導(dǎo),那么就跟著 Kühnemund 先生一起來吧,他會(huì)教給你如何在 WSL 中安裝***的 openSUSE Leap 42.2。
首先,你需要按照微軟的說明啟用 WSL,也可以參考我們之前的介紹。確保在安裝過程中創(chuàng)建了一個(gè)普通用戶(帶口令)。
這些步驟也同樣適用于 SUSE Linux 企業(yè)版(SLES) 12 SP2,不過你需要下載另外一個(gè)文件。
運(yùn)行如下命令下載 openSUSE Leap 42.2 的 docker 用戶空間:
- wget -O openSUSE-42.2.tar.xz https://github.com/openSUSE/docker-containers-build/blob/openSUSE-42.2/docker/openSUSE-42.2.tar.xz?raw=true
然后從開始菜單中打開 Linux bash shell,并執(zhí)行如下命令來解壓,然后退出 shell:
- sudo mkdir rootfssudo tar -C rootfs -Jxf openSUSE-42.2.tar.xzexit
如果在運(yùn)行這些命令時(shí)出現(xiàn)一些警告,可以忽略。
完成之后,備份當(dāng)前的“Bash on Ubuntu on Window” 安裝:
- cd %localappdata%\lxss\rename rootfs rootfs.ubuntu
然后復(fù)制新的 openSUSE Leap 42.2 的根文件系統(tǒng) rootfs:
- move .\home\rootfs .\
***,設(shè)置 root 為默認(rèn)用戶:
- lxrun /setdefaultuser root
這樣,下次你再訪問 bash 時(shí),你就用的是運(yùn)行在 WSL 中的 openSUSE 或 SLES 啦。
當(dāng)然,你還可以再做的***些。用這個(gè)綠綠的 SUSE 圖標(biāo)替換 “Bash on Ubuntu on Window” 默認(rèn)的橘紅 Ubuntu 圖標(biāo):
- cd %localappdata%\lxss\rename bash.ico Ubuntu.icorename Saki-NuoveXT-Apps-suse.ico bash.ico
哦,除了圖標(biāo),啟動(dòng)菜單中的名字 “Bash on Ubuntu on Window” 顯然你也想換過來,進(jìn)到 %AppData%\Microsoft\Windows\Start Menu\Programs,把默認(rèn)項(xiàng)改成“Bash on SUSE on Windows” 或其它你想要的什么名字。
其它發(fā)行版呢?
如果你喜歡其它 Linux 發(fā)行版,比如 Arch Linux,那么你可以看看這篇文章。
還能支持別的 Linux 發(fā)行版嗎?你別說,還真有人做出了一個(gè)工具,可以在 WSL 中支持大多數(shù)的 Linux 發(fā)行版,并可以在這些發(fā)行版之間切換自如。
這個(gè)工具是由 RoliSoft 貢獻(xiàn)到 GitHub 上的,名為 WSL-Distribution-Switcher 。其思路類似于上面 openSUSE 的思路,都是采用容器作為 WSL 中的根文件系統(tǒng)。
你可以通過該工具中的 get-prebuilt.py 或 get-source.py 從 Docker Hub 上下載各個(gè)發(fā)行版的官方鏡像或 tar 包,然后用 install.py 安裝即可。***,你還可以通過 switch.py 在你下載安裝的 WSL 中進(jìn)行切換。具體的操作,請(qǐng)參考其說明。
由于它使用的是 Docker Hub 官方鏡像,因此,它可以支持大多數(shù) Linux 發(fā)行版,比如:
- debian
- ubuntu
- fedora
- centos
- opensuse
- mageia
- oraclelinux
- alpine
- crux
- clearlinux
- ……
怎么樣,你有試過在 Windows 10 中的 WSL 里面運(yùn)行 Linux 嗎?