एक विभाजन व्यक्तित्व या एक बार फिर से MultiseatX के बारे में

मैं आपको एक सफलता की कहानी बताना चाहता हूं जो मेरे परिवार में हुई।

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

और यदि आप कार्यालय उपयोग के लिए मल्टीसेट बनाते हैं, तो यह बहुत सरल है, और कई तरीके भी हैं (टर्मिनल कनेक्शन से सर्वर पर शुरू करना, उनके साथ स्थानीय हार्डवेयर की सख्त संगति के साथ कई वर्चुअल मशीनों के लॉन्च के साथ समाप्त होना )
एक बार, बहुत समय पहले, इस विचार ने मुझे दौरा किया, लेकिन उस समय कंप्यूटर में अभी भी एक अगप कनेक्टर था, जो एक से अधिक पूर्ण वीडियो कार्ड स्थापित नहीं करता था। अब PCIe उपयोग में है, और कई PCIe स्लॉट्स के साथ एक मदरबोर्ड किसी को आश्चर्यचकित नहीं करेगा, इसलिए कई पूर्ण वीडियो कार्ड स्थापित करने की समस्या अब इसके लायक नहीं है।

इसलिए लोहे की लाइन पर कोई प्रतिबंध नहीं है (हालांकि कुछ नुकसान हैं, मैं बाद में उनका वर्णन करूंगा), यह पता लगाना बाकी है कि इसके लिए किस सॉफ्टवेयर का उपयोग करना है।
पिछले 8 वर्षों से, लिनक्स को मेरे घर के कंप्यूटर पर स्थापित किया गया है, इसलिए मैं इसका उपयोग करूंगा, विशेष रूप से कुबंटू, लेकिन रुचि के लिए मैंने विंडोज के लिए समाधान खोजे हैं। समीक्षाओं को देखते हुए, एएसटीईआर कार्यक्रम आपको यह करने की अनुमति देता है, लेकिन मैंने अभी तक इसका परीक्षण नहीं किया है, इसलिए मैं बिल्कुल नहीं कह सकता। वैसे, सशुल्क सॉफ़्टवेयर - लगभग 2000 रूबल। विंडोज मल्टीपॉइंट सर्वर भी नहीं भूले हैं, लेकिन आप वहां वीडियो का उपयोग नहीं करते हैं। कीमत के कारण OS X पर ऐसा करना कम से कम अव्यावहारिक है, क्योंकि अधिकतम इस तथ्य के कारण है कि शक्तिशाली गेमिंग ग्राफिक्स के साथ बस कोई Apple कंप्यूटर नहीं हैं (यहां तक ​​कि नवीनतम मैक प्रो के दो सबसे शक्तिशाली FirePro एक GTX780 से हार जाते हैं)।

तो, पहला विचार एक्सईएन हाइपरविजर का उपयोग करना था।

एक्सईएन


यह विचार यह था: डोमेक्स लिनक्स में काम करता है, तुरंत इसे मूल रूप से खेला जाता है, डोमू में एक वीडियो कार्ड फेंका जाता है, एक यूएसबी नियंत्रक और वहां आप पहले से ही कुछ भी चला सकते हैं, पाठ्यक्रम का अधिक दिलचस्प विंडोज। संकल्पित - हो गया!

एक्सईएन का उपयोग करने के लिए, आपको एक मदरबोर्ड और वीटी-डी सपोर्ट वाले प्रोसेसर की आवश्यकता होती है, मेरे पास पहले से ही एक प्रोसेसर था - कोर i5-2500, और बोर्ड को एक तरह से या किसी अन्य तरीके से बदलना होगा, क्योंकि यह मिनी-आईटीएक्स था और, तदनुसार, केवल एक PCIe स्लॉट के साथ। VT-d का समर्थन करने वाले कार्ड की सूचियों के साथ बड़ी समस्याएं हैं, इसलिए Google को विशेष रूप से प्रत्येक मॉडल के लिए जाना होगा जो स्टोर में है। मैं सिर्फ इतना कहूंगा कि लगभग सभी MSI बोर्ड VT-d का समर्थन नहीं करते हैं, ASRock अधिक संभावना है। नतीजतन, विकल्प ASRock H77 Pro4-M पर गिर गया। मेरे पास तब असली गेम कार्ड नहीं था, इसलिए मैंने ASUS से GeForce GTX780 खरीदा। मुझे असामान्य मामले पसंद हैं, इसलिए मैंने एक स्टाइलिश और कॉम्पैक्ट सिल्वरस्टोन SG-09 खरीदा।
यह वही है जो कंप्यूटर विधानसभा के बाद दिखता था:



Radeon कार्ड को सबसे अच्छा अग्रेषित किया जाता है, इसलिए इसे domU के लिए खरीदा गया था।
मैं एक साधारण कारण के लिए pci-passtrough के लिए xen सेटिंग का वर्णन नहीं करूंगा - यह बंद नहीं हुआ। कारण यह है कि nVidia मालिकाना चालक xen के साथ काम नहीं करता है। लॉन्च के बाद - सिर्फ एक काली स्क्रीन। मैं इस परीक्षण को परीक्षण के लिए चलाना चाहता था, कम से कम प्रोसेसर में निर्मित कार्ड पर, लेकिन वह भी इंटेल चालक के साथ शुरू नहीं करना चाहता था। केवल वेसा ने एनवीडिया के लिए इंटेल और नोव्यू के लिए काम किया, यह जांचना संभव था, लेकिन आप इस पर बिल्कुल नहीं खेल सकते। इसलिए एक्सन के साथ प्रयोगों को बेहतर समय तक छोड़ दिया गया था (आखिरकार, वीडियो कार्ड को अग्रेषित करने की संभावना एक तकनीकी दुर्घटना है, जो एक्सन डेवलपर्स के उत्साह पर काम कर रही है)।

MultiseatX


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

इसलिए, कार्ड डालें, मॉनिटर, कीबोर्ड, चूहों को कनेक्ट करें, कंप्यूटर चालू करें। कार्ड के किसी एक पर xorg.conf फ़ाइल के बिना एक एक्स सर्वर शुरू होगा। यह हमेशा वह कार्ड नहीं होगा जिसे BIOS ने चुना है, इसलिए किसी भी मॉनिटर पर बैठने के लिए तैयार रहें। या आप ssh के माध्यम से दूरस्थ रूप से कनेक्ट कर सकते हैं।

पता लगाने के लिए पहली चीज डिवाइस पते है।
आइए वीडियो कार्ड से शुरू करें:

$ lspci |grep VGA 01:00.0 VGA compatible controller: NVIDIA Corporation GK110 [GeForce GTX 780] (rev a1) 02:00.0 VGA compatible controller: NVIDIA Corporation GF108 [GeForce GT 620] (rev a1) 


हमारे लिए महत्वपूर्ण मान 01: 00.0 और 02: 00.0 हैं - ये PCIe बस में कार्ड के पते हैं। वे नहीं बदलते हैं और केवल मदरबोर्ड पर भौतिक PCIe कनेक्टर पर निर्भर करते हैं, ताकि कार्ड को स्थानांतरित करते समय उन्हें सही करने की आवश्यकता हो।
अगला - आपको इनपुट डिवाइस के स्थिर पते निर्धारित करने की आवश्यकता है। किसी कारण से, उबंटू गाइड में वे कीबोर्ड के लिए पथ पते का उपयोग करते हैं, और चूहों के लिए वे "प्रतीकात्मक" पथ का उपयोग / देव / इनपुट / माउस * के लिए करते हैं। मैं इसकी अत्यधिक अनुशंसा करता हूं, क्योंकि इस मामले में, जब आप कीबोर्ड को किसी अन्य पोर्ट से कनेक्ट करते हैं, तो आपको इसे फिर से लिखना होगा, और किस क्रम में चूहों के नाम असाइन किए जाएंगे, केवल महान यादृच्छिक के लिए जाना जाता है। तो असली रास्ता केवल वास्तविक स्थिर रास्तों का उपयोग करना होगा / dev / input / by-id /।

 $ ls -l /dev/input/by-id/  0 lrwxrwxrwx 1 root root 9  18 14:33 usb-04f3_0103-event-if01 -> ../event7 lrwxrwxrwx 1 root root 9  18 14:33 usb-04f3_0103-event-kbd -> ../event6 lrwxrwxrwx 1 root root 9  18 14:33 usb-Logitech_USB_Laser_Mouse-event-mouse -> ../event2 lrwxrwxrwx 1 root root 9  18 14:33 usb-Logitech_USB_Laser_Mouse-mouse -> ../mouse0 lrwxrwxrwx 1 root root 9  18 14:33 usb-Microsoft_Microsoft_Nano_Transceiver_v1.0-event-kbd -> ../event8 lrwxrwxrwx 1 root root 9  18 14:33 usb-Microsoft_Microsoft_Nano_Transceiver_v1.0-if01-event-mouse -> ../event9 lrwxrwxrwx 1 root root 9  18 14:33 usb-Microsoft_Microsoft_Nano_Transceiver_v1.0-if01-mouse -> ../mouse2 lrwxrwxrwx 1 root root 10  18 14:33 usb-Microsoft_Microsoft_Nano_Transceiver_v1.0-if02-event-kbd -> ../event10 lrwxrwxrwx 1 root root 6  18 14:33 usb-Microsoft_Microsoft_Nano_Transceiver_v1.0-if02-kbd -> ../js0 lrwxrwxrwx 1 root root 9  18 14:33 usb-Razer_Razer_BlackWidow_2013-event-kbd -> ../event3 lrwxrwxrwx 1 root root 9  18 14:33 usb-Razer_Razer_BlackWidow_2013-if01-event-kbd -> ../event4 lrwxrwxrwx 1 root root 9  18 14:33 usb-Razer_Razer_BlackWidow_2013-if02-event-mouse -> ../event5 lrwxrwxrwx 1 root root 9  18 14:33 usb-Razer_Razer_BlackWidow_2013-if02-mouse -> ../mouse1 


उपरोक्त उदाहरण में, 2 कीबोर्ड और 2 चूहे। ये पथ स्थिर होंगे और रिबूट करने या किसी अन्य पोर्ट से कनेक्ट होने पर परिवर्तित नहीं होंगे। मल्टीमीडिया कीबोर्ड के लिए, कम से कम 2 डिवाइस दिखाई देंगे - कीबोर्ड खुद और अतिरिक्त कुंजी। बटन वाले चूहों के लिए भी यही होता है। केवल विषमता Microsoft_Microsoft_Nano_Transceiver नाम के साथ एक माउस है - बस एक वायरलेस माउस, बटन के बिना, और 5 उपकरणों के रूप में कई बनाता है। शायद उनके पास पूरी श्रृंखला के लिए एक सार्वभौमिक रिसीवर है, जो कई तार्किक उपकरणों की उपस्थिति के कारण है। हमारे मामले में, हमें केवल एक उपकरण की आवश्यकता होती है जो माउस 2 को संदर्भित करता है।
यह सुनिश्चित करने के लिए कि कुछ है, आप बिल्ली को चला सकते हैं। जब आप बटन दबाते हैं या माउस को हिलाते हैं, तो स्क्रीन पर प्रतीक दिखाई देंगे।

आप निर्माण शुरू कर सकते हैं (आखिरकार, आधुनिक वितरण में यह लंबे समय तक अस्तित्व में नहीं है) /etc/X11/xorg.conf फ़ाइल। मैं यहां सभी विकल्पों पर टिप्पणी नहीं करूंगा, क्योंकि इस विन्यास में बहुत सारे मानक झंडे पहले ही ubuntu.com गाइड में वर्णित हैं जो मैंने दिया था।

/etc/X11/xorg.conf
 Section "ServerFlags" Option "DefaultServerLayout" "seat0" Option "AllowMouseOpenFail" "true" Option "AutoAddDevices" "false" Option "AutoEnableDevices" "false" Option "AllowEmptyInput" "true" Option "DontZap" "false" Option "AutoAddGPU" "false" Option "DontVTSwitch" "false" EndSection Section "ServerLayout" Identifier "seat0" Screen 0 "Screen0" 0 0 //   .    (    )    (    ) InputDevice "Mouse0" "CorePointer" InputDevice "Keyboard0" "CoreKeyboard" InputDevice "Keyboard1" "CoreKeyboard" Option "Xinerama" "0" EndSection Section "ServerLayout" Identifier "seat1" Screen 0 "Screen1" 0 0 InputDevice "Mouse1" "CorePointer" InputDevice "Keyboard2" "CoreKeyboard" InputDevice "Keyboard3" "CoreKeyboard" Option "Xinerama" "0" EndSection Section "InputDevice" Identifier "Mouse0" Driver "mouse" //      .    ,   . Option "Protocol" "ExplorerPS/2" //   /dev/input/by-id/    - /dev/input/mouse* (  ) Option "Device" "/dev/input/by-id/usb-Logitech_USB_Laser_Mouse-mouse" EndSection #razer kbd: Section "InputDevice" Identifier "Keyboard0" //    .    ,  . Driver "evdev" //   Option "Device" "/dev/input/by-id/usb-Razer_Razer_BlackWidow_2013-event-kbd" Option "XkbRules" "xorg" Option "XkbModel" "evdev" Option "XkbLayout" "us" Option "GrabDevice" "yes" EndSection Section "InputDevice" Identifier "Keyboard1" Driver "evdev" //   .        ""     -   . Option "Device" "/dev/input/by-id/usb-Razer_Razer_BlackWidow_2013-if01-event-kbd" Option "XkbRules" "xorg" Option "XkbModel" "evdev" Option "XkbLayout" "us" Option "GrabDevice" "yes" EndSection Section "InputDevice" Identifier "Mouse1" Driver "mouse" Option "Protocol" "ExplorerPS/2" //  ,       . Option "Sensitivity" "0.7" Option "Device" "/dev/input/by-id/usb-Microsoft_Microsoft_Nano_Transceiver_v1.0-if01-mouse" EndSection Section "InputDevice" Identifier "Keyboard2" Driver "evdev" Option "Device" "/dev/input/by-id/usb-04f3_0103-event-kbd" Option "XkbRules" "xorg" Option "XkbModel" "evdev" Option "XkbLayout" "us" Option "GrabDevice" "yes" EndSection Section "InputDevice" Identifier "Keyboard3" Driver "evdev" Option "Device" "/dev/input/by-id/usb-04f3_0103-event-if01" Option "XkbRules" "xorg" Option "XkbModel" "evdev" Option "XkbLayout" "us" Option "GrabDevice" "yes" EndSection //         nvidia-settings,       Section "Monitor" # HorizSync source: edid, VertRefresh source: edid Identifier "Monitor0" VendorName "Unknown" ModelName "RX_ HD270 DVI" HorizSync 15.0 - 99.0 VertRefresh 23.0 - 76.0 Option "CalcAlgorithm" "XServerPool" Option "DPMS" EndSection Section "Monitor" # HorizSync source: unknown, VertRefresh source: unknown Identifier "Monitor1" VendorName "Unknown" ModelName "HP L1955" HorizSync 0.0 - 0.0 VertRefresh 0.0 Option "CalcAlgorithm" "XServerPool" Option "DPMS" EndSection //      nvidia-settings Section "Device" Identifier "Device0" Driver "nvidia" VendorName "NVIDIA Corporation" BoardName "GeForce GTX 780" //  .     ,      lspci. BusID "PCI:1:0:0" EndSection Section "Device" Identifier "Device1" Driver "nvidia" VendorName "NVIDIA Corporation" BoardName "GeForce GT 620" BusID "PCI:2:0:0" EndSection //    Section "Screen" Identifier "Screen0" Device "Device0" Monitor "Monitor0" DefaultDepth 24 //      opengl       Option "TripleBuffer" "true" //         Option "Coolbits" "5" SubSection "Display" Depth 24 EndSubSection EndSection Section "Screen" Identifier "Screen1" Device "Device1" Monitor "Monitor1" DefaultDepth 24 Option "TripleBuffer" "True" Option "Coolbits" "5" SubSection "Display" Depth 24 EndSubSection EndSection 



केवल एक फ़ाइल शेष है और सेटिंग्स पूरी हो गई हैं:
/etc/lightdm/lightdm.conf
[LightDM]
न्यूनतम-प्रदर्शन-संख्या = 0

[SeatDefaults]
xserver- कमांड = / usr / bin / X
उपयोगकर्ता-सत्र = केड-प्लाज्मा
अभिवादन-सत्र = lightdm-kde- अभिवादन करने वाला
बाहर निकलना-विफल होना = सत्य होना

[सीट: 0]
xserver- कमांड = / usr / bin / X: 0 -sharevts
autologin-guest = false
autologin-user = gordon01
autologin-user-timeout = 0
autologin-session = lightdm-autologin
xserver- लेआउट = सीट 0

[सीट: 1]
xserver- कमांड = / usr / bin / X: 1 -sharevts
xserver- लेआउट = सीट 1


उस पर, सब कुछ तुरंत स्पष्ट होना चाहिए। वे लिखते हैं कि एक बग है और मल्टी-सीट कॉन्फ़िगरेशन में आपको ऑटोलॉगिन के साथ कम से कम एक उपयोगकर्ता की आवश्यकता है।
UPD : कॉन्फिगर को अपडेट किया। अब किसी अन्य उपयोगकर्ता का लॉगिन vt स्विच नहीं करता है, लेकिन वर्चुअल कंसोल में प्रवेश करना पहले से ही असंभव है।

सामान्य तौर पर, यह सब है। पहले कंसोल पर स्विच करें, दर्ज करें
 sudo service lightdm restart 

दोनों मॉनिटर को प्रकाश करना चाहिए। लॉगिन करें और आप खेल सकते हैं!

नुकसान






और काम कर रहे बस की चौड़ाई और हस्तांतरण दर यहां हैं:





फोटो और वीडियो


अंत में, काम कर रहे समाधान की कुछ तस्वीरें और वीडियो:

सामान्य दृश्य:


अलग से सीटें:




इसलिए हमने तारों को छिपा दिया ताकि वे बिल्कुल दिखाई न दें:


सुंदरता के लिए खसखस ​​के साथ:


वीडियो:

Source: https://habr.com/ru/post/In223379/


All Articles