mount-stick-repo.sh 1.62 KB
Newer Older
1 2 3 4 5
#! /bin/bash
set -e

#find device
DEV="$(blkid -t "LABEL=MultiBoot" -o device | head -n1 || echo '')"
Gustav Geier's avatar
Gustav Geier committed
6 7 8
if [ -z "$DEV" ]; then
  DEV="$(blkid -t "LABEL=MULTIBOOT" -o device | head -n1 || echo '')"
fi
9 10 11 12 13 14 15 16 17 18 19

PS3="[1,2,3]<Enter>: "
while [ -z "$DEV" ];  do
  echo "Der LIP-Install-USB-Stick wurde nicht gefunden."
  echo "Jetzt einstecken oder ohne weitermachen"
  select i in "Stick ist jetzt gesteckt" \
"Ohne Stick weitermachen" \
"Installation abbrechen" ; do
    case $i in
     "Stick ist jetzt gesteckt")
       DEV="$(blkid -t "LABEL=MultiBoot" -o device | head -n1 || echo '')"
Gustav Geier's avatar
Gustav Geier committed
20 21 22
       if [ -z "$DEV" ]; then
	 DEV="$(blkid -t "LABEL=MULTIBOOT" -o device | head -n1 || echo '')"
       fi
23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
       ;;
     "Ohne Stick weitermachen")
       DEV='-nomount-'
       ;;
     "Installation abbrechen")
       exit 2
       ;;
     *)
       echo "Das sollte nicht passieren. Helfer fragen."
       exit 99
       ;;
    esac
    break
  done
done

if [ "$DEV" = "-nomount-" ]; then
  echo "Mache ohne USB-Stick weiter."
  MPOINT=""
  #exit 0
else
  echo "Stick gefunden als $DEV"

  # ask udisks to mount it always.
47
  udisksctl mount --block-device "$DEV" || true
48 49 50

  # see where it is mounted
  DEVFILE=${DEV#/dev/}
51 52
#  MPOINT="$(dbus-send --print-reply=literal --system --dest=org.freedesktop.UDisks2 /org/freedesktop/UDisks2/block_devices/${DEVFILE} org.freedesktop.DBus.Properties.Get string:'org.freedesktop.UDisks2.Filesystem' string:'MountPoints' | tail -n +3 | tr -d "\ \]\[" | head -n 1 | xxd -r -p)"
MPOINT="$(udisksctl info --block-device "$DEV" | grep "MountPoints:" | tr -d ' ' | cut -d ':' -f2)"
53 54 55 56

  echo "Der Stick it als '$MPOINT' gemountet"
fi
#end;