UID 更改后,访问 USB/闪存盘的权限不足

UID 更改后,访问 USB/闪存盘的权限不足

自从更改了我的 uid 后,我不再有权限查看自动安装在 /media/USERNAME 上的 USB 硬盘/棒。

鹦鹉螺发出信息

无法打开 DRIVENAME 的文件夹

没有注册处理此文件的应用程序

如果我以 root 身份登录终端,我可以看到驱动器安装在正确的位置并可以访问文件。

有人知道我需要做什么才能让我的非 root 用户使用已安装的驱动器吗?

与系统上的其他用户一样,一切都按预期运行。

答案1

我通过卸载我插入的所有 USB 磁盘并删除 /media/username 目录解决了这个问题。

然后,当我再次插入 USB 时,目录会重新创建,一切正常。

答案2

在继续阅读之前,你可能需要参考一下文章,它解释了更改 UID 的过程,并提醒您注意如何为您的用户分配新的 UID正确的方式。

“请注意,只要您输入上述两个命令,位于用户主目录中的所有文件的文件 UID 都会自动更改。但是,用户主目录之外的文件需要手动更改。”

话虽如此。对于目录之外的任何文件,您的 UID 都不会自动更改/home/USER

为了重新获得对安装在用户/media/USER目录中的驱动器的访问权限,我再次建议您按照上述文章操作,以确保您正确更改了“/home/USER”内外所有文件的 UID,因此自然应该插入您的驱动器。

以下是上述文章中提供的代码:

要为名为 foo 的用户分配新的 UID,请输入:

# usermod -u NEWUIDHERE foo

要为名为 foo 的组分配新的 GID,请输入:

# groupmod -g NEWGIDHERE foo

要手动分别更改具有旧 GID 和 UID 的文件:(在您的主目录之外)

# find / -group NEWUIDHERE -exec chgrp -h foo {} \;
# find / -user NEWGIDHERE -exec chown -h foo {} \;

“-exec 命令对每个文件执行 chgrp 或 chmod 命令。传递给 chgrp/chmod 命令的 -h 选项会影响每个符号链接,而不是任何引用的文件。使用以下命令进行验证”

# ls -l /home/foo/
# id -u foo
# id -g foo
# grep foo /etc/passwd
# grep foo /etc/group

感谢 Vivek Gite 提供的这篇精彩文章!希望这对您有所帮助。

相关内容