Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- #Directory test - ensures that script is run from its own directory. Dialog test - ensures the 'dialog' command is installed.
- testdir=`ls linuxcd.sh`
- testdialog=`ls /usr/bin/dialog`
- clear
- if [ "$testdir" != "linuxcd.sh" ]; then echo '***Error! Script must be run from its working directory***'; exit; fi
- if [ "$testdialog" != "/usr/bin/dialog" ];
- then
- echo '***Error! "Dialog" is not installed.***'
- echo 'Install it? y/n'
- read installdialog
- if [ "$installdialog" = "y" ]; then sudo apt-get install dialog; fi
- exit
- fi
- #Simple kiosk-style linux distro cdrom burner
- #--------------------------------------------
- #ISO Image Paths (Symlinks in ISO folder)
- ubuntu=ISO/ubuntu
- kubuntu=ISO/kubuntu
- xubuntu=ISO/xubuntu
- opensuse=ISO/opensuse
- fedora=ISO/fedora
- debian_xfce=ISO/debian_xfce
- debian_kde=ISO/debian_kde
- pclinuxos=ISO/pclinuxos
- linuxmint=ISO/linuxmint
- #Burn Speed
- bspeed=10
- #Burn set to burn device file
- bdevice=`cat config/device`
- #Password set to password file
- password=`cat config/password`
- #Screen Resolution
- xres=640
- yres=480
- mheight=100
- #--------------------------------------------
- main_menu() {
- trap main_menu INT
- select=$(dialog --menu --stdout "Linux Distro Burner" "$xres" "$yres" "$mheight" 1 'Ubuntu' 2 'Kubuntu' 3 'Xubuntu' 4 'OpenSuse' 5 'Fedora' 6 'Debian XFCE' 7 'Debian KDE' 8 'PCLinuxOS' 9 'Linux Mint' 10 'Administration')
- if [ "$select" = "" ]; then main_menu; fi
- if [ "$select" = "1" ]; then bimage=$ubuntu; burn; fi
- if [ "$select" = "2" ]; then bimage=$kubuntu; burn; fi
- if [ "$select" = "3" ]; then bimage=$xubuntu; burn; fi
- if [ "$select" = "4" ]; then bimage=$opensuse; burn; fi
- if [ "$select" = "5" ]; then bimage=$fedora; burn; fi
- if [ "$select" = "6" ]; then bimage=$debian_xfce; burn; fi
- if [ "$select" = "7" ]; then bimage=$debian_kde; burn; fi
- if [ "$select" = "8" ]; then bimage=$pclinuxos; burn; fi
- if [ "$select" = "9" ]; then bimage=$linuxmint; burn; fi
- if [ "$select" = "10" ]; then adminauth; fi
- }
- burn() {
- trap main_menu INT
- dialog --yesno "Are you sure you wish to burn?" "$xres" "$yres"
- if [ "$?" = "1" ]; then main_menu; fi
- dialog --msgbox "Please insert a disk, and press OK..." "$xres" "$yres"
- clear
- wodim -v -pad speed=$bspeed dev=$bdevice $bimage
- main_menu
- }
- admin() {
- admin=$(dialog --menu --stdout "Administration Menu" "$xres" "$yres" "$mheight" 1 "Drop to Shell" 2 "Server Info" 3 "Reload Script" 4 "Change Password" 5 "Change CDROM Device" 6 "Return to Main Menu")
- if [ "$admin" = "1" ];
- then
- dialog --yesno "Are you sure? This will terminate the script." "$xres" "$yres"
- if [ "$?" = "1" ]; then admin; fi
- clear
- killall linuxcd.sh
- fi
- if [ "$admin" = "2" ]; then dialog --textbox "config/serverinfo" "$xres" "$yres"; admin; fi
- if [ "$admin" = "3" ]; then ./linuxcd.sh; fi
- if [ "$admin" = "4" ];
- then
- passwordchange1=$(dialog --passwordbox --stdout "Change Password" "$xres" "$yres")
- passwordchange2=$(dialog --passwordbox --stdout "Confirm Password" "$xres" "$yres")
- if [ "$passwordchange1" != "$passwordchange2" ]; then dialog --msgbox "Error - Passwords do not match" "$xres" "$yres"; admin; fi
- if [ "$passwordchange1" = "$passwordchange2" ]; then echo "$passwordchange1" > config/password; dialog --msgbox "Password Changed Successfully" "$xres" "$yres"; password="$passwordchange1"; admin; fi
- fi
- if [ "$admin" = "5" ]; then bdevice=$(dialog --inputbox --stdout "Enter CDROM Device" "$xres" "$yres" "$bdevice"); echo "$bdevice" > config/device; admin; fi
- if [ "$admin" = "6" ]; then main_menu; fi
- if [ "$admin" = "" ]; then main_menu; fi
- }
- adminauth() {
- passwordauth=$(dialog --passwordbox --stdout "Enter Password" "$xres" "$yres")
- if [ "$passwordauth" = "$password" ]; then admin; fi
- if [ "$passwordauth" != "$password" ]; then dialog --msgbox "Access Denied" "$xres" "$yres"; main_menu; fi
- }
- main_menu
Advertisement
Add Comment
Please, Sign In to add comment