mercredi 25 mars 2009

Sauvegardes automatiques avec rsnapshot

Comme j'en avais assez de perdre du temps à faire mes backups "à la main", j'ai installé rsnapshot. Il s'agit en fait d'un script Perl utilisant rsync et assez simple à configurer : il suffit de modifier le fichier /etc/rsnapshot.conf. Voici ma configuration (sans les commentaires) :
config_version 1.2
snapshot_root /mnt/vm/Backups/rsnapshot/
cmd_cp /bin/cp
cmd_rm /bin/rm
cmd_rsync /usr/bin/rsync
cmd_ssh /usr/bin/ssh
cmd_logger /usr/bin/logger
cmd_du /usr/bin/du
interval hourly 2
interval daily 1
verbose 2
loglevel 3
logfile /var/log/rsnapshot
lockfile /var/run/rsnapshot.pid
backup /home/ pc999/
backup /etc/ pc999/

Le paramètre "snapshot_root" définit l'emplacement de stockage des sauvegardes. Les éléments à sauvegarder ont été définis dans les deux dernières lignes : la première valeur spécifie le répertoire à sauver, la deuxième valeur spécifie le dossier de stockage de la sauvegarde relativement au chemin donné dans "snapshot_root".
Les lignes avec le paramètre "interval" permettent de définir la rotation des sauvegardes. Elles permettent de définir combien de sauvegardes rsnapshot doit conserver par heure, par jour, par semaine, etc. Dans mon cas, j'ai demandé pour ne conserver qu'un maximum de deux sauvegardes par heure, et une par jour.
Une fois ces paramètres définis, ont peut tester la configuration :
#rsnapshot configtest
#rsnapshot -t hourly
#rsnapshot -t daily
Pour lancer une sauvegarde manuellement :
#rsnapshot -v hourly
Pour automatiser les sauvegardes avec cron, j'ai créé le fichier :
/etc/cron.d/backup_hourly
avec le contenu suivant :
15 10 * * * root /usr/bin/rsnapshot hourly > /dev/null 2>&1
15 12 * * * root /usr/bin/rsnapshot hourly > /dev/null 2>&1
15 15 * * * root /usr/bin/rsnapshot daily > /dev/null 2>&1

Je peux maintenant dormir sur mes deux oreilles !




samedi 14 mars 2009

Fingerprint reader UPEK sous Fed10 64 bit - Suite...

Après l'installation des dépendances, on peut passer à celle du soft proprement dite. On ne peut utiliser directement le script d'installation car il fait appel à la commande "getlibs". Alors j'ai simplement modifié ce script en mettant en commentaire les différentes parties qui y font appel. Après avoir lancé le script :
./install.sh --with-upek
j'ai créé un lien symbolique vers la librairie libbsapi.so :
ln -s /usr/local/lib/libbsapi.so /usr/lib64/libbsapi.so
et un autre vers libpam_fingerprint.so :
ln -s /lib/security/libpam_fingerprint.so /lib64/security/libpam_fingerprint.so
Il ne me restait plus qu'à lancer le programme :
fingerprintGUI &
et à scanner mes empreintes ;-) Celles-ci sont stockées dans le répertoire ~/.fingerprints/libbsapi/. Et j'ai testé que mes doigts étaient bien reconnus avec la commande :
fingerprintIdentifier &
J'ai pu remarqué que cette commande fonctionnait seulement si elle était invoquée à partir du compte root. J'en ai déduit qu'il fallait positionner à 1 le setuid :
chmod u+s /usr/local/bin/fingerprintIdentifier
J'ai fait de même pour la commande fingerprintGUI.
On arrive à la partie la plus délicate, celle de la configuration du service PAM pour qu'il utilise Fingerprint pour l'authentification. Pour ce faire, j'ai simplement suivi les instructions du pdf. J'ai ainsi configurer la commande su via le fichier /etc/pam.d/su pour pouvoir m'authentifier avec mes empreintes digitales lorsque je me logge en root, ce qui a fonctionné.

Fingerprint reader UPEK sous Fed10 64 bit

Je me suis mis en tête de vouloir utiliser le lecteur d'empreintes digitales de mon portable à des fins d'authentification. Mon portable est équipé de Fedora Core 10 64 bit. La commande "lspci" m'a permis d'identifier le lecteur d'empreintes (UPEK 147e:1000). N'ayant pas trouvé les drivers/firmwares correspondant avec la commande "yum", après quelques recherches sur Google, j'ai découvert que le constructeur ne fournissait que le driver 32 bit. D'autres recherches m'ont amené sur le site :
http://www.n-view.net/Appliance/fingerprint/
Le soft proposé s'appelle "Fingerprint GUI" (version 0.9). J'ai décompressé le tgz, j'ai lu le pdf expliquant l'installation pas à pas, et j'ai lu le code source du script d'installation. Ce qui m'a permis de découvrir que le soft proposé sur ce site a été conçu en 32 bit. Et que le script d'installation prend cependant en considération le cas d'un Linux 64 bit mais uniquement pour les distributions genre Debian et Ubuntu, car il utilise la programme "getlibs" uniquement disponible sous ces OS. Cet utilitaire est capable de récupérer toutes les dépendances d'un programme et de les installer.
Ne disposant donc pas de la commande magique "getlibs", j'ai du passer mon temps à passer au crible toutes les dépendances 32 bits des applications fingerprintGUI, fingerprintIdentifier et fingerprintHelper à l'aide de la commande "ldd", et les ai ensuite installées avec "yum". (A suivre...)