====== kleine Mountstatistik ======
Der Befehl ''mount'' gibt allerhand aus, bei mir z. B.
mount
/dev/sda3 on / type ext3 (rw,acl,user_xattr)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
debugfs on /sys/kernel/debug type debugfs (rw)
udev on /dev type tmpfs (rw)
devpts on /dev/pts type devpts (rw,mode=0620,gid=5)
/dev/sda2 on /boot type ext2 (rw,acl,user_xattr)
/dev/sda4 on /zdisk/sda4 type xfs (rw)
/dev/sdb2 on /zdisk/sdb2 type ext2 (rw)
/dev/sdb3 on /zdisk/sdb3 type xfs (rw)
/dev/sdc2 on /zdisk/sdd2 type ext3 (rw)
/dev/sdc3 on /zdisk/sdd3 type ext3 (rw)
/dev/sdc5 on /zdisk/sdd5 type xfs (rw)
fusectl on /sys/fs/fuse/connections type fusectl (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
proc on /var/lib/ntp/proc type proc (ro)
wdfs (https://webdav.smartdrive.web.de) on /zdisk/sdd5/home/werner/Documents/webde type fuse (rw,nosuid,nodev,user=werner)
Darin sind eigentlich immer die selben Infos enthalten: welches Fielsystem wird wo eingehängt, von welchem Typ ist es und welche Optionen aktiv sind. Das müsste sich doch zergliedern lassen -- mit ''awk''! Das sieht dann so aus:
mount | awk -f ~/bin/whatsmounted.awk
FS: /dev/sda3 FST: ext3 MP: / OPT: rw,acl,user_xattr
FS: proc FST: proc MP: /proc OPT: rw
FS: sysfs FST: sysfs MP: /sys OPT: rw
FS: debugfs FST: debugfs MP: /sys/kernel/debug OPT: rw
FS: udev FST: tmpfs MP: /dev OPT: rw
FS: devpts FST: devpts MP: /dev/pts OPT: rw,mode=0620,gid=5
FS: /dev/sda2 FST: ext2 MP: /boot OPT: rw,acl,user_xattr
FS: /dev/sda4 FST: xfs MP: /zdisk/sda4 OPT: rw
FS: /dev/sdb2 FST: ext2 MP: /zdisk/sdb2 OPT: rw
FS: /dev/sdb3 FST: xfs MP: /zdisk/sdb3 OPT: rw
FS: /dev/sdc2 FST: ext3 MP: /zdisk/sdd2 OPT: rw
FS: /dev/sdc3 FST: ext3 MP: /zdisk/sdd3 OPT: rw
FS: /dev/sdc5 FST: xfs MP: /zdisk/sdd5 OPT: rw
FS: fusectl FST: fusectl MP: /sys/fs/fuse/connections OPT: rw
FS: none FST: binfmt_misc MP: /proc/sys/fs/binfmt_misc OPT: rw
FS: proc FST: proc MP: /var/lib/ntp/proc OPT: ro
FS: https://webdav.smartdrive.web.de FST: wdfs MP: /zdisk/sdd5/home/werner/Documents/webde OPT: rw,nosuid,nodev,user=werner
Nun habe ich die Infos fein säuberlich (durch Tab ;-)) getrennt... Das awk-Script sieht so aus:
#!/usr/bin/awk
{
if ($6 == "fuse") {
gsub(/\(|\)/, "", $2);
gsub(/\(|\)/, "", $7);
printf "FS: %s\tFST: %s\tMP: %s\tOPT: %s\n", $2, $1, $4, $7;
}
else {
gsub(/\(|\)/, "", $6);
printf "FS: %s\tFST: %s\tMP: %s\tOPT: %s\n", $1, $5, $3, $6;
}
}
Zu beachten ist, dass bei FUSE die Ausgabe einen Wert mehr enthält als sonst, und deshalb andere Parameter angezeigt werden müssen. Die ''gsub()''-Aufrufe dienen nur dem Entfernen der runden Klammern um die Optionen und ggf. die URI des Filesystems.