Provided by: manpages-fr-extra_20101103_all bug

NOM

       locatedb - Bases de donnees incrementales de noms de fichiers

DESCRIPTION

       Cette  page de manuel documente le format des bases de noms de fichiers
       de la version GNU de locate. Les bases de donnees de noms  de  fichiers
       contiennent  des  listes de fichiers qui etaient dans des arborescences
       de repertoires particulieres lors de la derniere mise a jour des  bases
       de donnees.

       Il  est  possible  d'avoir plusieurs bases de donnees. Les utilisateurs
       peuvent selectionner la base de donnees de recherche en  utilisant  une
       variable d'environnement ou une option en ligne de commande ; consultez
       locate(1). L'administrateur systeme peut choisir le nom du  fichier  de
       la  base  de  donnees  par defaut, la frequence des mises a jour et les
       repertoires a referencer. Normalement, les bases de  noms  de  fichiers
       sont  mises  a  jour  en executant updatedb periodiquement, typiquement
       chaque nuit ; consultez updatedb(1).

Le format de base de donn'ees du LOCATE02 du GNU.

       C'est le format par defaut des bases de donnees generees par  updatedb.
       updatedb execute un programme appele frcode afin de compresser la liste
       des noms de fichier en utilisant <<\ front-compression\ >>  qui  reduit
       la   taille   de   la   base  de  donnees  d'un  facteur  4  a  5.  <<\
       Front-compression\  >>  (aussi  connu   sous   le   nom   d'<< encodeur
       incremental >>) travaille comme suit.

       Les  elements  de  la  base de donnees sont tries (sans distinction des
       minuscules et des majuscules  pour  la  convenance  des  utilisateurs).
       Puisque  la  liste  est  triee,  chaque  entree partage probablement un
       prefixe (debut du nom de  fichier)  avec  l'entree  precedente.  Chaque
       entree  de  la  base  de  donnees  debute  avec un octet de compteur de
       decalage differentiel, compose du nombre de caracteres  supplementaires
       a  ajouter  par rapport au prefixe de l'entree precedente qui n'etaient
       pas deja partages avec le predecesseur.  (Les  compteurs  peuvent  etre
       negatifs).  Apres  le  compteur,  on trouve le reste de la chaine ASCII
       terminee par un caractere nul, a savoir la partie du nom  qui  suit  le
       prefixe partage.

       Si  le  compteur  de decalage differentiel est plus grand que la valeur
       d'un octet  (+/-  127),  l'octet  prend  la  valeur  0x80  (en  binaire
       10000000)  et le compteur qui suit est un mot de 2 octets avec le poids
       fort en premier (ordre des octets reseau). Ce compteur peut aussi  etre
       negatif (le signe moins apparaissant dans le premier des deux octets).

       Toute  base  de  donnees  debute  avec  une entree factice d'un fichier
       appele << LOCATE02 >> que locate verifie pour s'assurer que la base  de
       donnees  de fichiers se trouve dans un format correct ; il ignore cette
       entree pendant les recherches.

       Les bases de donnees ne peuvent pas etre concatenees ensemble  meme  si
       la premiere entree (factice) est enlevee de toutes les bases de donnees
       sauf pour la premiere. Cela est du au compteur de decalage differentiel
       de  la  premiere  entree de la seconde base de donnees et des suivantes
       qui serait alors errone.

       A l'avenir, les donnees contenues dans la base  de  donnees  de  locate
       pourraient  ne  plus etre ordonnees d'une quelconque facon. L'obtention
       de donnees triees necessitera l'utilisation d'un tube vers sort -f.

format de la base de donn'ees slocate

       Le programme slocate utilise un format de donnees proche  de  celui  du
       locate  du  GNU,  quoique  legerement different. Le premier octet de la
       base de donnees indique le niveau de s'ecurit'e. Si ce niveau de securite
       est  a  0,  slocate lira, cherchera, et affichera les noms des fichiers
       d'apres les informations contenues  dans  la  base.  Toutefois,  si  le
       niveau  de  securite est a 1, slocate fera disparaitre de sa sortie les
       donnees auxquelles l'utilisateur ne peut acceder reellement. Le  second
       octet  de la base de donnees est zero. Ce second octet est suivi par la
       premiere valeur contenue dans la base de donnees. Cette premiere entree
       n'est  precedee  par  aucun compteur de decalage, ni donnee fantome. En
       fait, le compteur de decalage differentiel de la premiere  entree  vaut
       zero.

       A partir de la deuxieme donnee (si elle existe), la base de donnees est
       interpretee comme le format LOCATE02 du GNU.

Format de l'ancienne base de donn'ees Locate

       Un ancien format de base de  donnees  est  egalement  utilise  par  les
       programmes  Unix  locate  et  find  et  leurs  premieres  versions GNU.
       updatedb execute des programmes appeles bigram et code pour  creer  les
       bases  de  donnees  dans l'ancien format. L'ancien format differe de la
       description ci-dessus de la facon suivante. Au lieu que  chaque  entree
       commence  avec un octet de compteur de decalage differentiel et finisse
       avec un octet nul,  les  valeurs  d'octets  comprises  entre  0  et  28
       indiquent un compteur de decalage differentiel compris entre -14 et 14.
       L'octet, indiquant qu'un compteur de decalage differentiel  long  suit,
       est  0x1e  (30)  et  non  0x80. Les compteurs longs sont ordonnes selon
       l'hote, qui n'est pas forcement l'ordre des octets reseau et  selon  la
       taille  des  mots  entier de l'hote qui est habituellement de 4 octets.
       Ils representent un compteur dont leurs valeurs sont soustraites de 14.
       Les  lignes  de  la  base  de  donnees  ne  possedent  pas  d'octet  de
       terminaison ; le debut de la ligne suivante est indique par le  premier
       octet de valeur <= 30.

       En  plus,  au  lieu de debuter avec une entree factice, l'ancien format
       des bases de donnees debute avec une liste de 256 octets contenant  les
       128  << bigrams >>  les  plus  frequents  de  la  liste de fichiers. Un
       << bigram >> est une paire d'octets contigue. Les octets dans  la  base
       de  donnees  qui ont le bit de poids fort a 1 sont indexes (avec le bit
       de poids fort a 0) dans la table de << bigrams >>. Le  << bigram >>  et
       le  codage  du  compteur de decalage differentiel fait que ces bases de
       donnees sont 20 a 25 % plus petites que celles du nouveau  format  mais
       elles  ne  sont pas dans un format 8 bits classique. Tout octet dans un
       nom de fichier qui est dans l'intervalle utilise par les codes speciaux
       est  remplace  dans la base de donnees par un << ? >> qui, ce n'est pas
       une coincidence, est le caractere special de l'interpreteur de commande
       pour la correspondance d'un seul caractere.

EXEMPLE

       Entrees de frcode :
       /usr/src
       /usr/src/cmd/aardvark.c
       /usr/src/cmd/armadillo.c
       /usr/tmp/zoo

       Longueur du plus long prefixe de l'entree precedente a partager :
       0 /usr/src
       8 /cmd/aardvark.c
       14 rmadillo.c
       5 tmp/zoo

       Sortie de frcode avec les caracteres nuls restant changes en caracteres
       saut de ligne et les octets de compteurs rendus affichables :
       0 LOCATE02
       0 /usr/src
       8 /cmd/aardvark.c
       6 rmadillo.c
       -9 tmp/zoo

       (6 = 14 - 8 et -9 = 5 - 14)

VOIR AUSSI

       find(1), locate(1), locatedb(5), xargs(1), Finding Files (en ligne avec
       info ou en version imprimee)

BOGUES

       La  meilleure facon de signaler un bogue est d'utiliser le formulaire a
       l'adresse http://savannah.gnu.org/bugs/?group=findutils.  L'utilite  de
       cette  page  est  que  vous serez en mesure de suivre l'evolution de la
       correction du probleme. D'autres commentaires a propos de locate et  du
       paquet   findutils  peuvent  etre  envoyes  a  la  liste  de  diffusion
       bug-findutils. Pour s'abonner a cette  liste,  envoyez  un  courriel  a
       bug-findutils-request@gnu.org.

TRADUCTION

       Cette  page  de  manuel a ete traduite et est maintenue depuis 2006 par
       Sylvain Cherrier <sylvain DOT cherrier AT free DOT fr> et  les  membres
       de la liste <debian-l10n-french AT lists DOT debian DOT org>.  Veuillez
       signaler toute erreur de traduction par un  rapport  de  bogue  sur  le
       paquet manpages-fr-extra.

                                                                   LOCATEDB(5)