fixed busy unmount problem
This commit is contained in:
@@ -11,6 +11,9 @@ docker_user=${1:-${docker_user:-$(id -un)}}
|
||||
if test -f /etc/setup-debootstrap.conf; then
|
||||
. /etc/setup-debootstrap.conf
|
||||
fi
|
||||
if test -f ~/setup-debootstrap.conf; then
|
||||
. ~/setup-debootstrap.conf
|
||||
fi
|
||||
|
||||
tmpdir=${tmpdir:-"/var/tmp/chroots"}
|
||||
test -d "${tmpdir}" || mkdir -p "${tmpdir}"
|
||||
@@ -139,6 +142,11 @@ for ((i=0; i<${#distros[@]}; ++i)); do
|
||||
fi
|
||||
fi
|
||||
echo " ---- mount filesystems in ${tmpdir}/${distro}-${arch}" 1>&2
|
||||
for x in proc sys dev; do
|
||||
if mount | grep -q "${tmpdir}/${distro}-${arch}"/$x/; then
|
||||
umount -flr "${tmpdir}/${distro}-${arch}"/$x/
|
||||
fi
|
||||
done
|
||||
sudo mount -t proc proc "${tmpdir}/${distro}-${arch}"/proc/
|
||||
sudo mount -t sysfs sys "${tmpdir}/${distro}-${arch}"/sys/
|
||||
sudo mount -o bind /dev "${tmpdir}/${distro}-${arch}"/dev/
|
||||
@@ -187,9 +195,11 @@ EOF1
|
||||
echo " ---- install ${instpkgs} to ${tmpdir}/${distro}-${arch}" 1>&2
|
||||
sudo chroot "${tmpdir}/${distro}-${arch}" apt-get -o Acquire::ForceIPv4=true install -y ${instpkgs}
|
||||
echo " ---- unmount filesystems in ${tmpdir}/${distro}-${arch}" 1>&2
|
||||
sudo umount "${tmpdir}/${distro}-${arch}"/proc/
|
||||
sudo umount "${tmpdir}/${distro}-${arch}"/sys/
|
||||
sudo umount "${tmpdir}/${distro}-${arch}"/dev/
|
||||
for x in proc sys dev; do
|
||||
if mount | grep -q "${tmpdir}/${distro}-${arch}"/$x/; then
|
||||
umount -flr "${tmpdir}/${distro}-${arch}"/$x/
|
||||
fi
|
||||
done
|
||||
echo " ---- import ${tmpdir}/${distro}-${arch} to ${docker_user}/${type}:${distro}-${arch}" 1>&2
|
||||
cd "${tmpdir}/${distro}-${arch}"
|
||||
sudo tar c . | docker import - "${docker_user}/${type}:${distro}-${arch}"
|
||||
|
Reference in New Issue
Block a user