Backup¶
Avec sshpass (MdP en clair)¶
$ sudo apt-get install sshpass
\#!/bin/bash
sudo sshpass -p "password" rsync -avzO --exclude='@eaDir' -e ssh bruno@192.168.1.7:/var/services/homes/bruno/CloudStation/Drive/Raspberry :/var/services/homes/bruno/CloudStation/Drive/Unix /home/pi/Documents
Sauver avec CTRL-O (Return) et quitter avec CTRL-X (Return)
Par clé¶
$ ssh-keygen -t rsa -C pi@framboise
$ cat ~/.ssh/id_rsa.pub | ssh bruno@192.168.1.7 -p42666 'cat >> .ssh/authorized_keys'
\#!/bin/bash
rsync -avzO --exclude='@eaDir' -e ssh bruno@192.168.1.7:/var/services/homes/bruno/CloudStation/Drive/Raspberry :/var/services/homes/bruno/CloudStation/Drive/Unix /home/pi/Documents
\# option -O pour éviter l’erreur:
\# rsync: failed to set times on "/home/pi/Documents/Unix": Operation not permitted (1)
Sauver avec CTRL-O (Return) et quitter avec CTRL-X (Return)
Rendre le script exécutable
$ sudo chmod +x /home/pi/sync.sh
Ajouter le script à cron:¶
Créer une crontab pour l'utilisateur pi
pi@framboise:~ $ crontab -u pi -e
no crontab for pi - using an empty one
Select an editor. To change later, run 'select-editor'.
1. /bin/ed
2. /bin/nano <---- easiest
3. /usr/bin/vim.tiny
Choose 1-3 [2]: 2
crontab: installing new crontab
Editer la crontab utilisateur (pi)
$ pi@framboise:~ $ crontab -e
Ajouter la ligne
*/5 * * * * /home/pi/Documents/sync.sh >> /home/pi/sync.log 2>&1
Le script sync.sh est exécuté toutes les 5mn.
STDOUT est redirigé sur sync.log et STDERR aussi.
Redirection du flux de sortie (STDOUT): >/dev/null
Rediriger uniquement STDERR: 2>/dev/null
Rediriger STDERR là où est redirigé STDOUT: 2>&1
Si les sorties ne sont redirigées, erreur dans /var/syslog
CRON[8380]: (CRON) info (No MTA installed, discarding output)
(pas de Mail Transfer Agent, ie Postfix, Mutt…)
Lire la crontab utilisateur (pi)
pi@framboise:~ $ crontab -l
Dernière mise à jour:
September 16, 2018