無線網路安裝步驟「連接無線網怎麼知道密碼」

我的家用電腦主要使用桌面 Linux。我也有多台 Linux 伺服器用於託管網站以及開源軟體,如 Nextcloud 、 Discourse 、Ghost、Rocket Chat 等。

我可以使用 Linode 在雲端幾分鐘內快速部署 Linux 伺服器。但最近,我在我的樹莓派上安裝了 Ubuntu 伺服器 。這是我第一次在物理設備上安裝伺服器,我不得不做一些額外的事情來通過命令行將 Ubuntu 伺服器連接到 WiFi。

在本教程中,我將展示在 Ubuntu Linux 中使用終端連接到 WiFi 的步驟。你應該:

  • 不要害怕使用終端編輯文件。
  • 知道 wifi 接入點名稱 (SSID) 和密碼。

在 Ubuntu 中從終端連接到 WiFi

當你使用 Ubuntu 桌面時,連接到 WiFi 是很容易的,因為你有圖形用戶界面,可以很容易地做到這一點。但當你使用 Ubuntu 伺服器時就不一樣了,因為你只能使用命令行。

Ubuntu 使用 Netplan 工具來輕鬆配置網路。在 Netplan 中,你可以創建一個包含網路介面描述的 YAML 文件,然後在 netplan 命令行工具的幫助下,生成所有需要的配置。

讓我們看看如何使用 Netplan 從終端連接到無線網路。

步驟 1:確定你的無線網路介面名稱

有幾種方法可以識別你的網路介面名稱。你可以使用 ip 命令、過時的 ipconfig 命令或查看這個文件:

ls /sys/class/net

這應該會展示所有可用的網路介面(乙太網、WiFi 和環回)。無線網路介面名稱以 w 開頭,通常命名類似 wlanX、wlpxyz。

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

記下這個介面名。你將在下一步使用它。

步驟 2:編輯 Netplan 配置文件中的 wifi 介面詳細信息

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

如果是 Ubuntu 伺服器,你應該有 50-cloud-init.yaml 文件。如果是桌面計算機,應該是 01-network-manager-all.yml 文件。

Linux 桌面計算機的 Network Manager 允許你選擇一個無線網路。你可以在它的配置中硬編碼寫入 WiFi 接入點。這可以在自動掉線的情況下(比如掛起)時幫助到你。

不管是哪個文件,都可以打開編輯。我希望你對 Nano 編輯器有一點 熟悉 ,因為 Ubuntu 預裝了它。

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

YAML 文件對空格、縮進和對齊方式非常敏感。不要使用製表符,在看到縮進的地方使用 4 個空格(或 2 個,以 YAML 文件中已經使用的為準)代替。

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

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

再說一次,保持我所展示的對齊方式,否則 YAML 文件不能被解析,它會拋出一個錯誤。

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

# 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"

我覺得很奇怪,儘管有消息說更改不會在實例重啟後保留,但它仍然可以工作。

不管怎樣,用這個命令生成配置:

sudo netplan generate

現在應用它:

sudo netplan apply

如果你幸運的話,你應該連上網路。嘗試 ping 一個網站或運行 apt 更新命令。

然而,事情可能不會那麼順利,你可能會看到一些錯誤。如果是這種情況,請嘗試一些額外的步驟。

可能的故障排除

當你使用 netplan apply 命令時,你有可能在輸出中看到類似這樣的錯誤。

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 <module>
    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 服務沒有運行。運行這個命令:

sudo systemctl start wpa_supplicant

再次運行 netplan apply。如果它能解決這個問題,那就太好了。否則,使用下面的命令 關閉 Ubuntu 系統 :

shutdown now

重新啟動 Ubuntu 系統,登錄並再次生成和運行 netplan apply:

sudo netplan generate
sudo netplan apply

現在可能會顯示警告(而不是錯誤)。這是警告而不是錯誤。我檢查了 正在運行的 systemd 服務 ,發現 netplan-wpa-wlan0.service 已經在運行了。可能是因為它已經在運行了,而且 netplan apply 更新了配置文件(即使沒有任何改變),所以顯示了警告。

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.

這並不重要,你可以通過運行 apt update 來檢查網路是否已經正常工作。

我希望你能夠在本教程的幫助下,在 Ubuntu 中使用命令行連接到 WiFi。如果你仍然遇到困難,請在評論區告訴我。

原創文章,作者:投稿專員,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/269007.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
投稿專員的頭像投稿專員
上一篇 2024-12-16 13:13
下一篇 2024-12-16 13:13

相關推薦

發表回復

登錄後才能評論