Автор Тема: Проблема с восстановлением Wi-Fi после выхода из ждущего (спящего) режима  (Прочитано 3542 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн vlav

  • Пользователь
  • *
  • Сообщений: 27
Добрый день, уважаемое сообщество!

Есть старый десктоп под управлением Debian, подключаемый к сети по Wi-Fi.
Используется USB-донгл, определяемый как rtl8812au.
Для управления сетью используется network-manager.

Проблема при выходе из ждущего и спящего режимов:
network-manager раз за разом безрезультатно пытается подключиться к сети.
Перезагрузка сервиса netwok-manager - не помогает.
Не прибегая к перезагрузке, сумел восстановить соединение двумя способами:
1). Перекоммутацией USB-донгла;
2). Выгрузкой и загрузкой модуля ядра, выполнив последовательно
rmmod rtl8812au
modprobe rtl8812au


Что-либо перетыкать вручную - явно не очень хорошая идея, вручную перезагружать модули - немногим лучше...
Хочется автоматизации - а не получается...
Попробовал составить скрипт из этих двух команд, дать ему права на исполнение и положить в каталог /etc/pm/sleep.d - не получается.
Создал каталог /etc/pm/power.d - с тем же успехом. После выхода из сна - скрипт не срабатывает, при запуске вручную - все отлично.

Прошу помощи клуба!

Любопытно, что все это относится только к ситуации, когда подключение к сети производится через USB-донгл. В случае подключения с помощью PCI-модуля - соединение восстанавливается нормально.
« Последнее редактирование: 12 Мая 2019, 10:18:12 от vlav »
 

Оффлайн ecc83

Прошу помощи клуба!


Создаёшь файл:

sudo nano /lib/systemd/system-sleep/wifi.sh
Вставляешь в него такой код:

#!/bin/sh
case $1/$2 in
  pre/*)
    modprobe -r rtl8812au
    ;;
  post/*)
    modprobe -i rtl8812au
    ;;

Сохраняешь и закрываешь.

Делаешь скрипт исполняемым:

sudo chmod +x /lib/systemd/system-sleep/wifi.sh
Перезагружаешься и пробуешь.
 

Оффлайн vlav

  • Пользователь
  • *
  • Сообщений: 27
Спасибо за рекомендацию.
Но, увы...
 

symon2014

  • Гость
Отключить энергосберегающий свистка при загрузке, некоторые просто не могут правильно проснуться в линуксе.
 

Оффлайн ecc83

Но, увы...


Это такой ответ терминала после запуска скрипта?
 

Оффлайн vlav

  • Пользователь
  • *
  • Сообщений: 27
Кликаю по скрипту "Запустить в терминале" - что-то промелькнет за мгновение, категорически не успеваю прочитать)))
При этом продолжаются попытки переподключения.

Энергосберегающий режим свистка отключен.
 

Оффлайн G_r_i_g_a

Кликаю по скрипту "Запустить в терминале" - что-то промелькнет за мгновение, категорически не успеваю прочитать)))
Открой терминал и запусти скрипт уже в нем .
 

Оффлайн vlav

  • Пользователь
  • *
  • Сообщений: 27
Спасибо. Действительно же можно!
Вот вывод терминала:
./wifi.sh: 9: ./wifi.sh: Syntax error: end of file unexpected (expecting ")")
 

Оффлайн G_r_i_g_a

Вот вывод терминала:
Скрипт sh, а ты его от bash запускаешь. А ему синтаксис не нравится или там ошибка.
А если так, что-нибудь меняется?
sh /lib/systemd/system-sleep/wifi.sh
« Последнее редактирование: 11 Мая 2019, 21:56:57 от G_r_i_g_a »
 

Оффлайн vlav

  • Пользователь
  • *
  • Сообщений: 27
/lib/systemd/system-sleep/wifi.sh: 9: /lib/systemd/system-sleep/wifi.sh: Syntax error: end of file unexpected (expecting ")")
 

Оффлайн G_r_i_g_a

А если самое примитивное?:
#!/bin/bash
rmmod rtl8812au
sleep 5
modprobe rtl8812au
 

Оффлайн vlav

  • Пользователь
  • *
  • Сообщений: 27
Самое примитивное отлично работает - при ручном запуске из командной строки.
При выходе же из ждущего режима - как и было, безуспешные попытки подключения к сети.
Скорее всего, его нужно расположить не по адресу /lib/systemd/system-sleep , а где-либо еще.
 

Оффлайн ecc83

Скорее всего, его нужно расположить не по адресу /lib/systemd/system-sleep , а где-либо еще.


Тот скрипт что я дал, не может запускаться вручную, потому что отсутствуют аргументы.
Для начала нужно выяснить, запускается ли он вообще, находясь в том каталоге и если нет, тогда проверить работу службы.
 

Оффлайн vlav

  • Пользователь
  • *
  • Сообщений: 27
ecc83, я поступил по Вашей инструкции: создал скрип, сделал его исполняемым и разместил в указанном каталоге.
При выходе из ждущего режима внешних изменений не происходит, вручную скрипт запускать не следует.
Как можно выяснить, что с ним проиходит?
 

Оффлайн G_r_i_g_a

Как можно выяснить, что с ним проиходит?
Вот так:
#!bin/bash
echo "Работает" > test.txt
После перезагрузки в домашнем каталоге должен появиться файл test.txt со словом "Работает".
Если не появится, то не работает.
 

 

Bumblebee+Nvidia проблема

Автор okov

Ответов: 0
Просмотров: 2073
Последний ответ 08 Ноября 2013, 16:01:34
от okov
Проблема со старыми винчестерами.

Автор nialiv

Ответов: 2
Просмотров: 1586
Последний ответ 12 Ноября 2014, 10:29:23
от ferum
Проблема с сетевой карой

Автор Lergus

Ответов: 0
Просмотров: 1436
Последний ответ 23 Сентября 2016, 15:41:43
от Lergus
Очередная проблема с mtp

Автор Александр Летов

Ответов: 11
Просмотров: 3914
Последний ответ 10 Июля 2017, 13:29:16
от Александр Летов
Проблема при печать формата бумаги А5 принтер Xerox Phaser 3052

Автор digersv

Ответов: 1
Просмотров: 855
Последний ответ 03 Июля 2019, 21:27:31
от digersv