Moja klawiatura przestaje działać bez wyraźnego powodu.
Po 2,5 roku używania Ubuntu jako maszyny wirtualnej na hoście Windows ( VirtualBox ) w końcu zdecydowałem się na zmianę, sformatowałem swój dysk twardy i wczoraj zbudowałem system z Ubuntu. Dziś rano moja klawiatura przestała działać.
Widzę wiele postów na temat Ubuntu i klawiatury lub myszy USB przestających działać losowo. Wskazują, że automatyczne zawieszanie wyłącza zasilanie urządzeń USB w celu oszczędzania energii, a gdy urządzenie USB nie jest kompatybilne w niektórych, USB nie „budzi się” tak, jak powinien.
Wypróbowałem sugestię opublikowaną w Naprawianie automatycznego zawieszania USB .
Ale bez powodzenia. Spróbowałem też innej sugestii, którą było uruchomienie bez klawiatury, a następnie podłączenie go po uruchomieniu Ubuntu.
Oto kilka szczegółów:
- Używam tej samej klawiatury Kinesis z Ubuntu jako maszynę wirtualną przez ostatnie dwa lata, nie ma problemu.
- Kinesis ma makra, a wywołanie makra powoduje problem w 100% przypadków. Zdarza się to jednak, gdy piszę (bez makr).
- Właśnie wypróbowałem Kinesis na laptopie. To roczna maszyna, którą zainstalowałem Ubuntu 16.04 dwa tygodnie temu. Użycie makra klawiatury Kinesis nie odtworzyło problemu.
Problem z maszyną
- Dell XPS, 6 lat, komputer stacjonarny
- Zainstalowałem wczoraj Ubuntu 16.04
- Korzystanie z klawiatury USB Kinesis Advantage
- Odłączanie / ponowne podłączanie klawiatury działało 9 na 10 razy
- Ponowne uruchomienie działa również
- Nie sądzę, że jest to problem z zasilaniem USB, ponieważ dioda LED na klawiaturze świeci się, a inne urządzenia USB nadal działają.
- Do urządzenia podłączono zarówno mysz USB, jak i Bluetooth. Oba działają dalej nawet po zatrzymaniu Kinezy.
- Zwykle mam drugą zwykłą klawiaturę marki Dell podłączoną do osób spoza Kinesis, które muszą korzystać z mojego komputera. Wcześniej dzisiaj ta klawiatura przestała działać za każdym razem, gdy Kinesis przestał działać. Jednak teraz, powodując problem z makrem, klawiatura Dell nadal działa.
Kinesis, który mam od 8 lat, umożliwił mi kontynuowanie gry na klawiaturze. Jeśli nie będę w stanie rozwiązać tego problemu, będę musiał wrócić do systemu Windows, który byłby prawdziwym hitem.
Wszelkie sugestie dotyczące rzeczy do wypróbowania lub sposobów debugowania tego będą bardzo mile widziane.
Zagłębiam się w sterowniki USB, o których w systemie Linux nic nie wiem. Odkryłem jednak, że laptop ma porty USB 2.0 i 3.0. Pulpit (z problemem) to tylko USB 2.0. Nadal kopie ...
xserver-xorg-input-all
działało dla mnie po aktualizacji doUbuntu 17.04
Odpowiedzi:
Miałem ten sam problem z Ubuntu 16.04 (Xenial Xerus) i szukałem wielu rozwiązań ...
Rozwiązanie znajduje się na końcu tej odpowiedzi, jeśli nie interesuje Cię historia kontekstu. Kontekst może wyglądać jak niepotrzebna blabla (może tak jest), ale myślę, że może pomóc czytelnikom sprawdzić, czy problem rozwiązany na moim komputerze jest taki sam.
KONTEKST
Desperacko testowałem bezskutecznie w pobliżu wszystkich wskazówek, które znalazłem w sieci, po każdym ponownym uruchomieniu ponownie:
usbcore.autosuspend=-1
Parametr rozruchowy jądra „/ etc / default / grub”CONTROL_RUNTIME_AUTOSUSPEND=0
man laptop-mode.conf
iman laptop_mode
)options usbcore autosuspend=1
w '/etc/modprobe.d/usb.conf' również był nieefektywnyrules
plik specyficzny dla urządzenia dlaudev
„/etc/udev/rules.d/usb-power.rules” zalecany przez Serge Y. StroobandtPo przeczytaniu wszystkich tych technicznych informacji zrozumiałem tylko, że przyczyna była związana z moją wartością „/ sys / module / usbcore / parameters / autosuspend” zatrzymaną na dwie sekundy, bez względu na to, jaką zmianę zrobię w mojej konfiguracji. Możesz to sprawdzić za pomocą
cat
polecenia:I tak, moja mysz została wyłączona dokładnie po dwóch sekundach, więc wiedziałam, że jestem na dobrej drodze. Oczywiście przetestowałem
echo -1
polecenie, które widziałem tu i tam,-1
mające na celu wyłączenie automatycznego zawieszania ... ale:Nie rozumiałem, dlaczego odmówiono zgody nawet w trybie sudo. Nie próbowałem jako root, ponieważ po prostu nie sądziłem, że może to stanowić problem. Oto błąd :(
Dzięki komentarzom Alexa Dekkera i Bryce'a nauczyłem się wyłączać automatyczne zawieszanie tylko dla mojej myszy. Ale oczywiście moje pierwsze próby się nie powiodły
bash: Permission denied error
, więc musiałem poczekać na zrozumienie mojego pomieszania root / sudo przedecho -1
polecenie sugerowane przez Alexa w końcu zadziała.Znalazłem też lepszy sposób na wykonanie polecenia jako użytkownik root bez logowania jako root. Różnica między używaniem powłoki root a używaniem poleceń root jest dobrze wyjaśniona na oficjalnej stronie wiki Ubuntu RootSudo . Uwielbiam uczyć się do takich rzeczy, ale hej! Dlaczego zawsze trzeba się tego uczyć w sposób bolesny? lol
OMG, to był prawdziwy ból głowy i zajęło dużo czasu, aby Noob jak ja zrozumiał, jak zwykle mówię: „brak mózgu, brak korzyści”. Mój wyraźnie potrzebuje więcej szkoleń.
Przestańmy więc mówić o sobie i naprawmy to! Kontynuuj poniżej ...
Bardzo polecam drugie rozwiązanie dla twojego bezczynnego zewnętrznego dysku twardego, aby nie rozładowywać baterii laptopa bez powodu. Ale daję wam oba rozwiązania, ponieważ kto kocha swoją wolność, powinien też kochać siebie nawzajem :)
ROZWIĄZANIE 1
Aby wyłączyć automatyczne zawieszanie na wszystkich urządzeniach / portach USB
Otwórz terminal i wykonaj:
Jest to rzeczywiście tymczasowe rozwiązanie, które pozwala natychmiast przetestować, czy to polecenie rozwiązuje problem automatycznego zawieszania myszy lub klawiatury.
Jeśli twoje urządzenia USB działają teraz dobrze, po prostu edytuj skrypt „/etc/rc.local”, aby uruchamiał to polecenie przy każdym uruchomieniu systemu. W ten sposób naprawisz coś na stałe . Edytuj plik, na przykład za pomocą nano:
i umieść
echo -1
polecenie w pliku „/etc/rc.local” przedexit 0
wierszemZrestartuj swój komputer
(Proszę sprawdzić Ważną uwagę na końcu.)
.
ROZWIĄZANIE 2
Aby wyłączyć automatyczne zawieszanie dla określonego urządzenia / portu USB
Dostępne są opcje zasilania dla urządzenia USB
/sys/bus/usb/devices/n-n/power
. To, con-n
jest dla danego urządzenia, wymaga kilku manipulacji, aby się dowiedzieć, ale nie jest to skomplikowane. Poniższy przykład pokazuje, jak ustaliłem, że numer portu USB mojego odbiornika myszy bezprzewodowej jest3-1
, więc dostosuj to do własnej sytuacji:Odłącz urządzenie USB, otwórz Terminal i wykonaj
sudo dmesg
poleceniePodłącz urządzenie USB z powrotem, a następnie uruchom
sudo dmesg
ponownie w Terminalu, aby sprawdzić zmianyOto
dmesg
jak wygląda koniec moich wyników po ponownym podłączeniu myszy do gniazda:Teraz widzimy, że port, do którego podłączono moje urządzenie USB, jest zidentyfikowany jako
usb 3-1
.Wykonaj następujące polecenie w swoim terminalu, zmieniając mój numer portu
3-1
na ten, który znalazłeś we własnymdmesg
wyniku:Zauważ, że
autosuspend_delay_ms
zastąpił przestarzałeautosuspend
od jądra w wersji 2.6.38, zgodnie z oficjalną dokumentacją Linuksa .Jest to rzeczywiście rozwiązanie tymczasowe , ale można teraz łatwo przetestować, czy to polecenie naprawiło problem automatycznego zawieszenia myszy lub klawiatury.
Jeśli urządzenie USB działa teraz dobrze, po prostu edytuj skrypt „/etc/rc.local”, aby uruchamiał to polecenie przy każdym uruchomieniu systemu. W ten sposób naprawisz coś na stałe . Edytuj plik, na przykład za pomocą nano:
i umieść
echo -1
polecenie w pliku „/etc/rc.local” przedexit 0
wierszem, jeszcze raz nie zapomnij zmienić numeru portun-n
w poleceniu:Zrestartuj swój komputer
.
Ważne: nie zapominaj, że będziesz musiał ponownie wykonać polecenie
sudo sh -c
„tymczasowe” ręcznie, jeśli odłączysz / ponownie podłączysz urządzenie USB, gdy środowisko pulpitu jest już uruchomione, nawet jeśli podłączysz je z powrotem do tej samej wtyczki USB. Normalnie, tylko dlatego, że plik „/etc/rc.local” jest wywoływany tylko raz podczas uruchamiania systemu.W każdym razie możliwe są obejścia. Ludzie lepiej wykwalifikowani mogą mieć bardziej sprytne metody, ale w Ubuntu skonfigurowałem aliasy specyficzne dla portów. Pozwala mi to korzystać z prostych poleceń
usb1
lubusb2
wybiórczo, jeśli muszę odłączyć / ponownie podłączyć urządzenie USB tu lub tam. Ty też! Możesz także tworzyć aliasy poleceń, aby grać krótkimi słowami zamiast wpisywać pełne polecenie. Łatwo jest ustawić w mniej niż dwie minuty, a także działa z Alt+ F2:)Mile widziane byłyby także inne pomysły, aby to ułatwić.
źródło
Miałem dokładnie ten sam problem (klawiatura Kinesis, przestała działać po ponownym uruchomieniu).
W końcu doszedłem do wniosku, że jest to związane z aktualizacją jądra
Rozruch przy użyciu starszego jądra 4.4.0-31 naprawił dla mnie ten problem.
Ten post zawiera instrukcje dotyczące uruchamiania przy użyciu starszego jądra (pozwalając ci sprawdzić, czy starsze jądro zrobi dla ciebie odpowiednią sztuczkę).
źródło
Jeśli tak
laptop-mode-tools
, możesz całkowicie wyłączyć automatyczne zawieszanie USB, zmieniając:w
do
Pamiętaj, że w tym pliku znajduje się opcja skomentowana
Możesz spróbować bawić się z tą opcją, jeśli chcesz dostroić ustawienia zarządzania energią.
UWAGI:
źródło
Miałem ten sam problem. Dla mnie rozwiązanie było proste, a faktyczny powód pozostawiono nieznany.
Wczoraj podłączyłem drugą mysz do komputera. Wszystko działało dobrze. Dzisiaj, kiedy uruchamiałem, klawiatura nie działała na ekranie logowania ani na pulpicie. Działa podczas rozruchu, na przykład mam bios.
Klawiatura zaczęła działać po odłączeniu nowej myszy i ponownym podłączeniu wszystkich przewodów USB.
źródło
Czytałem ten i inne raporty w kółko przez ostatni rok, a ostatecznie zrezygnowałem z używania klawiatury, która powodowała problemy i przełączyłem się na klawiaturę bezprzewodową.
Dopóki nie przyszło mi do głowy, że problem zaczął się mniej więcej w czasie, gdy budowałem nowy komputer, i może to być problem z zasilaniem. Kupiłem więc zasilany koncentrator USB do podłączenia klawiatury. To rozwiązało problem! W końcu nie był to problem z oprogramowaniem, ale najwyraźniej mój nowy komputer ma słabo zasilane wyjścia USB (przynajmniej tak myśli moja klawiatura).
Warto spróbować, jeśli cierpisz na sporadyczne awarie klawiatury, jak opisano powyżej i nic nie działa po stronie oprogramowania. Zasilany koncentrator USB nie musi być drogi.
źródło
Nie takiej odpowiedzi szukałem, ale ... spędziłem dwa dni i wiele godzin próbując rozwiązać ten problem. Kupiłem koncentrator PCIe USB 3.0, aby sprawdzić, czy to zadziała - nie zadziałało.
Doszedłem do wniosku, że ten problem nie jest wart rozwiązania i istnieją lepsze sposoby na osiągnięcie tego samego celu.
Moim rozwiązaniem / obejściem jest poleganie na funkcji urywków edytora tekstu. Oznacza to, że zainwestuję bardziej w konkretny edytor (najprawdopodobniej będzie to Atom ), ale będzie to nawet lepsze niż w przypadku makr klawiatury, ponieważ fragmenty są łatwiejsze w utrzymaniu niż makra klawiatury.
Wiele się nauczyłem o USB od Resetowania podsystemu USB .
źródło