वर्चुअल सीरियल पोर्ट्स (Linux null modem emulator) को tty0tty का उपयोग करके सेटअप करें


9

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

socat -d -d pty,raw,echo=0 pty,raw,echo=0

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

जवाबों:


13

स्थापना

  1. इनमें से किसी एक स्रोत से tty0tty पैकेज डाउनलोड करें:

  2. इसे निकालें

    • tar xf tty0tty-1.2.tgz
  3. प्रदान स्रोत से कर्नेल मॉड्यूल बनाएँ
    • cd tty0tty-1.2/module
    • make
  4. नए कर्नेल मॉड्यूल को कर्नेल मॉड्यूल निर्देशिका में कॉपी करें
    • sudo cp tty0tty.ko /lib/modules/$(uname -r)/kernel/drivers/misc/
  5. मॉड्यूल लोड करें
    • sudo depmod
    • sudo modprobe tty0tty
    • आपको / देव / ( ls /dev/tnt*) में नए सीरियल पोर्ट देखना चाहिए
  6. नए सीरियल पोर्ट के लिए उचित अनुमति दें
    • sudo chmod 666 /dev/tnt*

अब आप सीरियल पोर्ट /dev/tnt0(1,2,3,4 आदि) पर पहुँच सकते हैं। ध्यान दें कि लगातार पोर्ट परस्पर जुड़े रहते हैं। उदाहरण के लिए, / dev / tnt0 और / dev / tnt1 एक केबल के प्रत्यक्ष उपयोग के रूप में जुड़े हुए हैं।

बूट के पार

फ़ाइल / etc / मॉड्यूल (डेबियन) या /etc/modules.conf संपादित करें

nano /etc/modules

और निम्नलिखित पंक्ति जोड़ें:

tty0tty

चेतावनी

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

यदि आप प्रत्येक कर्नेल अद्यतन पर मॉड्यूल को स्थानांतरित नहीं करते हैं तो systemctl --failedवह सेवा वापस आ जाएगी systemd-modules-load.service" failed"। पर भी journalctl -xe | grep "Failed to find"


1
धन्यवाद दोस्त, यह बहुत अच्छा काम किया। कहीं और नहीं मिल पा रहा था।
युवा

1
:) मैं खुशी से मदद कर सकता है!
26

tty0ttyमैक ओएस का भी समर्थन करता है ?
फाद

आप इसे बनाने और कर्नेल मॉड्यूल को लोड करने में सक्षम हो सकते हैं kextutil, लेकिन मैंने कभी इसकी कोशिश नहीं की है!
रुरज

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