लिनक्स के लिए साइगविन / एक्स और विंडोज सबसिस्टम


14

मेरे पास कार्यशील Xorg विंडोिंग वातावरण सहित, मेरे विंडोज 10 डिवाइस (एक सरफेस 3, मामले में) पर एक कार्यशील सिग्विन इंस्टॉलेशन है। मैंने अभी-अभी लिनक्स के लिए विंडोज सबसिस्टम के साथ प्रयोग करना शुरू किया है। ऐसा लगता है कि WSL से GUI अनुप्रयोगों को चलाने के लिए सलाह एक और एक्स सर्वर स्थापित करने के लिए है। आमतौर पर Xming की सिफारिश की जाती है, लेकिन मैंने ऐसा कोई सुझाव नहीं देखा है जो Cygwin को काम नहीं करना चाहिए।

हालाँकि, सरल तरीका विफल रहता है:

WSL $ export DISPLAY=:0
WSL $ emacs &
Display :0 unavailable, simulating -nw

मुझे संदेह था कि यह एक नेटवर्किंग मुद्दा हो सकता है, क्योंकि

WSL $ telnet localhost 6000
Trying 127.0.0.1...
telnet: Unable to connect to remote host: Connection refused
WSL $ /sbin/ifconfig
Warning: cannot open /proc/net/dev (No such file or directory). Limited output.
WSL $ # there was no output at all, actually

... लेकिन एक दूरस्थ मशीन के लिए ssh ठीक काम करता है, और जाहिरा तौर पर Xservers ने पोर्ट 6000 पर सुनना बंद कर दिया है क्योंकि पिछली बार मैंने एक डिबग किया था।

मैंने चलाने की कोशिश की cygwin $ xhost +localhost, केवल यह जानने के लिए कि xhostवर्तमान में वहां स्थापित नहीं है। जो कोशिश करने के लिए अगली चीज हो सकती है, या एक जंगली हंस पीछा हो सकता है --- xhost(या कम से कम, एक नग्न xhost +) ज्यादातर पिछली बार हतोत्साहित किया गया था जब मैंने एक्स सर्वर को डिबग किया था।

क्या WSL ​​को Cygwin X सर्वर का उपयोग करने से रोकने के लिए कुछ मौलिक दोष है? यदि नहीं, तो मैं कैसे आगे बढ़ूंगा?


1
चूंकि आप एक उच्च डीपीआई डिवाइस (सर्फेस 3) का उपयोग कर रहे हैं, यह अतिरिक्त चाल आपके लिए उपयोगी हो सकती है। आप फ़ॉन्ट आकार, विंडो का आकार, आदि को बढ़ा सकते हैं, यह दिखा कर कि CygwinX क्या सोचता है कि स्क्रीन DPI है। संपादित करें /etc/X11/Xresourcesऔर Xft.dpiडिफ़ॉल्ट को 96 से बदलें। आपका प्रदर्शन 214 DPI होना चाहिए, इसलिए पाठ को CygwinX के माध्यम से काफी छोटा दिखना चाहिए। भले ही, आप अपनी पसंद के हिसाब से स्केलिंग को बदलने के लिए उस डीपीआई मूल्य को ट्विक कर सकें। (परिवर्तनों के बीच बस CygwinX को पुनरारंभ करें।)
क्रिस

जवाबों:


15

टीसीपी को सुनने के लिए आपको साइगविन / एक्स को बताना होगा, जो वह डिफ़ॉल्ट रूप से नहीं करता है। आप -listen tcpXLaunch के विकल्प को पास करके ऐसा करते हैं । जब आप ऐसा करते हैं, तो यह वास्तव में ठीक काम करता है। मैं वास्तव में साइगविन / एक्स से एक्समिंग तक पसंद करता हूं। मैनुअल में अधिक जानकारी ।


वह शॉर्टकट ढूंढें जो आप Cygwin / X को शुरू करने के लिए उपयोग कर रहे हैं। (प्रति-उपयोगकर्ता स्टार्टअप शॉर्टकट C:\Users\<you>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startupसिस्टम-वाइड स्टार्टअप शॉर्टकट में हैं, जबकि C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUpइस लिंक के "गुण" खोलें और लक्ष्य को बदल दें

C:\cygwin64\bin\run.exe --quote /usr/bin/bash.exe -l -c "cd; exec /usr/bin/startxwin"

सेवा

C:\cygwin64\bin\run.exe --quote /usr/bin/bash.exe -l -c "cd; exec /usr/bin/startxwin -- -listen tcp"

के लिए xauthसमर्थन, आप कॉपी करना चाहिए ~/.Xauthorityअपने WSL के घर निर्देशिका करने के लिए अपने Cygwin के घर निर्देशिका से।

या यदि आप अक्षम करना चाहते हैं xauth, तो आप Cygwin को संपादित कर सकते हैं /usr/bin/startxwin, शीर्ष के पास उपयुक्त रेखा को बदल सकते हैं enable_xauth=0


जब मैंने प्रारंभ मेनू में XLaunch पर क्लिक किया तो इसने मुझे XLaunch के पैनल के क्षेत्र में tcp जोड़कर काम किया। मैं कमांड लाइन तर्क को बदलने के लिए मेनू आइटम के साथ संपत्ति को संशोधित नहीं कर सका।
यू शेन

0

आपको एक्स सर्वर के साथ शुरू करना होगा startx। यदि आपके पास X विंडोज स्थापित नहीं है, तो Cygwin चलाएं setup.exeऔर सभी X विंडोज सिस्टम और एक विंडो मैनेजर चुनें।

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