non-standard exit codes in fsck
Package: ufsutils
Severity: normal
Hi!
It seems that exit codes in fsck.ufs don't follow the de-facto standard that
GNU/Linux fsck utils use. The main problem with this is that when exit code 2
should be used to tell init that the kernel should be rebooted, it isn't and the
kernel keeps running often causing crashes or fs corruption.
>From e2fsck(8):
The exit code returned by e2fsck is the sum of the following condi-
tions:
0 - No errors
1 - File system errors corrected
2 - File system errors corrected, system should
be rebooted
4 - File system errors left uncorrected
8 - Operational error
16 - Usage or syntax error
32 - E2fsck canceled by user request
128 - Shared library error
>From fsck.reiserfs(8):
EXIT CODES
reiserfsck uses the following exit codes:
0 - No errors.
1 - File system errors corrected.
2 - Reboot is needed.
4 - File system fatal errors left uncorrected,
reiserfsck --rebuild-tree needs to be launched.
6 - File system fixable errors left uncorrected,
reiserfsck --fix-fixable needs to be launched.
8 - Operational error.
16 - Usage or syntax error.
The least common denominator of these would be:
0 - No errors.
1 - File system errors corrected.
2 - Reboot is needed.
4 - File system fatal errors left uncorrected.
8 - Operational error.
16 - Usage or syntax error.
Out of which I think at least 0 (keep booting), 1 (maybe reboot?), 2 (reboot)
and 4 (switch to single) are critical.
--
Robert Millan
Reply to: