क्या मैं परित्यक्त ssh सत्रों से जुड़ सकता हूँ या देख सकता हूँ?


14

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

जवाबों:


11

आप दूरस्थ पर स्क्रीन का उपयोग करना चाहते हैं और फिर जब आप वापस ssh में स्क्रीन के उस उदाहरण के लिए फिर से कनेक्ट करें।

लेकिन नहीं, आप में और अपने आप में एक ssh सत्र के लिए फिर से कनेक्ट नहीं कर सकते, आपको स्क्रीन (या कुछ और इसे पसंद करने के लिए उपयोग करना होगा)।

देखो इस सवाल का कम से कम एक अन्य विकल्प है और यह (tmux) और स्क्रीन के बीच कुछ मतभेद के लिए। उस प्रश्न का उत्तर पढ़ने के बाद ... मैं वास्तव में कहूंगा कि tmux बेहतर है

ओह और हाँ आप killइसे रोकने के लिए प्रक्रिया (कांटे की टक्कर सहित) कर सकते हैं, आप skillउपयोगकर्ता को नाम से मारने की कोशिश कर सकते हैं , लेकिन मुझे संदेह है कि यदि उपयोगकर्ता जड़ है ... तो यह उन चीजों को मारने की कोशिश कर सकता है जो यह नहीं कर सकता।

उत्तर को कुछ बार अपडेट किया गया है


4

डिफ़ॉल्ट रूप से आप एक परित्यक्त ssh सत्र से पुनः जुड़ नहीं सकते। हालाँकि, आप एक ssh सत्र के अंदर प्रक्रियाएँ सेट कर सकते हैं, जिसे आप अपने नए ssh सत्र को फिर से स्थापित करने के बाद पुन: कनेक्ट कर सकते हैं।

आप जो उपयोग करना चाहते हैं वह स्क्रीन है या स्क्रीन-बायोबू नामक स्क्रीन के आसपास एक उपयोगकर्ता के अनुकूल रैपर है।

स्क्रीन आपको एक ही ssh सत्र में कई वर्चुअल टर्मिनल सत्र चलाने की अनुमति देता है। एक ट्यूटोरियल और हेल्प पेज उपलब्ध हैं।

बायोबू एक रैपर है जो कि सीटीएल -ए से प्रमुख संयोजन के बजाय एक सरल फ़ंक्शन कुंजी के साथ आसानी से नई स्क्रीन खोलने की अनुमति देता है। यह सभी खुले आभासी टर्मिनलों के साथ एक स्थिति रेखा भी दिखाता है जिसे नाम दिया जा सकता है।

एक और अच्छी विशेषता यह है कि आपके ssh कनेक्शन के डिस्कनेक्ट होने के दौरान आपकी सारी स्क्रीन ऊपर रह सकती है। आप बस ssh और कॉल बायोबू के माध्यम से फिर से कनेक्ट करें और सब कुछ पहले की तरह है।

आख़िरकार बायोबू के कुछ स्क्रीनशॉट


3

जैसा कि उल्लेख किया गया है, स्क्रीन शायद आपकी सबसे अच्छी शर्त है। यदि / जब आपका सत्र छोड़ दिया जाता है, तो यह चालू रहेगा। उपलब्ध सत्रों को देखने के लिए 'स्क्रीन-सूची' टाइप करें, और इच्छित सत्र के साथ 'स्क्रीन -r'। थोड़ा टिप, आप पूरी चीज को कॉपी / पेस्ट करने के बजाय सत्र स्ट्रिंग को टैब-पूरा कर सकते हैं।

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

Nohup bash ./myscript.sh> output.log 2> & 1 &

इसका मतलब है कि नोहप, खरीद को मारने से रोकने के लिए, यदि आप अपनी लिपि में विशिष्ट सामानों को बैश करना चाहते हैं, तो स्पष्ट रूप से बैश कॉल करें, आपकी स्क्रिप्ट को वर्तमान dir में 'myscript.sh' कहा जाता है, आउटपुट .log दोनों को फाइल से बाहर भेजने के लिए और पृष्ठभूमि में खरीद को चलाने के लिए अंत में त्रुटि, और '&'।

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