Bagaimana saya bisa mencegah manajemen daya iwconfig dinyalakan?


37

Saya terpengaruh oleh bug ini: 869502 .

Solusi yang tampaknya menghentikan panik kernel bagi saya adalah untuk menonaktifkan manajemen daya wlan0:

sudo iwconfig wlan0 power off

Namun sepertinya secara otomatis menyalakan manajemen daya kembali ketika saya mencabut kabel daya dan saya pikir di banyak waktu lain juga.

Apakah ada sesuatu yang mungkin menyebabkan ini? Adakah yang tahu bagaimana saya bisa mencegahnya?



1
7 tahun dan terus bertambah. Apakah ini bug atau fitur?
Ufos

Jawaban:


25

Manajemen daya nirkabel dijalankan oleh pengait pm-utils. Anda dapat mematikannya dengan salah satu cara berikut:

Buat file dalam /etc/pm/config.d. Saya menamainya blacklist:

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

dan di dalam file simpan:

HOOK_BLACKLIST="wireless"

Jika Anda ingin menonaktifkan kait lain, kait default terletak di /usr/lib/pm-utils/power.d/.

ATAU

Anda bisa membuat hook kosong di salah satu /etc/pm/sleep.datau /etc/pm/power.d. Lihat mana yang cocok untuk Anda. yaitu

Lakukan saja

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

ATAU

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

Saya menggunakan metode pertama. Bekerja. Terima kasih!
Alex

2
Tidak ada metode yang bekerja untuk saya.
Mihai Capotă

1
bisakah kita melakukannya chmod -x /usr/lib/pm-utils/power.d/wireless?
Emad Arshad Alam

23

Ketik iwconfigdan lihat outputnya. Anda harus melihat nama set chip Anda serta apakah manajemen daya tidak aktif atau aktif. Jika tidak dikatakan, mungkin mati.

Untuk mematikan manajemen daya, buka /etc/NetworkManager/conf.d/default-wifi-powersave-on.confdan Anda akan melihat

[connection]
wifi.powersave = 3

Ubah 3ke a 2dan reboot.

Kemudian jalankan iwconfigdan jika berhasil Anda akan melihat Power Management:off.

Sumber: https://sites.google.com/site/easylinuxtipsproject/internet


Ini sepertinya mematikan manajemen daya saya!
user3273814

ini juga tampaknya menjadi cara yang tepat untuk melakukannya
Ufos

Ini bekerja untuk saya di Ubuntu 17.10. Tampaknya jauh lebih mudah dan mudah dibalik daripada pendekatan lain (misalnya daftar hitam).
josephwb

22

Jika mematikan manajemen daya untuk antarmuka nirkabel Anda mempercepat internet seperti ini:

sudo iwconfig wlan0 power off

Daripada membuatnya permanen menjalankan perintah sebagai berikut:

  1. cd /etc/pm/power.d

  2. sudo gedit wifi_pwr_off

    Ini akan membuka file kosong, salin kode di bawah ini ke dalamnya:

    #!/bin/sh 
    /sbin/iwconfig wlan0 power off
    
  3. Simpan file, ingatlah untuk

    sudo chmod +x wifi_pwr_off
    

    dan mulai kembali.


2
Ketika saya menulis sudo iwconfig wlan0 power offsaya mendapatkan pesan ini: Kesalahan untuk permintaan nirkabel "Set Power Management" (8B2C): SET gagal pada perangkat wlan0; Tidak ada perangkat seperti itu.
Murhaf Sousli

3
Jalankan iwconfig tanpa agrument apa pun sudo iwconfigdan periksa antarmuka mana yang memiliki ekstensi nirkabel. Terkadang ya eth1.
Dilawar

6

Cara yang saya sukai adalah menambahkan baris berikut /etc/network/interfaceske pengaturan antarmuka nirkabel saya:

post-up iwconfig wlan0 power off

Ini contoh lengkapnya:

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

Perhatikan bahwa man interfaceskata perilaku post-upmungkin berubah di masa mendatang.


Solusi ini jauh lebih baik daripada scripting power off. Solusi yang melibatkan tidur sebelum dimatikan adalah bahwa jika klien gagal bergaul sebelum tidur berakhir wlan0 tetap mati, bahkan ketika jaringan berada dalam jangkauan.
MerlinTheMagic

Opsi ini berfungsi seperti pesona pada Raspbian Stretch. Bagi saya adalah pilihan yang lebih baik.
Jagoliveira

3

Untuk beberapa alasan, solusi terpilih teratas tidak berfungsi untuk saya dan manajemen daya terus menyala kembali. Saya akhirnya melakukan hal berikut:

sudo gedit /etc/rc.local

Dan menambahkan baris berikut sebelumnya exit 0:

( sleep 30 && iwconfig wlan0 power off )&

Itu mematikan manajemen daya 30 detik setelah masuk ...

Sunting: Sebenarnya itu tidak cukup. Saya terus mencoba banyak hal, termasuk https://askubuntu.com/a/614245 yang menurut saya menyelesaikan masalah saya (saya harap).


3

Pendekatan lain adalah menambahkan direktif eksplisit ( wireless-power) untuk mengontrol manajemen daya dalam /etc/network/interfacesfile konfigurasi (mis. Nonaktifkan untuk wlan0 dengan DHCP):

auto wlan0
iface wlan0 inet dhcp     
  wireless-power off

1

Saran bagus. 'sudo iwconfig wlan0 power off' tampaknya satu-satunya cara untuk mendapatkan modul ath9k saya bekerja dengan stabil (dengan kernel 3.2 - anehnya di kernel> 3.5 tampaknya tidak ada masalah, tetapi kernel itu karena masalah suspend-to-ram / disk dengan amd64 tampaknya tidak jalan, sayangnya ... :-()


1

Pendekatan yang lebih baik (setidaknya di Ubuntu 16.04) adalah membuat /etc/network/if-up.d/wifi-powerman-offdengan konten berikut:

#!/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

dan mengaturnya sebagai executable. Manajemen daya akan dimatikan pada saat berikutnya Anda terhubung ke jaringan.

Ini berfungsi baik dengan NetworkManager.


Saya harap ini berhasil. Saya harap, saya berharap, saya berharap !!! Bosan dengan Linux melemparkan koneksi wifi saya secara acak. / kata-kata kasar Ubuntu 16,04 memiliki beberapa masalah besar di sini / endrant
RyanNerd

Tidak berhasil. Intel 7260 adalah omong kosong! Saya sudah menyerah.
RyanNerd

1

Jika Anda menggunakan laptop-mode-tools, maka Anda dapat menonaktifkan manajemen daya nirkabel dengan mengedit /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

Saya membuat layanan systemd berikut untuk secara permanen membunuh Manajemen Daya pada WiFi di seluruh reboot. Diuji dan diketahui bekerja. Cukup tempelkan skrip bash di bawah ini ke dalam file, file, chmod 700dan 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
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.