Mise à jour Crontab avec ffp

Sur un NAS D-Link qui a la sur-couche ffp, la mise à jour de tâches crontab demande une adaptation de la syntaxe pour prendre en compte l’arborescence spécifique de ffp.

Pour éditer le fichier Crontab :

[pastacode lang=”bash” message=”” highlight=”” provider=”manual”]

nano /ffp/etc/cron.d/crontab

[/pastacode]

Pour que Crontab prenne en compte les modifications apportées :

[pastacode lang=”bash” message=”” highlight=”” provider=”manual”]

/ffp/start/uwcron.sh restart

[/pastacode]

Pour vérifier la présence des modifications :

[pastacode lang=”markup” message=”” highlight=”” provider=”manual”]

crontab -l

[/pastacode]

La sauvegarde avec Rsync

Sous linux rsync permet de sauvegarder ou synchroniser des dossiers. Le but est de sauvegarder un ensemble de dossiers entre 2 machines d’un même réseau local.

[pastacode lang=”bash” message=”” highlight=”” provider=”manual” manual=”rsync%20-av%20–delete%20–backup%20–backup-dir%3D%2Ftmp%2FCorbeille%0A%20%20%20%20%20%20–exclude%3D%2Fmnt%2FHd1%2Ftrashbox%20-e%20%22%2Fbin%2Fssh%22%20root%40192.168.0.x%3A%2Fsource%20%2Fdestination%2F”/]

Décryptage de la commande rsync :

-av : le a pour le mode d’archivage classique et le v pour que le mode verbeux.
--delete : permet de supprimer dans la destination les fichiers qui ne sont plus présent dans la source (mode mirroir).
--backup : ajoute une fonction de sauvegarde des fichiers effacées avec la commande --delete ce qui génère une sorte de poubelle des fichiers effacés.
--backup-dir= : indique l’emplacement des fichiers qui sont mis à la poubelle.
--exclude= : permet d’exclure un sous dossier de l’ensemble sauvegardé.
-e "/bin/ssh" : indique l’utilisation d’une connexion à distance pour atteindre les fichiers. Dans notre cas, c’est par ssh et c’est pour la source qui se trouve à distance.
root@192.168.0.x:/source : indique la source. Elle se trouve à distance et on utilise l’utilisateur root sur la machine distante 192.168.0.x

Pour que la connexion puisse se réaliser sans utiliser le mot de passe de root, il faut utiliser un échange de clefs SSH comme expliqué dans cet article

/destination/ : indique le dossier de destination

Explication sur le choix du / mis à la fin des syntaxes de la source et de la destination.
Le fait de pas mettre / à la fin de /source et dans mettre un à la fin de /destination/ permet de créer une arborescence de sauvegarde du type /destination/source automatiquement. La racine de la source est directement prise et générée sur le dossier de destination.

Continue reading  

Pousser le résultat d’un script bash dans un fichier

Lorsque l’on fait un script de sauvegarde par exemple on peut avoir besoin de loguer le résultat de ce script dans un fichier.

[pastacode lang=”bash” message=”” highlight=”” provider=”manual”]

/home/root/scripts/sauvegarde.sh >> /home/root/log/sauvegarde.log 2>&1

[/pastacode]

Le double supérieur >> permet d’envoyer la sortie de la commande dans le fichier de destination ajoutant son contenu à la fin du fichier. Et 2>&1 lui indique qu’il doit envoyé les erreurs (2) dans la sortie standard (1) donc dans le fichier.