如何记住外部驱动器的文件所有者和组?


14

我用ext4分区格式化了外部硬盘驱动器,然后挂载了它。为了能够使用新分区,我做到了:sudo chown me:me /mount/directory将文件所有者和组从root更改为我,这很好用。

此更改是持久的,因此我想知道此信息存储在何处。如果我拆下硬盘驱动器然后将其挂载到其他目录,则仍将其设置为文件所有者和组,因此信息无法存储在挂载目录的inode中。

那么整个分区是否都有自己的inode来存储此类信息,如果可以的话,有没有办法查看它?还是在其他地方存储信息?

Answers:


19

就外部驱动器和内部驱动器上存储的文件系统而言,没有什么区别。文件系统根目录的所有者和组存储在其根目录中,与根文件系统的所有者和组的存储方式相同。

这样做的必然结果是,由于UID和GID仅以数字方式存储,因此,如果将外部驱动器安装在具有的不同用户的系统上/etc/passwd,则会看到所有者和组已更改为UID和GID映射到的任何内容。其他系统。(例如,如果您的系统用户me是UID 1000,并且将驱动器安装在UID 1000所在的系统上rms,则会看到目录归拥有rms。)

另一方面,如果您使用的文件系统不存储UID / GID信息(例如FAT),则文件系统上每个文件的UID / GID都将从您为mount命令提供的参数中获取(直接或通过/etc/fstab)。

第二个推论是,/mount/directory根文件系统上的所有者或权限没有关系。将文件系统安装到那里后,该文件系统的权限就很重要。这就是为什么我喜欢chmod a-rwx /mount/directory挂载文件系统之前的原因。它可以防止我意外地/mount/directory在文件系统未挂载时写入。


1
从前,Solaris 1.x出现了一个错误,即安装点的所有权被过滤掉了。症状是用户尝试访问文件系统时遇到权限错误,但是您看不到任何不正确的权限,因为ls在已挂载的文件系统中显示了权限。
Barmar 2014年

我没想到的chmod技术是+1-除了正确之外。
2014年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.