在远程服务器上运行自动fsck

Modified on: Sat, 09 Nov 2019 13:00:02 +0800

我有另外一个关于df的问题,现在我得出结论我需要运行fsck我的分区,我一直在阅读它并希望得到一些建议,如果可能的话。

情况是这样的,没有对服务器的物理访问,我想运行fsck。

从我读到的我只需要touch /forcefsck,当我重新启动它将运行fsck。

我的问题是,在它的基础上,fsck将运行什么参数?是否需要用户输入来纠正错误等?

运行后会保存所发生事件的日志吗?

如果这是它如何运行它将是完美的,无论如何在重新启动时强制执行?

fsck -v -p /machine/disk/p1 2>&1 > fscklog.txt

另外这里他们描述了这个:

  对于像ubuntu这样的debian和debian-derivative来编辑远程服务器上的/ etc / default / rcS并设置“FSCKFIX = yes”也是一个好主意
  将“-y”添加到启动时间fsck,因此不会冒远程服务器等待某人在控制台登录并运行fsck的风险。

但是在似乎不存在的Centos上

此刻我只有ssh访问权限,这就是为什么我对它如此挑剔。

这里有关于服务器上磁盘和已装入卷的一些信息:http://pastebin.centos.org/33314

感谢。

最佳答案

好的,所以我在CentOS上发现你可以做到这一点:

touch /forcefsck
echo -n "-ys" > /fsckoptions

要记录fsck我必须走的更难的路线:
警告:这样做需要您自担风险,我不知道如果出现问题会产生什么影响

编辑/etc/rc.sysinit(不要忘记备份)以获得所需的行为:

从第500行(将-C更改为-V除去进度条)

if [ "$BOOTUP" = "color" ]; then
       fsckoptions="-C $fsckoptions"
else
       fsckoption="-V $fsckoptions"

第648行的

将运行fsck的块更改为:

outputtt="$(fsck -T -t noopts=_netdev -A $fsckoptions)"
mount -n -o remount,rw /
echo $outputtt > /var/log/fsckoutput
mount -n -o remount,ro /

一个小小的好处是它不会保存新的线条,但在可怕的时候它是可读的
感谢您的帮助。


相关问答

添加新评论