मैक से लिनक्स बॉक्स में SSH पर X अग्रेषित करना


9

मुझे एक दूरस्थ मैक मशीन पर मैक एप्लिकेशन चलाने की आवश्यकता है और इसे एक स्थानीय लिनक्स मशीन के एक्स सर्वर पर प्रदर्शित करें (इंटरनेट पर बहुत सारे लेख यह विवरण देते हुए प्रतीत होते हैं कि आप इसे विपरीत तरीके से कैसे करेंगे)।

$ ssh -X mac-box
$ cd /Developer/Applications/Xcode.app
$ ./Contents/MacOS/Xcode
Sat Oct  3 20:41:26 mac-box.local Xcode[15634] <Error>: kCGErrorFailure: Set a breakpoint @ CGErrorBreakpoint() to catch errors as they are logged.
_RegisterApplication(), FAILED TO establish the default connection to the WindowServer, _CGSDefaultConnection() is NULL.
^C
  1. मेरा $DISPLAYचर खाली प्रतीत होता है। यह कैसा दिखना चाहिए ताकि अग्रेषण सही ढंग से काम करे?
  2. क्या मैं OSX अनुप्रयोगों को इस तरह से चला सकता हूँ?

जवाबों:


6

यदि एक मैक का एक्वा एक्स था, तो आपको मैक पर अन्य एक्स प्रोग्राम शुरू करने के लिए एक्स (एक्सक्यू क्वार्ट्ज) चलाने की आवश्यकता नहीं होगी ...

तो: नहीं, मुझे लगता है कि आप ऐसा नहीं कर सकते।


लेकिन, आपको आरंभ करने में मदद करने के लिए, मैं सबसे पहले आपके लिनक्स मशीन पर दिए गए सच्चे X प्रोग्राम को प्राप्त करने का प्रयास करूंगा:

  • अपने मैक पर: यदि आपने अभी तक ऐसा नहीं किया है तो XQuartz स्थापित करें (जैसे OS X 10.6 डीवीडी पर वैकल्पिक इंस्टॉल से XQuartz 2.3.4, या XQuartz परियोजना से नवीनतम डाउनलोड करें )।

  • परिवर्तन: अपने मैक पर X11Forwarding noमें X11Forwarding yes(और वहाँ कोई हैश (है सुनिश्चित #है कि लाइन के सामने)) का उपयोग कर sudo vi /private/etc/sshd_config, या एक का उपयोग कर sedएप्पल से आदेश को सक्षम करने से X11 अग्रेषण । यह यह भी सुनिश्चित करेगा कि DISPLAYचर स्वचालित रूप से सेट है।

  • अपने लिनक्स मशीन पर:

    ssh -Y उपयोगकर्ता @ मैक-बॉक्स
    टर्म
    

(कुछ अगले चरणों में इसके बाद Xephyr(या पुराने Xnest) के लिए Googling शामिल हो सकता है । और यदि आप कीबोर्ड मुद्दों में चलते हैं: Google xmodmap, या xevडिबगिंग के लिए। या फ़ॉन्ट समस्याओं के लिए: Google xfsऔर xset +fp tcp/mac-box:7100। लेकिन मुझे संदेह है कि आप इस तरह एक्वा प्रोग्राम चला सकते हैं।)


1
दुर्भाग्य से आप सही हैं। मैं SSH के माध्यम से Xcode और iPhone सिम्युलेटर नहीं चला सकता, भले ही मैं xterm चला सकता हूं। इसके अलावा, मुझे स्टॉक 10.6 इंस्टॉलेशन पर XQuartz स्थापित करने की आवश्यकता नहीं थी।
एलेक्स बी

@AlexB क्या पिछले 10 वर्षों में कुछ बदला है?
मुहम्मद बिन युसरत

4

ऐसा लगता है कि आपका मुख्य लक्ष्य एक लिनक्स मशीन पर मैक अनुप्रयोगों को चलाने के लिए है। अर्जन सही है, एक्स फॉरवर्डिंग इसके लिए काम नहीं करेगा।

आपको सिस्टम प्राथमिकता में साझाकरण फलक में स्क्रीन शेयरिंग सक्षम करना चाहिए। यह VNC सर्वर को चालू करेगा। अपने लिनक्स मशीन पर VNC क्लाइंट का उपयोग करके, आप अपने मैक डेस्कटॉप को देख पाएंगे। यह आलेख दिखाता है कि इसे मैक साइड पर कैसे सेट करना है (चरण 1-3), हवाई अड्डे के बेस स्टेशन में डंडों की स्थापना और पोर्ट खोलने के बारे में (थोड़ा बहुत) आगे बढ़ता है और फिर सेटिंग के बारे में सबसे नीचे एक छोटा सा हिस्सा होता है। क्लाइंट पक्ष (चरण 20-21)।


और वहाँ भी कई कार्यक्रम हैं जो केवल एक ही एप्लिकेशन (पूरे डेस्कटॉप के बजाय) साझा करते हैं। मुझे लगता है कि कोई ऐसा भी कर सकता है जो नवीनतम स्काइप, क्रॉस-प्लेटफॉर्म का उपयोग कर रहा हो। (मुझे यकीन नहीं है कि स्काइप भी किसी को रिमोट मशीन को नियंत्रित करने की अनुमति देता है , बजाय इसके स्क्रीन को झांकने के।)
अर्जन

काश मैं इसके इस्तेमाल से बच पाता। ऐसा लगता है कि वीएनसी इस बिंदु पर एकमात्र विकल्प है।
एलेक्स बी

-2

महज प्रयोग करें

su -lm <usrname-to-proxy-for>

एक शेल में प्रवेश करने के लिए जहां कोई X11 समस्या नहीं होगी। '-M' विकल्प के बारे में जानकारी के लिए मैनपेज़ देखें।


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