एम्बेडेड लिनक्स प्रोजेक्ट्स पर काम करते समय अपरिहार्य तत्वों में से एक सीरियल कंसोल इंटरफेस के माध्यम से आपके डिवाइस तक पहुंचना है। इसके लिए जिस कंप्यूटर पर आप एम्बेडेड सिस्टम विकसित कर रहे हैं उसमें सीरियल पोर्ट होना चाहिए। हालाँकि, आज बहुत कम कंप्यूटरों में सीरियल पोर्ट होता है, और इसीलिए हम USB से सीरियल कन्वर्टर्स का उपयोग करते हैं।
अंत तक, आपको इस बात की विस्तृत समझ होगी कि सीरियल कंसोल क्या हैं और वे लिनक्स पर कैसे काम करते हैं।
USB को सीरियल कन्वर्टर में सेट करना
लगभग कोई भी यूएसबी सीरियल कनवर्टर जो आप बाजार पर पा सकते हैं, वह स्वचालित रूप से लिनक्स द्वारा पहचाना जाता है। किसी भी USB कनवर्टर को अपने कंप्यूटर में प्लग करें और इसका उपयोग करें dmesg डिवाइस के फ़ाइल नाम का पता लगाने के लिए कमांड।
dmesg
ऊपर के उदाहरण में, आप वर्चुअलबॉक्स को निर्माता अनुभाग में देखते हैं, क्योंकि होस्ट वर्चुअलबॉक्स पर चलने वाला एक लिनक्स वितरण है। यहां, आपके द्वारा उपयोग किए जा रहे कनवर्टर के आधार पर निर्माता का नाम बदल जाएगा। आप यह भी देख सकते हैं कि आप जिस सीरियल कन्वर्टर का उपयोग कर रहे हैं वह सिस्टम से एक नाम के साथ जुड़ा हुआ है, जैसे टीटीयूएसबी0.
आप डिवाइस फ़ाइल के माध्यम से अपने सिस्टम द्वारा मान्यता प्राप्त सीरियल कनवर्टर का उपयोग कर सकते हैं /dev/ttyUSB0. आपके द्वारा उपयोग किए जाने वाले वितरण के आधार पर, डिवाइस फ़ाइल स्वचालित रूप से के अंतर्गत बनाई जाती है /dev निर्देशिका, प्रमुख, लघु और उपकरण प्रकार दिखा रही है। USB सीरियल कन्वर्टर्स के लिए, नामकरण योजना आमतौर पर होती है टीटीयूएसबी0, टीटीयूएसबी1, तथा टीटीयूएसबीएक्स प्रत्येक युगपत अनुवाद के लिए।
यदि आप यूएसबी सीरियल कन्वर्टर को हटाते हैं और किसी एप्लिकेशन द्वारा उपयोग में होने पर पुन: सम्मिलित करते हैं, तो सिस्टम डिवाइस को एक नया नंबर जारी करता है।
सीरियल डिवाइसेस पर एक्सेस ऑथराइजेशन
माउंटेड USB कनवर्टर डिवाइस फ़ाइलों के डिफ़ॉल्ट एक्सेस विशेषाधिकार आमतौर पर इस प्रकार हैं:
एलएस -एल / देव / ttyUSB0
# आउटपुट
क्रू-आरडब्ल्यू 1 रूट डायलआउट 188, 46 जुलाई 17 15:34 /dev/ttyUSB0
उपरोक्त आउटपुट की जांच करने पर, आप बता सकते हैं:
- अक्षर सी पंक्ति की शुरुआत में यह दर्शाता है कि यह एक वर्ण-आधारित उपकरण है
- फ़ाइल स्वामी रूट उपयोगकर्ता है और उपयोगकर्ता के पास है विशेषाधिकार पढ़ें और लिखें
- फ़ाइल का समूह स्वामी है डायल करें इस समूह में शामिल समूह और उपयोगकर्ताओं के पास भी पढ़ने और लिखने की अनुमति है
- शेष उपयोगकर्ताओं के पास फ़ाइल पर पढ़ने और लिखने का कोई अधिकार नहीं है
यदि आप वर्तमान में एक नियमित उपयोगकर्ता के रूप में लॉग इन हैं, जो डायलआउट समूह का सदस्य नहीं है, तो आप USB सीरियल कनवर्टर को पढ़ और लिख नहीं सकते। इस समस्या को हल करने के लिए, आपको या तो वर्तमान उपयोगकर्ता को डायलआउट समूह का सदस्य बनाना होगा या संपादित करना होगा उदेव आपके सिस्टम पर नियम फ़ाइलें।
आप सुविधा के लिए पहली तकनीक का उपयोग कर सकते हैं। शुरू करने के लिए, का उपयोग करें पहचान यह निर्धारित करने के लिए आदेश दें कि आपका उपयोगकर्ता किस समूह से संबंधित है:
पहचान
का उपयोग करके अपने उपयोगकर्ता को समूह में जोड़ें उपयोगकर्ता जोड़ें या उपयोगकर्तामोड आज्ञा:
# फेडोरा के लिए
sudo usermod -aG डायलआउट USERNAME# डेबियन के लिए
sudo adduser USERNAME डायलआउट
#आर्च. के लिए
sudo usermod -a -G uucp USERNAME
समूह सदस्यता प्रक्रिया अब पूरी हो गई है। हालाँकि, सिस्टम ग्राफिकल सत्रों में पहले लॉगिन चरण के दौरान समूह सदस्यता जानकारी की जाँच करता है और फिर इसे सभी चल रही प्रक्रियाओं को प्रदान करता है।
परिणामस्वरूप, आपको वर्तमान आलेखीय सत्र से लॉग आउट करना होगा और फिर वापस लॉग इन करना होगा या अपनी मशीन को पुनरारंभ करें संशोधनों को प्रभावी करने के लिए। इस ऑपरेशन को पूरा करने के बाद आपके पास सीरियल कन्वर्टर डिवाइस को पढ़ने/लिखने की सुविधा होगी।
लिनक्स पर सीरियल कंसोल से कैसे जुड़ें?
जब आपको कंप्यूटर या नेटवर्क कंसोल तक पहुंच की आवश्यकता होती है, तो आप सीरियल कंसोल एप्लिकेशन का संदर्भ ले सकते हैं। आमतौर पर, ऐसा करने के लिए आपको SSH पर पहुंच की आवश्यकता होती है। हालाँकि, सॉफ़्टवेयर और हार्डवेयर के दृष्टिकोण से, कुछ मामलों में, केवल सीरियल पोर्ट का उपयोग करके कंसोल तक पहुँचना भी संभव है।
इस प्रकार के उदाहरण आपको पुराने कंप्यूटरों पर प्राय: मिल जाएंगे। नीचे कुछ बेहतरीन सीरियल कंसोल एप्लिकेशन दिए गए हैं जो आपके लिए काम करेंगे।
मिनिकॉम का उपयोग करना
आप अपने सिस्टम पर मिनिकॉम, एक पुराना लेकिन अभी भी काम करने वाला एप्लिकेशन इंस्टॉल कर सकते हैं:
# फेडोरा, सेंटोस और आरएचईएल पर
सुडो यम इंस्टॉल मिनीकॉम# डेबियन और उबंटू पर
सुडो उपयुक्त-प्राप्त मिनीकॉम स्थापित करें
# आर्क लिनक्स पर
सुडो स्नैप इंस्टॉल मिनीकॉम
जब आप पहली बार एप्लिकेशन लॉन्च करते हैं, तो यह एक डिवाइस फ़ाइल खोलने का प्रयास करेगा जैसे कि /dev/modem डिफ़ॉल्ट रूप से। जब यह फ़ाइल नहीं ढूंढ पाता है तो यह समाप्त हो जाता है। इस समस्या को दूर करने के लिए, आप एप्लिकेशन की सेटिंग स्क्रीन को सीधे के साथ शुरू कर सकते हैं -एस पैरामीटर:
मिनीकॉम -एस
आप दबाकर डिवाइस का नाम सेट कर सकते हैं ए कुंजी, और सीरियल पोर्ट की गति को दबाकर इ चाभी। फिर जब आप बाहर निकलते हैं बाहर निकलना, आप संबंधित सीरियल पोर्ट का उपयोग कर सकते हैं।
एप्लिकेशन मुख्य स्क्रीन पर रहते हुए, आप कॉन्फ़िगरेशन स्क्रीन पर वापस आ सकते हैं Ctrl + ए + ओ, के साथ आवेदन से बाहर निकलें Ctrl + ए + एक्स, लाइन रैप मोड को सक्रिय करें Ctrl + ए + डब्ल्यू, और अन्य शॉर्टकट के साथ सहायता प्राप्त करें Ctrl + ए + जेड.
जीटीके टर्म का उपयोग करना
मिनिकॉम आमतौर पर उन्नत लिनक्स उपयोगकर्ताओं द्वारा उपयोग किया जाता है और इसलिए, शुरुआती लोगों के लिए अनुशंसित नहीं है। लिनक्स नवागंतुक जीटीके टर्म, लिनक्स के लिए एक ग्राफिकल सीरियल टर्मिनल एमुलेटर स्थापित कर सकते हैं। आप निम्न कमांड का उपयोग करके अपने सिस्टम पर एप्लिकेशन इंस्टॉल कर सकते हैं:
# फेडोरा, सेंटोस और आरएचईएल पर
सुडो डीएनएफ -y इंस्टॉल gtkterm# डेबियन और उबंटू पर
सुडो उपयुक्त-प्राप्त gtkterm. स्थापित करें
# आर्क लिनक्स पर
याय-एस gtkterm
जब आप ऐप लॉन्च करते हैं, तो आपको डिवाइस का नाम और स्पीड पैरामीटर सेट करना होगा कॉन्फ़िगरेशन> पोर्ट मेनू इस प्रकार है:
बाद में उपयोग की सुविधा के लिए सेटिंग्स को डिफ़ॉल्ट के रूप में सहेजें।
स्क्रीन का उपयोग करना
यदि आप मल्टी-टर्मिनल प्रबंधन के लिए स्क्रीन से परिचित हैं, तो आपको पता होगा कि आप इसका उपयोग सीरियल पोर्ट एक्सेस के लिए भी कर सकते हैं। इसे स्थापित करने के लिए यहां आदेश दिए गए हैं:
# फेडोरा, सेंटोस और आरएचईएल पर
सुडो डीएनएफ -y इंस्टॉल स्क्रीन# डेबियन, उबंटू और लिनक्स मिंट पर
सुडो उपयुक्त-प्राप्त -y स्क्रीन स्थापित करें
# अन्य वितरणों के लिए स्नैप का उपयोग करें
सुडो स्नैप इंस्टॉल स्क्रीन --क्लासिक
स्थापना के बाद, आप सीरियल कंसोल से कनेक्ट करने के लिए इस तरह एक कमांड चला सकते हैं:
स्क्रीन / देव / ttyUSB0 115500
अब आप Linux पर सीरियल पोर्ट कनेक्शन स्थापित कर सकते हैं
सीरियल पोर्ट का उपयोग करके अपने लिनक्स सिस्टम तक पहुंचने में सक्षम होना एक बहुत ही उपयोगी विशेषता है, खासकर जब आप एसबीसी (सत्र सीमा नियंत्रक) के लिए एक मॉनिटर संलग्न नहीं करना चाहते हैं।
चूंकि सीरियल कंसोल प्राधिकरण संकलन के समय लिनक्स कर्नेल में बनाया गया है, इसलिए आपको कम से कम लिनक्स कर्नेल और उसके काम करने की बुनियादी समझ होनी चाहिए।