원시 블록 장치 파일에 대한 전체 읽기/쓰기 권한을 설정하고 싶습니다(예, 알고 있습니다). 권한을 666으로 설정할 수 있는데, 만지거나 쓰자 마자 660으로 돌아갑니다. 왜?
[root@mysystem udev]# ll /dev/sdz6
brw-rw-rw-. 1 root disk 65, 150 Aug 30 12:09 /dev/sdz6
[root@mysystem udev]# touch /dev/sdz6
[root@mysystem udev]# ll /dev/sdz6
brw-rw----. 1 root disk 65, 150 Aug 30 13:58 /dev/sdz6
[root@mysystem udev]# chmod 666 /dev/sdz6
[root@mysystem udev]# ll /dev/sdz6
brw-rw-rw-. 1 root disk 65, 150 Aug 30 13:58 /dev/sdz6
[root@mysystem udev]#
/var/log/messages, /var/log/dmesg 또는 /var/log/secure에 아무것도 표시되지 않습니다. SELinux( )를 껐습니다 setenforce 0
.
편집하다- 이 문제를 해결하기 위해 제가 작성한 스크립트는 다음과 같습니다.
[root@mysystem rules.d]# cat /etc/udev/rules.d/99-drives.rules
KERNEL=="sd*", SUBSYSTEM=="block", MODE="0666"
[root@mysystem rules.d]# udevadm info -q path -n /dev/sdz
/devices/pci0000:80/0000:80:03.0/0000:8b:00.0/0000:8c:01.0/0000:8e:00.0/host19/rport-19:0-2/target19:0:2/19:0:2:12/block/sdz
[root@mysystem rules.d]# udevadm test /devices/pci0000:80/0000:80:03.0/0000:8b:00.0/0000:8c:01.0/0000:8e:00.0/host19/rport-19:0-2/target19:0:2/19:0:2:12/block/sdz 2>&1 | grep '99-drives'
parse_file: reading '/etc/udev/rules.d/99-drives.rules' as rules file
udev_rules_apply_to_event: MODE 0666 /etc/udev/rules.d/99-drives.rules:1
답변1
udev에서 수동으로 권한을 설정하는 것은 거의 작동하지 않습니다. 문제의 장치에 대해 /etc/udev 설정 "MODE=0666"에 규칙을 추가하는 것을 실제로 고려해야 합니다. 이로 인해 시스템이 이런 식으로 생성됩니다.
(댓글 토론을 기반으로 추가됨)