溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Linux終端中怎么使用Netplan連接WiFi

發(fā)布時(shí)間:2022-02-10 15:05:35 來(lái)源:億速云 閱讀:1012 作者:iii 欄目:開(kāi)發(fā)技術(shù)

這篇文章主要講解了“Linux終端中怎么使用Netplan連接WiFi”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“Linux終端中怎么使用Netplan連接WiFi”吧!

Netplan抽象網(wǎng)絡(luò)配置生成器 ,是一個(gè)用于配置 Linux 網(wǎng)絡(luò)的簡(jiǎn)單工具。 通過(guò) Netplan ,你只需用一個(gè) YAML 文件描述每個(gè)網(wǎng)絡(luò)接口需要配置成啥樣即可。 根據(jù)這個(gè)配置描述, Netplan 便可幫你生成所有需要的配置,不管你選用的底層管理工具是啥。

Linux終端中怎么使用Netplan連接WiFi

在 Ubuntu 中從終端連接到 WiFi

當(dāng)你使用 Ubuntu 桌面時(shí),連接到 WiFi 是很容易的,因?yàn)槟阌袌D形用戶界面,可以很容易地做到這一點(diǎn)。但當(dāng)你使用 Ubuntu 服務(wù)器時(shí)就不一樣了,因?yàn)槟阒荒苁褂妹钚小?/p>

Ubuntu 使用 Netplan 工具來(lái)輕松配置網(wǎng)絡(luò)。在 Netplan 中,你可以創(chuàng)建一個(gè)包含網(wǎng)絡(luò)接口描述的 YAML 文件,然后在 netplan 命令行工具的幫助下,生成所有需要的配置。

讓我們看看如何使用 Netplan 從終端連接到無(wú)線網(wǎng)絡(luò)。

步驟 1:確定你的無(wú)線網(wǎng)絡(luò)接口名稱

有幾種方法可以識(shí)別你的網(wǎng)絡(luò)接口名稱。你可以使用 ip 命令、過(guò)時(shí)的 ipconfig 命令或查看這個(gè)文件:

ls /sys/class/net

這應(yīng)該會(huì)展示所有可用的網(wǎng)絡(luò)接口(以太網(wǎng)、WiFi 和環(huán)回)。無(wú)線網(wǎng)絡(luò)接口名稱以 w 開(kāi)頭,通常命名類似 wlanX、wlpxyz。

[email protected]:~$ ls /sys/class/net
eth0 lo wlan0

記下這個(gè)接口名。你將在下一步使用它。

步驟 2:編輯 Netplan 配置文件中的 wifi 接口詳細(xì)信息

Netplan 配置文件在 /etc/netplan 目錄下。如果你查看這個(gè)目錄的內(nèi)容,你應(yīng)該看到類似 01-network-manager-all.yml 或 50-cloud-init.yaml 等文件。

如果是 Ubuntu 服務(wù)器,你應(yīng)該有 50-cloud-init.yaml 文件。如果是桌面計(jì)算機(jī),應(yīng)該是 01-network-manager-all.yml 文件。

Linux 桌面計(jì)算機(jī)的 Network Manager 允許你選擇一個(gè)無(wú)線網(wǎng)絡(luò)。你可以在它的配置中硬編碼寫入 WiFi 接入點(diǎn)。這可以在自動(dòng)掉線的情況下(比如掛起)時(shí)幫助到你。

不管是哪個(gè)文件,都可以打開(kāi)編輯。我希望你對(duì) Nano 編輯器有一點(diǎn)熟悉,因?yàn)?Ubuntu 預(yù)裝了它。

sudo nano /etc/netplan/50-cloud-init.yaml

YAML 文件對(duì)空格、縮進(jìn)和對(duì)齊方式非常敏感。不要使用制表符,在看到縮進(jìn)的地方使用 4 個(gè)空格(或 2 個(gè),以 YAML 文件中已經(jīng)使用的為準(zhǔn))代替。

基本上,你需要添加以下幾行,引號(hào)中是接入點(diǎn)名稱(SSID) 和密碼(通常):

wifis:
   wlan0:
       dhcp4: true       optional: true       access-points:
           "SSID_name":
               password: "WiFi_password"

再說(shuō)一次,保持我所展示的對(duì)齊方式,否則 YAML 文件不能被解析,它會(huì)拋出一個(gè)錯(cuò)誤。

你的完整配置文件可能是這樣的:

# This file is generated from information provided by the datasource. Changes# to it will not persist across an instance reboot. To disable cloud-init's# network configuration capabilities, write a file# /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg with the following:# network: {config: disabled}network:
   ethernets:
       eth0:
           dhcp4: true           optional: true   version: 2
   wifis:
       wlan0:
           dhcp4: true           optional: true           access-points:
               "SSID_name":
                   password: "WiFi_password"

我覺(jué)得很奇怪,盡管有消息說(shuō)更改不會(huì)在實(shí)例重啟后保留,但它仍然可以工作。

不管怎樣,用這個(gè)命令生成配置:

sudo netplan generate

如果你幸運(yùn)的話,你應(yīng)該連上網(wǎng)絡(luò)。嘗試 ping 一個(gè)網(wǎng)站或運(yùn)行 apt 更新命令。

然而,事情可能不會(huì)那么順利,你可能會(huì)看到一些錯(cuò)誤。如果是這種情況,請(qǐng)嘗試一些額外的步驟。

可能的故障排除

當(dāng)你使用 netplan apply 命令時(shí),你有可能在輸出中看到類似這樣的錯(cuò)誤。

Failed to start netplan-wpa-wlan0.service: Unit netplan-wpa-wlan0.service not found.
Traceback (most recent call last):
 File "/usr/sbin/netplan", line 23, in  
   netplan.main()
 File "/usr/share/netplan/netplan/cli/core.py", line 50, in main
   self.run_command()
 File "/usr/share/netplan/netplan/cli/utils.py", line 179, in run_command
   self.func()
 File "/usr/share/netplan/netplan/cli/commands/apply.py", line 46, in run
   self.run_command()
 File "/usr/share/netplan/netplan/cli/utils.py", line 179, in run_command
   self.func()
 File "/usr/share/netplan/netplan/cli/commands/apply.py", line 173, in command_apply
   utils.systemctl_networkd('start', sync=sync, extra_services=netplan_wpa)
 File "/usr/share/netplan/netplan/cli/utils.py", line 86, in systemctl_networkd
   subprocess.check_call(command)
 File "/usr/lib/python3.8/subprocess.py", line 364, in check_call
   raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['systemctl', 'start', '--no-block', 'systemd-networkd.service', 'netplan-wpa-wlan0.service']' returned non-zero exit status 5.

可能是 wpa_supplicant 服務(wù)沒(méi)有運(yùn)行。運(yùn)行這個(gè)命令:

sudo systemctl start wpa_supplicant

再次運(yùn)行 netplan apply。如果它能解決這個(gè)問(wèn)題,那就太好了。否則,使用下面的命令關(guān)閉 Ubuntu 系統(tǒng):

shutdown now

重新啟動(dòng) Ubuntu 系統(tǒng),登錄并再次生成和運(yùn)行 netplan apply:

sudo netplan generate
sudo netplan apply

現(xiàn)在可能會(huì)顯示警告(而不是錯(cuò)誤)。這是警告而不是錯(cuò)誤。我檢查了正在運(yùn)行的 systemd 服務(wù),發(fā)現(xiàn) netplan-wpa-wlan0.service 已經(jīng)在運(yùn)行了??赡苁且?yàn)樗呀?jīng)在運(yùn)行了,而且 netplan apply 更新了配置文件(即使沒(méi)有任何改變),所以顯示了警告。

Warning: The unit file, source configuration file or drop-ins of netplan-wpa-wlan0.service changed on disk. Run 'systemctl daemon-reload' to reload units.

這并不重要,你可以通過(guò)運(yùn)行 apt update 來(lái)檢查網(wǎng)絡(luò)是否已經(jīng)正常工作。

感謝各位的閱讀,以上就是“Linux終端中怎么使用Netplan連接WiFi”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)Linux終端中怎么使用Netplan連接WiFi這一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是億速云,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI