startxरन xinitजो एक एक्स सर्वर और एक क्लाइंट सत्र शुरू करता है। क्लाइंट सत्र ~/.xinitrcयदि मौजूद है, और अन्यथा /etc/X11/xinit/xinitrc(वितरण के बीच स्थान भिन्न हो सकता है)। यह स्क्रिप्ट वितरण के बीच क्या करती है। डेबियन पर (डेरिवेटिव्स जैसे कि रास्पबियन सहित), /etc/X11/xinit/xinitrcरन करता है /etc/X11/Xsessionजो बदले में स्क्रिप्ट चलाता है /etc/X11/Xsession.d। डेबियन स्क्रिप्ट अन्य फ़ाइलों में एक उपयोगकर्ता सत्र के लिए देखो ( ~/.xsession, ~/.xsessionrc, ~/.Xsession) और, यदि कोई उपयोगकर्ता सेटिंग लागू होता है, रन x-session-manager(वापस करने के लिए गिरने x-window-managerअगर कोई [सत्र प्रबंधक] स्थापित किया गया है, पर वापस गिरने x-terminal-emulatorकी संभावना नहीं मामले में है कि कोई विंडो प्रबंधक है स्थापित)।
यदि आप निष्पादित होने पर नियंत्रण चाहते हैं, तो आप उपयोगकर्ता फ़ाइलों में से एक ~/.xsessionया तो बना सकते हैं ~/.xinitrc। फ़ाइल ~/.xsessionका उपयोग तब भी किया जाता है जब आप डिस्प्ले मैनेजर में लॉग इन करते हैं (यानी यदि आप अपना पासवर्ड GUI विंडो में टाइप करते हैं)। फ़ाइल के ~/.xinitrcलिए विशिष्ट है xinitऔर startx। प्रयोग के ~/.xsessionमाध्यम से चला जाता है /etc/X11/Xsessionतो यह इनपुट विधियों, संसाधनों, पासवर्ड एजेंटों, आदि जैसी चीजों को सेट करता है। यदि आप उपयोग करते हैं .xinitrc, तो आपको इन सभी को मैन्युअल रूप से करना होगा। एक बार फिर, मैं यहां डेबियन का वर्णन कर रहा हूं, अन्य यूनिक्स वेरिएंट चीजों को अलग तरीके से सेट कर सकते हैं। यह ~/.xinitrcनिर्दिष्ट करने का उपयोग कि आपके द्वारा चलाए जाने startxया xinitसार्वभौमिक होने पर क्या निष्पादित होता है।
चाहे आप उपयोग करें ~/.xinitrcया ~/.xsession, यह फ़ाइल (आमतौर पर एक शेल स्क्रिप्ट है, लेकिन ऐसा नहीं है कि यदि आप वास्तव में कुछ और उपयोग करना चाहते हैं) तो तैयार होने के लिए जो भी आवश्यक हो उसे तैयार करना होगा (उदाहरण के लिए कीबोर्ड सेटिंग्स, संसाधन, एप्लेट्स जो शुरू नहीं हुए हैं खिड़की प्रबंधक, आदि द्वारा), और फिर अंत में उस प्रोग्राम को चलाएं जो सत्र का प्रबंधन करता है। जब स्क्रिप्ट समाप्त होती है, तो सत्र समाप्त हो जाता है। आमतौर पर, आप execस्क्रिप्ट का उपयोग सत्र प्रबंधक या विंडो प्रबंधक द्वारा स्क्रिप्ट को बदलने के लिए करेंगे।
संभवतः आपके सिस्टम /usr/bin/startlxdeमें सिस्टम-वाइड डिफ़ॉल्ट सत्र प्रबंधक के रूप में है। डेबियन और डेरिवेटिव पर, आप उपलब्ध सत्र प्रबंधकों के साथ जांच कर सकते हैं
update-alternatives --list x-session-manager
या एक और अधिक क्रियात्मक विवरण प्राप्त करें जो यह दर्शाता है कि कौन सा वर्तमान के साथ है
update-alternatives --display x-session-manager
यदि LXDE सिस्टम-वाइड डिफ़ॉल्ट नहीं था और आप इसे अपने खाते के लिए डिफ़ॉल्ट बनाना चाहते थे, तो आप निम्न ~/.xsessionफ़ाइल का उपयोग कर सकते हैं :
#!/bin/sh
exec startlxde
कुछ यूनिक्स वेरिएंट पर, जो केवल ग्राफिकल लॉग के लिए चलेगा, इसके लिए नहीं startx, इसलिए आपको एक समान बनाने की भी आवश्यकता होगी ~/.xinitrc। (या समान नहीं: में ~/.xsession, आप अन्य चीजें करना चाह सकते हैं, क्योंकि यह एक ग्राफिकल सत्र में निष्पादित होने वाली पहली फ़ाइल है; उदाहरण के लिए आप . ~/.profileकुछ पर्यावरण चर सेट करने के लिए शीर्ष के पास रख सकते हैं ।)
यदि आप एक-बंद के रूप में अन्य वातावरणों को आज़माना चाहते हैं, तो आप startxस्वयं के कमांड लाइन पर चलने के लिए एक अलग प्रोग्राम निर्दिष्ट कर सकते हैं । startxकार्यक्रम के एक मोड़ है: आप इस कार्यक्रम का पूर्ण पथ का उपयोग करने की जरूरत है।
startx /usr/bin/startkde
startxआदेश भी आप सर्वर से पारित करने के लिए तर्क निर्दिष्ट कर सकते हैं। उदाहरण के लिए, यदि आप एक ही समय में कई GUI सत्र चलाना चाहते हैं, तो आप हर बार एक अलग प्रदर्शन संख्या पास कर सकते हैं। --की कमांड लाइन पर सर्वर तर्क पास करें startx।
startx /usr/bin/startkde -- :1
startxडिफ़ॉल्ट Xfce4 सत्र शुरू होता है। मेरी पत्नी के उपयोगकर्ता से tty1 या tty2 पर लॉगिन करें। उसकीstartxकमान दालचीनी (निर्दिष्ट~/.xsession) में चलाने के लिए निर्धारित है । दूसरे X सर्वर के लिए मुझे$DISPLAYआपके उत्तर के अंतिम भाग में दिए गए विवरण को निर्दिष्ट करने की आवश्यकता नहीं है । हालांकि वह निश्चित रूप से काम करता है। यह स्वचालित रूप से इसे दूसरा बनाता है$DISPLAY। हालांकि सेटअप बढ़िया है। एक ग्राफिकल सेशन में कोई लॉग इन और आउट नहीं होता है, बस यूजर प्रोफाइल को स्विच करने के लिए एक कीबोर्ड शॉर्टकट है। इस उपयोगी उत्तर के लिए धन्यवाद!