मैं BUG से प्रभावित हूँ: https://bugs.launchpad.net/ubuntu/+source/unity-greeter/+bug/874241 अन्यथा, यदि आप की तरह मेरे पास भी उच्च संकल्प के दूसरे मॉनिटर से जुड़ा लैपटॉप है, तो LIGHTDM पर लॉगिन चरण, दोनों स्क्रीन में डिस्प्ले को मिरर करता है और डेस्कटॉप के विस्तार के बजाय मेरे मामले में एक सामान्य रिज़ॉल्यूशन (1024X768) को असाइन करता है (मल्टीपल मॉनिटर्स यूएक्स स्पेसिफिकेशन्स बुक में बताए अनुसार, ग्रेटर के साथ प्राइमरी स्क्रीन और सिर्फ एक लोगो के साथ सेकेंडरी। 12.04 के लिए)।
यहाँ मेरा xrandr -q है
@L502X:~$ xrandr -q
Screen 0: minimum 320 x 200, current 1920 x 1848, maximum 8192 x 8192
LVDS1 connected 1366x768+309+1080 (normal left inverted right x axis y axis) 344mm x 193mm
1366x768 60.0*+
1360x768 59.8 60.0
1024x768 60.0
800x600 60.3 56.2
640x480 59.9
VGA1 disconnected (normal left inverted right x axis y axis)
HDMI1 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 510mm x 287mm
1920x1080 60.0*+
1600x1200 60.0
1680x1050 60.0
1280x1024 60.0
1440x900 59.9
1280x960 60.0
1280x800 59.8
1024x768 60.0
800x600 60.3 56.2
640x480 60.0
DP1 disconnected (normal left inverted right x axis y axis)
मैंने प्रत्येक मॉनिटर के लिए सही रिज़ॉल्यूशन सेट करने और डेस्कटॉप का विस्तार करने के लिए कुछ xrandr कमांड निष्पादित करने के लिए lightdm को बाध्य करने की कोशिश की, इसलिए मैंने /usr/share/lightdmxrand.sh नामक एक सरल स्क्रिप्ट बनाई :
#!/bin/sh
xrandr --output HDMI1 --primary --mode 1920x1080 --output LVDS1 --mode 1366x768 --below HDMI1
और इसे चलाने के लिए lightdm से कहा: /etc/lightdm/lightdm.conf
[SeatDefaults]
greeter-session=unity-greeter
user-session=ubuntu
greeter-setup-script=/usr/bin/numlockx on
display-setup-script=/usr/share/lightdmxrandr.sh
पुनरारंभ किया गया lightdm: sudo restart lightdm
और एकता अभिवादन लॉगिन स्क्रीन सही था। उनके संबंधित सही रिज़ॉल्यूशन वाली स्क्रीन और अगर मैं माउस को स्क्रीन पर ले जाता हूं, तो यह लॉगिन बॉक्स और पैनल के साथ फ़ोकस हो जाता है, जबकि अनफोकस्ड स्क्रीन बस एक उबंटू लोगो (एमएम यूएक्स स्पेक बुक में निर्दिष्ट) प्रदर्शित करता है। बहुत खुबस!
यह वर्कअराउंड तब तक बढ़िया काम करता है जब तक बाहरी मॉनिटर लैपटॉप से जुड़ा होता है। उस स्थिति में जहां यह कनेक्ट नहीं है, लॉगिन स्टेज पर, मुझे मिलता है: एक कम ग्राफिक्स मोड ERROR (आप कम ग्राफिक्स मोड में चल रहे हैं, आपकी स्क्रीन, इनपुट डिवाइस ... पता नहीं चला ..)। सामान्य, क्योंकि xrandr
एक गैर कनेक्टेड मॉनिटर पर आउटपुट करने की कोशिश करता है।
यहां सवाल यह है कि मुझे स्क्रिप्ट को इस तरह कैसे संशोधित करना चाहिए कि जब बाहरी मॉनिटर xrandr
केवल लैपटॉप स्क्रीन से कनेक्टेड आउटपुट न हो और अपने बाहरी मॉनिटर को अनदेखा कर दे। ईजी:
If (xrandr -q | grep 'HDMI1 connected') != NULL (HDMI1 is connected )
then xrandr --output HDMI1 --primary --mode 1920x1080 --output LVDS1 --mode 1366x768 --below HDMI1
else xrandr --output LVDS1 --mode 1366x768 (or do nothing - because the resolution of the laptop screen is correct when no external monitor is connected)
अग्रिम में धन्यवाद।