问题:
我需要授予/var/log
用户文件创建、读取、写入和删除的权限绑定仅。
我该怎么做才能做到这一点,而不允许每个人读写和删除?
答案1
没关系,我自己找到了答案:
对于标准 Unix 权限来说这是不可能的。
然而,这并不意味着在 Linux 上不可能实现。http://www.yolinux.com/TUTORIALS/LinuxTutorialManagingGroups.html:
访问控制列表 (ACL) 适用于文件和目录。ACL 行为由 IEEE 的 POSIX 1003.1e 草案定义,支持信号、TCP/IP 端口(1024 以下)、原始套接字等的控制/访问。ACL 是对标准 Unix 文件权限 (r、w、x、-) 的补充,适用于用户、组和其他人员的读取、写入、执行和拒绝权限。ACL 为用户和管理员提供了灵活性,并直接对谁可以读取、写入和执行文件进行细粒度控制。
并进一步:
Linux 2.6 内核(从 Fedora Core 2 开始)支持 EXT2、EXT3、XFS、JFS 和 ReiserFS 文件系统的 ACL。
来自http://www.linux-tutorial.info/modules.php?name=ManPage&sec=1&manpage=setfacl
setfacl -m u:bind:rw /var/log/DESIRED_FILENAME_HERE
此外,现代 Linux 正在使用 ext4。
因此请注意:
http://www.linuxquestions.org/questions/linux-general-1/how-to-enable-acl-support-on-ext4-915306/
您需要重新挂载挂载点——在此特定情况下,是根/文件系统,而不仅仅是所需的目录。换句话说,尝试
sudo mount -o remount,acl /
将来,将 /etc/fstab 中的行更改为
UUID=66eeee3e-b860-41b0-abf7-074c0e08420e / ext4 relatime,acl,errors=remount-ro 0 1