मेरे lightdm.conf संपादन मेरे डेस्कटॉप स्क्रीन रिज़ॉल्यूशन को प्रभावित क्यों नहीं करते हैं?


13

मैं अपने डेस्कटॉप स्क्रीन रिज़ॉल्यूशन को बदलना चाहता था 1366x768। लेकिन मेरे VESA drivers(AMD REDWOOD)उस संकल्प का पता नहीं चला। इसलिए मैंने एक शेल स्क्रिप्ट बनाई जो निम्नानुसार है: -

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

मैं के रूप में यह बचाया lightdmxrandr.shमें /usr/binऔर यह निष्पादन योग्य बना दिया। फिर मैंने निम्नलिखित पंक्तियों को इसमें जोड़ा /usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf(जो कि अच्छी तरह से ज्ञात के बराबर है /etc/lightdm/lightdm.conf। मैं उपरोक्त फ़ाइल का उपयोग कर रहा हूं क्योंकि मैं 14.04 पर हूं जहां कोई भी नहीं है /etc/lightdm/lightdm.conf।): -

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

और इसे बचाया। सिद्धांत रूप में यह लॉगिन स्क्रीन रिज़ॉल्यूशन और डेस्कटॉप स्क्रीन रिज़ॉल्यूशन दोनों को बदलना चाहिए था 1366x768। लेकिन आश्चर्यजनक रूप से इसने केवल लॉगिन स्क्रीन रिज़ॉल्यूशन को बदल दिया। डेस्कटॉप रिज़ॉल्यूशन नहीं बदला गया था। बाद में मैंने स्क्रिप्ट को स्टार्टअप अनुप्रयोगों में जोड़ा और इससे मेरा डेस्कटॉप रिज़ॉल्यूशन बदल गया।

इसलिए मैं जानना चाहता हूं कि मैंने जो संपादन lightdm.confफ़ाइल (या बल्कि 50-ubuntu.confफ़ाइल) के लिए किया था, उसने मेरे डेस्कटॉप रिज़ॉल्यूशन को प्रभावित क्यों नहीं किया। क्या यह किसी प्रकार का बग है जिसे लॉन्चपैड पर सूचित किया जाना है या क्या यह कहना गलत है कि lightdm में संपादन डेस्कटॉप स्क्रीन को प्रभावित करेगा?

पुनश्च: - मेरी राय में यह केवल Ubuntu 14.04 के लिए विशिष्ट नहीं है।

जवाबों:


11

मैंने इसी तरह की कोशिश की और कुछ डिबगिंग के बाद मुझे लगता है कि मुझे पता चल गया कि क्या चल रहा है। आपकी स्क्रिप्ट शायद है चलाने के लिए और शायद संकल्प को ठीक से सेट करता है। हालाँकि, चूंकि यह लॉगिन प्रबंधक द्वारा चलाया जाता है, यह यूनिटी द्वारा आपके डेस्कटॉप वातावरण को समाप्त करने से पहले चलता है और यूनिटी अपनी सेटिंग्स को पढ़ता है और संकल्प को रीसेट करता है कि आपके पास क्या था। तो, मुझे लगता है कि क्या होता है:

  1. lightdm आपकी स्क्रिप्ट को सही ढंग से चलाता है
  2. यह आपका वांछित संकल्प निर्धारित करता है
  3. एकता लॉन्च करती है, अपनी सेटिंग्स को पढ़ती है और आपके पास मौजूद डिफ़ॉल्ट रिज़ॉल्यूशन पर लौट जाती है
  4. आपका संकल्प जो पहले था वह वापस चला जाता है

अब, ऐसा इसलिए होता है क्योंकि वीईएसए ड्राइवर आपके वांछित रिज़ॉल्यूशन का स्वचालित रूप से पता नहीं लगाता है। इसका मतलब यह है कि जब आप एकता की सेटिंग्स के डिस्प्ले अनुभाग से रिज़ॉल्यूशन बदलते हैं, तो आप इसे एक रिज़ॉल्यूशन दे रहे हैं जो तब तक उपलब्ध नहीं होता जब तक आप xrandrकमांड नहीं चलाते । इसलिए, अगली बार जब आप पुनरारंभ करते हैं तो इसे अनदेखा कर दिया जाता है और एकता डिफ़ॉल्ट रिज़ॉल्यूशन पर पहुंच जाती है।

इसलिए, आपको जो करने की आवश्यकता है, वह एकता के लिए रिज़ॉल्यूशन उपलब्ध कराने के लिए है, फिर इसे डिफ़ॉल्ट के रूप में सेट करें और इसे हैंडल करने दें। ऐसा करने के लिए, आपको पहले इस पंक्ति को इसमें जोड़ना होगा /usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf:

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

फिर, सुनिश्चित करें कि /usr/bin/lightdmxrandr.shऐसा दिखता है:

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

ध्यान दें कि मैं वास्तव में रिज़ॉल्यूशन सेट नहीं कर रहा हूं , केवल इसे उपलब्ध करा रहा हूं । एक बार जब आप यह पुनरारंभ कर लेते हैं, तो लॉग इन करें। नया रिज़ॉल्यूशन अब सेटिंग्स => डिस्प्ले में उपलब्ध होना चाहिए। यदि ऐसा है, तो इसे चुनें, लॉग आउट करें और फिर से लॉग इन करें और रिज़ॉल्यूशन को सही तरीके से सेट किया जाना चाहिए। इसे अब रिबूट के पार रहना चाहिए।


वैकल्पिक दृष्टिकोण:

  1. एक /etc/X11/xorg.confफ़ाइल बनाएं जो आपके वांछित रिज़ॉल्यूशन को सूचीबद्ध करता है। कुछ इस तरह:

    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. उस स्क्रिप्ट को जोड़ें जो xrandrआपके सत्र के स्टार्टअप एप्लिकेशन को कमांड चलाता है ।


/Usr/share/lightdm/lightdm.conf.d/ के तहत फ़ाइलों को संपादित करना lightdm.conf को बदलने का गलत तरीका है। LightDM प्रोजेक्ट पेज का कहना है कि सिस्टम व्यवस्थापक /etc/lightdm/lightdm.conf.d/ या /etc/lightdm/lightdm.conf में डिफ़ॉल्ट कॉन्फ़िगरेशन को ओवरराइड कर सकते हैं। आपको / usr / share / lightmdm के तहत फ़ाइलों को संपादित नहीं करना चाहिए (क्योंकि जबकि यह कुछ समय के लिए काम कर सकता है जब यह पैकेज अपडेट द्वारा अधिलेखित होने के लिए उत्तरदायी होता है। स्रोत: LightDM प्रोजेक्ट पेज freedesktop.org/wiki/Software/LightDM कृपया अपना उत्तर सही करें
हैप्पीसेप्टिक

3
एक साधारण टिप्पणी जोड़ने के लिए मेरे पास पर्याप्त प्रतिष्ठा नहीं है, लेकिन मैं यह बताना चाहता था कि श फाइल को निष्पादित करने की अनुमति दी जानी चाहिए। ओपी ने उल्लेख किया कि उसने / उसने ऐसा किया था, लेकिन टेर्डन के जवाब ने इसे चरणों में शामिल नहीं किया। यदि यह निष्पादन योग्य नहीं है, तो आपको कमांड प्रॉम्प्ट पर छोड़ना होगा क्योंकि यह लॉग इन नहीं करेगा (कम से कम यह मेरे लिए नहीं था)। यह मेरी ओर से एक साधारण निरीक्षण था, लेकिन अगर किसी और ने उस कदम को अनदेखा कर दिया तो मैं इसे यहाँ दोहराना चाहता था।
कर्क स्पेंसर
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.