首页 > 解决方案 > linux共享文件夹权限异常

问题描述

所以,我有这个共享文件夹象征性地链接到“共享”。该文件夹与 2 个用户(bill 和 karen)相关联,他们都拥有“bill-karen”组的成员身份。问题是,我似乎无法从两个用户创建一个新文件,除非我运行一个新的 shellsu - [USER]

这对我来说似乎很奇怪,因为该文件夹归root:bill-karen所有,而该文件夹的权限是 2775 (-rwxrwsr-x)。这背后有什么原因吗?无论如何,我正在使用 ubuntu 20.04 LTS。

我如何配置共享文件夹:*请注意,我已经有用户账单

sudo adduser karen
sudo addgroup bill-karen
sudo usermod -aG bill-karen bill
sudo usermod -aG bill-karen karen
sudo mkdir /usr/local/share/shared_folder
sudo chown :bill-karen /usr/local/share/shared_folder
sudo chmod 2775 /usr/local/share/shared_folder
ln -s /usr/local/share/shared_folder /shared

然后我尝试创建一个新文件为 bill|karen:

cd /shared
> foo.txt

它说 bash: foo.txt: Permission denied

标签: linuxbashshellubuntuunix

解决方案


我创建了与您相同的设置,但无法重现您的问题。

我在一个空的 ubuntu 20.04 docker 容器中以 root 身份运行以下命令:

useradd bill
useradd karen
groupadd bill-karen
usermod -aG bill-karen bill
usermod -aG bill-karen karen
mkdir /shared
chown root:bill-karen /shared
chmod 2775 /shared
ln -s /shared /link_to_shared
su - bill

然后作为比尔,我能够运行这个:

cd /link_to_shared
touch created_by_bill
exit

以 karen 身份登录时:

su - karen

我也可以执行以下操作:

cd /link_to_shared
rm created_by_bill
touch created_by_karen
exit

我怀疑您的配置中的某些内容与您帖子中的描述不符。

也许您最近修改了组成员身份并且您当前打开的会话没有考虑到它?

尝试运行id命令以确保您的用户在预期的组中:

$ id
uid=1000(bill) gid=1000(bill) groups=1000(bill),1002(bill-karen)

推荐阅读