linux gnome3安装_Windows 10安装与管理WSL体验原生Linux系统
微軟Windows10的內(nèi)置Linux系統(tǒng)WSL已經(jīng)有幾年歷史了。不得不說,在Windows中內(nèi)置原生的Linux系統(tǒng),對微軟而言是個(gè)非常冒險(xiǎn)的舉措,但也是微軟大刀闊斧擁抱開源世界的轉(zhuǎn)折點(diǎn)。幾年來,雖然用戶對WSL一直詬病不斷,但其用戶體驗(yàn)與功能卻一直穩(wěn)步向前邁進(jìn)。雖然WSL下使用桌面環(huán)境非常不方便,但對大部分深度Linux用戶來說,使用Linux更多是由于其內(nèi)核與設(shè)計(jì)的美學(xué)而不是拼湊起來的桌面,因此,從某種程度上來說,Windows的桌面系統(tǒng)與Linux命令行系統(tǒng)的結(jié)合,也的確可能打造出一套更接近理想的操作系統(tǒng)來(這就像體驗(yàn)MacOS一樣,因此如果預(yù)算允許,還是MacOS更值得推薦)。
目前WSL系統(tǒng)已經(jīng)可以支持的Linux發(fā)行版包括Debian、Ubuntu、KaliLinux、OpenSUSE和Fedora,基本上囊括了各個(gè)流行的Linux開發(fā)版。對于習(xí)慣或者應(yīng)該在Linux系統(tǒng)下進(jìn)行開發(fā)的專業(yè)用戶來說,可以擺脫虛擬機(jī)、雙系統(tǒng)的局限,在Windows系統(tǒng)下暢快使用各種Linux開發(fā)板進(jìn)行開發(fā)。本文對Windows系統(tǒng)下安裝與配置WSL進(jìn)行介紹。
1. 系統(tǒng)權(quán)限修改
要安裝WSL,需要先在Windows中啟用該功能,這可以在使用管理員權(quán)限打開Powershell命令行中輸入下列命令實(shí)現(xiàn)。
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux當(dāng)然,也可以在控制面板-->程序和功能-->啟用或關(guān)閉Windows功能中,勾選適用于Linux的Windows子系統(tǒng)選項(xiàng)來打開。
上述步驟可能需要重啟電腦。
2. WSL子系統(tǒng)安裝
WSL子系統(tǒng)的安裝,同樣有三種途徑,第一種是在Microsoft Store微軟在線商店中搜索Linux并根據(jù)需要點(diǎn)擊安裝相應(yīng)的Linux子系統(tǒng)。
由于微軟商店在國內(nèi)訪問的不穩(wěn)定性,可能需要嘗試多次才能安裝成功。當(dāng)然,也可以按照微軟的官方文檔,直接下載相應(yīng)的發(fā)行版并進(jìn)行安裝。參考的下載地址分別如下:
- Ubuntu 18.04 /18.04 ARM
- Ubuntu 16.04
- Debian GNU/Linux
- Kali Linux
-OpenSUSE Leap 42 - SUSE Linux Enterprise Server 12
- Fedora Remix for WSL
安裝WSL的第三種方式是通過PowerShell命令行下載與安裝,例如可通過下列命令安裝Ubuntu16.04
Invoke-WebRequest -Uri https://aka.ms/wsl-ubuntu-1604 -OutFile Ubuntu.appx -UseBasicParsingAdd-AppxPackage .app_name.appx3. 配置與啟動(dòng)WSL
下載并安裝完成后,Linux子系統(tǒng)會(huì)進(jìn)行初始化,需要輸入默認(rèn)的管理員用戶與密碼,才可以正常使用。該賬戶與windows系統(tǒng)賬戶相互獨(dú)立,賬戶擁有對應(yīng)的Linux子系統(tǒng)下的sudo權(quán)限。
如果忘記Linux子系統(tǒng)密碼,WSL系統(tǒng)也提供了一個(gè)重置密碼的選項(xiàng),這和是默認(rèn)的Linux系統(tǒng)不具備的功能,同時(shí)也是一些潛在的安全隱患來源,輸入下列命令可以重置WSL子系統(tǒng)密碼。
wsl -u root #重置默認(rèn)的WSL子系統(tǒng)密碼wsl -d Debian -u root #重置指定的發(fā)行版(非默認(rèn)的)子系統(tǒng)debian的密碼,debian可替換為其他發(fā)行版在搜索欄輸入(或者在開始菜單中查找)可以看到相應(yīng)的linux發(fā)行版圖標(biāo)。點(diǎn)擊即可進(jìn)入相應(yīng)的Linux子系統(tǒng)命令行中開始使用。
當(dāng)然,也可以在windows命令行(僅支持Powershell,不支持cmdline)中輸入相應(yīng)linux發(fā)行版指令直接進(jìn)入相應(yīng)的linux子系統(tǒng)中。在命令行下進(jìn)入linux子系統(tǒng)的好處是可以保持默認(rèn)的windows子目錄不變(經(jīng)過試驗(yàn),僅僅在ubuntu系統(tǒng)下如此,進(jìn)入opensuse和kali的時(shí)候都會(huì)改變),官方文檔對此示例如下,在我的powershell中,輸入ubuntu并無法進(jìn)入linux系統(tǒng),需要改為ubuntu18.04.exe:
PS C:甥敳獲sarah> pwdPath----C:甥敳獲sarahPS C:甥敳獲sarah> ubuntuscooley@scooley-elmer:~$ pwd/home/scooleyscooley@scooley-elmer:~$ exitlogoutPS C:甥敳獲sarah>當(dāng)然,也可以在windows命令行下直接輸入wsl命令進(jìn)入默認(rèn)的linux子系統(tǒng)中,或者輸入bash進(jìn)入默認(rèn)的linux子系統(tǒng)中。
4.管理系統(tǒng)中的WSL
針對windows10 19.03或更高版本系統(tǒng),可以使用下列命令行命令來管理和配置系統(tǒng)中安裝的不同linux子系統(tǒng)發(fā)行版。
wsl -lwsl --list #列出系統(tǒng)中安裝的所有l(wèi)inux發(fā)行版wsl --list --running #列出當(dāng)前在運(yùn)行的linux發(fā)行版wsl -s #-s等于--setdefault,設(shè)置系統(tǒng)默認(rèn)的linux子系統(tǒng)發(fā)行版wsl --unregister # 卸載指定的發(fā)行版wsl -u wsl --user #以特定用戶訪問linux子系統(tǒng)wsl -d wsl --distribution #運(yùn)行、進(jìn)入指定的linux發(fā)行版在windows 10 19.03之前的版本,可能需要類似 wslconfig.exe /l類似的指令來完成上述操作。
在Windows 內(nèi)部預(yù)覽版17093之后的版本中,可以手動(dòng)配置WSL參數(shù),在每個(gè)linux子系統(tǒng)發(fā)行版的/etc/wsl.conf 文件中可對WSL子系統(tǒng)進(jìn)行配置。官方文檔提供的一個(gè)配置文件參考如下,各配置項(xiàng)意義見配置文檔說明。
# Enable extra metadata options by default[automount]enabled = trueroot = /windir/options = "metadata,umask=22,fmask=11"mountFsTab = false# Enable DNS – even though these are turned on by default, we’ll specify here just to be explicit.[network]generateHosts = truegenerateResolvConf = true5.問題與技巧
微軟為WSL設(shè)計(jì)有專門的問題解決頁面Troubleshooting。其中幾個(gè)典型的常見問題如下:
- 安裝過程中0x80070003錯(cuò)誤。WSL子系統(tǒng)僅能安裝在系統(tǒng)盤中,當(dāng)新增應(yīng)用默認(rèn)安裝在其他盤的時(shí)候,會(huì)出現(xiàn)該錯(cuò)誤。打開設(shè)置-->系統(tǒng)-->存儲(chǔ)-->更改新內(nèi)容的保存位置,選擇將新的應(yīng)用存儲(chǔ)到系統(tǒng)盤。
- WslRegisterDistribution錯(cuò)誤代碼0x8007019e。未開啟安裝WSL權(quán)限,參見本文第一部分開啟WSL權(quán)限即可。在windows系統(tǒng)升級后,可能會(huì)默認(rèn)關(guān)閉WSL權(quán)限,導(dǎo)致類似的0x80040154錯(cuò)誤,需要重新打開權(quán)限。
- 安裝過程0x80040306錯(cuò)誤。WSL不支持legacy console,需要打開cmd命令行,在標(biāo)題欄右鍵選擇屬性,取消掉legacy console的選擇框(即“使用舊版控制臺(tái)”前的選擇框:)
- 設(shè)置默認(rèn)顯示語言。按照官方文檔示例,可通過在bash中運(yùn)行類型如下命令設(shè)置語言。sudo update-locale LANG=en_US.UTF8
文件讀寫權(quán)限
安裝WSL后,在復(fù)雜的Windows文件管理體系中又增加了更多的復(fù)雜性,為此微軟有專門的章節(jié)對WSL系統(tǒng)的文件權(quán)限進(jìn)行說明。在實(shí)際使用中,最簡單的做法莫過于不要讓兩個(gè)系統(tǒng)的文件有太多交集。由于WSL子系統(tǒng)在Windows系統(tǒng)下的存儲(chǔ)路徑過于復(fù)雜。(例如我的電腦中ubuntu的系統(tǒng)路徑在這里C:甥敳獲weizyAppDataLocalPackagesCanonicalGroupLimited.Ubuntu18.04onWindows_79rhkp1fndgscLocalStateootfs)為了便于使用,可以在windows盤符下創(chuàng)建一個(gè)Linux專用的文件夾,比如D:linux甥畢瑮u并在WSL下創(chuàng)建一個(gè)軟連接,比如ln -s /mnt/d/linux/ubuntu ~/ubuntu就可以將前面創(chuàng)建的文件夾軟連接到ubuntu子系統(tǒng)主目錄的ubuntu文件夾中,這樣在兩個(gè)系統(tǒng)中都可以方便的訪問。
替換軟件源
由于國內(nèi)網(wǎng)絡(luò)條件的原因,linux系統(tǒng)的升級和軟件倉庫訪問可能速度很慢或者無法完成,這時(shí)可能需要將對應(yīng)的軟件倉庫修改為對應(yīng)的國內(nèi)軟件源,可以在清華大學(xué)開源軟件鏡像站找到相應(yīng)的Linux發(fā)行版,根據(jù)對應(yīng)的說明進(jìn)行文件修改和替換。
SSH方式訪問WSL
雖然WSL安裝在本機(jī)上,可以直接通過命令行訪問,但是如果習(xí)慣了通過XSHELL,PUTTY等軟件訪問Linux主機(jī)的話,可能更希望將主機(jī)添加到SSH客戶端中進(jìn)行統(tǒng)一的管理和訪問。默認(rèn)的ubuntu終端SSH Server可能存在bug,導(dǎo)致無法訪問,需要卸載并重新安裝 openssh-server 軟件后方可和通常的linux系統(tǒng)一樣配置ssh方式進(jìn)行訪問。
如果其他電腦要通過遠(yuǎn)程SSH訪問WSL,還需要在windows防火墻中開啟相應(yīng)端口。配置方式為 設(shè)置-->網(wǎng)絡(luò)和Internet-->Windows防火墻-->高級設(shè)置-->入站規(guī)則-->新建規(guī)則-->端口。配置相應(yīng)端口即可。
參考資料
- 微軟WSL官方文檔
總結(jié)
以上是生活随笔為你收集整理的linux gnome3安装_Windows 10安装与管理WSL体验原生Linux系统的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: rca接口_音频线怎么区别?几种音频接口
- 下一篇: 一元流量参数为null_为什么牛逼的程序