Ustaw monitor główny na 16.04

13

Wszystkie okna otwierają się na lewym monitorze i tam zapisywane są wszystkie nowe pliki. Chcę, aby mój prawy monitor był moim głównym monitorem, aby wszystko to się tam działo.

Jak pokazuje poniższy obrazek, ustawiłem program uruchamiający na prawym monitorze, ale to nie pomaga w moim problemie.

Ustawienia wyświetlania

neX
źródło
Sprawdź rozwiązania na askubuntu.com/questions/300670/…
user.dz
„Wszystkie nowe pliki są tam zapisywane” ?! Czy masz kartę SD lub dysk USB w swoim monitorze po lewej stronie?
Dan Dascalescu

Odpowiedzi:

14

Miałem ten sam problem, a także kilka innych problemów związanych z posiadaniem wielu monitorów.

Okazuje się, że jest to otwarty nierozwiązany błąd dla Ubuntu; co oznacza, że ​​łącze do rozwiązania opublikowane w powyższym komentarzu tak naprawdę nie zawiera rozwiązania, które w pełni działa. Zobacz otwarty raport o błędach tutaj: https://bugs.launchpad.net/ubuntu/+source/xorg-server/+bug/1425000

Na szczęście spędziłem mnóstwo czasu, zastanawiając się, jak to skonfigurować, a także orientację ekranów logowania, ale wyjaśniono to w innym wątku (mam cztery monitory i orientacja logowania była nieprawidłowa, ale teraz wszystko jest posortowane, jeśli masz to również problem patrz rozwiązanie tutaj: Skąd Unity / Unity-Greeter ładuje konfigurację X? )

Szybkim i prostym rozwiązaniem problemu braku możliwości ustawienia domyślnego wyświetlacza i / lub resetowania domyślnego wyświetlacza po ponownym uruchomieniu jest wprowadzenie krótkiej komendy powłoki, która zmienia główny monitor jako jedną z „aplikacji startowych”, która automatycznie uruchamiane przy każdym logowaniu (powinno to działać na każdym ostatnim Ubuntu z uruchomionym menedżerem wyświetlania Unity, który jest domyślnym menedżerem wyświetlania i prawdopodobnie innymi DM, ale tego nie testowałem):

1) Najpierw chcesz zainstalować, arandraby łatwo znaleźć nazwy wyświetlane na monitorze, uruchom to w powłoce:

sudo apt-get install arandr --upgrade

2) Następnie uruchom arandrpolecenie i spójrz na interfejs użytkownika, który się ładuje (prawdopodobnie załaduje się na niewłaściwym ekranie, ponieważ jeszcze niczego nie skonfigurowałeś).

3) Teraz zwróć uwagę na który wyświetlacz (nazwy powinny być takie jak HDMI - # dla HDMI lub DP - # dla portu wyświetlacza, DVI- I- # dla cyfrowego wideo itp.). Etykieta powinna być duża i oczywista po uruchomieniu arandr. Możesz albo zapisać wyświetlaną nazwę, albo po prostu pozostawić arnadrotwarte okno, abyś mógł je zobaczyć i uruchomić nową powłokę, jeśli zajdzie taka potrzeba w następnej części. Mój domyślny wyświetlacz nazywa się DP-4 użyty w następnym przykładzie, ale niewątpliwie twój będzie inny, więc zwróć uwagę na następny krok.

4) Następnie załaduj narzędzie „Aplikacje startowe”. Możesz go znaleźć, przechodząc do myślnika i wpisując „Aplikacje startowe”, a Ubuntu znajdzie go dla ciebie lub możesz uruchomić to polecenie w powłoce:

gnome-session-properties

5) Teraz, w narzędziu Startup Applications, kliknij przycisk „Dodaj” i dodaj nowy program do uruchomienia po zalogowaniu. Pojawi się okno z pytaniem, co uruchomić, oto co wpisać:

  • Nazwa: Ustaw domyślny monitor

  • (Uwaga: wpisz dowolną nazwę)

  • Komenda: xrandr --output DP-4 --primary

  • (Uwaga: zmień DP-4 * na dowolny znaleziony kod monitora, który ma być domyślnym wyświetlaczem po uruchomieniu * arandr)

  • Komentarz: Zostaw puste lub przypomnij sobie później, co to robi.

Uruchom ponownie, aby w pełni przetestować, czy zadziałało i to powinno załatwić sprawę. Jeśli nie masz pewności, czy polecenie zadziała i chcesz je najpierw przetestować, możesz uruchomić xrandr --output DP-4 --primary(ponownie, zastąpić DP-4domyślnym monitorem) z powłoki, a następnie uruchomić okno i sprawdzić, czy wyświetla się na odpowiednim domyślnym monitorze. Ale aby to zapisać i działać za każdym razem, aby obejść błąd, musisz dodać to polecenie do aplikacji startowych .

AKTUALIZACJA : Wydaje się, że tutaj jest drugi krok / część 2 tego rozwiązania, aby mógł on w pełni działać. Po kilku dniach testowania na Ubuntu 16.04 odkryłem, że konieczna była również modyfikacja, ~/.config/monitors.xmlaby określić główny monitor. Jeśli nie ustawisz głównego monitora, ~/.config/monitors.xmlwówczas wydaje się, że niektóre okna i / lub programy są zgodne z poleceniem xrandr, a niektóre nie. Wszystko, co musisz zrobić, aby wykonać ten krok, to otworzyć się ~/.config/monitors.xmlw edytorze tekstów, takim jak gediti ustawić <primary>znacznik yesdla monitora, który ma być podstawowy i nodla wszystkich innych wyświetlaczy. Oto kroki:

1) Najpierw wykonaj kopię zapasową istniejącego monitors.xmlpliku, aby móc go przywrócić, jeśli podczas edycji wystąpi nieoczekiwany błąd:

cp ~/.config/monitors.xml ~/.config/monitors_OLD.xml

2) Otwórz monitors.xmlw, geditaby zmienić tagi ustawień konfiguracji:

gedit ~/.config/monitors.xml

3) Teraz w oknie edytora gedit znajdź znacznik wyjściowy oznaczony dla monitora, który chcesz być głównym, a następnie pod tym <output>blokiem zmień <primary>znacznik na yes. Pamiętaj, aby spojrzeć na wszystkie inne monitory i zmienić tag główny dla wszystkich innych monitorów na no.

Dla mnie zrobienie tych dwóch rzeczy rozwiązało problem we wszystkich przypadkach, które do tej pory spotkałem.

etron
źródło
2
Walczę z tym od zawsze, kocham cię.
MikeJerome
Co się stanie, jeśli zmieni się Twój główny monitor? Moja sytuacja jest taka, że ​​w domu mam laptopa po lewej stronie + monitor, aw pracy mam inny monitor + laptopa po prawej stronie.
Dan Dascalescu
1

Oprócz odpowiedzi etron - to nie działało dla mnie, mój ekran pomocniczy (HDMI1), który jest po lewej, nadal działałby tak, jakby był po prawej stronie głównego (HDMI2) po ponownym uruchomieniu, mimo że był wszystko poprawne w moim monitors.xml. To, co zadziałało, było takie, jak opisuje etron, ale zamiast tego wstawiłem następujące polecenie w moich aplikacjach startowych:

xrandr --output HDMI2 --pos 1920x0 --output HDMI1 --pos 0x0

Wymusza to mój główny (HDMI2) po prawej stronie (przesunięcie w poziomie x = 1920) i drugi (HDMI1) po lewej stronie (x = 0)

Hans
źródło
To działa. Problem polega jednak na tym, że musisz przesunąć mysz po lewej stronie lewego ekranu, aby pojawił się na prawym ekranie.
Cobra Kai Dojo
0

OS: Ubuntu Studio 16.04 LTS

Problem polegał na tym, że moja konfiguracja zapisywała moje ustawienia wyświetlania za pomocą domyślnego programu wyświetlającego, chociaż nie stosowała poprawnie ustawienia „Podstawowe” podczas uruchamiania.

Mam laptopa po prawej stronie i główny ekran po lewej stronie, a lewy monitor skonfigurowałem jako podstawowy.

Podczas uruchamiania wyświetlał górny pasek narzędzi po prawej stronie, podczas gdy os (mysz) myślało, że jest po lewej stronie, dlatego aby użyć górnego paska narzędzi, musiałem ślepo nawigować (szacować) do miejsca, w którym znajdowały się menuitems, patrząc na prawym ekranie i za pomocą myszy po lewej stronie. Mogłem temu zaradzić, zmieniając obrót co najmniej na jednym ekranie, stosując ustawienia, a następnie przywracając je z powrotem. Górny pasek narzędzi byłby wtedy prawidłowo ustawiony na mój główny (lewy) ekran.

Poniższy proces robi to teraz automatycznie ( wiele dzięki postowi etron ):

  1. Zainstaluj arandr, aby łatwo znaleźć i skonfigurować wyświetlane nazwy.

    sudo apt-get install arandr --upgrade
    
  2. Uruchom arandrpolecenie z powłoki, aby skonfigurować i zidentyfikować wyświetlacze.
    - W przypadku układu można przeciągać monitory.
    - W przypadku opcji menu Goto, Aktywne, Podstawowe, Rozdzielczość i Orientacja Outputs > %Display.

  3. Po ustawieniu powyższego, jak chcesz, przejdź do opcji menu Layout > Save as: i wprowadź ~/.screenlayout/ScreenLayout.shnazwę w polu.

  4. Edytuj ~/.screenlayout/ScreenLayout.shplik w edytorze tekstu i zduplikuj (skopiuj i wklej) całą linię xrandr.

  5. Teraz zmodyfikuj wartość w pierwszym wierszu xrandr.
    Zmieniłem --rotate normalwartość opcji na --rotate left. Po uruchomieniu tego skryptu zmieni on na krótko obrót w lewo, a następnie wróci do normy, ponownie aktywując konfigurację. To samo, co musiałem zrobić ręcznie, jak opisano powyżej.
    Mój plik ScreenLaout.sh wygląda teraz tak:

    #!/bin/sh 
    xrandr --output LVDS-1 --mode 1680x1050 --pos 1680x0 --rotate left --output HDMI-1 --off --output VGA-1 --primary --mode 1680x1050 --pos 0x0 --rotate normal  
    xrandr --output LVDS-1 --mode 1680x1050 --pos 1680x0 --rotate normal --output HDMI-1 --off --output VGA-1 --primary --mode 1680x1050 --pos 0x0 --rotate normal  
  6. Następnie załaduj narzędzie „Aplikacje startowe”. Możesz go znaleźć, przechodząc do myślnika i wpisując „Aplikacje startowe”, a Ubuntu znajdzie go dla ciebie lub możesz uruchomić to polecenie w powłoce:

    gnome-session-properties
    
  7. Teraz, z poziomu narzędzia sesji i uruchamiania, przejdź do zakładki „Autostart Applcation”, kliknij przycisk „Dodaj” i dodaj nowy program do uruchomienia po zalogowaniu. Pojawi się okno z pytaniem, co uruchomić, oto co wpisać:
    Nazwa: Ustaw domyślny monitor (Uwaga: wpisz dowolną nazwę)
    Opis: Pozostaw puste lub przypomnij sobie później, co to robi.
    Komenda: ~/.screenlayout/ScreenLayout.sh

  8. Uruchom ponownie, aby w pełni przetestować, czy działało.

Uwaga: Jeśli nie masz pewności, czy polecenie zadziała i chcesz je najpierw przetestować, możesz uruchomić skrypt ręcznie, tzn. W moim przypadku uruchomiłbym to ~/.screenlayout/ScreenLayout.shw powłoce. Ponadto, jeśli wolisz używać skrótów klawiszowych do ustawiania wielu konfiguracji, uważam, że możesz to zrobić w arandr, chociaż wymaga to Metacity, którego nie zbadałem, więc jesteś tutaj sam.

Artur
źródło