Changes

From SME Server
Jump to navigationJump to search
5,849 bytes removed ,  20:48, 11 October 2020
Line 1: Line 1:  
{{Languages|Affa}}
 
{{Languages|Affa}}
{{Level|type=Niveau de compétence : Avancé|Advanced|Les instructions dans cette page requièrent un niveau avancé. Une bonne compréhension de Linux et de SME est recommandée.}}
+
{{Level|type=Niveau de compétence : Avancé|Advanced|Les instructions dans cette page requièrent un niveau avancé. Une bonne compréhension de Linux et du serveur KOOZALI SME est recommandée.}}
{{usefulnote|type=Cet article...}}
+
{{usefulnote/fr}}
    
=== Développeur ===
 
=== Développeur ===
Line 11: Line 11:     
=== Versions ===
 
=== Versions ===
{{ #smeversion: affa}}
+
{{#smeversion: smeserver-affa}}
{{ #smeversion: smeserver-affa}}
   
{{Warning box|type=Attention :| il n'est pas possible de faire une mise à jour de affa vers smeserver-affa ; de même, il n'est pas possible d'utiliser les fichiers de configuration d'affa (en .pl) pour faire fonctionner smeserver-affa. Il faut tout désinstaller et installer la nouvelle contribution. La seule chose qui peut être conservée est le répertoire /var/affa.}}
 
{{Warning box|type=Attention :| il n'est pas possible de faire une mise à jour de affa vers smeserver-affa ; de même, il n'est pas possible d'utiliser les fichiers de configuration d'affa (en .pl) pour faire fonctionner smeserver-affa. Il faut tout désinstaller et installer la nouvelle contribution. La seule chose qui peut être conservée est le répertoire /var/affa.}}
   Line 44: Line 43:     
==== Un coup d’œil aux caractéristiques d'Affa ====
 
==== Un coup d’œil aux caractéristiques d'Affa ====
* Affa est sûr : tous les transferts et connexions sont faits en utilisant le protocole ssh avec une authentification par clés publique/privée.
+
* Affa est sûr : tous les transferts et connexions sont faits en utilisant le protocole ssh avec une authentification par clés publique/privée (mais DSA, cf. « Attention » ci-dessous).
 
* Lance périodiquement des sauvegardes complètes sans intervention.
 
* Lance périodiquement des sauvegardes complètes sans intervention.
 
* Seules les différences avec la sauvegarde complète précédente sont transférées par le réseau.
 
* Seules les différences avec la sauvegarde complète précédente sont transférées par le réseau.
Line 58: Line 57:  
* Des répertoires et fichiers peuvent être exclus de la sauvegarde.
 
* Des répertoires et fichiers peuvent être exclus de la sauvegarde.
 
* Les serveurs Linux non SME peuvent être sauvegardés en mettant la propriété SMEServer à 'no' et en utilisant une liste d'inclusion.
 
* Les serveurs Linux non SME peuvent être sauvegardés en mettant la propriété SMEServer à 'no' et en utilisant une liste d'inclusion.
 +
{{Warning box|type=Attention :| si vous souhaitez sauvegarder un serveur Linux assez récent (Debian 9 et supérieur, ...), Affa qui utilise des clés DSA ne pourra pas se connecter à votre serveur qui voudra des clés RSA. Cf. [[https://bugs.contribs.org/show_bug.cgi?id=10783 bogue 10783]]. Un patch est disponible mais lisez bien le commentaire 8, tout n'est pas réglé.}}
 
* En mode ESXi, les machines virtuelles actives peuvent être sauvegardées. Voir [[Backup_of_ESXi_Virtual_Machines_using_Affa|Sauvegarde de machines virtuelles ESXi avec Affa]] en anglais.
 
* En mode ESXi, les machines virtuelles actives peuvent être sauvegardées. Voir [[Backup_of_ESXi_Virtual_Machines_using_Affa|Sauvegarde de machines virtuelles ESXi avec Affa]] en anglais.
 
* Priorité configurable (nice level) pour les process rsync sur les serveurs backup et source.
 
* Priorité configurable (nice level) pour les process rsync sur les serveurs backup et source.
Line 89: Line 89:  
Les instructions suivantes supposent qu'une nouvelle installation d'Affa v.3 est faite sur un nouveau Serveur SME dédié qui sert de serveur de sauvegarde dédié (dénommé par la suite «affabox»). Les tâches ne sont pas migrées, ni migrables depuis Affa v.2. Pour utiliser un Serveur SME existant, il suffit de sauter les instructions relatives à l'installation d'un nouveau Serveur SME.
 
Les instructions suivantes supposent qu'une nouvelle installation d'Affa v.3 est faite sur un nouveau Serveur SME dédié qui sert de serveur de sauvegarde dédié (dénommé par la suite «affabox»). Les tâches ne sont pas migrées, ni migrables depuis Affa v.2. Pour utiliser un Serveur SME existant, il suffit de sauter les instructions relatives à l'installation d'un nouveau Serveur SME.
   −
Installer à partir d'un CDROM une machine dédiée en version 8.2 ou 9.1. Utiliser l'exemple suivant de configuration :
+
Installer à partir d'un CDROM une machine dédiée en version 9.x. Utiliser l'exemple suivant de configuration :
    
<ol><li>Nom de domaine : chezmoi.xx (utiliser votre nom de domaine existant) ;</li>
 
<ol><li>Nom de domaine : chezmoi.xx (utiliser votre nom de domaine existant) ;</li>
Line 115: Line 115:  
Pour installer Affa v.3, saisir la commande suivante :
 
Pour installer Affa v.3, saisir la commande suivante :
   −
==== Pour SME 8 ====
+
- pour SME 10
 
+
yum install smeserver-affa --enablerepo=smecontribs,openfusion
 +
- pour SME9
 
  yum install smeserver-affa --enablerepo=smecontribs
 
  yum install smeserver-affa --enablerepo=smecontribs
==== Pour SME 9 ====
     −
yum install smeserver-affa --enablerepo=smecontribs
  −
<headertabs/>
      
Le serveur a, de nouveau, besoin d'être mis à jour.
 
Le serveur a, de nouveau, besoin d'être mis à jour.
Line 139: Line 137:  
Vous avez un serveur SME de production avec comme nom d'hôte 'smeserver‘ et d'IP 192.168.0.2.<br>
 
Vous avez un serveur SME de production avec comme nom d'hôte 'smeserver‘ et d'IP 192.168.0.2.<br>
 
Vous avez un second serveur SME comme serveur de sauvegarde avec comme nom d'hôte 'affabox‘ et d'IP 192.168.0.10.
 
Vous avez un second serveur SME comme serveur de sauvegarde avec comme nom d'hôte 'affabox‘ et d'IP 192.168.0.10.
<ol></li><li>Connectez-vous à 'affabox' en tant que «root» et installez la contribution comme indiqué ci-dessus.
+
<ol><li>Connectez-vous à 'affabox' en tant que «root» et installez la contribution comme indiqué ci-dessus.
    
</li><li>Editez ''/etc/affa/backup-smeserver.conf''. En utilisant, par exemple, l'éditeur ''nano'', créez le fichier de configuration de tâche à partir de l’exemple suivant pour le nom de tâche ''backup-smeserver'' :
 
</li><li>Editez ''/etc/affa/backup-smeserver.conf''. En utilisant, par exemple, l'éditeur ''nano'', créez le fichier de configuration de tâche à partir de l’exemple suivant pour le nom de tâche ''backup-smeserver'' :
Line 165: Line 163:  
  status=enabled
 
  status=enabled
 
Si vous avez un certificat Letsencrypt sur le serveur de production, alors vous devez aussi inclure :
 
Si vous avez un certificat Letsencrypt sur le serveur de production, alors vous devez aussi inclure :
  Include=/etc/dehydrated
+
   
 +
Include=/etc/dehydrated
 +
 
 
Sauvegardez ensuite votre fichier de configuration de tâche.
 
Sauvegardez ensuite votre fichier de configuration de tâche.
   Line 171: Line 171:  
  affa --configcheck
 
  affa --configcheck
 
Cela ne devrait révéler aucune erreur.
 
Cela ne devrait révéler aucune erreur.
</li><li>Maintenant créez / envoyez vos fichiers de clés à votre serveur SME de production :
+
</li><li>Maintenant créez vos clés dsa et envoyez votre clé publique à votre serveur SME de production :
 
  affa --send-key backup-smeserver
 
  affa --send-key backup-smeserver
 
{{Note box|type=Note :|initialement, lorsque vous faites cette étape, vous devez temporairement mettre «oui» à "Autoriser l'authentification par SSH à l'aide de mots de passe standards" dans l'accès à distance sur le serveur de production. [[https://wiki.contribs.org/SME_Server:Documentation:Administration_Manual:Chapter11/fr#11.1._Acc.C3.A9s_.C3.A0_distance]]}}
 
{{Note box|type=Note :|initialement, lorsque vous faites cette étape, vous devez temporairement mettre «oui» à "Autoriser l'authentification par SSH à l'aide de mots de passe standards" dans l'accès à distance sur le serveur de production. [[https://wiki.contribs.org/SME_Server:Documentation:Administration_Manual:Chapter11/fr#11.1._Acc.C3.A9s_.C3.A0_distance]]}}
 +
{{Warning box|type=Attention :| il est possible que certaines machines sauvegardées (non SME-KOOZALI) renvoient une erreur si elles n'acceptent plus les clés dsa ; voir le bogue [[http://bugs.contribs.org/show_bug.cgi?id=10783]]}}
 
Les sorties suivantes doivent apparaître sur la console :
 
Les sorties suivantes doivent apparaître sur la console :
  Job sme-backup: Generating DSA keys...
+
   
 +
Job sme-backup: Generating DSA keys...
 
  Successfully created DSA key pair.
 
  Successfully created DSA key pair.
 
  root@192.168.0.2's password:                        <Entrer le mot de passe de 192.168.0.2/smeserver et tapez sur la touche ENTRÉE>
 
  root@192.168.0.2's password:                        <Entrer le mot de passe de 192.168.0.2/smeserver et tapez sur la touche ENTRÉE>
Line 183: Line 185:  
  affa --run backup-smeserver
 
  affa --run backup-smeserver
 
Les sorties suivantes doivent apparaître sur la console :
 
Les sorties suivantes doivent apparaître sur la console :
  The authenticity of host 'smeserver (192.168.0.2)' can't be established.
+
   
 +
The authenticity of host 'smeserver (192.168.0.2)' can't be established.
 
  RSA key fingerprint is 3b..........65.
 
  RSA key fingerprint is 3b..........65.
 
  Are you sure you want ton continue connecting (yes/no)?                          <Tapez : yes>
 
  Are you sure you want ton continue connecting (yes/no)?                          <Tapez : yes>
 +
 
Maintenant votre sauvegarde devrait fonctionner pour la première fois. En fonction du volume des fichiers, cela prend un certain temps.
 
Maintenant votre sauvegarde devrait fonctionner pour la première fois. En fonction du volume des fichiers, cela prend un certain temps.
 
{{Warning box|type=Attention :|du fait de la probable durée importante de la première sauvegarde, on peut légitimement être tenté de mettre une éperluète («&») à la fin de cette commande pour récupérer la main et pouvoir vérifier par une commande («top» ou autre) que la sauvegarde fonctionne... au lieu de se rendre compte plusieurs heures plus tard qu'elle ne fonctionne pas... Comme il faut accepter la clé RSA, il ne faut surtout pas le faire ! Solution : se connecter en ssh au serveur de sauvegarde pour vérifier que tout fonctionne bien.}}
 
{{Warning box|type=Attention :|du fait de la probable durée importante de la première sauvegarde, on peut légitimement être tenté de mettre une éperluète («&») à la fin de cette commande pour récupérer la main et pouvoir vérifier par une commande («top» ou autre) que la sauvegarde fonctionne... au lieu de se rendre compte plusieurs heures plus tard qu'elle ne fonctionne pas... Comme il faut accepter la clé RSA, il ne faut surtout pas le faire ! Solution : se connecter en ssh au serveur de sauvegarde pour vérifier que tout fonctionne bien.}}
Line 192: Line 196:     
ou lancez la tâche une seconde fois :
 
ou lancez la tâche une seconde fois :
  affa --run backup-smeserver
+
   
 +
affa --run backup-smeserver
 +
 
 
Notez que le mot de passe ne vous est plus demandé. Notez aussi que cette seconde exécution de la tâche ''backup-smeserver'' s’exécutera considérablement plus vite, parce que tous les fichiers ne sont pas copiés de nouveau : seule la différence par rapport à la première exécution est sauvegardée, le reste est enregistré sous la forme de liens vers les copies des fichiers de la première sauvegarde.
 
Notez que le mot de passe ne vous est plus demandé. Notez aussi que cette seconde exécution de la tâche ''backup-smeserver'' s’exécutera considérablement plus vite, parce que tous les fichiers ne sont pas copiés de nouveau : seule la différence par rapport à la première exécution est sauvegardée, le reste est enregistré sous la forme de liens vers les copies des fichiers de la première sauvegarde.
    
Vérifiez que la seconde archive est aussi disponible :
 
Vérifiez que la seconde archive est aussi disponible :
  affa --list-archives
+
   
 +
affa --list-archives
    
À partir d'ici, vous pouvez travailler comme avec Affa 2. Modifiez votre fichier de configuration comme prescrit et décrit ci-dessous. Automatisez la sauvegarde en utilisant la commande ''affa --make-cronjobs'', voir ci-dessous.
 
À partir d'ici, vous pouvez travailler comme avec Affa 2. Modifiez votre fichier de configuration comme prescrit et décrit ci-dessous. Automatisez la sauvegarde en utilisant la commande ''affa --make-cronjobs'', voir ci-dessous.
Line 218: Line 225:  
</ul>
 
</ul>
 
En conséquence,  la liste ci-dessous devrait reproduire la liste de la version Affa 3 originale, en ajoutant en plus les propriétés ci-dessus. Pour des détails, se référer au [https://www.guedel.eu/index.php/informatique/sme-server-8/affa-v3 site Internet d'Arnaud].
 
En conséquence,  la liste ci-dessous devrait reproduire la liste de la version Affa 3 originale, en ajoutant en plus les propriétés ci-dessus. Pour des détails, se référer au [https://www.guedel.eu/index.php/informatique/sme-server-8/affa-v3 site Internet d'Arnaud].
{| border="1" cellpadding="3" cellspacing=0
+
{| border="1" cellspacing="0" cellpadding="3"
 
|-
 
|-
 
| '''Propriété''' || '''Valeur''' || '''Valeur multiple''' || '''Par défaut''' || '''Description'''  
 
| '''Propriété''' || '''Valeur''' || '''Valeur multiple''' || '''Par défaut''' || '''Description'''  
Line 244: Line 251:  
| oui
 
| oui
 
| 2230
 
| 2230
| L'horaire à laquelle la tâche s'exécutera. Utiliser exactement 4 chiffres, pas de virgule, pas de point. '''Important :''' l'utilisation du format correct HHMM est essentielle. Des horaires mal formatés causeront d’étranges erreurs Perl. Pour plusieurs sauvegardes par jour, répéter la ligne pour chaque horaire.
+
| L'horaire à laquelle la tâche s'exécutera. Utiliser exactement 4 chiffres, pas de virgule, pas de point. '''Important :''' l'utilisation du format correct HHMM est essentielle. Des horaires mal formatés causeront d’étranges erreurs Perl. Pour obtenir plusieurs sauvegardes par jour, répéter la ligne : une ligne pour chaque horaire désiré.
 
|-
 
|-
 
| status  
 
| status  
Line 564: Line 571:     
Exemple : vous voulez configurer la propriété 'localNice' à 19 pour toutes les tâches. Ajoutez alors la section suivante dans l'un de vos fichiers de configuration :
 
Exemple : vous voulez configurer la propriété 'localNice' à 19 pour toutes les tâches. Ajoutez alors la section suivante dans l'un de vos fichiers de configuration :
  [GlobalAffaConfig]
+
   
 +
[GlobalAffaConfig]
 
  localNice=19
 
  localNice=19
 +
 
Vous pouvez aussi mettre cette section dans le fichier de configuration dédié '''/etc/affa/GlobalAffaConfig.conf''' : elle sera plus facile à retrouver.
 
Vous pouvez aussi mettre cette section dans le fichier de configuration dédié '''/etc/affa/GlobalAffaConfig.conf''' : elle sera plus facile à retrouver.
 
En conséquence, vous n'avez pas besoin de configurer cette propriété dans vos tâches individuelles. Les propriétés définies dans cette section remplacent les valeurs par défaut.
 
En conséquence, vous n'avez pas besoin de configurer cette propriété dans vos tâches individuelles. Les propriétés définies dans cette section remplacent les valeurs par défaut.
Line 577: Line 586:     
Toutes les tâches peuvent êtres désactivées à travers «cronjobs» en configurant «globalStatus» à «disabled».
 
Toutes les tâches peuvent êtres désactivées à travers «cronjobs» en configurant «globalStatus» à «disabled».
  [GlobalAffaConfig]
+
   
 +
[GlobalAffaConfig]
 
  globalStatus=disabled
 
  globalStatus=disabled
    
Pour les remettre en service, soit effacer la ligne de configuration ci-dessus, soit configurer :
 
Pour les remettre en service, soit effacer la ligne de configuration ci-dessus, soit configurer :
  globalStatus=jobs
+
   
 +
globalStatus=jobs
 +
 
 
qui est la valeur par défaut.
 
qui est la valeur par défaut.
    
Vous pouvez aussi configurer la valeur à :
 
Vous pouvez aussi configurer la valeur à :
  globalStatus=enabled
+
   
 +
globalStatus=enabled
 +
 
 
qui assure l'exécution de la tâche au travers de «cronjobs» et écrase les valeurs spécifiques dans la section spécifique de la tâche.
 
qui assure l'exécution de la tâche au travers de «cronjobs» et écrase les valeurs spécifiques dans la section spécifique de la tâche.
    
=== Utilisation et options de ligne de commande ===
 
=== Utilisation et options de ligne de commande ===
{{Note box|Les options peuvent être abrégées tant qu'elles restent uniques, ex. --mak est identique à --make-cronjobs}}
+
{{Note box|type=Note :|les options peuvent être abrégées tant qu'elles restent uniques, ex. --mak est identique à --make-cronjobs.}}
 
  '''affa --run JOB'''
 
  '''affa --run JOB'''
 +
 
Lance une tâche. Normalement effectué par cronjob.  
 
Lance une tâche. Normalement effectué par cronjob.  
    
  '''affa --make-cronjobs'''
 
  '''affa --make-cronjobs'''
Configure les tâches cron comme programmées dans les enregistrements de tâches. Exécutez cette commande pour que les changements de configuration liés au temps soient efficaces, c'est-à-dire les propriétés de TimeSchedule, killAt et resumeKilledAt. Toutes les 15 minutes, Affa vérifie si un fichier de configuration est plus récent que le fichier cronjob et exécute la commande make-cronjobs si tel est le cas. Donc, vous n'avez pas besoin d'exécuter cette commande manuellement, vous pouvez également attendre au maximum 15 minutes avant l'entrée en vigueur de vos mises à jour.
+
 
 +
Configure les tâches cron comme programmées dans les enregistrements de tâches. Exécutez cette commande pour appliquer les modifications des propriétés liées au temps, c’est-à-dire TimeSchedule, killAt et resumeKilledAt. Exécutez cette commande pour que les changements de configuration liés au temps, c'est-à-dire les propriétés de TimeSchedule, killAt et resumeKilledAt, soient efficients. Toutes les 15 minutes, Affa vérifie si un fichier de configuration est plus récent que le fichier cronjob et exécute la commande make-cronjobs si tel est le cas. Donc, vous n'avez pas besoin d'exécuter cette commande manuellement, vous pouvez également attendre au maximum 15 minutes avant l'entrée en vigueur de vos mises à jour.
    
  '''affa --configcheck'''
 
  '''affa --configcheck'''
 +
 
Vérifie la syntaxe et les valeurs dans tous les fichiers de configuration trouvés dans /etc/affa/. Exécutez cette commande après avoir modifié la configuration. Les erreurs des minuscules / minuscules dans les noms de propriétés sont corrigées automatiquement.
 
Vérifie la syntaxe et les valeurs dans tous les fichiers de configuration trouvés dans /etc/affa/. Exécutez cette commande après avoir modifié la configuration. Les erreurs des minuscules / minuscules dans les noms de propriétés sont corrigées automatiquement.
    
  '''affa --send-key JOB'''
 
  '''affa --send-key JOB'''
 
  '''affa --send-key --host=TARGETHOST [--port=PORT] [--remoteOS=cygwin]'''
 
  '''affa --send-key --host=TARGETHOST [--port=PORT] [--remoteOS=cygwin]'''
 +
 
Génère d'abord la clé DSA pour le serveur Affa, si cela n'a pas déjà été fait. Envoie ensuite la clé publique à l'hôte 'remoteHostName' comme configuré dans l'enregistrement de la tâche et génère l'entrée ssh known host (hôte connu) spécifique à la tâche.  
 
Génère d'abord la clé DSA pour le serveur Affa, si cela n'a pas déjà été fait. Envoie ensuite la clé publique à l'hôte 'remoteHostName' comme configuré dans l'enregistrement de la tâche et génère l'entrée ssh known host (hôte connu) spécifique à la tâche.  
{{Note box|Initialement, lorsque vous faites cette étape, vous aurez besoin d'activer temporairement «Autoriser l'authentification par SSH à l'aide de mots de passe standards» sur le serveur de production.}}
+
{{Note box|type=Note :|initialement, lorsque vous faites cette étape, vous aurez besoin d'activer '''temporairement''' «Autoriser l'authentification par SSH à l'aide de mots de passe standards» sur le serveur de production.}}
{{Note box|<nowiki>l'option --send-key fonctionne pour SME Server comme serveur distant et pour les systèmes sur lesquels les clés publiques sont stockées dans /root/.ssh/authorized_keys2 et sur lesquels les commandes /bin/cat, /bin/touch, /bin/grep et /bin/mv sont disponibles. Avec remoteOS=cygwin cela fonctionne pour les serveurs distants sous Cygwin/Windows.</nowiki>}}
+
{{Note box|type=Note :|<nowiki>l'option --send-key fonctionne pour SME Server comme serveur distant et pour les systèmes sur lesquels les clés publiques sont stockées dans /root/.ssh/authorized_keys2 et sur lesquels les commandes /bin/cat, /bin/touch, /bin/grep et /bin/mv sont disponibles. Avec remoteOS=cygwin cela fonctionne pour les serveurs distants sous Cygwin/Windows.</nowiki>}}
    
  '''affa --check-connections [JOB JOB ...]'''
 
  '''affa --check-connections [JOB JOB ...]'''
Vérifie la connexion ssh et, si nécessaire, rsyncd auth, pour toutes les tâches données en arguments. Sans aucun argument, toutes les tâches sont vérifiées.
+
 
 +
Vérifie la connexion ssh et, si nécessaire, rsyncd auth, pour toutes les tâches données en arguments. Sans aucun argument, toutes les tâches sont vérifiées. Pour les tâches pour lesquelles la clé publique n'avait pas encore été envoyée, il vous sera demandé le mot de passe et la clé sera envoyée ensuite.
    
  '''affa --full-restore JOB [ARCHIVE]'''
 
  '''affa --full-restore JOB [ARCHIVE]'''
 +
 
Effectue une restauration totale depuis l'archive de sauvegarde [ARCHIVE] sur le serveur source distant comme défini dans l'enregistrement JOB. Si [ARCHIVE] n'est pas donnée, l'archive 'scheduled.0' est utilisée par défaut. La restauration totale reconstruit le serveur comme il était au moment de la sauvegarde. Après la restauration, l'hôte source est redémarré.
 
Effectue une restauration totale depuis l'archive de sauvegarde [ARCHIVE] sur le serveur source distant comme défini dans l'enregistrement JOB. Si [ARCHIVE] n'est pas donnée, l'archive 'scheduled.0' est utilisée par défaut. La restauration totale reconstruit le serveur comme il était au moment de la sauvegarde. Après la restauration, l'hôte source est redémarré.
 
Avec l'option --preserve-newer=yes, les fichiers du serveur distant avec un heure de modification plus récente que celle de la sauvegarde ne sont pas écrasés.
 
Avec l'option --preserve-newer=yes, les fichiers du serveur distant avec un heure de modification plus récente que celle de la sauvegarde ne sont pas écrasés.
Line 616: Line 636:     
  '''affa --list-archives JOB'''
 
  '''affa --list-archives JOB'''
Displays a table of all present archives of job JOB with date, number of files, size and and bytes received. While column buTime shows the actual rsync time, the column ddTime shows the length of the subsequent deduplication run. ddYld is the gained deduplication yield in bytes.
+
 
 +
Affiche un tableau de toutes les archives actuelles de la tâche «JOB» avec la date, le nombre de fichiers, la taille et les octets reçus. Tandis que la colonne «buTime» affiche l'heure de synchronisation réelle, la colonne «ddTime» montre la durée de l'exécution de la déduplication. «DdYld» est le rendement de déduplication gagné en bits.
    
<small><pre>
 
<small><pre>
Affa version 3.1.0-0 on affa-2.mydomain.com
+
Affa version 3.2.2.3-7 on affa-3.mondomaine.com
 
+------------------------------------------------------------------------------+
 
+------------------------------------------------------------------------------+
 
| Job: fshare-ak                                                              |
 
| Job: fshare-ak                                                              |
Line 625: Line 646:  
| Directory: /var/affa/fshare-ak/                                              |
 
| Directory: /var/affa/fshare-ak/                                              |
 
| Hostname: 10.204.104.4                                                      |
 
| Hostname: 10.204.104.4                                                      |
| Email: sysadmin@mydomain.com                                                |
+
| Email: sysadmin@mondomaine.com                                                |
 
+-----+----------------------+--------+--------+-------+-------+-------+-------+
 
+-----+----------------------+--------+--------+-------+-------+-------+-------+
 
| Run | Completion date      | buTime | ddTime | ddYld | Files | Size  | Recvd |
 
| Run | Completion date      | buTime | ddTime | ddYld | Files | Size  | Recvd |
Line 662: Line 683:     
  '''affa --list-archives [--csv] JOB'''
 
  '''affa --list-archives [--csv] JOB'''
With --csv, the output is in machine readable colon separated format.
+
 
 +
Avec l'option --csv, la sortie est dans le format séparé par des points virgules pour la lecture machine.
 
<small><pre>
 
<small><pre>
 
Archive:Count;Date;Files;Size;RootDirFilesystemAvail;RootDirFilesystemUsed;valid;TotalBytesReceived;ExecutionTime;DedupTotalFiles;DedupReplacedFiles;DedupSavedBytes;DedupExectime;DedupDate
 
Archive:Count;Date;Files;Size;RootDirFilesystemAvail;RootDirFilesystemUsed;valid;TotalBytesReceived;ExecutionTime;DedupTotalFiles;DedupReplacedFiles;DedupSavedBytes;DedupExectime;DedupDate
Line 681: Line 703:     
  '''affa --status [--csv]'''
 
  '''affa --status [--csv]'''
Displays a table of all configured jobs with enable status, time of last and next run, size of the most recent archive, exectution time of the last run and the number of scheduled (S), daily (D), weekly (W), monthly (M) and yearly (Y) archives. If last time shows 'failed', the job did not run in the last 24h. For disabled jobs 'Last' always shows 'failed' after 24 h. To see the date and time of the last run of those jobs use the --list-archives option. Column 'Next' shows the time when the next run will be started, if 'Enabled' is 'yes'. Column 'ddYld' shows the deduplication yield in bytes.
+
 
 +
Affiche un tableau de toutes les tâches configurées avec le statut de validation, l'heure de la dernière et la prochaine exécution, la taille de l'archive la plus récente, la durée d'exécution de la dernière exécution et le nombre de sauvegardes conservées ce jour (S), quotidiennement (D), hebdomadaire (W) mensuelles (M) et annuelles (Y). Si la dernière fois indique «échoué», le travail n'a pas fonctionné dans les dernières 24 h. Pour les tâches désactivées, «Last» affiche toujours «échoué» après 24 h. Pour voir la date et l'heure de la dernière exécution de ces tâches, utilisez l'option --list-archives. La colonne «Suivant» indique l'heure à laquelle la prochaine exécution sera lancée, si «Activé» est à «oui». La colonne «ddYld» indique le rendement de déduplication en bits.
    
<small><pre>
 
<small><pre>
Affa version 3.1.0-0 on affa-2.mydomain.com
+
Affa version 3.2.2.3-7 on affa-3.mondomaine.com
 
+--------------+-----+-------+--------+-------+-------+-------+----------------+
 
+--------------+-----+-------+--------+-------+-------+-------+----------------+
 
| Job          | ENA |  Last |  Time |  Next |  Size | ddYld | N of S,D,W,M,Y |
 
| Job          | ENA |  Last |  Time |  Next |  Size | ddYld | N of S,D,W,M,Y |
Line 706: Line 729:  
| wshare      | yes | 00:34 |  1h49m | 22:45 |  23G |  484M |  1, 7, 4,10, 1 |
 
| wshare      | yes | 00:34 |  1h49m | 22:45 |  23G |  484M |  1, 7, 4,10, 1 |
 
+--------------+-----+-------+--------+-------+-------+-------+----------------+
 
+--------------+-----+-------+--------+-------+-------+-------+----------------+
2 disabled jobs not listed. Use --all to display.
+
2 tâches désactivées ne sont pas listées. Utilisez l'option --all pour les afficher.
 
</pre></small>
 
</pre></small>
With --csv, the output is in machine readable colon separated format.
+
Avec l'option --csv, la sortie est dans le format séparé par des points virgules pour la lecture machine.
    
  '''affa --show-config-pathes [--csv] [JOB JOB ...]'''
 
  '''affa --show-config-pathes [--csv] [JOB JOB ...]'''
Prints the full pathes of the file where the section of job JOB is defined.
+
 
 +
Imprime les chemins d'accès complets du fichier où la section de la tâche JOB est définie.
    
  '''affa --show-default-config'''
 
  '''affa --show-default-config'''
Prints a list of all allowed property names with their default values. These values are used, when omitted in the job sections.
+
 
 +
Imprime une liste de tous les noms de propriétés autorisés avec leurs valeurs par défaut. Ces valeurs sont utilisées, lorsqu'elles sont omises dans les sections de tâche.
    
  '''affa --show-schedule [--all]'''
 
  '''affa --show-schedule [--all]'''
Prints a 'graphical' timetable for all enabled jobs. The resolution is 30 minutes. An 'S' character marks the scheduled start times. The duration of the job runs are marked with '=' characters.
+
 
 +
Imprime un calendrier «graphique» pour tous les travaux activés. La résolution est de 30 minutes. Un caractère 'S' marque les heures de début programmées. La durée des travaux est marquée avec des caractères «=».
 
<small><pre>
 
<small><pre>
Affa version 3.1.0-0 on affa-2.mydomain.com
+
Affa version 3.2.2.3-7 on affa-3.mondomaine.com
 
               TIME 12:00    16:00    20:00    0:00    4:00    8:00
 
               TIME 12:00    16:00    20:00    0:00    4:00    8:00
 
             fsh-02 -------- -------S ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ --------
 
             fsh-02 -------- -------S ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ --------
Line 738: Line 764:  
             dcpant -------- -------- -------- ------S- -------- --------
 
             dcpant -------- -------- -------- ------S- -------- --------
 
         lightroom -------- -------- -------- -------- -------- S------- busy
 
         lightroom -------- -------- -------- -------- -------- S------- busy
Symbols: S=scheduled K=kill R=resume '='=rsync '~'=dedup
+
Symboles: S=programmé K=stoppé R=reprise '='=rsync '~'=deduplication
2 disabled jobs not listed. Use --all to display.
+
2 tâches désactivées ne sont pas listées. Utilisez l'option --all pour les afficher.
 
</pre></small>
 
</pre></small>
    
  '''affa --log-tail [JOB]'''
 
  '''affa --log-tail [JOB]'''
Displays the tail of the logfile of job JOB with live update. This command is identical to tail -n 50 -f /path/to/logfile. Without the JOB argument the global logfile is shown.
+
 
 +
Affiche la fin du fichier journal de la tâche JOB avec la mise à jour en direct. Cette commande est identique à :
 +
 +
tail -n 50 -f /path/to/logfile
 +
 
 +
Sans l'argument JOB, le fichier journal global est affiché.
    
  '''affa --send-status'''
 
  '''affa --send-status'''
Sends the status table, the disk-usage and the archive list of all jobs to the email addresses configured in the [GlobalAffaConfig] section.
+
 
 +
Envoie la table d'état, la liste de l'utilisation du disque et de l'archive de toutes les tâches aux adresses de messagerie configurées dans la section [GlobalAffaConfig].
    
  '''affa --disk-usage'''
 
  '''affa --disk-usage'''
Shows the current disk usage of all root dir filesystems
+
 
 +
Indique l'utilisation actuelle du disque de tous les systèmes de fichiers de répertoire racine.
 +
 
 
<small><pre>
 
<small><pre>
Affa version 3.1.0-0 on affa-2.mydomain.de
+
Affa version 3.2.2.3-7 on affa-3.mondomaine.de
 
+------+--------+--------+----------------------------------------------------+
 
+------+--------+--------+----------------------------------------------------+
 
| Use% |  Used |  Avail | Root Dir                                          |
 
| Use% |  Used |  Avail | Root Dir                                          |
Line 759: Line 793:  
+------+--------+--------+----------------------------------------------------+
 
+------+--------+--------+----------------------------------------------------+
 
</pre></small>
 
</pre></small>
With --csv, the output is printed in a machine readable colon separated format.
+
Avec l'option --csv, la sortie est dans le format séparé par des points virgules pour la lecture machine.
    
  '''affa --cleanup JOB'''
 
  '''affa --cleanup JOB'''
After you have lowered a keep value, e.g. scheduledKeep, then archives with a higher indices will no longer be shifted and will exist for ever. This option finds these archives and deletes them after confirmation.
     −
  '''affa --rename-job JOB NEWNAME'''
+
Après avoir abaissé une valeur de conservation, par ex. par ScheduleKeep, les archives avec un indice plus élevé que configuré, ne seront plus supprimées automatiquement et existeront toujours. Cette option trouve ces archives et les supprime définitivement après confirmation. Lors de l'exécution de la commande de nettoyage sur un disque USB connecté localement, montez manuellement le disque USB AVANT d'exécuter cette commande. Lorsque vous avez terminé, démontez manuellement le disque USB. Cette exigence peut s’appliquer à certaines des autres commandes répertoriées ici.
Renames the job JOB to NEWNAME including the section name and archive directories.
+
 
 +
  '''affa --rename-job JOB NouveauNom'''
 +
 
 +
Renomme la tâche JOB en NouveauNom y compris dans le nom de section et dans les répertoires d'archivage.
 +
 
 +
'''affa --move-archive JOB NouveauRepertoireRacine'''
   −
'''affa --move-archive JOB NEWROOTDIR'''
+
Déplace le répertoire d'archivage de la tâche JOB vers le répertoire racine NouveauRepertoireRacine et ajuste la valeur de la propriété RootDir. NouveauRepertoireRacine doit être un chemin complet commençant par une barre oblique. Comme le déplacement à travers le système de fichiers (par ex. d'un disque USB externe vers un disque local) n'est pas possible, Affa utilise une commande «copie» dans ce cas et efface le répertoire source après. En fonction de la taille de l'archive, la copie à travers les systèmes de fichiers peut durer longtemps.
Moves the archive directory of job JOB to the rootdir NEWROOTDIR and adjusts the value of property RootDir. NEWROOTDIR must be a full path starting with a slash. As moving across filesystems (e.g. from an external USB drive to the local disk) is not possible, Affa uses a copy command in this case and deletes the source directory after that. Depending on the archive size, copying across filesystems can take a long time.
+
{{Tip box|type=Astuce :|voir également le paragraphe 8.2, plus bas.}}
    
  '''affa --delete-job [--revoke-key] JOB'''
 
  '''affa --delete-job [--revoke-key] JOB'''
Irreversibly deletes all archives, of job JOB and set the status property to disable. With --revoke-key option, the public key on the remote server will be deleted.
+
 
 +
Efface irréversiblement une tâche, y compris toutes les archives, la configuration et les bases de données attachées. En passant l'option '--revoke-key', la clé publique sur le serveur distant sera détruite.
    
  '''affa --revoke-key JOB'''
 
  '''affa --revoke-key JOB'''
Deletes the public dsa key on the remote server.
+
'''affa --revoke-key --host=TARGETHOST [--port=PORT] [--remoteOS=cygwin]'''
 +
 
 +
Détruit la clé DSA publique sur le serveur distant.
 +
{{Note box|type=Note :|<nowiki>l'option --revoke-key seule fonctionne sur SME Server comme serveur distant et pour les systèmes où les clés sont stockées dans /root/.ssh/authorized_keys2 Avec remoteOS=cygwin cela fonctionne pour les serveurs distants sous Cygwin/Windows.</nowiki>}}
 +
 
    
  '''affa --kill JOB'''
 
  '''affa --kill JOB'''
Terminates the running job JOB and all its child processes (rsync processes).
+
 
 +
Termine la tâche en cours JOB et tous les processus fils (les processus rsync).
    
  '''affa --killall'''
 
  '''affa --killall'''
 +
 
Terminates all running jobs.
 
Terminates all running jobs.
   −
  affa --mailtest JOB
+
  '''affa --mailtest JOB'''
Sends a test email to the email addresses configured in the JOB section. Use this to verify, that your mail system is working.
+
 
{{Note box|By default Affa only sends messages on errors, never on success (see property chattyOnSuccess).}}
+
Envoie un courriel de test aux adresses électroniques configurées dans l'enregistrement de la tâche. Avec la propriété 'Watchdog' à 'yes', un courriel de test est aussi envoyé depuis le serveur distant. Utilisez cette fonctionnalité pour vérifier que l'envoi des courriels fonctionne.<br>
 +
 
 +
{{Note box|type=Note :|par défaut, Affa n'envoie des messages qu'en cas d'erreur, jamais en cas de succès (voir la propriété 'chattyOnSuccess').}}
    
  '''affa --nrpe [JOB JOB ...]'''
 
  '''affa --nrpe [JOB JOB ...]'''
 +
 
Checks for jobs that were not run the last NRPRtrigger hours and reports them as failed. A Nagios/ICINGA NRPE complient message is printed and exit status returned.
 
Checks for jobs that were not run the last NRPRtrigger hours and reports them as failed. A Nagios/ICINGA NRPE complient message is printed and exit status returned.
    
  '''affa --version'''
 
  '''affa --version'''
 +
 
Displays the Affa version number and checks Samba and Freedup installation.
 
Displays the Affa version number and checks Samba and Freedup installation.
    
  '''affa --warranty'''
 
  '''affa --warranty'''
 +
 
Displays the disclaimer of liability.
 
Displays the disclaimer of liability.
    
  '''affa --license'''
 
  '''affa --license'''
 +
 
Displays the license Affa is released under.
 
Displays the license Affa is released under.
    
  '''affa --help'''
 
  '''affa --help'''
 +
 
Displays a short help.
 
Displays a short help.
    
  '''affa --debug'''
 
  '''affa --debug'''
Enables verbose logging. Overrides job and global configurations.
+
 
 +
Active un journal verbeux. Remplace la tâche et les configurations globales.
    
====Options d'utilisation et de lignes de commande spécifiques à SME====
 
====Options d'utilisation et de lignes de commande spécifiques à SME====
Line 809: Line 862:     
  '''affa --rise [--all] JOB [ARCHIVE]'''
 
  '''affa --rise [--all] JOB [ARCHIVE]'''
 +
 
Lance une restauration totale depuis l'archive de sauvegarde [ARCHIVE] sur le serveur Affa <b>(!)</b> comme défini dans l'enregistrement JOB. Autrement dit, une fois terminée, le serveur de sauvegarde reboote comme un clone du serveur source. Assurez-vous d'avoir arrêté le serveur source avant de rebooter le serveur de sauvegardes, sinon l'interface réseau ne sera pas activée. Cela est important, lorsque vous lancez --rise à distance. La fonction --rise ne fonctionne qu'avec les serveurs SME et ne devrait être utilisée que sur les serveurs de sauvegardes dédiés.
 
Lance une restauration totale depuis l'archive de sauvegarde [ARCHIVE] sur le serveur Affa <b>(!)</b> comme défini dans l'enregistrement JOB. Autrement dit, une fois terminée, le serveur de sauvegarde reboote comme un clone du serveur source. Assurez-vous d'avoir arrêté le serveur source avant de rebooter le serveur de sauvegardes, sinon l'interface réseau ne sera pas activée. Cela est important, lorsque vous lancez --rise à distance. La fonction --rise ne fonctionne qu'avec les serveurs SME et ne devrait être utilisée que sur les serveurs de sauvegardes dédiés.
   −
Avec l'option --all, tous les fichiers et répertoires de l'archive tels que définis par les propriétés include[] sont restaurés. Les fichiers et répertoires avec le même nom sur le serveur Affa seront écrasés et ne peuvent pas être restaurés par un undoris. Cela ne devrait pas poser de problème sur un serveur Affa dédié qui ne contient aucune autre donnée. Après un éventuel undorise ces données aditionnelles restaurées doivent être supprimées manuellement.
+
Avec l'option --all, tous les fichiers et répertoires de l'archive tels que définis par les propriétés include[] sont restaurés. Les fichiers et répertoires avec le même nom sur le serveur Affa seront écrasés et ne peuvent pas être restaurés par un undo-rise. Cela ne devrait pas poser de problème sur un serveur Affa dédié qui ne contient aucune autre donnée. Après un éventuel undo-rise, ces données additionnelles restaurées doivent être supprimées manuellement.
   −
Remarquez que le processus rise sauvegarde le serveur Affa lui-même avant d'effectuer la restauration de l'archive. Cette sauvegarde est utilisée par un éventuel undorise pour restaurer le serveur Affa. Seulement les fichiers et répertoires standards sont sauvegardés. Les données dans des endroits non normalisés (comme /opt) ne sont pas touchées et existeront encore après le rise '''si elles n'ont pas été écrasées par les données de la sauvegarde''' (c-a-dire si la sauvegarde contient aussi le répertoire /opt, par exemple). Voir aussi : [[Backup_server_config#Standard_backup_.26_restore_inclusions]]
+
Remarquez que le processus rise sauvegarde le serveur Affa lui-même avant d'effectuer la restauration de l'archive. Cette sauvegarde est utilisée par un éventuel undo-rise pour restaurer le serveur Affa. Seulement les fichiers et répertoires standards sont sauvegardés. Les données dans des endroits non normalisés (comme /opt) ne sont pas touchées et existeront encore après le rise '''si elles n'ont pas été écrasées par les données de la sauvegarde''' (c-a-dire si la sauvegarde contient aussi le répertoire /opt, par exemple). Voir aussi : [[Backup_server_config#Standard_backup_.26_restore_inclusions]]
          
  '''affa --undo-rise'''
 
  '''affa --undo-rise'''
 +
 
Cette fonction reconvertit en serveur de sauvegarde un serveur Affa préalablement converti en serveur de production. Après un redémarrage, toutes les tâches configurées pour des fichiers et des répertoires normalisés (pour SME) fonctionneront à nouveau.
 
Cette fonction reconvertit en serveur de sauvegarde un serveur Affa préalablement converti en serveur de production. Après un redémarrage, toutes les tâches configurées pour des fichiers et des répertoires normalisés (pour SME) fonctionneront à nouveau.
       
  '''affa --unchunk-archive JOB ARCHIVE'''
 
  '''affa --unchunk-archive JOB ARCHIVE'''
 +
 
Concatène et décompresse tous les fichiers découpés dans l'archive ARCHIVE de la tâche JOB pour rendre l'archive prête pour une restauration. Notez que l'archives la plus récente scheduled.0 n'est jamais découpée et donc qu'elle peut être restaurée telle quelle sans re-concaténation préalable.
 
Concatène et décompresse tous les fichiers découpés dans l'archive ARCHIVE de la tâche JOB pour rendre l'archive prête pour une restauration. Notez que l'archives la plus récente scheduled.0 n'est jamais découpée et donc qu'elle peut être restaurée telle quelle sans re-concaténation préalable.
       
  '''affa --chunk-archive JOB ARCHIVE'''
 
  '''affa --chunk-archive JOB ARCHIVE'''
 +
 
Découpe et compresse tous les fichiers dont les noms correspondent à la propriété chunkFiles pour économiser l'espace disque. Cela ne devrait être utilisé que comme l'inverse de --unchunk-archive. Les découpages sont stockés en fichiers bzip2 dans un répertoire nommé FILENAME.affa-chunks avec 8 niveaux de profondeur.
 
Découpe et compresse tous les fichiers dont les noms correspondent à la propriété chunkFiles pour économiser l'espace disque. Cela ne devrait être utilisé que comme l'inverse de --unchunk-archive. Les découpages sont stockés en fichiers bzip2 dans un répertoire nommé FILENAME.affa-chunks avec 8 niveaux de profondeur.
   Line 831: Line 888:     
  '''affa --create-backup-file JOB [ARCHIVE] [--outfile=FILE]'''
 
  '''affa --create-backup-file JOB [ARCHIVE] [--outfile=FILE]'''
 +
 
Crée une archive tar gzippée FILE depuis l'ARCHIVE de la tâche JOB. Pendant la création la somme MD5 est calculée puis le fichier tar enregistré lui est comparé. L'archive par défaut est schedule.0 et le fichier FILE par défaut est./smeserver.tg. La somme de contrôle est écrite dans FILE.md5sum.
 
Crée une archive tar gzippée FILE depuis l'ARCHIVE de la tâche JOB. Pendant la création la somme MD5 est calculée puis le fichier tar enregistré lui est comparé. L'archive par défaut est schedule.0 et le fichier FILE par défaut est./smeserver.tg. La somme de contrôle est écrite dans FILE.md5sum.
   Line 836: Line 894:       −
  '''affa --list-archives [--csv] JOB'''
+
  '''affa --disk-usage'''
Affiche un tableau de toutes les archives de la tâche JOB existantes, avec la date, le nombre de fichiers, la taille et l'espace disque utilisé.
  −
<small><pre>
  −
Affa version 2.0.0-rc4 on affa1.mydomain.de (10.204.48.2)
  −
+------------------------------------------------------------------------------+
  −
| Job: primmail                                                                |
  −
| Description: Mailserver Albstadt                                            |
  −
| Directory: /var/affa/primmail/                                              |
  −
| Hostname: 10.204.144.2                                                      |
  −
| Email: admin@mydomain.de                                            |
  −
+-------+-----------------------+-----------+----------------+--------+--------+
  −
| Run  | Completion date      | Exec Time |          Files |  Size |  Recvd |
  −
+-------+-----------------------+-----------+----------------+--------+--------+
  −
| M 9  | Sun 2008 Mar 02 06:11 |  0h29m47s |        679010 |  80GB |  60MB |
  −
| M 8  | Sun 2008 Mar 30 06:12 |  0h26m59s |        701683 |  83GB |  48MB |
  −
| M 7  | Sun 2008 Apr 27 06:16 |  0h28m01s |        731332 |  87GB |  47MB |
  −
| M 6  | Sun 2008 Jun 01 06:20 |  0h27m37s |        755529 |  90GB |  50MB |
  −
| M 5  | Sun 2008 Jun 29 06:24 |  0h28m39s |        800200 |  94GB |  52MB |
  −
| M 4  | Sun 2008 Jul 27 06:28 |  0h29m10s |        835398 |  99GB |  59MB |
  −
| M 3  | Sun 2008 Aug 31 06:34 |  0h34m53s |        869409 |  101GB |  65MB |
  −
| M 2  | Sun 2008 Sep 28 06:38 |  0h33m19s |        910889 |  106GB |  59MB |
  −
| M 1  | Sun 2008 Oct 26 06:42 |  0h38m41s |        932627 |  110GB |  61MB |
  −
| M 0  | Sun 2008 Nov 30 06:48 |  0h51m44s |        954090 |  116GB |  75MB |
  −
+-------+-----------------------+-----------+----------------+--------+--------+
  −
| W 3  | Sun 2008 Dec 14 06:50 |  0h53m34s |        962267 |  118GB |  68MB |
  −
| W 2  | Sun 2008 Dec 21 06:52 |  0h53m11s |        974914 |  120GB |  69MB |
  −
| W 1  | Wed 2008 Dec 24 06:52 |  0h48m58s |        974536 |  120GB |  64MB |
  −
| W 0  | Sun 2008 Dec 28 06:58 |  0h39m01s |        977003 |  120GB |  61MB |
  −
+-------+-----------------------+-----------+----------------+--------+--------+
  −
| D 6  | Tue 2008 Dec 30 06:52 |  0h54m45s |        976872 |  120GB |  77MB |
  −
| D 5  | Wed 2008 Dec 31 06:52 |  0h49m10s |        977764 |  120GB |  63MB |
  −
| D 4  | Thu 2009 Jan 01 06:28 |  0h28m09s |        977879 |  120GB |  60MB |
  −
| D 3  | Fri 2009 Jan 02 06:53 |  0h53m21s |        978144 |  120GB |  68MB |
  −
| D 2  | Sat 2009 Jan 03 06:53 |  0h53m15s |        978072 |  120GB |  60MB |
  −
| D 1  | Sun 2009 Jan 04 06:53 |  0h53m16s |        976478 |  120GB |  70MB |
  −
| D 0  | Mon 2009 Jan 05 06:52 |  0h52m42s |        977062 |  120GB |  61MB |
  −
+-------+-----------------------+-----------+----------------+--------+--------+
  −
| S 1  | Mon 2009 Jan 05 17:57 |  0h27m48s |        976353 |  120GB |  98MB |
  −
| S 0  | Tue 2009 Jan 06 06:52 |  0h52m55s |        976539 |  120GB |  70MB |
  −
+-------+-----------------------+-----------+----------------+--------+--------+
  −
</pre></small>
  −
Avec --csv, le tableau est généré selon un format séparé par des deux-points (:) lisible par les programmes.
     −
  −
'''affa --status [--csv]'''
  −
Affiche un tableau de toutes les tâches actives (status enabled), avec l'heure de dernier et prochain lancement, la taille, l'espace disque utilisé par la plus récente archive, la date d'exécution du dernier lancement, et le nombre d'archives programmées (S), quotidiennes (D), hebdomadaires (W), mensuelles (M) et annuelles (Y). Le dernier lancement (colonne 'Last') affiche 'failed' si une tâche n'a pas été lancée dans les dernières 24h.  Pour les tâches désactivées, 'Last' affiche toujours 'failed' au bout de 24 h. Pour voir la date et l'heure du dernier lancement de ces tâches, utilisez l'option --list-archives. La colonne 'Next' montre l'heure à laquelle le prochain lancement aura lieu, si 'Enabled' est à 'yes'.
  −
<small><pre>
  −
Affa version 2.0.0-rc4 on backup.mydomain.de (10.204.48.2)
  −
+----------------+-----+-------+-----------+-------+-------+----------------+
  −
| Job            | ENA |  Last | Exec Time |  Next |  Size | N of S,D,W,M,Y |
  −
+----------------+-----+-------+-----------+-------+-------+----------------+
  −
| erp-alb-rsyncd | yes | 00:20 |  0h00m14s | 00:20 |  46MB |  1, 7, 4,10, 0 |
  −
| erp-fra-rsyncd | yes | 02:46 |  0h01m03s | 02:45 | 712MB |  1, 7, 4,10, 0 |
  −
| esxi-TS-W2K    | yes | 00:37 |  4h22m08s | 20:15 |  60GB |  1, 7, 1, 0, 0 |
  −
| esxi-W2KR2    | yes | 02:22 |  3h52m09s | 22:30 |  40GB |  1, 7, 1, 0, 0 |
  −
| helpdesk      | yes | 00:25 |  0h00m47s | 00:25 | 117MB |  1, 7, 4,10, 0 |
  −
| imageserv      | yes | running (pid 16477)              |  1, 7, 4,10, 0 |
  −
| intraweb      | yes | 06:34 |  0h04m50s | 18:00 | 2.1GB |  2, 7, 4,10, 0 |
  −
| pdcalb        | yes | 21:19 |  0h14m27s | 21:05 |  89GB |  1, 7, 4,10, 0 |
  −
| pdcfra        | yes | 04:18 |  0h03m33s | 04:15 |  33GB |  1, 7, 4,10, 0 |
  −
| primmail      | yes | 06:52 |  0h52m55s | 17:30 | 120GB |  2, 7, 4,10, 0 |
  −
| rayofhope      | yes | 21:52 |  0h07m40s | 21:45 |  26GB |  1, 7, 4,10, 0 |
  −
| smecrmpg      | yes | 22:35 |  0h00m21s | 22:35 |  70MB |  1, 7, 4,10, 0 |
  −
| sozserv        | yes | 02:09 |  0h04m03s | 02:05 | 5.9GB |  1, 7, 4,10, 0 |
  −
| wiki          | yes | 03:45 |  0h00m27s | 03:45 | 278MB |  1, 7, 4, 8, 0 |
  −
+----------------+-----+-------+-----------+-------+-------+----------------+
  −
| az32share      |  no | -    |  0h00m22s | 03:05 | 1.3GB |  1, 7, 4, 8, 0 |
  −
+----------------+-----+-------+-----------+-------+-------+----------------+
  −
</pre></small>
  −
Avec --cxv, le tableau est généré selon un format séparé par des deux-points (:) lisible par les programmes.
  −
  −
  −
'''affa --disk-usage'''
   
Affiche l'utilisation actuelle du disque pour les répertoires racine de tous les systèmes de fichiers.
 
Affiche l'utilisation actuelle du disque pour les répertoires racine de tous les systèmes de fichiers.
 
<small><pre>
 
<small><pre>
Line 921: Line 908:  
Avec --cxv, le tableau est généré selon un format séparé par des deux-points (:) lisible par les programmes.
 
Avec --cxv, le tableau est généré selon un format séparé par des deux-points (:) lisible par les programmes.
    +
==== Copier une archive Affa d'un disque dur USB sur un nouveau disque ====
 +
Affa utilise un grand nombre de liens matériels (hard links) pour compresser et préserver de la place sur le disque pour les sauvegardes. Dans la situation où l'on voudrait copier un disque contenant une archive Affa sur un autre disque (de taille plus importante), il est nécessaire de s'assurer que les liens matériels ont été copiés correctement au risque que la copie devienne considérablement plus volumineuse que l'archive source.
   −
'''affa --show-schedule [--all]'''
+
Une méthode pour copier à travers des systèmes de fichiers distincts (par ex. entre 2 disques usb différents) et préserver les liens matériels est la suivante:
Affiche un calendrier 'graphique' de toutes les tâches actives. La résolution est de 30 minutes. Un 'X' indique les heures de lancement programmés. La durée de la dernière exécution est marquée avec des '='.
+
* monter les deux disques usb avec des points de montage différents, par exemple /media/backup1 et /media/backup2 et effectuer alors :
<small><pre>
+
mkdir /media/backup2/archive
Affa version 2.0.0-rc4 on backup.mydomain.de (10.204.48.2)
+
cd /media/backup1/archive
          TIME 0:00    4:00    8:00    12:00    16:00    20:00
+
tar cpf - . | ( cd /media/backup2/archive && tar xpf - )
erp-alb-rsyncd X------- -------- -------- -------- -------- --------
+
en remplaçant '''archive''' par le véritable nom de l'archive (job) Affa que l'on souhaite placer sur l'autre disque.
      helpdesk X------- -------- -------- -------- -------- --------
  −
    esxi-W2KR2 =====--- -------- -------- -------- -------- -----X==
  −
  esxi-TS-W2K ==------ -------- -------- -------- -------- X=======
  −
    imageserv ---X---- -------- -------- -------- -------- --------
  −
      sozserv ----X--- -------- -------- -------- -------- --------
  −
erp-fra-rsyncd -----X-- -------- -------- -------- -------- --------
  −
          wiki -------X -------- -------- -------- -------- --------
  −
        pdcfra -------- X------- -------- -------- -------- --------
  −
      primmail -------- ----X=-- -------- -------- ---X---- --------
  −
      intraweb -------- -----X-- -------- -------- ----X--- --------
  −
        pdcalb -------- -------- -------- -------- -------- --X-----
  −
    rayofhope -------- -------- -------- -------- -------- ---X----
  −
      smecrmpg -------- -------- -------- -------- -------- -----X--
  −
1 disabled jobs not listed. Use --all to display.
  −
</pre></small>
      +
===Installation et utilisation d'Affa v.2 - Obsolète===
 +
Version obsolète.
   −
'''affa --send-status'''
+
====Méthode pour SME8====
Envoie le tableau d'état, l'espace disque utilisé et la liste des archives de toutes les tâches à l'adresse email configurée dans l'enregistrement 'DefaultAffaConfig'. Cette commande est utilisée par la tâche cron 'affa status'.
+
SME8 est basé sur CentOS5, c'est pourquoi perl-Compress-Bzip2 el5 rpm doit être utilisé.  
    +
Pour SME8 32 bits :
 +
 +
wget <nowiki>http://apt.sw.be/redhat/el5/en/i386/rpmforge/RPMS/perl-Compress-Bzip2-2.09-1.2.el5.rf.i386.rpm</nowiki>
 +
/usr/bin/yum --enablerepo=smecontribs localinstall \
 +
smeserver-affa-2.0.0-rc4.noarch.rpm \
 +
perl-Compress-Bzip2-2.09-1.2.el5.rf.i386.rpm
   −
  '''affa --mailtest JOB'''
+
Pour SME8 64 bits :
Envoie un email de test aux adresses email configurées dans l'enregistrement de la tâche. Avec la propriété 'Watchdog' à 'yes', un email de test est envoyé depuis le serveur distant aussi. Utilisez cela pour vérifier que l'envoi des mails fonctionne.<br>
+
'''Note:''' Par défaut, Affa n'envoie des messages qu'en cas d'erreur, jamais en cas de succès (voir la propriété 'chattyOnSuccess').
+
wget http://apt.sw.be/redhat/el5/en/x86_64/rpmforge/RPMS/perl-Compress-Bzip2-2.09-1.2.el5.rf.x86_64.rpm
 +
  /usr/bin/yum --enablerepo=smecontribs localinstall \
 +
smeserver-affa-2.0.0-rc4.noarch.rpm \
 +
perl-Compress-Bzip2-2.09-1.2.el5.rf.x86_64.rpm
    +
Après la première installation d'Affa, lancez la commande suivante pour initialiser la base de données Affa.
 +
 +
affa --make-cronjobs
   −
'''affa --cleanup JOB'''
+
et déconnectez-vous puis reconnectez-vous à la console pour que le complément automatique de bash (touche TAB) prenne effet
Après que vous ayez diminué le temps de conservation (scheduledKeep), les archives avec un indice plus élevé ne seront plus supprimées automatiquement et existeront toujours. Cette option trouve ces archives et les supprime.
      +
==== Méthode pour SME7 ====
 +
{{Note box|SME7 est maintenant en fin de vie et a été transféré dans le répertoire obsolète}}
 +
Version SME7: '''smeserver-affa-2.0.0-rc4.noarch.rpm'''
 +
 +
wget <nowiki>http://mirror.contribs.org/smeserver/contribs/michaelw/sme7/Affa2/smeserver-affa-2.0.0-rc4.noarch.rpm</nowiki>
 +
wget <nowiki>http://mirror.contribs.org/smeserver/contribs/michaelw/sme7/Affa2/perl-Compress-Bzip2-2.09-1.2.el4.rf.i386.rpm</nowiki>
 +
/usr/bin/yum --enablerepo=smecontribs localinstall \
 +
smeserver-affa-2.0.0-rc4.noarch.rpm \
 +
perl-Compress-Bzip2-2.09-1.2.el4.rf.i386.rpm
 +
==== Exemple de démarrage rapide ====
   −
'''affa --rename-job JOB NEWNAME'''
+
Vous avez un serveur de production SME 7 dont le nom est 'prodbox' et l'IP 10.200.48.1. Installez un second SME 7 comme serveur de sauvegardes avec le nom 'affabox' et l'IP 10.200.48.2.  
Renomme la tâche JOB en NEWNAME, y compris tous les enregistrements de la base de données et les répertoires d'archive.
      +
<ol><li>loggez-vous dans 'affabox' et installez les paquetages mentionnés ci-dessus.
 +
</li><li>copiez le script d'exemple de configuration
 +
cp /usr/lib/affa/jobconfig-sample.pl /root/prodbox-job.pl
 +
</li><li>editez /root/prodbox-job.pl et mettez
 +
my $jobname='prodbox';
 +
et
 +
 +
'remoteHostName‘=>'10.200.48.1',
   −
  '''affa --move-archive JOB NEWROOTDIR'''
+
Eventuellement, si le port du serveur distant est configuré, par exemple, en 2222, mettez
Déplace le répertoire d'archive de JOB vers NEWROOTDIR et ajuste la propriété RootDir. NEWROOTDIR doit être un chemin complet (full path) commençant par un slash. Comme le déplacement d'un système de fichiers à un autre (par exemple d'un disque USB à un disque local) n'est pas possible, Affa se sert dans ce cas d'une commande de copie et efface ensuite le répertoire source. Selon la taille de l'archive, la copie d'un système de fichiers à l'autre peut prendre longtemps.
+
   
 +
'sshPort'=>2222,
 +
</li><li>sauvegardez et lancez le fichier 'prodbox-job.pl'. Cela enregistrera la configuration (et crée les entrées de base de données et les tâches cron)
 +
/root/prodbox-job.pl
 +
</li><li>Générez les clés DSA et envoyez la clé publique à la 'prodbox'
 +
{{Note box|Initialement, lorsque vous faites cette étape, vous devez temporairement mettre oui à "Autoriser l'authentification par SSH à l'aide de mots de passe standards" dans l'accès à distance sur le serveur de production}}
 +
affa --send-key prodbox
 +
</li><li>Lancez la tâche à la main
    +
affa --run prodbox
 +
</li></ol>
   −
'''affa --delete-job [--revoke-key] JOB'''
+
==== Configuration ====
Efface irréversiblement une tâche, y compris toutes les archives, la configuration et les bases de données attachées. En passant l'option '--revoke-key', la clé publique sur le serveur distant sera détruite.
+
La configuration est stockée dans une base de données style e-smith. Utilisez la commande db pour configurer Affa.
 +
Le nom de tâche est la clé d'enregistrement de type 'job'.<br>Pour configurer un nouveau travail avec le nom 'prodbox', entrez :
    +
db affa set prodbox job
   −
'''affa --revoke-key JOB'''
+
Puis positionnez les propriétés
'''affa --revoke-key --host=TARGETHOST [--port=PORT] [--remoteOS=cygwin]'''
  −
Détruit la clé DSA publique sur le serveur distant.
  −
{{Note box|<nowiki>L'option --revoke-key seule fonctionne sur SME Server comme serveur distant et pour les systèmes où les clés sont stockées dans /root/.ssh/authorized_keys2 Avec remoteOS=cygwin cela fonctionne pour les serveurs distants sous Cygwin/Windows.</nowiki>}}
      +
db affa setprop prodbox remoteHostName 192.168.1.1
 +
db affa setprop prodbox TimeSchedule '0030,0730,1130,1330,1730,2030'
 +
db affa setprop prodbox Description 'My Production Server'
 +
db affa setprop prodbox status enabled
   −
'''affa --check-connections'''
+
et ainsi de suite...
Contrôle le login ssh pour toutes les tâches configurées. Pour les tâches pour lesquelles la clé publique n'avait pas encore été envoyée, il vous sera demandé le mot de passe et la clé sera envoyée ensuite.
      +
Alternativement, vous pouvez utiliser un script comme décrit ci-dessus dans le chapitre 'Démarrage rapide'.
   −
'''affa --kill JOB'''
+
Pour vérifier votre travail, tapez :
Termine la tâche en cours JOB et tous les processus fils (les processus rsync)..
     −
  '''affa --debug'''
+
  db affa show prodbox
Active un journal verbeux. Remplace la tâche et les configurations globales.
     −
===Installation et utilisation d'Affa v.2 - Obsolète===
+
Pour finir, mettez en place les tâches cron :
Version obsolète.
+
 +
affa --make-cronjobs
   −
====Méthode pour SME8====
+
==== Propriétés de configuration de tâches ====
SME8 est basé sur CentOS5, c'est pourquoi perl-Compress-Bzip2 el5 rpm doit être utilisé.
+
'''Note:''' Les valeurs par défaut données dans ce tableau sont celles du programme Affa et ne doivent pas être confondues avec les valeurs prépositionnées dans les scripts d'aide, par exemple jobconfig-sample.pl.
 +
{| border="1" cellspacing="0" cellpadding="3"
 +
|-
 +
| '''Propriété''' || '''Valeur''' || '''Defaut''' || '''Description'''
 +
|-
 +
| remoteHostName
 +
| FQHN ou IP || || FQHN ou IP de l'hôte source (obligatoire)
 +
|-
 +
| TimeSchedule
 +
| HHMM,HHMM,... || || N'a pas besoin d'être ordonné. Au moins une heure est obligatoire. '''Important:''' Utiliser le bon format HHMM est essentiel. Affa ne le vérifie pas. Un TimeSchedule mal formatté provoquera d'étranges erreurs Perl.
 +
|-
 +
| Description
 +
| texte || ||
 +
|-
 +
| scheduledKeep
 +
| entier >= 1 || 1|| Combien de sauvegardes programmées doivent être conservées
 +
|-
 +
| dailyKeep<br>weeklyKeep<br>monthlyKeep<br>yearlyKeep
 +
| entier >= 0 || 7<br>4<br>12<br>2<br>|| Combien de sauvegardes quotidiennes, hebdomadaires, mensuelles ou annuelles doivent être conservées
 +
|-
 +
| SMEServer
 +
| yes ''ou'' no || yes || Positionné à 'yes', les répertoires e-smith par défaut sont automatiquement inclus et la propriété RPMCheck=yes peut être utilisée
   −
Pour SME8 32 bits :
  −
wget <nowiki>http://apt.sw.be/redhat/el5/en/i386/rpmforge/RPMS/perl-Compress-Bzip2-2.09-1.2.el5.rf.i386.rpm</nowiki>
  −
/usr/bin/yum --enablerepo=smecontribs localinstall \
  −
smeserver-affa-2.0.0-rc4.noarch.rpm \
  −
perl-Compress-Bzip2-2.09-1.2.el5.rf.i386.rpm
  −
  −
Pour SME8 64 bits :
  −
wget http://apt.sw.be/redhat/el5/en/x86_64/rpmforge/RPMS/perl-Compress-Bzip2-2.09-1.2.el5.rf.x86_64.rpm
  −
/usr/bin/yum --enablerepo=smecontribs localinstall \
  −
smeserver-affa-2.0.0-rc4.noarch.rpm \
  −
perl-Compress-Bzip2-2.09-1.2.el5.rf.x86_64.rpm
  −
  −
Après la première installation d'Affa, lancez la commande suivante pour initialiser la base de données Affa.
  −
affa --make-cronjobs
  −
et déconnectez-vous puis reconnectez-vous à la console pour que le complément automatique de bash (touche TAB) prenne effet
  −
  −
</div>
  −
  −
==== Méthode pour SME7 ====
  −
{{Note box|SME7 est maintenant en fin de vie et a été transféré dans le répertoire obsolète}}
  −
Version SME7: '''smeserver-affa-2.0.0-rc4.noarch.rpm'''
  −
wget <nowiki>http://mirror.contribs.org/smeserver/contribs/michaelw/sme7/Affa2/smeserver-affa-2.0.0-rc4.noarch.rpm</nowiki>
  −
wget <nowiki>http://mirror.contribs.org/smeserver/contribs/michaelw/sme7/Affa2/perl-Compress-Bzip2-2.09-1.2.el4.rf.i386.rpm</nowiki>
  −
/usr/bin/yum --enablerepo=smecontribs localinstall \
  −
smeserver-affa-2.0.0-rc4.noarch.rpm \
  −
perl-Compress-Bzip2-2.09-1.2.el4.rf.i386.rpm
  −
==== Exemple de démarrage rapide ====
  −
  −
Vous avez un serveur de production SME 7 dont le nom est 'prodbox' et l'IP 10.200.48.1. Installez un second SME 7 comme serveur de sauvegardes avec le nom 'affabox' et l'IP 10.200.48.2.
  −
  −
<ol></li><li>loggez-vous dans 'affabox' et installez les paquetages mentionnés ci-dessus.
  −
</li><li>copiez le script d'exemple de configuration
  −
cp /usr/lib/affa/jobconfig-sample.pl /root/prodbox-job.pl
  −
</li><li>editez /root/prodbox-job.pl et mettez
  −
my $jobname='prodbox';
  −
et
  −
'remoteHostName‘=>'10.200.48.1',
  −
Eventuellement, si le port du serveur distant est configuré, par exemple, en 2222, mettez
  −
'sshPort'=>2222,
  −
</li><li>sauvegardez et lancez le fichier 'prodbox-job.pl'. Cela enregistrera la configuration (et crée les entrées de base de données et les tâches cron)
  −
/root/prodbox-job.pl
  −
</li><li>Générez les clés DSA et envoyez la clé publique à la 'prodbox'
  −
{{Note box|Initialement, lorsque vous faites cette étape, vous devez temporairement mettre oui à "Autoriser l'authentification par SSH à l'aide de mots de passe standards" dans l'accès à distance sur le serveur de production}}
  −
affa --send-key prodbox
  −
</li><li>Lancez la tâche à la main
  −
  −
affa --run prodbox
  −
</li></ol>
  −
  −
==== Configuration ====
  −
La configuration est stockée dans une base de données style e-smith. Utilisez la commande db pour configurer Affa.
  −
Le nom de tâche est la clé d'enregistrement de type 'job'.<br>Pour configurer un nouveau travail avec le nom 'prodbox', entrez :
  −
  −
db affa set prodbox job
  −
  −
Puis positionnez les propriétés
  −
  −
db affa setprop prodbox remoteHostName 192.168.1.1
  −
db affa setprop prodbox TimeSchedule '0030,0730,1130,1330,1730,2030'
  −
db affa setprop prodbox Description 'My Production Server'
  −
db affa setprop prodbox status enabled
  −
et ainsi de suite...
  −
  −
Alternativement, vous pouvez utiliser un script comme décrit ci-dessus dans le chapitre 'Démarrage rapide'.
  −
  −
Pour vérifier votre travail, tapez :
  −
  −
db affa show prodbox
  −
  −
Pour finir, mettez en place les tâches cron :
  −
affa --make-cronjobs
  −
  −
==== Propriétés de configuration de tâches ====
  −
'''Note:''' Les valeurs par défaut données dans ce tableau sont celles du programme Affa et ne doivent pas être confondues avec les valeurs prépositionnées dans les scripts d'aide, par exemple jobconfig-sample.pl.
  −
{| border="1" cellpadding="3" cellspacing=0
   
|-
 
|-
| '''Propriété''' || '''Valeur''' || '''Defaut''' || '''Description'''  
+
| Include[0]<br>Include[1]<br>...
 +
| full path || || Fichiers ou répertoires supplémentaires à inclure à la sauvegarde
 +
|-
 +
| Exclude[0]<br>Exclude[1]<br>...
 +
| full path || || Fichiers ou répertoires supplémentaires à exclure de la sauvegarde
 +
|-
 +
| RPMCheck
 +
| yes ''ou'' no || no || Seulement applicable aux tâches qui sauvegardent un serveur SME 7.<br>Compares les RPM de l'hôte source avec ceux de l'hôte de sauvegarde affa. Envoie un message avec une liste de différences s'il n'y a pas correspondance. Cette vérification est utile, si vous voulez avoir la possibilité de convertir le serveur de sauvegarde en serveur de production.
 +
|-
 +
| DiskSpaceWarn
 +
| strict ''ou'' normal ''ou'' risky ''ou'' none || strict || lance une vérification de l'espace disque après qu'une tâche soit terminée. Avec le niveau 'strict' un message d'avertissement sera envoyé si l'espace disponible est moins que la taille de la sauvegarde qui vient de s'achever. Avec les niveaux 'normal'/'risky' le message est envoyé si moins de 50%/10% de la taille de la sauvegarde reste disponible.
 +
'''Note:''' Lorsque RootDir est un lien symbolique vers un autre système de fichiers, l'espace disque utilisé du système de fichiers local est vérifié à la place de celui du système de fichiers lié. Positionnez le point de montage comme RootDir pour avoir une vérification correcte.
 +
|-
 +
| localNice
 +
|  -19...+19 || 0 || lance le process local rsync par nice.
 +
|-
 +
| remoteNice
 +
|  -19...+19 || 0 || lance le process rsync de la source par nice.
 +
|-
 +
| Watchdog
 +
| yes ''ou'' no || yes || Seulement applicable aux tâches qui sauvegardent un serveur SME 7.<br>Quand une tâche est lancée, affa installe un script chien de garde sur la source dans /etc/cron.d/, qui envoie un message d'avertissement si la prochaine tâche programmée (prise dans la propriété TimeSchedule + 10 minutes) n'a pas été lancée. Cela garantit que vous serez prévenu même en cas de panne du serveur affa. Le script chien de garde envoie un message de rappel quotidien si l'erreur persiste. La tâche lancée suivante remplace le script chien de garde avec un nouveau temps de déclenchement.
 +
|-
 +
| sshPort
 +
| port du service || 22 || Lorsque sshd sur le serveur source ou votre firewall écoute sur un port non standard, précisez le port ici.
 +
|-
 +
| ConnectionCheckTimeout
 +
| secondes || 120 || Avant que le process rsync démarre sur l'hôte source distant, affa vérifie la connexion ssh et se termine avec une erreur après le temps configuré, si l'hôte ne répond pas.
 +
|-
 +
| rsyncTimeout
 +
| secondes || 900 || Rsync se termine si aucune donnée n'est transférée pendant le temps configuré. Cela évite un gelage permanent dans le cas d'une erreur sur le réseau.
 +
|-
 +
| BandwidthLimit
 +
| entier>=0 Ko/s || 0 || Limite la vitesse de transfert des données. A valeur à zero specifie qu'il n'y a pas de limite.
 +
|-
 +
| rsyncCompress
 +
| yes ''ou'' no || no || Compresse les données transférées. Peut être utile avec les connexions internet lentes. Cela augmente la charge CPU sur les hôtes source et de sauvegarde.
 +
|-
 +
| EmailAddresses
 +
| name@domain.com,name@domain.com,... || admin|| Liste séparée par des virgules des adresses email où les messages seront envoyés.<br>'''Note:''' Par défaut, Affa n'envoie de messages que pour les erreurs, jamais en cas de succès (voir la propriété chattyOnSuccess).
 +
|-
 +
| RetryAttempts
 +
| entier >= 0 || 3 || Quand positionné à une valeur >0, Affa relance une tâche échouée RetryAttemps fois avec un délai de RetryAfter secondes.
 +
|-
 +
| RetryAfter
 +
| secondes >= 3 || 600 || Quand positionné à une valeur >0, attend RetryAfter secondes avant de relancer la tâche suite à une erreur. Utile seulement avec RetryAttempts>0
 +
|-
 +
| RetryNotification
 +
| yes ''ou'' no || yes || Quand positionné à no, Affa n'envoie pas de message d'erreur lorsqu'une tâche a échoué et que RetryAttemps est configuré. Un message d'erreur n'est envoyé que lorsque le dernier essai a échoué.
 +
|-
 +
| RetryAttempts
 +
| entier >= 0 || 0 || Quand positionné à une valeur >0, Affa envoie un message pour les tâches terminées avec succès et décrémente  la valeur chattyOnSuccess. Lorsque la valeur atteint 0, Affa revient à son comportement par défaut et n'envoie plus de messages qu'en cas d'erreur.
 +
|-
 +
| AutomountDevice<br>AutomountPoint
 +
| full path  || || Unité et point de montage de l'unité de sauvegarde (ex. disque USB). L'unité est montée automatiquement avant qu'une tâche soit lancées et démontée après la fin de la tâche. Les deux propriétés doivent être remplies pour que la fonction Automount soit active.
 +
|-
 +
| AutomountOptions
 +
| chaine de caractères  || || Une chaine d'options passées à la commande de montage automatique
 
|-
 
|-
| remoteHostName
+
| AutoUnmount
| FQHN ou IP || || FQHN ou IP de l'hôte source (obligatoire)
+
| yes ''ou'' no || yes || Quand positionné à 'no' l'unité montée automatiquement reste montée après l'exécution d'Affa.
 
|-
 
|-
| TimeSchedule
+
| preJobCommand<br>postJobCommand
| HHMM,HHMM,... || || N'a pas besoin d'être ordonné. Au moins une heure est obligatoire. '''Important:''' Utiliser le bon format HHMM est essentiel. Affa ne le vérifie pas. Un TimeSchedule mal formatté provoquera d'étranges erreurs Perl.  
+
| full path || || Programmes (locaux sur le serveur affa) à exécuter avant/après qu'une tâche soit lancée. Le nom de la tâche et le type (programmée, journalière etc.) sont passés en arguments au programme. Le code de sortie est de plus passé à la commande de programme post-tâche. Voir /usr/lib/affa/ pour des exemples de scripts perl.
 
|-
 
|-
| Description
+
| RootDir
| texte || ||  
+
| full path || /var/affa || Où stocker les archives de sauvegarde. N'utilisez pas /home/e-smith ou /root puisqu'ils sont inclus dans les répertoires à sauvegarder, ce qui empêcherait la fonction de conversion de fonctionner ! Répertoire conseillé : /var/affa
 
|-
 
|-
| scheduledKeep
+
| SambaShare
| entier >= 1 || 1|| Combien de sauvegardes programmées doivent être conservées
+
| yes ''ou'' no|| yes || Accède aux archives de la tâche via SMB.
 
|-
 
|-
| dailyKeep<br>weeklyKeep<br>monthlyKeep<br>yearlyKeep
+
| Debug
| entier >= 0 || 7<br>4<br>12<br>2<br>|| Combien de sauvegardes quotidiennes, hebdomadaires, mensuelles ou annuelles doivent être conservées
+
| yes ''ou'' no || no || Positionné à 'yes', donne plus de détails dans le fichier de log.
 
|-
 
|-
| SMEServer
+
| status
| yes ''ou'' no || yes || Positionné à 'yes', les répertoires e-smith par défaut sont automatiquement inclus et la propriété RPMCheck=yes peut être utilisée
+
| enabled ''ou'' disabled || enabled || Positionné à 'disable', aucune entrée cron ne sera faite. Vous pouvez encore lancer les tâches à la main.
 
   
|-
 
|-
| Include[0]<br>Include[1]<br>...
+
| rsync--inplace
| full path || || Fichiers ou répertoires supplémentaires à inclure à la sauvegarde
+
| yes ''ou'' no || yes || Positionné à 'no', si la version rsync de la source ne supporte pas cette option (comme rsync sur SME6)
 
|-
 
|-
| Exclude[0]<br>Exclude[1]<br>...
+
| rsync--modify-window
| full path || || Fichiers ou répertoires supplémentaires à exclure de la sauvegarde
+
| entier >= 0 || 0 || En comparant deux horodatages, rsync les traite comme étant égaux s'ils ne diffèrent pas de plus de la valeur modify-window. C'est normalement 0 pour une correspondance exacte. Une valeur >= 0 est pratique si vous ne pouvez pas garder les horloges de la source et du serveur Affa synchonisées.
 
|-
 
|-
| RPMCheck
+
| rsyncOptions
| yes ''ou'' no || no || Seulement applicable aux tâches qui sauvegardent un serveur SME 7.<br>Compares les RPM de l'hôte source avec ceux de l'hôte de sauvegarde affa. Envoie un message avec une liste de différences s'il n'y a pas correspondance. Cette vérification est utile, si vous voulez avoir la possibilité de convertir le serveur de sauvegarde en serveur de production.
+
| texte || || chaine d'options aditionnelles à passer à rsync.
 
|-
 
|-
| DiskSpaceWarn
+
| rsyncdMode
| strict ''ou'' normal ''ou'' risky ''ou'' none || strict || lance une vérification de l'espace disque après qu'une tâche soit terminée. Avec le niveau 'strict' un message d'avertissement sera envoyé si l'espace disponible est moins que la taille de la sauvegarde qui vient de s'achever. Avec les niveaux 'normal'/'risky' le message est envoyé si moins de 50%/10% de la taille de la sauvegarde reste disponible.
+
| yes ''ou'' no || no || Positionné à yes pour se connecter au démon rsync de l'hôte distant (au lieu de lancer rsync over ssh).
'''Note:''' Lorsque RootDir est un lien symbolique vers un autre système de fichiers, l'espace disque utilisé du système de fichiers local est vérifié à la place de celui du système de fichiers lié. Positionnez le point de montage comme RootDir pour avoir une vérification correcte.
   
|-
 
|-
| localNice
+
| rsyncdModule
| -19...+19 || 0 || lance le process local rsync par nice.
+
| texte || AFFA || Le nom du module rsyncd (seulement applicable avec rsyncdMode=yes)
 
|-
 
|-
| remoteNice
+
| rsyncdUser
| -19...+19 || 0 || lance le process rsync de la source par nice.
+
| texte || affa || Le nom d'utilisateur pour authentification au démon rsync (seulement applicable avec rsyncdMode=yes)
 
|-
 
|-
| Watchdog
+
| rsyncdPassword
| yes ''ou'' no || yes || Seulement applicable aux tâches qui sauvegardent un serveur SME 7.<br>Quand une tâche est lancée, affa installe un script chien de garde sur la source dans /etc/cron.d/, qui envoie un message d'avertissement si la prochaine tâche programmée (prise dans la propriété TimeSchedule + 10 minutes) n'a pas été lancée. Cela garantit que vous serez prévenu même en cas de panne du serveur affa. Le script chien de garde envoie un message de rappel quotidien si l'erreur persiste. La tâche lancée suivante remplace le script chien de garde avec un nouveau temps de déclenchement.
+
| texte || || Le mot de passe pour authentification au démon rsync (seulement applicable avec rsyncdMode=yes)
 
|-
 
|-
| sshPort
+
| remoteOS
| port du service || 22 || Lorsque sshd sur le serveur source ou votre firewall écoute sur un port non standard, précisez le port ici.
+
| cygwin || || avec remoteOS=cygwin les options --send-key et --revoke-key utilisent le compte 'Administrator' et le chemin correct pour la clé publique sur un hôte distant sous Windows/Cygwin. 
 +
|-
 +
| ESXi
 +
| yes ''ou'' no || no || active le mode de sauvegarde VMware ESXi pour les machines virtuelles.<br>Voir [[Sauvegarde des machines virtuelles ESXi avec Affa]]
 
|-
 
|-
| ConnectionCheckTimeout
+
| ESXiVMName
| secondes || 120 || Avant que le process rsync démarre sur l'hôte source distant, affa vérifie la connexion ssh et se termine avec une erreur après le temps configuré, si l'hôte ne répond pas.
+
| texte || || Le nom de la VM tel qu'affiché dans le client VI.
|-
  −
| rsyncTimeout
  −
| secondes || 900 || Rsync se termine si aucune donnée n'est transférée pendant le temps configuré. Cela évite un gelage permanent dans le cas d'une erreur sur le réseau.
  −
|-
  −
| BandwidthLimit
  −
| entier>=0 Ko/s || 0 || Limite la vitesse de transfert des données. A valeur à zero specifie qu'il n'y a pas de limite.
  −
|-
  −
| rsyncCompress
  −
| yes ''ou'' no || no || Compresse les données transférées. Peut être utile avec les connexions internet lentes. Cela augmente la charge CPU sur les hôtes source et de sauvegarde.
   
|-
 
|-
| EmailAddresses
+
| ESXiUsername
| name@domain.com,name@domain.com,... || admin|| Liste séparée par des virgules des adresses email où les messages seront envoyés.<br>'''Note:''' Par défaut, Affa n'envoie de messages que pour les erreurs, jamais en cas de succès (voir la propriété chattyOnSuccess).
+
| texte || || Le nom du client VI avec la permission de créer et détruire les instantanés (snapshots).
 
|-
 
|-
| RetryAttempts
+
| ESXiPassword
| entier >= 0 || 3 || Quand positionné à une valeur >0, Affa relance une tâche échouée RetryAttemps fois avec un délai de RetryAfter secondes.
+
| texte || || Le mot de passe de l'utilisateur ESXiUsername
 
|-
 
|-
| RetryAfter
+
| chunkFiles
| secondes >= 3 || 600 || Quand positionné à une valeur >0, attend RetryAfter secondes avant de relancer la tâche suite à une erreur. Utile seulement avec RetryAttempts>0
+
| texte || || Noms de fichiers qu'Affa devrait découper et compresser. Plusieurs noms doivent être séparés par un slash (/), ex. 'mysql.dump/pgsql.dump' découpe les deux fichiers mysql.dump et pgsql.dump. Avec ESXi=yes c'est implicitement positionné à '*.vmdk'. Voir aussi les options de ligne de commande --chunk-archive et --unchunk-archive
|-
+
|}
| RetryNotification
+
 
| yes ''ou'' no || yes || Quand positionné à no, Affa n'envoie pas de message d'erreur lorsqu'une tâche a échoué et que RetryAttemps est configuré. Un message d'erreur n'est envoyé que lorsque le dernier essai a échoué.
+
==== Propriétés de la configuration par défaut ====
|-
+
Toutes les propriétées peuvent être positionnées par défaut dans l'enregistrement DefaultAffaConfig. C'est pratique, lorsque vous configurez plusieurs tâches similaires.  
| RetryAttempts
+
 
| entier >= 0 || 0 || Quand positionné à une valeur >0, Affa envoie un message pour les tâches terminées avec succès et décrémente  la valeur chattyOnSuccess. Lorsque la valeur atteint 0, Affa revient à son comportement par défaut et n'envoie plus de messages qu'en cas d'erreur.
+
Exemple : Vous voulez positionner la propriété 'localNice' à 19 pour toutes les tâches. Tapez
|-
+
| AutomountDevice<br>AutomountPoint
+
db affa setprop DefaultAffaConfig localNice 19
| full path  || || Unité et point de montage de l'unité de sauvegarde (ex. disque USB). L'unité est montée automatiquement avant qu'une tâche soit lancées et démontée après la fin de la tâche. Les deux propriétés doivent être remplies pour que la fonction Automount soit active.
+
 
|-
+
et ne positionnez pas cette propriété pour les tâches.
| AutomountOptions
+
Les propriétés positionnées dans les tâches sont prioritaires sur les propriétés par défaut.
| chaine de caractères  || || Une chaine d'options passées à la commande de montage automatique
+
 
|-
+
La propriété spéciale 'sendStatus' ne s'applique que dans l'enregistrement DefaultAffaConfig. Elle contrôle le rapport d'état (status) envoyé par mail et peut prendre les valeurs 'none', 'daily', 'weekly' ou 'monthly'.
| AutoUnmount
+
 
| yes ''ou'' no || yes || Quand positionné à 'no' l'unité montée automatiquement reste montée après l'exécution d'Affa.
+
Pour configurer un rapport hebdomadaire, tapez :
|-
+
| preJobCommand<br>postJobCommand
+
db affa setprop DefaultAffaConfig sendStatus weekly
| full path || || Programmes (locaux sur le serveur affa) à exécuter avant/après qu'une tâche soit lancée. Le nom de la tâche et le type (programmée, journalière etc.) sont passés en arguments au programme. Le code de sortie est de plus passé à la commande de programme post-tâche. Voir /usr/lib/affa/ pour des exemples de scripts perl.
+
 
|-
+
puis configurez cronjob :
| RootDir
+
| full path || /var/affa || Où stocker les archives de sauvegarde. N'utilisez pas /home/e-smith ou /root puisqu'ils sont inclus dans les répertoires à sauvegarder, ce qui empêcherait la fonction de conversion de fonctionner ! Répertoire conseillé : /var/affa
+
affa --make-cronjobs
|-
+
 
| SambaShare
+
==== Désactivation globale ====
| yes ''ou'' no|| yes || Accède aux archives de la tâche via SMB.
+
Toutes les tâches peuvent être désactivées en positionnant l'enregistrement AffaGlobalDisable sur 'yes'.
|-
+
| Debug
+
db affa set AffaGlobalDisable yes
| yes ''ou'' no || no || Positionné à 'yes', donne plus de détails dans le fichier de log.
+
affa --make-cronjobs
|-
+
 
| status
+
Pour réactiver :
| enabled ''ou'' disabled || enabled || Positionné à 'disable', aucune entrée cron ne sera faite. Vous pouvez encore lancer les tâches à la main.
+
|-
+
db affa set AffaGlobalDisable no
| rsync--inplace
+
affa --make-cronjobs
| yes ''ou'' no || yes || Positionné à 'no', si la version rsync de la source ne supporte pas cette option (comme rsync sur SME6)
+
 
|-
+
==== Exemples de configuration ====
| rsync--modify-window
+
===== Serveur de sauvegarde dédié  =====
| entier >= 0 || 0 || En comparant deux horodatages, rsync les traite comme étant égaux s'ils ne diffèrent pas de plus de la valeur modify-window. C'est normalement 0 pour une correspondance exacte. Une valeur >= 0 est pratique si vous ne pouvez pas garder les horloges de la source et du serveur Affa synchonisées.
+
* Configurez une tâche pour chaque serveur que vous voulez sauvegarder
|-
+
* Envoyez les clés publiques à chaque serveur.
| rsyncOptions
+
affa --send-key JOBNAME
| texte || || chaine d'options aditionnelles à passer à rsync.
+
* Envoie la clé DSA correspontante à la tâche JOBNAME.
|-
+
affa --check-connections
| rsyncdMode
+
* Vérifie que les connexions sans mot de passe fonctionnent.
| yes ''ou'' no || no || Positionné à yes pour se connecter au démon rsync de l'hôte distant (au lieu de lancer rsync over ssh).
+
affa --show-schedule
|-
+
* Vérifie si les tâches planifiées sont réparties dans la journée.
| rsyncdModule
+
affa --make-cronjobs
| texte || AFFA || Le nom du module rsyncd (seulement applicable avec rsyncdMode=yes)
+
* Crée les tâches cron.
|-
+
affa --status
| rsyncdUser
+
* Vérifie l'état après 24 heures.
| texte || affa || Le nom d'utilisateur pour authentification au démon rsync (seulement applicable avec rsyncdMode=yes)
+
 
|-
+
 
| rsyncdPassword
+
===== Sauvegarder une ibay individuellement  =====
| texte || || Le mot de passe pour authentification au démon rsync (seulement applicable avec rsyncdMode=yes)
+
Supposons que nous voulions sauvegarder les ibays 'staff1' et 'staff2' de notre serveur de production dont l'adresse IP WAN est 82.123.1.1 sur un serveur Affa déporté via internet, toutes les nuits à 2h30.
|-
+
* On se connecte sur le serveur Affa et on installe les paquetages comme décrit ci-dessus.
| remoteOS
+
* On copie l'exemple de configuration
| cygwin || || avec remoteOS=cygwin les options --send-key et --revoke-key utilisent le compte 'Administrator' et le chemin correct pour la clé publique sur un hôte distant sous Windows/Cygwin.
+
cp /usr/lib/affa/jobconfig-sample.pl /root/ibay-staff-job.pl
|-  
+
* On édite /root/ibay-staff-job.pl pour y mettre :
| ESXi
+
my $jobname='ibay-staff';
| yes ''ou'' no || no || active le mode de sauvegarde VMware ESXi pour les machines virtuelles.<br>Voir [[Sauvegarde des machines virtuelles ESXi avec Affa]]
+
 
|-
+
et
| ESXiVMName
+
| texte || || Le nom de la VM tel qu'affiché dans le client VI.
+
'remoteHostName‘=>'82.123.1.1',
|-
+
'TimeSchedule'=>'0230',
| ESXiUsername
+
'SMEServer'=>'no',
| texte || || Le nom du client VI avec la permission de créer et détruire les instantanés (snapshots).
+
'Include[0]'=>'/home/e-smith/files/ibays/staff1',
|-
+
'Include[1]'=>'/home/e-smith/files/ibays/staff2',
| ESXiPassword
+
* On enregistre la configuration
| texte || || Le mot de passe de l'utilisateur ESXiUsername
+
/root/ibay-staff-job.pl
|-
+
* On envoie la clé publique au serveur de production
| chunkFiles
+
affa --send-key ibay-staff
| texte || || Noms de fichiers qu'Affa devrait découper et compresser. Plusieurs noms doivent être séparés par un slash (/), ex. 'mysql.dump/pgsql.dump' découpe les deux fichiers mysql.dump et pgsql.dump. Avec ESXi=yes c'est implicitement positionné à '*.vmdk'. Voir aussi les options de ligne de commande --chunk-archive et --unchunk-archive
+
* On vérifie le lendemain matin :
|}
+
affa --list-archives ibay-staff
 +
affa --status
 +
* Vérifie l'état après 24 heures.
 +
ls /var/affa/ibay-staff
   −
==== Propriétés de la configuration par défaut ====
+
===== Deux serveurs de production qui se sauvegardent mutuellement =====
Toutes les propriétées peuvent être positionnées par défaut dans l'enregistrement DefaultAffaConfig. C'est pratique, lorsque vous configurez plusieurs tâches similaires.  
+
Vous avez deux sites connectés via un VPN et un serveur SME fonctionnant sur chaque site. Dans ce cas, vous n'avez pas besoin d'un serveur de sauvegarde Affa dédié. Les deux serveurs de production peuvent en plus agir chacun comme un serveur Affa sauvegardant le serveur de l'autre site. Installez simplement Affa et configurez une tâche qui sauvegarde l'autre serveur. Vous pouvez utiliser toutes les fonctionnalités Affa excepté la fonctionnalité rise.
 +
En utilisant la fonctionnalité rise, le serveur devient n'importe lequel des systèmes sauvegardés, ce qui est moins utile dans ce scénario puisque cela vous donnerait une copie fonctionnelle du serveur de l'autre site lorsque celui-ci est en panne.
   −
Exemple : Vous voulez positionner la propriété 'localNice' à 19 pour toutes les tâches. Tapez
+
Pour obtenir une redondance et une restauration plus rapide, vous pouvez configurer une sauvegarde locale sur un disque USB externe ou sur un NAS.
db affa setprop DefaultAffaConfig localNice 19
  −
et ne positionnez pas cette propriété pour les tâches.
  −
Les propriétés positionnées dans les tâches sont prioritaires sur les propriétés par défaut.
     −
La propriété spéciale 'sendStatus' ne s'applique que dans l'enregistrement DefaultAffaConfig. Elle contrôle le rapport d'état (status) envoyé par mail et peut prendre les valeurs 'none', 'daily', 'weekly' ou 'monthly'.  
+
Attention de ne pas sauvegarder à nouveau les archives de l'autre site. Configurez la propriété RootDir vers un chemin qui n'est pas inclu dans la liste de sauvegarde par défaut de SME. En laissant la propriété RootDir par défaut sur '/var/affa', cela est garanti.
   −
Pour configurer un rapport hebdomadaire, tapez :
+
===== Sauvegarde d'un ordinateur Windows =====
db affa setprop DefaultAffaConfig sendStatus weekly
+
Sauvegarder les données d'un système Windows nécessite que le démon Rsyncd Cygwin soit installé et configuré sous Windows. La procédure "rsync over ssh" ne fonctionne pas, puisque le processus rsync Cigwin se plante systématiquement après le transfert de quelques fichiers.
puis configurez cronjob :
  −
affa --make-cronjobs
     −
==== Désactivation globale ====
+
====== Configuration de Rsyncd sur l'ordinateur Windows ======  
Toutes les tâches peuvent être désactivées en positionnant l'enregistrement AffaGlobalDisable sur 'yes'.
+
Installez la base Cygwin, le paquetage rsync puis configurez le service Rsyncd comme décrit dans ce document : [[Rsyncd setup on a windows computer for use with Affa backup]]'.
db affa set AffaGlobalDisable yes
+
L'installation du service sshd est optionnelle et n'est pas nécessaire pour la sauvegarde elle-même, mais avoir une connexion ssh peut être très utile pour l'administration et pour exécuter des scripts sur le système Windows. Affa supporte l'envoi de la clé publique vers un ordinateur Windows Cygwin pour une connexion sans mot de passe.
affa --make-cronjobs
     −
Pour réactiver :
+
Note: Affa ne sauvegarde pas l'information Windows Access Control List (ACL). Vous pourriez avoir à corriger les ACLs après une restauration.
db affa set AffaGlobalDisable no
  −
affa --make-cronjobs
     −
==== Exemples de configuration ====
+
====== Configuration du mode Affa Rsyncd (exemple de démarrage rapide) ======
===== Serveur de sauvegarde dédié  =====
+
Vous voulez sauvegarder les répertoires ''Mes Documents''des utilisateurs ''ssorglos'' et ''bsimpson'' depuis l'ordinateur Windows 'ws001' avec l'IP 192.168.1.65 sur votre serveur Affa 'affabox' avec l'IP 192.168.1.3.
* Configurez une tâche pour chaque serveur que vous voulez sauvegarder
+
* connectez-vous sur 'affabox' et copiez le script exemple de configuration Cygwin
* Envoyez les clés publiques à chaque serveur.
+
  cp /usr/lib/affa/jobconfig-cygwin-sample.pl /root/ws001-mydocs-job.pl
affa --send-key JOBNAME
+
* editez /root/ws001-mydocs-job.pl et mettez
* Envoie la clé DSA correspontante à la tâche JOBNAME.
+
  my $jobname='ws001-mydocs';
  affa --check-connections
  −
* Vérifie que les connexions sans mot de passe fonctionnent.
  −
affa --show-schedule
  −
* Vérifie si les tâches planifiées sont réparties dans la journée.
  −
affa --make-cronjobs
  −
* Crée les tâches cron.
  −
  affa --status
  −
* Vérifie l'état après 24 heures.
      +
et
 +
 +
'remoteHostName‘=>'192.168.1.65',
 +
'rsyncdPassword'=>'<i>secretword</i><nowiki/>',
 +
'Include[0]'=>'/c/Documents and Settings/ssorglos/My Documents/', ''# N'utilisez pas les backslashes dans les chemins !''
 +
<nowiki>'Include[1]'=>'/c/Documents and Settings/bsimpson/My Documents/',</nowiki>
   −
===== Sauvegarder une ibay individuellement  =====
+
''secretword'' doit être remplacé par le mot de passe que vous avez choisi dans rsyncd.secretsfile sur l'ordinateur Windows.
Supposons que nous voulions sauvegarder les ibays 'staff1' et 'staff2' de notre serveur de production dont l'adresse IP WAN est 82.123.1.1 sur un serveur Affa déporté via internet, toutes les nuits à 2h30.
+
* Enregistrez la configuration (cela crée les entrées de base de données et configure les tâches cron.
* On se connecte sur le serveur Affa et on installe les paquetages comme décrit ci-dessus.
+
/root/ws001-mydocs-job.pl
* On copie l'exemple de configuration
+
* Lancez la tâche manuellement. Après l'achèvement, vérifiez l'archive /var/affa/ws001-mydocs/scheduled.0 et le journal /var/log/affa/ws001-mydocs.log.
cp /usr/lib/affa/jobconfig-sample.pl /root/ibay-staff-job.pl
+
  affa --run ws001-mydocs
* On édite /root/ibay-staff-job.pl pour y mettre :
+
 
  my $jobname='ibay-staff';
+
====== Configuration manuelle d'Affa en mode Rsyncd ======
et
+
Au cas où vous voudriez configurer manuellement en utilisant les commandes db, voici les paramètres obligatoires pour le mode Rsyncd Cygwin.
'remoteHostName‘=>'82.123.1.1',
+
   
  'TimeSchedule'=>'0230',
+
db affa setprop JOB rsyncdMode yes
  'SMEServer'=>'no',
+
  db affa setprop JOB rsyncdModule AFFA
  'Include[0]'=>'/home/e-smith/files/ibays/staff1',
+
  db affa setprop JOB rsyncdUser affa
  'Include[1]'=>'/home/e-smith/files/ibays/staff2',
+
  db affa setprop JOB rsyncdPassword ''secretword''
* On enregistre la configuration
+
  db affa setprop JOB SMEServer no
/root/ibay-staff-job.pl
+
  db affa setprop JOB RPMCheck no
* On envoie la clé publique au serveur de production
+
  db affa setprop JOB Watchdog no
  affa --send-key ibay-staff
  −
* On vérifie le lendemain matin :
  −
  affa --list-archives ibay-staff
  −
  affa --status
  −
* Vérifie l'état après 24 heures.
  −
ls /var/affa/ibay-staff
     −
===== Deux serveurs de production qui se sauvegardent mutuellement =====
+
Optionel pour une connexion ssh.
Vous avez deux sites connectés via un VPN et un serveur SME fonctionnant sur chaque site. Dans ce cas, vous n'avez pas besoin d'un serveur de sauvegarde Affa dédié. Les deux serveurs de production peuvent en plus agir chacun comme un serveur Affa sauvegardant le serveur de l'autre site. Installez simplement Affa et configurez une tâche qui sauvegarde l'autre serveur. Vous pouvez utiliser toutes les fonctionnalités Affa excepté la fonctionnalité rise.  
+
En utilisant la fonctionnalité rise, le serveur devient n'importe lequel des systèmes sauvegardés, ce qui est moins utile dans ce scénario puisque cela vous donnerait une copie fonctionnelle du serveur de l'autre site lorsque celui-ci est en panne.
+
db affa setprop JOB remoteOS cygwin
   −
Pour obtenir une redondance et une restauration plus rapide, vous pouvez configurer une sauvegarde locale sur un disque USB externe ou sur un NAS.
     −
Attention de ne pas sauvegarder à nouveau les archives de l'autre site. Configurez la propriété RootDir vers un chemin qui n'est pas inclu dans la liste de sauvegarde par défaut de SME. En laissant la propriété RootDir par défaut sur '/var/affa', cela est garanti.
+
===== Utiliser Affa pour sauvegarder un NAS monté par NFS ou un disque USB local =====
   −
===== Sauvegarde d'un ordinateur Windows =====
+
On désire sauvegarder notre serveur SME 7 de production dont le nom d'hôte est 'prodbox' et l'IP 10.200.48.1 sur un système de fichiers monté plutôt que de configurer un serveur Affa dédié.
Sauvegarder les données d'un système Windows nécessite que le démon Rsyncd Cygwin soit installé et configuré sous Windows. La procédure "rsync over ssh" ne fonctionne pas, puisque le processus rsync Cigwin se plante systématiquement après le transfert de quelques fichiers.  
     −
====== Configuration de Rsyncd sur l'ordinateur Windows ======  
+
====== Configuration du NAS ======
Installez la base Cygwin, le paquetage rsync puis configurez le service Rsyncd comme décrit dans ce document : [[Rsyncd setup on a windows computer for use with Affa backup]]'.  
+
On dispose d'un serveur FREENAS dont l'adresse IP est 10.200.48.2 en fonction et avec le service NFS activé. Le disque est monté sur /mnt/affashare. On a autorisé l'adresse IP de notre serveur de production à accéder au partage /mnt/affashare.
L'installation du service sshd est optionnelle et n'est pas nécessaire pour la sauvegarde elle-même, mais avoir une connexion ssh peut être très utile pour l'administration et pour exécuter des scripts sur le système Windows. Affa supporte l'envoi de la clé publique vers un ordinateur Windows Cygwin pour une connexion sans mot de passe.
+
* On se logge sur 'prodbox' et on installe les paquetages NFS :
 +
/usr/bin/yum install --enablerepo=smecontribs smeserver-nfs
 +
* maintenant, on active et on démarre le service portmapper.
 +
config setprop portmap status enabled
 +
service portmap start
 +
* On monte le partage NFS :
 +
mkdir -p /mnt/affadevice
 +
mount 10.200.48.2:/mnt/affashare /mnt/affadevice
 +
 
 +
 
 +
====== Alternative : configuration du disque USB ======
 +
* On se logge sur 'prodbox'
 +
* On connecte le disque USB sur le bus USB. On doit maintenant déterminer sur quel 'device' le noyau a placé le lecteur. On regarde /var/log/messages et on cherche la ligne d'initialisation correspondante (Initializing USB Mass Storage driver). Quelques lignes plus bas, on trouve le nom du device. Supposons qu'il s'agisse de 'sdh'. Si ce n'est pas le cas, on remplacera dans les instructions ci-après /dev/sdh par la valeur trouvée.
 +
* On crée une partition linux avec fdisk : '''Il faut bien vérifier que c'est bien le disque USB qui est attaché avant de continuer !'''
   −
Note: Affa ne sauvegarde pas l'information Windows Access Control List (ACL). Vous pourriez avoir à corriger les ACLs après une restauration.
+
fdisk /dev/sdh
   −
====== Configuration du mode Affa Rsyncd (exemple de démarrage rapide) ======
+
On trouvera probablement une partition dos vfat, qu'on devra d'abord détruire. Supposons que nous ayons créé une seule partition  ''/dev/sdh1''.
Vous voulez sauvegarder les répertoires ''Mes Documents''des utilisateurs ''ssorglos'' et ''bsimpson'' depuis l'ordinateur Windows 'ws001' avec l'IP 192.168.1.65 sur votre serveur Affa 'affabox' avec l'IP 192.168.1.3.
+
* On formatte avec un système ext3 :
* connectez-vous sur 'affabox' et copiez le script exemple de configuration Cygwin
+
mkfs.ext3 /dev/sdh1
  cp /usr/lib/affa/jobconfig-cygwin-sample.pl /root/ws001-mydocs-job.pl
+
* On crée le point de montage :
* editez /root/ws001-mydocs-job.pl et mettez
+
  mkdir -p /mnt/affadevice
  my $jobname='ws001-mydocs';
+
* On ajoute notre disque USB dans /etc/fstab. On crée donc une nouvelle ligne avec :
et
+
/dev/sdh1 /mnt/affadevice ext3 defaults
'remoteHostName‘=>'192.168.1.65',
+
* On monte le disque :
'rsyncdPassword'=>'<i>secretword</i>',
+
mount /mnt/affadevice
'Include[0]'=>'/c/Documents and Settings/ssorglos/My Documents/', ''# N'utilisez pas les backslashes dans les chemins !''
+
* On fait une vérification croisée avec df :
'Include[1]'=>'/c/Documents and Settings/bsimpson/My Documents/',
+
  df
où ''secretword'' doit être remplacé par le mot de passe que vous avez choisi dans rsyncd.secretsfile sur l'ordinateur Windows.
+
 
* Enregistrez la configuration (cela crée les entrées de base de données et configure les tâches cron.
+
====== Copier une archive Affa d'un disque dur USB sur un nouveau disque ======
/root/ws001-mydocs-job.pl
+
Affa utilise un grand nombre de liens matériels (hard links) pour compresser et préserver de la place sur le disque pour les sauvegardes. Dans la situation où l'on voudrait copier un disque contenant une archive Affa sur un autre disque (de taille plus importante), il est nécessaire de s'assurer que les liens matériels ont été copiés correctement au risque que la copie devienne considérablement plus volumineuse que l'archive source.
* Lancez la tâche manuellement. Après l'achèvement, vérifiez l'archive /var/affa/ws001-mydocs/scheduled.0 et le journal /var/log/affa/ws001-mydocs.log.
  −
affa --run ws001-mydocs
     −
====== Configuration manuelle d'Affa en mode Rsyncd ======
+
Une méthode pour copier à travers des systèmes de fichiers distincts (par ex. entre 2 disques usb différents) et préserver les liens matériels est la suivante:
Au cas où vous voudriez configurer manuellement en utilisant les commandes db, voici les paramètres obligatoires pour le mode Rsyncd Cygwin.
+
* monter les deux disques usb avec des points de montage différents, par exemple /media/backup1 et /media/backup2 et effectuer alors:
db affa setprop JOB rsyncdMode yes
  −
db affa setprop JOB rsyncdModule AFFA
  −
db affa setprop JOB rsyncdUser affa
  −
db affa setprop JOB rsyncdPassword ''secretword''
  −
db affa setprop JOB SMEServer no
  −
db affa setprop JOB RPMCheck no
  −
db affa setprop JOB Watchdog no
  −
Optionel pour une connexion ssh.
  −
db affa setprop JOB remoteOS cygwin
      +
mkdir /media/backup2/archive
 +
cd /media/backup1/archive
 +
tar cpf - . | ( cd /media/backup2/archive && tar xpf - )
   −
===== Utiliser Affa pour sauvegarder un NAS monté par NFS ou un disque USB local =====
+
en remplaçant '''archive''' par le véritable nom de l'archive (job) Affa que l'on souhaite placer sur l'autre disque.
   −
On désire sauvegarder notre serveur SME 7 de production dont le nom d'hôte est 'prodbox' et l'IP 10.200.48.1 sur un système de fichiers monté plutôt que de configurer un serveur Affa dédié.
+
   −
====== Configuration du NAS ======
+
====== Configuration d'Affa ======
On dispose d'un serveur FREENAS dont l'adresse IP est 10.200.48.2 en fonction et avec le service NFS activé. Le disque est monté sur /mnt/affashare. On a autorisé l'adresse IP de notre serveur de production à accéder au partage /mnt/affashare.
+
On veut lancer des sauvegardes à 11h30, 15h30, 19h30 et on veut garder les 3 dernières, 7 journalières, 5 hebdomadaires, 12 mensuelles et 1 annuelle.
* On se logge sur 'prodbox' et on installe les paquetages NFS :
+
* On se logge sur 'prodbox' et on installe les paquetages Affa comme indiqué ci-dessus.
  /usr/bin/yum install --enablerepo=smecontribs smeserver-nfs
+
* On copie l'exemple de configuration
* maintenant, on active et on démarre le service portmapper.
+
  cp /usr/lib/affa/jobconfig-sample.pl /root/prodbox-job.pl
  config setprop portmap status enabled
+
* On édite /root/prodbox-job.pl pour y mettre :
service portmap start
+
  my $jobname='prodbox';
   −
* On monte le partage NFS :
+
et
  mkdir -p /mnt/affadevice
+
  mount 10.200.48.2:/mnt/affashare /mnt/affadevice
+
'remoteHostName‘=>'localhost',
 +
'TimeSchedule'=>'1130,1530,1930',
 +
'scheduledKeep'=>3,
 +
'dailyKeep'=>7,
 +
'weeklyKeep'=>5,
 +
'monthlyKeep'=>12,
 +
'yearlyKeep'=>1,
 +
  'RootDir=>'/mnt/affadevice',
 +
 
 +
On vérifie les autres propriétés et on les change si besoin.
 +
* On enregistre la configuration
 +
  /root/prodbox-job.pl
 +
* On lance la tâche manuellement :
    +
affa --run prodbox
   −
====== Alternative : configuration du disque USB ======
  −
* On se logge sur 'prodbox'
  −
* On connecte le disque USB sur le bus USB. On doit maintenant déterminer sur quel 'device' le noyau a placé le lecteur. On regarde /var/log/messages et on cherche la ligne d'initialisation correspondante (Initializing USB Mass Storage driver). Quelques lignes plus bas, on trouve le nom du device. Supposons qu'il s'agisse de 'sdh'. Si ce n'est pas le cas, on remplacera dans les instructions ci-après /dev/sdh par la valeur trouvée.
  −
* On crée une partition linux avec fdisk : '''Il faut bien vérifier que c'est bien le disque USB qui est attaché avant de continuer !'''
     −
fdisk /dev/sdh
+
====== Limitations ======
On trouvera probablement une partition dos vfat, qu'on devra d'abord détruire. Supposons que nous ayons créé une seule partition  ''/dev/sdh1''.
+
Avec ce type de configuration, on ne peut pas utiliser la fonction 'rise' (conversion du serveur de sauvegarde en serveur de production), puisqu'elle nécessite que l'archive soit sur le même système de fichiers que le serveur. La fonction 'rise' utilise les hardlinks, qui ne fonctionnent pas entre systèmes de fichiers différents.
* On formatte avec un système ext3 :
  −
mkfs.ext3 /dev/sdh1
  −
* On crée le point de montage :
  −
mkdir -p /mnt/affadevice
  −
* On ajoute notre disque USB dans /etc/fstab. On crée donc une nouvelle ligne avec :
  −
/dev/sdh1 /mnt/affadevice ext3 defaults
  −
* On monte le disque :
  −
mount /mnt/affadevice
  −
* On fait une vérification croisée avec df :
  −
df
     −
====== Copier une archive Affa d'un disque dur USB sur un nouveau disque ======
+
====== Automount : montage automatique ======
Affa utilise un grand nombre de liens matériels (hard links) pour compresser et préserver de la place sur le disque pour les sauvegardes. Dans la situation où l'on voudrait copier un disque contenant une archive Affa sur un autre disque (de taille plus importante), il est nécessaire de s'assurer que les liens matériels ont été copiés correctement au risque que la copie devienne considérablement plus volumineuse que l'archive source.
+
Avoir les archives de sauvegarde sur le même système de fichiers est toujours un risque, qui peut être minimisé en utilisant la fonction automount. Ainsi, le système de fichiers externe n'est monté que durant le déroulement d'une tâche.
   −
Une méthode pour copier à travers des systèmes de fichiers distincts (par ex. entre 2 disques usb différents) et préserver les liens matériels est la suivante:
+
Dans l'exemple NAS, configurez :
* monter les deux disques usb avec des points de montage différents, par exemple /media/backup1 et /media/backup2 et effectuer alors:
+
 +
'AutomountDevice=>'10.200.48.2:/mnt/affashare',
 +
'AutomountPoint =>'mnt/affadevice',
   −
mkdir /media/backup2/archive
+
et sautez l'étape 2
cd /media/backup1/archive
  −
tar cpf - . | ( cd /media/backup2/archive && tar xpf - )
  −
 
  −
en remplaçant '''archive''' par le véritable nom de l'archive (job) Affa que l'on souhaite placer sur l'autre disque.
      +
Dans l'exemple du disque USB, configurez :
 
   
 
   
 +
'AutomountDevice=>'/dev/sdc1',
 +
'AutomountPoint =>'mnt/affadevice',
   −
====== Configuration d'Affa ======
+
et sautez les étapes 5 à 8.
On veut lancer des sauvegardes à 11h30, 15h30, 19h30 et on veut garder les 3 dernières, 7 journalières, 5 hebdomadaires, 12 mensuelles et 1 annuelle.
  −
* On se logge sur 'prodbox' et on installe les paquetages Affa comme indiqué ci-dessus.
  −
* On copie l'exemple de configuration
  −
cp /usr/lib/affa/jobconfig-sample.pl /root/prodbox-job.pl
  −
* On édite /root/prodbox-job.pl pour y mettre :
  −
my $jobname='prodbox';
  −
et
  −
'remoteHostName‘=>'localhost',
  −
'TimeSchedule'=>'1130,1530,1930',
  −
'scheduledKeep'=>3,
  −
'dailyKeep'=>7,
  −
'weeklyKeep'=>5,
  −
'monthlyKeep'=>12,
  −
'yearlyKeep'=>1,
  −
'RootDir=>'/mnt/affadevice',
  −
On vérifie les autres propriétés et on les change si besoin.
  −
* On enregistre la configuration
  −
/root/prodbox-job.pl
  −
* On lance la tâche manuellement :
     −
affa --run prodbox
+
Le point de montage sera automatiquement créé, s'il n'existe pas. <br>
 +
Pour accéder au répertoire de l'archive, vous devez le monter à la main.
   −
 
+
=== Restauration ===
====== Limitations ======
+
Procédure valable pour Affa v.2 et v.3.
Avec ce type de configuration, on ne peut pas utiliser la fonction 'rise' (conversion du serveur de sauvegarde en serveur de production), puisqu'elle nécessite que l'archive soit sur le même système de fichiers que le serveur. La fonction 'rise' utilise les hardlinks, qui ne fonctionnent pas entre systèmes de fichiers différents.
  −
 
  −
====== Automount : montage automatique ======
  −
Avoir les archives de sauvegarde sur le même système de fichiers est toujours un risque, qui peut être minimisé en utilisant la fonction automount. Ainsi, le système de fichiers externe n'est monté que durant le déroulement d'une tâche.
  −
 
  −
Dans l'exemple NAS, configurez :
  −
'AutomountDevice=>'10.200.48.2:/mnt/affashare',
  −
'AutomountPoint =>'mnt/affadevice',
  −
et sautez l'étape 2
  −
 
  −
Dans l'exemple du disque USB, configurez :
  −
'AutomountDevice=>'/dev/sdc1',
  −
'AutomountPoint =>'mnt/affadevice',
  −
et sautez les étapes 5 à 8.
  −
 
  −
Le point de montage sera automatiquement créé, s'il n'existe pas. <br>
  −
Pour accéder au répertoire de l'archive, vous devez le monter à la main.
  −
 
  −
=== Restauration ===
  −
Procédure valable pour Affa v.2 et v.3.
   
==== Restauration de fichiers ou répertoires individuels ====
 
==== Restauration de fichiers ou répertoires individuels ====
 
'''Example 1 :'''  Nous sommes le Mardi 6 Janvier 2009 quand l'utilisateur 'briedlin' vous demande de restaurer les messages de sa boite 'orders' qu'il a malencontreusement détruite lundi.
 
'''Example 1 :'''  Nous sommes le Mardi 6 Janvier 2009 quand l'utilisateur 'briedlin' vous demande de restaurer les messages de sa boite 'orders' qu'il a malencontreusement détruite lundi.
Line 1,414: Line 1,376:  
* Vous devez d'abord regarder quelles sont les archives disponibles.  Le nom de tâche de ce serveur de sauvegardes est 'primmail. Pour avoir une liste de toutes les archives, lancez  
 
* Vous devez d'abord regarder quelles sont les archives disponibles.  Le nom de tâche de ce serveur de sauvegardes est 'primmail. Pour avoir une liste de toutes les archives, lancez  
 
  affa --list-archives primmail
 
  affa --list-archives primmail
 +
 
''(voir la liste exemple dans le chapitre [[Affa#Usage_and_command_line_options]]''
 
''(voir la liste exemple dans le chapitre [[Affa#Usage_and_command_line_options]]''
 
* Choisissez l'archive daily.0, qui a été créée la nuit de Lundi. Maintenant, restaurez la mailbox 'orders' en utilisant la commande rsync.
 
* Choisissez l'archive daily.0, qui a été créée la nuit de Lundi. Maintenant, restaurez la mailbox 'orders' en utilisant la commande rsync.
Line 1,435: Line 1,398:     
Si les serveurs sont configurés pour utiliser un port ssh différent, ex. 2222, à la place faites :
 
Si les serveurs sont configurés pour utiliser un port ssh différent, ex. 2222, à la place faites :
  export RFILE=/home/e-smith/files/ibays/docs/files/orderform.pdf  ''# cette variable est utilisée pour raccourcir la ligne de commande suivante''
+
   
 +
export RFILE=/home/e-smith/files/ibays/docs/files/orderform.pdf  ''# cette variable est utilisée pour raccourcir la ligne de commande suivante''
 
  rsync -av -e 'ssh -p 2222' /var/affa/prodserv/weekly.1/$RFILE 10.204.48.1:$RFILE
 
  rsync -av -e 'ssh -p 2222' /var/affa/prodserv/weekly.1/$RFILE 10.204.48.1:$RFILE
   Line 1,444: Line 1,408:  
N'utilisez pas les variables shell pour raccourcir la commande. Cela compliquerait les choses plus que cela aiderait.
 
N'utilisez pas les variables shell pour raccourcir la commande. Cela compliquerait les choses plus que cela aiderait.
 
Mettez entre guillemets les chemins source et destination. Dans le chemin de destination, echappez les caractères blancs avec un double backslash et les parenthèses avec un simple backslash. Sur le serveur de sauvegardes AFFA lancez :
 
Mettez entre guillemets les chemins source et destination. Dans le chemin de destination, echappez les caractères blancs avec un double backslash et les parenthèses avec un simple backslash. Sur le serveur de sauvegardes AFFA lancez :
  rsync -av "/var/affa/fileshare/daily.4/home/e-smith/files/ibays/mechfiles/files/Valve Control (Design Gr)/VALVE LIST FOR ISSUED.xls" "192.168.1.7:/home/e-smith/files/ibays/mechfiles/files/Valve\\ Control\\ \(Design\\ Gr\)/VALVE\\ LIST\\ FOR\\ ISSUED.xls"
+
   
 +
rsync -av "/var/affa/fileshare/daily.4/home/e-smith/files/ibays/mechfiles/files/Valve Control (Design Gr)/VALVE LIST FOR ISSUED.xls" "192.168.1.7:/home/e-smith/files/ibays/mechfiles/files/Valve\\ Control\\ \(Design\\ Gr\)/VALVE\\ LIST\\ FOR\\ ISSUED.xls"
    
Si les serveurs sont configurés pour utiliser un port ssh différent, ex. 2222, à la place faites :
 
Si les serveurs sont configurés pour utiliser un port ssh différent, ex. 2222, à la place faites :
Line 1,452: Line 1,417:  
==== Restauration complète ====
 
==== Restauration complète ====
 
Pour lancer une restauration complète des utilisateurs et des données de configuration, lancez sur le serveur Affa
 
Pour lancer une restauration complète des utilisateurs et des données de configuration, lancez sur le serveur Affa
  affa --full-restore <JOB> [<ARCHIVE>]
+
   
 +
affa --full-restore <JOB> [<ARCHIVE>]
 +
 
 
Cela synchroniste (par rsync) les données de la sauvegarde ARCHIVE vers l'ordinateur 'remoteHostname' défini dans la configuration de la tâche JOB.  
 
Cela synchroniste (par rsync) les données de la sauvegarde ARCHIVE vers l'ordinateur 'remoteHostname' défini dans la configuration de la tâche JOB.  
    
Exemple:
 
Exemple:
 
Vous avez sauvegardé votre serveur de production 'prodsrv' par une tâche 'prodbox'. Pour restaurer la dernière sauvegarde, lancez
 
Vous avez sauvegardé votre serveur de production 'prodsrv' par une tâche 'prodbox'. Pour restaurer la dernière sauvegarde, lancez
  affa --full-restore prodbox
+
   
 +
affa --full-restore prodbox
    
Pour restaurer la plus ancienne archive daily.3, lancez  
 
Pour restaurer la plus ancienne archive daily.3, lancez  
  affa --full-restore prodbox daily.3
+
   
 +
affa --full-restore prodbox daily.3
    
{{Warning box|type=Attention :| une restauration complète reconstruit le serveur tel qu'il était au moment de la sauvegarde. Cela signifie que tous les fichiers créés ou les changement de configuration du serveur effectués après la sauvegarde seront perdus. Après la restauration, le serveur restauré redémarre automatiquement. }}
 
{{Warning box|type=Attention :| une restauration complète reconstruit le serveur tel qu'il était au moment de la sauvegarde. Cela signifie que tous les fichiers créés ou les changement de configuration du serveur effectués après la sauvegarde seront perdus. Après la restauration, le serveur restauré redémarre automatiquement. }}
Line 1,484: Line 1,453:     
Avec SMEServer=yes la liste par défaut des sauvegardes SME. La commande suivante affiche la liste :
 
Avec SMEServer=yes la liste par défaut des sauvegardes SME. La commande suivante affiche la liste :
  perl -e 'use esmith::Backup;$b=new esmith::Backup;print join("\n",$b->restore_list)."\n"'  
+
   
 +
perl -e 'use esmith::Backup;$b=new esmith::Backup;print join("\n",$b->restore_list)."\n"'  
      Line 1,490: Line 1,460:     
Oui. Supposant que vous voulez sauvegarder tous les fichiers gif et jpg du répertoire /home/e-smith/files/ibays/pictures/files utilisez cette configuration
 
Oui. Supposant que vous voulez sauvegarder tous les fichiers gif et jpg du répertoire /home/e-smith/files/ibays/pictures/files utilisez cette configuration
  db affa setprop JOBNAME SMEServer no          # Ne pas inclure les répertoires et fichiers par défaut  de SME Server
+
   
 +
db affa setprop JOBNAME SMEServer no          # Ne pas inclure les répertoires et fichiers par défaut  de SME Server
 
  db affa setprop JOBNAME Include[0] '/home/e-smith/files/ibays/pictures/files' # Commencer à chercher ici
 
  db affa setprop JOBNAME Include[0] '/home/e-smith/files/ibays/pictures/files' # Commencer à chercher ici
 
  db affa setprop JOBNAME Include[1] '*/'        # Chercher récursivement dans l'arborescence
 
  db affa setprop JOBNAME Include[1] '*/'        # Chercher récursivement dans l'arborescence
Line 1,499: Line 1,470:       −
'''Comment puis-je déplacer une archive de sauvegarde de mon serveur de production dans une agence distante vers le serveur Affa en utilisant un disque USB ? Je veux éviter de télécharger la première sauvegarde complète depuis internet.
+
'''Comment puis-je déplacer une archive de sauvegarde de mon serveur de production dans une agence distante vers le serveur Affa en utilisant un disque USB ? Je veux éviter de télécharger la première sauvegarde complète depuis internet.'''
Installez Affa sur votre serveur de production, connectez et montez le disque USB.'''  Configurez une tâche pour enregistrer la sauvegarde sur le disque USB. Une fois la tâche exécutée, connectez le disque USB à votre serveur Affa et configurez la tâche de la même manière. Utilisez le script de configuration du répertoire d'archive. Vous n'avez à mofier que la propriété "remoteHostName". Maintenant, utilisez l'option --move-archive pour transférer l'archive sur le disque local. Si ce n'est pas déjà fait, envoyez la clé publique à votre serveur de production. C'est fait.
+
Installez Affa sur votre serveur de production, connectez et montez le disque USB.'''  Configurez une tâche pour enregistrer la sauvegarde sur le disque USB. Une fois la tâche exécutée, connectez le disque USB à votre serveur Affa et configurez la tâche de la même manière. Utilisez le script de configuration du répertoire d'archive. Vous n'avez à mofier que la propriété "remoteHostName". Maintenant, utilisez l'option --move-archive pour transférer l'archive sur le disque local. Si ce n'est pas déjà fait, envoyez la clé publique à votre serveur de production. C'est fait.'''
      Line 1,510: Line 1,481:     
Lancez les commandes suivantes pour chaque tâche :
 
Lancez les commandes suivantes pour chaque tâche :
  affa --revoke-key JOBNAME
+
   
 +
affa --revoke-key JOBNAME
 
  affa --delete-job JOBNAME
 
  affa --delete-job JOBNAME
 +
 
Verifie que toutes les tâches ont été supprimées.
 
Verifie que toutes les tâches ont été supprimées.
  affa --status
+
   
 +
affa --status
 +
 
 
Suprime le paquetage Affa
 
Suprime le paquetage Affa
  rpm -e smeserver-affa
+
   
 +
rpm -e smeserver-affa
 +
 
 
et, si ces paquetages ne sont pas des dépendances d'autres paquetages :
 
et, si ces paquetages ne sont pas des dépendances d'autres paquetages :
  Nettoyage général
+
   
 +
Nettoyage général
 
  rm -f /etc/cron.d/affa /etc/cron.d/affa-status
 
  rm -f /etc/cron.d/affa /etc/cron.d/affa-status
 
  rm -rf /home/e-smith/db/affa /home/e-smith/db/affa-report
 
  rm -rf /home/e-smith/db/affa /home/e-smith/db/affa-report
Line 1,545: Line 1,523:  
  ls -al /var/spool
 
  ls -al /var/spool
 
  drwxr-s---  2 qpsmtpd clamav 4096 Jun 10 12:31 qpsmtpd
 
  drwxr-s---  2 qpsmtpd clamav 4096 Jun 10 12:31 qpsmtpd
   
  #Sur le serveur cassé (restauré) :
 
  #Sur le serveur cassé (restauré) :
 
  ls -al /var/spool
 
  ls -al /var/spool
 
  drwxr-x---  2 qpsmtpd clamav 4096 Jun 10 10:46 qpsmtpd
 
  drwxr-x---  2 qpsmtpd clamav 4096 Jun 10 10:46 qpsmtpd
   
  #Sur la nouvelle installation avant la restauration :
 
  #Sur la nouvelle installation avant la restauration :
 
  ls -al /var/spool
 
  ls -al /var/spool
 
  drwxr-s---  2 qpsmtpd clamav 4096 Apr 17 13:47 qpsmtpd
 
  drwxr-s---  2 qpsmtpd clamav 4096 Apr 17 13:47 qpsmtpd
 +
 
voire [http://bugs.contribs.org/show_bug.cgi?id=4399| SME bug #4399]
 
voire [http://bugs.contribs.org/show_bug.cgi?id=4399| SME bug #4399]
   Line 1,568: Line 1,545:     
  mkdir /etc/backup
 
  mkdir /etc/backup
   
  cp -r /etc/{passwd,samba,e-smith,group,gshadow,shadow,ssh,sudoers} /etc/backup
 
  cp -r /etc/{passwd,samba,e-smith,group,gshadow,shadow,ssh,sudoers} /etc/backup
   
  yes | cp -r /var/affa/"JOBNAME"/"ARCHIVE"/etc/* /etc/
 
  yes | cp -r /var/affa/"JOBNAME"/"ARCHIVE"/etc/* /etc/
   Line 1,576: Line 1,551:     
  signal-event post-upgrade; signal-event reboot
 
  signal-event post-upgrade; signal-event reboot
   
* Si la fonction « full-restore » a été utilisée :
 
* Si la fonction « full-restore » a été utilisée :
 
Effectuer les étapes 1, 2 et 3 ci-dessus
 
Effectuer les étapes 1, 2 et 3 ci-dessus
Line 1,582: Line 1,556:     
  export RDIR=/var/affa/"NOM_DU_JOB"/"ARCHIVE"/etc/
 
  export RDIR=/var/affa/"NOM_DU_JOB"/"ARCHIVE"/etc/
   
  rsync -av $RDIR "PRODSERV-IP":/etc/
 
  rsync -av $RDIR "PRODSERV-IP":/etc/
    
Sur le serveur de production "PRODSERV", entrer par ssh dans un terminal
 
Sur le serveur de production "PRODSERV", entrer par ssh dans un terminal
  signal-event post-upgrade; signal-event reboot
+
   
 +
signal-event post-upgrade; signal-event reboot
    
=== Extinction du serveur de sauvegarde ===
 
=== Extinction du serveur de sauvegarde ===
Line 1,639: Line 1,613:  
* Article Wikipedia http://en.wikipedia.org/wiki/Rsync
 
* Article Wikipedia http://en.wikipedia.org/wiki/Rsync
 
* Site Rsync http://rsync.samba.org/
 
* Site Rsync http://rsync.samba.org/
* Article Wiki [[Moving SME to new Hardware]]
+
* Article Wiki [[Moving SME to new Hardware/fr]]
 
* Article Wiki [[Backup with Affa and FreeDup]]
 
* Article Wiki [[Backup with Affa and FreeDup]]
 
* Article Wiki [[Rsyncd setup on a windows computer for use with Affa backup]]
 
* Article Wiki [[Rsyncd setup on a windows computer for use with Affa backup]]
3,054

edits

Navigation menu