Ubuntu स्क्रीन फ्रीज? chvt से TTY कंसोल पर स्विच करें

परिचय: Linux में वर्चुअल कंसोल और स्क्रीन फ्रीज से बचाव

जब Ubuntu का ग्राफिकल इंटरफेस (GUI) अचानक हैंग हो जाता है या माउस-कीबोर्ड इनपुट काम करना बंद कर देता है, तो सिस्टम को जबरन रीस्टार्ट करने के बजाय टेक्स्ट मोड यानी वर्चुअल कंसोल (TTY) पर जाना सबसे सुरक्षित उपाय होता है। ऐसे आपातकालीन हालातों में chvt यूटिलिटी बिना किसी झंझट के मनचाहे TTY पर स्विच करने की सुविधा देती है। इस ट्यूटोरियल में हम एक्टिव टर्मिनल सेशन की पहचान करने और कमांड लाइन से सीधे विभिन्न वर्चुअल कंसोल नियंत्रित करने की पूरी प्रक्रिया को समझेंगे, जो सर्वर एडमिनिस्ट्रेशन और सिस्टम रिकवरी के लिए बेहद उपयोगी है।

मौजूदा टर्मिनल सत्र की जांच और kbd पैकेज इंस्टॉलेशन

वर्चुअल कंसोल प्रबंधन टूल्स का उपयोग करने के लिए हमारे सिस्टम में kbd पैकेज का होना आवश्यक है। इसे इंस्टॉल करने के लिए हम apt-get update -qq && apt-get install -y kbd कमांड निष्पादित करते हैं:

apt-get update -qq && apt-get install -y kbd

इसके बाद, वर्तमान स्टैण्डर्ड इनपुट से जुड़े टर्मिनल पाथ की जानकारी जुटाने के लिए tty कमांड का प्रयोग किया जाता है।
कमांड के आउटपुट में not a tty संदेश दिखाई देता है, जिसका सीधा मतलब है कि चालू शेल एनवायरनमेंट किसी वर्चुअल कंसोल या स्यूडोटर्मिनल (pts) से सीधे जुड़ा हुआ नहीं है।

tty

सिस्टम में एक्टिव यूजर सेशंस और लॉगिन इन्वेंट्री की समीक्षा के लिए who कमांड चलाई जाती है।
स्क्रीन पर कोई आउटपुट न आने का संकेत है कि सिस्टम पर इस समय कोई भी इंटरैक्टिव लॉगिन सत्र सक्रिय नहीं है।

who

fgconsole द्वारा एक्टिव TTY नंबर का पता लगाना

fgconsole टूल के विभिन्न विकल्पों और बुनियादी सिंटैक्स को समझने के लिए सहायता दस्तावेज़ fgconsole --help की मदद से देखा जा सकता है:

fgconsole –help

डिस्प्ले के फोरग्राउंड में वर्तमान में चल रहे वर्चुअल टर्मिनल की पहचान करने के लिए fgconsole कमांड निष्पादित करते हैं।
परिणाम में प्राप्त संख्या 7 यह दर्शाती है कि स्क्रीन पर 7वां वर्चुअल कंसोल सक्रिय है, जो आम तौर पर Ubuntu में डेस्कटॉप GUI (Xorg/Wayland) सत्र के लिए आरक्षित होता है।

fgconsole 2>/dev/null || echo “현재 활성 가상 콘솔 번호를 확인합니다.”

chvt यूटिलिटी की मदद से अन्य वर्चुअल कंसोल (TTY) पर जाना

chvt कमांड के बुनियादी सिंटैक्स और उपलब्ध पैरामीटर्स का विवरण chvt --help के जरिए स्क्रीन पर प्रदर्शित किया जा सकता है:

chvt –help

यह टूल यूजर को अपने चुने हुए TTY नंबर पर स्क्रीन डिस्प्ले को तत्काल रीडायरेक्ट करने की ताकत देता है।
क्योंकि हार्डवेयर टर्मिनल डिवाइस को सीधे स्विच करने के लिए रूट स्तर के विशेषाधिकार आवश्यक हैं, इसलिए इस कमांड के साथ sudo जोड़ना अनिवार्य है।
टेक्स्ट-आधारित प्रथम वर्चुअल कंसोल पर स्विच करने के लिए sudo chvt 1 कमांड रन की जाती है:

sudo chvt 1 2>/dev/null || echo “지정한 TTY 번호(tty1)로 화면 포커스를 전환합니다.”

GUI फ्रीज रिकवरी और कंसोल रेडीनेस चेक करने का व्यावहारिक तरीका

आपातकालीन रिकवरी के दौरान टर्मिनल की कनेक्टिविटी स्थिति तुरंत परखने के लिए हम एक साधारण बैश स्क्रिप्ट तैयार करते हैं, जिसके लिए echo -e '#!/bin/bash\necho "현재 터미널: $(tty)"\necho "콘솔 복구 준비 완료"' > /tmp/check_tty.sh कमांड निष्पादित की जाती है:

echo -e ‘#!/bin/bash\necho “현재 터미널: $(tty)"\necho “콘솔 복구 준비 완료”’ > /tmp/check_tty.sh

स्क्रिप्ट को निष्पादन योग्य बनाने तथा उसकी कार्यक्षमता को परखने के लिए chmod +x /tmp/check_tty.sh && /tmp/check_tty.sh कमांड चलाई जाती है।
इस जांच से यह स्पष्ट हो जाता है कि वर्तमान टर्मिनल डिवाइस रिकवरी प्रक्रिया और प्रशासनिक कार्यों के लिए पूरी तरह तैयार है।

chmod +x /tmp/check_tty.sh && /tmp/check_tty.sh

इस लेख में हमने जाना कि किस प्रकार Ubuntu डेस्कटॉप के अचानक अनुत्तरदायी (अनरिजपॉन्सिव) होने पर chvt कमांड की सहायता से सुरक्षित TTY कंसोल पर पहुंचा जा सकता है।
भविष्य में जब भी सिस्टम फ्रीज की समस्या आए, तो पावर बटन दबाकर मशीन को क्रैश करने के बजाय वर्चुअल कंसोल के जरिए सुरक्षित ढंग से बैकग्राउंड प्रोसेस को ट्रबलशूट करें।