On 07/08/2014 06:28 PM, Pádraig Brady wrote: > On 06/25/2014 01:24 PM, Gabor Z. Papp wrote: >> * Pádraig Brady : >> >> | > $ cat /etc/mtab >> | > /dev/md0 / ext3 rw,errors=remount-ro 0 0 >> | > proc /proc proc rw,relatime 0 0 >> | > sysfs /sys sysfs rw,relatime 0 0 >> | > tmpfs /dev tmpfs rw,relatime,size=4k,mode=755 0 0 >> | > devpts /dev/pts devpts rw,relatime,mode=620 0 0 >> | > /dev/md1 /var/archive ext3 rw,errors=remount-ro 0 1 >> | > /var/archive/home /home none rw,bind 0 0 >> | > /var/archive/spool /var/spool none rw,bind 0 0 >> | > /var/archive/www /var/lib/www none rw,bind 0 0 >> >> | Is this mtab really a link to /proc/mounts? >> >> No, its a standalone file. >> >> | That's the normal case on modern Linux distros. >> >> Its not a modern linux. :-) >> >> | > $ df-8.22 -h >> | > Filesystem Size Used Avail Use% Mounted on >> | > /dev/md0 21G 8.8G 11G 46% / >> | > tmpfs 4.0K 0 4.0K 0% /dev >> | > >> | > And where is /dev/md1 ? >> >> | Not sure what's going on here. >> | Since you've compiled various versions, >> | could you replace src/df.c in your 8.22 build dir with: >> | http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=blob_plain;f=src/df.c;hb=HEAD >> | There have been many df changes since 8.22, so it would >> | be good to check with the latest. >> >> $ /tmp/df-git -h >> Filesystem Size Used Avail Use% Mounted on >> /dev/md0 21G 9.0G 11G 47% / >> tmpfs 4.0K 0 4.0K 0% /dev >> >> Same problem, /dev/md1 missing. > > The missing entry is due to the bind mounts being classified as "dummy" devices. > There is code in gnulib to explicitly avoid that for bind mounts, > however that was negated with this change: > http://git.sv.gnu.org/gitweb/?p=gnulib.git;a=commitdiff;h=62bb7a8b > Now that change is correct in isolation, but when combined > with the incomplete original change, it triggered the issue. > The attached patch should fix this up. > >> >> | > running df from coreutils 8.21 shows different result: >> | > >> | > $ df-8.21 -h >> | > Filesystem Size Used Avail Use% Mounted on >> | > /dev/md0 21G 8.8G 11G 46% / >> | > tmpfs 4.0K 0 4.0K 0% /dev >> | > /var/archive/home 273G 244G 29G 90% /home >> | > >> | > Still weird. >> >> | As part of the device de-duplication logic we used in 8.21 >> | we're favoring '/home' since it's shorter than '/var/archive' >> | and thus we're using the '/var/archive/home' "device". >> >> | > Trying with 8.20: >> | > >> | > $ df-8.20 -h >> | > Filesystem Size Used Avail Use% Mounted on >> | > /dev/md0 21G 8.8G 11G 46% / >> | > tmpfs 4.0K 0 4.0K 0% /dev >> | > /dev/md1 273G 244G 29G 90% /var/archive >> >> | I agree that this is the best output for your case. >> >> Right. >> >> | I suppose we could stat the sources in the de-duplication logic >> | to favor real devices. I.E. stat '/var/archive/home' and '/dev/md1' >> | in your case to favor the latter. > > That's something we could still do in addition in coreutils. The attached should handle this by giving precedence to displaying real device nodes. thanks, Pádraig.