在我的情况下,情况如下/media
:
$ ls -l /media | grep $USER
drwxr-x---+ 3 root root 4096 Jan 22 15:59 oli
基本上,这意味着只有root用户才能与目录进行交互。这对安全性很有用(一定会阻止其他用户看到,更不用说窃取/删除/更改数据了),但这并不是故事的结局。
您可能会在权限掩码的末尾注意到加号。这意味着正在使用ACL(访问控制列表)。这允许更细化的权限。
$ getfacl /media/$USER
getfacl: Removing leading '/' from absolute path names
# file: media/oli
# owner: root
# group: root
user::rwx
user:oli:r-x
group::---
mask::r-x
other::---
通过ACL,允许我的用户查看的内容/media/oli
。我仍然不允许编辑内容。
在现代台式机(Gnome和KDE)中进行安装的事情是udisks2
:
root 2882 0.3 0.0 195956 4048 ? Sl Jan16 30:35 /usr/lib/udisks/udisks-daemon
root 2887 0.0 0.0 47844 784 ? S Jan16 0:00 udisks-daemon: not polling any devices
root 3386 0.0 0.0 429148 6980 ? Sl Jan16 7:35 /usr/lib/udisks2/udisksd --no-debug
如您所见,它以root身份在此处运行,因此当有人通过DBUS访问它时,它能够在/ home / $ USER中创建挂载点并将其塞给您的用户,以便他们可以编辑内容。
这些都没有改变我最初说的话。我只是在解释它是如何工作的。这样可以有效地允许您桌面上的某些内容仅在root允许的地方进行写操作,以及如何在没有其他所有权限制的情况下允许用户读取该内容。
所有这些使它变成了一个对用户数据安全的环境,但同时也使用户很难与挂载结构混在一起。例如,除非他们具有root用户访问权限,否则他们无法删除安装点或将其重命名,这可能会导致问题。
编辑:刚刚发生在我身上的是,它还为管理员提供了一个为单个用户安装事物的好地方。默认情况下,权限有助于将此安装保持私有状态,并防止用户干预该安装。对于没有/media/$user/
目录的情况,默认情况似乎相当合理,需要root用户权限。