如何安裝體驗 Ubuntu on Windows

linux.cn發表於2016-04-11

3月30日在美國舊金山的莫斯康展覽中心,微軟召開了 Build 2016開發者大會,大會上微軟除了介紹自家生態系統的產品與技術外,還為開發者帶來了 Ubuntu on Windows 功能。

Bash 是 Linux/Unix 上非常流行的命令列 Shell,它是 Ubuntu、RHEL 等 Linux 發行版以及蘋果 OS X 作業系統預設的命令列 Shell。

Bash on Ubuntu on Windows 是通過 Windows Subsystem for Linux(WSL)這一 Windows 10 的最新特性實現的,使用此功能,你可以在 Windows 中原生執行 Linux 的大多數命令列程式。

其實在 Windows 7 之前的作業系統中,都含有一個 POSIX 子系統,以便將 UNIX 的程式原始碼編譯為 Windows 程式。微軟為 POSIX 子系統提供了眾多的 UNIX 工具,而這些工具都是基於 POSIX 子系統直接使用GNU 的原生程式碼編譯實現的,你也可以在這個 POSIX 子系統執行 C Shell、Korn Shell 等命令列 Shell。不過Windows 7 以後的作業系統中都預設移除了 POSIX 子系統。如果有興趣的話可以在 Windows 7 作業系統中的“啟用或關閉 Windows 功能”中啟用“基於 UNIX 的應用程式子系統”,即可體驗 POSIX 子系統。

啟用 WSL 功能之後,如果使用 Bash,則 Windows 10 作業系統會下載一個由 Canonical 建立的Ubuntu使用者模式映象(Ubuntu user-mode image),然後 Bash 程式以及其他的 Linux 二進位制程式就可以執行於該 Ubuntu 映象上。此外,微軟也承諾未來會提供更多 Linux 發行版以供選擇。

Bash on Ubuntu on Windows 功能主要是面向於開發者,尤其是 Web 開發者或者參與某些開源專案的開發者,他們可以在 Windows 中使用一些 Linux 生態鏈的開發工具。

之前我們為大家披露過 Ubuntu on Windows 的一些技術細節,今天為大家帶來更具體的技術細節和體驗方式。

如何安裝體驗 Ubuntu on Windows

啟用Bash on Ubuntu on Windows

啟用 Bash on Ubuntu on Windows 功能,首先你得先滿足以下2個條件。

  • 使用x86-64架構的 CPU。
  • 使用 Windows 10 Insider Preview (Build 14316)64位版本。

如何獲取 Windows 10 Insider Preview (Build 14316)呢?

這裡有兩種辦法:

  • 第一種是從網上下載由別人製作好的 Windows 10 Insider Preview (Build 14316)安裝映象進行安裝,但是由於安裝映象來源的問題,所以不推薦此方法,當然如果你是要在虛擬機器中體驗一下的話,用這種方式最合適不過了。
  • 第二種是加入 Windows Insider 計劃,然後將 Windows 10 正式版升級至最新的 Insider Preview 版本。

加入Windows Insider 計劃方法如下:

1、在 Windows Insider 網站中使用你的微軟賬戶登入,登入成功之後,會出現如下圖所示畫面:

如何安裝體驗 Ubuntu on Windows

然後單擊圖中的“入門”,會出現註冊介面,勾選接受 Insider 計劃協議,最後單擊“提交”,等待提示註冊完成。

2、確保使用上述加入 Windows Insider 計劃的微軟賬戶登入你的 Windows 10 作業系統,然後依次轉到開始選單-“設定”-“更新和安全”- “Windows 更新” -“高階選項”>“獲取 Insider Preview 版本”,然後單擊“開始”按鈕,並按照螢幕上的說明進行操作,提示成功之後表示此電腦將會獲取 Windows 10 Insider Preview 版本 。

如何安裝體驗 Ubuntu on Windows

3、Windows Insider 計劃預設自動獲取慢速通道的 Insider Preview 版本,而 Windows 10 Insider Preview (Build 14316)屬於快速通道版本,所以需要在如下圖中,將滑塊移至右側的快速通道模式。

如何安裝體驗 Ubuntu on Windows

4、進入快速通道模式之後,需要等待24小時才能獲取 Insider Preview 版本,所以請耐心的等待吧!24小時之後檢查更新,就會開始下載安裝 Windows 10 Insider Preview (Build 14316)。

啟用 Bash on Ubuntu on Windows

如果上述條件滿足,按照以下步驟即可啟用 Bash on Ubuntu on Windows。

1、依次在“設定”-“更新與安全”-“針對開發人員”選項中,啟用開發人員模式,如下圖所示。

如何安裝體驗 Ubuntu on Windows

2、在開始選單中搜尋並開啟“啟用或關閉 Windows功能”,然後勾選其中的“Windows Subsystem for Linux(Beta)”選項,如下圖所示,最後按照作業系統提示完成 WSL 安裝(需要重啟計算機)。

如何安裝體驗 Ubuntu on Windows

此外,也可以在 PowerShell 中輸入以下命令完成 WSL 安裝。

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux

3、在命令提示符或 PowerShell 中輸入 bash,然後按照提示按下 y 確認繼續,作業系統會自動開始安裝 Ubuntu on Windows,此時會下載 Ubuntu 使用者模式映象,並建立一個 Bash on Ubuntu on Windows 訪問路徑。等待安裝完成之後,會自動進入 bash,如下圖所示:

如何安裝體驗 Ubuntu on Windows

使用 Bash on Ubuntu on Windows

在命令提示符或 PowerShell 中輸入 bash,或者在開始選單中查詢開啟“Bash on Ubuntu on Windows”,即可執行。

執行之後,可以發現使用的是 Ubuntu 14.04.4 LTS 版本,同時也可以使用 apt-get 更新或安裝程式,如下圖所示。此外。在 bash 當中,Windows 的分割槽被掛載於 /mnt 目錄,可以使用其中儲存的資料。

如何安裝體驗 Ubuntu on Windows

當你試用了 Bash on Ubuntu on Windows 之後,你可能會覺得這是一個虛擬機器,但它真不是一個虛擬機器。其功能有點類似於模擬器。通過使用 WSL,可以將 Linux 的系統呼叫實時地轉換為 Windows 的系統呼叫。

此外,在 Windows 下執行這些 Linux 的原生的 ELF(Executable and Linkable Format)二進位制程式和在 Linux 下執行所消耗的 CPU 、記憶體和 IO 效能相當,完全不用擔心效能的問題。

Bash on Ubuntu on Windows限制

  • 不支援使用 GUI 的桌面程式或 Gnome、KDE 類應用。
  • 處於 Beta 階段,支援的 Linux 程式與功能有限,未來會支援更多的 Linux 工具。
  • 目前只支援使用 Ubuntu,未來會提供更多 Linux 發行版。
  • WSL 只支援在 Windows 10 build 14316 以後版本中使用,不支援 Windows Server。

命令參考

有兩個命令  bash.exe 和 lxrun.exe 用於和 Windows Subsystem for Linux (WSL) 進行互動。它們安裝在  /Windows/System32 目錄下,可以在命令列或 Powershell 中執行。

  • bash.exe 啟動 bash 環境並執行 /bin/bash
  • lxrun.exe 用於管理 WSL,可以用來安裝或解除安裝 Ubuntu 映象
命令 描述
bash 在當前目錄啟動 bash shell,如果 Bash 沒有安裝,這自動執行 lxrun /install
bash ~ 啟動 bash,並切換到使用者的 Ubuntu 主目錄,類似執行 cd ~
bash -c “<command>” 執行命令、列印輸出並返回 Windows 命令列
例子: bash -c “ls”
命令 描述
lxrun 用於管理 WSL 例項
lxrun /install 啟動下載和安裝過程
/y 選項可以用於自動應答安裝過程的確認提示
lxrun /uninstall 解除安裝並刪除 Ubuntu 映象。預設不刪除使用者的 Ubuntu 主目錄。

/y 選項可以用於自動應答安裝過程的確認提示

/full 選項會解除安裝並刪除使用者的 Ubuntu 主目錄

總結

Bash on Ubuntu on Windows 的釋出, 讓眾多的 Linux 粉絲大跌眼鏡,曾經被微軟視為癌症的 Linux,如今卻被部分的整合進了微軟最重要的產品中,這背後的目的似乎不是那麼很平常。

有人說 Bash on Ubuntu on Windows 是微軟佈局 Docker 的開始,其實在 Windows Server 2016 預覽版中已經加入了對Docker 技術的支援。也有人說是微軟看中了 Linux 生態中的海量程式,用以補充自家的生態系統,但是就程式的數量來說,Windows 生態說第二,沒人會說第一,所以似乎這個原因也站不住腳。

其實依目前的情況來看,個人覺得 Bash on Ubuntu on Windows 最主要的用處,還是為開發者提供便利,協助完成一些跨平臺開發的工作。但是,也說不準微軟最終的目的是什麼,只能期待7月份的 Windows 10 週年更新裡面為 Bash on Ubuntu on Windows 帶來更多的功能。

相關文章