I'm having trouble coming up with a simpler test case myself. Here is how you can reproduce with lp:maas-images on Zesty with bash-4.4-1ubuntu1
mkdir maas-images cd maas-images bzr init bzr branch lp:maas-images cd export PATH=/home/ubuntu/maas-images/trunk/bin:$PATH wget http://cloud-images.ubuntu.com/daily/server/zesty/20161111/zesty-server-cloudimg-amd64.squashfs meph2-build --image-format squashfs-image -vv --enable-di amd64 zesty 20161111 zesty-server-cloudimg-amd64.squashfs out.d If you execute that with 4.4-1ubuntu1 it fails due to the loop back mount still being mounted(mount | grep maas). If you downgrade to 4.3-15ubuntu1 or use the patch from lp:~ltrager/maas- images/workaround_lp1641832 umount is called and the script executes successfully. -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to bash in Ubuntu. https://bugs.launchpad.net/bugs/1641832 Title: Bash ignores exit trap on success when part of a command string Status in bash package in Ubuntu: Triaged Bug description: The MAAS team uses a script, lp:maas-images, which generates the images available at images.maas.io. As part of this process we use the following to convert a SquashFS image to an ext4 image. sudo bash -ec 'src="$1"; img="$2"; trgmp="$3"; mounts="" cleanup() { for m in $mounts; do umount "$m"; done; } trap cleanup EXIT mount -o loop "$img" "$trgmp" mounts="$trgmp" unsquashfs -force -xattrs -dest "$trgmp" "$src"' \ "squashimg-to-image" "$squashimg" "$output" "$trgmp" ret=$? rm -Rf "$mtmp" || return return $ret Prior to 4.4-1ubuntu1 the trap would always cause the cleanup function to always be called. Its now only called on failure. This causes the mount to remain and the following rm to fail. If I add 'false' to the end of the command script or downgrade to 4.3-15ubuntu1 the cleanup occurs. To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/bash/+bug/1641832/+subscriptions -- Mailing list: https://launchpad.net/~touch-packages Post to : touch-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~touch-packages More help : https://help.launchpad.net/ListHelp