编辑:执行摘要(下面的 --verbose 版本):由于电池寿命短,我需要一台机器在停电时快速关闭。有什么理由我不应该在临时驱动器上使用 'umount -f'(嵌入在电源故障情况脚本中),其 IO 正在阻止关闭,并且我不关心其数据是否工作已死反正?
来自新手 SysAdmin(长期 *nix 用户)的问题。
我最近设置了一个 CentOS 计算服务器,并让 apcupsd 与我的 UPS 通信,这样一旦我们断电它就会优雅地关闭(这就是我有钱的全部)。在我迫不及待地拔掉插头之前,当地的电力公司就开始对此进行测试(天哪!)。这为我提供了一些非常紧张的时刻,因为卸载文件系统需要 10 分钟左右的时间,在最终关闭之前将电池电量降至 12%。
花了这么长时间,因为我把机器塞满了繁重的 IO 作业,以准备更简单的测试,即发出“halt”命令以查看关闭需要多长时间。繁重的 IO 全部进入 RAID0 中专用驱动器上的暂存空间。如果工作结束了,我就不会关心这些驱动器上的内容了。我什至有能力在这样的失败后重新制作文件系统。如果电池在关机完成之前没电了,那么如果任何轻量级驱动器(主目录)损坏,那将是一件痛苦的事情。
也就是说,apcupsd 有一个地方供系统管理员插入一个 bash 脚本,该脚本在满足某些条件时执行。如果这种情况是电源故障,而且我真的不关心损坏临时数据以快速关闭,那么 'umount -f' 是我的朋友吗?
有什么我没有考虑的吗?在此之后我是否一定需要重新制作文件系统,或者只是删除驱动器上最肯定损坏的文件?