Browse Source

Stop scripts for Umbrel OS systemd services (#110)

mount-script-check
Mayank Chhabra 5 years ago
committed by GitHub
parent
commit
33ea7ec098
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 45
      scripts/umbrel-os/external-storage/unmount
  2. 1
      scripts/umbrel-os/services/umbrel-external-storage.service
  3. 1
      scripts/umbrel-os/services/umbrel-startup.service

45
scripts/umbrel-os/external-storage/unmount

@ -0,0 +1,45 @@
#!/usr/bin/env bash
set -euo pipefail
# This script will:
# - Look for external storage devices
# - Check if they contain an Umbrel install
# - If yes
# - - Unmount it
UMBREL_ROOT="$(readlink -f $(dirname "${BASH_SOURCE[0]}")/../../..)"
MOUNT_POINT="/mnt/data"
EXTERNAL_UMBREL_ROOT="${MOUNT_POINT}/umbrel"
check_root () {
if [[ $UID != 0 ]]; then
echo "This script must be run as root"
exit 1
fi
}
check_dependencies () {
for cmd in "$@"; do
if ! command -v $cmd >/dev/null 2>&1; then
echo "This script requires \"${cmd}\" to be installed"
exit 1
fi
done
}
check_root
check_dependencies sync umount
if [[ ! -f "${EXTERNAL_UMBREL_ROOT}"/.umbrel ]]; then
echo "No external storage with Umbrel install found..."
exit 1
fi
echo "Unmounting external storage..."
echo "Removing bind mount..."
umount --lazy "${UMBREL_ROOT}"
echo "Unmounting partition..."
umount --lazy "${MOUNT_POINT}"
sync
sleep 1

1
scripts/umbrel-os/services/umbrel-external-storage.service

@ -8,6 +8,7 @@ Description=External Storage Mounter
Type=oneshot
Restart=no
ExecStart=/home/umbrel/umbrel/scripts/umbrel-os/external-storage/mount
ExecStop=/home/umbrel/umbrel/scripts/umbrel-os/external-storage/unmount
User=root
Group=root
StandardOutput=syslog

1
scripts/umbrel-os/services/umbrel-startup.service

@ -14,6 +14,7 @@ After=docker.service
Type=forking
TimeoutSec=infinity
ExecStart=/home/umbrel/umbrel/scripts/start
ExecStop=/home/umbrel/umbrel/scripts/stop
User=root
Group=root
StandardOutput=syslog

Loading…
Cancel
Save