Permissions
符號連結上的 udev GROUP 和 MODE 分配無效
我正在嘗試通過 USB 將我的 veleman k8055 板連接到我的電腦。為此,我有 udev 規則
SUBSYSTEM !="usb_device", ACTION !="add", GOTO="velleman_rules_end" ATTRS{idVendor}=="10cf", ATTRS{idProduct}=="5500", MODE="0660", GROUP="k8055", SYMLINK+="k8055_0" ATTRS{idVendor}=="10cf", ATTRS{idProduct}=="5501", MODE="0660", GROUP="k8055", SYMLINK+="k8055_1" ATTRS{idVendor}=="10cf", ATTRS{idProduct}=="5502", MODE="0660", GROUP="k8055", SYMLINK+="k8055_2" ATTRS{idVendor}=="10cf", ATTRS{idProduct}=="5503", MODE="0660", GROUP="k8055", SYMLINK+="k8055_3" LABEL="velleman_rules_end"
插入電路板後,我什至得到了 k8055_0 符號連結,但它的權限是 root:root。
但我希望來自組 k8055 的使用者可以訪問此連結(這在 root:root 權限下是不可能的)。
GROUP 和 MODE 確實有效果。它們影響設備節點,而不是符號連結。
Linux 不支持符號連結的權限。所有符號連結都是世界可讀的,不能寫入(只能被新連結覆蓋)。因此,符號連結是否屬於 root 並不重要:其他使用者無論如何都可以訪問它。
由於設備節點具有您指定的組和權限,因此您將獲得所需的訪問控制。組中的使用者
k8055
可以訪問設備(通過符號連結或直接);該組之外的使用者可以看到符號連結指向的位置,但無法訪問該設備。