中断 fsck 有多危险?
有人有直接做过这样的事吗?
答案1
我没有任何直接的知识或证据,但对我来说,这只是简单的邪恶的不处理SIGINT
。
嗯。实际上,我可以提供一些保证:strings /sbin/fsck | grep sig
报告:
sigaction
Warning... %s for device %s exited with signal %d.
因此,我只是将此作为轶事证据,证明fsck
开发人员正在调用 sigaction 来处理相关信号。
答案2
如果您按下 Control+C 并等待它停止,则应该不会遇到任何问题。
问题总是发生在它卡住并且无法停止的时候,因为你不确定它在做什么。通常此时你会遭受严重的数据丢失。
祝你好运。
答案3
这一切都取决于情况。
例如,Ubuntu(自 Hardy Heron 以来)有一个用户选项,如果在启动期间出现常规磁盘检查,则可以中断(并推迟)常规磁盘检查。如果我需要快速启动,我会对 ext3 分区使用此功能(请参阅http://brainstorm.ubuntu.com/idea/11/。
我个人不会在脏卸载后中断 fsck,也不会有任何理由认为文件系统可能受到损害:尤其是因为我不想将新数据保存到这样的文件系统并可能将这些数据置于风险之中以及对现有数据或元数据造成进一步的损害。
答案4
fsck
(至少e2fsck
)可以处理被 Ctrl-c 中断的情况。
根据克里斯和安德斯的回答,以下是我运行时的输出sudo e2fsck -ccktv -C 0 /dev/sda1
,我意识到它将花费一周时间才能运行,因此取消了它:
Interrupted at block 6030528
Interrupt caught, cleaning up
data01: Updating bad block inode.
data01: ***** FILE SYSTEM WAS MODIFIED *****
显然,fsck 有处理中断并正常退出的代码。