Att ha ett system som ligger på det lilla SD-kortet har sina sidor. Man verkar kunna köra en PI på SSD via USB, men vill man inte det så kan det ju vara så att man lever lite farligt. Nå, backup av viktiga filer bör man ju alltid göra oftare än vad man gör.
Eftersom jag utanför min Pi kör Mac hela vägen så har jag letat över en ersättare för TimeMachine som skulle fungera på linux för pi. Rsync är ju ett gammalt beprövat program, men här har en kille satt samman ett skript som efterliknar Time Machines beteende med hjälp av rsync (och ssh förstås).
https://github.com/laurent22/rsync-time-backup
Riktigt smidigt. Jag kör timvisa backuper av viktiga bibliotek (t.ex. /etc/openhab2 eftersom jag kör det på min Pi, /home/pi för att säkerställa att man har skript man skrivit själv kvar och /etc för andra filer) till min NAS (man kan förstås använda vilken annan dator som helst på nätverket som ändå står på) utan att dubletterna tar extra plats.
Du behöver se till att du kan logga in på fjärrdatorn utan lösenord med någon användare via ssh. Se guide här:
http://www.linuxproblem.org/art_9.html
eller här (specifikt för min NAS)
http://karlcode.owtelse.com/blog/2015/0 ... -synology/
Sedan klonar du repositoryt från githup till en plats i ditt hembibliotek
Kod: Markera allt
git clone https://github.com/laurent22/rsync-time-backup
Kod: Markera allt
/home/pi/rsync-time-backup/rsync_tmbackup.sh -p 22 /etc/openhab2 rpi-rsync@10.0.1.60:/volume1/TM_Backup/RPiMasterBackup/openhab2
Första gången du kör skriptet kommer det att vilja lägga en fil i målbiblioteket, men skriptet ger dig koden som skapar filen när du försöker köra en rad som den ovan. Kör den bara så ordnar det sig.
Jag har sedan en crontab som ser ut så här (
Kod: Markera allt
crontab -e
Kod: Markera allt
crontab -l
0 */1 * * * /home/pi/rsync-time-backup/rsync_tmbackup.sh -p 22 /etc/openhab2 rpi-rsync@10.0.1.60:/volume1/TM_Backup/RPiMasterBackup/openhab2
0 */1 * * * /home/pi/rsync-time-backup/rsync_tmbackup.sh -p 22 /home/pi rpi-rsync@10.0.1.60:/volume1/TM_Backup/RPiMasterBackup/pi
0 */1 * * * /home/pi/rsync-time-backup/rsync_tmbackup.sh -p 22 /var/lib/homebridge rpi-rsync@10.0.1.60:/volume1/TM_Backup/RPiMasterBackup/homebridge
0 */1 * * * /home/pi/rsync-time-backup/rsync_tmbackup.sh -p 22 /etc rpi-rsync@10.0.1.60:/volume1/TM_Backup/RPiMasterBackup/etc
som gör att var och en av dessa bibliotek tas backup av varje timme. Varje körning hamnar i ett separat underbibliotek, med tidstämpel.
Även om inget ändrats mellan t.ex. kl 13 och 14 en arbetsdag så skapas ändå ett datum&tid-märkt bibliotek på servern och när man går in i det biblioteket så är man verkligen i en snapshot av alla filer så som de såg ut just då. Några nya filer ligger dock inte på servern, utan allt sköts med hjälp av hårda länkar så att varje bibliotek verkligen är något man kan packa ihop och lägga in på en ny server om allt skulle skita sig (eller, i alla fall ta information ifrån).
Smidigt och effektivt. Därför vill jag tipsa om lösningen.