在 FreeBSD 机器上自动执行 fsck(使用 init 1/init 5)?

Automated fsck (with init 1/init 5) on a FreeBSD machine?

我希望在我的 FreeBSD 服务器上自动执行 fsck。我知道如何执行此操作,但因为它是 运行 非常强大的命令,所以在将其设置为 运行.

之前我希望多关注它

第 1 步。Cron 作业。 我的 cron 看起来像这样:每个星期天下午 5 点从 0 17 * * 0 myfsckscript.sh > /usr/local/var/log/fscklog/$(date).log 到 运行。它将来自 root 的 crontab 运行,因为我正在做的事情需要 root 权限。

脚本是这样的:

init 1 # Run single-user mode, so fsck can run correctly
fsck -y # Run fsck
fsck -y # Run again, to clean up. Makes my machine act better
init 5 # bring it back up.

我的主要担忧如下:

很抱歉,这主要是一个确认问题,但以我的 sh 技能水平,如果没有更有经验的人先看一下,我不太愿意将其设置为 运行。

将这个添加到 /etc/rc.conf 怎么样:

fsck_y_enable="YES"
background_fsck="NO"

基本上,意味着 运行 fsck -y 并且不要尝试在后台 运行,因此根据您的磁盘大小,这可能需要一段时间才能完成。