[ubuntu-ar] Archivos tar.gz
Ernesto Rizzardi
erizzardi at gmail.com
Wed Sep 23 22:24:48 UTC 2015
Gracias, Pablo
Al intentar instalar archivos tar.gz, me "sugieren" hacerlo con Unetbootin.
Pero ya metí la pata al usar Unetbootin para instalar Libreoffice 5 , y
no me permite actualizar nada, sale un cartel "E: El paquete unetbootin
necesita ser reinstalado, pero no se encuentra un archivo para éste.E:
Error interno al abrir el caché (1). Por favor informe de este error. Y
ahora estoy en el horno, te molesto por una ayuda? Gracias, Ernesto
El 23/09/15 a las 19:04, Pablo Lillia escribió:
>
> Con los tar.gz, alien te puede servir algunas veces, y muchas otras no.
>
> El problema con los tar.gz es que no es un formato de paquetes, si
> bien la vieja Slackware alguna vez lo usaba (capaz que todavía los
> usa... todavía existe Slackware?? :D) como tal, pero considerando
> algunas convenciones adicionales.
>
> El tar.gz no es más que un formato de archivos comprimidos y puede
> contener *cualquier* cosa. Es como un zip si se quiere. Puede tener
> imágenes, videos, textos, programas (binarios) de alguna plataforma,
> código fuente compilable, fotos de gatitos, .... cualquier cosa
> imaginable, mezclado, y con cualquier estructura. En realidad el
> archivo tar es solo un formato de archive (que nació en Unix para
> backups en cinta: 'ta'pe a'r'chive = tar), que también se usa para
> distribuir archivos, porque conserva y maneja bien los permisos y
> estructuras de archivos y directorios de Unix. Cuando los archivos tar
> además están comprimidos con gzip, es que terminan en .gz. También
> pueden comprimirse con otras herramientas similares, como el muy común
> bzip2 (bz2), 7zip (7z), o más raro en zip.
>
> Pero veamos los dos casos más habituales de tar.gz:
>
> OPCION 1) tar.gz binario (el programa ya compilado) de un programa.
>
> Hay que bajarse el que sea (más) compatible con tu Linux, y de la
> arquitectura correcta (x86 = 32-bit, x86_64 o AMD64 para 64-bit). Solo
> hay que descomprimirlo y ejecutar el programa. El nombre del
> ejecutable... puede ser cualquier cosa. Lo mejor: seguir las
> instrucciones, o fijarse qué ejecutables tiene y probar. Es normal que
> dentro del .tar.gz exista una carpeta con el nombre del programa.
>
> Un ejemplo:
> $> tar xzvf progama-dist-bin.tar.gz
> $> cd programa/
> $> ./programa
>
> Supongiendo que el tar.gz se llame programa-dist-bin.tar.gz, que los
> archivos están en una carpeta llamada "programa", y que el ejecutable
> del programa se llama "programa", y que ya tiene permisos de ejecución.
> Sino, para ver qué archivos tienen permisos de ejecución, basta con
> hacer un:
> $> ls -lh
> y ver qué archivos tienen una 'x' en la tripleta de permisos, o si
> está coloreado, pueden ser los que tienen el color verde (puede
> cambiar según la terminal, la distro, y las opciones del usuario).
> El "punto barra" de ./programa, es para correr el programa que está
> con ese nombre en el directorio actual.
>
>
> OPCION 2) tar.gz con código fuente.
>
> Depende del tipo de programa y/o de la sanidad mental del autor, si
> sigue o no las convenciones GNU, y de muchas variables, como la
> posición de los astros. Pero "en general", una gran mayoría se reduce
> a esos pasos:
>
> $> tar xzvf progama-dist-src.tar.gz
> $> cd programa/
> $> ./configure
> $> ./make
> $> sudo make install
>
> El comando (script en realidad) configure analiza si se cumplen las
> dependencias en el sistema: si existen las librerías en el sistema, si
> tienen las versiones correctas, si están los encabezados para poder
> compilar, si están presentes todas las herramientas de compilación, y
> un largo etc muy técnico. Puede terminar con éxito... o reportar
> problemas. Dichos problemas, pueden indicar que antes necesitamos
> instalar algo, llamado por ese motivo una "dependencia", como puede
> ser una librería o un compilador. A veces las dependencias ya están
> instaladas, pero "configure" fue incapaz de encontrarlas porque no
> están en las rutas (path) esperadas. En tal caso, configure tiene
> muchas opciones para forzar un path alternativo. También configure
> tiene opciones para habilitar o deshabilitar opciones del programa.
> Por ejemplo: tal vez el programa soporta varias interfaces gráficas,
> como Gnome, KDE, y X11, y por ahí solo nos interesa compilar una de
> ellas. O tal vez el programa tiene partes opcionales que no nos
> interesan o no aplican a nuestro caso, o que no son compatibles con
> nuestras dependencias. Con "configure" se pueden habilitar y
> deshabilitar dichos componentes opcionales. A veces un programa que no
> compila, se soluciona deshabilitando algo opcional, o forzando alguna
> configuración.
>
> El comando make, sin entrar en muchos detalles, digamos que procesa un
> script (guión) llamado Makefile, creado por los conjuros mágicos del
> 'configure'. Digamos que make interpreta pergaminos de una antigua
> ciencia oscura usada para invocar a los compiladores, ensambladores y
> enlazadores en un orden correcto. Nadie sabe a ciencia cierta como
> funciona, salvo un par de mortales, y quien dice lo contrario,
> probablemente miente, está loco, o hizo un pacto con el lado oscuro.
> No exagero :D
>
> El último comando, sudo make install, hace la instalación (copia) del
> programa y todos sus archivos en las ubicaciones definitivas del
> sistema. Se debe correr con 'sudo', porque suele necesitar permisos
> administrativos para poder copiar en carpetas protegidas.
>
> Para desinstalar un programa instalado así, a veces hay un paso
> inverso que es:
> sudo make uninstall
>
> A veces la desinstalación falla miserablemente, o no deja las cosas en
> orden, resultando en situaciones hilarantes como un sistema inutilizado.
>
> Pero no todos los programas tienen y/o necesitan un "configure",
> algunos programadores están más allá de ello o no comulgan los mismos
> credos. Algunos usan otros sistemas de construcción. O tienen scripts
> creados por el mismo programador a su propio gusto, locura y/o necesidad.
>
> También hay programas en/para Python, PHP, Node.js, etc, que se
> instalan por otros procedimientos y vías.
>
> Después de todo esto, con suerte quedará un programa instalado fuera
> del control del sistema de paquetes de la distribución, la mayoría de
> las veces sin más consecuencias, pero que otras pueden traer problemas
> cuando se actualicen paquetes de la distribución, y hasta podrían
> introducir fallos de seguridad al no recibir actualizaciones
> periódicas por estar instalados por fuera del sistema.
>
> Instalar programas de esta forma, nunca es aconsejable, y debe hacerse
> a conciencia, como última opción. A partir del "sudo make install", si
> algo sale mal, pueden pisarse archivos del sistema y dejar un
> zafarrancho divertido, que en casos extremos puede llevar a una
> reinstalación del sistema operativo. En casos dudosos o con sistemas
> críticos, es buena práctica probar primero en un sistema de pruebas,
> como puede ser una máquina virtual (ejemplo VirtualBox o qemu) que sea
> desechable.
>
> Normalmente todo programa trae un documento README y/o un INSTALL. Si
> existen estos documentos, vale la pena leerlos, porque pueden tener
> instrucciones útiles.
>
> Si bien no existe "una" receta, como aprendizaje está muy bueno,
> aparte de útil para algunas situaciones. Y la mejor forma de aprender,
> es probando (y a veces rompiendo xD). Es cuestión de animarse :)
>
> Saludos,
> Pablo
>
More information about the Ubuntu-ar
mailing list