I'm running e2fsk on a very large (1TB+) ext3 disk with
e2fsck -v /dev/sda1
from RIPLinux booted with PXE.
I get
e2fsck 1.41.6 (30-May-2009)
/dev/sda1 contains a file system with errors, check forced.
Pass 1: Checking inodes, blocks, and sizes
and then a very long pause...
How do I get some idea of activity?
Ideally a count of completed items vs total and some kind of ETA.
The
-C
flag will display a progress bar. Performance differences depending on how fsck is called.And very cool, if
e2fsck
is already running, you can send aUSR1
signal for it to start displaying a progress bar.USR2
to stop. Example:killall -USR1 e2fsck
From FSCK(8):
From E2FSCK(8):
from man page for version 1.41
so I guess the answer is
ps -ef | grep fsck
with the process ID,
kill -USR1 5079
Why?
BSD Systems and their descendants have SIGINFO signal. It makes programs to output their current status to the console. A lot of basic BSD tools know about this signal and support it. You can send this signal to a current process using Ctrl+T.
SysV systems have no such signal and no Ctrl+T too. Some of the Linux tools support SIGUSR1 instead. I know only about "dd" and "e2fsck" but there can be more. There is no Ctrl+? shortcut to send it, so you have to do it manually by using "kill -USR1" on the pid of the process.
Most other programs will react to SIGUSR1 the same way they react to SIGTERM (exit) so don't send this signal unless you know that it's supported.