正在挂载 NTFS 分区:旧的 fstab 已缓存?

正在挂载 NTFS 分区:旧的 fstab 已缓存?

Ubuntu 22.04,与 Windows 10 双启动,使用共享 NTFS 驱动器进行数据存储。使用 Dolphin 作为我的默认文件管理器。

经过漫长的摸索,我对共享分区的挂载选项进行了精细的调整(原因超出了本文的讨论范围),最终手动设置了 NTFS 分区的挂载配置(/dev/sda2/etc/fstab(auto带有启动时自动挂载的选项)。

从默认的“库存”挂载程序切换到自定义挂载程序后,我注意到 Dolphin 已停止显示共享 NTFS 分区内的文件夹预览。快速搜索后,我找到了解决该问题的简单方法:用ntfs-3g原生挂载程序替换基于 FUSE 的挂载程序ntfs3。这种方法有效(nls=utf8从我的fstab条目中删除后),经过热卸载/挂载序列后,我在 Dolphin 中恢复了文件夹预览。

但是,重新启动后,我再次丢失了文件夹预览。卸载并重新安装可以解决问题,这引出了以下问题:

  • 启动/启动安装程序是否被缓存?
  • 我的 NTFS 分区的启动挂载是否仍在使用ntfs-3g
  • 我如何强制启动挂载遵守fstab配置?

我的fstab台词:

UUID=xyz /media/me/DATA ntfs3 rw,auto,users,exec,umask=000,dmask=027,fmask=137,gid=1000,uid=1000,windows_names 0 0

答案1

好吧,经过进一步的挖掘和运气,我想我已经找到了答案!问题是(我已经从原始帖子中省略了这些信息,因为我已经完全忘记了它),在执行此路线之前,我曾尝试使用服务单元(放置在中)fstab设置共享 NTFS 分区的自动挂载。由于存在链接和书签,我试图“替换”自动挂载程序配置而不更改挂载点。现在我的单元有以下指令:systemd/etc/systemd/system/systemd

[Unit]
Description=Mount DATA

[Mount]
What=/dev/sda2
Where=/media/me/DATA
Type=ntfs
Options=defaults

[Install]
WantedBy=multi-user.target

并且服务的文件名符合要求:media-me-DATA.mount

在最初摆弄该选项后,我决定放弃尝试,fstab改为直接尝试。我禁用了该服务 ( systemctl disable media-me-DATA.mount),但文件仍挂在/etc/systemd/system目录中。

快进到fstab安装,我使用了与上述服务相同的安装点,经过合理的推断,自动挂载程序似乎systemd通过在后台创建一个“即时”服务来完成,显然发生了冲突。当自动挂载程序检测到具有正确名称的现有服务单元时,它会启用并激活它,而不是使用来自的配置创建一个新的服务单元fstab。并且由于现有服务配置为使用,冲突导致分区通过而不是defaults自动挂载。ntfs-3gntfs3

因此,无需牺牲挂载点的修复方法是简单地media-me-DATA.mount从中删除“挂起”文件/etc/systemd/system,现在一切正常。启动自动挂载现在遵循fstab配置并通过 进行挂载ntfs3,并且 Dolphin 在启动时显示共享 NTFS 分区的文件夹预览。

相关内容