7 टर्मिनल हैं जो हमारे सिस्टम में उपयोग किए जा सकते हैं। tty7जीयूआई आधारित है।
मैं यह कैसे जान सकता हूं कि मैं वर्तमान में किस tty का उपयोग कर रहा हूं?
जैसे, tty1, tty2 .... tty6?
7 टर्मिनल हैं जो हमारे सिस्टम में उपयोग किए जा सकते हैं। tty7जीयूआई आधारित है।
मैं यह कैसे जान सकता हूं कि मैं वर्तमान में किस tty का उपयोग कर रहा हूं?
जैसे, tty1, tty2 .... tty6?
जवाबों:
इसका पता लगाने के कई तरीके हैं। मैं who am i(नहीं who) कमांड के साथ जाऊंगा :
$ who am i
ravexina tty2 2017-04-10 11:19 (:0)
जब मैं चित्रमय टर्मिनल में होता हूं, तो यह कुछ इस तरह से लौटता है:
ravexina pts/0 2017-04-10 1:19 (:0)
एसएफ सत्र के तहत एक ग्राफिकल टर्मिनल परिणाम का उपयोग करना समान है, लेकिन (: 0) के बजाय, मुझे मेरी मशीन आईपी (192.168.xx) मिलेगी। अन्य आदेशों की तरह w, who, pgrep,ps , आदि भी सहायक होते हैं।
उदाहरण के लिए यह जानने के लिए कि ttyमेरा ग्राफिकल इंटरफ़ेस किस पर चल रहा है:
ps $(pgrep Xorg)
जो मेरे मामले में, क्योंकि मैं किसी भी प्रदर्शन प्रबंधक जैसे कि gdm या स्लिम का उपयोग नहीं करता हूं, इसका उत्पादन होगा:
PID TTY STAT TIME COMMAND
1693 tty1 Sl 0:05 /usr/lib/xorg/Xorg
who am iकुछ भी नहीं लौटता है, और whoamiवापस लौटता है zanna, (जबकि whoसभी सत्रों को वापस करता है (मुझे एक संबंधित प्रश्न याद है (जो अचूक साबित हुआ है) जहां हमने देखा कि विभिन्न एमुलेटर से अलग-अलग आउटपुट का उत्पादन किया गया who)।
who am iहमेशा एक vt में अच्छी तरह से काम करेगा, और pgrepबहुत स्मार्ट है (आप $()कमांड उप के लिए वाक्यविन्यास का उपयोग करना चाह सकते हैं - बैकटिक्स को मार्कडाउन में थोड़ा भ्रमित हो सकता है) इसलिए आपका उत्तर बहुत अच्छा है और जिसने भी इसे डाउन किया है उसे ऐसा नहीं करना चाहिए ...
उपयोग ttyकमांड का ।
अगर मैं सही हूं तो यह संदर्भ है:
/dev/tty1 - tty1
/dev/tty2 - tty2
/dev/tty3 - tty3
/dev/tty4 - tty4
/dev/tty5 - tty5
/dev/tty6 - tty6
ptsइसका मतलब है कि आप GUI से या SSH के माध्यम से टर्मिनल का उपयोग कर रहे हैं
आइए एक कदम पीछे लें और भ्रम के साथ शुरू करें: क्या एक ट्टी है? मूल रूप से tty टेलेटाइप का एक संक्षिप्त नाम था जो ग्लास टेलेटाइप बन गया जो किसी भी टर्मिनल या एक से जुड़ने वाला बन गया, विशेष रूप से एक सीरियल पोर्ट (ये अभी भी आसपास हैं, सबसे सामान्य रूप से / देव / ttyS0, / dev / ttyUSB0 और कभी-कभी / देव / ttyacm0)। तब आपको छद्म ट्टी और वर्चुअल ट्टी मिली। पुराने यूनिक्स हाथ छद्म टिट्स से परिचित हैं जो इनका उपयोग दूरस्थ टर्मिनलों (ssh और टेलनेट), आभासी टर्मिनलों (xterm और जैसे), और टर्मिनल मल्टीप्लेक्सर्स (स्क्रीन और tmux) के लिए किया जाता है। छद्म ट्टी में समय के साथ विभिन्न नामकरण योजनाएं हैं, लेकिन वर्तमान में / dev / pts / 0 जैसे नामों का उपयोग किया जाता है। दूसरी ओर आभासी tty आभासी कंसोल के साथ जुड़े हुए हैं, विशेष रूप से जब आप नियंत्रण Alt फ़ंक्शन कुंजियों का उपयोग करते हैं तो आप आभासी कंसोल को स्विच कर रहे हैं, जिनमें से प्रत्येक को वर्चुअल tty के साथ जोड़ा जाता है।
इसलिए यदि आपको अपने छद्म ट्टी (या टेक्स्ट मोड का उपयोग करते समय आभासी tty) को खोजने की आवश्यकता है, तो सभी प्रकार के समाधान हैं जैसे who am iयाps ax|grep $$ ऐसा करना अपेक्षाकृत आसान है क्योंकि इसे खोजने के कई तरीके हैं जैसे कि छद्म ट्टी मानक पीआई पर खोले जाते हैं। ज्यादातर मामलों में और ऐसे अन्य तरीके हैं जो io के पुनर्निर्देशित होने पर भी काम करते हैं। जब तक आप ग्राफिकल टर्मिनल एमुलेटर या टर्मिनल मल्टीप्लेक्सर्स का उपयोग नहीं कर रहे हैं, तब तक पोर्ट पोर्ट और वर्चुअल ट्टी का उपयोग करते समय सही काम करने का भी फायदा है।
लेकिन क्या होगा अगर आप वर्चुअल कंसोल की पहचान करना चाहते हैं? sudo fgconsoleइंटरैक्टिव मामलों के लिए उपयोगी हो सकता है। या जो मैं करता हूं वह सिर्फ कंसोल चलता है क्योंकि स्विचिंग आमतौर पर काफी जल्दी होती है। मुझे एक प्रोग्रामेटिक विधि की जानकारी नहीं है जो गैर-सक्रिय या गैर-भूमिगत मामलों में मज़बूती से काम करती है।
आइए एक उदाहरण देखें जो गारंटी देता है कि वर्चुअल कंसोल का कभी मज़बूती से जवाब न दे सके। मैं (अल्फा) के सामने जिस कंप्यूटर पर बैठा हूं, उसमें tty2 (: 1) पर चलने वाला एक Xserver है, मेरे पास तीन विंडो खुली हैं दो xterms और एक vncviewer (ब्रावो से जुड़ा: 2)। एक xterm स्क्रीन चला रहा है, दूसरा ssh चार्ली चला रहा है। स्क्रीन में दो विंडो खुली हैं, ssh डेल्टा और जो (जो कॉलम दो में छद्म ट्टी की सही पहचान करता है और संकेत प्रदान करता है(:1:S0) स्तंभ पांच में हमें बताता है कि छद्म ट्टी पहले स्क्रीन सत्र से जुड़ा है जो दूसरे X सर्वर से जुड़ा है) लेकिन कोई वर्चुअल कंसोल जानकारी नहीं देता है)। रनिंग जो या तो ssh सत्र पर संकेत देता है(alpha)जो ssh सत्र से आई मशीन की पहचान करता है, जो दूरस्थ सत्रों के लिए तुलनात्मक रूप से अच्छा है। हालाँकि छद्म ट्टी (और बिल्कुल वर्चुअल कंसोल या यहां तक कि रिमोट ट्टी की जानकारी उपलब्ध नहीं है) के बारे में बहुत कम जानकारी है, कम से कम दूरस्थ होस्ट की पहचान की जाती है। स्क्रीन के बारे में जानकारी गलत हो सकती है क्योंकि स्क्रीन सत्र वियोज्य हैं, और vnc बिल्कुल भी कोई उपयोगी जानकारी प्रदान नहीं करता है क्योंकि vnc सत्र और स्थानीय सत्र के बीच एकमात्र अंतर प्रदर्शन संख्या है। कई मामलों में आप मान सकते हैं कि: 0 tty7 पर है, लेकिन हमेशा नहीं, और कभी भी खदान पर नहीं है क्योंकि ब्रावो के पास ग्राफिक्स कार्ड बिल्कुल नहीं है और: 0 एक vnc सेशन है (जो भ्रमित करता है क्योंकि इसे लगता है कि यह स्थानीय कंसोल है) और कोई भी मशीन tty7 का उपयोग ग्राफिकल सेशन के रूप में नहीं करती है, क्योंकि मैं (न सिर्फ इसके विपरीत) tty7 में डंप लॉग (और tty5,) tty6, और tty8 भी) अन्य जगहों पर चित्रमय सत्रों को धार्मिक बनाना। लेकिन प्रतीक्षा स्क्रीन एक टर्मिनल कार्यक्रम के रूप में भी काम कर सकती है जो आपको एक धारावाहिक केबल पर एक सत्र स्थापित करने की अनुमति देता है। ऐसे सत्र की रिपोर्ट क्या है जो कब चलाया जाता है? क्यों शून्य लेकिन सीरियल पोर्ट चाहे वह vnc, xterm, ssh, स्क्रीन और एक usb सीरियल अडैप्टर के माध्यम से एक ही बार में हो या मेरे टेलीविडियो से जुड़ा हो।
जब आप एक tty के लिए लॉग इन करते हैं तो यह पता चलता है कि आप किस tty का उपयोग पहली लाइन पर अपने आप कर रहे हैं।
यदि दबाने कुंजीपटल संयोजन Ctrl+ Alt+ F3शो केवल एक काली स्क्रीन, जैसा कि आप एक टिप्पणी में लिखा है, वहाँ जब दबाए बिना कंप्यूटर बूट एक रूट खोल तक पहुंच पाना का एक वैकल्पिक तरीका है Ctrl+ Alt+ F3एक tty को लाने के लिए।
बूट के दौरान BIOS / UEFI स्प्लैश स्क्रीन के तुरंत बाद, BIOS के साथ, जल्दी से Shiftकुंजी दबाएं और दबाए रखें , जो GNU GRUB मेनू लाएगा। (यदि आप उबंटू लोगो देखते हैं, तो आप उस बिंदु से चूक गए हैं जहां आप GRUB मेनू में प्रवेश कर सकते हैं।) UEFI प्रेस (शायद कई बार) के साथ GRUB मेनू में जाने के लिए Escकुंजी। कभी-कभी निर्माता की स्प्लैश स्क्रीन विंडोज बूटलोडर का एक हिस्सा होती है, इसलिए जब आप मशीन को पावर करते हैं तो यह सीधे GRUB स्क्रीन पर जाता है, और फिर दबाव Shiftअनावश्यक होता है।
पहली बैंगनी GNU GRUB स्क्रीन से ↓ और with कुंजियों के साथ उबंटू के लिए उन्नत विकल्प चुनें और दबाएँ Enter। फिर आपको एक और बैंगनी GNU GRUB मेनू मेनू द्वारा संकेत दिया जाएगा जिसमें कर्नेल विकल्पों की एक सूची है।
नीचे तीर कुंजी दबाएं जब तक आप शीर्ष से दूसरी प्रविष्टि ( विवरण में पुनर्प्राप्ति मोड के साथ ) का चयन करें और फिर दबाएं Enter।
अब आपको यह पुनर्प्राप्ति मेनू देखना चाहिए:
तीर कुंजियों का उपयोग करके रूट करने के लिए नीचे स्क्रॉल करें और फिर दबाएँ Enter।
अब आपको रूट प्रॉम्प्ट, कुछ इस तरह से देखना चाहिए:
root@ubuntu:~#
इस स्तर पर आपके पास केवल-पढ़ने के लिए एक फ़ाइल सिस्टम होना चाहिए। आपको इसे लिखने की अनुमति के साथ रिमूव करना होगा:
mount -o rw,remount /
अब आप कमांड को टर्मिनल में चला सकते हैं।
मुझे लगता है कि आप प्रदान किए गए अन्य उत्तरों की तुलना में कुछ और देख रहे हैं। sudo fgconsole पता लगाने के लिए चलाएं कि कौन सा असली ट्टी अब सक्रिय है।
कमांड ट्टी का उपयोग करें, यह लिनक्स और मैकओएस पर काम करता है और पढ़ने के लिए एक बहुत ही सरल आउटपुट देता है, केवल उस tty का नाम जो आप में हैं।
उदाहरण:
$ tty
/dev/pts/0
इसे स्क्रिप्ट करना या प्रॉम्प्ट में शामिल करना आसान है, उदाहरण:
$ PS1='`tty`: '
/dev/pts/0: _
इस तरह आप हमेशा जान पाएंगे कि आप किस टर्मिनल में हैं।