diff --git a/install-little-backup-box.sh b/install-little-backup-box.sh index 9336a7a..47329c8 100755 --- a/install-little-backup-box.sh +++ b/install-little-backup-box.sh @@ -17,29 +17,20 @@ echo "----------------------" echo "Updating the system..." echo "----------------------" -sudo apt update -sudo apt dist-upgrade -y -sudo apt update +apt update +apt dist-upgrade -y +apt update echo "-----------------------------------" echo "Installing the required packages..." echo "-----------------------------------" -sudo apt install acl git-core screen rsync exfat-fuse exfat-utils ntfs-3g gphoto2 libimage-exiftool-perl dialog php minidlna samba samba-common-bin -y +apt install acl git-core screen rsync exfat-fuse exfat-utils ntfs-3g gphoto2 libimage-exiftool-perl dialog php mba cifs-utils sudo -y -USER="$1" +USER="root" -if [ -z "$USER" ]; then - USER="root" - fi + sudo mkdir /media/card -sudo mkdir /media/storage -sudo chown -R $USER:users /media/storage -sudo chmod -R 775 /media/storage -sudo setfacl -Rdm g:$USER:rw /media/storage - -sudo sed -i 's|'media_dir=/var/lib/minidlna'|'media_dir=/media/storage'|' /etc/minidlna.conf -sudo service minidlna start echo "-----------------------------" echo "Fetching Little Backup Box..." @@ -48,79 +39,18 @@ echo "-----------------------------" cd git clone https://trans.bprieshof.nl/gitea/brammp/little-backup-box-Bram.git -HEIGHT=15 -WIDTH=40 -CHOICE_HEIGHT=4 -BACKTITLE="Little Backup Box" -TITLE="Backup mode" -MENU="Select the default backup mode:" +cat > /etc/network/if-up.d/mountsmb <<- "EOF" +#! /bin/sh +mount -t cifs -o username=import,password=importpw,iocharset=utf8,sec=ntlmssp,file_mode=0775,dir_mode=0775 //192.168.2.144/Data /mnt/SMB +exit 0 +EOF -OPTIONS=(1 "Remote control" - 2 "Card backup" - 3 "Camera backup") - -CHOICE=$(dialog --clear \ - --backtitle "$BACKTITLE" \ - --title "$TITLE" \ - --menu "$MENU" \ - $HEIGHT $WIDTH $CHOICE_HEIGHT \ - "${OPTIONS[@]}" \ - 2>&1 >/dev/tty) - -clear -case $CHOICE in - 1) - crontab -l | { cat; echo "#@reboot sudo /home/"$USER"/little-backup-box/scripts/card-backup.sh >> /home/"$USER"/little-backup-box.log 2>&1"; } | crontab - crontab -l | { cat; echo "#@reboot sudo /home/"$USER"/little-backup-box/scripts/camera-backup.sh >> /home/"$USER"/little-backup-box.log 2>&1"; } | crontab - crontab -l | { cat; echo "@reboot cd /home/"$USER"/little-backup-box/scripts && sudo php -S 0.0.0.0:8000"; } | crontab - ;; - 2) - crontab -l | { cat; echo "@reboot sudo /home/"$USER"/little-backup-box/scripts/card-backup.sh >> /home/"$USER"/little-backup-box.log 2>&1"; } | crontab - crontab -l | { cat; echo "#@reboot sudo /home/"$USER"/little-backup-box/scripts/camera-backup.sh >> /home/"$USER"/little-backup-box.log 2>&1"; } | crontab - crontab -l | { cat; echo "#@reboot cd /home/"$USER"/little-backup-box/scripts && sudo php -S 0.0.0.0:8000"; } | crontab - ;; - 3) - crontab -l | { cat; echo "#@reboot sudo /home/"$USER"/little-backup-box/scripts/card-backup.sh >> /home/"$USER"/little-backup-box.log 2>&1"; } | crontab - crontab -l | { cat; echo "@reboot sudo /home/"$USER"/little-backup-box/scripts/camera-backup.sh >> /home/"$USER"/little-backup-box.log 2>&1"; } | crontab - crontab -l | { cat; echo "#@reboot cd /home/"$USER"/little-backup-box/scripts && sudo php -S 0.0.0.0:8000"; } | crontab - ;; -esac - -echo "--------------------" -echo "Configuring Samba..." -echo "--------------------" -pw="raspberry" -(echo $pw; echo $pw ) | sudo smbpasswd -s -a pi -sudo sh -c "echo '### Global Settings ###' > /etc/samba/smb.conf" -sudo sh -c "echo '[global]' >> /etc/samba/smb.conf" -sudo sh -c "echo 'workgroup = WORKGROUP' >> /etc/samba/smb.conf" -sudo sh -c "echo 'wide links = yes' >> /etc/samba/smb.conf" -sudo sh -c "echo 'unix extensions = no' >> /etc/samba/smb.conf" -sudo sh -c "echo 'dns proxy = no' >> /etc/samba/smb.conf" -sudo sh -c "echo '### Debugging/Accounting ###' >> /etc/samba/smb.conf" -sudo sh -c "echo 'log file = /var/log/samba/log.%m' >> /etc/samba/smb.conf" -sudo sh -c "echo 'max log size = 1000' >> /etc/samba/smb.conf" -sudo sh -c "echo 'syslog = 0' >> /etc/samba/smb.conf" -sudo sh -c "echo 'panic action = /usr/share/samba/panic-action %d' >> /etc/samba/smb.conf" -sudo sh -c "echo '### Authentication ###' >> /etc/samba/smb.conf" -sudo sh -c "echo 'security = user' >> /etc/samba/smb.conf" -sudo sh -c "echo 'map to guest = Bad User' >> /etc/samba/smb.conf" -sudo sh -c "echo 'guest account = pi' >> /etc/samba/smb.conf" -sudo sh -c "echo '### Share Definitions ###' >> /etc/samba/smb.conf" -sudo sh -c "echo '[little-backup-box]' >> /etc/samba/smb.conf" -sudo sh -c "echo 'comment = Little Backup Box /media/storage' >> /etc/samba/smb.conf" -sudo sh -c "echo 'path = /media/storage' >> /etc/samba/smb.conf" -sudo sh -c "echo 'browseable = yes' >> /etc/samba/smb.conf" -sudo sh -c "echo 'force user = pi' >> /etc/samba/smb.conf" -sudo sh -c "echo 'force group = pi' >> /etc/samba/smb.conf" -sudo sh -c "echo 'admin users = pi' >> /etc/samba/smb.conf" -sudo sh -c "echo 'writeable = yes' >> /etc/samba/smb.conf" -sudo sh -c "echo 'read only = no' >> /etc/samba/smb.conf" -sudo sh -c "echo 'guest ok = yes' >> /etc/samba/smb.conf" -sudo sh -c "echo 'create mask = 0777' >> /etc/samba/smb.conf" -sudo sh -c "echo 'directory mask = 0777' >> /etc/samba/smb.conf" -sudo samba restart +cat > /etc/network/if-up.d/startphpweb <<- "EOF" +#! /bin/sh +cd /root/little-backup-box-Bram/scripts && sudo php -S 0.0.0.0:8000 & +exit 0 +EOF echo "---------------------------------------------" echo "All done! The system will reboot in 1 minute." echo "---------------------------------------------"