On 06/22/2014 09:41 AM, Gabor Z. Papp wrote: > lo lo, > > seems like I discovered a problem in 8.22's df util: > > $ cat /etc/fstab > /dev/md0 / ext3 defaults,errors=remount-ro 0 1 > /dev/sda2 swap swap defaults 0 0 > /dev/sdb2 swap swap defaults 0 0 > /dev/md1 /var/archive ext3 defaults,errors=remount-ro 0 1 > /dev/sr0 /mnt/cdrom iso9660 defaults,noauto 0 0 > > proc /proc proc defaults 0 0 > none /proc/bus/usb usbfs defaults 0 0 > > $ 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? That's the normal case on modern Linux distros. > $ 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. > 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. 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. thanks, Pádraig.
