我对这个 Linux 操作系统还比较陌生。我不熟悉命令代码或它代表什么。我想问的是,我有一个 750GB 的 SSD,它被划分为 4 个 ext4 驱动器。一个用于娱乐,一个用于我妻子的存储,一个用于我的存储,一个用于游戏。它们分别被命名为“娱乐”,Bethy 的驱动器,Ed 的驱动器和游戏/额外。我想要实现的是允许我妻子的帐户(用户名 bethy)访问她的驱动器并执行所有操作,并且还能够将内容保存到娱乐中。我将拥有对游戏/额外和 Ed 的驱动器的唯一权限。我通过直接从桌面格式化驱动器授予自己所有者权限,因为在 GPARTED 中格式化只授予 root 权限,因此我无法访问它们。修复该问题后,我尝试尝试向用户 bethy 授予上述两个驱动器的权限,但我得到了两个限制之一。
如果驱动器被卸载,它会要求我输入密码作为超级用户的身份验证。
如果驱动器已安装,它甚至根本无法打开,并且完全没有任何反应。
有人能帮我理解一下我需要做什么才能将用户 bethy 限制在两个特定驱动器上吗?我最好将对主计算机驱动器的访问权限也限制为只有我自己,但我无法编辑这些权限,甚至我自己也无法编辑,更不用说其他用户了。
答案1
首先,你需要通过编辑使驱动器在启动时挂载/etc/fstab
。请参阅:
https://help.ubuntu.com/community/Fstab
修改 fstab 并重新启动后,所有驱动器都安装在正确的位置,您就可以设置权限。
您需要将 Bethy 驱动器的所有者更改为她。假设驱动器已安装,/media/Bethy
您可以通过在终端中运行以下命令来执行此操作。
sudo chown bethy:bethy /media/Bethy -R
这会将用户和组更改为 bethy。(如果您需要访问她的文件,则应将自己添加到她的组中。请参见下文。)
因此,您自己的分区归您所有,并且组也应该是您。假设您的所有驱动器都已安装,/media
您可以运行:
ls -al /media/
这应该以以下形式列出驱动器
drwxrwxr-x 2 julian agroup 4096 Jun 1 22:44 SomeName
这告诉我们目录“SomeName”(可能是已安装的驱动器,因为它们只是作为目录安装)归 julian 所有,并拥有组“agroup”。第一个块告诉我们一些权限信息,第一个字母告诉我们它是一个目录;接下来的 3 个是所有者的读取、写入、执行权限;接下来的 3 个是组的读取、写入、执行权限;最后 3 个是任何其他用户的读取、写入、执行权限。
对于每个驱动器,您需要确保其他权限已关闭。例如,对于 bethy 驱动器,您可以运行此命令 chmod -R o-rwx /media/bethy
这将以递归方式删除所有不属于 bethy 或不属于 bethy 组的用户对 bethy 中所有文件的读、写和执行权限。
对于您希望只有您自己才能访问的驱动器,您应该确保您的帐户是用户和组。并且使用chmod
上述方法删除其他权限。
为了娱乐,你想创建一个你和 Bethy 都加入的娱乐小组。为此,请运行以下 3 个命令(我假设你的用户名是 ed)
sudo groupadd entertain
sudo usermod -a -G entertain ed
sudo usermod -a -G entertain bethy
因此,假设娱乐分区已安装,/media/Entertainment
您可以运行:
sudo chown ed:entertain /media/Entertainment -R
最好再次使用chmod
以删除其他权限。
现在我们希望添加到此目录的任何文件都继承该组,因此我们使用 setgid
sudo chmod g+s /media/Entertainment
最后,我们需要编辑新文件获取文件权限的方式,以便关闭“其他”权限。为此,请编辑文件,/etc/login.defs
找到以 开头的行umask
,然后将后面的数字(可能是022
)替换为027
。
我认为您需要再次登录并退出才能更新您的权限。
我想,那应该让你做好了摇滚的准备了。