Copyright
Copyright © José
Luis Lara Carrascal 2013-2022
Sumario
Introducción
Preliminares
Mlocate
XLocate
Traducción al Español de XLocate
Iniciamos XLocate
Paquetes binarios
Enlaces
Introducción
XLocate es una interfaz gráfica para los comandos de búsqueda de archivos por nombre, mlocate, slocate y locate, se puede utilizar cualquiera de los tres con el programa, aunque en este manual trataremos el uso con mlocate. Con XLocate
podremos tener una amplia base de datos de búsqueda del
contenido de todo tipo de dispositivos (CD/DVD/BluRay, ubicaciones de
red, discos duros (fijos y removibles), pendrives, etc). Junto al
manual se incluye también la instalación de Mlocate y la traducción al español de XLocate.
Preliminares
1) Comprobar que la ruta de instalación de los binarios del programa la tenemos en nuestro PATH
Abrimos una ventana de terminal y ejecutamos el siguiente comando:
[jose@Fedora-18 ~]$ echo $PATH
/usr/lib/qt-3.3/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/jose/bin
|
Si no aparece entre las rutas mostradas el directorio /usr/local/bin, abrimos un editor de texto y añadimos lo siguiente:
#!/bin/sh
export PATH=/usr/local/bin:$PATH |
Lo guardamos con el nombre variables.sh, y lo instalamos en /etc/profile.d.
$ su -c "install -m755 variables.sh /etc/profile.d" |
Tenemos que cerrar el emulador de terminal y volverlo a abrir para que
la variable de entorno aplicada sea efectiva. Es conveniente guardar
una copia de este script para posteriores
instalaciones de nuestro sistema, teniendo en cuenta que es el que se
va a utilizar a partir de ahora en todos los manuales de esta web, para
establecer variables de entorno globales, excepto en aquellas que
sólo afectan al usuario, en las que se utilizará el
archivo de configuración personal, ~/.bashrc.
La ventaja de utilizar el directorio /etc/profile.d es que es común a todas las distribuciones y nos evita tener que editar otros archivos del sistema como por ejemplo, /etc/profile.
2) Comprobar que la variable de entorno 'XDG_DATA_DIRS' incluye el directorio /usr/local/share
Esta variable se aplica para que los archivos desktop
ubicados en un directorio específico del sistema puedan ser
leídos por los menús de entornos gráficos
como XFce 4, o
paneles como LXPanel o Fbpanel.
Este aspecto es bastante delicado porque cada distribución es un
mundo y lo mejor que podemos hacer es establecer una variable de
entorno global que incluya todos los directorios predefinidos del
sistema que incluyen archivos desktop, siempre y cuando el directorio /usr/local/share
no esté incluido por defecto en la distribución de turno.
Para saberlo basta abrir el menú de aplicaciones en cualquiera
de los programas antes comentados y comprobar que aparece la entrada
correspondiente a la aplicación tratada en este manual. Si no es
así, en el mismo archivo /etc/profile.d/variables.sh, añadimos lo que está en rojo:
#!/bin/sh
export PATH=/usr/local/bin:$PATH
export XDG_DATA_DIRS=/usr/share:/usr/local/share:$XDG_DATA_DIRS |
3) Desinstalar versiones anteriores del programa ubicadas en el directorio /usr
Aún en el caso de que la versión a compilar la vayamos a
instalar en el mismo directorio que la que proporciona la
distribución, siempre se debe desinstalar previamente la versión antigua, para evitar conflictos innecesarios.
Mlocate
Instalación
Dependencias
Herramientas de Compilación
Entre paréntesis la
versión con la que se ha compilado Mlocate para la
elaboración de este documento.
* GCC - (12.1.0) o Clang - (14.0.6)
* Gawk - (5.1.1)
* M4 - (1.4.19)
* Make - (4.3)
* Automake - (1.16.5)
* Autoconf - (2.71)
Descarga
mlocate-0.26.tar.xz
Optimizaciones
$ export
{C,CXX}FLAGS='-O3 -march=znver2 -mtune=znver2'
|
Donde pone znver2
se indica el procesador respectivo de cada sistema
seleccionándolo de la siguiente tabla: |
Nota informativa sobre las optimizaciones para GCC
|
* La opción '-march=' establece el procesador mínimo con el que funcionará el programa compilado, la opción '-mtune=' el procesador específico para el que será optimizado.
* Los valores separados por comas, son equivalentes, es decir, que lo mismo da poner '-march=k8' que '-march=athlon64'.
* En versiones de GCC 3.2 e inferiores se utiliza la opción '-mcpu=' en lugar de '-mtune='.
|
Nota informativa sobre las optimizaciones para Clang
|
* La opción '-mtune=' está soportada a partir de la versión 3.4 de Clang.
* Los valores de color azul no son compatibles con Clang.
* Las filas con el fondo de color amarillo son valores exclusivos de Clang y, por lo tanto, no son aplicables con GCC.
|
Valores |
CPU |
Genéricos |
generic |
Produce un código
binario optimizado para la mayor parte de procesadores existentes.
Utilizar este valor si no sabemos el nombre del procesador que
tenemos en nuestro equipo. Este valor sólo es aplicable en
la opción '-mtune=', si utilizamos GCC. Esta opción está disponible a
partir de GCC 4.2. |
native |
Produce un código
binario optimizado para el procesador que tengamos en nuestro sistema,
siendo éste detectado utilizando la instrucción cpuid.
Procesadores antiguos pueden no ser detectados utilizando este valor.
Esta opción está disponible a
partir de GCC 4.2. |
x86-64 |
Procesador genérico con extensiones 64-bit. Esta opción está disponible a
partir de GCC 8 y Clang 1.9. |
x86-64-v2 |
Procesador
genérico con con soporte de instrucciones X86-64 (MMX, SSE,
SSE2, LAHFSAHF, POPCNT, SSE3, SSE4.1, SSE4.2, SSSE3) y extensiones
64-bit. Esta opción está disponible a partir de GCC 11 y Clang 12. |
x86-64-v3 |
Procesador
genérico con con soporte de instrucciones X86-64 (MMX, SSE,
SSE2, LAHFSAHF, POPCNT, SSE3, SSE4.1, SSE4.2, SSSE3, AVX, AVX2, F16C,
FMA, LZCNT, MOVBE, XSAVE, XSAVEC, FMA4) y extensiones 64-bit. Esta
opción está disponible a partir de GCC 11 y Clang 12. |
x86-64-v4 |
Procesador
genérico con con soporte de instrucciones X86-64 (MMX, SSE,
SSE2, LAHFSAHF, POPCNT, SSE3, SSE4.1, SSE4.2, SSSE3, AVX, AVX2, F16C,
FMA, LZCNT, MOVBE, XSAVE, XSAVEC, AVX512*, FMA4) y extensiones 64-bit.
Esta opción está disponible a partir de GCC 11 y Clang 12. |
Intel |
alderlake |
Intel Alderlake con
soporte de instrucciones x86-64 (MOVBE, MMX, SSE, SSE2, SSE3, SSSE3,
SSE4.1, SSE4.2, POPCNT, PKU, AVX, AVX2, AES, PCLMUL, FSGSBASE, RDRND,
FMA, BMI, BMI2, F16C, RDSEED, ADCX, PREFETCHW, CLFLUSHOPT, XSAVEC,
XSAVES, AVX512F, CLWB, AVX512VL, AVX512BW, AVX512DQ, AVX512CD,
AVX512VNNI, AVX512BF16, MOVDIRI, MOVDIR64B, AVX512VP2INTERSECT, ENQCMD,
CLDEMOTE, PTWRITE, WAITPKG, SERIALIZE, TSXLDTRK, UINTR, AMX-BF16,
AMX-TILE, AMX-INT8, AVX-VNNI) y extensiones 64-bit. Esta opción
está disponible a partir de GCC 11 y Clang 12. |
atom |
Intel Atom
con soporte de instrucciones MMX, SSE, SSE2, SSE3, SSSE3 y
extensiones 64-bit. Esta opción está disponible
desde GCC 4.6, hasta GCC 4.8. A partir de GCC 4.9 se utiliza la definición bonnell. |
bonnell |
Intel Bonnell con soporte de instrucciones
MOVBE, MMX, SSE, SSE2, SSE3, SSSE3 y extensiones 64-bit. Esta opción está disponible a partir
de GCC 4.9. |
broadwell |
Intel Broadwell con soporte de instrucciones
MOVBE, MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, POPCNT,
AVX, AVX2, AES, PCLMUL, FSGSBASE, RDRND, FMA, BMI, BMI2,
F16C, RDSEED, ADCX, PREFETCHW y extensiones 64-bit. Esta opción está disponible a partir
de GCC 4.9 y Clang 3.6. |
cannonlake |
Intel Cannonlake Server con soporte de instrucciones MOVBE, MMX, SSE,
SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, POPCNT, PKU, AVX, AVX2, AES, PCLMUL,
FSGSBASE, RDRND, FMA, BMI, BMI2, F16C, RDSEED, ADCX, PREFETCHW,
CLFLUSHOPT, XSAVEC, XSAVES, AVX512F, AVX512VL, AVX512BW, AVX512DQ,
AVX512CD, AVX512VBMI, AVX512IFMA, SHA, UMIP y extensiones 64-bit. Esta opción está disponible a
partir de GCC 8 y Clang 3.9. |
cascadelake |
Intel Cascadelake con
soporte de instrucciones MOVBE, MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1,
SSE4.2, POPCNT, PKU, AVX, AVX2, AES, PCLMUL, FSGSBASE, RDRND, FMA, BMI,
BMI2, F16C, RDSEED, ADCX, PREFETCHW, CLFLUSHOPT, XSAVEC, XSAVES,
AVX512F, CLWB, AVX512VL, AVX512BW, AVX512DQ, AVX512CD, AVX512VNNI y
extensiones 64-bit. Esta opción está disponible a
partir de GCC 9 y Clang 8. |
cooperlake |
Intel
Cooper Lake con
soporte de instrucciones MOVBE, MMX, SSE, SSE2, SSE3, SSSE3,
SSE4.1, SSE4.2, POPCNT, PKU, AVX, AVX2, AES, PCLMUL, FSGSBASE, RDRND, FMA, BMI,
BMI2, F16C, RDSEED, ADCX, PREFETCHW, CLFLUSHOPT, XSAVEC, XSAVES, AVX512F, CLWB,
AVX512VL, AVX512BW, AVX512DQ, AVX512CD, AVX512VNNI, AVX512BF16 y
extensiones 64-bit. Esta opción está disponible a
partir de GCC 10 y Clang 9. |
core2 |
Intel Core2
con soporte de instrucciones MMX, SSE, SSE2, SSE3, SSSE3 y
extensiones 64-bit. Esta opción está disponible a partir
de GCC 4.3. |
core-avx2 |
Intel Core (Haswell). Esta opción está disponible desde GCC 4.6, hasta GCC 4.8. A partir de GCC 4.9 se utiliza la definición haswell. |
core-avx-i |
Intel Core (ivyBridge)
con soporte de instrucciones MMX, SSE, SSE2, SSE3,
SSSE3, SSE4.1, SSE4.2, AVX, AES, PCLMUL, FSGSBASE, RDRND, F16C y
extensiones 64-bit. Esta opción está disponible
desde GCC 4.6, hasta GCC 4.8. A partir de GCC 4.9 se utiliza la definición ivybridge. |
corei7 |
Intel Core i7 con soporte de instrucciones MMX, SSE, SSE2, SSE3,
SSSE3, SSE4.1 y SSE4.2 y extensiones 64-bit. Soporta también los procesadores Intel
Core i3 e i5. Esta opción está disponible desde GCC 4.6, hasta GCC 4.8. A partir de GCC 4.9 se utiliza la definición nehalem. |
corei7-avx |
Intel Core i7 con soporte de instrucciones MMX, SSE, SSE2, SSE3,
SSSE3, SSE4.1, SSE4.2, AVX, AES y PCLMUL y
extensiones 64-bit. Soporta también los
procesadores Intel Core i3 e i5. Esta opción está disponible desde GCC 4.6, hasta GCC 4.8. A partir de GCC 4.9 se utiliza la definición sandybridge. |
goldmont |
Intel Goldmont con soporte
de instrucciones MOVBE, MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2,
POPCNT, AES, PCLMUL, RDRND, XSAVE, XSAVEOPT, FSGSBASE y extensiones
64-bit. Esta opción está disponible a
partir de GCC 9 y Clang 5. |
goldmont-plus |
Intel Goldmont Plus con
soporte de instrucciones MOVBE, MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1,
SSE4.2, POPCNT, AES, PCLMUL, RDRND, XSAVE, XSAVEOPT, FSGSBASE, PTWRITE,
RDPID, SGX, UMIP y extensiones 64-bit. Esta opción está disponible a
partir de GCC 9 y Clang 7. |
haswell |
Intel Haswell con soporte de instrucciones
MOVBE, MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, POPCNT,
AVX, AVX2, AES, PCLMUL, FSGSBASE, RDRND, FMA, BMI, BMI2,
F16C y extensiones 64-bit. Esta opción está disponible a partir
de GCC 4.9. |
i386 |
Intel i386.
|
i486 |
Intel i486. |
i586, pentium |
Intel Pentium sin soporte de instrucciones MMX. |
i686 |
Produce un código binario optimizado para la mayor parte de
procesadores compatibles con la serie 80686 de Intel. Todos los actuales lo son. |
icelake-client |
Intel Icelake Client con soporte de instrucciones MOVBE, MMX, SSE,
SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, POPCNT, PKU, AVX, AVX2, AES, PCLMUL,
FSGSBASE, RDRND, FMA, BMI, BMI2, F16C, RDSEED, ADCX, PREFETCHW,
CLFLUSHOPT, XSAVEC, XSAVES, AVX512F, AVX512VL, AVX512BW, AVX512DQ,
AVX512CD, AVX512VBMI, AVX512IFMA, SHA, CLWB, UMIP, RDPID, GFNI,
AVX512VBMI2, AVX512VPOPCNTDQ, AVX512BITALG, AVX512VNNI, VPCLMULQDQ,
VAES y extensiones 64-bit. Esta opción está disponible a
partir de GCC 8 y Clang 7. |
icelake-server |
Intel Icelake Server con soporte de instrucciones MOVBE, MMX, SSE,
SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, POPCNT, PKU, AVX, AVX2, AES, PCLMUL,
FSGSBASE, RDRND, FMA, BMI, BMI2, F16C, RDSEED, ADCX, PREFETCHW,
CLFLUSHOPT, XSAVEC, XSAVES, AVX512F, AVX512VL, AVX512BW, AVX512DQ,
AVX512CD, AVX512VBMI, AVX512IFMA, SHA, CLWB, UMIP, RDPID, GFNI,
AVX512VBMI2, AVX512VPOPCNTDQ, AVX512BITALG, AVX512VNNI, VPCLMULQDQ,
VAES, PCONFIG, WBNOINVD y extensiones 64-bit. Esta opción está disponible a
partir de GCC 8 y Clang 7. |
intel |
Intel Haswell y Silvermont. Este valor sólo es aplicable en
la opción '-mtune='. Esta opción está disponible a partir
de GCC 4.9. |
ivybridge |
Intel Ivy Bridge con soporte de instrucciones
MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, POPCNT, AVX,
AES, PCLMUL, FSGSBASE, RDRND, F16C y extensiones 64-bit. Esta opción está disponible a partir
de GCC 4.9. |
knl |
Intel Knights Landing con soporte de instrucciones
MOVBE, MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, POPCNT, AVX, AVX2,
AES, PCLMUL, FSGSBASE, RDRND, FMA, BMI, BMI2, F16C, RDSEED, ADCX,
PREFETCHW, AVX512F, AVX512PF, AVX512ER y extensiones 64-bit. Esta opción está disponible a partir
de GCC 5 y Clang 3.4. |
knm |
Intel Knights Mill con soporte de instrucciones MOVBE, MMX, SSE, SSE2,
SSE3, SSSE3, SSE4.1, SSE4.2, POPCNT, AVX, AVX2, AES, PCLMUL, FSGSBASE,
RDRND, FMA, BMI, BMI2, F16C, RDSEED, ADCX, PREFETCHW, AVX512F,
AVX512PF, AVX512ER, AVX512CD, AVX5124VNNIW, AVX5124FMAPS,
AVX512VPOPCNTDQ y extensiones 64-bit. Esta opción está disponible a
partir de GCC 8 y Clang 6. |
lakemont |
Intel Quark Lakemont MCU, basado en el procesador Intel Pentium. Esta opción está disponible a partir
de GCC 6 y Clang 3.9. |
nehalem |
Intel Nehalem con soporte de instrucciones MMX,
SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, POPCNT y extensiones
64-bit. Esta opción está disponible a partir
de GCC 4.9. |
nocona |
Versión mejorada de Intel Pentium4 con soporte de instrucciones MMX, SSE, SSE2, SSE3 y extensiones 64-bit. |
penryn |
Intel
Penryn con soporte de instrucciones MMX, SSE, SSE2, SSE3,
SSSE3 y SSE4.1. |
pentiumpro |
Intel PentiumPro. |
pentium2 |
Intel Pentium2 basado en PentiumPro con soporte de instrucciones MMX. |
pentium3, pentium3m |
Intel Pentium3 basado en PentiumPro con soporte de instrucciones MMX y SSE. |
pentium4, pentium4m |
Intel Pentium4 con soporte de instrucciones MMX, SSE y SSE2. |
pentium-m |
Versión de bajo
consumo de Intel Pentium3 con soporte de instrucciones MMX, SSE y SSE2.
Utilizado por los portátiles Centrino. |
pentium-mmx |
Intel PentiumMMX basado en Pentium con soporte de instrucciones MMX. |
prescott |
Versión mejorada de Intel Pentium4 con soporte de instrucciones MMX, SSE, SSE2 y SSE3. |
rocketlake |
Intel Rocket Lake con soporte de instrucciones x86-64 (MOVBE, MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, POPCNT, PKU, AVX, AVX2, AES, PCLMUL, FSGSBASE, RDRND, FMA, BMI, BMI2, F16C, RDSEED, ADCX, PREFETCHW, CLFLUSHOPT, XSAVEC, XSAVES, AVX512F, AVX512VL, AVX512BW, AVX512DQ, AVX512CD, AVX512VBMI, AVX512IFMA, SHA, CLWB, UMIP, RDPID, GFNI, AVX512VBMI2, AVX512VPOPCNTDQ, AVX512BITALG, AVX512VNNI, VPCLMULQDQ, VAES) y extensiones 64-bit. Esta opción está disponible a partir de GCC 11 y Clang 13. |
sandybridge |
Intel Sandy Bridge con soporte de instrucciones
MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, POPCNT, AVX,
AES, PCLMUL y extensiones 64-bit. Esta opción está disponible a partir
de GCC 4.9 y Clang 3.6. |
sapphirerapids |
Intel Sapphire Rapids
con soporte de instrucciones x86-64 (MOVBE, MMX, SSE, SSE2, SSE3,
SSSE3, SSE4.1, SSE4.2, POPCNT, PKU, AVX, AVX2, AES, PCLMUL, FSGSBASE,
RDRND, FMA, BMI, BMI2, F16C, RDSEED, ADCX, PREFETCHW, CLFLUSHOPT,
XSAVEC, XSAVES, AVX512F, CLWB, AVX512VL, AVX512BW, AVX512DQ, AVX512CD,
AVX512VNNI, AVX512BF16, MOVDIRI, MOVDIR64B, AVX512VP2INTERSECT, ENQCMD,
CLDEMOTE, PTWRITE, WAITPKG, SERIALIZE, TSXLDTRK, UINTR, AMX-BF16,
AMX-TILE, AMX-INT8 and AVX-VNNI) y extensiones 64-bit. Esta
opción está disponible a partir de GCC 11 y Clang 12. |
silvermont |
Intel Silvermont con soporte de instrucciones
MOVBE, MMX, SSE, MOVBE, MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1,
SSE4.2, POPCNT, AES, PCLMU, RDRND y extensiones 64-bit. Esta opción está disponible a partir
de GCC 4.9 y Clang 3.6. |
skylake |
Intel Skylake con soporte de instrucciones MOVBE, MMX, SSE, SSE2,
SSE3, SSSE3, SSE4.1, SSE4.2, POPCNT, AVX, AVX2, AES, PCLMUL, FSGSBASE,
RDRND, FMA, BMI, BMI2, F16C, RDSEED, ADCX, PREFETCHW, CLFLUSHOPT,
XSAVEC, XSAVES y extensiones 64-bit. Esta opción está disponible a partir
de GCC 6 y Clang 3.6. |
skylake-avx512 |
Intel Skylake Server
con soporte de instrucciones MOVBE, MMX, SSE, SSE2,
SSE3, SSSE3, SSE4.1, SSE4.2, POPCNT, AVX, AVX2, AES, PCLMUL, FSGSBASE,
RDRND, FMA, BMI, BMI2, F16C, RDSEED, ADCX, PREFETCHW, CLFLUSHOPT,
XSAVEC, XSAVES, AVX512F, AVX512VL, AVX512BW, AVX512DQ, AVX512CD y
extensiones 64-bit. Esta opción está disponible a partir
de GCC 6 y Clang 3.9. |
tigerlake |
Intel
Tiger Lake con soporte de instrucciones OVBE, MMX, SSE, SSE2, SSE3,
SSSE3,
SSE4.1, SSE4.2, POPCNT, PKU, AVX, AVX2, AES, PCLMUL, FSGSBASE, RDRND,
FMA, BMI,
BMI2, F16C, RDSEED, ADCX, PREFETCHW, CLFLUSHOPT, XSAVEC, XSAVES,
AVX512F,
AVX512VL, AVX512BW, AVX512DQ, AVX512CD, AVX512VBMI, AVX512IFMA, SHA,
CLWB, UMIP,
RDPID, GFNI, AVX512VBMI2, AVX512VPOPCNTDQ, AVX512BITALG, AVX512VNNI,
VPCLMULQDQ,
VAES, PCONFIG, WBNOINVD, MOVDIRI, MOVDIR64B, AVX512VP2INTERSECT y
extensiones 64-bit. Esta opción está disponible a partir
de GCC 10 y Clang 10. |
tremont |
Intel Tremont con soporte
de instrucciones MOVBE, MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2,
POPCNT, AES, PCLMUL, RDRND, XSAVE, XSAVEOPT, FSGSBASE, PTWRITE, RDPID,
SGX, UMIP, GFNI-SSE, CLWB, ENCLV y extensiones 64-bit. Esta opción está disponible a
partir de GCC 9 y Clang 7. |
westmere |
Intel Westmere con soporte de instrucciones
MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, POPCNT, AES,
PCLMUL y extensiones 64-bit. Esta opción está disponible a partir
de GCC 4.9. |
yonah |
Procesadores
basados en la microarquitectura de Pentium M, con soporte de
instrucciones MMX, SSE, SSE2 y SSE3. |
AMD |
amdfam10, barcelona |
Procesadores basados en
AMD Family 10h core con soporte de instrucciones x86-64 (MMX, SSE,
SSE2, SSE3, SSE4A, 3DNow!, enhanced 3DNow!, ABM y extensiones
64-bit). Esta opción está disponible a partir de GCC 4.3. La definición barcelona está disponible a partir de Clang 3.6. |
athlon, athlon-tbird |
AMD Athlon con soporte de instrucciones MMX, 3DNow!, enhanced 3DNow! y SSE prefetch. |
athlon4, athlon-xp, athlon-mp |
Versiones mejoradas de AMD Athlon con soporte de instrucciones MMX, 3DNow!, enhanced 3DNow! y full SSE. |
bdver1 |
Procesadores basados en
AMD Family 15h core con soporte de instrucciones x86-64 (FMA4, AVX, XOP, LWP, AES, PCL_MUL, CX16, MMX, SSE,
SSE2, SSE3, SSE4A, SSSE3, SSE4.1, SSE4.2, ABM y extensiones
64-bit). Esta opción está disponible a partir
de GCC 4.7. |
bdver2 |
Procesadores basados en
AMD Family 15h core con soporte de instrucciones x86-64 (BMI, TBM, F16C, FMA, LWP, AVX, XOP, LWP, AES, PCL_MUL, CX16, MMX, SSE,
SSE2, SSE3, SSE4A, SSSE3, SSE4.1, SSE4.2, ABM y extensiones
64-bit). Esta opción está disponible a partir
de GCC 4.7. |
bdver3 |
Procesadores basados en
AMD Family 15h core con soporte de instrucciones x86-64 (FMA4, AVX, XOP, LWP, AES, PCL_MUL, CX16, MMX, SSE,
SSE2, SSE3, SSE4A, SSSE3, SSE4.1, SSE4.2, ABM y extensiones
64-bit). Esta opción está disponible a partir
de GCC 4.8 y Clang 3.4. |
bdver4 |
Procesadores basados en AMD Family 15h core con soporte de instrucciones x86-64
(BMI, BMI2, TBM, F16C, FMA, FMA4, FSGSBASE, AVX, AVX2, XOP,
LWP, AES, PCL_MUL, CX16, MOVBE, MMX, SSE, SSE2, SSE3, SSE4A,
SSSE3, SSE4.1, SSE4.2, ABM y extensiones 64-bit). Esta opción está
disponible a partir de GCC 4.9 y Clang 3.5. |
btver1 |
Procesadores basados en
AMD Family 14h core con soporte de instrucciones x86-64 (MMX, SSE,
SSE2, SSE3, SSE4A, CX16, ABM y extensiones 64-bit). Esta opción está disponible a partir
de GCC 4.6. |
btver2 |
Procesadores basados en
AMD Family 16h core con soporte de instrucciones x86-64 (MOVBE, F16C,
BMI, AVX, PCL_MUL, AES, SSE4.2, SSE4.1, CX16, ABM, SSE4A, SSSE3, SSE3,
SSE2, SSE, MMX y extensiones 64-bit). Esta opción
está disponible a partir
de GCC 4.8. |
geode |
AMD integrado con soporte de instrucciones MMX y 3DNow!. Esta opción está disponible a partir de GCC 4.3. |
k6 |
AMD K6 con soporte de instrucciones MMX. |
k6-2, k6-3 |
Versiones mejoradas de AMD K6 con soporte de instrucciones MMX y 3DNow!. |
k8, opteron, athlon64, athlon-fx |
Procesadores basados en
AMD K8 core con soporte de instrucciones x86-64 (MMX, SSE, SSE2,
3DNow!, enhanced 3DNow! y extensiones 64-bit). |
k8-sse3, opteron-sse3, athlon64-sse3 |
Versiones mejoradas de
AMD K8 core con soporte de instrucciones SSE3. Esta opción
está disponible a partir de GCC 4.3. |
znver1 |
Procesadores basados en
AMD Family 17h core con soporte de instrucciones x86-64 (BMI, BMI2,
F16C, FMA, FSGSBASE, AVX, AVX2, ADCX, RDSEED, MWAITX, SHA, CLZERO, AES,
PCL_MUL, CX16, MOVBE, MMX, SSE, SSE2, SSE3, SSE4A, SSSE3, SSE4.1,
SSE4.2, ABM, XSAVEC, XSAVES, CLFLUSHOPT, POPCNT y extensiones
64-bit). Esta opción está disponible a partir de GCC 6 y Clang 4. |
znver2 |
Procesadores basados en
AMD Family 17h core con soporte de instrucciones x86-64 (BMI, BMI2,
,CLWB, F16C, FMA, FSGSBASE, AVX, AVX2, ADCX, RDSEED, MWAITX, SHA,
CLZERO, AES, PCL_MUL, CX16, MOVBE, MMX, SSE, SSE2, SSE3, SSE4A, SSSE3,
SSE4.1, SSE4.2, ABM, XSAVEC, XSAVES, CLFLUSHOPT, POPCNT y extensiones
64-bit). Esta opción está disponible a partir de GCC 9 y Clang 9. |
znver3 |
Procesadores basados en
AMD Family 19h core con soporte de instrucciones x86-64 (BMI, BMI2,
CLWB, F16C, FMA, FSGSBASE, AVX, AVX2, ADCX, RDSEED, MWAITX, SHA,
CLZERO, AES, PCLMUL, CX16, MOVBE, MMX, SSE, SSE2, SSE3, SSE4A, SSSE3,
SSE4.1, SSE4.2, ABM, XSAVEC, XSAVES, CLFLUSHOPT, POPCNT, RDPID,
WBNOINVD, PKU, VPCLMULQDQ, VAES) y extensiones 64-bit. Esta
opción está disponible a partir de GCC 11 y Clang 12. |
Optimizaciones adicionales
Optimizaciones adicionales |
GCC |
Graphite
|
$ export {C,CXX}FLAGS+=' -ftree-loop-linear -floop-strip-mine -floop-block'
|
IPA
|
$ export {C,CXX}FLAGS+=' -fipa-pta'
|
LTO |
$ export AR=gcc-ar RANLIB=gcc-ranlib NM=gcc-nm
$ export {C,CXX}FLAGS+=' -fuse-linker-plugin -flto=auto'
|
En versiones inferiores a GCC
10, sustituir auto
por el número de núcleos que tenga nuestro
procesador. Si sólo tiene uno, utilizar el parámetro -flto
|
Clang |
New Pass Manager |
$ export {C,CXX}FLAGS+=' -fexperimental-new-pass-manager' |
Polly |
$ export {C,CXX}FLAGS+=' -O3 -mllvm -polly -mllvm -polly-vectorizer=stripmine' |
LTO |
$ export AR=llvm-ar RANLIB=llvm-ranlib NM=llvm-nm
$ export {C,CXX}FLAGS+=' -flto' |
ThinLTO |
$ export AR=llvm-ar RANLIB=llvm-ranlib NM=llvm-nm
$ export {C,CXX}FLAGS+=' -flto=thin' |
La aplicación de esta optimización es alternativa
a la tradicional LTO, a partir de Clang 3.9 y, por lo tanto, no es combinable con la misma. |
Parámetros adicionales
Parámetros adicionales de eliminación de avisos en el proceso de compilación |
$ export {C,CXX}FLAGS+=' -w' |
Establecer la ruta de búsqueda de directorios de librerías en sistemas de 64 bits multiarquitectura |
$ export
LDFLAGS+=" -L/usr/lib64 -L/usr/local/lib64 -L/opt/gcc12/lib64" |
Cada usuario tendrá que establecer la ruta de búsqueda de directorios, en función de la distribución que utilice. |
Establecer el uso de enlazador dinámico para LLD |
Clang |
$ export LDFLAGS+=' -fuse-ld=lld' |
Optimizaciones complementarias LTO/ThinLTO de LLD |
$ export LDFLAGS+=' -Wl,--lto-aa-pipeline=globals-aa -Wl,--lto-newpm-passes=memcpyopt' |
Optimizaciones complementarias LTO de LLD |
$ export LDFLAGS+=" -Wl,--lto-partitions=$(nproc)" |
Optimizaciones complementarias ThinLTO de LLD |
$ export LDFLAGS+=" -Wl,--thinlto-jobs=$(nproc)" |
Establecer la variable de entorno de uso de compilador para Clang |
$ export CC=clang CXX=clang++
|
Extracción y Configuración
$ tar Jxvf mlocate-0.26.tar.xz
$ cd mlocate-0.26
$ sed -i '140s:AR:&?:' Makefile.in; sed -i '128s:AR:&?:' gnulib/lib/Makefile.in
$ ./configure --sysconfdir=/etc --localstatedir=/var/lib
|
Explicación
de los comandos
sed -i '140s:AR:&?:' Makefile.in; sed -i '128s:AR:&?:' gnulib/lib/Makefile.in : Modifica los archivos base de configuración Makefile.in, para poder hacer uso de la variable de entorno AR establecida en el manual, para que la optimización LTO
pueda aplicarse de forma correcta en el proceso de compilación
del paquete. Si no tenemos pensado aplicar este tipo de
optimización, omitiremos esta acción a realizar.
--sysconfdir=/etc : Utiliza el directorio /etc, en lugar de /usr/local/etc, para la ubicación del archivo de configuración, updatedb.conf.
--localstatedir=/var/lib : Utiliza el directorio /var/lib/mlocate, en lugar de /usr/local/var/mlocate, para la ubicación de la base de datos de búsqueda de archivos de Mlocate.
Compilación
Parámetros de compilación opcionales
-j$(nproc) :
Establece el número de procesos de compilación en
paralelo, en función del número de
núcleos e hilos que tenga nuestro procesador, tomando como
referencia la información mostrada por el sistema con el comando
correspondiente. Si nuestro procesador es mononúcleo de un solo
hilo, no añadir esta opción.
Instalación
como root
$ su
# groupadd -rf mlocate
# groupmems -g mlocate -a jose
# make install-strip
# ln -s mlocate /usr/local/bin/locate
|
Donde pone jose, poner el nombre de usuario de cada uno.
Crear e instalar el archivo de
configuración updatedb.conf (opcional)
Abrimos un editor de texto y añadimos lo siguiente (tomado
de la versión de Mlocate
de la distribución Mandriva)
## Mandriva
Linux configuration.
#
# Originally written by Chmouel Boudjnah
<chmouel@mandrakesoft.com>
#
# Modified 20010109 by Francis Galiegue
<fg@mandrakesoft.com>
#
# Fixes by mlord@pobox.com, 20010328
# Which directories to exclude. /home and /root are excluded for
privacy, but
# YMMV
PRUNEPATHS="/proc /tmp /var/tmp /usr/tmp /net /afs /mnt /media /sfs
/var/spool/cups /var/spool/squid"
# Which filesystems do we exclude from search?
PRUNEFS="cifs nfs smbfs ncpfs proc devpts supermount vfat iso9660 udf
usbdevfs devfs auto afs sfs sysfs debugfs tmpfs" |
Lo guardamos con el nombre updatedb.conf
y lo instalamos en /etc.
Este archivo podremos editarlo para delimitar el contenido a examinar,
si queremos utilizar Mlocate
de forma
independiente y no integrado con XLocate.
Su edición es muy sencilla, en PRUNEPATHS colocamos
los directorios que serán excluidos a la hora de crear la
base de datos de búsqueda y en PRUNEFS, los
sistemas de archivos a excluir.
$
su -c "install -m644 updatedb.conf /etc"
|
Borrar las locales adicionales instaladas con la utilidad BleachBit
$ su -c "bleachbit -c system.localizations"
|
Estadísticas de Compilación e Instalación de Mlocate
Estadísticas de Compilación e Instalación de Mlocate |
CPU |
AMD Ryzen 3 3100 4-Core Processor |
MHz |
3593.246 (BoostMax=+500) |
RAM |
32 GB |
Sistema de archivos |
XFS |
Versión del Kernel |
5.19.0-ml SMP PREEMPT_DYNAMIC x86_64 |
Modo de frecuencia de la CPU |
performance |
Versión de Glibc |
2.36 |
Enlazador dinámico |
LLD 14.0.6 |
Compilador |
Clang 14.0.6 |
Parámetros de optimización |
-03 -march=znver2
-mtune=znver2 -fexperimental-new-pass-manager -mllvm -polly -mllvm
-polly-vectorizer=stripmine -flto=thin -Wl,--lto-aa-pipeline=globals-aa -Wl,--lto-newpm-passes=memcpyopt |
Parámetros de compilación |
-j8 |
Tiempo de compilación |
> 1" |
Archivos instalados |
8 |
|
Enlaces simbólicos creados |
1 |
/usr/local/bin/mlocate |
Ocupación de espacio en disco |
112 KB |
Desinstalación
como root
1)
MODO TRADICIONAL
En el directorio de compilación ejecutamos el siguiente comando:
2)
MODO MANUALINUX
El principal inconveniente del comando anterior es
que
tenemos que tener el directorio de compilación en nuestro
sistema para poder desinstalar el programa. En algunos casos esto
supone muchos megas de espacio en disco. Con el paquete de scripts que
pongo a continuación logramos evitar
el único inconveniente que tiene la compilación
de
programas, y es el tema de la desinstalación de los mismos
sin
la necesidad de tener obligatoriamente una copia de las fuentes
compiladas.
mlocate-0.26-scripts.tar.gz
$ su
# tar zxvf mlocate-0.26-scripts.tar.gz
# cd mlocate-0.26-scripts
# ./Desinstalar_mlocate-0.26 |
Copia de Seguridad
como root
Con este otro script creamos una copia de seguridad de los binarios
compilados, recreando la estructura de directorios de los mismos en un
directorio de copias de seguridad (copibin)
que se crea en el directorio /var. Cuando se haya creado el paquete comprimido de
los binarios podemos copiarlo como usuario a nuestro home
y borrar el que ha creado el script de respaldo, teniendo en cuenta que si queremos
volver a restaurar la copia, tendremos que volver a copiarlo al lugar
donde se ha creado.
$ su
# tar zxvf mlocate-0.26-scripts.tar.gz
# cd mlocate-0.26-scripts
# ./Respaldar_mlocate-0.26 |
Restaurar la Copia de Seguridad
como root
Y con este otro script (que se copia de forma automática cuando
creamos la copia de respaldo del programa) restauramos la copia de
seguridad como root cuando resulte necesario.
$ su
# cd /var/copibin/restaurar_copias
# ./Restaurar_mlocate-0.26
|
XLocate
Instalación
Dependencias
Herramientas de Compilación
Entre paréntesis la
versión con la que se ha compilado XLocate
para la elaboración de este documento.
* GCC - (12.1.0) o Clang - (14.0.6)
* Make - (4.3)
Librerías de Desarrollo
*
Xorg - (7.7 / xorg-server 21.1.4)
* Qt4 - (4.8.7)
Aplicaciones
* Mlocate, GNU locate o Slocate (Mlocate 0.26)
* Blkid (E2fsprogs) - (1.46.5)
* Hal - (0.5.14)
* Convert (ImageMagick) - (7.1.0-45) [1]
[1] Requerido para poder crear un icono en formato PNG del archivo desktop, que no proporciona el paquete.
Descarga
xlocate-0.72.tar.gz
Optimizaciones
Optimizaciones adicionales
Optimizaciones adicionales |
GCC |
Graphite
|
$ export {C,CXX}FLAGS+=' -ftree-loop-linear -floop-strip-mine -floop-block'
|
IPA
|
$ export {C,CXX}FLAGS+=' -fipa-pta'
|
LTO |
$ export {C,CXX,L}FLAGS+=' -fuse-linker-plugin -flto=auto'
|
En versiones inferiores a GCC
10, sustituir auto
por el número de núcleos que tenga nuestro
procesador. Si sólo tiene uno, utilizar el parámetro -flto
|
Clang |
New Pass Manager |
$ export {C,CXX}FLAGS+=' -fexperimental-new-pass-manager' |
Polly |
$ export {C,CXX}FLAGS+=' -O3 -mllvm -polly -mllvm -polly-vectorizer=stripmine' |
LTO |
$ export {C,CXX}FLAGS+=' -flto' |
ThinLTO |
$ export {C,CXX}FLAGS+=' -flto=thin' |
La aplicación de esta optimización es alternativa
a la tradicional LTO, a partir de Clang 3.9 y, por lo tanto, no es combinable con la misma. |
Parámetros adicionales
Establecer la ruta de búsqueda de directorios de librerías en sistemas de 64 bits multiarquitectura |
$ export
LDFLAGS+=" -L/usr/lib64 -L/usr/local/lib64 -L/opt/gcc12/lib64" |
Cada usuario tendrá que establecer la ruta de búsqueda de directorios, en función de la distribución que utilice. |
Establecer el uso de enlazador dinámico para LLD |
Clang |
$ export LDFLAGS+=' -fuse-ld=lld' |
Optimizaciones complementarias LTO/ThinLTO de LLD |
$ export LDFLAGS+=' -Wl,--lto-aa-pipeline=globals-aa -Wl,--lto-newpm-passes=memcpyopt' |
Optimizaciones complementarias LTO de LLD |
$ export LDFLAGS+=" -Wl,--lto-partitions=$(nproc)" |
Optimizaciones complementarias ThinLTO de LLD |
$ export LDFLAGS+=" -Wl,--thinlto-jobs=$(nproc)" |
Establecer la variable de entorno de uso de compilador para Clang |
$ export CC=clang CXX=clang++
|
Extracción y Configuración
$ tar zxvf xlocate-0.72.tar.gz
$ cd xlocate-0.72
$ sed -i '67s:magic:*&:' disklist.cpp
$ export PATH=/usr/local/lib64/qt4/bin:$PATH
$ export QTDIR=/usr/local/lib64/qt4
$ sed -e 's:$$INSTDIR/translations:$$INSTDIR/share/xlocate/translations:' \
-e 's:$$INSTDIR/doc:$$INSTDIR/share/doc:g' -i xlocate-qt4.pro
$ sed -i '123a|| appstrings->load( tsfilename, (QString)"/usr/local/share/xlocate/translations" )' main.cpp
$ sed -i '111a|| qtt->load( qtfilename, "/usr/local/lib64/qt4/translations" )' main.cpp
$ sed -i '4aQMAKE_CXXFLAGS_RELEASE = $$(CXXFLAGS)\nQMAKE_LFLAGS += $$(LDFLAGS)' xlocate-qt4.pro
$ sed -i '6aQMAKE_CC = $$(CC)\nQMAKE_CXX = $$(CXX)\nQMAKE_LINK = $$(CXX)' xlocate-qt4.pro
$ ./configure |
Explicación de los
comandos
sed -i '67s:magic:*&:' disklist.cpp : Soluciona el siguiente mensaje de error en el proceso de compilación:
GCC
disklist.cpp:67:17: error: invalid conversion from 'char' to 'char*' [-fpermissive]
67 | magicresult='\0';
|
^~~~
|
Clang
disklist.cpp:67:17: error: assigning to 'char *' from incompatible type 'char'
magicresult='\0';
^~~~
|
export PATH=/usr/local/lib64/qt4/bin:$PATH : Para evitar que el script de configuración, detecte los ejecutables de Qt5 (si lo tenemos instalado y existe una variable de entorno PATH configurada para Qt5), en lugar de los ejecutables de Qt4, establecemos una variable de entorno PATH, que coloca en primer lugar de búsqueda, el directorio /usr/local/lib64/qt4/bin.
Sustituir esta ruta, por la que cada usuario tenga en su sistema, en lo
que respecta a la ubicación de dicho directorio.
export QTDIR=/usr/local/lib64/qt4 : Complementamos la variable de entorno anterior con ésta, que establece el directorio de instalación de Qt4.
sed -e 's:$$INSTDIR/translations:$$INSTDIR/share/xlocate/translations:' \
-e 's:$$INSTDIR/doc:$$INSTDIR/share/doc:g' -i xlocate-qt4.pro : Con el uso de sed,
modificamos las rutas predefinidas de instalación de la
documentación del programa y las traducciones, sustituyendo los
directorios /usr/local/doc y /usr/local/translations, por /usr/local/share/doc y /usr/local/share/xlocate/translations.
sed -i '123a|| appstrings->load( tsfilename, (QString)"/usr/local/share/xlocate/translations" )' main.cpp : Añadimos la nueva ubicación de las traducciones del programa al archivo de código fuente, main.cpp, para que éste las cargue correctamente.
sed -i '111a|| qtt->load( qtfilename, "/usr/local/lib64/qt4/translations"
)' main.cpp : Si hemos compilado Qt4
desde el código fuente, y lo hemos instalado en otro
directorio que no sea el principal, /usr, tendremos que añadir la ruta a las traducciones del mismo,
al archivo de código fuente, main.cpp, para que XLocate pueda cargar las locales de la versión de Qt4 que hayamos compilado e instalado. Sustituir /usr/local/lib64/qt4/translations, por el directorio predefinido utilizado por cada uno.
sed -i '4aQMAKE_CXXFLAGS_RELEASE = $$(CXXFLAGS)\nQMAKE_LFLAGS += $$(LDFLAGS)' \
src/xlocate-qt4.pro : Modificamos el archivo de configuración del proceso de configuración de XLocate para que acepte las variables de entorno de optimización y LDFLAGS del manual.
sed -i '6aQMAKE_CC = $$(CC)\nQMAKE_CXX = $$(CXX)\nQMAKE_LINK = $$(CXX)' \
src/xlocate-qt4.pro : Modificamos el archivo de configuración del proceso de compilación de XLocate para que acepte las variables de entorno de uso de compilador. Esto sólo es necesario si vamos a compilar el paquete con Clang.
Compilación
Parámetros de compilación opcionales
Instalación
como root
$ su
# make install; make uninstall_documentation_fr
# for i in /usr/local/share/icons/hicolor ; do \
install -dm755 $i/24x24/apps ; \
convert -resize 24 $i/48x48/apps/xlocate.png $i/24x24/apps/xlocate.png ; \
gtk-update-icon-cache -tf $i &> /dev/null ; \
done |
Estadísticas de Compilación e Instalación de XLocate
Estadísticas de Compilación e Instalación de XLocate |
CPU |
AMD Ryzen 3 3100 4-Core Processor |
MHz |
3593.246 (BoostMax=+500) |
RAM |
32 GB |
Sistema de archivos |
XFS |
Versión del Kernel |
5.19.0-ml SMP PREEMPT_DYNAMIC x86_64 |
Modo de frecuencia de la CPU |
performance |
Versión de Glibc |
2.36 |
Enlazador dinámico |
LLD 14.0.6 |
Compilador |
Clang 14.0.6 |
Parámetros de optimización |
-03 -march=znver2
-mtune=znver2 -fexperimental-new-pass-manager -mllvm -polly -mllvm
-polly-vectorizer=stripmine -flto=thin -Wl,--lto-aa-pipeline=globals-aa -Wl,--lto-newpm-passes=memcpyopt |
Parámetros de compilación |
-j8 |
Tiempo de compilación |
4" |
Archivos instalados |
189 |
|
Ocupación de espacio en disco |
2,1 MB |
Consumo inicial de CPU y RAM de XLocate
Consumo inicial de CPU y RAM de XLocate |
Programa
|
CPU |
RAM |
xlocate |
0 % |
44,0 MB |
Para medir el consumo de CPU se utiliza el programa top, y para medir
el consumo de RAM se utiliza el script de Python, ps_mem.py, creado por Pádraig Brady, que podemos encontrar en este enlace. |
Directorio de configuración personal
~/.config/migo.info |
Es el directorio de configuración personal de XLocate en nuestro home. |
Desinstalación
como root
1)
MODO TRADICIONAL
En el directorio de compilación
ejecutamos el siguiente comando:
2)
MODO MANUALINUX
xlocate-0.72-scripts.tar.gz
$ su
# tar zxvf xlocate-0.72-scripts.tar.gz
# cd xlocate-0.72-scripts
# ./Desinstalar_xlocate-0.72 |
Copia de Seguridad
como root
$ su
# tar zxvf xlocate-0.72-scripts.tar.gz
# cd xlocate-0.72-scripts
# ./Respaldar_xlocate-0.72 |
Restaurar la Copia de Seguridad
como root
$ su
# cd /var/copibin/restaurar_copias
# ./Restaurar_xlocate-0.72
|
Traducción al
Español
Descarga
XLocate_es-ML0.run
Firma Digital
XLocate_es-ML0.run.asc
Verificar la firma digital del paquete
$ gpg --import manualinux.asc
$ gpg --verify XLocate_es-ML0.run.asc XLocate_es-ML0.run |
Instalación
como root
$ su -c "sh XLocate_es-ML0.run" |
Iniciamos XLocate
Sólo nos
queda teclear en una terminal o en un lanzador el comando xlocate,
y el programa aparecerá en la pantalla.
La primera vez que lo iniciemos, hacemos clic en el botón Opciones..., se abrirá otra ventana, nos vamos a la pestaña Parámetros, y cambiamos el programa de búsqueda predefinido, slocate por mlocate, tal y como aparece en la siguiente captura de pantalla. Posteriormente hacemos clic en Aplicar para confirmar los cambios.
Ahora hacemos clic en la pestaña Rutas, y configuramos la ruta a los archivos de ayuda del programa, y la ubicación de mlocate y updatedb.
Aunque el programa suele detectar la existencia de estos comandos, es
conveniente asegurarse de incluir las rutas completas a los mismos.
Posteriormente hacemos clic en Aplicar para confirmar los cambios.
En la pestaña Volúmenes montados, definimos los volúmenes que
serán indexados por Mlocate, marcando o desmarcando la casilla Índice. Es conveniente indicar en la caja de texto exclusiones de la partición raíz del sistema, los directorios que no serán indexados por Mlocate. Un ejemplo, si tenemos el directorio home en otra partición aparte.
proc:sys:dev:media:mnt:tmp:home |
Una vez tenemos todo configurado, hacemos clic en Aceptar, y volvemos a la ventana principal del programa. En la misma, hacemos clic en Actualizar...,
y se abrirá la ventana de actualización y creación
de índices, en la que podremos seleccionar aquellos
índices candidatos a ser actualizados o creados. Muy
recomendable, si existen muchos, no actualizarlos a la vez, ya que esto
puede producir por unos instantes, un bloqueo temporal de la pantalla,
por un uso intensivo de la CPU, al hacer la actualización de
forma simultánea. Con Ctrl + Clic izquierdo, iremos seleccionando o deseleccionando los volúmenes a actualizar.
La primera vez que se cree el índice, el programa nos
solicitará la confirmación para su ubicación en el
disco. Por defecto, se utiliza el directorio /var/lib/xlocate, pero se pueden seleccionar otros.
La creación o actualización de índices se realiza
siempre en 2º plano, a medida que se van creando o actualizando,
se van mostrando los correspondientes mensajes de información de
la finalización de los procesos.
Cuando estén los índices creados y vayan apareciendo en
el lateral derecho de la ventana, podemos seleccionarlos por grupos, y
crear grupos específicos de búsqueda. Por ejemplo, uno
que agrupe a todos los CD/DVD que pretendamos catalogar. Montamos un
CD, ya sea de forma manual o mediante detección
automática soportada por entornos de escritorio cómo XFce 4, hacemos clic en el botón Actualizar...,
y seleccionamos el punto de montaje del dispositivo, en la ventana
correspondiente de creación o actualización de
índices.
En la ventana de confirmación de ubicación del archivo
índice, nos aparecerá también como opción,
la posibilidad de renombrarlo, tomando como nombre predefinido el de la
etiqueta del CD/DVD que hayamos montado.
Cuando lo hayamos indexado, nos aparecerá el mismo, con un color
diferente a los otros, al ser un medio de sólo lectura, en la
lista de volúmenes. Lo seleccionamos haciendo clic sobre el
mismo, luego hacemos clic con el botón derecho del ratón,
sobre el grupo de preselección nº 1, y seleccionamos Rellenar preajuste desde la selección, nos pedirá un nombre para el preajuste, en el ejemplo, CD/DVD.
Para seguir indexando y añadiendo más discos CD/DVD al
grupo de preselección creado, realizamos la misma
operación que hemos hecho con el primer CD, y posteriormente
hacemos clic en el botón de preajuste CD/DVD, y Ctrl + Clic izquierdo
en el nuevo índice creado. Hacemos clic con el botón
derecho del ratón en el en el botón de preajuste CD/DVD, y seleccionamos Rellenar preajuste desde la selección, nos volverá pedir un nombre para el preajuste, y confirmamos el que le hemos dado antes.
Para finalizar, realizamos una prueba de búsqueda, seleccionando
previamente el volumen o volúmenes en los que
deseamos realizar dicha operación, reseñando que las
fuentes de texto de la caja de búsqueda y de la lista de
resultados se pueden cambiar, haciendo clic con el botón derecho
del ratón sobre las mismas, y seleccionando Cambiar fuente...
Enlaces
https://pagure.io/mlocate >> La web de Mlocate.
http://migo.info/xlocate >> La web de XLocate.
|