国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【W(wǎng)SL2】在Windows和wsl2中互相網(wǎng)絡(luò)訪問的優(yōu)雅做法,不用再手動寫死IP了

這篇具有很好參考價值的文章主要介紹了【W(wǎng)SL2】在Windows和wsl2中互相網(wǎng)絡(luò)訪問的優(yōu)雅做法,不用再手動寫死IP了。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

前言

  • 目前在windows與windows的wsl系統(tǒng)之間,還無法通過相對較固定的方式來互相網(wǎng)絡(luò)訪問,通常需要使用各自的ip來互相訪問,而ip可能不是很直觀并且可能會有變更,當(dāng)前教程解決了這個問題,通過hosts映射的方式打通wsl與windows宿主機之間的訪問。
  • 腳本的原理:在linux啟動時或shell加載時,執(zhí)行一次修改windows和linux上的hosts文件的腳本。為windows添加wsl的host以及為wsl添加windows的host,這樣就能做到互相映射。

注:
當(dāng)前教程演示使用的wsl2環(huán)境為linux ubuntu,故在腳本中使用“ubuntu”來映射wsl2子系統(tǒng)的實際ip,該名稱可以根據(jù)需要自行定義。

一、具體步驟

  1. 給予當(dāng)前windows用戶修改hosts文件的權(quán)限

快捷鍵win+r,輸入C:\Windows\System32\drivers\etc,或在該文件夾中找到hosts文件,右鍵選擇“屬性” ,選擇“安全選項卡”;

點擊“編輯”,找到當(dāng)前用戶組(一般是Users),為其添加完全控制權(quán)限,即勾選"完全控制",彈出的對話框確認(rèn),確定即可。

  1. 編輯腳本

啟動wsl2子系統(tǒng),在命令行中輸入:

cd ~
vim wsl2_auto_host_to_win.sh

腳本內(nèi)容如下:

# 為 win 設(shè)置 wsl host
# win hosts 文件路徑
win_hosts_path="/mnt/c/Windows/System32/drivers/etc/hosts"

# !!!為 wsl2 設(shè)置的域名,可以改成自己習(xí)慣的名稱,后面使用該名稱來訪問資源
wsl_domain="ubuntu"

# 獲取 wsl2 的 ip
wsl_ip=$(ifconfig eth0 | grep -w inet | awk '{print $2}')
# 判斷是否已存在 wsl2 的域名,如果存在則修改,否則追加
if grep -wq "$wsl_domain" $win_hosts_path
then
    # 此處因為權(quán)限問題沒有直接用 sed 修改 hosts 文件
    win_hosts=$(sed -s "s/.* $wsl_domain/$wsl_ip $wsl_domain/g" $win_hosts_path)
    echo "$win_hosts" > $win_hosts_path
else
    echo "$wsl_ip $wsl_domain" >> $win_hosts_path
fi

# 為 wsl 設(shè)置 win host
wsl_hosts_path="/etc/hosts"

# 為 windows主機 設(shè)置的域名,可以改成自己習(xí)慣的名稱,后面使用該名稱來訪問資源
win_domain="win"
win_ip=$(cat /etc/resolv.conf | grep "nameserver" | awk '{print $2}')
if grep -wq "$win_domain" $wsl_hosts_path
then
    wsl_hosts=$(sed -s "s/.* $win_domain/$win_ip $win_domain/g" $wsl_hosts_path)
    echo $wsl_hosts > $wsl_hosts_path
else
    echo "$win_ip $win_domain" >> $wsl_hosts_path
fi
echo "host change ok!"

保存腳本,給予腳本可執(zhí)行權(quán)限

chmod +x wsl2_auto_host_to_win.sh

注意:
如果腳本是在windows編輯過的,可能會有字符轉(zhuǎn)義的問題,需要通過dos2unix轉(zhuǎn)義字符后才可以執(zhí)行。
安裝dos2unix(可選):

# 如果沒有更新過軟件列表則需要更新
sudo apt-get update
sudo apt-get install dos2unix
  1. 設(shè)置腳本自啟

編輯用戶目錄下的.bashrc

cd ~
vim .bashrc

在該文件末尾添加以下內(nèi)容(具體腳本位置請?zhí)鎿Q成你放置腳本的實際位置)

sudo /home/user/wsl2_auto_host_to_win.sh

保存后退出shell界面,當(dāng)再進入wsl2子系統(tǒng)時,輸入當(dāng)前賬戶密碼,就會自動執(zhí)行一次腳本,也就完成了windows和wsl2中hosts文件的修改。

如果提示沒有ifconfig需要安裝:

sudo apt-get install net-tools

二、驗證

在windows上打開cmd,執(zhí)行:ping ubuntu
以及在wsl2子系統(tǒng)中執(zhí)行:ping win
即可驗證是否已經(jīng)可以互相訪問。

結(jié)語

當(dāng)前腳本優(yōu)雅且輕松的實現(xiàn)了在wsl2和宿主機windows之間互相通過固定domain訪問的方式,可以為日常開發(fā)工作帶來一定程度的便捷性。

wsl中獲取windows ip參考:https://learn.microsoft.com/en-us/windows/wsl/networking

如有問題歡迎在留言評論區(qū)討論
如果本文對你有幫助請點個贊,支持一下,感謝~文章來源地址http://www.zghlxwxcb.cn/news/detail-854636.html

到了這里,關(guān)于【W(wǎng)SL2】在Windows和wsl2中互相網(wǎng)絡(luò)訪問的優(yōu)雅做法,不用再手動寫死IP了的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • WSL2配置網(wǎng)絡(luò)代理

    WSL2配置網(wǎng)絡(luò)代理

    注意 :本文參考自文章:WSL2配置代理,是對原文的補充,使其適用于河對岸云服務(wù)代理。 請注意:本文的WSL2代理配置, 需要Windows的代理軟件已經(jīng)能夠正常工作 。 以河對岸云服務(wù)為例,購買相關(guān)服務(wù)。開啟軟件之后,右鍵 高級設(shè)置 ,在 Core: basic settings 頁面中,可以查看

    2024年02月02日
    瀏覽(27)
  • windows10安裝wsl2,centos內(nèi)核

    windows10安裝wsl2,centos內(nèi)核

    檢查系統(tǒng)環(huán)境 必須運行 Windows 10 版本 2004 及更高版本(內(nèi)部版本 19041 及更高版本)或 Windows 11 才能使用以下命令。 一、開啟WSL2特性 【控制面板】【程序】【程序和功能】【啟用或關(guān)閉Windows功能】 二、下載Linux內(nèi)核更新包 下載 雙擊安裝 三、設(shè)置WSL2為默認(rèn)版本 四、下載安

    2024年02月12日
    瀏覽(31)
  • Windows+WSL2+SSH實現(xiàn)遠程辦公

    Windows+WSL2+SSH實現(xiàn)遠程辦公

    在這里分享一下我如何實現(xiàn)用MacBook連接主機服務(wù)器遠程辦公,我目前有一臺主機在寢室,但是在教室或者圖書館我手邊是一臺MacBook便不能跑一些算力較大的項目,這時我只需要遠程打開我的主機服務(wù)器,然后用MacBook的終端或者vs code等連接到我的主機服務(wù)器遍可以進行一些大

    2024年01月21日
    瀏覽(11)
  • windows10 安裝WSL2, Ubuntu,docker

    windows10 安裝WSL2, Ubuntu,docker

    閱讀時長:10分鐘 本文內(nèi)容: window上安裝ubuntu虛擬機,并在虛擬機中安裝docker,通過docker部署數(shù)字人模型,通過vscode鏈接到虛擬機進行開發(fā)調(diào)試.調(diào)試完成后,直接部署在云端即可. WSL2(Windows Subsystem for Linux)是windows系統(tǒng)默認(rèn)支持的功能,也就是Windows Linux子系統(tǒng),類似于一臺

    2024年02月12日
    瀏覽(27)
  • wsl2 ubuntu ip 自動同步到windows端的vscode remote ssh(wsl2 ubuntu 靜態(tài)ip 固定ip)

    wsl2 ubuntu ip 自動同步到windows端的vscode remote ssh(wsl2 ubuntu 靜態(tài)ip 固定ip)

    ? wsl2 中l(wèi)inux版本:ubuntu ? windows版本: win10/win11 最近裝了wsl2,使用vscode遠程連接wsl2時遇到了如下問題: 1、wsl2的ip無法固定 2、wsl2的ssh服務(wù)不能自動開啟。 嘗試了網(wǎng)上許多方法,都不能解決,于是決定自己寫python腳本解決。 如下方案可以自動將wsl2的ip同步到vscode remote s

    2024年02月03日
    瀏覽(19)
  • Ubuntu20.4 WSL2 無法訪問github終極解決方案

    Ubuntu20.4 WSL2 無法訪問github終極解決方案

    sudo rm /etc/resolv.conf sudo bash -c \\\'echo \\\"nameserver 8.8.8.8\\\" /etc/resolv.conf\\\' sudo bash -c \\\'echo \\\"[network]\\\" /etc/wsl.conf\\\' sudo bash -c \\\'echo \\\"generateResolvConf = false\\\" /etc/wsl.conf\\\' ? ? ?

    2024年02月07日
    瀏覽(25)
  • WSL2和Windows之間通信實現(xiàn)【以Unity為例】

    WSL2和Windows之間通信實現(xiàn)【以Unity為例】

    WSL2可以視為一個獨立的虛擬機,具有自己獨立的IP地址,通過虛擬路由器與Windows連接,因此WSL2不能直接訪問到Windows的主機地址,需要動態(tài)獲取。 默認(rèn)情況下Windows的防火墻會阻止WSL2中應(yīng)用對Windows的網(wǎng)絡(luò)訪問(see: Add \\\"allow\\\" rule to Windows firewall for WSL2 network · Issue #4585 · microsof

    2024年02月12日
    瀏覽(44)
  • windows11使用wsl2環(huán)境安裝svox2

    1. wsl --install -d ubuntu-22.04 輸入用戶名和密碼 2. 用以下命令將系統(tǒng)遷移到d盤: wsl --export ubuntu-22.04 d:ubuntuwslubuntu22.04.tar(導(dǎo)出) wsl --import ubuntu d:ubuntuwsl d:ubuntuwslubuntu22.04.tar(導(dǎo)入) wsl --unregister ubuntu-22.04(刪除原系統(tǒng)) wsl進入新系統(tǒng) 3.安裝miniconda. 4.安裝svox2 下載:sxyu/

    2024年02月06日
    瀏覽(20)
  • windows下的wsl2如何進行docker數(shù)據(jù)卷掛載

    windows下的wsl2如何進行docker數(shù)據(jù)卷掛載

    ?這是數(shù)據(jù)卷掛載命令 docker run -it -v /宿主機絕對路徑目錄: /容器內(nèi)目錄 鏡像名 ?在Linux中我們可以直接使用該命令進行掛載,那在windows如何把我們c盤d盤下的目錄掛載到容器呢,其實只要在路徑前面加上/mnt就好了,下面來演示一下 首先拉取一個ubuntu鏡像 docker pull ubuntu 這是

    2023年04月11日
    瀏覽(21)
  • windows10(家庭版)和windows11(家庭版)開啟WSL2

    windows10(家庭版)和windows11(家庭版)開啟WSL2

    WSL 是什么? WSL的全稱為Windows Subsystem for Linux。翻譯成中文的意思就是“適用于Windows的Linux子系統(tǒng)”。WSL是一個在Windows 1011上能夠運行原生Linux二進制可執(zhí)行文件(ELF格式)的兼容層。 注:如果是windows10,需確保 Windows 10 版本號為 22H2 或更高,操作系統(tǒng)內(nèi)部版本為 19045.2311 或

    2023年04月18日
    瀏覽(99)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包