Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
locate [Le 20/12/2021, 23:37] wiki-corrector-bot passage de http à https sur les liens externes (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892) |
locate [Le 06/05/2023, 09:59] (Version actuelle) 92.137.30.180 [Installation] plocate |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | |||
{{tag>recherche cron optimisation}} | {{tag>recherche cron optimisation}} | ||
---- | ---- | ||
Ligne 11: | Ligne 10: | ||
A la différence de la commande //[[:tutoriel/console_commandes_de_base#find|find]]//, //locate// va vous donner le résultat de votre recherche immédiatement. find offre cependant beaucoup plus de possibilités | A la différence de la commande //[[:tutoriel/console_commandes_de_base#find|find]]//, //locate// va vous donner le résultat de votre recherche immédiatement. find offre cependant beaucoup plus de possibilités | ||
- | //locate// est en fait un fichier lien vers le programme //mlocate// | + | //locate// est en fait un fichier lien vers le programme //mlocate// devenu **//plocate//** sur Ubuntu en 2022. |
===== Principe ===== | ===== Principe ===== | ||
Ligne 23: | Ligne 22: | ||
La base de données est mise à jour quotidiennement à 7 h 30. Si la machine n'était pas allumée à ce moment précis, la mise à jour est déclenchée 5 minutes après le prochain démarrage. | La base de données est mise à jour quotidiennement à 7 h 30. Si la machine n'était pas allumée à ce moment précis, la mise à jour est déclenchée 5 minutes après le prochain démarrage. | ||
- | //locate// indexe l'ensemble du système de fichiers : un utilisateur lambda peut utiliser //locate// pour connaître le contenu de dossiers dont il n'a pas les droits. Si cet aspect vous gêne, il faudra remplacer //mlocate// par //slocate//. Ce n'est en général pas un problème sur une machine personnelle dont l'accès est sécurisé, mais c'est un point à garder en tête pour une utilisation sur serveur ou dans un contexte à accès partagé. | + | //locate// indexe l'ensemble du système de fichiers : un utilisateur lambda peut utiliser //locate// pour connaître le contenu de dossiers dont il n'a pas les droits. Si cet aspect vous gêne, il faudra remplacer //mlocate// (//plocate// depuis 2022) par //slocate//. Ce n'est en général pas un problème sur une machine personnelle dont l'accès est sécurisé, mais c'est un point à garder en tête pour une utilisation sur serveur ou dans un contexte à accès partagé. |
- | Plutôt que de relire l'ensemble du contenu de tous les répertoires chaque fois que la base de données est mise à jour, //locate// conserve des informations d'horodatage dans sa base de données de telle sorte qu'il puisse savoir si le contenu d'un répertoire a changé sans le relire. Cela rend les mises à jour plus rapides et sollicite moins le disque dur. Cette fonctionnalité est par contre uniquement disponible dans mlocate. | + | Plutôt que de relire l'ensemble du contenu de tous les répertoires chaque fois que la base de données est mise à jour, //locate// conserve des informations d'horodatage dans sa base de données de telle sorte qu'il puisse savoir si le contenu d'un répertoire a changé sans le relire. Cela rend les mises à jour plus rapides et sollicite moins le disque dur. Cette fonctionnalité est par contre uniquement disponible dans //mlocate// (//plocate// depuis 2022). |
<note>Avant la version 13.10 d'Ubuntu, les adeptes de l'hibernation ou de la mise en veille devaient potentiellement mettre à jour la base de données manuellement pour pouvoir utiliser //locate//, dans le cas où leur PC ne fonctionnait pas à l'heure exacte prévue de la mise à jour de l'index. Désormais, la mise à jour est automatiquement lancée à la sortie de veille.</note> | <note>Avant la version 13.10 d'Ubuntu, les adeptes de l'hibernation ou de la mise en veille devaient potentiellement mettre à jour la base de données manuellement pour pouvoir utiliser //locate//, dans le cas où leur PC ne fonctionnait pas à l'heure exacte prévue de la mise à jour de l'index. Désormais, la mise à jour est automatiquement lancée à la sortie de veille.</note> | ||
Ligne 35: | Ligne 34: | ||
sudo apt-get install mlocate | sudo apt-get install mlocate | ||
- | Un fichier script //mlocate// est placé dans /etc/cron.daily pour être exécuté chaque jour et mettre à jour la base de donnée mlocate, qui se trouve à l'emplacement ///var/lib/mlocate/mlocate.db//. L'installation de mlocate modifie le binaire ///usr/bin/locate// pour pointer sur la version "mlocate". Si mlocate n'était pas pré-installé sur votre système, que vous avez réalisé une installation manuelle et que vous souhaitez utiliser //locate// sans attendre, vous devez exécuter /etc/cron.daily/mlocate manuellement (une seule fois) dans un terminal pour créer la base de données, faute de quoi la commande de recherche ne fonctionnera pas correctement. | + | Un fichier script //mlocate// (//plocate// depuis 2022) est placé dans /etc/cron.daily pour être exécuté chaque jour et mettre à jour la base de donnée mlocate (//var/lib/plocate/plocate.db/// depuis 2022). L'installation de //mlocate// / //plocate// modifie le binaire ///usr/bin/locate// pour pointer sur la version //mlocate// / //plocate//. Si //mlocate// / //plocate// n'était pas pré-installé sur votre système, que vous ayez réalisé une installation manuelle et que vous souhaitiez utiliser //locate// sans attendre, vous devez exécuter /etc/cron.daily/mlocate (etc/cron.daily/plocate depuis 2022) manuellement (une seule fois) dans un terminal pour créer la base de données, faute de quoi la commande de recherche //locate// ne fonctionnera pas correctement. |
===== Fonctionnement ===== | ===== Fonctionnement ===== | ||
==== Utilisation de locate ==== | ==== Utilisation de locate ==== | ||
Ligne 78: | Ligne 77: | ||
- | Sites relatifs | + | Sites relatifs |
[[https://packages.ubuntu.com/fr/anacron|anacron]] | [[https://packages.ubuntu.com/fr/anacron|anacron]] | ||
Ligne 84: | Ligne 83: | ||
Auteur : [[utilisateurs/sylvainsjc]] | Auteur : [[utilisateurs/sylvainsjc]] | ||
- | Contributeurs : | + | Contributeurs : |