挂载选项被忽略 - debian 11 bullseye on raspberry with ext. USB驱动器

挂载选项被忽略 - debian 11 bullseye on raspberry with ext. USB驱动器

我正在尝试使用 debian 11 bullseye 将外部 USB 驱动器安装到 raspberry pi 4b。到目前为止我尝试设置安装选项的任何内容都会被忽略。

/etc/fstab
UUID="9f32de87-6800-4585-a5c5-e6a3946ba2bb" /data ext4 defaults,nofail 0 0
UUID="9f32de87-6800-4585-a5c5-e6a3946ba2bb" /data ext4 rw,suid,dev,exec,auto,nouser,async,nofail 0 0
PARTUUID=20df08a4-01 /data ext4 rw,suid,dev,exec,auto,nouser,async,nofail 0 0
systemd mount unit
root@srv:/etc/systemd/system# cat data.mount 
[Unit]
Description=Mount /data with systemd

[Mount]
What=/dev/disk/by-uuid/9f32de87-6800-4585-a5c5-e6a3946ba2bb
Where=/data
Type=ext4
Options=rw,suid,dev,exec,auto,nouser,async,nofail

[Install]
WantedBy=multi-user.target
mount command

root@srv:~# mount -t ext4 -o rw,suid,dev,exec,auto,nouser,async,nofail /dev/sda1 /data

输出始终是:

root@srv:~# mount -l | grep data
/dev/sda1 on /data type ext4 (rw,relatime) [data]

我知道大多数选项都包含在 ext4 默认挂载选项中,但我尝试的其他选项也被完全忽略。

有任何提示如何执行此操作吗?我在这里缺少 USB 驱动器的任何限制吗?

谢谢

答案1

asyncsuiddev是安装exec的默认状态,因此只能显示ext4非默认选项(syncnosuidnodev/或)。noexec

autonouser主要影响命令mount本身,这些也是这些选项的默认状态。通常,如果/当执行时,将安装所有/etc/fstab未专门标记选项的条目;一旦安装了文件系统,/选项就已经实现了它的目的,因此内核没有理由跟踪它。noautomount -aautonoauto

如果user指定,该mount命令将必须跟踪谁安装了文件系统(/etc/mtab如果它是常规文件,则通常为常规文件;现在改为/run/mount/libmount),因为只有 root 或最初安装该文件系统的用户才被允许卸载它。但对于 Unix 来说nouser,默认的经典 Unix 行为“只有 root 可以挂载/卸载文件系统”占主导地位。

在您指定的所有这些选项中,nofail这是唯一的非默认选项,它也只影响安装过程,导致如果无法安装此文件系统,它不会报告错误。一旦文件系统成功挂载,内核就没有理由跟踪该选项的状态。

显式显示rw和选项的原因本质上是历史性的:显式显示/ state 是一种长期的实践,并强调了时间戳的处理并非严格按照经典 Unix 方式完成的事实。其他替代方案是(这可能会导致问题,例如检测您是否有未读电子邮件的经典方法),并且会强制执行经典的 Unix 行为(并导致大量不必要的小型写入操作,损害 SSD寿命并防止磁盘进入节能状态)。自内核版本 2.6.30 起一直是默认值。relatimerwrorelatimeatimerelatimenoatime/var/mailstrictatimerelatime

因此,您的挂载选项实际上并没有被忽略:您只是指定一组选项,这些选项本质上相当于挂载文件系统的默认方式。

答案2

要打印所有安装选项,请在安装安装点时执行以下操作:

grep '/data' /proc/mounts

对我来说,安装选项似乎没问题,只是检查它们的方法可能不正确。

相关内容