mount-stick-repo.sh 1.49 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.
Daniel Schulte's avatar
Daniel Schulte committed
47
  udisksctl mount --block-device "$DEV"
48 49 50

  # see where it is mounted
  DEVFILE=${DEV#/dev/}
51
  MPOINT="$(dbus-send --print-reply=literal --system --dest=org.freedesktop.UDisks /org/freedesktop/UDisks/devices/${DEVFILE} org.freedesktop.DBus.Properties.Get string:'org.freedesktop.UDisks.Device' string:'DeviceMountPaths' | tail -n +2 | tr -d "\ \]\[" | head -n 1)"
52 53 54 55

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