37 lines
776 B
Bash
37 lines
776 B
Bash
|
#!/bin/sh
|
||
|
|
||
|
UID=$(id -u)
|
||
|
GID=$(id -g)
|
||
|
CURDIR=$(pwd)
|
||
|
|
||
|
set -u
|
||
|
set -e
|
||
|
|
||
|
echo "Umounting merge directory if it is mounted"
|
||
|
if mount | grep -q "${CURDIR}.merge"; then
|
||
|
sudo umount -lf "${CURDIR}.merge"
|
||
|
fi
|
||
|
|
||
|
# echo "Removing old upper directory"
|
||
|
# sudo rm -rf "${CURDIR}.upper"
|
||
|
|
||
|
echo "Creating directories"
|
||
|
sudo mkdir -p "${CURDIR}.upper"
|
||
|
sudo mkdir -p "${CURDIR}.workdir"
|
||
|
sudo mkdir -p "${CURDIR}.merge"
|
||
|
|
||
|
echo "Setting permissions"
|
||
|
sudo chown "$UID:$GID" "${CURDIR}.upper"
|
||
|
sudo chown "$UID:$GID" "${CURDIR}.workdir"
|
||
|
sudo chown "$UID:$GID" "${CURDIR}.merge"
|
||
|
|
||
|
echo "Mounting filesystem"
|
||
|
sudo mount -t overlay \
|
||
|
-o "lowerdir=${CURDIR},upperdir=${CURDIR}.upper,workdir=${CURDIR}.workdir" \
|
||
|
overlay \
|
||
|
"${CURDIR}.merge"
|
||
|
|
||
|
echo "Running shell"
|
||
|
cd "${CURDIR}.merge" || exit 1
|
||
|
exec $SHELL
|