登录后我的 Wifi 无法使用。我不知道为什么手动执行 rmmod && modprobe 后它就开始工作了。我猜是启动时的顺序有问题。
下面是我的 dmesg 的两个片段。第一个是在正常启动期间。第二个属于我的手动 rmmod/modprobe 步骤。
你知道我该怎么做才能解决这个问题吗?
系统:Kubuntu:16.04,4.4.0-10-generic x86_64
[ 7.087388] r8169 0000:07:00.0 enp7s0: link down
[ 7.087428] IPv6: ADDRCONF(NETDEV_UP): enp7s0: link is not ready
[ 7.089674] IPv6: ADDRCONF(NETDEV_UP): enp8s0: link is not ready
[ 7.109848] r8712u: module is from the staging directory, the quality is unknown, you have been warned.
[ 7.110464] r8712u: register rtl8712_netdev_ops to netdev_ops
[ 7.110467] usb 1-4: r8712u: USB_SPEED_HIGH with 4 endpoints
[ 7.110907] usb 1-4: r8712u: Boot from EFUSE: Autoload OK
[ 7.282782] r8169 0000:08:00.0 enp8s0: link down
[ 7.284825] IPv6: ADDRCONF(NETDEV_UP): enp8s0: link is not ready
[ 7.617220] usb 1-4: r8712u: CustomerID = 0x000a
[ 7.617222] usb 1-4: r8712u: MAC Address from efuse = 00:87:40:10:08:be
[ 7.617223] usb 1-4: r8712u: Loading firmware from "rtlwifi/rtl8712u.bin"
[ 7.617261] usbcore: registered new interface driver r8712u
[ 7.621546] r8712u 1-4:1.0 wlx0087401008be: renamed from wlan0
[ 7.732358] cfg80211: World regulatory domain updated:
[ 7.732360] cfg80211: DFS Master region: unset
[ 7.732361] cfg80211: (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp), (dfs_cac_time)
[ 7.732363] cfg80211: (2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A)
[ 7.732365] cfg80211: (2457000 KHz - 2482000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A)
[ 7.732366] cfg80211: (2474000 KHz - 2494000 KHz @ 20000 KHz), (N/A, 2000 mBm), (N/A)
[ 7.732368] cfg80211: (5170000 KHz - 5250000 KHz @ 80000 KHz, 160000 KHz AUTO), (N/A, 2000 mBm), (N/A)
[ 7.732370] cfg80211: (5250000 KHz - 5330000 KHz @ 80000 KHz, 160000 KHz AUTO), (N/A, 2000 mBm), (0 s)
[ 7.732371] cfg80211: (5490000 KHz - 5730000 KHz @ 160000 KHz), (N/A, 2000 mBm), (0 s)
[ 7.732373] cfg80211: (5735000 KHz - 5835000 KHz @ 80000 KHz), (N/A, 2000 mBm), (N/A)
[ 7.732374] cfg80211: (57240000 KHz - 63720000 KHz @ 2160000 KHz), (N/A, 0 mBm), (N/A)
[ 7.777931] nvidia-modeset: Allocated GPU:0 (GPU-129106a8-8953-c390-c543-a6e522aa3b5e) @ PCI:0000:03:00.0
完成后:须藤 rmmod r8712u && 须藤 modprobe r8712u
[ 188.145386] usbcore: deregistering interface driver r8712u
[ 188.282787] usb 1-4: reset high-speed USB device number 2 using ehci-pci
[ 192.478971] r8712u: module is from the staging directory, the quality is unknown, you have been warned.
[ 192.481375] r8712u: register rtl8712_netdev_ops to netdev_ops
[ 192.481380] usb 1-4: r8712u: USB_SPEED_HIGH with 4 endpoints
[ 192.481947] usb 1-4: r8712u: Boot from EFUSE: Autoload OK
[ 193.181882] usb 1-4: r8712u: CustomerID = 0x000a
[ 193.181887] usb 1-4: r8712u: MAC Address from efuse = 00:87:40:10:08:be
[ 193.181890] usb 1-4: r8712u: Loading firmware from "rtlwifi/rtl8712u.bin"
[ 193.182264] usbcore: registered new interface driver r8712u
[ 193.184687] r8712u 1-4:1.0 wlx0087401008be: renamed from wlan0
[ 193.209228] IPv6: ADDRCONF(NETDEV_UP): wlx0087401008be: link is not ready
[ 193.914988] r8712u 1-4:1.0 wlx0087401008be: 1 RCR=0x153f00e
[ 193.915733] r8712u 1-4:1.0 wlx0087401008be: 2 RCR=0x553f00e
[ 194.022709] IPv6: ADDRCONF(NETDEV_UP): wlx0087401008be: link is not ready
[ 194.346729] IPv6: ADDRCONF(NETDEV_UP): wlx0087401008be: link is not ready
[ 194.380906] IPv6: ADDRCONF(NETDEV_UP): wlx0087401008be: link is not ready
[ 204.899115] IPv6: ADDRCONF(NETDEV_CHANGE): wlx0087401008be: link becomes ready
sudo lshw-类网络
*-network
description: Wireless interface
physical id: 1
bus info: usb@1:4
logical name: wlx0087401008be
serial: 00:87:40:10:08:be
capabilities: ethernet physical wireless
configuration: broadcast=yes driver=r8712u ip=192.168.178.20 multicast=yes wireless=IEEE 802.11bgn
系统盘
Bus 001 Device 002: ID 0bda:8172 Realtek Semiconductor Corp. RTL8191SU 802.11n WLAN Adapter
更新:cat /var/log/syslog | grep NetworkManager
ar 5 21:28:12 ferhat-X58A-UD5 NetworkManager[882]: <info> urfkill disappeared from the bus
Mar 5 21:28:12 ferhat-X58A-UD5 NetworkManager[882]: <info> ofono is now available
Mar 5 21:28:12 ferhat-X58A-UD5 NetworkManager[882]: <warn> failed to enumerate oFono devices: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.ofono was not provided by any .service files
Mar 5 21:28:12 ferhat-X58A-UD5 NetworkManager[882]: <info> ModemManager available in the bus
Mar 5 21:28:12 ferhat-X58A-UD5 NetworkManager[882]: <info> wpa_supplicant running
Mar 5 21:28:13 ferhat-X58A-UD5 NetworkManager[882]: <error> [1457209693.030273] [platform/wifi/wifi-utils-wext.c:519] wext_get_range(): (wlan0): couldn't get driver range information (19).
Mar 5 21:28:13 ferhat-X58A-UD5 NetworkManager[882]: <info> (wlan0): driver WEXT range request failed
Mar 5 21:28:13 ferhat-X58A-UD5 NetworkManager[882]: <warn> (wlan0): failed to initialize WiFi driver
Mar 5 21:28:13 ferhat-X58A-UD5 NetworkManager[882]: (NetworkManager:882): GLib-GObject-CRITICAL **: object NMDeviceWifi 0xfa83d0 finalized while still in-construction
Mar 5 21:28:13 ferhat-X58A-UD5 NetworkManager[882]: (NetworkManager:882): GLib-GObject-CRITICAL **: Custom constructor for class NMDeviceWifi returned NULL (which is invalid). Please use GInitable instead.
Mar 5 21:28:13 ferhat-X58A-UD5 NetworkManager[882]: <warn> wlan0: factory failed to create device: (unknown)
Mar 5 21:28:13 ferhat-X58A-UD5 NetworkManager[882]: <info> devices added (path: /sys/devices/pci0000:00/0000:00:1a.7/usb1/1-4/1-4:1.0/net/wlx0087401008be, iface: wlx0087401008be)
Mar 5 21:28:13 ferhat-X58A-UD5 NetworkManager[882]: <info> device added (path: /sys/devices/pci0000:00/0000:00:1a.7/usb1/1-4/1-4:1.0/net/wlx0087401008be, iface: wlx0087401008be): no ifupdown configuration found.
Mar 5 21:28:17 ferhat-X58A-UD5 NetworkManager[882]: <info> startup complete
答案1
您正在运行 Ubuntu 16.04,它尚未经过全面测试和调试,因此尚未完全准备好发布。我相信提议的 Network Manager 版本包含一个错误。我不确定是否有任何方法可以在 16.04 中安装早期版本的 NM。https://bugs.launchpad.net/ubuntu/+source/network-manager/+bug/1489154
与此同时,我建议您这样做:
gksudo gedit /etc/rc.local
如果您没有文本编辑器 gedit,请使用 nano 或 Kate 或 Leafpad。将文件更改为以下内容:
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
sleep 3
service network-manager restart
exit 0
仔细校对,保存并关闭文本编辑器。
重启。有什么改善吗?