रीटचैच को X11 सत्र गंवाना पड़ा


27

मैं sshअपने विंडोज बॉक्स पर लिनक्स एप्स को चलाने के लिए X11 फॉरवर्डिंग का उपयोग कर रहा हूं , और जब नेटवर्क ड्रॉप होता है तो वह सब कुछ खो देता है जो चल रहा था। क्या screenX11 के लिए भी कुछ ऐसा ही है ?


स्पष्ट करना। सिर्फ उपयोग क्यों नहीं screen? या XVNC? आप लिनक्स मशीन पर स्क्रीन चलाते हैं और जब आपका नेटवर्क गिरता है, screen -DRसत्र को फिर से जोड़ने के लिए पुन: कनेक्ट और उपयोग करें।
निक्स

@nix क्या एक्स ऐप्स के लिए काम करेगा?
माइकल Mrozek

2
@ मुझे लगता है कि मुझे screenगुई ऐप्स के लिए काम नहीं करना चाहिए ।
अब्दुल्ला जिबली

बेशक, स्क्रीन को एक xterm से चलने की आवश्यकता होगी।
nix

जवाबों:


32

Xpra या Xpra कांटा का दावा है कि वास्तव में:

तो मूल रूप से यह रिमोट एक्स ऐप्स के लिए स्क्रीन है

मैंने थोड़ी देर में इसका उपयोग नहीं किया है, लेकिन जब मैंने इसे आज़माया तो बहुत अच्छा काम किया। आप दूरस्थ मशीन पर सर्वर शुरू करते हैं:

[remote] $ xpra start :13

फिर आप अपने स्थानीय मशीन से सर्वर से जुड़ते हैं:

[local] $ xpra attach ssh:remote:13

और अब रिमोट मशीन पर एक्स डिस्प्ले 13 पर प्रदर्शित कुछ भी स्थानीय रूप से दिखाई देगा:

[remote] $ DISPLAY=:13 xeyes

4
WinSwitch भी है , जो एक नज़र में ऐसा लगता है कि यह xpra और अन्य संबंधित सॉफ़्टवेयर को एकीकृत करता है।
गिल्स एसओ- बुराई को रोकना '

6

आप VNC की तलाश कर रहे हैं । सिद्धांत कुछ हद तक स्क्रीन के समान है: आप एक वीएनसी सर्वर (बैकगाउंड SCREENप्रोसेस) और एक वीएनसी क्लाइंट (फोरग्राउंड screenप्रोसेस) चलाते हैं । वीएनसी सर्वर एक एक्स सर्वर है, जिससे आप इसमें एक्स एप्लिकेशन चला सकते हैं।

लिनक्स बॉक्स पर एक VNC सर्वर और विंडोज बॉक्स पर एक क्लाइंट चलाएं। आपके पास चुनने के लिए कई कार्यान्वयन हैं; एक संभावना है TightVNC । TightVNC कई लिनक्स वितरण में है (यदि यह आप में नहीं है, तो इसे स्थापित करें या एक अलग कार्यान्वयन चुनें), और एक विंडोज क्लाइंट है।

यदि आपकी दो मशीनें नेटवर्क पर बहुत करीब नहीं हैं - यदि उनके बीच एक फ़ायरवॉल या एक ईवेर्सड्रॉपर का खतरा है - तो आपको वीएनसी ट्रैफ़िक को ssh के माध्यम से सुरंग में डालना होगा। स्थानीय बंदरगाह 5900 को दूरस्थ बंदरगाह 5900 पर भेज दिया है (5900 प्रदर्शन के अनुरूप है :0, 5901 का उपयोग करें :1, आदि)।


4

दरअसल, आप X को आगे भेज सकते हैं screen। केवल एक चीज यह है कि खिड़की $DISPLAYमें स्थापित करना है screenताकि यह उसी तरफ हो।

प्रक्रिया

के बाद ssh -Xदूरस्थ मशीन में, टाइप करें

$ echo $DISPLAY

और आमतौर पर परिणाम की प्रतिलिपि बनाएँ localhost:N.0। फिर screenस्थानीय screenविंडो में दर्ज करें ,

$ export DISPLAY=localhost:N.0

इसके बाद, Xस्क्रीन विंडो में कोई भी आवश्यक प्रोग्राम चलाएं ।

नोट: प्रत्येक screenविंडो के लिए, पर्यावरण चर स्वतंत्र हैं। इसलिए प्रत्येक विंडो के लिए, आपको इसे अलग से सेट करने की आवश्यकता हो सकती है।

संदर्भ


1
हाय चोंग, यूनिक्स में आपका स्वागत है। चूंकि आपके द्वारा लिंक किए गए समाधान का विवरण सरल है, इसलिए उन्हें यहां स्पष्ट रूप से फिर से लिखना बेहतर है। इस तरह से उत्तर को संरक्षित किया जाना चाहिए, यह पूछने के लिए कुछ होना चाहिए। बेशक, यह एक अच्छा विचार है कि लिंक को वर्तमान में भी रखें क्योंकि यह आपकी सामग्री को स्रोत बनाने में मदद करता है।
डीआरएस

2
मैंने इस समाधान की कोशिश की, लेकिन मैं चल रहे एक्स एप्लिकेशन को मारे बिना अपना ssh सत्र बंद नहीं कर सकता। यह किसी भी तरह से इसके उद्देश्य को हरा देता है ... मुझे दूरस्थ होस्ट से दूरस्थ अनुप्रयोग को छोड़कर कैसे डिस्कनेक्ट करना चाहिए?
टोनिन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.