GNU/Linux >> Tutoriales Linux >  >> Linux

¿Hacer un seguimiento de los programas?

Cuando instalo un programa simple, a menudo usa make && make install y a menudo ni siquiera tiene una desinstalación objetivo.

Si deseo actualizar un programa, ¿es un protocolo estándar asumir que simplemente se reescribe sin problemas sobre el programa anterior?

¿Cómo hago un seguimiento de estos programas? la mayoría de la gente simplemente "dispara y olvida" y si no desinstala se da el objetivo, ¿tengo que eliminar todo manualmente?

Respuesta aceptada:

Instale cada programa en un árbol de directorios dedicado y use Stow o XStow para hacer que todos los programas aparezcan en una jerarquía común. Stow crea enlaces simbólicos desde el directorio específico del programa a un árbol común.

Más detalladamente, elija un directorio de nivel superior, por ejemplo /usr/local/stow . Instale cada programa en /usr/local/stow/PROGRAM_NAME . Por ejemplo, organice la instalación de sus ejecutables en /usr/local/stow/PROGRAM_NAME/bin , sus páginas man en /usr/local/stow/man/man1 y así. Si el programa usa autoconf, ejecute ./configure --prefix /usr/local/stow/PROGRAM_NAME . Después de ejecutar make install , ejecuta stow :

./configure --prefix /usr/local/stow/PROGRAM_NAME
make
sudo make install
cd /usr/local/stow
sudo stow PROGRAM_NAME

Y ahora tendrás enlaces simbólicos como estos:

/usr/local/bin/foo -> ../stow/PROGRAM_NAME/bin/foo
/usr/local/man/man1/foo.1 -> ../../stow/PROGRAM_NAME/man/man1/foo.1
/usr/local/lib/foo -> ../stow/PROGRAM_NAME/lib/foo

Puede realizar fácilmente un seguimiento de los programas que ha instalado enumerando el contenido de stow directorio, y siempre sabe a qué programa pertenece un archivo porque es un enlace simbólico a una ubicación en el directorio de ese programa. Desinstale un programa ejecutando stow -D PROGRAM_NAME luego eliminando el directorio del programa. Puede hacer que un programa no esté disponible temporalmente ejecutando stow -D PROGRAM_NAME (ejecutar stow PROGRAM_NAME para que vuelva a estar disponible).

Si desea poder cambiar rápidamente entre diferentes versiones del mismo programa, use /usr/local/stow/PROGRAM_NAME-VERSION como el directorio del programa. Para actualizar de la versión 3 a la versión 4, instale la versión 4, luego ejecute stow -D PROGRAM_NAME-3; stow PROGRAM_NAME-4 .

Las versiones anteriores de Stow no van mucho más allá de los conceptos básicos que he descrito en esta respuesta. Las versiones más nuevas, así como XStow (que no se ha mantenido últimamente) tienen características más avanzadas, como la capacidad de ignorar ciertos archivos, manejar mejor los enlaces simbólicos existentes fuera del directorio de almacenamiento (como man -> share/man ), manejar algunos conflictos automáticamente (cuando dos programas proporcionan el mismo archivo), etc.

Relacionado:¿cambiar el título del terminal?

Si no tiene o no quiere usar el acceso raíz, puede elegir un directorio en su directorio de inicio, p. ~/software/stow . En este caso, agregue ~/software/bin a tu PATH . Si man no encuentra automáticamente las páginas del manual, agregue ~/software/man a su MANPATH . Añadir ~/software/info a su INFOPATH , ~/software/lib/python a su PYTHONPATH , y así sucesivamente según corresponda.


Linux
  1. ¿Cómo redirigir la salida de un programa a un archivo zip?

  2. Linux:¿realizar un seguimiento continuo del estado del servicio?

  3. ¿Programa de compresión que muestra la relación de compresión en vivo?

  4. Ejecutar un programa java en backend

  5. Creando un programa en bin

Cómo desinstalar programas en Elementary OS y Ubuntu

5 consejos para dominar Linux

Cómo quitar programas instalados desde la fuente usando GNU Stow en Linux

¿Qué es Bonjour en mi computadora? Guía para PC del programa Bonjour de Windows 10

Cómo ejecutar programas Java en Ubuntu

Desinstalar programas en Linux