Làm cách nào để tôi cho phép truy cập không root vào / ttyUSB0?


35

Vì tôi đã cập nhật từ 10.04 đến 12.04, tôi không thể truy cập thiết bị được kết nối trong / ttyUSB0 nếu tôi không có quyền truy cập root. Để cụ thể hơn, tôi sử dụng bộ chuyển đổi cổng com-to-serial để truy cập và định cấu hình thiết bị của Cisco bằng một phần mềm được gọi Putty. Nó xảy ra rằng, kể từ khi tôi nâng cấp lên 12.04, Puttychỉ thấy thiết bị được kết nối khi tôi chạy nó như gksudo putty. Nếu không, nó báo "không thể kết nối với cổng / ttyUSB0". Tôi đã quản lý để thay đổi quyền thông qua chmod 666 và nó hoạt động, nhưng nếu tôi ngắt kết nối usb và kết nối lại, nó sẽ quay trở lại root. Làm thế nào để tôi vĩnh viễn cho phép truy cập không root? Tôi có một manh mối có thể thông qua các quy tắc udev, nhưng tôi không biết làm thế nào để làm điều đó.

quan sát. Nhà sản xuất và trình điều khiển "PROLIFIC"

Câu trả lời:


10

Có thể điều này có liên quan đến modemmanager , như chi tiết ở đây .

Tôi đã loại bỏ nó ( sudo apt-get remove modemmanager) và nó đã khắc phục vấn đề của tôi.

Bạn vẫn cần phải ở trong dialoutnhóm mặc dù.


1
Nếu tôi không thể xóa modemmanager thì sao? Tôi có một người bạn có modem 3G và có vẻ như anh ta không thể xóa modemmanager vì điều đó. Làm thế nào anh ta có thể truy cập / ttyUSB0 vào ngày 12.04 mà không cần root, nhưng không xóa modemmanager?
Leonardo Montenegro

Bạn có thể thử bằng cách dừng nó? sudo stop modemmanagerNó làm việc cho tôi.
Aleks

Đã vài năm, nhưng đây vẫn là trường hợp trong Ubuntu 17.10. Phải làm sudo apt-get purge modemmanagertrước sudo usermod -a -G dialout $USERcó hiệu quả mong muốn.
Stéphane

95

Thiết bị rất có thể được gắn vào nhóm người dùng dialout. Chỉ cần thêm người dùng của bạn vào nhóm quay số để bạn có quyền thích hợp trên thiết bị.

sudo usermod -a -G dialout $USER

(Bạn có thể cần phải đăng xuất và đăng nhập lại để nhóm mới có hiệu lực.)

Không cần phải loay hoay với các quyền hoặc quy tắc udev.


3
Tôi đăng nhập để upvote. Giải pháp sạch nhất.
yildirimyigit

1
@ tom-hennen Tôi đoán bạn nên thêm nó trước như một bình luận thay vì chỉnh sửa trực tiếp.
MadMike

2
Điều này không hoạt động đối với Debian
Mike

1
Kudos bao gồm "có thể cần phải đăng xuất và đăng nhập lại".
Rob Stoecklein

1
Trong Ubuntu (Tôi vào ngày 18.04), đăng xuất / đăng nhập không hoạt động. chúng ta phải khởi động lại sau khi thực hiện usermod.
Sujay Phadke

7
sudo adduser <the user you want to add> dialout
sudo reboot

Được đề cập bởi "Thử ngay" làm việc cho tôi. Kiểm tra xem bạn có dialoutnhóm như ttyUSB0sau không:

ls -l /dev/ttyUSB0

trong trường hợp của tôi, đầu ra là:

crw-rw---T 1 root dialout 188, 0 Feb 12 12:01 /dev/ttyUSB0

trong Linux Mint 18 Cinnamon tôi nhận được lỗi này khi gọi 'ls -l / dev / ttyUSB0' ls: không thể truy cập '/ dev / ttyUSB0': Không có tập tin hoặc thư mục
flyingdrifter

2

Điều này làm việc cho tôi. Chỉ cần nhấn Ctrl+ Alt+ Ttrên bàn phím để mở Terminal. Khi nó mở ra, chạy lệnh bên dưới.

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

Thử ngay bây giờ.


2

Theo báo cáo của Rinzwind , hãy bắt đầu bằng cách gõ:

sudo usermod -a -G dialout $USER

Nhưng đó chỉ là một phần của giải pháp, vì sau đó bạn phải khởi động lại hệ thống:

sudo reboot

6
1) Xin vui lòng không gửi bình luận như câu trả lời. 2) Không cần khởi động lại; chỉ cần đăng xuất và đăng nhập lại.
gertvdijk

Tôi đã phải khởi động lại để làm việc này. Một Logoff đã không tuyên truyền sự thay đổi.
dùng1182988

2

Tôi đã thử cả hai

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

sudo chmod 666 /dev/ttyUSB0 (đã làm việc nhưng phải gõ lại lệnh)

Tôi cũng đã gỡ bỏ trình quản lý chế độ nhưng không thực sự giúp ích. Vì vậy, lệnh tốt nhất làm việc cho tôi là

sudo usermod -a -G dialout $USER

0

Trên Ubuntu 18.04, tôi đã phải thêm mình vào nhóm tty.

Tôi đã được gợi ý bởi đầu ra lệnh 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

0

Trên Ubuntu 18.04:

  1. sudo adduser <user> dialout
  2. Khởi động lại đầy đủ , vì một số lý do chỉ đăng xuất / đăng nhập là không đủ ( báo cáo lỗi. ).

-1

Tôi gặp vấn đề này với / dev / ttyS0 trong Mint Rosa. Việc thêm người dùng vào nhóm quay số là bắt buộc nhưng trong trường hợp của tôi, quyền truy cập thiết bị bị hạn chế và tôi phải mở rộng nó để cấp quyền truy cập r / w cho cấp độ nhóm.


1
Chào mừng bạn đến hỏi Ubuntu! Tôi khuyên bạn nên chỉnh sửa câu trả lời này để mở rộng nó với các chi tiết cụ thể về cách thực hiện việc này. (Xem thêm Làm thế nào để tôi viết một câu trả lời hay? Để có lời khuyên chung về loại câu trả lời nào được coi là có giá trị nhất trên Hỏi Ubuntu.)
David Foerster

-4

điều hướng đến thư mục / etc / và chỉnh sửa tệp nhóm thêm tên người dùng của bạn như thế này dialout:x:20:USER

làm việc hoàn hảo cho tôi :)


4
Nói chung được coi là thực hành xấu để chỉnh sửa các tệp này trực tiếp vì một số lỗi đơn giản có thể gây mất quyền truy cập.
flickerfly
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.