mirror of
https://codeberg.org/B3rtl/Ubuntu-Setup-Skripte
synced 2024-09-28 21:02:37 +02:00
96 lines
1.9 KiB
Bash
Executable file
96 lines
1.9 KiB
Bash
Executable file
#!/bin/bash
|
|
|
|
if [ -z "$(command -v dialog)" ]; then
|
|
echo "dialog fehlt! Installiere dialog..."
|
|
sudo apt update
|
|
sudo apt install -y dialog
|
|
fi
|
|
|
|
|
|
GG=$(lsblk -r -p -n -o NAME,TYPE |grep disk | cut -f1 -d' ')
|
|
echo $GG
|
|
Devs=()
|
|
for dev in $GG; do
|
|
Devs+=($dev)
|
|
Devs+=("")
|
|
done
|
|
|
|
|
|
while true
|
|
do
|
|
|
|
dev=`dialog --menu "Platte einlesen. Festplattengerät wählen" 0 0 0 \
|
|
"${Devs[@]}" 3>&1 1>&2 2>&3`
|
|
dialog --clear
|
|
dialog --yesno "Bestätigen Sie Ihre Auswahl: $dev" 0 0
|
|
|
|
# Get exit status
|
|
# 0 means user hit [yes] button.
|
|
# 1 means user hit [no] button.
|
|
# 255 means user hit [Esc] key.
|
|
response=$?
|
|
case $response in
|
|
0) echo "Bestätigt"; break;;
|
|
1) echo "Neu wählen";;
|
|
255) echo "[ESC]"; exit 1;;
|
|
esac
|
|
|
|
done
|
|
|
|
|
|
|
|
|
|
while true
|
|
do
|
|
dialog --clear
|
|
# show an inputbox
|
|
FILENM=$(dialog --title "Imagedatei" --inputbox "Dateiname \*.img " 8 60 3>&1 1>&2 2>&3 3>&- )
|
|
|
|
# get respose
|
|
respose=$?
|
|
case $response in
|
|
1) exit 2 ;;
|
|
255) echo "[ESC]"; exit 1;;
|
|
esac
|
|
|
|
|
|
dialog --clear
|
|
dialog --yesno "Gewählte Datei: $FILENM" 0 0
|
|
# Get exit status
|
|
# 0 means user hit [yes] button.
|
|
# 1 means user hit [no] button.
|
|
# 255 means user hit [Esc] key.
|
|
response=$?
|
|
case $response in
|
|
0) echo "Bestätigt"; break;;
|
|
1) echo "Neu wählen";;
|
|
255) echo "[ESC]"; exit 1;;
|
|
esac
|
|
|
|
|
|
done
|
|
|
|
echo "Ermittle letzten Sektor von Quelldevice $dev"
|
|
LASTSECT=$(sudo fdisk -x "$dev" | tail -1 | awk '{print $3}' )
|
|
|
|
dialog --clear
|
|
dialog --yesno "Letzter Sektor von letzter Partition auf $dev ist $LASTSECT . OK?" 0 0
|
|
# Get exit status
|
|
# 0 means user hit [yes] button.
|
|
# 1 means user hit [no] button.
|
|
# 255 means user hit [Esc] key.
|
|
response=$?
|
|
case $response in
|
|
0) echo "Bestätigt";;
|
|
1) echo "Sicherheitshalber beendet"; exit 1;;
|
|
255) echo "[ESC]"; exit 1;;
|
|
esac
|
|
|
|
|
|
|
|
echo "Bereit $dev bis $LASTSECT in $FILENM zu schreiben"
|
|
|
|
|
|
|
|
|
|
sudo dd if=$dev of="$FILENM" bs=512 count=$LASTSECT status=progress
|