跨计算机的闪存驱动器(ext4)权限问题

跨计算机的闪存驱动器(ext4)权限问题

我有一个 32GB 的闪存驱动器,格式为 ext4(我用它来存储比 fat32 格式允许的更大的文件),我用我的电脑设置了它,我是这台电脑的管理员和唯一用户。在这台电脑上,我拥有这个闪存驱动器并且可以使用它。

在另一台 Ubuntu 计算机上(我有管理权限但不是主用户),它安装在主用户下,我无法访问它。

我尝试将另一台计算机上的闪存驱动器的所有权更改为我的用户,但在我的计算机上,它归1001 - 用户 #1001

谁能告诉我为什么会这样,有什么办法可以解决这个问题?

任何帮助将不胜感激。

谢谢。

答案1

我已经解决了这个问题!(后很多研究)。请参阅下面的(相当长的)答案。

笔记:我相信该解决方案也适用于具有相同“怪癖”的 ntfs 文件系统。

问题:

这个问题与用户 ID群组 ID

ext4 文件系统由一个用户拥有,但其所有权由该用户的用户身份 或者用户ID而不是用户名。它通常也属于该用户的组,该组具有相同的 ID(组 ID 或,即如果 uid=1002 gid=1002)换句话说,如果用户 'A' 在一台计算机上拥有该文件系统并具有 uid 1001,则另一台计算机上的 uid 也为 1001 的用户 'E' 将自动拥有该文件系统。

Ubuntu 用户 ID 从 1000 开始,这意味着,由于我是我的计算机上的唯一用户,所以我的 uid 是 1000。然而,在另一台计算机上,我的 uid 是 1001。这就是它在该计算机的主用户下安装的原因。它正在同一个 uid 下安装。

解决方案:

如上所述,用户拥有的文件系统通常归其组所有。用户组可以包含多个用户,因此您可以将自己添加到拥有文件系统的组中。

您可以使用:

sudo adduser [user] [group]或者sudo usermod -a -G [group name] [user name]

(有关这些命令的更多信息,请参阅这个问题

将用户添加到现有用户组,授予他们访问该用户拥有的文件的权限。

将您的用户添加到组,确保所有者的组对文件系统具有完全访问权限,问题就解决了!

相关内容