Description of problem: Thanks to Ion Alberdi <ialberdi> for pointing this out. The umount command does not work with all device types, as it is being deprecated, according to the umount man page. So if you are using, for example, CLVMD block devices and one of these is used in an fs service, that service will fail to stop. The reason the service fails to stop is umount won't work with this type of device: [root@link-11 cluster]# mount | grep VG3 /dev/VG3/LV3 on /mnt/gfs3 type ext3 (rw) [root@link-11 cluster]# umount /dev/VG3/LV3 umount: /dev/VG3/LV3: not mounted [root@link-11 cluster]# umount /mnt/gfs3 [root@link-11 cluster]# By changing line 821 of /usr/share/cluster/fs.sh from: umount $dev to umount $mp The service will now stop properly. Haven't scoured the script yet, so there may well be other places that need to be changed. Version-Release number of selected component (if applicable): How reproducible: Steps to Reproduce: 1. 2. 3. Actual results: Expected results: Additional info:
Ah, an artifact of 5-year-old mount/umount code ;)
Er, why will 'mount' work but not 'umount' ?
Fixed in CVS
Needs to follow symlinks in status portion so that we can compare multiple possible outputs of mount(1). (Don't forget to watch for symlink loops.) e.g.: fstab has: /dev/vg0/root which is a symlink to: /dev/mapper/vg0-root The latter is what mount(1) reports.
Derek noted that we should run down symlinks in the output of mount too.
Fixes in CVS. a. Walks symlinks / does findfs / whatever for specifed device b. Figures out if mount output is a symlink and traces it for each "device" output from mount(1). fs.sh should work with symlinks specified, UUID=<foo>, LABEL=<foo>, and directly-specified devices (e.g. /dev/sda1) now, even if the output of mount(1) doesn't directly match what was specified in cluster.conf (as long as the final device matches...).
These have been fixed in CVS for some time; closing