附加 echo 时“权限被拒绝”,但使用 vi

附加 echo 时“权限被拒绝”,但使用 vi

我有一个文件

-rw-rw-r-- 1 root mygroup 0 Sep 10 14:54 /etc/nginx/mygroup.txt

设置访问权限,以便该组mygroup具有该文件的读写权限。mygroup使用 进行编辑时,使用作品成员写入文件vi /etc/nginx/mygroup.txt。但是,当我尝试使用同一用户将文本附加到文件中时

echo "blaa" >> /etc/nginx/mygroup.txt

我明白了

-sh: 3: cannot create /etc/nginx/mygroup.txt: Permission denied

包含目录的目录权限是

drwxr-xr-x  6 root root    4096 Sep 10 16:07 nginx

用户可以列出目录的内容。

为什么会发生这种情况?如何在不使用文本编辑器的情况下从 bash 添加一行到文本文件?

根据评论提供的附加信息:

用户没有 sudo 权限。

这是重复的吗为什么 sudo 不能将 stdout 重定向到 /etc/file,但 sudo 'nano' 或 'cp' 可以??我不这么认为,因为跑步

printf "blaa" | tee /etc/nginx/

也生产

tee: /etc/nginx/whitelist-jutik.txt: Permission denied

此外,所有其他建议的重复问题都是针对具有 sudo 权限的用户,所以我认为这个问题不是其中任何一个的重复问题。

编辑:发现这个问题解决了这个问题:即使有写权限,组成员也无法写入

显然组权限并未完全生效。用户再次登录解决了问题,他可以使用 vi 和 echo 写入文件。

相关内容