RFC: Disk Monitoring
jinty at web.de
Mon Mar 21 08:19:15 CST 2005
The disk monitoring wiki page  has been around a while with no signs
of life, so I thought I would give it a little push forward in my spare
This RFC deals with proposed changes to the smartmontools package
required to support Disk Monitoring graphical app. Guido Guenther, the
debian maintainer, and I have been talking and agree on the general way
to do this.
As said in the wiki page  there are 2 types of monitoring:
* Interactive monitoring: User provokes action through a graphical
tool to check the disk through smartctl. There is no need to change
smartmontools to support this, the graphical tool can be written
* non-Interactive monitoring: User is notified when the disk is
showing signs of dying. The infrastructure to support this is
detailed in the rest of the proposal.
The basic idea is to run smartd by default and have it, instead of
executing /bin/mail, execute a script runner which in turn executes the
scripts in an /etc/smart/all.d directory. Thus a package wishing
to be notified of disk problems, would drop a script in
/etc/smart/all.d. This could then, for example, send a dbus message.
In more detail, with specific actions/caveats necessary to reach this
Running smartd by default:
Currently this causes things like system hangs with some hardware. I
am not sure how much hardware is affected. This seems to be
something that is under development in the Debian upstream with the
solution to be a script which generates a safe /etc/smartd.conf.
A question for the list is whether it is better for this to be
debconf-configurable or just an Ubuntu specific patch?
smartd as non-root:
smartd runs as root. This also has implications for the permissions
with which the script runner runs.
This would be started by changing the default configuration smartd
to run a script runner (/usr/sbin/smartd-scripts ?) by default.
This, in turn, runs all scripts in /etc/smartd/all.d and pipes the
stdin to them. As smartd monitors the exit status of the script
runner, the script runner should monitor the exit status of the
sub-scripts. For obvious reasons these scripts should run and
Another question for the list is weather this has any use being
It's 10 minutes, 5 if you walk fast.
More information about the ubuntu-devel