Lightdm.conf düzenlemelerim neden masaüstü ekran çözünürlüğümü etkilemiyor?


13

Masaüstü ekran çözünürlüğümü olarak değiştirmek istedim 1366x768. Ama benim VESA drivers(AMD REDWOOD)bu kararı tespit etmedim. Bu yüzden aşağıdaki gibi bir kabuk komut dosyası oluşturdum: -

xrandr --newmode "1368x768_60.00"   85.25  1368 1440 1576 1784  768 771 781 798 -hsync +vsync  
xrandr --addmode DVI-0 1368x768_60.00  
xrandr --output DisplayPort-0 --off --output DVI-0 --mode 1368x768_60.00 --pos 0x0 --rotate normal --output HDMI-0 --off

Ben sakladım lightdmxrandr.shiçinde /usr/binve yürütülebilir yaptı. Daha sonra /usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf(ki iyi bilinen eşdeğerdir /etc/lightdm/lightdm.conf. Ben 14.04 ben yok olduğu gibi yukarıdaki dosyayı kullanıyorum) aşağıdaki satırları ekledi /etc/lightdm/lightdm.conf: -

greeter-session=unity-greeter  
display-setup-script=/usr/bin/lightdmxrandr.sh  
session-setup-script=/usr/bin/lightdmxrandr.sh

ve kaydettim. Teoride bu hem giriş ekranı çözünürlüğü hem de masaüstü ekran çözünürlüğü olarak değiştirilmelidir 1366x768. Ancak bu sadece giriş ekranının çözünürlüğünü değiştirdi. Masaüstü çözünürlüğü değiştirilmedi. Daha sonra komut dosyasını Başlangıç ​​uygulamalarına ekledim ve bu da masaüstü çözünürlüğümü değiştirdi.

Bu yüzden lightdm.confdosyada yaptığım (veya 50-ubuntu.confdosyadaki) düzenlemelerin masaüstü çözünürlüğümü neden etkilemediğini bilmek istiyorum . Bu, fırlatma rampasında bildirilmesi gereken bir tür hata mıdır yoksa lightdm'deki düzenlemelerin masaüstü ekranını etkileyeceğini söylemek yanlış mı?

Not: - Bence bu sadece Ubuntu 14.04'e özgü değil.

Yanıtlar:


11

Benzer bir şey denedim ve bazı hata ayıklamalarından sonra neler olduğunu anladım. Senaryonuz muhtemelen edilir çalıştırın ve muhtemelen doğru çözünürlüğü ayarlamak gelmez. Ancak, oturum açma yöneticisi tarafından çalıştırıldığından, Unity masaüstü ortamınızı kurmayı bitirmeden önce çalışır ve Unity kendi ayarlarını okur ve çözünürlüğü sahip olduğunuza sıfırlar. Yani, bence ne olacak:

  1. lightdm betiğinizi doğru şekilde çalıştırır
  2. Bu, istediğiniz çözünürlüğü ayarlar
  3. Unity başlatılır, ayarlarını okur ve oradaki varsayılan çözünürlüğe geri döner
  4. Senin kararın eskisine geri döndü

Şimdi, bunun nedeni VESA sürücüsünün istediğiniz çözünürlüğü otomatik olarak algılamamasıdır. Bu, çözünürlüğü Unity ayarlarının Ekranlar bölümünden değiştirdiğinizde, xrandrkomutları çalıştırmadığınız sürece kullanılamayan bir çözünürlük sağladığınız anlamına gelir . Bu nedenle, bir dahaki sefere yeniden başlattığınızda ve Unity varsayılan çözünürlüğe geri döndüğünde yok sayılır.

Yapmanız gereken, çözünürlüğü Unity için kullanılabilir hale getirmek, sonra varsayılan olarak ayarlamak ve işlemesine izin vermektir. Bunu yapmak için, önce bu satırı şuna eklemelisiniz /usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf:

session-setup-script=/usr/bin/lightdmxrandr.sh

Ardından, bunun /usr/bin/lightdmxrandr.shşöyle göründüğünden emin olun :

xrandr --newmode "1368x768_60.00"   85.25  1368 1440 1576 1784  768 771 781 798 -hsync +vsync  
xrandr --addmode DVI-0 1368x768_60.00  

Aslında çözünürlüğü ayarladığımı , yalnızca kullanılabilir kıldığımı unutmayın. Bu yeniden başlatmayı yaptıktan sonra giriş yapın. Yeni çözünürlük artık Ayarlar => Ekranlar'da mevcut olmalıdır. Eğer öyleyse, orada seçin, oturumu kapatın ve tekrar giriş yapın ve çözünürlük doğru ayarlanmalıdır.


Alternatif yaklaşımlar:

  1. /etc/X11/xorg.confİstediğiniz çözünürlüğü listeleyen bir dosya oluşturun . Bunun gibi bir şey:

    Section "Monitor"
        Identifier    "Monitor0"
        Modeline "1368x768_60.00"  109.00  1280 1368 1496 1712  1024 1027 1034 1063 -hsync +vsync
    EndSection
    
    Section "Screen"
        Identifier     "Screen0"
        Device         "Card0"
        Monitor        "Monitor0"
        SubSection "Display"
            Modes       "1368x768_60.00"
        EndSubSection
    EndSection
    
    Section "Device"
        Identifier    "Card0"
        Driver        "vesa"
    EndSection
    
  2. xrandrKomutları çalıştıran komut dosyasını oturumunuzun başlangıç ​​uygulamalarına ekleyin.


/Usr/share/lightdm/lightdm.conf.d/ altındaki dosyaları düzenlemek, lightdm.conf dosyasını değiştirmenin yanlış yoludur. LightDM proje sayfası, sistem yöneticilerinin /etc/lightdm/lightdm.conf.d/ veya /etc/lightdm/lightdm.conf içindeki varsayılan yapılandırmayı geçersiz kılabileceğini söylüyor, çünkü / usc / share / lightdm / paket güncellemeleri ile üzerine yazılabilir bir süre çalışabilir Kaynak: LightDM proje sayfası freedesktop.org/wiki/Software/LightDM Lütfen yanıtınızı düzeltin
happyskeptic

3
Basit bir yorum eklemek için yeterli bir üne sahip değilim, ama sh dosyası yürütme izni verilmesi gerektiğini işaret etmek istedim. OP bunu yaptığını belirtti, ancak terdon'un cevabı adımlara dahil etmedi. Yürütülebilir değilse, oturum açmayacağı için bir komut istemine bırakmanız gerekir (en azından benim için değil). Benim açımdan basit bir gözetimdi, ama başka birinin bu adımı görmemesi durumunda, burada tekrarlamak istedim.
Kirk Spencer
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.