Ubuntu 启动分配不到 ip 地址问题
前段时间烧录了一个 ubuntu 服务器版本的镜像到一个 u 盘当启动盘使用,然后开机之后,显示拿不到 ip 地址,后来发现,是因为默认不带驱动的,需要自己下载然后配置,搞了小半天,如果大家也遇到这个问题的话按照下面步骤来尝试 90% 概率成功(反正我自己是成功的,不排除特殊情况)。
1,首先需要找跟网线插入电脑,因为默认是有有线网卡驱动的,插入之后,先输入 ip addr 查看有线网卡是否启动(我的名称:enp2s0f0),如果没有启动的话,输入 sudo ip link set enp2s0f0 up 这时网卡就启动了,然后输入 sudo dhclient -v enp2s0f0 让它去自动获取 ip 地址。再次输入 ip addr 查看是否得到地址,然后可以尝试 ping 外网看看能不能 ping 通。(如果有同学插入的校园网的网线的话,大部分校园网是需要认证的,所以你需要下载 w3m 来进行一系列操作去认证,但是本机没有网络怎么办?可以先下载好拷贝到 u 盘中,然后使用 lsblk 命令查看磁盘情况,再通过 mount /dev/sdb1 /root/chase 命令进行挂载,最后使用 umount /root/chase 推出磁盘。以上步骤很繁琐,所以我们可以使用手机的 usb 热点共享功能插入电脑进行上网,默认的网口名是 usb0);
2,当我们插入网线,电脑可以访问外网之后,我们可以下载驱动了,通过 sudo apt install bcmwl-kernel-source 命令去下载这个闭源驱动,他是 Broadcom 无线网卡的专有驱动,主要用来让 Ubuntu/Debian 系统支持 Broadcom 的 wifi 芯片;下载完之后使用 sudo reboot 进行重启。重启之后再使用 ip addr 查看网卡,就会发现多了一个(我的是:wlp3s0)。然后通过 sudo ip link set wlp3s0 up 命令启动网卡。
3,启动完成之后,使用 sudo nmcli device wifi list,这里的 nmcli 工具是需要通过 apt 下载的,如果你下载的时候发现下载不了,去检查一下刚刚的有线网卡是否启动,因为重启之后可能就会默认关闭了,下载好之后再次扫描网络,然后使用 sudo nmcli device wifi connect "WiFi名字" password "WiFi密码" 来连接指定网络,第一次连接有可能会失败,第二次就没问题了。连接成功之后就可以正常上网啦。
4,这时如果再同一个局域网的设备是连接不到这个设备的,ip route show 通过这个命令可以发现,你的默认网关可能还是之前的那个有线网的网关或 usb 的网关,这时需要使用 ip link set 网卡 down 来关闭这个网卡就会走你的无线网的网络网关啦,而且设备也能 ping 通过。
5,但你通过 speedtest-cli 命令可以发现,这时的网络网速很慢只有几 mb/s 的话,首先先关闭其余网卡确保资源集中,然后使用 iwlist wlp3s0 scan | grep -i "frequency\|quality" 查看网络频段是否正常(大于 >-70 最好),使用 sudo iwconfig wlp3s0 power off 禁用电源管理减少延迟来优化 wl 驱动,这时再吃测试 speed 的话发现应该可以提升到 四五十 mb/s ,虽然这还是比正常水平要低的,但是这个延迟也勉强能接受,如果接受不了的话通过 lspci | grep -i network 查看当前电脑的无线网卡硬件信息,去下载开源驱动 b43 来提升网速,但是这个驱动对于 BCM4331 的型号支持不好,而且这个驱动源很难找,还要折腾一段时间,所以并不建议大家去下载这个驱动,就使用我上面那个完全够用,如果提升过后的延迟还不能接受的话你们再去想其他办法吧。