Jak odzyskać po awarii Compiz?

9

Często compiz ulega awarii i klawiatura jest bezużyteczna. Zwykle upuszczam na konsolę i ponownie uruchamiam GDM.

Czy istnieje rozwiązanie, w którym mogę ponownie uruchomić Compiz bez utraty wszystkiego w bieżącej sesji?

compiz --replace &

W ten sposób zwykle uruchamiam ponownie Compiz, gdy ulega awarii i nadal mogę korzystać z klawiatury.

(Jeśli masz wskazówkę, jak zapobiec awarii programu Compiz, zamieściłem tutaj /ubuntu/42096/fresh-install-of-11-04x64-displaycompiz-constantly-failing

??? - Czy mam rację, że Compiz zawodzi, czy to X?

winchendonsprings
źródło

Odpowiedzi:

11

Jeśli to „tylko” awaria komputera, powinieneś być w stanie przywrócić go z jednego z TTY, nawet jeśli klawiatura nie działa w X.

  1. naciśnij ctrl + alt + F1, aby dostać się do konsoli

  2. Zaloguj się przy użyciu swojej zwykłej nazwy użytkownika i hasła

  3. Wpisz następujące polecenie:

    WYŚWIETLANIE =: 0,0 compiz - zastąp i

  4. Jeśli compiz nadal naprawdę się zawiesza, być może będziesz musiał go zabić z większym autorytetem i spróbuj ponownie:

    killall -9 compiz

    WYŚWIETLANIE =: 0,0 compiz - zastąp i

  5. Następnie naciśnij Alt + Strzałka w lewo, aż dojdziesz do ekranu, na którym działa X.

Eric
źródło
To sprawiło, że stałem się częścią drogi. Brakowało niektórych moich obszarów roboczych / rzutni (pokazało się tylko 4 z 9), a brakowało panelu i programu uruchamiającego. Niestety musiałem nadać mu „stary sudo service lightdm restart”.
colan
to może być dla mnie pomocne. dzięki
Searene
1
Ze wszystkich podobnych odpowiedzi na to (i powiązane) pytania, które widziałem, to wydaje mi się najbardziej dokładne, dzięki! Jedyny problem, jaki pozostaje, to jak go zapamiętać, kiedy jest to potrzebne;)
szaleństwo o natty
1

Jeśli mysz nadal działa po takiej awarii, możesz dodać starter, /usr/bin/compiz --replaceaby zacząć od kliknięcia myszą.

Florian Diesch
źródło
tak, to rozwiązanie będzie działać. Lubię utrzymywać czysty pulpit, nie używam ikon ani panelu. To zadziała.
winchendonsprings
Jeśli masz otwarty terminal, możesz użyć myszy, aby skopiować i wkleić potrzebne znaki (w tym końcowe podawanie linii) do terminala - to zwykle działa, nawet jeśli terminal nie ma fokusa.
Florian Diesch
Więc będę musiał zachować coś otwartego z potrzebnymi postaciami? Mam na myśli, że mogę wykonać znak po znaku - compiz (spacja) zamień (spacja) &
winchendonsprings
Jeśli nie masz czegoś z potrzebnymi znakami, najpierw musisz uruchomić polecenie, które je wypisuje, być może używając znaków z twojego monitu.
Florian Diesch
1

Moje rozwiązanie jest podobne do rozwiązania Erica.

Tyle że po prostu wpisuję „jedność”, ponieważ wydaje mi się, że działa o wiele lepiej:

ctrl+alt+f1 - Takes you to command prompt

login
> unity

alt+left to get back the gui.

Dla mnie wygląda to na bałagan przez około 20 sekund. Ale potem odzyskuję wszystkie okna i mogę kontynuować pracę, jakby nic się nie wydarzyło.

„DISPLAY =: 0.0 compiz --replace &” Nie działało dla mnie i straciłem wiele funkcji.

„sudo service lightdm restart” ponownie uruchamia wszystko i tracisz wszystkie okna. Być może jest szybszy niż restart.

Wydaje mi się, że compiz jest tutaj naprawdę problemem i ma coś wspólnego ze zbyt dużą liczbą otwartych kart. Jeśli wrócę do terminala, mogę zobaczyć ten błąd: „intel_do_flush_locked nie powiodło się, brak miejsca na urządzeniu” Kilka osób narzeka na to w Internecie.

SpiRail
źródło
0

Jest ten skrypt secReplaceWindowManager.sh .

Co 10 sekund sprawdzi, czy działa menedżer okien, jeśli nie, uruchomi go; możesz je również dowolnie zastępować (obecnie obsługuje compiz i metacity).
Jest interaktywny, więc wymaga uruchomienia np. xterm jak xterm -bg darkorange -e "secReplaceWindowManager.sh;bash"&disown.

Moc Wodnika
źródło