Permissions
權限被拒絕 /dev/bus/usb/
儘管顯然具有正確的權限,但我對“權限被拒絕”感到困惑
/dev/bus/usb/005/017
。這類似於這個問題,但我已經嘗試重新啟動我的 ssh 會話。
$ sudo ls -la /dev/bus/usb/005/ total 0 drw-rw-rw- 2 root root 120 Dec 25 12:40 . drw-rw-rw- 7 root root 140 Apr 20 2010 .. crw-rw-rw- 1 root root 189, 512 Dec 25 12:20 001 crw-rw-rw- 1 root root 189, 515 Dec 25 12:20 004 crw-rw-rw- 1 root root 189, 516 Dec 25 12:20 005 crw-rw-rw- 1 root adb 189, 528 Dec 25 12:40 017 #adb group, g+rw $ groups ealfonso ealfonso : ealfonso cdrom floppy audio dip video plugdev netdev scanner bluetooth adb # I am in adb group $ ls -la /dev/bus/usb/005/017 ls: cannot access /dev/bus/usb/005/017: Permission denied $ sudo chown ealfonso:ealfonso /dev/bus/usb/005/017 $ sudo ls -l /dev/bus/usb/005/017 crw-rw-rw- 1 ealfonso ealfonso 189, 528 Dec 25 12:40 /dev/bus/usb/005/017 #owned by ealfonso $ ls /dev/bus/usb/005/017 ls: cannot access /dev/bus/usb/005/017: Permission denied
我錯過了什麼?
編輯:根據要求添加 ls -ld 的輸出:
$ sudo ls -lad /dev/bus/usb/005 drw-rw-rw- 2 root root 120 Dec 25 12:40 /dev/bus/usb/005 #missing a+x $ sudo chmod a+x /dev/bus/usb/005 # add a+x $ ls -la /dev/bus/usb/005/017 # still denied ls: cannot access /dev/bus/usb/005/017: Permission denied $ sudo ls -lad /dev/bus/usb/005 drwxrwxrwx 2 root ealfonso 120 Dec 25 12:40 /dev/bus/usb/005
編輯。正如評論中指出的那樣,/dev/bus/usb 也缺少 x 權限
$ ls /dev/bus/usb -l ls: cannot access /dev/bus/usb/005: Permission denied ls: cannot access /dev/bus/usb/004: Permission denied ls: cannot access /dev/bus/usb/003: Permission denied ls: cannot access /dev/bus/usb/002: Permission denied ls: cannot access /dev/bus/usb/001: Permission denied total 0 d????????? ? ? ? ? ? 001 d????????? ? ? ? ? ? 002 d????????? ? ? ? ? ? 003 d????????? ? ? ? ? ? 004 d????????? ? ? ? ? ? 005 $ sudo ls /dev/bus/usb -l total 0 drw-rw-rw- 2 root root 60 Apr 20 2010 001 drw-rw-rw- 2 root root 80 Apr 20 2010 002 drw-rw-rw- 2 root root 60 Apr 20 2010 003 drw-rw-rw- 2 root root 60 Apr 20 2010 004 drwxrwxrwx 2 root ealfonso 120 Dec 25 12:40 005 $ sudo chmod a+x /dev/bus/usb $ ls -la /dev/bus/usb/005/017 crw-rw-rw- 1 root ealfonso 189, 528 Dec 25 13:43 /dev/bus/usb/005/017
這是您的輸出的一部分:
ls -la /dev/bus/usb/005/017 ls: cannot access /dev/bus/usb/005/017: Permission denied
提示:您始終可以
stat
訪問一個文件(通過包含它的目錄),即使您沒有權限訪問它。所以有了這個,我懷疑你的問題實際上並不在於/dev/bus/usb/005/017
它本身。為了能夠訪問該文件,需要對路徑名中的所有目錄
stat
進行x
(執行)訪問。那是,/ /dev /dev/bus /dev/bus/usb /dev/bus/usb/005
這些目錄中的一個或多個必須缺少
x
權限。但可能不是/
,或者/dev
如果問題出在那兒,您的系統可能無法使用。請注意,任何或所有這些目錄都可能具有r
訪問權限,使您可以查看它們包含的文件,但無法獲取這些文件。為什麼你
/dev/bus/usb/005
和/dev/bus/usb
錯過的x
許可?這些目錄將在
udev
首次創建設備節點及其父目錄時創建。也許umask
udev 守護程序上的太嚴格了?我不確定為什麼會出現在您的系統上。為了正確操作,umask 中的八進制數字都不應該是奇數。請注意,問題可能出udevd
在 initramfs 中的早期引導時啟動。