/etc/fstab 出现错误时跳过

/etc/fstab 出现错误时跳过

我可以设置 /etc/fstab 并将其选项设置为 auto,以便在挂载失败时跳过吗?

手册上说,如果 options=auto 的条目失败,它将会中断启动过程。

如果没有自动,它就不会在启动时自动安装设备。

那么如何让自动输入在失败时被忽略呢?

答案1

我在 Ubuntu VM 中创建了一个名为 的分区/dev/sdb1。但我没有为该分区创建文件系统,因此它当然不会被挂载。

然后将以下条目输入其中fstab

/dev/sdb1   /mnt/       auto    defaults,nobootwait     0   2

并重新启动虚拟机。服务器重新启动并显示以下错误消息syslog

suku@ubuntu-vm:~$ grep sdb1 /var/log/syslog
Jan 11 16:32:58 ubuntu-vm kernel: [    2.263540]  sdb: sdb1
Jan 11 16:32:59 ubuntu-vm kernel: [    4.403527] EXT3-fs (sdb1): error: can't find ext3 filesystem on dev sdb1.
Jan 11 16:32:59 ubuntu-vm kernel: [    4.410341] EXT4-fs (sdb1): VFS: Can't find ext4 filesystem
Jan 11 16:32:59 ubuntu-vm kernel: [    4.413978] FAT-fs (sdb1): bogus number of reserved sectors
Jan 11 16:32:59 ubuntu-vm kernel: [    4.414073] FAT-fs (sdb1): Can't find a valid FAT filesystem

什么是nobootwait

nobootwait可以应用于非远程文件系统,以明确指示mountall(8)不要为其阻止启动。

答案2

也许编写一个脚本在启动后挂载某些东西会更好?例如,将字符串放入noautotofstab并通过以下方式挂载它rc.local

答案3

对于某些风格nobootwait和文件系统来说xfs不起作用

下面使用 UUID

UUID=718ef17e-5502-4a74-81fe-930d21f5507d /data xfs rw,noquota,nofail  0 2

答案4

nofail坐骑不会阻止系统在故障时启动

nobootwait曾是一个暴发户特定选项,以防止新贵等待设备。

请注意,由于systemd(Ubuntu 上 upstart 的替代品,以及大多数使用它的发行版)异步挂载 fstab 条目,nofail这就足够了。

/dev/sdb1   /mnt/       auto    nofail     0   2

在上面的例子中,auto表示将自动检测文件系统类型。它可以替换为ext4btrfsvfat例如。

相关内容