Як я можу запобігти включенню управління живленням 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.