【UBuntu20 配置usb网卡】 Ubuntu20配置usb网卡(特别是建立热点)
一、 闲言碎语的前言
usb的外置网卡,相比Windows即插即用,Linux买回来一顿折腾,准备把过程梳理一下记录起来。
网卡的方案其实就那几家,不过多赘述,配置过程方法具有通用性,如果买了其他芯片方案的可以参考。
如图,淘宝上找了一款20多元(虽然我知道有的技术佬还有几块钱的方案),但是不想太折腾,就买现成的。
买usb网卡小白看几点就好:
- 芯片方案(百度一下就知道了,特别是支持建立热点,也就是所谓的模拟ap的)
- 天线内置还是外置,我喜欢内置
- 单模还是双模,自便
- 支持多少Mbps,300+
- 整体物理结构大小,如果队速度无所谓,u盘大小就可以,虽然还有更小的
- 系统适配性(免驱还是需要驱动),推荐免驱动
二、 配置教程(针对ubuntu20.04 基于linux)
1. 拆开包装,插上电脑(废话)
哈哈,还真不是废话,因为有的人的电脑有的usb口有问题,再就是有时候没插紧,电脑根本没识别,我就是那个大傻逼,我就遇到了。😓
我买的这款是免驱动的,这时候不妨查询一下,系统是否识别到了。
- 方法1:如果你是桌面系统,有界面,那好办了,就看看连接网络哪里,只是可以多了wlan有关的选项
- 方法2:如果是shell,那就执行 lsusb
你会看到这个就代表ok了(wireless adapter字样):
2. 设置wifi - 接受你的wifi
这时候你的linux设备就可以连接网络了,找一个wifi连接,这里界面操作就不多说了,说一下命令行。
主要会用到一下几个命令:
bash
# 查看当前环境下有的所有wifi网络
nmcli dev wifi list
周边网络数据一览无余,关注 SSID 与SIGNAL
找一个信号好的你知道密码的准备链接。只需要替换下面的名字和wifi密码。(sudo sudo sudo)
bash
sudo nmcli dev wifi connect "wifi名字(ssid)" password "wifi密码"
如果你不sudo
恭喜你,喜提报错 Error: Failed to add/activate new connection: Not authorized to control networking.
3. 设置AP-发射你的wifi(基于你连接上互联网了)
- 日常更新 :
sudo apt update
(换不换软件源自己解决) - 安装需要的包 :
sudo apt install -y libgtk-3-dev build-essential gcc g++ pkg-config make hostapd libqrencode-dev libpng-dev
这里补充一下:安装完依赖可以使用界面app,可选
🔜点我下载
-
安装建立热点的主角:
sudo apt install create_ap
这里注意你的wifi操作如果不需要管理员你可以不加sudo,这里加了sudo,命令路径就会使/bin/create_ap, 如果不加,那就是/usr/bin/create_ap -
wifi网卡一般都是wifi模式和ap模式切换,所以这里我们要关掉wifi并检查。主要包含两个命令
bash
# a. 检查软硬见状态
# 检查wifi软硬件实际禁用状况
rfkill list
# 你可能看到 【反馈】
0: phy0: Wireless LAN
Soft blocked: yes
Hard blocked: no
# 继续执行
sudo rfkill unblock wifi
# 再次检查wifi软硬件实际禁用状况
rfkill list
# 你可能看到 【反馈】
0: phy0: Wireless LAN
Soft blocked: no
Hard blocked: no
# 这一步结束,下一步
# b. 关闭wifi
sudo nmcli radio wifi off
# 搞定
- 运行热点命令
其中
wlx7cdd900fd736 为wifi网卡,enp1s0有线网卡,可以根据ifconfig找到你的
hotpot为热点名称,password123456为密码,自定义
bash
sudo /bin/create_ap wlx7cdd900fd736 enp1s0 hotpot password123456
如果都是一路successful,那么恭喜你,快看看手机能不能收到wifi。
设置自启动
由于部分命令用到sudo,如果你的用户每次打开新的shell都要密码,那么先做好准备工作。
- 配置 sudo 免密
bash
sudo visudo
# 加上 your_username为你的个人用户名
your_username ALL=(ALL) NOPASSWD: /bin/create_ap # 必须
your_username ALL=(ALL) NOPASSWD: nmcli
your_username ALL=(ALL) NOPASSWD: rfkill
- 创建 Systemd 服务文件
bash
sudo nano /etc/systemd/system/create_ap.service
内容如下:
bash
[Unit]
Description=Create Wi-Fi Hotspot at Startup
After=network.target
[Service]
Type=simple
# 在启动 create_ap 之前先解除 RF-kill,然后关闭 Wi-Fi
ExecStartPre=sudo rfkill unblock wifi
ExecStartPre=sudo nmcli radio wifi off
ExecStart=sudo /bin/create_ap wlx7cdd900fd736 enp1s0 USV_Dtu vip123456
Restart=on-failure
[Install]
WantedBy=multi-user.target
说明:
- ExecStartPre=sudo rfkill unblock wifi: 解除任何软禁用(Soft block),确保 Wi-Fi 可以正常工作。
- ExecStartPre=sudo nmcli radio wifi off: 关闭 Wi-Fi 以准备开启热点。
- 保存后应用
bash
sudo systemctl daemon-reload
sudo systemctl start create_ap.service
sudo systemctl status create_ap.service
- 开启服务自启动
bash
sudo systemctl enable create_ap.service
完结撒花 💐💐💐
遇到问题欢迎评论和私信哦!