লিনাক্স আমাকে বলে যে একটি সিরিয়াল পোর্ট ব্যবহৃত হচ্ছে, তবে তা নেই


11

ক্রাঞ্চব্যাং লিনাক্স (ডেবিয়ান বৈকল্পিক) এ, আমার একটি সিওএম পোর্ট রয়েছে ttyS0, যা আমি একটি এনএফসি ডিভাইস ব্যবহার করার চেষ্টা করছি। libnfc প্রতিক্রিয়া জানিয়েছে যে এটি কোনও এনএফসি ডিভাইস দেখতে পাচ্ছে না, তাই আমি সরাসরি সিওএম বন্দরটি খোলার চেষ্টা করেছি। এর জন্য, আমি ব্যবহার করেছি:

sudo cu -l /dev/ttyS0 -s 9600

তবে, এই আদেশটি ফিরে আসে:

cu: open (/dev/ttyS0): Permission denied
cu: /dev/ttyS0: Line in use

আমি জানি না সম্ভবত এই সংযোগটি কী ব্যবহার করা যেতে পারে। এটির জন্য, আমি সমস্ত উন্মুক্ত প্রক্রিয়াগুলি পড়ার চেষ্টা করেছি এবং এর ব্যবহারের জন্য ফিল্টারিং করছি ttyS0:

ps -ef | grep tty

কিন্তু এই কমান্ডের জন্য, কিছুই ব্যবহার করছে না তা প্রদর্শিত হচ্ছে ttyS0। আমি সমস্ত খোলা ফাইলগুলি ধরার চেষ্টা করেছি এবং একটি লক চালু করার জন্য ফিল্টারিং করেছি ttyS0:

lsof | grep tty

কিন্তু এটি ব্যবহার করে কিছুই দেয় না ttyS0

কীভাবে বলা যেতে পারে cuযে লাইনটি ব্যবহৃত হচ্ছে, তবে উভয়ই psএবং lsofসেই লাইনটি ব্যবহার করে কিছুই ফেরত দেয় না?


Lsof

@ সিক্লামিনো যা এটি পরিবর্তন করে না - টিটিটি একটি স্ট্রাস্টিং /dev/ttyS0। এটি অবশ্য অন্যান্য সমস্ত টিটি লুকিয়ে রাখে।
আজা

আমি একই সমস্যা আছে। minicomকাজ করে জরিমানা, কিন্তু cuএবং screenসাথে কথা বলতে অস্বীকার /dev/ttyUSB0। আমাকে আমার ব্যবহারকারীকে uucpএবং dialoutগোষ্ঠীগুলিতে যুক্ত করতে এবং লগ আউট করার জন্য পরামর্শ দেওয়া হয়েছিল যা কোনও উপকারে আসেনি।
ভোরাক

উত্তর:


10

লাইনটির সম্ভবত সত্যিকারের ব্যবহার নেই, তবে অনুমতি সংক্রান্ত সমস্যা। আমার জন্য পরীক্ষা করার দ্রুত এবং নোংরা উপায়টি সম্পাদন করা ছিল:

ls -la /dev/ttyUSB0
sudo chmod 666 /dev/ttyUSB0

এবং আবার চেষ্টা করুন cu। যদি এটি কাজ শুরু করে, আপনার সংশ্লিষ্ট udevফাইল এবং ব্যবহারকারীর অনুমতি / গোষ্ঠীগুলির যত্ন নেওয়া দরকার । আমার ডিভাইসের জন্য এটি দেখতে এ রকম দেখাচ্ছে ( plugdevগ্রুপে সদস্য হওয়া ):

> cat /etc/udev/rules.d/42-CP210x.rules 
ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea60", SUBSYSTEMS=="usb",
ACTION=="add", MODE="0666", GROUP="plugdev"

2

মনে হচ্ছে যে এই একটি বাগ সংশোধন করা হয় cu/dev/ttyUSB0নিম্নলিখিত কমান্ডটি ব্যবহার করে মালিক গোষ্ঠী পরিবর্তন করে আমি এটি সমাধান করেছি :

chown root:root /dev/ttyUSB0

2

সিরিয়াল ডিভাইস সুবিধাগুলি dialoutগ্রুপের সদস্যদের দেওয়া হয় । এর সাথে সংযুক্ত হওয়ার জন্য /dev/ttyS0আমি বর্তমান ব্যবহারকারীকে এই গোষ্ঠীতে যুক্ত করেছিলাম:

sudo adduser <username> dialout

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.