On Fri, 20 Sep 2024, Florent Rougon wrote:
Le 20/09/2024, Tim Woodall <[email protected]> a écrit:Because the script will abort after the mount fails. root@dirac:~# cat test.sh #!/bin/bash set -e mount /boot/efi2 echo "do important stuff" root@dirac:~# ./test.sh mount: /boot/efi2: /dev/sda2 already mounted on /boot/efi2. dmesg(1) may have more information after failed mount system call. Note that do important stuff is never reached.That's interesting because my system doesn't behave the same. I had of course checked, before writing my first message, that 'mount /boot/efi2' returns exit status 0 even when /boot/efi2 is already mounted. With your script (called foo.sh here), here is what I get: # mount | grep efi2 /dev/sda1 on /boot/efi2 type vfat (rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=ascii,shortname=mixed,utf8,errors=remount-ro) # /tmp/foo.sh do important stuff # mount | grep efi2 /dev/sda1 on /boot/efi2 type vfat (rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=ascii,shortname=mixed,utf8,errors=remount-ro) /dev/sda1 on /boot/efi2 type vfat (rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=ascii,shortname=mixed,utf8,errors=remount-ro) # Every invocation adds a new, duplicate entry in the output of 'mount'. This is Debian sid amd64; /usr/bin/mount is from 'mount' package version 2.40.2-8.
That's very interesting and looks like it's probably a kernel change. Tim.

