GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Le impostazioni per più monitor non vengono memorizzate?

Sto eseguendo Ubuntu 12.04. su un Lenovo Thinkpad T400. Ho collegato un monitor esterno come secondo display . Il laptop si trova sotto lo schermo esterno. Il portatile ha una risoluzione nativa di 1440×900 (16:10), il monitor esterno 1280×1024 (5:4). Sono disponibili due adattatori grafici:uno interno Intel GMA 4500 MHD e un discreto ATI carta. Attualmente, le Intel integrate è abilitato.

Uso i Display applicazione per disporre la posizione dei monitor in modo che assomigli a questo:

Il problema:
Ogni volta che riavvio il computer, la configurazione viene persa. Innanzitutto, i display sono rispecchiati invece di esteso . Devo premere Fn + F7 due volte per passare a esteso modalità. In secondo luogo, i Display le impostazioni sono ancora così:

So che ha funzionato una volta mentre eseguivo Ubuntu 10.10. Non posso dire da quando non funziona. Sai come posso memorizzare permanentemente le impostazioni?

A volte quando avvio Ubuntu e premo Fn + F7 non succede niente. Quando apro Display Io e posiziono lo schermo esterno sopra e premo il pulsante “Applica” non succede nulla. Quindi, dopo circa un minuto, le impostazioni vengono applicate all'improvviso. Sai se esiste un file di registro che potrebbe aiutare ad analizzare il comportamento?

Risposta accettata:

Ci sono 2 approcci di base che puoi adottare. Il primo è utilizzare randr che ti permetterà di creare un unico grande display virtuale in cui posizionare i tuoi monitor. Il secondo è utilizzare xinerama che ti consentirà di avere 2 schermi X separati che funzioneranno come un unico grande display. Tratterò entrambi qui e tu potrai decidere quale è più appropriato per le tue esigenze.

RandR – Ridimensiona e ruota

Puoi abilitare dinamicamente la doppia testa utilizzando XRandR

xrandr --output foo --above bar

C'è anche un frontend GUI per questo chiamato arandr che è nei repository 12.04, ma sembrerebbe che tu voglia una configurazione più statica.

Potrebbe essere semplice come creare /etc/X11/xorg.conf.d/10-monitor.conf con il contenuto:

Section "Monitor"
  Identifier     "Monitor0"
EndSection

Section "Monitor"
  Identifier     "Monitor1"
  Option         "Above" "Monitor0" 
EndSection

Questo metodo implica un randr impostare. Ci sono alcuni svantaggi notevoli se si utilizza xrandr con monitor di diverse risoluzioni. Le finestre potrebbero essere posizionate in modo errato, potrebbero esserci aree nere su uno schermo, ecc.

Quando esegui xrandr senza le opzioni della riga di comando puoi scoprire quale Identificatore devi utilizzare nel tuo 10-monitor.conf . Quindi riavvia Ubuntu per vedere se le impostazioni sono state caricate.

Xinerama Per abilitare xinerama devi modificare /etc/X11/xorg.conf :

Section "ServerFlags"
  Option    "Xinerama" "true"
EndSection

Potrebbe essere così semplice in quanto X è abbastanza bravo a configurare automaticamente le cose in base al rilevamento dell'hardware. Ma, semplicemente girando lo xinerama estensione attiva non fornisce la funzionalità che desideri, puoi scegliere di configurare completamente X per utilizzare xinerama . Ci sono alcuni modi per configurare X. Potresti avere più file in /etc/X11/xorg.conf.d/ , alcuni per i tuoi monitor, altri per i dispositivi, ecc. Tratterò di avere un singolo xorg.conf file che contiene tutte le impostazioni utilizzando una versione modificata della mia configurazione corrente.

Section "ServerLayout"
    Identifier     "DualHead"
    Screen      0  "Screen0" 0 0
    Screen      1  "Screen1" Above "Screen0"
    Option         "Xinerama" "1"                # You can specify xinerama here
EndSection

Section "Device"
    Identifier     "Device0"                     # A Device section for each monitor
    Driver         "nvidia"                      # Specify the driver to use
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce GT 430"
    BusID          "PCI:1:0:0"                   # Use lspci | grep VGA to find BusID
    Screen          0                            # Do note the screen number
EndSection

Section "Device"
    Identifier     "Device1"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce GT 430"
    BusID          "PCI:1:0:0"
    Screen          1                            # Do note the screen number
EndSection

Section "Monitor"
    Identifier     "Monitor0"
    VendorName     "Unknown"
    ModelName      "Gateway HX2000"
    HorizSync       31.0 - 83.0
    VertRefresh     56.0 - 76.0
    Option         "DPMS"
EndSection

Section "Monitor"
    Identifier     "Monitor1"
    VendorName     "Unknown"
    ModelName      "DELL 1907FPV"
    HorizSync       30.0 - 81.0
    VertRefresh     56.0 - 76.0
    Option         "DPMS"
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
EndSection

Section "Screen"
    Identifier     "Screen1"
    Device         "Device1"
    Monitor        "Monitor1"
    DefaultDepth    24
EndSection

Ovviamente dovrai modificarlo per adattarlo al tuo hardware, ma lo scheletro di base è lì per te.

Correlati:come cambiare il dispositivo audio "predefinito" controllato dalle chiavi hardware in Xubuntu?

Tieni presente che ho letto di recente che Intel potrebbe avere problemi con xinerama . Potresti trovarti a dover utilizzare la tua scheda grafica dedicata.


Ubuntu
  1. Ubuntu:ingannare Slack nel pensare di non avere più monitor?

  2. I programmi in esecuzione non vengono visualizzati nel pannello?

  3. Configurazione Xdmcp per Lightdm, le porte non ascoltano?

  4. Le azioni desktop di base non sono disponibili su Ubuntu 20.04?

  5. Dove vengono archiviati i file di traduzione?

Suggerimenti per l'utilizzo dello schermo

[Risolto] Ubuntu non ricorda le impostazioni di luminosità

Come configurare il periodo di inattività per il blocco automatico dello schermo?

Ubuntu 17.10 Blocco schermo non funzionante e grigio?

La mappa non è a schermo intero in Google Earth Pro?

Come configurare Pkexec per non richiedere la password?