monitor ruotato. la schermata di accesso deve essere ruotata


20

Ho ruotato il mio schermo e, una volta effettuato l'accesso, funziona perfettamente. Ma la schermata di benvenuto (login) non ha il messaggio che le cose sono ruotate di 90 gradi. Come posso modificare la rotazione della schermata di accesso?

inserisci qui la descrizione dell'immagine

AGGIORNAMENTO: la schermata di blocco è nella posizione corretta. Lo vedo solo quando avvio o disconnetto.


Nessuna delle risposte precedenti qui sembra essere valida per il 16.04 ... (Ho provato a passare da Noveau a Nvidia 361). Vedo che 'arandr' lo ha impostato correttamente, ma è solo il secondo più tardi ripristinato allo "standard".
Hannu,

1
@Hannu Si prega di vedere il mio commento qui sotto sotto askubuntu.com/questions/408302/… .
jbrock,

Risposte:


19

Aggiungi questa riga al /etc/lightdm/lightdm.conffile (nella sezione [SeatDefaults]):

greeter-setup-script=/etc/lightdm/greeter_setup.sh

Quindi crea il file /etc/lightdm/greeter_setup.shcon i seguenti contenuti:

#!/bin/bash
xrandr -o left
exit 0

Quindi renderlo eseguibile con sudo chmod +x /etc/lightdm/greeter_setup.sh. Quindi riavviare.


4
Modificato in xrandr -o giusto. ha funzionato perfettamente.
j0h

L'aggiunta dello script sopra menzionato (senza esplicito exit 0) ha /etc/lightdm/pre-greeter.dfatto il trucco per me.
Oleg Sklyar,

19

Un'altra opzione che dovrebbe funzionare è quello di copiare ~/.config/monitors.xmla /var/lib/lightdm/.config.

Questo sicuramente funziona per la posizione del mio monitor e le informazioni sulla risoluzione, quindi suppongo che funzionerebbe anche per la rotazione.

Modifica : per la massima flessibilità, si potrebbe creare un collegamento simbolico tra i precedenti:

sudo su
cd /var/lib/lightdm/.config
ln -s /home/<your_user>/.config/monitors.xml .
chown -h lightdm:lightdm monitors.xml
exit

In questo modo, se la configurazione del monitor cambia in futuro, si rifletterà automaticamente sulla schermata di accesso. Si noti il -hflag necessario sul chowncomando, come spiegato in chown non sta cambiando il collegamento simbolico .


Lo esaminerò, questo è il tipo di metodo che stavo cercando di capire.
j0h

1
Fare il collegamento non ha funzionato per me, ho fatto l'autorizzazione come descritto, ma mi ha comunque detto che le autorizzazioni erano sbagliate. La copia del file ha funzionato bene.
Ama il

2
Una nota importante: il collegamento simbolico qui non funzionerà se la tua directory home è crittografata, poiché quel file non sarà accessibile fino a dopo il login.
alienth,

11

14.04 e successive

La risposta di Falconer mi ha aiutato moltissimo, ma lightdm è cambiato per Ubuntu Trusty 14.04. Non c'è più un /etc/lightdm/lightdm.conffile sul mio sistema. lightdm ora è passato alla "via Debian" e la sua configurazione è stata suddivisa in una directory conf.d. Ora devi creare il seguente file:

/etc/lightdm/lightdm.conf.d/80-display-setup.conf

[SeatDefaults]
display-setup-script=xrandr -o right

Come suggerito nella risposta di Electric Head , il comando xrandr può andare direttamente in questo file, non è necessario creare uno script separato.

Se vuoi un comando xrandr che si occupa di più monitor, puoi usarlo arandrper generarlo per te. Il mio xrandrcomando in realtà finisce per essere:

xrandr --output DVI-1 --mode 1920x1080 --pos 1080x0 --rotate left --output DVI-0 --mode 1920x1080 --pos 0x0 --rotate right

Per ottenerlo ho usato i seguenti comandi:

  • sudo apt-get install arandr
  • arandr
  • Utilizzare la GUI per configurare i monitor come desiderato:

    arandr
  • Utilizzare "Layout" -> "Salva con nome" per salvarlo in un file che contiene il comando di configurazione del monitor.

Con questo in atto, anche i miei monitor vengono ruotati correttamente quando eseguo l'accesso, quindi non è necessario eseguire ulteriori configurazioni in Gnome, XFCE o KDE. L'unico altro posto di cui ho bisogno per configurare la rotazione del monitor è nei terminali di framebuffer virtuali, come spiegato in Come posso ruotare il display quando non uso un X Server?


FWIW, la mia installazione pulita 14.04 a 32 bit non ha /etc/lightdm/lightdm.conf.d/directory e la creazione di una, quindi seguendo il resto delle istruzioni qui non ha funzionato. Tuttavia, le istruzioni nella risposta di Electric Head hanno funzionato. Non sono sicuro del motivo per cui uno ha funzionato e non l'altro, ma volevo solo lasciare questo commento per amor dei posteri nel caso in cui qualcun altro si imbattesse nella stessa situazione che avevo.
reirab del

7

falconer l'ha praticamente inchiodato ma vorrei sottolineare una semplificazione.

È possibile inserire un xrandrcomando direttamente /etc/lightdm/lightdm.confcome hook di sistema . Non è necessario creare un comando shell per chiamare uno script separato contenente un comando shell (anche se ovviamente puoi vedere se c'è un motivo per farlo). Inoltre, non si fa menzione di /etc/lightdm/lightdm.conf.d/in man lightdme non avevo né questo né lightdm.confil mio sistema. Quindi, anche se sono sicuro che probabilmente funzionerà come suggerito da Stephen , di nuovo, non è necessario farlo.

Quindi, se non esiste già, qualcosa sulla falsariga di quanto segue in /etc/lightdm/lightdm.conf( sudo, ovviamente) dovrebbe funzionare bene:

[SeatDefaults]
display-setup-script=xrandr --output DVI-1 --auto --rotate left

Vedi man xrandrper le opzioni di configurazione.

A proposito: probabilmente avrei potuto cavarmela con commenti / modifiche qui ma non ho il rappresentante e volevo aggiungere le fonti per queste informazioni.

Versione

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 14.04.1 LTS
Release:    14.04
Codename:   trusty

Riferimenti


Nel 16.04 dovevo prima creare il file denominato lightdm.conf. Quindi ha funzionato. Grazie per questo.
jbrock,

Ho anche usato al [Seat:*]posto di [SeatDefaults]. wiki.ubuntu.com/LightDM
jbrock il

Ora ho funzionato, con quanto sopra e aggiungendo; Avevo monitors.xmlSOFT-LINKED nel monitor.xml del mio normale utente - questo era il colpevole; come ho COPIATO il file invece, ha iniziato a funzionare. Secondo me questa impostazione dovrebbe essere selezionabile in "Impostazioni di sistema> Schermo"
Hannu,

3

16.04

L'unica soluzione che funziona per me è quello di copiare ~/.config/monitors.xmla /var/lib/lightdm/.config/, simile al metodo di risposta di Steve Dee , ma con una copia del file piuttosto che solo un link simbolico ad esso. Creare un collegamento simbolico non funziona.

Astori didi Stephen Ostermiller risposta ha lavorato per me. Ho appena visto lo schermo correttamente ruotato per 2 secondi dopo l'avvio, quindi è tornato all'orientamento orizzontale.


Ho modificato la risposta. Lo scopo era di facilitare la ricerca di una soluzione per gli utenti di 16.04.
Andrej Repiský,

1
Questo è l'unico che ha funzionato anche per me! La risposta di Ostermiller mi ha dato un errore di autorizzazione, anche quando il file nella mia casa è stato letto a tutti.
Alex

0

Ci hai provato xrandr -o value? Come valueuso leftoright

Inoltre è possibile creare un collegamento personalizzato seguendo questo COME


0

Stessa domanda e i miei risultati in 18.10 :

la risposta di Falconiere è buona. Consentitemi di aggiungere 2 dettagli che ho dovuto capire nel 18.10:

  • Invece delle [SeatDefaults]versioni attuali si aspettano[Seat:*]
  • Ancora più importante: ho dovuto sperimentare un po 'con lo script sopra usando loggere poi xmessageconcludere che viene chiamato, sistemato le cose, ma sfortunatamente il suo effetto viene annullato da unità-greeter.

Ho provato altri saluti e tutti onorano la soluzione e si avviano ben ruotati, tranne il saluto unità predefinito. Ho finito per usare Slick-Greeter.


0

Ho avuto lo stesso problema con la schermata di benvenuto errata in Ubuntu 18.04 su un monitor verticale. Ho provato alcuni dei xrandrcomandi citati come indicato in altre risposte, ma questi non hanno funzionato per me. Ho quindi seguito la risposta che mi ha consigliato di copiare il ~/.config/monitors.xmlfile nella /var/lib/gdm3/.configdirectory. Dopo il riavvio, la schermata di benvenuto aveva ancora l'orientamento errato. Il mio prossimo passo è stato quello di guardare al contenuto del /var/lib/gdm3/.config/monitors.xmlfile. Ho notato che conteneva una cronologia di vari monitor e configurazioni che ho usato nel corso degli anni. Ho modificato questo file per contenere solo l'installazione della configurazione corrente.

La struttura del monitors.xmlfile è che contiene un set di <monitors>e </monitors>tag, all'inizio e alla fine del file. Tra questi tag sono uno o più set (s) di <configuration>e </configuration>tag. Ognuna di queste sezioni contengono uno o più set (s) di <logicalmonitor>e </logicalmonitor>tag. Ognuna di queste sezioni specifica un monitor, con parametri come marca e tipo, orientamento (se non orizzontale), larghezza, altezza, x, y e frequenza di aggiornamento. Specifica inoltre se un monitor è il monitor principale. Nel mio file c'era la configurazione corrente elencata nella parte inferiore del file. Ho rimosso tutte le <configuration> </configuration>sezioni che non descrivevano la mia configurazione attuale. Il risultato è simile al seguente:

<monitors version="2">
  <configuration>
    <logicalmonitor>
      .. primary monitor specification (vertical)
      <primary>yes</primary>
      <transform>
        <rotation>left</rotation>
        <flipped>no</flipped>
      </transform>
    </logicalmonitor>
    <logicalmonitor>
      .. secondary monitor specification (horizontal)
    </logicalmonitor>
  </configuration>
</monitors>

Ora ho riavviato il mio computer. Questa volta la finestra dello screener aveva l'orientamento corretto. Suppongo che la cronologia acquisita nel monitors.xmlfile originale causasse problemi.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.