Bagaimana cara saya mengizinkan akses non-root ke / ttyUSB0?

35

Karena saya memperbarui dari 10,04 ke 12,04, saya tidak dapat mengakses perangkat yang terhubung di / ttyUSB0 jika saya tidak memiliki akses root. Untuk lebih spesifik, saya menggunakan konverter port usb ke serial untuk mengakses dan mengkonfigurasi peralatan Cisco dengan perangkat lunak yang disebut Putty. Itu terjadi, karena saya upgrade ke 12,04, Puttyhanya melihat perangkat yang terhubung ketika saya menjalankannya gksudo putty. Jika tidak, dikatakan "tidak dapat terhubung ke port / ttyUSB0". Saya telah berhasil mengubah izin melalui chmod 666, dan itu berhasil, tetapi jika saya lepaskan usb dan hubungkan kembali, itu akan kembali ke root saja. Bagaimana cara saya secara permanen mengizinkan akses non-root? Saya punya petunjuk mungkin melalui aturan udev, tapi saya tidak tahu bagaimana melakukannya.

obs. Pabrikan dan driver "PROLIFIC"

yurividal
sumber

Jawaban:

10

Mungkin ini terkait dengan modemmanager , seperti yang dijelaskan di sini .

Saya menghapus itu ( sudo apt-get remove modemmanager) dan itu memperbaiki masalah saya.

Anda masih harus berada dalam dialoutgrup.

Ed.
sumber
1
Bagaimana jika saya tidak dapat menghapus modemmanager? Saya punya teman yang memiliki modem 3G, dan sepertinya dia tidak bisa menghapus modemmanager karena itu. Bagaimana ia bisa mengakses / ttyUSB0 pada 12,04 tanpa root, tetapi tanpa menghapus modemmanager?
Leonardo Montenegro
Anda dapat mencoba dengan menghentikannya? sudo stop modemmanagerItu berhasil untuk saya.
Aleks
Sudah beberapa tahun, tetapi ini masih terjadi di Ubuntu 17.10. Harus melakukan sudo apt-get purge modemmanagersebelum sudo usermod -a -G dialout $USERmemiliki efek yang diinginkan.
Stéphane
95

Perangkat ini kemungkinan besar melekat pada grup pengguna dialout. Cukup tambahkan pengguna Anda ke grup dialout sehingga Anda memiliki izin yang sesuai pada perangkat.

sudo usermod -a -G dialout $USER

(Anda mungkin harus keluar dan kembali agar grup baru tersebut berlaku.)

Tidak perlu dipusingkan dengan izin atau aturan udev.

Rinzwind
sumber
3
Saya masuk untuk mendukung. Solusi terbersih.
yildirimyigit
1
@ tom-hennen Saya kira Anda harus menambahkannya terlebih dahulu sebagai komentar daripada mengeditnya secara langsung.
MadMike
2
Ini tidak berfungsi untuk Debian
Mike
1
Kudos untuk memasukkan "mungkin harus keluar dan kembali".
Rob Stoecklein
1
Di Ubuntu (saya di 18,04), logout / masuk tidak berfungsi. kita harus reboot setelah melakukan usermod.
Sujay Phadke
7
sudo adduser <the user you want to add> dialout
sudo reboot

Disebutkan oleh "Coba sekarang" bekerja untuk saya. Periksa apakah Anda memiliki dialoutgrup untuk ttyUSB0:

ls -l /dev/ttyUSB0

dalam kasus saya outputnya adalah:

crw-rw---T 1 root dialout 188, 0 Feb 12 12:01 /dev/ttyUSB0
pengguna130451
sumber
di Linux Mint 18 Cinnamon Saya mendapatkan kesalahan ini ketika memanggil 'ls-l / dev / ttyUSB0' ls: tidak dapat mengakses '/ dev / ttyUSB0': Tidak ada file atau direktori seperti itu
flyingdrifter
2

Ini berhasil untuk saya. Cukup tekan Ctrl+ Alt+ Tdi keyboard Anda untuk membuka Terminal. Ketika terbuka, jalankan perintah di bawah ini.

sudo adduser <the user you want to add> dialout
sudo reboot
id -Gn

Coba sekarang.

pengguna88742
sumber
2

Seperti dilansir Rinzwind , mulailah dengan mengetik:

sudo usermod -a -G dialout $USER

Tapi itu hanya sebagian dari solusi, karena Anda harus me-reboot sistem:

sudo reboot
lboz
sumber
6
1) Tolong jangan posting komentar sebagai jawaban. 2) Tidak perlu reboot; cukup logout dan masuk kembali.
gertvdijk
Saya harus reboot untuk membuatnya berfungsi. Logoff tidak menyebarkan perubahan.
user1182988
2

Saya mencoba keduanya

sudo usermod -a -G dialout $USER #(worked perfectly)

Dan sudo chmod 666 /dev/ttyUSB0(berhasil tetapi harus mengetikkan perintah lagi)

Saya juga menghapus manajer mode tetapi tidak terlalu membantu. Karena itu, perintah terbaik yang bekerja untuk saya adalah

sudo usermod -a -G dialout $USER
Salah Amean
sumber
0

Di Ubuntu 18.04 saya harus menambahkan diri ke grup tty.

Saya mendapat petunjuk dari output perintah minicom:

minicom  /dev/ttyUSB0
minicom: cannot open /dev/tty8: Permission denied


ls -la /dev/tty8
crw--w---- 1 root tty 4, 8 juil. 31 08:27 /dev/tty
Laurent
sumber
0

Di Ubuntu 18.04:

  1. sudo adduser <user> dialout
  2. Reboot penuh , untuk beberapa alasan logout / login saja tidak cukup ( laporan bug. ).
Eero Aaltonen
sumber
-1

Saya punya masalah dengan / dev / ttyS0 di Mint Rosa. Menambahkan pengguna ke grup dialout diperlukan tetapi dalam kasus saya akses perangkat dibatasi dan saya harus memperluasnya untuk memberikan akses r / w ke level grup juga.

LesA
sumber
1
Selamat Datang di Tanya Ubuntu! Saya sarankan untuk mengedit jawaban ini untuk meluaskannya dengan detail spesifik tentang bagaimana melakukan ini. (Lihat juga Bagaimana cara saya menulis jawaban yang baik? Untuk saran umum tentang jenis jawaban apa yang dianggap paling berharga di Ask Ubuntu.)
David Foerster
-4

arahkan ke / etc / folder dan edit file grup, tambahkan nama pengguna Anda seperti ini dialout:x:20:USER

bekerja sempurna untukku :)

Kutukan
sumber
4
Secara umum dianggap praktik buruk untuk mengedit file-file ini secara langsung karena beberapa kesalahan sederhana dapat menyebabkan hilangnya akses.
flickerfly