必須啟用“適用于 Linux 的 Windows 子系統(tǒng)”可選功能并重啟,然后才能在 Windows 上運(yùn)行 Linux 發(fā)行版。

創(chuàng)新互聯(lián)是一家專注于做網(wǎng)站、成都網(wǎng)站制作與策劃設(shè)計(jì),巴彥網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)十多年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:巴彥等地區(qū)。巴彥做網(wǎng)站價(jià)格咨詢:18982081108
以管理員運(yùn)行Powershell(開啟WSL,如已開啟可跳過)
WSL 1 和 WSL 2 之間的主要區(qū)別在于,在托管 VM 內(nèi)使用實(shí)際的 Linux 內(nèi)核、支持完整的系統(tǒng)調(diào)用兼容性以及跨 Linux 和 Windows 操作系統(tǒng)的性能。
WSL2相比WSL1來說可以完美支持Docker。與WSL1的模擬Linux API不同的是,WSL2采用在Hyper-V虛擬機(jī)中運(yùn)行的方案。可以說WSL2和原汁原味的Linux已經(jīng)十分接近
不支持Docker的守護(hù)進(jìn)程,但您可以使用 Docker CLI 連接到通過 Docker for Windows 或您創(chuàng)建的任何其他VM 運(yùn)行的遠(yuǎn)程Docker守護(hù)進(jìn)程
不能完全兼容systemctl, systemd等等,IO速度相對原生Linux也是大打折扣,在編譯和解壓方面可以很深體會到。畢竟不是真正的Linux,而是掛在Windows NT內(nèi)核之上的仿Linux 系統(tǒng)
由于WSL 還不是原生的Linux,所以需要借助 Docker for Windows 來實(shí)現(xiàn)Docker(Docker for Windows 是基于Hyper-V 技術(shù))
另外一種方式是,在WSL1中安裝docker 客戶端,連接 docker server, 來解決在WSL1上使用docker 的問題。(PS: Win10 的Linux 子系統(tǒng)是裝不了 docker (服務(wù)端)的,但是可以安裝客戶端)
參考
WSL2 是第二代 WSL,包含在2020年5月正式發(fā)布 Windows 10 v2004 版中。相比第一代,新的 WSL2 重新設(shè)計(jì)了架構(gòu),使用真正的 Linux 內(nèi)核,幾乎具有 Linux 的所有完整功能。啟用WSL2的 Linux 系統(tǒng)啟動時(shí)間非常快,內(nèi)存占用很少,并且,WSL 2 還可以直接原生運(yùn)行 Docker,VS Code 編輯器還有 Remote-WSL 插件,相對于完整的 linux 虛擬機(jī)只是不支持 systemctl、systemd,不能直接運(yùn)行圖形桌面。Windows 也越來越向虛擬平臺靠攏,Windows NT 內(nèi)核和 Linux 內(nèi)核都是運(yùn)行在虛擬平臺之上的,是平級的
如果發(fā)現(xiàn)VERSION為1,說明Ubuntu運(yùn)行在WSL1下,可以升級到 WSL2。同樣,WSL2也可以降級到WSL1。
wsl -l -v #查看已安裝Linux版本和名稱,完整命令格式:wsl --list --verbose
具體步驟參考 :
安裝 WSL 2 之前,必須啟用“虛擬機(jī)平臺”可選功能
wsl --set-version Ubuntu 2 #升級到WSL2,其中 Ubuntu 是已經(jīng)安裝的Linux名稱,命令格式:wsl --set-version Distro Version
啟用WSL后,通過 \wsl$ 可以訪問WSL文件
最初的WSL是在Windows之上模擬Linux內(nèi)核,但是Windows和Linux之間存在如此基本的差異,以至于某些事情不可能以與本機(jī)Linux相同的行為實(shí)現(xiàn),這意味著不可能直接在 WSL中運(yùn)行 Docker Engine 和Kubernetes
在WSL1中,Docker Desktop通過Hyper-V虛擬機(jī)去運(yùn)行docker環(huán)境的
升級到WSL2 之后, Docker Desktop 可以直接用 WSL2,直接運(yùn)行在Linux 內(nèi)核上了
通過如下設(shè)置,Docker Desktop就和WSL2分發(fā)版本進(jìn)行了集成,無需在WSL中安裝docker; 當(dāng)然,也可以選擇不與Docker Desktop集成,直接在WSL 中運(yùn)行docker 容器。
啟用WSL后,docker運(yùn)行數(shù)據(jù)都在WSL發(fā)行版中,文件位置都只能由WSL管理
安裝docker后,docker會自動創(chuàng)建2個(gè)發(fā)行版:
WSL發(fā)行版默認(rèn)都是安裝在C盤,在%LOCALAPPDATA%/Docker/wsl目錄
docker的運(yùn)行數(shù)據(jù)、鏡像文件都存在%LOCALAPPDATA%/Docker/wsl/data/ext4.vhdx中
通過 WSL 2 集成,您仍然可以體驗(yàn)到與 Windows 的無縫集成,但在 WSL 中運(yùn)行的 Linux 程序也可以執(zhí)行相同的操作。這對于從事面向 Linux 環(huán)境的項(xiàng)目或?yàn)?Linux 量身定制的構(gòu)建過程的開發(fā)人員產(chǎn)生了巨大影響。不再需要維護(hù) Linux 和 Windows 構(gòu)建腳本!例如,Docker 的開發(fā)人員現(xiàn)在可以在 Windows 上的 Linux Docker 守護(hù)程序上工作,使用與 Linux 計(jì)算機(jī)上的開發(fā)人員相同的工具和腳本集:
注:WSL2 Docker最爽的地方是和宿主機(jī)Win10共享network,我們在宿主機(jī)Win10使用localhost加端口號就可以訪問Docker中對應(yīng)container中的服務(wù),十分方便
wsl #啟動
wsl --shutdown #關(guān)閉所有正在運(yùn)行的 Linux 和 WSL 2
啟動 WSL2 之后,會在任務(wù)管理器中發(fā)現(xiàn)多了一個(gè) 虛擬機(jī)工作線程
訪問wsl 文件
卸載發(fā)行版
有時(shí)候某個(gè)Linux發(fā)行版不再使用,或者是環(huán)境被搞壞需要重裝,這時(shí)候我們可以卸載掉這個(gè)Linux發(fā)行版。方法如下。
在【設(shè)置 - 更新與安全-開發(fā)者選項(xiàng)】中開啟【開發(fā)人員模式】
在【控制面板-程序-程序和功能 - 啟用或關(guān)閉 Windows 功能】中勾選【適用于 Linux 的 Windows 子系統(tǒng)】
在應(yīng)用商店搜索ubuntu選擇適合自己版本的ubuntu安裝即可
1、首先在win10系統(tǒng)任務(wù)欄中點(diǎn)擊右鍵再點(diǎn)擊屬性
2、點(diǎn)擊開始菜單,再把"使用開始菜單而非開始屏幕"勾上再點(diǎn)擊確定;
在更改開始屏幕設(shè)備,注銷并更改設(shè)置。記得要保存好電腦內(nèi)的資料哦!馬上會執(zhí)行注銷的動作;
方法/步驟
1
1、打開控制面板— 程序與功能— 啟用或關(guān)閉 Windows 功能:
2
2、勾選適用于 Linux 的 Windows 子系統(tǒng)(Beta)并點(diǎn)擊確定;
3
3、進(jìn)入 Windows 10 設(shè)置— 更新與安全— 針對開發(fā)人員— 勾選開發(fā)人員模式并重啟設(shè)備;
END
方法/步驟2
4、打開管理員模式的命令提示符并輸入 bash 回車,然后輸入 Y 下載 Ubuntu;
2
5、下載完成后按提示創(chuàng)建 UNIX 默認(rèn)用戶名并輸入密碼(輸入密碼是不顯示*的,輸入完成直接回車即可)
①C:\Users\xxx1\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState\rootfs\home\xxx2
說明:xxx1表示windows系統(tǒng)的用戶名,xxx2表示子系統(tǒng)Ubuntu的用戶名。
①cd /mnt/c/Users/xxx1
說明:xxx1表示windows系統(tǒng)的用戶名。
②訪問win10中的g盤根目錄:
cd /mnt/g
Win10 與 子系統(tǒng) Ubuntu 之間互訪文件系統(tǒng)
近期將本地開發(fā)環(huán)境配置到的wsl2子系統(tǒng)中,出現(xiàn)wsl之系統(tǒng)暫用宿主機(jī)內(nèi)存過多,導(dǎo)致數(shù)組機(jī)卡頓,通過在網(wǎng)上查閱資料獲得解決方案記錄下來,以供它人參考
在當(dāng)前用戶目錄下新建.wslconfig文件,我的路徑是:C:Usersadmin.wslconfig
然后在文件中添加配置內(nèi)容:
然后在window 終端 輸入 wsl --shutdown 關(guān)閉wsl,然后重啟生效
processors 設(shè)置虛擬處理器數(shù)量
memory wsl 2占用系統(tǒng)內(nèi)存上線,可根據(jù)實(shí)際情況配置
localhostForwarding=true 設(shè)置在 Windows 中通過 127.0.0.1 或 localhost 訪問 WSL2 服務(wù)
名稱欄目:包含windows子系統(tǒng)訪問的詞條
本文地址:http://chinadenli.net/article48/hihsep.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供手機(jī)網(wǎng)站建設(shè)、品牌網(wǎng)站設(shè)計(jì)、搜索引擎優(yōu)化、外貿(mào)建站、關(guān)鍵詞優(yōu)化、微信公眾號
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)