इतने सारे वर्चुअल कंसोल क्यों?


26

इतने सारे वर्चुअल कंसोल होने का कारण क्या है?

अगर जीयूआई के दुर्घटनाग्रस्त होने की स्थिति में एक और डिफ़ॉल्ट के अलावा 6 और हैं तो मुझे समझ में आएगा? यह किस लिए हैं? यहां तक ​​कि जब जीयूआई फ्रीज करता है तो मुझे उनमें से किसी के लिए कोई उपयोग नहीं दिखता है।


मैं नीचे माटेओ के जवाब से सहमत हूं। अधिक क्यों नहीं? मैं खुद को सभी 6 खुले हुए और अधिक के लिए चाह रहा हूं (और GUI अक्सर लॉगिन स्क्रीन पर "बंद" रहता है)।
खतरनाक

जवाबों:


16

संक्षिप्त उत्तर : क्यों नहीं? (निहित मुस्कान, कृपया)

अधिक लंबा : यह ज्यादातर इतिहास की बात है, मुझे लगता है। gettyवीसी के समर्थन के साथ पहले लिनक्स में 6 वर्चुअल कंसोल कॉन्फ़िगर किए गए थे , मैं वास्तव में भूल गया था जब (यह 1990 के आसपास था, मुझे लगता है)। फिर जब आपने ग्राफिकल वातावरण (हाथ से, साथstartx ) शुरू किया तो यह पहली मुक्त वीसी पर ही खुल गया, जो # 7 हुआ। और मैंने उस समय वीसी पर अपना ज्यादातर काम किया था: संपादक बहुत तेज थे और कभी-कभी मैं मानक छह की तुलना में अधिक वीसी का उपयोग करता था , और मेरा लैपटॉप वास्तव में एक ग्राफिक राक्षस नहीं था ...

उदाहरण के लिए, मैं तीन संपादकों (एक कार्यक्रम, इसका इनपुट डेटा, इसका वर्णन करने वाली एक टीईएक्स फ़ाइल), संकलन के लिए एक वीसी, दूसरे को मैनुअल पढ़ने के लिए, और एक अन्य टेलनेट के माध्यम से अपने मेल सर्वर से चलाता था।

मुझे संदेह है कि छह आभासी कंसोल का उपयोग करने के लिए अभी भी तर्क है कि सभी के लिए # 7 पर ग्राफिक कुलपति को जाने दिया जाए, इसलिए आप मैन्युअल " Ctrl-Alt-F7" पर लिख सकते हैं और " Ctrl-Alt-Fxजहां xपहले मुक्त वीसी नहीं है"।

एक साइड नोट के रूप में, आप कर सकते हैं (मुझे लगता है --- कभी कोशिश नहीं की गई) वीसी को नीचे ट्रिम करें। बस करो

sudo bash -c "echo 'manual' >> /etc/init/tty6.override"

upstart मैनुअल का अनुसरण करते हुए VC # 6 को रोकना ।


यह सक्रिय tty की संख्या को नीचे ट्रिम करने के लिए संभव है , लेकिन डिवाइस खुद को फाइल नहीं करता है (जब तक कि लोग kernels को फिर से जोड़ना नहीं चाहते हैं)। नीचे मेरा उत्तर देखें
सर्गी Kolodyazhnyy

9

ज्यादा क्यों नहीं? 2 या 3 में अन्य प्रणालियों के लिए चलाएं topया htopएक में (सीपीयू / मेमोरी यूसेज स्टैटिक्स देता है), किसी sshअन्य में कुछ स्वचालित कार्य को चलाएं, केवल एक को मुक्त रखें, कुछ में कई उपयोगकर्ताओं को लॉगिन करें, cmatrixएक पर चलाएं , शुरू करें एक और के साथ जीयूआई -

startx -- :1

(कुछ ग्राफिक्स के साथ कीड़े हैं)

http://mostlylinux.wordpress.com/troubleshooting/ttysessions/

जब आप वास्तव में इस सुविधा का उपयोग करना शुरू करते हैं तो 7 tty (सातवाँ डिफ़ॉल्ट होता है) कुछ के लिए रास्ता लगता है - और आप अधिक जोड़ सकते हैं।

संख्या कम करने के लिए: मैं TTYs की संख्या कैसे कम कर सकता हूं?


8

सभी /dev/tty*प्रविष्टियाँ device fileयूनिक्स दर्शन के अनुसार कुछ के रूप में जानी जाती हैं । वे उपयोगकर्ता और वास्तविक डिवाइस के बीच एक कड़ी के रूप में काम करते हैं, लेकिन उनका उद्देश्य थोड़ा भिन्न हो सकता है।

आभासी शान्ति

डिवाइस की तरह फ़ाइलों /dev/tty123को नियमित शेल के माध्यम से सिस्टम के साथ इंटरैक्ट करने के लिए इस्तेमाल किया जा सकता है। ये वर्चुअल टर्मिनल हैं। उबंटू प्रणाली को 6 के माध्यम से डिफ़ॉल्ट TTY 1 द्वारा खोलने के लिए कॉन्फ़िगर किया गया है, लेकिन एक मैन्युअल रूप से अधिक खोल सकता है, उदाहरण के लिए:

sudo openvt -c 9 -s "bash"

यह bashरूट / dev / tty9 पर रूट के रूप में खुलेगा और तुरंत आपको उस TTY (यदि स्थानीय टर्मिनल पर किया जाता है, लेकिन यदि आप दूरस्थ sshसत्र के माध्यम से ऐसा करते हैं, तो आपको उस स्थिति में उपयोग करने की आवश्यकता हो सकती है chvt 9, जहां 9 /dev/tty9इस उदाहरण में है)। sudoगैर-रूट के बिना भी ऐसा करने के लिए , आपको उस tty का स्वामित्व बदलना होगा जिसे आप खोलना चाहते हैं। उदाहरण के लिए,

$ sudo chown xieerqi:tty /dev/tty8 
$ openvt -c 8 -l 

यह मुझे tty8 पर मेरे डिफ़ॉल्ट शेल के साथ लॉग इन करेगा। मेरे परीक्षणों में, हालांकि, ऐसा लगता है कि यह केवल TTY के माध्यम से काम करता है, इसलिए यदि आप टर्मिनल एमुलेटर के माध्यम से ऐसा कर रहे हैं, तो वह काम नहीं कर सकता है (मुझे Couldn't get a file descriptor referring to the console त्रुटि हो रही थी और केवल sudo openvt -c 8 -lएमुलेटर से मेरे लिए काम किया था)

ऐतिहासिक दृष्टिकोण से, सभी फैंसी टर्मिनल मल्टीप्लेक्सर्स बनाए जाने से पहले, यह एक उपयोगी विशेषता थी - आप उन कंसोल पर 62 कमांड (शायद सर्वर) तक जा सकते हैं और 63 वें में काम करते हुए उन्हें चला सकते हैं। आजकल, यह आवश्यक नहीं हो सकता है।

डिफ़ॉल्ट रूप से कई डिवाइस फ़ाइलें बनाई गई हैं। सक्रिय 6 में से 1 हैं, लेकिन कोई भी संपादन करके अपनी संख्या बदल सकता है/etc/default/console-setup , विशेष रूप से यह हिस्सा:

# Setup these consoles.  Most people do not need to change this.
ACTIVE_CONSOLES="/dev/tty[1-6]"

ttyS * डिवाइस

ये सीरियल कंसोल के लिए उपयोग की जाने वाली डिवाइस फाइलें हैं, उर्फ़ UART (जिसे RS-232 के रूप में भी जाना जाता है)। अतीत में कई कंप्यूटर सिस्टम सीरियल पोर्ट के साथ आते थे। आजकल, यह ज्यादातर सर्वर प्रकार के कंप्यूटरों पर पाया जा सकता है। कई ttyS डिवाइस RS-232 हब के साथ उपयोगी हो सकते हैं, जो कई उपकरणों को USB या ईथरनेट के माध्यम से प्रबंधित करने की अनुमति देता है।

इलेक्ट्रिकल इंजीनियरों के लिए (जो कि मैं कॉलेज में पढ़ाई कर रहा हूं), हम माइक्रोकंट्रोलर और डेवलपमेंट बोर्ड (उदाहरण के लिए अरुडिनो) के साथ बातचीत करने के लिए सीरियल पोर्ट का उपयोग करते हैं। रास्पबेरी पाई जैसे सिंगल पोर्ट कंप्यूटर भी इसका उपयोग करते हैं। आजकल, धारावाहिक कनेक्शन को USB से UART केबल के माध्यम से स्थापित किया जाता है, और टर्मिनल में कंसोल को इस screenतरह से खोला जाता है :

screen /dev/ttyUSB0 115200 # the number is baud rate or speed

ध्यान दें, कि Arduino और रास्पबेरी सीरियल कनेक्शन के लिए अपनी डिवाइस फ़ाइल बनाएंगे, /dev/ttyUSB0या/dev/ttyACM0

vcs * डिवाइस

इनके अनुसार man vcsकंसोल मेमोरी डिवाइस हैं। सरल शब्दों में, यदि आप करते हैं तो sudo cat /dev/vcs1आप देखेंगे कि स्क्रीन पर क्या है /dev/tty1, कम से कम उस टर्मिनल की अधिकतम मात्रा तक।

शान्ति की संख्या में कमी

tty.hपुस्तकालय में फेरबदल और कर्नेल ( संदर्भ और एक अन्य ) को फिर से देखे बिना वास्तविक डिवाइस फ़ाइलों की संख्या कम करना संभव नहीं है । हालाँकि, उन उपकरणों को हटाना इस कमांड के माध्यम से मैन्युअल रूप से किया जा सकता है:

sudo bash -c 'for num in $(seq 10 63 ) ; do MAKEDEV -v -d "tty$num" ; done'

यह, हालांकि, कुछ हद तक बेकार है - डिवाइस फ़ाइलें किसी भी स्थान को नहीं लेती हैं और सिस्टम प्रदर्शन को प्रभावित नहीं करती हैं।


टिप्पणियाँ विस्तारित चर्चा के लिए नहीं हैं; इस वार्तालाप को बातचीत में स्थानांतरित कर दिया गया है ।
टेराडॉन

6

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

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.