nano backup-script  #!/bin/bash  TN=docs-monthly<br /> #TN=docs-weekly<br /> #TN=docs-daily  OF=$TN.tar.gz  LOGFILE=/var/log/backup.log  echo >>$LOGFILE echo "=====================================================" >>$LOGFILE echo "$(date +'%d-%b-%Y %R')" >>$LOGFILE echo " \"$TN\" ..." >>$LOGFILE  OLD_IFS=$IFS  IFS=$'\n'  SRCD="/mnt/source/folder_1 /mnt/source/folder_2 /mnt/source/folder_N"  TGTD="/var/backups/"  TGTD2="/mnt/archive/"  tar -czf $TGTD$OF $SRCD &>>$LOGFILE  tar -u -f $TGTD$OF $SRCD &>>$LOGFILE  STATUS=$?  IFS=$OLD_IFS  if [[ $STATUS != 0 ]]; then rm $TGTD$OF &>>$LOGFILE echo "###########################################" >>$LOGFILE echo "###  !   . ###" >>$LOGFILE echo "###########################################" >>$LOGFILE echo "$(date +'%d-%b-%Y %R%n')  $OF  " | sendxmpp -t -f /usr/local/etc/XMPP_settings _@ &>>$LOGFILE else echo "    \"$TGTD$OF\"" >>$LOGFILE echo "    $(date +'%R %d-%b-%Y')!" >>$LOGFILE echo "      $TGTD_archive" >>$LOGFILE mount $TGTD2 &>>$LOGFILE if [[ $? != 0 ]]; then echo "#############################################################" >>$LOGFILE echo "###       ###" >>$LOGFILE echo "#############################################################" >>$LOGFILE echo "$(date +'%d-%b-%Y %R%n')  $OF     " | sendxmpp -t -f /usr/local/etc/XMPP_settings _@ &>>$LOGFILE exit fi echo "     " >>$LOGFILE cp -f $TGTD$OF $TGTD_archive$OF &>>$LOGFILE if [[ $? != 0 ]]; then echo "#############################################################" >>$LOGFILE echo "###        ###" >>$LOGFILE echo "#############################################################" >>$LOGFILE echo "$(date +'%d-%b-%Y %R%n')  $OF     " | sendxmpp -t -f /usr/local/etc/XMPP_settings _@ &>>$LOGFILE else echo "     $(date +'%R %d-%b-%Y')!" >>$LOGFILE echo "   \"$TGTD_archive$OF\"" >>$LOGFILE fi echo "      $TGTD_archive" >>$LOGFILE umount $TGTD2 &>>$LOGFILE echo "   !" >>$LOGFILE fi exit  #_@;IP_jabber_:_jabber_ _ login@domen;127.0.0.1:5222 password  //192.168.0.250/arhiv /mnt/archive cifs noauto,rw,iocharset=utf8,cp866,file_mod=0666,dir_mod=0777,noexec,_netdev,credentials=/root/.passwd_to_archive_directory 0 0  tail -n 300 $LOGFILE >/tmp/unique_fantastic_filename.tmp mv -f /tmp/unique_fantastic_filename.tmp $LOGFILE  #!/bin/bash TN=docs-monthly #TN=docs-weekly #TN=docs-daily OF=$TN.tar.gz LOGFILE=/var/log/backup.log echo >>$LOGFILE echo "=====================================================" >>$LOGFILE echo "$(date +'%d-%b-%Y %R')" >>$LOGFILE echo " \"$TN\" ..." >>$LOGFILE OLD_IFS=$IFS IFS=$'\n' SRCD="/mnt/source/folder_1 /mnt/source/folder_2 /mnt/source/folder_N" TGTD="/var/backups/" TGTD2="/mnt/archive/" tar -czf $TGTD$OF $SRCD &>>$LOGFILE #tar -u -f $TGTD$OF $SRCD &>>$LOGFILE STATUS=$? IFS=$OLD_IFS if [[ $STATUS != 0 ]]; then rm $TGTD$OF &>>$LOGFILE echo "###########################################" >>$LOGFILE echo "###  !   . ###" >>$LOGFILE echo "###########################################" >>$LOGFILE echo "$(date +'%d-%b-%Y %R%n')  $OF  " | sendxmpp -t -f /usr/local/etc/XMPP_settings _@ &>>$LOGFILE else echo "    \"$TGTD$OF\"" >>$LOGFILE echo "    $(date +'%R %d-%b-%Y')!" >>$LOGFILE echo "      $TGTD_archive" >>$LOGFILE mount $TGTD2 &>>$LOGFILE if [[ $? != 0 ]]; then echo "#############################################################" >>$LOGFILE echo "###       ###" >>$LOGFILE echo "#############################################################" >>$LOGFILE echo "$(date +'%d-%b-%Y %R%n')  $OF     " | sendxmpp -t -f /usr/local/etc/XMPP_settings _@ &>>$LOGFILE exit fi echo "     " >>$LOGFILE cp -f $TGTD$OF $TGTD_archive$OF &>>$LOGFILE if [[ $? != 0 ]]; then echo "#############################################################" >>$LOGFILE echo "###        ###" >>$LOGFILE echo "#############################################################" >>$LOGFILE echo "$(date +'%d-%b-%Y %R%n')  $OF     " | sendxmpp -t -f /usr/local/etc/XMPP_settings _@ &>>$LOGFILE else echo "     $(date +'%R %d-%b-%Y')!" >>$LOGFILE echo "   \"$TGTD_archive$OF\"" >>$LOGFILE fi echo "      $TGTD_archive" >>$LOGFILE umount $TGTD2 &>>$LOGFILE echo "   !" >>$LOGFILE fi tail -n 300 $LOGFILE >/tmp/unique_fantastic_filename.tmp mv -f /tmp/unique_fantastic_filename.tmp $LOGFILE exit Source: https://habr.com/ru/post/136313/
All Articles