導航:首頁 > 網路設置 > wsl連接網路共享目錄

wsl連接網路共享目錄

發布時間:2023-04-17 16:08:24

⑴ WSL2與Windows間的網路互訪

我的WSL2使用的是ubuntu 20.04.2.LTS, Windows是10專業版 Build: 19043.1526。本文只討論應用級別通過網路互相訪問的問題,不涉及文件互訪。

由於多物理網卡,虛擬機網卡等原因,Windows會有多個IP Address,我們需虛擾要找出能與WSL2連同的那個。

啟動WSL2,鍵入如下命令:

輸出中nameserver 後面的地址即是我們要找的地址。

如:

172.27.160.1 就是我們要找的遲世Windows的IP Address,後面會以 <win-ip> 引用

啟動WSL2,鍵入如下命令:

輸出舉例:

172.27.170.146 就是我們要找的WSL2的IP Address,後面會以 <wsl-ip> 引用

默認情況下Windows的防火牆會阻止WSL2中應用對Windows的網路訪問(see: Add "allow" rule to Windows firewall for WSL2 network · Issue #4585 · microsoft/WSL (github.com) ),解決辦法是添加一條碼譽肢防火牆規則允許WSL2對Windows的訪問。請以管理員身份打開PowerShell並鍵入以下命令:

輸出舉例:

命令成功執行後,我們會在Windows的防火牆高級設置的入站規則里會看到一條名為 WSL 的新規則:

以上配置好後,我們就可以在WSL2中通過 <win-ip> 和 <埠> 訪問Windows中的應用程序。

我們可以在Windows中通過 <wsl-ip> 和 <埠> 訪問WSL2中的應用程序。

⑵ wsl2 固定mac地址

我們可以直接localhost可以ssh連接wsl2。

WSL2 會在首次啟動時創建一個虛擬網卡用於提供 WSL2 的網路,默認情況下這個網段是動態的,我在之前的文章 hez2010:給 WSL2 設置靜態 IP 地址 中利用修改該網卡網段和創建 NAT 的方式解決了該問題,但是該方案仍然不夠完美:

⑶ WSL避坑指南

WSL(windows subsystem for linux)是在windows系統下運行的linux子系統,當我們需要linux環境的時候,用虛擬機性能損耗會非常嚴重,這時候我們可以選擇使用WSL。這篇文章介紹了我在安裝和使用WSL中的一些坑,希望將來的人能少走彎路。

參考微軟的文檔 https://docs.microsoft.com/zh-cn/windows/wsl/install-win10 安裝。

我遇到的一些問題:

配製Ubuntu鏡像 https://developer.aliyun.com/mirror/ubuntu

可以在windows下安裝docker desktop,然後設置使用wsl2的引擎使用。

或者在docker的官網上按照教程安裝docker。

靜進入網址: https://cr.console.aliyun.com/cn-hangzhou/mirrors

此處需要一個阿里雲的賬號,沒有的話可以使用支付寶登錄

登錄進去會跳轉到 容器鏡像服務,需要密碼

接下來按照裡面的教程進行設置即可

在windows的vscode里安裝Remote WSL插件之後可以在linux的子系統中通過輸入code命令使用vscode。

文件共享也非常方便,啟動WSL命令行的時候,默認訪問的便是我們Windows的用戶目錄。螞耐

而要從Windows下訪問Linux中文件,則可通過網路磁碟映射:wsl$Ubuntu 路徑,這樣整個Linux文件系統都可以暴露給Windows。

如果要在 Linux 分發版中構建網路應用(例如,在 NodeJS 或 SQL server 上運行的應用),可以使用蔽判 localhost 從 Windows 應用(如 Edge 或 Chrome Internet 瀏覽器)訪問它(就像往常一樣)。

但是,如果運行的是較舊版本的 Windows(版本 18945 或更低版本),則宏物改需要獲取 Linux 主機 VM 的 IP 地址(或 更新到最新的 Windows 版本 )。

若要查找為 Linux 分發版提供支持的虛擬機的 IP 地址,請執行以下操作:

如果要從 Linux 分發版(即 Ubuntu)訪問 Windows 上運行的網路應用(例如,在 NodeJS 或 SQL 伺服器上運行的應用),則需要使用主機的 IP 地址。 雖然這不是一種常見方案,但你可以執行以下步驟來使其可行。 - 通過在 Linux 分發版中運行以下命令來獲取主機的 IP 地址: cat /etc/resolv.conf - 復制以下詞語後面的 IP 地址: nameserver 。 - 使用復制的 IP 地址連接到任何 Windows 伺服器。

當使用遠程 IP 地址連接到應用程序時,它們將被視為來自區域網 (LAN) 的連接。 這意味著你需要確保你的應用程序可以接受 LAN 連接。

例如,你可能需要將應用程序綁定到 0.0.0.0 而非 127.0.0.1 。 以使用 Flask 的 Python 應用為例,可以通過以下命令執行此操作: app.run(host=Ɔ.0.0.0') 。 進行這些更改時請注意安全性,因為這將允許來自你的 LAN 的連接。

當使用 WSL 1 分發版時,如果計算機設置為可供 LAN 訪問,那麼在 WSL 中運行的應用程序也可供在 LAN 中訪問。

這不是 WSL 2 中的默認情況。 WSL 2 有一個帶有其自己獨一無二的 IP 地址的虛擬化乙太網適配器。 目前,若要啟用此工作流,你需要執行與常規虛擬機相同的步驟。

WSL2 分發版目前無法訪問純 IPv6 地址。

參考資料:

https://www.jianshu.com/p/6b02948b3d37

https://www.liumingye.cn/archives/326.html

https://zhuanlan.hu.com/p/104771275?utm_source=cn.wiz.note

⑷ 最詳盡教程完整介紹-Windows 的 Linux 子系統-WSL1&WSL2

必須啟用「適用於 Linux 的 Windows 子系統」可選功能並重啟,然後才能在 Windows 上運行 Linux 發行版。

以管理員運行Powershell(開啟WSL,如已開啟可跳過)

WSL 1 和 WSL 2 之間的主要區別在於,在託管 VM 內使用實際的 Linux 內核、支持完整的系統調用兼容性以及跨 Linux 和 Windows 操作系統的性能。

WSL2相比WSL1來說可以完美支持Docker。與WSL1的模擬Linux API不同的是,WSL2採用在Hyper-V虛擬機中運行的方案。可以說WSL2和原汁原味的Linux已經十分接近

不支持Docker的守護進程,但您可以使用 Docker CLI 連接到通過 Docker for Windows 或您創建的任何其他VM 運行的遠程Docker守護進程

不能完全兼容systemctl, systemd等等,IO速度相對原生Linux也是大打折扣,在編譯和解壓方面可以很深體會到。畢竟不是真正的Linux,而是掛在Windows NT內核之上的仿Linux 系統

由於WSL 還不是原生的Linux,所以需要藉助 Docker for Windows 來實現Docker(Docker for Windows 是基於Hyper-V 技術)

另外一種方式是,在WSL1中安裝docker 客戶端,連接 docker server, 來解決在WSL1上使用docker 的問題。(PS: Win10 的Linux 子系統是裝不了 docker (服務端)的,但是可以安裝客戶端)

參考

WSL2 是第二代 WSL,包含在2020年5月正式發布 Windows 10 v2004 版中。相比第一代,新的 WSL2 重新設計了架構,使用真正的 Linux 內核,幾乎具有 Linux 的所有完整功能。啟用WSL2的 Linux 系統啟動時間非常快,內存佔用很少,並且,WSL 2 還可以直接原生運行 Docker,VS Code 編輯器還有 Remote-WSL 插件,相對於完整的 linux 虛擬機只是不支持 systemctl、systemd,不能直接運行圖形桌面。Windows 也越來越向虛擬平台靠攏,Windows NT 內核和 Linux 內核都是運行在虛擬平台之上的,是平級的

如果發現VERSION為1,說明Ubuntu運行在WSL1下,可以升級到 WSL2。同樣,WSL2也可以降級到WSL1。
wsl -l -v #查看已安裝Linux版本和名稱,完整命令格式:wsl --list --verbose

具體步驟參考 : https://docs.microsoft.com/zh-cn/windows/wsl/install-manual#step-4---download-the-linux-kernel-update-package

安裝 WSL 2 之前,必須啟用「虛擬機平台」可選功能

wsl --set-version Ubuntu 2 #升級到WSL2,其中 Ubuntu 是已經安裝的Linux名稱,命令格式:wsl --set-version <Distro> <Version>

啟用WSL後,通過 wsl$ 可以訪問WSL文件

最初的WSL是在Windows之上模擬Linux內核,但是Windows和Linux之間存在如此基本的差異,以至於某些事情不可能以與本機Linux相同的行為實現,這意味著不可能直接在 WSL中運行 Docker Engine 和Kubernetes
在WSL1中,Docker Desktop通過Hyper-V虛擬機去運行docker環境的

升級到WSL2 之後, Docker Desktop 可以直接用 WSL2,直接運行在Linux 內核上了

通過如下設置,Docker Desktop就和WSL2分發版本進行了集成,無需在WSL中安裝docker; 當然,也可以選擇不與Docker Desktop集成,直接在WSL 中運行docker 容器。

啟用WSL後,docker運行數據都在WSL發行版中,文件位置都只能由WSL管理

安裝docker後,docker會自動創建2個發行版:

WSL發行版默認都是安裝在C盤,在%LOCALAPPDATA%/Docker/wsl目錄
docker的運行數據、鏡像文件都存在%LOCALAPPDATA%/Docker/wsl/data/ext4.vhdx中

通過 WSL 2 集成,您仍然可以體驗到與 Windows 的無縫集成,但在 WSL 中運行的 Linux 程序也可以執行相同的操作。這對於從事面向 Linux 環境的項目或為 Linux 量身定製的構建過程的開發人員產生了巨大影響。不再需要維護 Linux 和 Windows 構建腳本!例如,Docker 的開發人員現在可以在 Windows 上的 Linux Docker 守護程序上工作,使用與 Linux 計算機上的開發人員相同的工具和腳本集:

註:WSL2 Docker最爽的地方是和宿主機Win10共享network,我們在宿主機Win10使用localhost加埠號就可以訪問Docker中對應container中的服務,十分方便

wsl #啟動
wsl --shutdown #關閉所有正在運行的 Linux 和 WSL 2

啟動 WSL2 之後,會在任務管理器中發現多了一個 虛擬機工作線程

訪問wsl 文件

卸載發行版
有時候某個Linux發行版不再使用,或者是環境被搞壞需要重裝,這時候我們可以卸載掉這個Linux發行版。方法如下。

⑸ WSL 使用教程

WSL 是適用於 Linux 的 Windows 子系統,可讓開發人員按原樣運行 GNU/Linux 環境 - 包括大多數命令行工具、實用工具和應用程序 - 且不會產生傳統虛擬機或雙啟動設置開銷。

WSL 分為兩個版本,一個是 WSL1,一個是 WSL2,WSL2 是 WSL1 的升級版,主要優勢是:

WSL2 建議不要跨操作系統使用文件,若想獲得最快的性能速度,請將文件存儲在 WSL 文件系統中,在存儲時,使用 Linux 文件系統根目錄: \\wsl$\Ubuntu-20.04\home\<user name>\Project 。

訪問 WSL2 文件系統,可以運行命令 WIN+R 或在文件資源管理器地址欄中鍵入 \\wsl$ ,以查找相應的分發名稱並訪問其根文件系統。

大多數情況下我們會使用 WSL2,但在以下情況,請考慮使用 WSL1:

可以使用 localhost 從 Windows 上訪問 Linux 分發版中的應用。

如果要從 Linux 分發版訪問 Windows 上運行的網路應用,則需要使用主機的 IP 地址。 你可以執行以下步驟來使其可行。

當使用遠程 IP 地址連接到應用程序時,它們將被視為來自區域網 (LAN) 的連接。 這意味著你需要確保你的應散液用程序可以接受 LAN 連接。例如,你可能需要將應用程序綁定到 0.0.0.0 而非 127.0.0.1 。

當使用 WSL 1 分發版時,如果計算機設置為可沖做物供 LAN 訪問,那麼在 WSL 中運行的應用程序也可供在 LAN 中訪問。

這不是 WSL 2 中的默認情況,WSL 2 有一個帶有其自己獨一無二的 IP 地址的虛擬化乙太網適配器。 目前,若要啟用此工作流,你需要執行與常規虛擬機相同的步驟。下面是一個示例 PowerShell 命令,用於添加偵聽主機上的埠 4000 的埠代理並將其連接到埠 4000,並使用 IP 地址 192.168.101.100 連接到 WSL 2 VM。

使用 wsl <Linux命令> 可以在 CMD 或 PowerShell 運行 Linux 命令,示例:

以這種方胡升式運行的命令使用的是同一個工作目錄,並且以 WSL 默認用戶的身份運行,擁有與調用方進程和終端相同的 Windows 管理許可權。

WSL 可以使用 [tool-name].exe 直接從 WSL 命令行運行 Windows 工具。 例如, notepad.exe 。

以這種方式運行的應用程序具有相同的工作目錄,擁有與 WSL 進程相同的許可權,以活動 Windows 用戶的身份運行,顯示在 Windows 任務管理器中。

WSL 還有一些高級用法,比如更改磁碟大小,文件許可權,環境變數等,具體配置可以參考官方文檔。

⑹ 通過ssh連接到區域網內Windows下WSL的Ubuntu

教程開始:

Ubuntu安裝教程如果你不會那應該再去網上搜搜
在windows的ubuntu下操作:

首先更改apt源,這里建議阿里的,官網: http://mirrors.aliyun.com
然後卸載並重新安裝ssh-server,因為聽說自帶的不好用
apt remove openssh-server
apt install openssh-server

然後改監聽埠

vim /etc/ssh/sshd_config
取消注釋,並更改埠為2222 (也可以按照你喜歡的,能記住就好)
我們姑且把埠號叫ggport (隨便取的名字,為了後面能夠引用)
之所以要改埠,是因為ubuntu的22可能會有其他用。理論上不改也行,我猜。

按ESC鍵,鍵盤輸入 :wq 保存退出
然後重啟ssh服務,使之生效 service ssh restart

到目前,其他電腦依舊連不到這台windows的ubuntu,需要設置一個代理

還是在ubuntu環境,輸入 apt install net-tools
然後輸入 ipconfig ,注意紅框的內容

接下來的操作在Windows上運行:
管理員許可權打開PowerShell,將windows的2222埠轉發到ubuntu,輸入:
netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=2222 connectaddress=[ggip] connectport=[ggport]
輸入的時候記得替換[ggip] [ggport] 為上面提到的值,跟前面的0.0.0.0一樣不要帶中括弧[]

然後在windows防火牆開啟入站規則,輸入命令:
netsh advfirewall firewall add rule name=WSL2 dir=in action=allow protocol=TCP localport=2222

坦白地講,我不喜歡Window的Shell,難用。不過知道能復制粘貼就可以湊合用。

然後還是在Powershell中,查看你的IP地址,輸入:
ipconfig
區別於Linux下的ifconfig

找到你的ip地址,我的是10.開頭的,現在不方便截圖

然後區域網內其他歲廳慎電腦,可以通過ssh連接
ssh username@ip -p 2222

在這里我簡要的說一下如何操作

首先在要訪問ubuntu的機器里,用戶目錄下如果沒有隱藏文件夾.ssh的話,執行:
ssh-keygen -t rsa
一路回車
然後終端進入~/.ssh文件夾下,用scp將公鑰(有.pub後綴的文件)拷貝到裝有ubuntu的windows里
scp -P 2222 ./id_rsa.pub username@ip:/home/
輸入密碼,如果有傳輸過程,比如網速啥的,說明成功伏物,沒有的話自己檢查一下
然後ubuntu終端內, cd /home
然後將.pub文件追加到當前用戶家目錄的 .ssh/
cat id_rsa.pub >> ~/.ssh/authorized_keys

首先安裝微軟自己出品的插件 Remote - SSH

然後點這

彈出來一個框,選第一個就好了
然後按照這個格式填個配置

私鑰文件就是在家目錄~下,沒有.pub後綴的乎敬文件,注意跟你上傳到ubuntu的公鑰要互相匹配
然後點上面vscode.png裡面 右邊中間的有+號的按鈕就可以連接啦!

有問題可以在評論區問我。

⑺ 安裝了個WSL,為什麼在家目錄下找不到desktop

WSL中的目錄和沖芹Windows是兩套體系,WSL的 / 並不是硬碟的根目錄。
硬碟的根目錄在 /mnt/c 、 /mnt/d

桌面一般在吵含 /mnt/c 裡面,/mnt/c/Users/你自己的用戶名/Desktop

cd /mnt/c/Users/你自己的用散碰畢戶名/Desktop

閱讀全文

與wsl連接網路共享目錄相關的資料

熱點內容
網路共享中心沒有網卡 瀏覽:512
電腦無法檢測到網路代理 瀏覽:1363
筆記本電腦一天會用多少流量 瀏覽:533
蘋果電腦整機轉移新機 瀏覽:1367
突然無法連接工作網路 瀏覽:1015
聯通網路怎麼設置才好 瀏覽:1212
小區網路電腦怎麼連接路由器 瀏覽:990
p1108列印機網路共享 瀏覽:1201
怎麼調節台式電腦護眼 瀏覽:652
深圳天虹蘋果電腦 瀏覽:891
網路總是異常斷開 瀏覽:602
中級配置台式電腦 瀏覽:948
中國網路安全的戰士 瀏覽:622
同志網站在哪裡 瀏覽:1402
版觀看完整完結免費手機在線 瀏覽:1448
怎樣切換默認數據網路設置 瀏覽:1098
肯德基無線網無法訪問網路 瀏覽:1274
光纖貓怎麼連接不上網路 瀏覽:1428
神武3手游網路連接 瀏覽:955
局網列印機網路共享 瀏覽:990