टैटी को कैसे बंद करें


14

मैंने कई टैटी खोले हैं और मुझे टैटी को बंद करने के लिए उपयोग करने के लिए महत्वपूर्ण संयोजन नहीं पता है। मैं आर्क लिनक्स का उपयोग कर रहा हूं।


2
आपने उन्हें नहीं खोला, वे खुले हैं। आपने अभी VT बदला है। यदि आप उनमें से किसी एक से लॉग आउट करना चाहते हैं, तो उपयोग करें exit। यदि आप लॉग इन नहीं हैं, तो चिंता न करें। यह वहाँ पहले था, बस तुम इसे नहीं देख रहे थे।
गोल्डीलॉक्स

1
@goldilocks, VT को गतिशील रूप से आवंटित और बंद किया जा सकता है। कंसोल पर होने पर हमेशा पहले आवंटित किया जाता है, initऔर एक्स आमतौर पर अगले लोगों को आवंटित करता है, लेकिन आप अधिक आवंटित कर सकते हैं। /dev/ttyxडिवाइस को खोलना उसे आवंटित करने के लिए पर्याप्त है।
स्टीफन चेजलस

@ स्टेफ़ेनचेज़लस: मेला काफी। मैं सिर्फ "महत्वपूर्ण संयोजनों का उपयोग कर" से जिक्र कर रहा था कि एनक्वाडनील ने वास्तव में कुछ भी शुरू नहीं किया था जो कि पहले ही पैदा नहीं हुआ था। यदि हां, तो उन्हें बंद करने की आवश्यकता नहीं है (और जैसा कि आप अपने उत्तर में बताते हैं, वैसे भी यह आसानी से नहीं होता है)।
गोल्डीलॉक्स

आप उपलब्ध tty की गिनती को कम करने का मतलब है?
डेज़ी

@goldilocks धन्यवाद, यह वह उत्तर है जिसकी मुझे तलाश थी। मैं एक मूर्खतापूर्ण शुरुआत कर रहा हूं और मुझे लगा कि यह वह व्यक्ति है जिसने <Alt> + <F2> आदि द्वारा ttys खोला है
ngwdaniel

जवाबों:


10

एक TTY "बंद"

  • अगर इस्तेमाल systemdनहीं किया initजा रहा है तो यह आपकी मदद नहीं करेगा
  • sysvinitहै नहीं रह गया है द्वारा समर्थित आर्क लिनक्स

systemdके systemctlसभी नियंत्रित करने के लिए प्रयोग किया जाता है service unitsसिस्टम पर। इसके संदर्भ में अधिक जानने के लिए man systemd.unitgettyवांछित पर सेवा को रोकना ttyकार्य में कार्य करेगा। नीचे इस क्रिया को करने की आज्ञा दी गई है और मैंने एक परीक्षण भी जोड़ा है ताकि आप परिणामों की पुष्टि कर सकें।

# systemctl stop getty@ttyX.service

  • Xउस ttyनंबर से बदलें जिसे आप बंद करना चाहते हैं
    • यदि [F4] का उपयोग तब किया जाता है ttyतो सेवा का नाम दिया जाता है getty@tty4.service
  • यह प्रक्रिया निर्दिष्ट किए गए सभी एप्लिकेशन / क्लाइंट को भी बंद कर देगीtty

परीक्षा

  1. स्विच करें tty4और अपना usernameऔर दर्ज करें password
    • <CTRL>+<ALT>+[F4]
  2. अपना पसंदीदा टेक्स्ट एडिटर लॉन्च करें
    • vim foo.bar
  3. tty1जो भी ttyआप मूल रूप से थे उसमें वापस जाएं या जो भी हो
    • <CTRL>+<ALT>+[F1]
  4. एक टर्मिनल विंडो खोलें और जांचें कि vimक्या चल रहा है
    • pgrep vim
      • pgrepनिर्दिष्ट एप्लिकेशन की सिग्नल प्रक्रिया संख्या देता है । यदि एक ही एप्लिकेशन के कई उदाहरण हैं, तो कई नंबर वापस आ जाएंगे
        • (यदि चार टर्मिनल विंडो खुली हैं तो pgrepचार प्रोसेस नंबर आउटपुट करेंगे)
  5. रूट के लिए सेवा बंद करोgettytty4
    • # systemctl stop getty@tty4.service
  6. अगर vimयह अभी भी सक्रिय है, tty4जहां इसे खोला गया था और संपादित करें तो रीचेक करेंfoo.bar
    • pgrep vim (यदि चरण 4 की तुलना में कोई आउटपुट / कम आउटपुट नहीं है, तो कोई प्रक्रिया नहीं है)
  7. डबल की स्थिति की जांच getty@.serviceके लिएtty4
    • systemctl status getty@tty4.service | grep -i "Active"
      • करने के लिए उत्पादन पाइप grep -i "Active"केवल उत्पादन के लिए आवश्यक लाइन आप पुष्टि करने के लिए निरीक्षण करने के लिए की आवश्यकता होगी कि gettyकर दिया गया है विकलांग
        • Active: inactive (dead)

यू whoवर्तमान में लॉग इन किए गए उपयोगकर्ताओं और संख्याओं को सूचीबद्ध करने के लिए कमांड का उपयोग कर सकता है ।
जोलो

5

मेरा मानना ​​है कि यह वह deallocvtकमांड है जिसकी आपको तलाश है।

पहले सुनिश्चित करें कि VT अब उपयोग नहीं किया गया है। उदाहरण के लिए, अगर वहाँ एक gettyसाथ शुरू किया था respawning द्वारा initकि कंसोल पर, वहाँ कोई यह पुनःआवंटन करने की कोशिश कर बात है, तो आप से है कि tty दूर करने के लिए आवश्यकता होगी inittabपहली और बताओ initअपने config को फिर से लोड करने के लिए। यदि कोई शेल है, तो शेल से बाहर निकलें, आदि।

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