为什么不能在“ /etc/fstab.d/”中挂载读取文件?


24

我试图设置一个自动装入的卷,并注意到/etc/fstab.d/服务器上现在有一个卷。我在目录中创建了一个包含以下内容的新文件:

# backupstore: large volume
/dev/mapper/bagend-backupstore  /mnt/backupstore        ext4    auto,relatime,users,sync        0       0

但是当我运行时,mount -a该卷未安装。另外,当我运行mount /mnt/backupstore或被/dev/mapper/bagend-backupstore告知系统无法在fstab中找到该条目时(并且要先占:是的,设备和挂载点是正确的-我可以使用轻松地挂载它mount -t ext4 /dev/mapper/bagend-backupstore /mnt/backupstore

当我从中删除文件/etc/fstab.d/并将条目放入主/etc/fstab文件时,安装卷没有问题。

因此,是否可以通过mount命令检查其中的条目/etc/fstab.d/,如果是,我该怎么做才能使它发生?

Answers:


20
  • /bin/mount 还无法读取 /etc/fstab.d,只有库(libmount)可以读取
  • 这是一个已知的“愿望清单”虫util的Linux的,它提供了包mount
  • 该功能已在最新的util-linux 2.21中添加(发行说明说“使用scandir *的过滤器arg拾取/etc/fstab.d/*.fstab文件”)
  • 由于甚至Debian Unstable(Sid)都在util-linux的 2.20-x版上,我怀疑在Ubuntu 13.04之前是否会看到2.21。
  • 如果您更快地需要它,则可以从kernel.org源代码中编译2.21 ,但是我建议您等待,直到它至少进入Debian(util-linux还提供了许多其他关键系统实用程序/库) )

作为更新,Ubuntu 13.04仍在使用util-linux的2.20.1版本。
布莱尔

2
作为更新,Ubuntu 14.04仍在使用util-linux 2.20.1版本
Philip Couling 2014年

2
Ubuntu 14.10具有util-linux 2.25。但是我不认为Ubuntu的mountall支持/etc/fstab.d,所以不要指望它们会在启动时自动挂载。
Marius Gedminas 2014年

1
Ubuntu 16.04的状态如何?
becko

11

/etc/fstab.d经过上游讨论后,该支持已从mount(8)恢复。mount选项卡目录仅受libmount支持。fstab.d默认情况下,不打算在mount(8)中支持它。

问题在于,这/etc/fstab实际上是许多地方(libc,systemd,UI程序等)使用的标准,并且不希望所有地方都可以更改为支持fstab.d

无论如何,您可以使用util-linux> = 2.21中的 mount(8)和新选项--fstab <path>来指定备用安装表,该选项还支持目录。这意味着您必须明确指定目录-默认情况下mount(8)不会读取它。有关更多详细信息,请参见mount(8)手册页


libmount可能已取代getfsent并将确切的文件作为实现的详细信息。或getfsent可能已更新。哦,总有Augeas。
东武2013年
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.