这是我在这里中找到的一种特定配置。
我有两个用户共享一个公用文件夹:
$ ls /home
> drwsrws--- root my-group ... common
> drwxr-xr-x diego diego ... diego
> drwxr-xr-x diego2 diego2 ... diego2公用文件夹属于组my-group,两个用户都已添加到该组中。
如果我使用用户diego登录,我可以在common文件夹中编写和编辑文件。
但是如果我使用的是diego2,我必须使用sudo来编写和编辑它。
我认为这与root是那个文件夹的所有者和diego是一个指定的根有关.它还存在吗?
我如何能够以diego2的形式在D10文件夹中编写和编辑文件?
FWIW:我之所以创建这样的配置,是为了能够登录到不同的桌面会话plasma和gnome,而不必共享所有设置。公共文件夹是我工作的地方(除了这是一个个人电脑,所以编码项目),并链接到相应的文件夹在其中的每一个。
发布于 2021-05-16 04:31:43
解决方案是确保文件夹common中的子文件夹都有my-group作为组。
对于现有子文件夹:
$ chown -R diego:my-group /home/common对于新的:
$ setguid g+sx /home/common/each-subfolder=D
发布于 2021-05-13 03:23:34
Linux忽略目录上的setuid,并使用setgid设置在其中创建的文件组。因此,当diego在common中创建一个文件时,它是用户diego和组my-group拥有的。但是,用户的umask确定创建的文件的初始权限是什么,默认情况是只授予所有者写权限。这意味着diego2将无法修改这些文件。
你的选择是:
0002,以便两个用户都创建可组可写文件,这将影响他们创建的所有文件。那可能不是你想做的事。或,common目录(以及其中的现有文件和目录)添加默认权限,允许diego和diego2向它们写入。(见这是L的回答.)https://askubuntu.com/questions/1337923
复制相似问题