Wifi не працює після призупинення після оновлення 16.04


149

Ця конкретна версія "не працює після призупинення" з'явилася після оновлення до 16.04. Здається, оновлення включає аплет Wicd (доданий до панелі завдань Metacity Classic Gnome поряд із звичайною піктограмою мережі), але, схоже, не працює після призупинення. sudo service network-manager restartДублює цю проблему. Щоб запустити Wi-Fi знову, потрібна повна перезавантаження. Будь-які ідеї чому?


6
Ви подали помилку на панель запуску через проблему ???
apos


Схоже, ця проблема існує з часів Ubuntu 14 .
Дан Даскалеску

Це ніколи не сталося для мене під 14.04 LTS. Оновлення до 16.04 LTS настільки чудове, що я його зберігаю, але він продовжує забувати мій пароль WiFi. Служба чітко працює; тільки що він забуває пароль і не підключається. Я опублікував це: askubuntu.com/questions/934958/… - і я не хочу мати справу з чорними списками чи чимось дивним.
SDsolar

Відповіді:


176

16.04 працює на systemd. Спробуйте наступне:

sudo systemctl restart network-manager.service

Якщо це працює, ви можете створити сценарій для його автоматизації.

Відкрийте термінал і введіть наступне:

sudo nano /etc/systemd/system/wifi-resume.serviceТепер вставте скрипт туди правою кнопкою миші. Вийдіть за допомогою CTRL + X і натисніть Y, щоб зберегти. Тепер, щоб активувати його:sudo systemctl enable wifi-resume.service

Сценарій:

#/etc/systemd/system/wifi-resume.service
#sudo systemctl enable wifi-resume.service
[Unit]
Description=Restart networkmanager at resume
After=suspend.target
After=hibernate.target
After=hybrid-sleep.target

[Service]
Type=oneshot
ExecStart=/bin/systemctl restart network-manager.service

[Install]
WantedBy=suspend.target
WantedBy=hibernate.target
WantedBy=hybrid-sleep.target

Сподіваюся, це допомагає. Це працює на моєму ноутбуці.


2
Ви намагалися просто видалити wicd?
Йоакім Коед

6
Я б сказав, не заважайте перевстановлювати це. Я зробив чисту установку, і я зіткнувся з цим питанням 16.04. Ніколи не було проблем з 14.04.
Майкл Мартін-Смукер

3
Іноді це працює, а іноді ні :(
tokam

1
@mikeymop Я теж думав про це. Я знаю, що деякі частини системи все ще використовуються на початку, так що це може викликати щось. Оскільки 16.10 повністю заповнений системою та не має помилки, ви можете помилитися.
Йоакім Коед

1
Як я можу це видалити, це не працюватиме в моїй системі
пропозиція не може відмовитись

15

@ 147pm Ви коли-небудь працювали?

Я виявив, що у мене є досить схожа проблема, хоча я перебуваю на Kubuntu 16.10 (на базі KDE, а не на Gnome) та з ноутбуком HP ProBook. І, на відміну від себе, не мій Wi-Fi помер після призупинення / пробудження, а мій порт Ethernet. Все-таки мені цікаво, чи пов’язані вони.

Я також бачу, що у вас немає проблеми під KDE. Але мені було б цікаво дізнатись, чи рішення нижче допомагає в Gnome, оскільки рішення не базується на менеджері вікон, робочому середовищі або апплетах.

По-перше, просто підтвердити, що перезапуск служби мережевого менеджера ..

$ sudo systemctl restart network-manager.service

не працював для мене.

Однак я знайшов відповідь, яка спрацювала, завдяки запиту і інформації про буджидао не вдається підключитися до Інтернету після призупинення та коментаря GAD3R там.

Користуючись їх інформацією, я виявив, що спочатку досліджував, яке саме апаратне забезпечення Ethernet та драйвер / модуль я запускаю, а потім виймаючи та перезавантажуючи цей модуль, для мене працював (хоча це не було для buzhidao):

Wifi:

$ lspci -knn | grep Net -A2

Ethernet:

$ lspci -knn | grep Ether -A2

Другим із них (Ethernet) було те, що я використав, і я виявив:

03:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:8168] (rev 0c)
        Subsystem: Hewlett-Packard Company RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [103c:1944]
        Kernel driver in use: r8169
        Kernel modules: r8169

тому я перезавантажив драйвер 'r8169':

$ sudo rmmod r8169 && sudo modprobe r8169

і вуаля! Це спрацювало. Мій порт / з'єднання Ethernet повернувся живим (після призупинення / пробудження), не потребуючи перезавантаження.

(У мене також не було Wi-Fi пристрою Realtek, а Qualcomm Atheros (мод: ath9k), який, можливо, пояснює, чому Wi-Fi продовжував працювати для мене після пробудження з призупинення.)

Як ви бачите з мого коментаря до цього іншого поста, я задумався, чи проблема є спільним елементом між Buzhidao та мною: пристроями Realtek Semiconductor. Хоча вони використовують різні модулі, вони можуть поділитися якимсь загальним кодом? Або навіть по-іншому трактуватися новим кодом ядра?

Ви самі маєте wifi-пристрій на базі Realtek? (використовуючи lspci вище)? Чи маєте ви удачу перевстановити модуль (rmmod / modprobe вище)?

У всякому разі, просто постріл у темряві. Якщо ви знайшли для себе можливу відповідь, повідомте нас про це! Дякую.


1
У мене також є мережа RTL8111 / 8168/8411 і sudo rmmod r8169 && sudo modprobe r8169вирішив проблему.
lenooh

Той самий випуск на Debian 9 з KDE. Перевстановлення, як зазначено вище, виправлено. Дякую тонну.
sumitkm

Мій комп'ютер * теж має мережевий пристрій RTL8111 / 8168/8411 і, sudo rmmod r8169 && sudo modprobe r81691нарешті, вирішив проблему для мене. Не було цієї проблеми до версії ядра 4.16. (* Debian 10 з GNOME, ядро ​​4.16 та власна прошивка від Realtek )
ossbuntu

працював для мене archlinux з ath10k_pci
ніхто не

6

Щоб автоматично перезапустити NetworkManager після відновлення в середовищі без sudoдоступу, створіть сценарій в /etc/pm/sleep.d(будь-яке ім'я), встановіть виконуваний біт через chmod +xі вставте наступний вміст:

case "${1}" in
    resume|thaw)
        # systemctl restart network-manager.service
        service NetworkManager restart
;;
esac

Для мене serviceлінія працювала, але systemctlможе працювати краще для вас.

Джерело: https://askubuntu.com/a/92235/30266 .


2
Для service NetworkManager restartмене працювали, але розміщення сценарію не відбулося (16.04). Мені довелося перенести сценарій на /lib/systemd/system-sleep/script-name-here. У цьому випадку перший аргумент до сценарію є [pre | post], тому мені довелося змінити заяву справи на case "${1}" in ... post) .... Я також завернув внутрішнє твердження case "${2}" in ... suspend) ....
Честер

1
Має бути /lib/systemd/system-sleep/за 15.04+
qwr

2

Для мене це здається випадковим, але іноді wifi просто відключається, якщо я підключений, або не показує мережі, якщо я ні. Іноді переведення мого ноутбука в режим сну, здається, викликає це, але не завжди.

Деякі комбінації з них зазвичай повторюються без перезавантаження:

  • sudo iwlist $(ifconfig | grep -Po '^w\w+') scan
  • sudo service network-manager stop; sleep 5; sudo service network-manager start
    • Просто дзвінок restartсюди ніколи не працює на мене. Схоже, він намагається запустити його до того, як закінчить його вимикання, отже, у мене є більше удачі зробити паузу між stopі start.
  • Вимкнути wifi в інтерфейсі; зачекайте кілька секунд; увімкніть його знову

Жоден із них, здається, не працює, але я перерахував їх у порядку, який, найімовірніше, вдасться першим.


2

Метод роботи на Ubuntu 16.04:

Створіть послугу: sudo nano /lib/systemd/system/wifi-resume.service

Служба викликає програму з:
/etc/init.d/network-manager

Вставте код:

#/lib/systemd/system/wifi-resume.service
#sudo systemctl enable wifi-resume.service
[Unit]
Description=Restart network-manager at resume
After=suspend.target
After=hibernate.target
After=hybrid-sleep.target 

[Service]
Type=oneshot
ExecStart=/bin/systemctl restart network-manager

[Install]
WantedBy=suspend.target
WantedBy=hibernate.target
WantedBy=hybrid-sleep.target

Потім увімкніть послугу:

sudo systemctl enable /lib/systemd/system/wifi-resume.service

Це створює символьні посилання до зазначених каталогів [Install] системи / etc / systemd / system та активує службу

Після цього ви можете перевірити стан за допомогою: systemctl status wifi-resume.service


1

У мене була така ж проблема з Bluetooth: Після призупинення миша Bluetooth не працювала. Тому я отримав рішення зверху:

sudo nano /etc/systemd/system/bluetooth-resume.service

включив нову послугу

sudo systemctl enable bluetooth-resume.service

і відредагував службу

#/etc/systemd/system/bluetooth-resume.service
#sudo systemctl enable bluetooth-resume.service
[Unit]
Description=Restart bluethooth at resume
After=suspend.target
After=hibernate.target
After=hybrid-sleep.target

[Service]
Type=oneshot
ExecStart=/bin/systemctl restart bluetooth.service

[Install]
WantedBy=suspend.target
WantedBy=hibernate.target
WantedBy=hybrid-sleep.target

Я також спробував редагувати ...

sudo nano /etc/bluetooth/main.conf

і змінився

AutoEnable=true

Але це НЕ спрацювало з "проблемою відновлення" і не було ніякої уваги на нових пристроях Bluetooth!


1

У мене була така сама проблема на моєму ноутбуці Dell Inspiron 15R з Ubuntu 16.04. Для мене працював сценарій, повідомлений про другу відповідь .

Після встановлення сценарію я спробував призупинити команду в верхньому правому меню і навіть закрити губу, вирішивши проблему.

Мушу сказати, що проблема полягала в чергуванні її поведінки (тобто іноді вона працювала до встановлення сценарію).


0

Для мене рішення було запустити

nmcli nm sleep false

в терміналі


0

У мене був той самий випуск, який підключався до домашнього wifi після призупинення. Спробував різні відповіді, які час від часу працювали, але не завжди.

Зрештою, для постійного підключення до Wi-Fi дозволено таке виправлення:

1) Редагуйте цей файл:

sudo vim /etc/NetworkManager/NetworkManager.conf

2) Додавши це до нього:

[device]
wifi.scan-rand-mac-address=no

0

Зараз, мабуть, просто

sudo apt update
sudo apt upgrade

повинні працювати.

У моєму випадку серед оновлених пакетів був bcmwl-kernel-source (6.30.223.271+bdcom-0ubuntu1~1.3)і після цього оновлення wifi знову працює.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.