Anında uyanmayı askıya alma ve / veya hazırda bekletme modundan nasıl koruyabilirim?


35

Birkaç gündür Ubuntu 12.04 masaüstü bilgisayarım, askıya alma moduna girdikten hemen sonra gizemli bir şekilde uyanıyor.

Kurulumdan bu yana, Ubuntu 12.10 dizüstü bilgisayarım askıya alma ve hazırda bekletme modundan hemen sonra yeniden başlatılıyor.

Bunları nasıl önleyebilirim?

Yanıtlar:


35

Bu sorun muhtemelen garip USB sinyallerinden kaynaklanmıştır. gedit /proc/acpi/wakeupgösterdi ki, bu uyandırma USB0 ve USB2 için etkinleştirildi.

sudo -s
echo USB0 > /proc/acpi/wakeup
echo USB2 > /proc/acpi/wakeup

onları devre dışı bırakılmış ( gedit /proc/acpi/wakeupyeniden kontrol edilmiş veya dosya görüntüsünü yenileyerek) değiştirmiş ve bundan sonra bilgisayar olması gerektiği gibi askıda kalıyor. :-)


Bu çözüm benim için işe yaramadı. PS2K etkinleştirildi (klavye uyandırma) ancak değiştirilmesi hiçbir fark yaratmadı.
Bryce

4
Benim durumumda hiçbir USB * cihazı yoktu, USB hub üzerinden dahili olarak bağlanmış gibi görünüyorlar: EHC1, EHC2 ve XHC'yi / proc / acpi / wakeup'a eklemek bana yardımcı oldu.
Vladimir Rutsky

2
Benim durumumda USB 3 için XHCI idi
Andy

@Bazon'a bir göz atar http://askubuntu.com/questions/852600/ubuntu-16-04-wakes-up-immediately-from-suspend-after-installing-fprint-in-lenovove çözmem için bana yardım edebilir misin?
Kasun Siyambalapitiya

Benim için devre dışı bırakma IGBEçalıştı
Kasun Siyambalapitiya

22

Geçenlerde Ubuntu 15.04'te Asus Zenbook Pro UX501'de de aynı semptom vardı. Bazon'un kesin düzeltmesi işe yaramadı ama Vladimir Rutsky'nin varyasyonu yaptı. özellikle:

Terminalden çalışan cat /proc/acpi/wakeupaşağıdaki satırları gösterirse

EHC1      S3    *enabled  pci:0000:00:xx.x
EHC2      S3    *enabled  pci:0000:00:xx.x
XHC       S3    *enabled  pci:0000:00:xx.x

(pci adresleri farklı olabilir)

sonra bu komutları aşağıdaki komutları vererek etkisiz hale getirin:

sudo -s
echo EHC1 > /proc/acpi/wakeup
echo EHC2 > /proc/acpi/wakeup
echo XHC > /proc/acpi/wakeup

Yukarıdakileri yapmak sorunumu
çözmedi

Benim için devre dışı bırakma IGBEişe yaradı, üçten fazlası işe yaramadı
Kasun Siyambalapitiya

@ilikerrobots Bu kalıcı olarak düzeltmez, kalıcı olarak nasıl düzeltilir
Kasun Siyambalapitiya

GLAN hızlı bir şekilde tekrar etkin duruma geçer. Neden bir fikrin var mı?
Alfred M.

Devam ettirmek için zamanlanmış bir cron girişine koyun @reboot. Yankıyı yalnızca bir kabuk komut dosyasında bir sınama yaparak etkinleştirildiyse etkinleştirildi egrep -q '^XHC1\s+S[0-9]\s+\*enabled' /proc/acpi/wakeup && echo XHC1 > /proc/acpi/wakeup(sorun aygıtım XHC1 - bir USB yonga kümesi).
David Schoen

15

Hangi cihazı PC'nizin uyandığını biliyorsanız, kılavuzu takip etmek için ilk adıma gidin. Bunu yapmazsanız, terminali açın ve şunu yapın:

cat /var/log/syslog

Ve hangi cihazın PC'nizi uyandırdığını bulun.

Peki şimdi:

  1. terminale çarptı:

    grep . /sys/bus/usb/devices/*/power/wakeup
    

Bizim pc uyandıran tüm usb bağlantı noktalarını listelemek için.

sudo su

Şimdi kök ayrıcalıklarımız var.

2. 8 adet USB portum var ve bu örnekte usb8'i devre dışı bırakmak istediğimi varsayalım.

echo disabled > /sys/bus/usb/devices/usb8/power/wakeup

Devam et ve test et. Artık USB port 8'deki belirli cihaz PC'yi uyandırmayacak.

Bir sonraki adım, değişikliği her açılıştan sonra kalıcı yapmak için:

3.

sudo nano /etc/rc.local

Ve komutu 2. adımdan yapıştıracağız. Oraya (elbette 0 çıkışından önce).

Bu kadar.

isteğe bağlı Yalnızca uyku / uyandıktan sonra USB 8 aygıtını işlerseniz, örneğime göre tekrar etkin hale getirin.

  1. udevHer önyükleme, uyku, uyanma işleminden sonra komutu uygulamak için de bir kural yazın .

Bir terminal aç ve şunu yap:

lsusb

Klavye cihaz kimliği bilgilerinizde ilk 4 hane satıcı kimliği ve sonraki 4 hane ürün kimliğidir. ekran görüntüsü

Sonraki yap:

sudo nano /etc/udev/rules.d/10-wakeup.rules

"Uyandırma" alanına istediğiniz komut dosyasının adını girin. Diğer birçok udev kuralınız varsa, 10 sayısı önceliktir; 'kural' diğerlerinden daha önce uygulanacak sayı düşer.

Bunu kopyalayıp yapıştırın ve satıcı kimliğini ve ürün kimliğini kendi kablosuz klavyenizin satıcı kimliğiyle ve ürün kimliğiyle değiştirin.

ACTION=="add", SUBSYSTEM=="usb", ATTRS{idVendor}=="062a", ATTRS{idProduct}=="4101" RUN+="/bin/sh -c 'echo disabled > /sys/bus/usb/devices/usb8/power/wakeup'"

* benim için usb8 benim kablosuz klavyem (ekran görüntüsünde de görebilirsiniz (Otobüs 008)), kendiniz ile değiştirin.

Ctrl+ Okaydetmek, Ctrl+ Xçıkmak ve yeniden başlatmak için.


Teşekkürler! bu ilginç görünüyor. Rehberinizi buraya eklemeyi
düşünür müsünüz

Teşekkürler. istediğim bu değildi, ama sorunu düzeltmem için - rc.local dosyasını değiştirerek (sorunum USB bağlantı noktalarına özgü değil). Kendi çözümümü gönderdim, ancak ödül alacaksınız (yarından önce
ödeyemem

Hangisini devre dışı bırakmak güvenli? Hepsini devre dışı bırakırsam sorun yaşar mıyım? Tek etkin olan benim için / sys / bus / usb / devices / 1-2 / güç / uyandırma: etkin
Alfred M.

syslog, bilgisayarı uyandıran şeyi bile söylemiyor
Ken Sharp,

5

Düzeltmeyi kalıcı yapmak için

(Bazon, Ilikerobots ve Pavlos Theodorou tarafından sağlanan çözümleri derliyorum - birlikte özel sorunumu ele alıyorlar)

Sorunu kalıcı olarak düzeltmek için, sistemi uyandıran bir USB bağlantı noktası mı yoksa başka bir şey mi:

  1. Sisteminizi neyin uyandırmasına izin verildiğini öğrenin:

gedit / proc / acpi / uyandırma

Bu veya benzer satırları alabilirsiniz:

EHC1 S3 * etkin pci: 0000: 00: xx.x

EHC2 S3 * etkin pci: 0000: 00: xx.x

XHC S3 * etkin pci: 0000: 00: xx.x

Sonra aç:

sudo gedit /etc/rc.local

ve (Yukarıda elde edilen sonuçlara bağlı olarak, veya benzeri), şu satırları ekleyin önce exit 0

yankı EHC1> / proc / acpi / uyandırma

yankı EHC2> / proc / acpi / uyandırma

yankı XHC> / proc / acpi / uyandırma


oh bunun hakkında düşünmedim. Tabii ki usb dışında başka bir liman olabilir. Bunu çözdügüne sevindim.
Pavlos Theodorou,
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.