linux wifi配置文件,技术|如何在 Linux 终端中连接 WiFi?

在本教程中,你将学习如何在 Ubuntu 中从终端连接到无线网络。如果你在使用 Ubuntu 服务器时,无法访问常规的桌面环境,这将对你非常有帮助。

我的家用电脑主要使用桌面 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

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。如果你仍然遇到困难,请在评论区告诉我。

本文由 LCTT 原创编译,Linux中国 荣誉推出 linisi.svg

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 要在Linux连接WiFi,可以按照以下步骤操作: 1. 打开终端,输入命令“sudo iwlist wlan scan”(其wlan是无线网卡的名称),扫描可用的WiFi网络。 2. 找到要连接WiFi网络,记录下它的ESSID和加密方式。 3. 输入命令“sudo nano /etc/network/interfaces”,打开网络配置文件。 4. 在文件末尾添加以下内容: auto wlan iface wlan inet dhcp wpa-ssid "ESSID" wpa-psk "password" 其,wpa-ssid后面的“ESSID”是WiFi网络的名称,wpa-psk后面的“password”是WiFi网络的密码。 5. 保存文件并退出。 6. 输入命令“sudo ifdown wlan”和“sudo ifup wlan”,使配置生效。 7. 输入命令“ping www.baidu.com”测试网络连接是否正常。 以上就是在Linux连接WiFi的方法。 ### 回答2: Linux 是一种强大的操作系统,它可以为用户提供很多不同的网络操作功能,包括连接无线网络(Wi-Fi)的功能。要连接 WiFi,需要进行以下步骤: 1. 打开终端窗口:在 Linux 操作系统,我们可以使用“Ctrl+Alt+T”或者从菜单选择终端应用来打开一个新的终端窗口。 2. 扫描可用网络:在终端输入“sudo iwlist SCAN”命令,这将扫描周围的 Wi-Fi 网络。扫描完成后,会列出可用的网络名称和安全类型。如果您的网络隐藏,则需要手动输入网络名称(SSID)。 3. 连接网络:使用“sudo iwconfig wlan0 essid <networkname>”命令连接WiFi网络,其“<networkname>”是需要连接WiFi网络的名称。另外,如果网络需要密码,则需要输入密码来连接。(请注意:将“wlan0”更改为您的无线网络接口的名称。) 4. 获取 IP 地址:使用“sudo dhclient wlan0”命令获取 IP 地址。此命令将向 DHCP 服务器请求一个 IP 地址,并在成功后将其分配给您的 Linux 物理机。 5. 检查网络:通过使用 ping 命令来检查网络是否正常连接。例如,使用“ping google.com”命令来测试是否能成功访问 Google。 以上是Linux连接WiFi的一些必要步骤。通过完成这些步骤,您就可以成功地连接到一个 WiFi 网络,并可以通过您的 Linux 设备访问 Internet。 ### 回答3: 在Linux操作系统连接WiFi的步骤与连接有线网络基本相同,但需要进行一些额外的配置。下面将详细介绍如何在Linux连接WiFi。 一、查看无线网卡 在Linux,我们需要先查看我们的无线网卡类型和名字,以便后面调用相关的命令。在终端输入如下命令: $ lspci | grep Ethernet 可以看到类似于这样的输出: 03:00.0 Ethernet controller: Qualcomm Atheros AR9485 Wireless Network Adapter (rev 01) 这里我们可以看到我们的无线网卡是Qualcomm Atheros AR9485 Wireless Network Adapter,接下来我们就可以配置网络了。 二、安装无线网卡驱动 有些Linux操作系统可能没有默认安装无线网卡驱动,需要手动安装。如果系统已经自带了相应的驱动,可以跳过此步骤。 在终端输入如下命令: $ sudo apt-get install firmware-atheros(此处以atheros网卡驱动为例进行说明,不同的网卡对应不同的驱动) 安装完后,重启电脑。 三、扫描WiFi网络 在终端输入如下命令,扫描WiFi网络: $ sudo iwlist wlp3s0 scan 注意:wlp3s0为无线网卡的名字,不同的系统和网卡名字可能不同。 终端会列出可用的WiFi网络以及他们的信息,找到你需要连接WiFi网络的名称和MAC地址,以备后用。 四、连接WiFi终端输入如下命令: $ nmcli device wifi connect "Your_SSID" password Your_Password 其,“Your_SSID”为你需要连接WiFi网络名称,“Your_Password”为WiFi网络的密码。 五、检查连接连接WiFi后,打开浏览器可以查看是否成功连接WiFi网络。在终端输入如下命令,查看系统的IP地址和连接状态等信息: $ nmcli device show wlp3s0 其,“wlp3s0”为无线网卡的名字。 通过以上步骤,我们可以在Linux操作系统成功连接WiFi网络,完成网络连接

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值