Як я можу запобігти включенню управління живленням iwconfig?


37

Мені страждає ця помилка: 869502 .

Вирішення проблеми, яке, здається, зупиняє для мене паніку ядра, - це відключити керування живленням wlan0:

sudo iwconfig wlan0 power off

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

Чи є щось, що може спричинити це? Хтось знає, як я можу це запобігти?



1
7 років і рахую. Це помилка чи особливість?
— Уфос

Відповіді:


25

Бездротове управління живленням здійснюється за допомогою гачка pm-utils. Вимкнути його можна будь-яким із наведених нижче способів:

Створіть файл у /etc/pm/config.d. Я назвав це чорним списком:

gksu gedit /etc/pm/config.d/blacklist

і всередині файлу зберігайте:

HOOK_BLACKLIST="wireless"

Якщо ви хочете відключити будь-які інші гачки, гачки за замовчуванням знаходяться на /usr/lib/pm-utils/power.d/.

АБО

Ви можете просто створити порожній гачок у будь-якому /etc/pm/sleep.dабо /etc/pm/power.d. Подивіться, який із них працює. тобто

Просто роби

sudo touch /etc/pm/sleep.d/wireless

АБО

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

Я використав перший метод. Це працює. Спасибі!
— Олексій

2
Жоден із методів не працює для мене.
— Mihai Capotă

1
ми могли б зробити це chmod -x /usr/lib/pm-utils/power.d/wirelessзамість цього?
— Емад Аршад Алам

23

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

Щоб вимкнути управління живленням, перейдіть до /etc/NetworkManager/conf.d/default-wifi-powersave-on.confі побачите

[connection]
wifi.powersave = 3

Змініть 3на a 2і перезавантажте.

Потім запустіть, iwconfigі якщо це спрацювало, ви повинні побачити Power Management:off.

Джерело: https://sites.google.com/site/easylinuxtipsproject/internet


Це ніби вимкнуло моє управління живленням!
— користувач3273814

Це також здається правильним способом зробити це
— Ufos

Це працювало для мене на Ubuntu 17.10. Здається, набагато простішим та легким для обороту, ніж інші підходи (наприклад, чорний список).
— josephwb

22

Якщо вимкнення управління живленням для вашого бездротового інтерфейсу прискорює Інтернет таким чином:

sudo iwconfig wlan0 power off

Чим це зробити команду постійного запуску наступним чином:

  1. cd /etc/pm/power.d

  2. sudo gedit wifi_pwr_off

    Це відкриє порожній файл, скопіюйте код нижче в нього:

    #!/bin/sh 
    /sbin/iwconfig wlan0 power off
    
  3. Збережіть файл, пам'ятайте

    sudo chmod +x wifi_pwr_off
    

    і перезапустити.


2
Коли я пишу, sudo iwconfig wlan0 power offя отримую це повідомлення: Помилка бездротового запиту "Встановити управління живленням" (8B2C): SET не вдалося на пристрої wlan0; Такого пристрою немає.
— Мурхаф Суслі

3
Запустіть iwconfig без будь-якого agrument sudo iwconfigі перевірте, який інтерфейс має бездротове розширення. Іноді так і є eth1.
— Ділавар

6

Мій кращий спосіб - додати наступний рядок /etc/network/interfacesдо налаштувань мого бездротового інтерфейсу:

post-up iwconfig wlan0 power off

Ось повний приклад:

auto wlan0
iface wlan0 inet static
 address 192.168.1.2
 network 192.168.1.0
 netmask 255.255.255.0
 broadcast 192.168.1.255
 gateway 192.168.1.254
 post-up iwconfig wlan0 power off
 wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

Зауважте, що в майбутньому man interfacesповедінка post-upможе змінитися.


Це рішення набагато краще, ніж сценарій відключення живлення. Рішення, пов’язані зі сном до вимкнення живлення, полягають у тому, що якщо клієнт не зможе зв’язатися до закінчення режиму сну, wlan0 залишається в режимі очікування, навіть коли мережа знаходиться в межах досяжності.
— MerlinTheMagic

Цей варіант працює як шарм на Raspbian Stretch. Для мене кращий варіант.
— Jagoliveira

3

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

sudo gedit /etc/rc.local

І додав перед цим наступний рядок exit 0:

( sleep 30 && iwconfig wlan0 power off )&

Це вимикає управління живленням через 30 секунд після входу в систему ...

Редагувати: насправді цього було недостатньо. Я постійно намагався купу матеріалів, включаючи https://askubuntu.com/a/614245, які, на мою думку, вирішили мою проблему (сподіваюся).


3

Інший підхід полягає в тому, щоб додати явну директиву ( wireless-power) для управління управлінням живленням у /etc/network/interfacesфайл конфігурації (наприклад, вимкнути його для wlan0 за допомогою DHCP):

auto wlan0
iface wlan0 inet dhcp     
  wireless-power off

1

Чудова порада. "Судо iwconfig wlan0 вимкнено живлення", здається, єдиний спосіб змусити стабільний модуль ath9k працювати (з ядром 3.2 - цікаво, що в ядрі> 3.5, здається, немає проблем, але в тому, що ядра через проблеми з призупиненням оперативної роботи / диска з amd64, здається, не йде, на жаль ... :-()


1

Кращий підхід (принаймні для Ubuntu 16.04) - це створення /etc/network/if-up.d/wifi-powerman-offз наступним вмістом:

#!/bin/sh

IWCONFIG=/sbin/iwconfig
WLAN_IFACE=<your wireless device here>

if [ ! -x $IWCONFIG ]; then
    exit 1
fi

if [ "$IFACE" = $WLAN_IFACE ]; then
    $IWCONFIG $IFACE power off
fi

і встановити його як виконуваний файл. Управління живленням буде вимкнено з наступного підключення до мережі.

Це добре працює з NetworkManager.


Сподіваюся, це спрацює. Сподіваюся, сподіваюся, сподіваюсь !!! Набридло Linux, що кидає моє Wi-Fi з'єднання випадковим чином. / rant Ubuntu 16.04 має деякі основні проблеми тут / endrant
— RyanNerd

Ніп не працював. Intel 7260 - це лайно! Я здався.
— RyanNerd

1

Якщо ви користуєтесь laptop-mode-tools, то ви можете відключити управління бездротовим живленням шляхом редагування /etc/laptop-mode/conf.d/wireless-iwl-power.conf(Ubuntu 14.04):

# Control Intel IWL wireless power?
# Set to 0 to disable
CONTROL_IWL_POWER=0

0

Я створив таку системну службу, щоб ОСОБЛИВО вбивати управління живленням через WiFi через перезавантаження. Випробуваний і, як відомо, працює. Просто вставте нижній скрипт bash у файл, chmod 700файл та sudo ./yourFileName.sh:

if [ -d /root/scripts ]; then
    mkdir /root/scripts
fi

apt-get -y install iw
apt-get -y install wireless-tools

cat <<EOF> /root/scripts/pwr-mgmnt-wifi-disable.sh
#!/bin/bash
iw dev wlan0 set power_save off
EOF

chmod 700 /root/scripts/pwr-mgmnt-wifi-disable.sh


cat <<EOF> /etc/systemd/system//pwr-mgmnt-wifi-disable.service
[Unit]
Description=Disable WiFi Power Management
Requires=network-online.target
After=hostapd.service

[Service]
User=root
Group=root
Type=oneshot
ExecStart=/root/scripts/pwr-mgmnt-wifi-disable.sh

[Install]
WantedBy=multi-user.target

EOF

chmod 644 /etc/systemd/system/pwr-mgmnt-wifi-disable.service

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