aboutsummaryrefslogtreecommitdiffstats
path: root/make_slackware_live.sh
diff options
context:
space:
mode:
author Eric Hameleers <alien@slackware.com>2024-05-21 12:30:28 +0200
committer Eric Hameleers <alien@slackware.com>2024-05-21 12:30:28 +0200
commit937e93621ff972d9c89fa107648864263c016014 (patch)
tree0d8e82d2961a860d8a40b5cc43862431be42fe05 /make_slackware_live.sh
parent70d1ab78844add02689a4c31bd9bd70b554931d6 (diff)
downloadliveslak-master.tar.gz
liveslak-master.tar.xz
Try fixing the umount of $LIVE_ROOTDIRHEADmaster
Somehow gpg-agent is triggered (perhaps running mkinitrd?) and that plus child processes keboxd and scdaemon keep the mount point open.
Diffstat (limited to '')
-rwxr-xr-xmake_slackware_live.sh4
1 files changed, 4 insertions, 0 deletions
diff --git a/make_slackware_live.sh b/make_slackware_live.sh
index e91f1a4..cfe4ca1 100755
--- a/make_slackware_live.sh
+++ b/make_slackware_live.sh
@@ -358,6 +358,7 @@ function cleanup() {
umount ${LIVE_ROOTDIR}/sys 2>${DBGOUT} || true
umount ${LIVE_ROOTDIR}/proc 2>${DBGOUT} || true
umount ${LIVE_ROOTDIR}/dev 2>${DBGOUT} || true
+ lsof -l -n -t ${LIVE_ROOTDIR} |xargs -r kill -KILL || true
umount -R ${LIVE_ROOTDIR} 2>${DBGOUT} || true
# Need to umount the squashfs modules too:
umount -R ${LIVE_WORK}/*_$$ 2>${DBGOUT} || true
@@ -3499,6 +3500,9 @@ fi
rm -rf ${LIVE_ROOTDIR}/boot/initrd-tree
# ... and cleanup these mounts again:
+# Also, prevent a 'target is busy' error while unmounting.
+# because gpg-agent/keyboxd/scdaemon were activated and keep the mount open:
+lsof -l -n -t ${LIVE_ROOTDIR} |xargs -r kill -KILL
umount ${LIVE_ROOTDIR}/{proc,sys,dev} || true
umount -R ${LIVE_ROOTDIR} || true
# Paranoia: