Raspberry Hot Backup
Sunday, 15 April 2018
#!/bin/bash
# Usage instructions at http://www.megaleecher.net/Best_Raspberry_Pi_Hot_Backup_Shell_Script
# This version disables backup image compression as it takes too much time on Pi, to enable uncomment the relavent lines
# Setting up directories, Just change SUBDIR and DIR varibales below to get going
SUBDIR=raspberrypi_backups
DIR=/media/ExternalHd/$SUBDIR
echo “Starting RaspberryPI backup process!”
# First check if pv package is installed, if not, install it first
PACKAGESTATUS=dpkg -s pv | grep Status
;
if [[ $PACKAGESTATUS == S* ]]
then
echo “Package ‘pv’ is installed.”
else
echo “Package ‘pv’ is NOT installed.”
echo “Installing package ‘pv’. Please wait…”
apt-get -y install pv
fi
# Check if backup directory exists
if [ ! -d “$DIR” ];
then
echo “Backup directory $DIR doesn’t exist, creating it now!”
mkdir $DIR
fi
# Create a filename with datestamp for our current backup (without .img suffix)
OFILE=”$DIR/backup_$(date +%Y%m%d_%H%M%S)”
# Create final filename, with suffix
OFILEFINAL=$OFILE.img
# First sync disks
sync; sync
# Shut down some services before starting backup process
echo “Stopping some services before backup.”
service apache2 stop
service mysql stop
service cron stop
# Begin the backup process, should take about 1 hour from 8Gb SD card to HDD
echo “Backing up SD card to USB HDD.”
echo “This will take some time depending on your SD card size and read performance. Please wait…”
SDSIZE=blockdev --getsize64 /dev/mmcblk0
;
pv -tpreb /dev/mmcblk0 -s $SDSIZE | dd of=$OFILE bs=1M conv=sync,noerror iflag=fullblock
# Wait for DD to finish and catch result
RESULT=$?
# Start services again that where shutdown before backup process
echo “Start the stopped services again.”
service apache2 start
service mysql start
service cron start
# If command has completed successfully, delete previous backups and exit
if [ $RESULT = 0 ];
then
echo “Successful backup, previous backup files will be deleted.”
rm -f $DIR/backup_*.tar.gz
mv $OFILE $OFILEFINAL
echo “Backup is being tarred. Please wait…”
#tar zcf $OFILEFINAL.tar.gz $OFILEFINAL
# rm -rf $OFILEFINAL
echo “RaspberryPI backup process completed! FILE: $OFILEFINAL”
exit 0
# Else remove attempted backup file
else
echo “Backup failed! Previous backup files untouched.”
echo “Please check there is sufficient space on the HDD.”
rm -f $OFILE
echo “RaspberryPI backup process failed!”
exit 1
fi
Install EIBD & LINKNX
Saturday, 31 March 2018
Install EIBD and LINKNX on linux.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
apt-get install gcc apt-get install g++ apt-get install make mkdir linknx cd linknx wget http://downloads.sourceforge.net/sourcef....26.tar.gz wget http://downloads.sourceforge.net/sourcef...0.7.tar.gz tar -xzf linknx-0.0.1.26.tar.gz tar -xzf pthsem_2.0.7.tar.gz cd pthsem-2.0.7/ ./configure make make test make install export LD_LIBRARY_PATH=/usr/local/lib cd .. sudo apt-get install libmysqlclient-dev cd linknx-0.0.1.26/ ./configure --without-log4cpp --without-lua --with-mysql=/usr/bin/mysql_config --without-pth-test make make install cd .. wget http://downloads.sourceforge.net/sourcef...0.4.tar.gz tar -xzf bcusdk_0.0.4.tar.gz cd bcusdk-0.0.4/ ./configure --enable-onlyeibd --enable-eibnetiptunnel --enable-usb --enable-eibnetipserver --enable-ft12 --without-pth-test make make install |
Learn More / Full Story >>
CentOS 7 LAMP Server – Apache, PHP And MySQL
Monday, 8 January 2018
Once CentOS minimal OS is installed…
Installing Nano (Editor)
1 |
yum -y install nano |
Installing MySQL 5
1 |
yum -y install mariadb-server mariadb |
1 2 |
systemctl start mariadb.service systemctl enable mariadb.service |