Comandos De La Terminal Locate Y Updatedb
Enviado por chamunizu • 12 de Diciembre de 2014 • 405 Palabras (2 Páginas) • 147 Visitas
Comandos de la terminal: locate y updatedb
Dentro de la serie de artículos relacionados con las herramientas básicas de cualquier sistema Linux me gustaría tratar el uso (y disfrute) del comando locate y como complemento al mismo updatedb.
Este último comando es menos conocido y sin embargo nos permitirá que locateencuentre un mayor número de entradas en un tiempo record.
Comando locate
Definición y uso
La finalidad del comando locate es la de encontrar la ubicación física (directorio) en el que se encuentra cualquier fichero del sistema.
Como cualquier otro comando cuenta con infinidad de parámetros que permiten adaptar su modo de actuar a nuestras necesidades pero nosotros nos centraremos en su funcionamiento básico dejando a la curiosidad del lector el estudio de algunas de sus alternativas.
Para encontrar un fichero en nuestro sistema de archivos (por ejemplo la ubicación dek3b) basta lanzar desde la terminal un
locate k3b
Automáticamente nos mostrará todas las entradas del árbol de ficheros que contengan la palabra k3b.
Comparación con otras alternativas
Mas de uno dirá que para esto ya existe el comando find, en concreto lanzando un
find / -name k3b
Obtendremos, al igual que con el comando locate, todas las entradas que contengan la palabra buscada (k3b)
Ventajas de locate
1. No dará errores de permisos al tratar de buscar en directorios del sistema (pertenecientes a root o a otros grupos de usuarios que no nos autorizan el acceso)
2. Tarda muchísimo menos tiempo (con locate encontramos todas las entradas en 0.6 segundos mientras que find tarda casi un minuto)
El comando updatedb
Justificación y uso
El truco de locate se haya en tener indexadas todas las entradas del sistema de ficherosde éste modo consigue la gran diferencia de tiempo frente al comando find que tiene que ir rastreando el contenido completo del sistema de archivos.
El único inconveniente de locate es que puede dar resultados incorrectos (no mostrar nada cuando sabemos a ciencia cierta que tienen que existir entradas para el término buscado)
Para solucionarlo contamos con el comando updatedb; simplemente lanzando un
sudo updatedb
nos aseguramos que encontraremos cualquier valor que le pidamos (siempre que exista)
Rendimiento y toma de decisiones
El comando updatedb toma en mi equipo alrededor de 3 minutos en actualizar su información interna.
Algunos podrán argumentar que por ello no merece la pena usarlo (teniendo en cuenta que find no llega al minuto y siempre encuentra todas las entradas).
A pesar de todo recomiendo el uso de los dos comandos nuevos pues, con poco más de tres búsquedas tendremos amortizado el tiempo invertido por updatedb en actualizarse, ¿no os parece?
...