Nos sistemas Linux modernos, o subsistema udev é responsável por enviar eventos para algum programa ou subsistema de nível mais alto que faz isso. Sua distro tem esse sistema, provavelmente HAL. Você poderia escrever uma regra do udev para fazer isso sozinho. Por exemplo, o seguinte atinge o que você deseja no contexto de adicionar e remover uma unidade de backup:
# Auto mount the USB backup drive we attach. Theoretically should be done from HAL.
ACTION=="add", ENV{ID_FS_LABEL_ENC}=="backups", PROGRAM="user_mount_backup.sh"
ACTION=="remove", ENV{ID_FS_LABEL_ENC}=="backups", PROGRAM="user_umount_backup.sh"
user_mount_backup.sh:
# Auto mount the USB backup drive we attach. Theoretically should be done from HAL.
#!/bin/bash
mnt_pt=/media/backups
[[ -d $mnt_pt ]] || mkdir $mnt_pt && mount -L backups $mnt_pt &
user_umount_backup.sh:
#!/bin/bash
mnt_pt=/media/backups
umount $mnt_pt && rmdir $mnt_pt &