如何在安装时设置 exFAT 驱动器的所有权?

如何在安装时设置 exFAT 驱动器的所有权?

关于这个话题有很多讨论,但我试过每一个答案/建议,但仍然没有成功。直到几周前,我的 mount 命令才按预期工作,这几乎让我认为这是某种错误。

我有一台 Raspberry Pi,运行 64 位操作系统:

Linux raspberrypi 5.15.61-v8+ #1579 SMP PREEMPT Fri Aug 26 11:16:44 BST 2022 aarch64

我已运行以下命令来安装所需的 exFAT 工具:

sudo apt-get install exfat-fuse exfat-utils

我已经使用以下命令初始化了挂载点:

sudo mkdir /mnt/fhpro

我希望的行为是驱动器能够被某个组的成员读取和写入。我知道在安装驱动器时我需要将驱动器的所有权设置为组,因为 exFAT 不允许特定于文件的权限。

我已运行以下命令来更改挂载点本身的所有权:

sudo chown myusername /mnt/fhpro
sudo chgrp groupname /mnt/fhpro

然后我使用以下命令安装驱动器:

sudo mount -t exfat /dev/sda1 /mnt/fhpro -o uid=1001,gid=1003,rw,fmask=0002,dmask=0002

其中10011003是所需用户和组的 ID。

该命令运行时没有错误,我可以查看驱动器的内容。但是,驱动器归用户pi和组所有,而不是设置的用户和组。当我运行时ls -l /mnt/fhpro,我看到以下输出:

total 8192
drwxr-xr-x 2 pi pi 131072 Jun 27 14:11 randomdir

此外,还ls /mnt -l显示挂载点本身也已将所有权转移给用户pi

此外,我无法写入目录,touch /mnt/fhpro/test.txt结果是:

touch: cannot touch '/mnt/fhpro/test.txt': Permission denied

我不知道这是怎么回事。我之前设置了类似的挂载命令/etc/fstab,驱动器总是会按预期设置所有权并挂载。现在,情况不再如此。

有任何想法吗?

编辑:

手册页mount.exfat 这里说:

uid=n 设置所有文件和目录的所有者。默认为当前进程的所有者。

我正在从我想要拥有驱动器内容的帐户运行此命令(即不是用户pi)。所以显然有些事情发生了。

答案1

我终于发现了问题所在。驱动器被自动安装到用户/media/pi/fhpro下的pi

卸载驱动器允许我使用指定的选项重新安装到所需的位置,从而实现预期的行为。

相关内容