Brak aktualizacji ustawień wyświetlania po odłączeniu monitora zewnętrznego

8

Kiedy odłączam monitor od laptopa, Ubuntu nadal wydaje się myśleć, że jest podłączony i nie aktualizuje wyświetlacza. Ten problem jest specyficzny dla Ubuntu (nie występuje w systemie Windows), a mój monitor działał dobrze z innym laptopem (Ubuntu 13.04, dokładnie te same sterowniki).

Szybka poprawka:

  • otwarty system settings
  • Kliknij Displays

Przydatne specyfikacje:

  • Sterowniki karty graficznej : NVIDIA-313 (problem występuje również w przypadku innych odpowiednich sterowników)
  • Karta graficzna : Nvidia Quadro K1000M
  • Monitor : Benq ET-0019-N
  • Kabel : VGA D-sub DE15
  • System operacyjny : Ubuntu 13.04

Chciałbym, aby Ubuntu aktualizował ustawienia wyświetlania za każdym razem, gdy kabel monitora zostanie odłączony. Jak mam to zrobić?

Joren
źródło
Co to za monitor? Niektóre starsze monitory nie wysyłają żadnego sygnału, więc komputer nie wie, czy tam jest, ale nie sądzę, że zostało ich jeszcze wiele. Jaki masz dokładny model karty graficznej i czy używasz zastrzeżonego sterownika lub sterownika bezpłatnego?
Gilles „SO- przestań być zły”
Zredagowałem moje pytanie, aby odpowiedzieć na twoje.
Joren
1
Ustawienia wyświetlania są aktualizowane po uruchomieniu komputera bez kabla, a następnie podłączeniu go? Jeśli nie, czy są aktualizowane po xrandrręcznym wydaniu polecenia ?
Jorge Suárez de Lis,
Nie możesz wypróbować innego monitora i kabla? Wiem, że działa w systemie Windows, ale może Windows używa innej metody do automatycznego wykrywania.
Jorge Suárez de Lis
Nie mam innego monitora :(
Joren

Odpowiedzi:

2

Na Launchpadzie występuje stary błąd - błąd nr 306735 - który został oznaczony jako nieprawidłowy, wyjaśnienie jest takie, że jest znanym problemem, ale dość złożonym (więcej wyjaśnień tutaj ).

Tak więc, o ile mi wiadomo, nie ma automatycznej metody na to, o co prosiłeś w prawdziwym sensie. Ale możesz użyć autorandr(musisz dispernajpierw zainstalować - uruchamiany sudo apt-get install disperz terminala ), skryptu Stefana Tomanka . Za pomocą tego skryptu ( autorandr) możesz dodać skrót klawiaturowy do autorandr --changepolecenia, a wszystko, co musisz zrobić po podłączeniu lub odłączeniu monitora zewnętrznego, to naciśnięcie tego skrótu klawiaturowego. Wszystko to wyjaśniono bardzo ładnie w tej odpowiedzi (właśnie przetestowałem w Ubuntu 13.04 i wszystko idzie dobrze).

Po przetestowaniu skryptu w terminalu musisz zobaczyć następujący post, jeśli chcesz dodać niestandardowy skrót klawiaturowy dla skryptu:

Radu Rădeanu
źródło
Miałem już zainstalowaną dyspersję, ale autorand nie został znaleziony
Joren
@Joren Co masz na myśli mówiąc, że nie znaleziono? Jest to skrypt pod danym linkiem w odpowiedzi. Potrzebujesz pomocy na temat używania lub uruchamiania?
Radu Rădeanu
Och, nieważne, myślałem, że przyszedł automagicznie z dyspersją
Joren
@Joren Nie, nie ma (myślałem, że moja odpowiedź była jasna). Musisz ręcznie utworzyć skrypt pliku o nazwie autorandrlub autodisper, wstawić cały tekst stąd dokładnie tak, jak jest i zapisać go w swoim ~/binkatalogu. Nie zapomnij, aby był wykonywalny za pomocą: chmod +x ~/bin/autorandr(lub chmod +x ~/bin/autodisper), a następnie po prostu uruchom autorandr --help(lub autodisper --help), aby uzyskać dalszą pomoc.
Radu Rădeanu
1
Nadal miałem ten problem podczas używania 16.04! = / The disperwciąż istnieje, ale musiałem coś uruchomić disper -ei wszystko wróciło do pracy, nawet aplikacja Display.
Nigini,
1

Jeśli korzystasz z jakiegoś smaku zastrzeżonego sterownika nvidii, to, jak wspomniano w odpowiedzi Jorge, samo uruchomienie xrandrwydaje się naprawiać problem.

ccpizza
źródło
1

Z załącznika B w sterowniku NVIDIA CZYTAJ :

Option "UseHotplugEvents" "boolean"

Gdy ta opcja jest włączona, sterownik NVIDIA X wygeneruje zmienione zdarzenia wyświetlania RandR, gdy wyświetlacze są podłączone lub odłączone od GPU NVIDIA. Niektóre środowiska pulpitu będą nasłuchiwać tych zdarzeń i dynamicznie konfigurują pulpit, gdy ekrany zostaną dodane lub usunięte.

Wyłączenie tej opcji pomija generowanie zdarzeń RandR dla wyświetlaczy innych niż DisplayPort, tj. Podłączonych przez VGA, DVI lub HDMI. Zdarzenia Hotplug nie mogą być tłumione w przypadku wyświetlaczy podłączonych przez DisplayPort.

Zauważ, że sondowanie konfiguracji wyświetlacza (np. Z ustawieniami xrandr lub nvidia) może powodować generowanie zmienionych zdarzeń RandR, niezależnie od tego, czy ta opcja jest włączona czy wyłączona. Ponadto niektóre porty VGA nie są w stanie wykryć hotplug: w takich portach dodawanie lub usuwanie wyświetlaczy można wykryć tylko przez ponowne sondowanie konfiguracji wyświetlacza.

Domyślnie: włączone. Sterownik wygeneruje zdarzenia RandR, gdy wyświetlacze zostaną dodane lub usunięte.

Zakładając, że nie wyłączyłeś tej opcji, problem zawęża się do jednej z tych alternatyw:

  • Kabel VGA lub złącze VGA na karcie mają uszkodzone niektóre styki DDC (albo styk 12, styk 15 lub styk 9). Podłącz inny kabel VGA i spróbuj ponownie.

  • Twoja karta graficzna Nvidia Quadro K1000M ma złącze, które NIE obsługuje tego wykrywania, a wywoływanie xrandrlub równoważne (jak otwieranie ustawień wyświetlania) wyzwalanie tego wykrywania. W takim przypadku to nigdy nie zadziała - ale wykrywanie nie powinno działać na innych systemach operacyjnych. Jednak nigdy nie widziałem tego osobiście.

  • A może jest jakiś błąd w sterowniku NVIDIA, który uniemożliwia prawidłowe wykrywanie. Wypróbuj inne wersje sterowników (np. 304) i sprawdź, czy problem nadal występuje.

Jorge Suárez de Lis
źródło
Dziękuję za odpowiedź, ale jak powiedziałem w moim pytaniu: Problem nie występuje, gdy uruchamiam komputer w systemie Windows. Możemy więc wykluczyć dwie pierwsze alternatywy. Próbowałem też trzeciej alternatywy i to nie zadziałało.
Joren
Ok. To nie jest prawidłowa odpowiedź, ale próba pomocy: czekając na odpowiedź, zapytaj również na forum NVIDIA Linux .
Jorge Suárez de Lis
Dziękuję za sugestię. ( devtalk.nvidia.com/default/topic/606465/linux/… )
Joren