我有两个 SSD,上面有 ext4 文件系统。当我将 sda1 安装到 /mnt/old-samsung-830 时,它会将 /mnt/old-samsung-830 目录的所有者和组从 root:root 更改为 jim:jim。但是,如果我卸载 sda1,并将 sdb1 安装到同一目录,则所有者和组仍为 root。我无法解释这种行为,希望有人解释为什么/如何发生这种情况。以下是示例:
### **Note the two disks are unmounted** ###
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 223.6G 0 disk
└─sda1 8:1 0 223.6G 0 part
sdb 8:16 0 238.5G 0 disk
└─sdb1 8:17 0 238.5G 0 part
### **Note the permissions of the old-samsung-830 directory ** ###
[jim@computer mnt]$ ls -al
total 16
drwxr-xr-x 4 root root 4096 Feb 2 19:14 .
drwxr-xr-x 17 root root 4096 Feb 2 13:03 ..
drwxr-xr-x 2 root root 4096 Feb 2 19:14 old-samsung-830
drwxr-xr-x 2 root root 4096 Feb 2 18:59 storage
### **Time to mount sda1. Notice the owner and group has changed to jim** ###
[jim@computer mnt]$ sudo mount /dev/sda1 old-samsung-830
[jim@computer mnt]$ ls -al
total 16
drwxr-xr-x 4 root root 4096 Feb 2 19:14 .
drwxr-xr-x 17 root root 4096 Feb 2 13:03 ..
drwxr-xr-x 17 jim jim 4096 Feb 2 19:00 old-samsung-830
drwxr-xr-x 2 root root 4096 Feb 2 18:59 storage
### **Time to unmount this, and try the other drive in the same directory** ###
[jim@computer mnt]$ sudo umount /dev/sda1
[jim@computer mnt]$ sudo mount /dev/sdb1 old-samsung-830
[jim@computer mnt]$ ls -al
total 16
drwxr-xr-x 4 root root 4096 Feb 2 19:14 .
drwxr-xr-x 17 root root 4096 Feb 2 13:03 ..
drwxr-xr-x 3 root root 4096 Feb 2 19:16 old-samsung-830
drwxr-xr-x 2 root root 4096 Feb 2 18:59 storage
[jim@computer mnt]$
这是非常新安装的 Ubuntu,而且我的 PC 上只有基本的东西(即没有花哨的 fstab 或 facl)。我只想有人解释一下,为什么当 sda1 挂载时,它会将文件夹的权限更改为 jim:jim,但当 sdb1 挂载在同一目录上时,它仍为 root。这怎么可能呢?
我最终希望挂载并使用 jim:jim(就像挂载 sda1 时一样)。但我不明白它是如何或为什么工作的。
答案1
它不会改变子目录的权限。
当你将文件系统挂载到挂载点时,原始挂载点将变得不可访问,其名称指的是已挂载的文件系统。因此,之后
sudo mount /dev/sda1 old-samsung-830
该名称./old-samsung-830
不再指您的子目录,而是指已挂载的文件系统。
就您而言,似乎其中一个文件系统由 拥有,jim:jim
而另一个由 拥有root:root
。这很正常。如果您不喜欢,您可以随时sudo chown -R
在已挂载的文件系统上这样做。
(最讨厌的事情:文件夹是 GUI 中显示的漂亮图片。文件系统中的结构是目录。虽然大多数文件夹确实与目录相对应,但情况并非总是如此;GUI 可以创建和管理与文件系统目录不对应的文件夹。)