J'aimerais utiliser mlocate sur mon serveur Ubuntu, mais uniquement pour indexer certains répertoires (par exemple, /home
et /data
, mais pas tout ce qui se trouve sous /
). Cependant, la configuration standard de mlocate fonctionne dans le sens opposé. vous spécifiez les chemins que vous souhaitez supprimer (avec Prune_PATHS
).
Existe-t-il un moyen simple de réaliser cela, ou un utilitaire similaire qui fera ce que je veux? (Remarque: il devrait conserver un index du type mlocate
; par exemple, find
n'est pas acceptable, par exemple). Merci.
Vous pouvez utiliser l'option --Database-root PATH)
updatedb -l 0 -U /home/user/music -o /home/user/databasefile
-o écrit dans le fichier de sortie
-l 0 fait que vous pouvez le lire, sinon il n'est accessible que pour localiser
Ensuite, vous pouvez l'utiliser comme:
locate -d /home/user/databasefile Dylan
-d définit le databasepath
Pour utiliser mlocate avec plusieurs répertoires racine, créez simplement deux fichiers de base de données et utilisez l'option de localisation avec deux types de base de données, comme ceci:
locate -d /home/user/dbfile1 -d /home/user/dbfile2 searchstring
--- (Pour résumer et répondre à la question plus précise:
updatedb -l 0 -U /home -o /home/user/home_dbfile
updatedb -l 0 -U /data -o /home/user/data_dbfile
locate -d /home/user/home_dbfile -d /home/user/data_dbfile Dylan
Editez le fichier /etc/updatedb.conf
Configurez PRUNEPATHS
avec les répertoires que vous NE voulez PAS rechercher
PRUNEPATHS="/tmp /var/spool /media"
PRUNEPATHS
: Une liste de noms de chemins d'accès aux répertoires, séparés par des espaces, ne doit pas être analysée par updatedb. Chaque nom de chemin doit être exactement sous la forme dans laquelle le répertoire serait signalé par loc. Par défaut, aucun chemin n'est ignoré.
Notez que toutes les informations de configuration ci-dessus peuvent également être modifiées ou mises à jour via les options de ligne de commande de l'utilitaire updatedb
.
J'ai trouvé autre chose à essayer:
Pas très sûr de l'indexation.