为什么无法cat该文件?

为什么无法cat该文件?

我已使用 command 将 debian8 添加到 www-data 组中。

sudo usermod -G www-data  debian8

可以通过命令验证。

cat /etc/group |grep 'www-data'
www-data:x:33:debian8

所有权属性:

-rw-r--r-- 1 www-data www-data 418 Sep 25  2013 /var/www/html/wp/index.php

sudo ls  -al  /var/www/html/wp
total 200
drwxrwxr--  5 www-data www-data  4096 Jan  5 10:16 .
drwxrwxrwx  5 www-data www-data  4096 Jan  4 15:51 ..
-rw-r--r--  1 www-data www-data   418 Sep 25  2013 index.php

为什么debian8作为www-data组的成员不能cat它?

debian8@hwy:/var/www/html/wp$ cat index.php
cat: index.php: Permission denied

sudo getfacl /var/www/html/wp/index.php
getfacl: Removing leading '/' from absolute path names
# file: var/www/html/wp/index.php
# owner: www-data
# group: www-data
user::rw-
group::r--
other::r--

按照希梅尔说的做,注销然后登录,文件/var/www/html/wp/index.php可以被删除,为什么现在不能触摸新文件/var/www/html/wp/test.txt

touch  /var/www/html/wp/test.txt
touch: cannot touch ‘/var/www/html/wp/test.txt’: Permission denied

在此输入图像描述

奇怪的是

没问题

touch  /var/www/html/wp/test1.txt

没有权限

touch  /var/www/html/wp/test.txt

答案1

您错过了一个关键点,即触摸需要写入访问权限,因此在touch test.txt这种情况下具有权限 -rw-r--r-- 允许您读取但不能修改。因此,如果组缺少写权限,那么chmod g+w test.txt它会正常工作。您发现需要重新登录才能查看系统参数更改的效果。

答案2

我已经能够重现您的问题,关键是您已经创建了这样的文件“测试.txt“在您的文件夹中,包含所有者和组 'www-数据',因此,当您尝试使用touch已存在的文件创建并且您不是所有者时,您会“权限被拒绝”,但是您可以读取该文件,cat因为该文件具有其他用户的读取权限。

相关内容