启动后挂载文件系统以避免 sshd 的 fsck 延迟

启动后挂载文件系统以避免 sshd 的 fsck 延迟

我正在尝试优化整体停机时间并提高系统故障时的可用性。

我特别担心重新启动(例如在内核恐慌之后)花费的时间太长,以至于我实际上不知道系统是否正常,因为我没有特定服务器的串行控制台。

在 OpenBSD 中启动后立即安装所有非必要文件系统(而不是之前)的正确方法是什么sshd

我有大约两打文件系统,我想的是,也许只有最重要的文件系统应该fsck首先被编辑和安装,然后sshd启动,然后所有其余的文件系统fsck随后立即被编辑和安装。

做类似事情的最佳实践是什么?

答案1

编辑/etc/fstab文件,以便为要延迟安装的文件系统的第四个字段设置选项noauto

然后,您可以设置一个脚本,您可以手动运行该脚本,也可以在 rc 脚本中设置该脚本以在 SSH 启动后运行,以进行 fsck 并挂载其余文件系统。

通过阅读 OpenBSD /etc/fstab 的手册页,您可能还希望将第六个字段设置为 0 以停止对相关文件系统的任何 fsck。这取决于您是否要手动对它们进行 fsck。

答案2

相信在 fstab 条目中添加 nobootwait 是可行的,但 openbsd 可能无法实现这一点。 mountalll 与 Upstart 一起使用,可以。我想 systemd 也是如此。

答案3

删除/注释/etc/fstab您希望在引导时避免自动安装的条目。然后/etc/rc.local以完整的安装命令格式在文件中创建一个条目

答案4

如果可能的话,将它们安装为只读,但这fsck不是必需的。

但你确实需要更具体(你在谈论什么分区?我们只是猜测,没有fstab)并且特别要理解事情发生是有原因的。例如sshd已打开/usr且您的用户个人资料已打开/home。假设这些是单独的分区,sshd如果两个文件系统都是脏的,那么开始的意义何在?

你的问题不是什么时候检查这些分区,它是多久他们需要接受检查。有一些选项可以使这些检查更快:更改 inode 的密度 ( newfs -i)、标记/usr为只读(mount -uw如果需要,例如在安装软件包时)以及将非常大的分区拆分为较小的分区,等等...

相关内容