dodaj do .xprofile w swoim katalogu domowym. Zobacz askubuntu.com/questions/63863/…, aby uzyskać podstawowy przewodnik po ustawianiu rozdzielczości i dodawaniu do pliku .xprofile
duffydack
Odpowiedzi:
21
Myślę, że możesz dodać tryby wyświetlania do /etc/X11/xorg.conf.
Jeśli nie masz xorg.conf, możesz użyć następujących podstaw. Trzeba wymienić wpisy z nazwiskami Modeline, Driveroraz Modesz odpowiednimi wpisami w systemie. W zależności od sprzętu mogą być potrzebne dodatkowe wpisy, na przykład jeśli twój system ma więcej niż jeden układ graficzny.
Jeśli nie znasz nazwy sterownika wideo, którego używa twój system, możesz uzyskać nazwę w następujący sposób (jeśli masz układ graficzny Intel, nazwa sterownika to po prostu „intel”):
Próbowałem tego i z jakiegoś powodu nie uruchomił się. Użyłem modeliny wygenerowanej z cvtpolecenia i sterownika z drugiej (i vesateż próbowałem ), ale po prostu zawiesił się bez komunikatów o błędach. Rozwiązanie Jona Robertsa działało dla mnie idealnie i jest niezależne od takich rzeczy, jak wspomniany tutaj sterownik karty graficznej, który może łatwo pójść nie tak dla początkujących, dlatego głosuję za jego odpowiedzią.
Mike,
1
Nie wydaje się to pomocne w przypadku czegoś takiego jak --rotate.
display-setup-script> wywołuje plik mycustomloginvideo.sh, zanim pojawi się ekran logowania
session-setup-script> wywołuje plik mycustomdesktopvideo.sh przed rozpoczęciem sesji pulpitu użytkownika
[SeatDefaults]
greeter-session=unity-greeter
user-session=ubuntu
# for your login screen, e.g. LightDM (Ubuntu 11.10) or GDM (11.04 or earlier)
display-setup-script=/usr/share/mycustomloginvideo.sh
# for your desktop session
session-setup-script=/usr/share/mycustomdesktopvideo.sh
Być może narzędzie GUI „arandr” generuje powyższy skrypt sh, wybierając parametry z konfiguracji X bieżącej sesji.
Upewnij się, że skrypt powłoki jest wykonywalny:
chmod a+x /usr/share/mycustom*video.sh
i możesz przetestować, czy to działa (tj. czy nie ma literówek ani błędów konfiguracji w poleceniu xrandr), po prostu uruchamiając go w terminalu:
/usr/share/mycustomdesktopvideo.sh
Jeśli skrypt logowania nie działa z jakiegokolwiek powodu, komputer może nie ukończyć procesu rozruchu na ekranie logowania. Jeśli skrypt na pulpicie się nie powiedzie, możesz nie uzyskać pulpitu po zalogowaniu. Jeśli ustawiasz monitor zewnętrzny, skrypty te zakończą się niepowodzeniem po jego odłączeniu, a sesja X nie rozpocznie się.
Dla Mint 13 XFCE za pomocą mdm, edytuj / etc / mdm / Init / Default. Wywołaj skrypt przed „wyjściem 0”
StackUnder
Evnn działa na Fedorze ... potrzebował tylko display-setup-scriptskryptu, ponieważ Xfce miał go już ustawiony w ustawieniach wyświetlania, więc po session-setup-scriptprostu zrzuciłem mnie na ekranie logowania.
Wilf
10
Ktoś opublikował inne obejście, chociaż muszę powiedzieć, że to nie działało dla mnie. Prawdopodobnie może to działać dla Ciebie. W moim przypadku łamie jedność i mogę jedynie przesuwać kursor myszy. Górny panel wskaźnika aplikacji wygląda na pusty, ale po odłączeniu wyświetlacza LCD udało mi się usunąć dodane linie i wszystko wróciło do normy.
edytować plik /usr/sbin/lightdm-session
Oto jak wygląda teraz pierwsza część tego pliku:
#!/bin/sh
#
# LightDM wrapper to run around X sessions.
echo "Running X session wrapper"
# Load profile
for file in "/etc/profile" "$HOME/.profile" "/etc/xprofile" "$HOME/.xprofile"; do
if [ -f "$file" ]; then
echo "Loading profile from $file";
. "$file"
fi
done
xrandr --newmode "1368x768_60.00" 85.25 1368 1440 1576 1784 768 771 781 798 -hsync +vsync
xrandr --addmode CRT1 1368x768_60.00
xrandr --output CRT1 --mode 1368x768_60.00
# Load resources
Pamiętaj, że ustawienia Xrandr powinny zostać dostosowane do twoich.
To rozwiązanie świetnie działało w przypadku lubuntu 17.x na starej maszynie. Wpływa tylko na sesję, więc ekran logowania powitania nie wyświetla się w żądanej rozdzielczości.
laconbass
6
Od jakiegoś czasu próbuję rozwiązać podobny problem i znalazłem rozwiązanie, które działa dla mnie, więc mam nadzieję, że pomoże ...
Mam starą aspirującą wersję AOA110, na której zbyt wiele razy zepsułem ekran i po zakupie nowego laptopa zdecydowałem, że spróbuję go przekształcić w HTPC, ale X nie rozpoznaje zewnętrznego wyświetlacza, więc musiałem „poprawiaj” go wiele razy, aby działał we właściwej rozdzielczości.
Oto co zrobiłem:
Po skorzystaniu z tego http://ubuntuforums.org/showthread.php?t=1112186 tutoriala do kroku 5 udało mi się znaleźć działającą i akceptowalną rozdzielczość w xrandr, ale to nie działało na ekranie logowania LightDM.
Nie postępuj zgodnie z instrukcjami, aby utrwalić powyższe wskazówki, jak to może działać, ale myślę, że jest to właściwy sposób, aby to zrobić w 11.10. Znalazłem ten post na ArchWiki https://wiki.archlinux.org/index.php/Xorg, który dostosowałem do moich potrzeb.
Najpierw utwórz plik tutaj: /etc/X11/xorg.conf.d/10-monitor.conf
Dodaj tutaj odpowiednie szczegóły X dla swojego wyświetlacza, jak wyglądał mój:
Ważne bity, które należy dodać, znajdują się pod odpowiednimi, Section "Monitor"obejmującymi odpowiednie Modelineznalezione podczas używania, gtf 1440 900 60.00a następnie pod odpowiednimi, w Section "Screen"tym poprawnymi Modes.
Zauważysz, że próbowałem nie tylko ustawić połączenie VGA1 na odpowiednią rozdzielczość, ale także powiedzieć, aby nie korzystało z mojego wyjścia LVDS1. Oczywiście będziesz musiał odpowiednio dostosować swój, aby dopasować odpowiednią liczbę wyjść i odpowiednie sekcje Urządzenie, Ekran i Wyświetlacz do konfiguracji.
Przepraszam za epicki post, od jakiegoś czasu poprawiam pliki xorg.conf za pomocą wyświetlanego przeze mnie Hannspree, a stare ustawienia xorg.conf, których użyłem przed 11.10, po prostu nie działają poprawnie, to jest jedyne rozwiązanie, które znalazłem, które działa.
Używanie xrandr -qpowinno dać ci właściwe informacje o tym, który wyświetlacz jest używany i możliwe tryby.
faithinfriction,
Podstawowy plik konfiguracyjny może być generowany przez bieganie Xorg :1 -configure, co czyni nowy serwer X i generuje plik konfiguracyjny od niego - może to be skopiowany z /root/xorg.conf.newdo /etc/X11/xorg.conf. Znalazłem lepszy sposób na powyższą odpowiedź
Wilf
5
Miałem podobny problem z laptopem jak powyżej i chciałem coś dodać do rozmowy. Jeśli nie zależy Ci na rozdzielczości logowania (ja nie), ale chcesz, aby rzeczywisty obszar roboczy był odpowiedniej rozdzielczości, możesz dodać informacje o monitorze do LightDM, ale nie włączać pełnej rozdzielczości, dopóki się nie zalogujesz.
Właśnie dodałem następujący skrypt dla mojego monitora w pliku: lighdmxrandr
To działało zgodnie z oczekiwaniami, ale musiało się zrestartować, a nie ponownie zalogować ...
CrandellWS
4
Jako rozszerzenie odpowiedzi Jona Robertsa, pozwól mi zaznaczyć, że arandr nie uwzględnia w swoim generowaniu skryptu sh wszystkich parametrów działających w bieżącej sesji. Główny monitor (w przypadku korzystania z konfiguracji z dwoma monitorami), na przykład nie są uwzględnione ustawienia częstotliwości odświeżania i gamma dla każdego monitora. Mój skrypt sesji wygląda następująco:
Ręcznie dodałem --rate i --primary opcje w pierwszej linii, a następnie ręcznie dodałem drugą linię z korekcją gamma, ponieważ najwyraźniej ustawienia gamma xrandr są tracone za każdym razem, gdy przełączysz monitor na główny .
Nie wiem, czy to konkretne zachowanie z ustawieniami gamma podczas ustawiania monitora jako pierwotnego jest zamierzone czy jest błędem.
Co więcej, skrypt powłoki sesji nie jest wywoływany przez lightdm, ale jako aplikacja startowa, ponieważ wydaje się, że lightdm wywołuje skrypt, zanim wszystko będzie gotowe na xrandr i zdarzają się dziwne rzeczy.
Miałem problem z tym, że chciałem rozszerzyć wyświetlanie na moim nowym oknie LXDE (nie podwójnym klonie), znalazłem poprawne polecenie, ale nie mogłem uczynić go trwałym.
xrandr --output VGA-0 --right-of DVI-0
Wszystkie powyższe metody wydawały się zbyt trudne / niewłaściwe.
i zapisz go w folderze domowym (ustawia to rozdzielczość na 1600 x 900)
Otwórz aplikacje startowe (lub uruchom gnome-session-properties) i kliknij „DODAJ”. Podaj nazwę i wpisz w wierszu polecenia:
bash /home/yourusername/yourscriptname.sh
Zapisz go, a teraz skrypt będzie uruchamiany przy każdym logowaniu, więc musisz się najpierw wylogować, aby zadziałał. Uruchomienie polecenia (np. bash /home/yourusername/yourscriptname.sh) W terminalu byłoby również dobrym pomysłem, aby sprawdzić, czy skrypt działa.
Zostało to zredagowane (zamiast usuniętego) przez OP tej odpowiedzi, ponieważ zostało tu zamieszczone zamiast tutaj - przywróciłem oryginalne formatowanie, ponieważ może to być przydatne, ponieważ powinno przywrócić konfigurację xrandr podczas logowania - zawartość skryptu bash powinna prawdopodobnie zostaną zastąpione poleceniami xrandr używanymi do uzyskania właściwej konfiguracji.
Wilf
Na moim ekranie z dwoma monitorami EDID dla mojego wyświetlacza HDMI-0 jest odczytywany, ale EDID dla mojego DVI-0 nie jest odczytywany. Wskazanie zapisanego skryptu konfiguracji /usr/binnie działało, ale dodanie tego skryptu do moich aplikacji startowych gnome-session-propertieszakończyło się powodzeniem!
noobninja
1
W oparciu o odpowiedzi górne, przeprowadziłem test i znalazłem przydatną metodę, która mi odpowiada, a następnie stworzyłem prosty skrypt, aby zautomatyzować go za pomocą moich automatycznych instalacji. Ale zadziała w innych przypadkach.
#Variables for lightdm script and xrandr script to setup fixed resolution for old displays:
xrandrscript=/usr/local/bin/xrandrscript.sh
lightdmstartscript=/usr/share/lightdm/lightdm.conf.d/60-xrandrscript.conf
#Added old style configuration for lightdm:
sudo ln -s /usr/share/lightdm/lightdm.conf.d /etc/lightdm/lightdm.conf.d
#A fix to some old displays in high school at Fray Bentos, fix to 1024x768
#Some useful information comes from: http://askubuntu.com/questions/63681/how-can-i-make-xrandr-customization-permanent
sudo sh -c "echo '[SeatDefaults]' > $lightdmstartscript"
# for your login screen, e.g. LightDM (Ubuntu 11.10) or GDM (11.04 or earlier)
sudo sh -c "echo 'display-setup-script=$xrandrscript' >> $lightdmstartscript"
# for your desktop session
sudo sh -c "echo 'session-setup-script=$xrandrscript' >> $lightdmstartscript"
sudo sh -c "echo 'xrandr --size 1024x768 --rate 60.0' > $xrandrscript"
sudo chmod +x $xrandrscript
stworzy skrypty i pliki do wyświetlania i sesji lightdm. nie zapomnij wyrazić zgody na wykonanie
chmod + x scriptinstallxrandrfixed.sh
I wykonaj
./scriptinstallxrandrfixed.sh (musisz znajdować się w tym samym katalogu, w którym znajduje się plik).
jeśli nie znajduje się w tym samym katalogu: /path/to/script/scriptinstallxrandrfixed.sh
Zmodyfikuj go do swoich potrzeb. Z poważaniem. Pablo.
Odpowiedzi:
Myślę, że możesz dodać tryby wyświetlania do
/etc/X11/xorg.conf
.Jeśli nie masz
xorg.conf
, możesz użyć następujących podstaw. Trzeba wymienić wpisy z nazwiskamiModeline
,Driver
orazModes
z odpowiednimi wpisami w systemie. W zależności od sprzętu mogą być potrzebne dodatkowe wpisy, na przykład jeśli twój system ma więcej niż jeden układ graficzny.Jeśli nie znasz nazwy sterownika wideo, którego używa twój system, możesz uzyskać nazwę w następujący sposób (jeśli masz układ graficzny Intel, nazwa sterownika to po prostu „intel”):
Modelki można generować za pomocą
cvt
:źródło
cvt
polecenia i sterownika z drugiej (ivesa
też próbowałem ), ale po prostu zawiesił się bez komunikatów o błędach. Rozwiązanie Jona Robertsa działało dla mnie idealnie i jest niezależne od takich rzeczy, jak wspomniany tutaj sterownik karty graficznej, który może łatwo pójść nie tak dla początkujących, dlatego głosuję za jego odpowiedzią.lshw
wyjściei915
, jednak prawidłowy sterownik tointel
.Zmodyfikuj,
/etc/lightdm/lightdm.conf
aby dodać następujące opcje:display-setup-script> wywołuje plik mycustomloginvideo.sh, zanim pojawi się ekran logowania
session-setup-script> wywołuje plik mycustomdesktopvideo.sh przed rozpoczęciem sesji pulpitu użytkownika
Być może narzędzie GUI „arandr” generuje powyższy skrypt sh, wybierając parametry z konfiguracji X bieżącej sesji.
Upewnij się, że skrypt powłoki jest wykonywalny:
i możesz przetestować, czy to działa (tj. czy nie ma literówek ani błędów konfiguracji w poleceniu xrandr), po prostu uruchamiając go w terminalu:
Jeśli skrypt logowania nie działa z jakiegokolwiek powodu, komputer może nie ukończyć procesu rozruchu na ekranie logowania. Jeśli skrypt na pulpicie się nie powiedzie, możesz nie uzyskać pulpitu po zalogowaniu. Jeśli ustawiasz monitor zewnętrzny, skrypty te zakończą się niepowodzeniem po jego odłączeniu, a sesja X nie rozpocznie się.
źródło
display-setup-script
skryptu, ponieważ Xfce miał go już ustawiony w ustawieniach wyświetlania, więc posession-setup-script
prostu zrzuciłem mnie na ekranie logowania.Ktoś opublikował inne obejście, chociaż muszę powiedzieć, że to nie działało dla mnie. Prawdopodobnie może to działać dla Ciebie. W moim przypadku łamie jedność i mogę jedynie przesuwać kursor myszy. Górny panel wskaźnika aplikacji wygląda na pusty, ale po odłączeniu wyświetlacza LCD udało mi się usunąć dodane linie i wszystko wróciło do normy.
edytować plik
/usr/sbin/lightdm-session
Oto jak wygląda teraz pierwsza część tego pliku:
Pamiętaj, że ustawienia Xrandr powinny zostać dostosowane do twoich.
źródło
Od jakiegoś czasu próbuję rozwiązać podobny problem i znalazłem rozwiązanie, które działa dla mnie, więc mam nadzieję, że pomoże ...
Mam starą aspirującą wersję AOA110, na której zbyt wiele razy zepsułem ekran i po zakupie nowego laptopa zdecydowałem, że spróbuję go przekształcić w HTPC, ale X nie rozpoznaje zewnętrznego wyświetlacza, więc musiałem „poprawiaj” go wiele razy, aby działał we właściwej rozdzielczości.
Oto co zrobiłem:
Po skorzystaniu z tego http://ubuntuforums.org/showthread.php?t=1112186 tutoriala do kroku 5 udało mi się znaleźć działającą i akceptowalną rozdzielczość w xrandr, ale to nie działało na ekranie logowania LightDM.
Nie postępuj zgodnie z instrukcjami, aby utrwalić powyższe wskazówki, jak to może działać, ale myślę, że jest to właściwy sposób, aby to zrobić w 11.10. Znalazłem ten post na ArchWiki https://wiki.archlinux.org/index.php/Xorg, który dostosowałem do moich potrzeb.
Najpierw utwórz plik tutaj:
/etc/X11/xorg.conf.d/10-monitor.conf
Dodaj tutaj odpowiednie szczegóły X dla swojego wyświetlacza, jak wyglądał mój:
Ważne bity, które należy dodać, znajdują się pod odpowiednimi,
Section "Monitor"
obejmującymi odpowiednieModeline
znalezione podczas używania,gtf 1440 900 60.00
a następnie pod odpowiednimi, wSection "Screen"
tym poprawnymiModes
.Zauważysz, że próbowałem nie tylko ustawić połączenie VGA1 na odpowiednią rozdzielczość, ale także powiedzieć, aby nie korzystało z mojego wyjścia LVDS1. Oczywiście będziesz musiał odpowiednio dostosować swój, aby dopasować odpowiednią liczbę wyjść i odpowiednie sekcje Urządzenie, Ekran i Wyświetlacz do konfiguracji.
Przepraszam za epicki post, od jakiegoś czasu poprawiam pliki xorg.conf za pomocą wyświetlanego przeze mnie Hannspree, a stare ustawienia xorg.conf, których użyłem przed 11.10, po prostu nie działają poprawnie, to jest jedyne rozwiązanie, które znalazłem, które działa.
Powodzenia!
źródło
xrandr -q
powinno dać ci właściwe informacje o tym, który wyświetlacz jest używany i możliwe tryby.Xorg :1 -configure
, co czyni nowy serwer X i generuje plik konfiguracyjny od niego - może to be skopiowany z/root/xorg.conf.new
do/etc/X11/xorg.conf
. Znalazłem lepszy sposób na powyższą odpowiedźMiałem podobny problem z laptopem jak powyżej i chciałem coś dodać do rozmowy. Jeśli nie zależy Ci na rozdzielczości logowania (ja nie), ale chcesz, aby rzeczywisty obszar roboczy był odpowiedniej rozdzielczości, możesz dodać informacje o monitorze do LightDM, ale nie włączać pełnej rozdzielczości, dopóki się nie zalogujesz.
Właśnie dodałem następujący skrypt dla mojego monitora w pliku:
lighdmxrandr
potem dzwonię
/etc/lightdm/lightdm.conf
Po zalogowaniu mogę skonfigurować monitor w Monitory i działa, nawet po ponownym zalogowaniu (używany, aby dać mi duży brzydki błąd).
źródło
Jako rozszerzenie odpowiedzi Jona Robertsa, pozwól mi zaznaczyć, że arandr nie uwzględnia w swoim generowaniu skryptu sh wszystkich parametrów działających w bieżącej sesji. Główny monitor (w przypadku korzystania z konfiguracji z dwoma monitorami), na przykład nie są uwzględnione ustawienia częstotliwości odświeżania i gamma dla każdego monitora. Mój skrypt sesji wygląda następująco:
Ręcznie dodałem --rate i --primary opcje w pierwszej linii, a następnie ręcznie dodałem drugą linię z korekcją gamma, ponieważ najwyraźniej ustawienia gamma xrandr są tracone za każdym razem, gdy przełączysz monitor na główny .
Nie wiem, czy to konkretne zachowanie z ustawieniami gamma podczas ustawiania monitora jako pierwotnego jest zamierzone czy jest błędem.
Co więcej, skrypt powłoki sesji nie jest wywoływany przez lightdm, ale jako aplikacja startowa, ponieważ wydaje się, że lightdm wywołuje skrypt, zanim wszystko będzie gotowe na xrandr i zdarzają się dziwne rzeczy.
źródło
Miałem problem z tym, że chciałem rozszerzyć wyświetlanie na moim nowym oknie LXDE (nie podwójnym klonie), znalazłem poprawne polecenie, ale nie mogłem uczynić go trwałym.
Wszystkie powyższe metody wydawały się zbyt trudne / niewłaściwe.
W końcu znalazłem to: http://www.sudo-juice.com/change-lxde-screen-resolution-ubuntu-lubuntu/
To działało, ale zamiast tego użyłem gedit:
Następnie dodano linię na końcu z symbolem @ na początku:
Mam nadzieję, że to pomaga i dziękuję sokowi sudo.
PS Zwróć uwagę na podwójne
-
polecenie xrandr--
(nie wyświetlało się zbyt wyraźnie na moim ekranie).źródło
Utwórz nowy dokument i nazwij go, np.
/home/yourusername/yourscriptname.sh
Wpiszi zapisz go w folderze domowym (ustawia to rozdzielczość na 1600 x 900)
Otwórz aplikacje startowe (lub uruchom
gnome-session-properties
) i kliknij „DODAJ”. Podaj nazwę i wpisz w wierszu polecenia:Zapisz go, a teraz skrypt będzie uruchamiany przy każdym logowaniu, więc musisz się najpierw wylogować, aby zadziałał. Uruchomienie polecenia (np.
bash /home/yourusername/yourscriptname.sh
) W terminalu byłoby również dobrym pomysłem, aby sprawdzić, czy skrypt działa.źródło
/usr/bin
nie działało, ale dodanie tego skryptu do moich aplikacji startowychgnome-session-properties
zakończyło się powodzeniem!W oparciu o odpowiedzi górne, przeprowadziłem test i znalazłem przydatną metodę, która mi odpowiada, a następnie stworzyłem prosty skrypt, aby zautomatyzować go za pomocą moich automatycznych instalacji. Ale zadziała w innych przypadkach.
Utwórz scriptinstallxrandrfixed.sh Dodaj następujące wiersze:
stworzy skrypty i pliki do wyświetlania i sesji lightdm. nie zapomnij wyrazić zgody na wykonanie
I wykonaj
Zmodyfikuj go do swoich potrzeb. Z poważaniem. Pablo.
źródło