Вопрос Wifi проиграл после возобновления спячки


Когда он возобновился с гибернации, wi-fi проиграл.

Невозможно включить Wi-Fi из appindicator и> setup> Network.

Включение / выключение с помощью горячей клавиши (сноска+F2) тоже бесполезно.

Я должен приостановить, а затем возобновить с приостановки, а затем снова работать wi-fi.

Моя платформа: Ubuntu 14.04 LTS.

Как решить для wi-fi все еще естественно работает (без вмешательства) после возобновления спячки.

Следуя инструкциям Юйиамсона, после

sudo gedit /etc/pm/power.d/wireless

, «беспроводной» файл не является пустым, он показывает:

#!/bin/sh
# tlp - if tlp is enabled, override corresponding script
#       in /usr/lib*/pm-utils/power.d/

CONFFILE=/etc/default/tlp LIBDIRS='/usr/lib /usr/lib64'

for d in ${LIBDIRS}; do
    if [ -d "${d}/pm-utils/power.d" ]; then
        blocked="${d}/pm-utils/power.d/${0##*/}"
        break
    fi done

if [ -n "$blocked" ] && [ -x "$blocked" ]; then
    # else nothing to disable -> don't read $CONFFILE

    if [ -e "$CONFFILE" ] && . "$CONFFILE" -- && [ "$TLP_ENABLE" = '1' ]; then
        # TLP is enabled -> disable $blocked
        echo "Notice: '${blocked}' disabled by TLP."
    else
        exec "$blocked" $*
    fi fi

exit 0

1
2017-12-05 16:37


происхождения




ответы:


Откройте терминал и введите следующую команду; мы должны увидеть, включено ли управление питанием на этой карте.

iwconfig wlan0

Запустив этот код, мы увидим вывод чего-то вроде этого:

jayadmin@jayadmin-OptiPlex-GX280:~$ iwconfig wlan0
wlan0     IEEE 802.11bgn  ESSID:"MU WiFi"  
      Mode:Managed  Frequency:2.412 GHz  Access Point: 18:33:9D:C6:76:72   
      Bit Rate=65 Mb/s   Tx-Power=20 dBm   
      Retry  long limit:7   RTS thr:off   Fragment thr:off
      Power Management:off
      Link Quality=40/70  Signal level=-70 dBm  
      Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
      Tx excessive retries:18  Invalid misc:80   Missed beacon:0

Если управление питанием включено, выполните следующую команду (вам понадобятся права SU для этого, поэтому команда «sudo»):

sudo iwconfig wlan0 power off

После этой команды вам нужно будет ввести свой пароль; без «sudo» у вас, вероятно, не будет разрешения пользователя запускать его.

Чтобы сделать это постоянным, вам нужно будет добавить / создать системный файл, который заставит Ubuntu использовать PM после перезагрузки. Для этого откройте терминал (если вы его уже закрыли) и введите следующую команду:

sudo gedit /etc/pm/power.d/wireless

Это откроет текстовый редактор с пустым файлом. Вставьте следующие строки в файл:

#!/bin/sh


/sbin/iwconfig wlan0 power off

Теперь сохраните файл и закройте gedit и окно терминала. PM должен быть отключен даже после перезапуска.

Похоже, что проблема с Ubuntu и вашей конкретной картой связана с управлением питанием, когда вы возвращаетесь из спящего режима. У меня была такая же проблема на моем ноутбуке и отключенном PM, и он позаботился о проблеме.

Я знаю, что это не вмешательство без командной строки, которое вы искали, но оно должно позаботиться о вашей проблеме. Иногда вам приходится использовать терминал для устранения нечетных проблем.

Дополнительная информация

@evergreen

TLP, упомянутый в вашем беспроводном файле, является усовершенствованной утилитой управления питанием в Ubuntu. Это может быть связано с неправильной работой вашей беспроводной карты; ваша Wi-Fi-карта не может быть полностью совместима.

Запустите этот код в терминале (это должно быть перманентным исправлением, если оно работает):

sudo gedit /etc/default/tlp

В этом файле выполните поиск этих двух строк. Они должны быть вместе:

WIFI_PWR_ON_AC=5
WIFI_PWR_ON_BAT=5

Если я все это правильно помню, заметьте. 1 является отключен, в то время как 5 является включен, Изменить 5 в обеих линиях 1 затем сохраните файл и exit из терминала.

Чтобы быть в безопасности, перезагрузите компьютер, чтобы изменения вступили в силу для вашей системы. Если эти две строки не будут заменены, все, что вы делаете, чтобы изменить настройки PM Wifi, будет заблокировано скриптом TLP.

Надеюсь, это поможет. Я не нахожусь в своем ящике Ubuntu до конца ночи, поэтому, если это не поможет, моя следующая попытка помочь понять это будет задержана на несколько часов. Вы всегда можете полностью заменить текст, найденный в файле /etc/pm/power.d/wireless, текстом из моего первого ответа, но это не будет если эта настройка в tlp файл изменен.


4
2017-12-05 17:07



В моем случае, после «sudo gedit /etc/pm/power.d/wireless», «беспроводная» не пустая, она показывает как дополнение, которое я только что добавил в моем предыдущем вопросе. Должен ли я добавить что-нибудь и где? - evergreen
@evergreen Пожалуйста, обратитесь к дополнительной информации, которую я разместил в своем ответе. - JWilliamson
@ JWilliamson: отлично. - evergreen


У меня была такая же проблема, и я, наконец, нашел полное решение, так вот вот оно:

  1. Перейдите к терминалу, нажав Ctrl+Alt+T

  2. Откройте новый .txt файл для записи новой команды. (вы можете изменить имя файла, но оно должно начинаться с 99- потому что система работает в алфавитном порядке, и нам нужно, чтобы это было последним:

    sudo nano /etc/pm/sleep.d/99_synclient` 
    
  3. Вставьте следующую строку в пустую .txt файл:

    #!/bin/bash
    
    case "$1" in
      suspend|hibernate)
      ;;
    
      resume|thaw)
        sudo -u <USERNAME> env DISPLAY=:0 service network-manager restart 
      ;;
      *) 
        exit $NA
      ;;  
    esac
    

    Пожалуйста, замените выше свое имя пользователя без <>

  4. Сделайте исполняемый файл:

    sudo chmod +x /etc/pm/sleep.d/99_synclient
    

    и не забудьте изменить имя, если вы сделали это раньше.

Вы сделали! Теперь ваш WiFi должен работать нормально после спящего режима.


3
2017-09-25 23:45



Добро пожаловать в Ask Ubuntu! ;-) Не могли бы вы пересмотреть мои правки а также помощь в редактировании улучшить читабельность ваших ответов в будущем ... ;-) - Fabby
спасибо за редактирование и ссылку! очень новый, так что это будет очень полезно! - Mayoshka


Я бы бежал

sudo service network-manager restart

sudo делает его суперпользователем или root, поэтому вам разрешено запускать его. service запускает сценарий, удаляя большинство переменных окружения и устанавливая каталог /, network-manager говорит нам, что мы хотим, и restart останавливает и начинает этот процесс.


0
2017-12-05 16:41



Это не работа на природе, из-за вмешательства командной строки. - evergreen
@evergreen вы можете настроить его на автоматический запуск. - Tim
@Tim, как настроить его автоматически, не могли бы вы уточнить? - evergreen
Попробуйте использовать cron? Я не уверен, поиск может помочь ... - Tim