rwx/bash/mount.sh

87 lines
1.4 KiB
Bash
Raw Normal View History

2024-11-12 09:43:56 +01:00
mo() {
2024-11-12 10:11:35 +01:00
local directory="${1}"
local file
2024-11-12 10:29:09 +01:00
if [ -n "${directory}" ] ; then
2024-11-12 10:11:35 +01:00
directory="$(realpath "${directory}")"
file="${directory}/filesystem.squashfs"
if mkdir "overlay" ; then
cd "overlay"
mkdir {lower,upper,work,mount}
if mount "${file}" "lower" ; then
mount \
2024-11-12 10:25:44 +01:00
-o lowerdir="lower",upperdir="upper",workdir="work" \
2024-11-12 10:11:35 +01:00
-t "overlay" \
"overlay" "mount"
fi
cd ..
fi
else
echo "KO: directory?"
fi
2023-05-09 22:02:34 +02:00
}
2024-11-12 09:43:56 +01:00
uo() {
2024-11-12 10:11:35 +01:00
cd "overlay"
if umount "mount" ; then
rmdir "mount"
rm --recursive "upper" "work"
if umount "lower" ; then
rmdir "lower"
fi
fi
cd ..
rmdir "overlay"
2023-05-09 22:02:34 +02:00
}
2024-11-12 09:43:56 +01:00
mr() {
2024-11-12 10:11:35 +01:00
local f
for f in "dev" "dev/pts" "proc" "sys" ; do
mount --bind "/${f}" "overlay/mount/${f}"
done
2023-05-09 22:02:34 +02:00
}
2023-05-14 23:12:22 +02:00
alias cr="\
chroot \
\"overlay/mount\" \
"
alias cru="\
chroot \
--userspec \"1000:1000\" \
\"overlay/mount\" \
"
2023-05-09 22:02:34 +02:00
2024-11-12 09:43:56 +01:00
ur() {
2024-11-12 10:11:35 +01:00
local f
for f in "sys" "proc" "dev/pts" "dev" ; do
umount --lazy "overlay/mount/${f}"
done
2023-05-09 22:02:34 +02:00
}
2024-11-12 09:43:56 +01:00
mm() {
2024-11-12 10:11:35 +01:00
mount --make-rslave --rbind "/deb" "overlay/mount/deb"
2023-05-09 22:02:34 +02:00
}
2024-11-12 09:43:56 +01:00
um() {
2024-11-12 10:11:35 +01:00
umount --recursive "overlay/mount/deb"
2023-05-09 22:02:34 +02:00
}
2024-11-12 09:43:56 +01:00
ms() {
2024-11-12 10:11:35 +01:00
local directory="${1}"
local level="${2}"
2024-11-12 10:25:44 +01:00
if [ -n "${directory}" ] ; then
2024-11-12 10:11:35 +01:00
if mkdir "${directory}" ; then
2024-11-12 10:25:44 +01:00
[ -n "${level}" ] || level="18"
2024-11-12 10:11:35 +01:00
cp overlay/mount/{vmlinuz,initrd.img} "${directory}"
mksquashfs \
"overlay/mount" "${directory}/filesystem.squashfs" \
-noappend \
-comp "zstd" -Xcompression-level "${level}"
chown --recursive 1000:1000 "${directory}"
fi
fi
2023-05-09 22:02:34 +02:00
}