Hello,

Samuel Thibault, le Tue 22 Jul 2014 11:21:52 +0200, a écrit :
> During shutdown, the unmount step takes age, it seems systemd struggles
> with unmounting my bind mounts, see the attached log.
> 
> I guess the problem is that since I have put /usr/src and chroots in
> /home (which is the biggest of my system partitions) and I want /home
> and /usr/src to appear in chroots, I'm using these in my /etc/fstab:
> 
> /home/src     /usr/src        bind    bind            0       0
> /home         /home/32/home   none    bind            0       0
> /home         /home/unstable/home     none    bind            0       0
> /home         /home/squeeze/home      none    bind            0       0
> /home         /home/squeeze-32/home   none    bind            0       0
> /home         /home/wheezy/home       none    bind            0       0
> /home         /home/wheezy-32/home    none    bind            0       0
> /usr/src      /home/32/usr/src        none    bind            0       0
> /usr/src      /home/unstable/usr/src  none    bind            0       0
> /usr/src      /home/squeeze/usr/src   none    bind            0       0
> /usr/src      /home/squeeze-32/usr/src        none    bind            0       > 0
> /usr/src      /home/wheezy/usr/src    none    bind            0       0
> /usr/src      /home/wheezy-32/usr/src none    bind            0       0
> 
> which indeed brings a recursive thing, but sysvinit's umount was
> completely fine with it...

I tried with just that fstab and it's still bearable. I have attached
the more complete fstab with all my bind mounts. This ends up with ~2500
lines in the output of the mount command... For instance

proc on 
/usr/local/montesting/home/wheezy-32/home/wheezy/home/squeeze-32/home/squeeze/home/32/home/32/proc
 type proc (rw,relatime)

There is no reason why it should contain such recursive mounts...

Just to save you the time, here are the commands to create the bind
mount directories:

mkdir -p /home/usr/src
mkdir -p /var/cache/pbuilder
mkdir -p /home/pbuilder
mkdir -p /home/tmp
for i in 32 unstable squeeze squeeze-32 wheezy wheezy-32 ; do
        mkdir -p /home/$i/dev
        mkdir -p /home/$i/proc
        mkdir -p /home/$i/sys
        mkdir -p /home/$i/home
        mkdir -p /home/$i/usr/src
        mkdir -p /home/$i/tmp
        mkdir -p /home/$i/var/cache/pbuilder/result
done
mkdir -p /usr/local/montesting/home

Samuel
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
# / was on /dev/sda1 during installation
UUID=44838476-67a8-4556-8146-9dfe1912deee /               ext4    
errors=remount-ro 0       1
# swap was on /dev/sda5 during installation
UUID=602e49f8-65bb-4d6d-8ea7-1765ca3755ea none            swap    sw            
  0       0
/dev/sr0        /media/cdrom0   udf,iso9660 user,noauto     0       0

/home/src       /usr/src        bind    bind    0       0
/home/pbuilder  /var/cache/pbuilder     bind    bind    0       0
/home/tmp       /var/tmp                bind    bind    0       0

proc    /home/32/proc   proc    defaults        0       0
sysfs   /home/32/sys    sysfs   defaults        0       0
/dev    /home/32/dev    bind    bind    0       0
/home   /home/32/home   bind    bind    0       0
/usr/src        /home/32/usr/src        bind    bind    0       0
/tmp    /home/32/tmp    bind    bind    0       0
/var/cache/pbuilder/result      /home/32/var/cache/pbuilder/result      bind    
bind    0       0

proc    /home/unstable/proc     proc    defaults        0       0
sysfs   /home/unstable/sys      sysfs   defaults        0       0
/dev    /home/unstable/dev      bind    bind    0       0
/home   /home/unstable/home     bind    bind    0       0
/usr/src        /home/unstable/usr/src  bind    bind    0       0
/tmp    /home/unstable/tmp      bind    bind    0       0
/var/cache/pbuilder/result      /home/unstable/var/cache/pbuilder/result        
bind    bind    0       0

proc    /home/squeeze/proc      proc    defaults        0       0
sysfs   /home/squeeze/sys       sysfs   defaults        0       0
/dev    /home/squeeze/dev       bind    bind    0       0
/home   /home/squeeze/home      bind    bind    0       0
/usr/src        /home/squeeze/usr/src   bind    bind    0       0
/tmp    /home/squeeze/tmp       bind    bind    0       0
/var/cache/pbuilder/result      /home/squeeze/var/cache/pbuilder/result bind    
bind    0       0

proc    /home/squeeze-32/proc   proc    defaults        0       0
sysfs   /home/squeeze-32/sys    sysfs   defaults        0       0
/dev    /home/squeeze-32/dev    bind    bind    0       0
/home   /home/squeeze-32/home   bind    bind    0       0
/usr/src        /home/squeeze-32/usr/src        bind    bind    0       0
/tmp    /home/squeeze-32/tmp    bind    bind    0       0
/var/cache/pbuilder/result      /home/squeeze-32/var/cache/pbuilder/result      
bind    bind    0       0

proc    /home/wheezy/proc       proc    defaults        0       0
sysfs   /home/wheezy/sys        sysfs   defaults        0       0
/dev    /home/wheezy/dev        bind    bind    0       0
/home   /home/wheezy/home       bind    bind    0       0
/usr/src        /home/wheezy/usr/src    bind    bind    0       0
/tmp    /home/wheezy/tmp        bind    bind    0       0
/var/cache/pbuilder/result      /home/wheezy/var/cache/pbuilder/result  bind    
bind    0       0

proc    /home/wheezy-32/proc    proc    defaults        0       0
sysfs   /home/wheezy-32/sys     sysfs   defaults        0       0
/dev    /home/wheezy-32/dev     bind    bind    0       0
/home   /home/wheezy-32/home    bind    bind    0       0
/usr/src        /home/wheezy-32/usr/src bind    bind    0       0
/tmp    /home/wheezy-32/tmp     bind    bind    0       0
/var/cache/pbuilder/result      /home/wheezy-32/var/cache/pbuilder/result       
bind    bind    0       0

/home   /usr/local/montesting/home bind bind 0 0

Reply via email to