Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 28/03/2019, à 22:55

migrec

Backuppc et exclusion de répertoire

Bonjour,

Mon serveur réalise des sauvegardes des postes clients grâce à backuppc.
Tout fonctionne comme je le souhaite sauf l'exclusion de répertoire. Quelque soit le RSyncShareName, je ne veux pas sauvegarder les répertoires cache, temp, tmp, Trash quelque soit leur position dans la hiérarchie.

Voici l'exemple d'un poste client :

# cat /etc/backuppc/skeleton.pl
$Conf{XferMethod} = 'rsync';
$Conf{BackupFilesExclude} = {
  '*' => [
    '*/tmp',
    '*/temp',
    '*/Trash',
    '*/thumbnails'
  ],
  '/home' => [
    '*/.local/share/Trash/',
    "*/T\x{c3}\x{a9}l\x{c3}\x{a9}chargements/",
    '*/VirtualBox VMs/'
  ]
};
$Conf{RsyncShareName} = [
  '/home',
  '/etc'
];

J'ai essayé avec seulement tmp, avec tmp/ avec */tmp/ mais sans succès, mes répertoires que je veux exclure depuis le RSyncShareName * sont toujours dans la sauvegarde...
Évidement, si je les mets dans le RSyncShareName /home ou /etc, ça passe...

Qu'est ce que j'ai oublié ?

Hors ligne

#2 Le 29/03/2019, à 15:40

Iamawalrus

Re : Backuppc et exclusion de répertoire

Bonjour,

Je ne comprends pas pourquoi tu mets des * devant chaque nom de dossiers.
Si on regarde la doc de Backuppc il y a des exemples :

$Conf{BackupFilesExclude} = {
      '*' => ['/junk', '/dont_back_this_up'], # these are for other shares
   };

Ce qui devrait donner ça dans ton fichier :

$Conf{XferMethod} = 'rsync';
$Conf{BackupFilesExclude} = {
  '*' => ['/tmp', '/temp', '/Trash', '/thumbnails'],
  '/home' => ['/.local/share/Trash/', "/T\x{c3}\x{a9}l\x{c3}\x{a9}chargements/", '/VirtualBox VMs/'],
};

$Conf{RsyncShareName} = ['/home', '/etc'];

"Tout le rêve de la démocratie est d'élever le prolétaire au niveau de bêtise du bourgeois."

Hors ligne

#3 Le 29/03/2019, à 19:31

migrec

Re : Backuppc et exclusion de répertoire

Iamawalrus a écrit :

Bonjour,
Ce qui devrait donner ça dans ton fichier :

$Conf{XferMethod} = 'rsync';
$Conf{BackupFilesExclude} = {
  '*' => ['/tmp', '/temp', '/Trash', '/thumbnails'],
  '/home' => ['/.local/share/Trash/', "/T\x{c3}\x{a9}l\x{c3}\x{a9}chargements/", '/VirtualBox VMs/'],
};

$Conf{RsyncShareName} = ['/home', '/etc'];

J'ai testé et ça ne fonctionne pas.
Ce que j'ai compris, c'est que le slash partira depuis tous les RsyncShareName (*) donc ça exclura :
/home/tmp/
/home/temp/
/home/Trash/
/home/thumbnails
/etc/tmp/
/etc/temp/
/etc/Trash/
/etc/thumbnails/

Mais j'ai toujours :
/home/user/tmp
et /home/user/Documents/tmp
par exemple.

Hors ligne

#4 Le 29/03/2019, à 20:45

Iamawalrus

Re : Backuppc et exclusion de répertoire

Hum ok du coup il y a des dossiers qui n'existent pas si je comprends bien. À moins que tous les dossiers "temp" que tu cites existent tous ?

Du coup c'est peut-être pour ça que ça beugue. Il n'y a pas de logs ?

Sinon tu peux tester avec une ligne '/home' + tous les dossiers que tu veux exclure et une autre '/etc' idem (et commenter le Share) ?


"Tout le rêve de la démocratie est d'élever le prolétaire au niveau de bêtise du bourgeois."

Hors ligne

#5 Le 29/03/2019, à 23:04

migrec

Re : Backuppc et exclusion de répertoire

L'idée c'est de ne pas sauvegarder certains répertoires sans connaître leur emplacement. De façon à dire aux utilisateurs "Si vous créez un répertoire tmp n'importe ou dans votre hierachie, il ne sera pas sauvegardé".

/home/user/tmp existe, /home/user/Documents/tmp existe aussi. Les autres non actuellement mais ils pourraient.

Hors ligne

#6 Le 30/03/2019, à 02:56

Iamawalrus

Re : Backuppc et exclusion de répertoire

T'aurais possibilité de poster tout ton fichier skeleton.pl ?


"Tout le rêve de la démocratie est d'élever le prolétaire au niveau de bêtise du bourgeois."

Hors ligne

#7 Le 30/03/2019, à 10:20

migrec

Re : Backuppc et exclusion de répertoire

Avec ceci, ça fonctionne ! Mais je fais encore quelques essais.
Avec **/tmp/ comme argument, le répertoire /home/user/tmp et /home/user/Documents/tmp n'est pas sauvegardé. /home/user/Documents/debian/tmp non plus

Mais je ne trouve rien dans la doc à ce sujet... Est-ce lié à rsync ? à tar ?

# cat /etc/backuppc/skeleton.pl
$Conf{XferMethod} = 'rsync';
$Conf{BackupFilesExclude} = {
  '*' => [
    'thumbnails/*'
  ],
  '/home' => [
    '*/.local/share/Trash/',
    "*/T\x{c3}\x{a9}l\x{c3}\x{a9}chargements/",
    '*/VirtualBox VMs/',
    '*/plasma-vault/*',
    '*/Vaults/',
    '**/tmp/',
    '**/temp/'
  ]
};
$Conf{RsyncShareName} = [
  '/home',
  '/etc'
];
$Conf{BlackoutPeriods} = [
  {
    'weekDays' => [
      1,
      2,
      3,
      4,
      5
    ],
    'hourEnd' => '23.5',
    'hourBegin' => 15
  }
];

Hors ligne

#8 Le 31/03/2019, à 22:43

migrec

Re : Backuppc et exclusion de répertoire

Avec ma configuration précédente, le répertoire /home/user/thumbnails existe dans ma sauvegarde...

C'est le * qui pose problème, visiblement la syntaxe ne devrait pas être la même qu'avec un autre point.

Hors ligne

#9 Le 11/04/2019, à 15:30

Iamawalrus

Re : Backuppc et exclusion de répertoire

Désolé de déterrer le sujet mais j'ai une ou deux petites questions :

Le double astérisques sert à indiquer un chemin relatif ? Et le simple astérisque du coup ? J'ai peu du mal à comprendre pourquoi tu utilises ** dans certains cas. Et je trouve rien dans la doc à ce sujet.

Les seuls passages qui concerneng les dossiers :

Backuppc a écrit :

Users report that for smbclient you should specify a directory followed by "/*", eg: "/proc/*", instead of just "/proc".

Et

Backuppc a écrit :

If a hash is used, a special key "*" means it applies to all shares that don't have a specific entry.

Qu'est-ce qu'ils appellent "share" des partages ou c'est un vocabulaire spécifique à Backuppc ?


"Tout le rêve de la démocratie est d'élever le prolétaire au niveau de bêtise du bourgeois."

Hors ligne

#10 Le 11/04/2019, à 18:26

migrec

Re : Backuppc et exclusion de répertoire

Iamawalrus a écrit :

Le double astérisques sert à indiquer un chemin relatif ? Et le simple astérisque du coup ? J'ai peu du mal à comprendre pourquoi tu utilises ** dans certains cas. Et je trouve rien dans la doc à ce sujet.

Je t'avoue que je n'ai trouvé ça un peu au petit bonheur la chance car je n'ai rien trouvé dans la doc non plus. Toujours est-il que ça marche mais visiblement que pour les "shares" déclarés (et non pas le générique "*"). D'après mes tests uniquements.

Iamawalrus a écrit :

Qu'est-ce qu'ils appellent "share" des partages ou c'est un vocabulaire spécifique à Backuppc ?

Oui. Je ne suis pas un spécialiste de la question mais c'est un répertoire, pour faire court, à partir duquel les éléments seront pris en comptes.

Dans tes shares, tu peux mettre /home par exemple
et après, tu mets autant de sous éléments :
* : pour avoir tous les répertoires sous /home
/user/repertoire_a_backuper
ou /*/Documents/repertoire_a_backuper

Et il y a un share spécial "*" pour lequel tu peux déterminer des sous-éléments. je pensais faire comme ça :
* puis cache/ pour exclure tous les répertoires nommés "cache".

Hors ligne