Linux memberi tahu saya bahwa port serial sedang digunakan, tetapi tidak


12

Di CrunchBang linux (varian Debian), saya memiliki port COM di ttyS0, yang saya coba gunakan dengan perangkat NFC. libnfc menjawab bahwa ia tidak dapat melihat perangkat NFC, jadi saya mencoba langsung membuka port COM. Untuk ini, saya menggunakan:

sudo cu -l /dev/ttyS0 -s 9600

Namun, perintah ini mengembalikan:

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

Saya tidak tahu apa yang mungkin menggunakan koneksi ini. Untuk mengetahuinya, saya sudah mencoba membaca semua proses terbuka dan memfilter untuk penggunaan ttyS0:

ps -ef | grep tty

tetapi untuk perintah ini, tidak ada yang muncul yang menggunakan ttyS0. Saya juga mencoba mengambil semua file yang terbuka dan memfilter untuk mengunci ttyS0:

lsof | grep tty

tapi ini tidak menghasilkan apa-apa ttyS0.

Bagaimana mungkin cukata garis itu digunakan, tetapi keduanya psdan lsoftidak mengembalikan apa pun menggunakan garis itu?


Bagaimana dengan lsof / dev / ttyS0
Ciclamino

@Ciclamino Itu tidak mengubahnya - tty adalah substring dari /dev/ttyS0. Namun, itu menyembunyikan semua ttys lainnya.

Saya memiliki masalah yang sama. minicomberfungsi dengan baik, tetapi cudan screenmenolak untuk diajak bicara /dev/ttyUSB0. Saya disarankan untuk menambahkan pengguna saya ke uucpdan dialoutgrup dan logout yang tidak membantu.
Vorac

Jawaban:


12

Mungkin tidak ada penggunaan nyata dari garis, tetapi masalah izin. Cara cepat dan kotor untuk menguji bagi saya adalah dengan mengeksekusi:

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

dan coba lagi cu. Jika mulai berfungsi, Anda harus mengurus udevfile masing-masing dan izin / grup pengguna. Untuk perangkat saya, tampilannya seperti ini (menjadi anggota dalam plugdevgrup):

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

2

Hak istimewa perangkat serial diberikan kepada anggota dialoutgrup. Untuk terhubung ke /dev/ttyS0saya menambahkan pengguna saat ini ke grup menggunakan:

sudo adduser <username> dialout


1

Tampaknya ini adalah bug di cu. Saya memecahkan ini dengan mengubah grup pemilik /dev/ttyUSB0menggunakan perintah berikut:

chown root:root /dev/ttyUSB0
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.