|如何在 Linux 终端中连接 WiFi?
在本教程中 , 你将学习如何在 Ubuntu 中从终端连接到无线网络 。 如果你在使用 Ubuntu 服务器时 , 无法访问常规的桌面环境 , 这将对你非常有帮助 。
我的家用电脑主要使用桌面 Linux 。 我也有多台 Linux 服务器用于托管网站以及开源软件 , 如 Nextcloud、Discourse、Ghost、Rocket Chat 等 。
我可以使用 Linode在云端几分钟内快速部署 Linux 服务器 。 但最近 , 我在我的树莓派上安装了Ubuntu 服务器 。 这是我第一次在物理设备上安装服务器 , 我不得不做一些额外的事情来通过命令行将 Ubuntu 服务器连接到 WiFi 。
在本教程中 , 我将展示在 Ubuntu Linux 中使用终端连接到 WiFi 的步骤 。 你应该:
- 不要害怕使用终端编辑文件 。
- 知道 wifi 接入点名称 (SSID) 和密码 。
本文插图
当你使用 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.yamlYAML 文件对空格、缩进和对齐方式非常敏感 。 不要使用制表符 , 在看到缩进的地方使用 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可能是 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 。 如果你仍然遇到困难 , 请在评论区告诉我 。
via: https://itsfoss.com/connect-wifi-terminal-ubuntu/
作者:Abhishek Prakash选题:lujun9972译者:geekpi校对:wxy
【|如何在 Linux 终端中连接 WiFi?】本文由 LCTT原创编译 , Linux中国荣誉推出
推荐阅读
- 小龙虾|三农探析:池塘养殖小龙虾如何高产?高产养殖技术全解析
- 显微镜|假如人类可以把显微镜提升到40亿倍,是不是全新的宇宙观?
- 春天,吃鱼吃肉不如吃它,8块钱炒一盘,鲜香营养,好吃还不发胖
- 菜籽饼|菜籽饼被誉为果园之宝,但用错了烧苗烧根,果农如何来使用?
- 水产养殖|生态水产养殖如何提高鱼病的预防工作?大疆渔业这样建议
- 香芋跟南瓜还能如此吃,不做煎饼,软糯营养,好吃不上火,太美味
- 冬天,吃白菜吃菠菜不如它,营养极高,视力好了,肝脏也健康了
- 转基因|转基因背锅?去年已有不少弃种,如今产地低至3毛钱,果农愁销路
- 粉丝如此做真解馋,不蒸不炖不焖,好吃营养,老公一下子吃了一盘
- 早餐不吃馒头,教你如此做花卷,不用时间发面,松软香甜,真好吃
