首頁 > 軟體

Linux系統入門教學:在 Linux 中永久修改 USB 裝置許可權

2020-06-16 17:51:15

提問:當我嘗試在 Linux 中執行 USB GPS 接收器時我遇到了下面來自 gpsd 的錯誤。

  1. gpsd[377]: gpsd:ERROR: read-only device open failed:Permission denied
  2. gpsd[377]: gpsd:ERROR:/dev/ttyUSB0: device activation failed.
  3. gpsd[377]: gpsd:ERROR: device open failed:Permission denied - retrying read-only

看上去 gpsd 沒有許可權存取 USB 裝置(/dev/ttyUSB0)。我該如何永久修改它在Linux上的許可權?

當你在執行一個會讀取或者寫入USB裝置的進程時,進程的使用者/組必須有許可權這麼做才行。當然你可以手動用chmod命令改變 USB 裝置的許可權,但是手動的許可權改變只是暫時的。USB 裝置會在下次重新啟動時恢復它的預設許可權。

作為一個永久的方式,你可以建立一個基於 udev 的 USB 許可權規則,它可以根據你的選擇分配任何許可權模式。下面是該如何做。

首先,你需要找出 USB 裝置的 vendorID 和 productID。使用lsusb命令。

  1. $ lsusb -vvv

上面lsusb的輸出中,找出你的 USB 裝置,並找出"idVendor"和"idProduct"欄位。本例中,我們的結果是idVendor (0x067b)idProduct (0x2303)

下面建立一個新的udev規則。

  1. $ sudovi/etc/udev/rules.d/50-myusb.rules

  1. SUBSYSTEMS=="usb", ATTRS{idVendor}=="067b", ATTRS{idProduct}=="2303", GROUP="users", MODE="0666"

用你自己的"idVendor"和"idProduct"來替換。MODE="0666"表示USB裝置的許可權。

現在重新啟動電腦並重新載入 udev 規則:

  1. $ sudo udevadm control --reload

接著驗證下 USB 裝置的許可權。


via: http://ask.xmodulo.com/change-usb-device-permission-linux.html

作者:Dan Nanni 譯者:geekpi 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出

本文永久更新連結地址http://www.linuxidc.com/Linux/2015-10/124388.htm


IT145.com E-mail:sddin#qq.com