Backup a complete Linux system
1. Create the following script, e.g. /usr/local/bin/backup_system.sh
#!/bin/bash timestamp_start=`date +%s` find / -type s -print > /tmp/sockets-to-exclude tar cvpzf /tmp/backup.$(date +\%Y\%m\%d\%H\%M\%S).tar.gz -C / -X /tmp/sockets-to-exclude --exclude=dev --exclude=mnt --exclude=proc --exclude=sys --exclude=tmp --exclude=lost+found / > /mnt/NAS/backup.$(date +\%Y\%m\%d\%H\%M\%S).log tar_returncode=$? timestamp_end=`date +%s` runtime=$((timestamp_end-timestamp_start)) echo "Backup script finished in " $runtime " seconds" if [[ $tarreturncode -eq 1 ]]; then exit 0 else exit $tar_returncode fi
2. Run the script and copy your /tmp/backup….tar.gz file to your final destination