APT (software)

Sistema de gestión de paquetes de software libre
Herramienta de paquete avanzado
Desarrollador(es)El proyecto Debian
Lanzamiento inicial31 de marzo de 1998 ; hace 26 años [1] ( 31-03-1998 )
Versión estable
2.9.7 [2]  / 30 de julio de 2024 ; hace 2 meses ( 30 de julio de 2024 )
Repositorio
  • salsa.debian.org/apt-team/apt.git
Escrito enC++, [3] script de shell, [3] lenguaje de marcado extensible, [3] CMake, [3] C, [3] Perl [3] 
Sistema operativoSimilar a Unix
TipoGestor de paquetes
LicenciaLicencia GPLv2+
Sitio webwiki.debian.org/AptCLI

APT ( Advanced Package Tool ) es una interfaz de usuario de software libre que funciona con bibliotecas centrales para gestionar la instalación y eliminación de software en Debian y distribuciones Linux basadas en Debian . [4] APT simplifica el proceso de gestión de software en sistemas informáticos tipo Unix al automatizar la recuperación, configuración e instalación de paquetes de software , ya sea desde archivos precompilados o compilando el código fuente. [4]

Uso

APT es una colección de herramientas distribuidas en un paquete llamado apt . Una parte significativa de APT está definida en una biblioteca de funciones de C++apt ; APT también incluye programas de línea de comandos para tratar con paquetes, que utilizan la biblioteca. Tres de estos programas son , apt-gety apt-cache. Se utilizan comúnmente en ejemplos porque son simples y ubicuos. El paquete apt es de prioridad " importante " en todas las versiones actuales de Debian y, por lo tanto, se incluye en una instalación de Debian predeterminada. APT puede considerarse una interfaz para dpkg, más amigable que la dselectinterfaz anterior. Si bien dpkgrealiza acciones en paquetes individuales, APT administra las relaciones (especialmente las dependencias) entre ellos, así como el abastecimiento y la gestión de decisiones de control de versiones de nivel superior (seguimiento de versiones y fijación de versiones).

APT es a menudo aclamado como una de las mejores características de Debian, [5] [6] [7] [8] lo que los desarrolladores de Debian atribuyen a los estrictos controles de calidad en la política de Debian. [9] [10]

Una característica importante de APT es la forma en que realiza las llamadas dpkg: realiza una clasificación topológica de la lista de paquetes que se instalarán o eliminarán y realiza las llamadas dpkgen la mejor secuencia posible. En algunos casos, utiliza las --forceopciones de dpkg. Sin embargo, solo lo hace cuando no puede calcular cómo evitar el motivo dpkgpor el que se debe forzar la acción.

Instalación de software

El usuario indica uno o más paquetes para instalar. El nombre de cada paquete se expresa simplemente como la parte del nombre del paquete, no como un nombre de archivo completo (por ejemplo, en un sistema Debian, libc6sería el argumento proporcionado, no libc6_1.9.6-2.deb). Cabe destacar que APT obtiene e instala automáticamente los paquetes de los que depende el paquete indicado (si es necesario). Esta era una característica distintiva original de los sistemas de administración de paquetes basados ​​en APT, ya que evitaba fallas de instalación debido a dependencias faltantes, un tipo de infierno de dependencias .

Otra distinción es la recuperación de paquetes desde repositorios remotos. APT utiliza un archivo de configuración de ubicación ( /etc/apt/sources.list) para localizar los paquetes deseados, que pueden estar disponibles en la red o en un medio de almacenamiento extraíble, por ejemplo, y recuperarlos, y también obtener información sobre los paquetes disponibles (pero no instalados).

APT ofrece otras opciones de comando para anular las decisiones tomadas por el sistema de resolución de conflictos de apt-get. Una opción es forzar una versión particular de un paquete. Esto puede degradar un paquete y dejar inoperativo el software dependiente, por lo que el usuario debe tener cuidado.

Finalmente, el apt_preferencesmecanismo permite al usuario crear una política de instalación alternativa para paquetes individuales.

El usuario puede especificar paquetes utilizando una expresión regular POSIX .

APT busca en su lista de paquetes almacenados en caché y enumera las dependencias que deben instalarse o actualizarse.

APT recupera, configura e instala las dependencias automáticamente.

Los desencadenantes son el tratamiento de las acciones diferidas.

Actualizar, mejorar y desactualizar

Los modos de uso de apty apt-getque facilitan la actualización de los paquetes instalados incluyen:

  • updatese utiliza para resincronizar los archivos de índice de paquetes desde sus fuentes. Las listas de paquetes disponibles se obtienen de las ubicaciones especificadas en /etc/apt/sources.list. Por ejemplo, al utilizar un archivo Debian, este comando recupera y escanea los Packages.gzarchivos, de modo que esté disponible la información sobre los paquetes nuevos y actualizados.
  • upgradese utiliza para instalar las versiones más nuevas de todos los paquetes instalados actualmente en el sistema desde las fuentes enumeradas en /etc/apt/sources.list. Los paquetes instalados actualmente con nuevas versiones disponibles se recuperan y actualizan; bajo ninguna circunstancia se eliminan los paquetes instalados actualmente ni se recuperan e instalan los paquetes que aún no están instalados. Las nuevas versiones de los paquetes instalados actualmente que no se pueden actualizar sin cambiar el estado de instalación de otro paquete se dejarán en su versión actual.
  • full-upgrade( apt) y dist-upgrade( apt-get), además de realizar la función de upgrade, también maneja de forma inteligente los cambios de dependencias con nuevas versiones de los paquetes; apty apt-gettiene un sistema de resolución de conflictos "inteligente", e intentará actualizar los paquetes más importantes a expensas de los menos importantes si es necesario. El /etc/apt/sources.listarchivo contiene una lista de ubicaciones desde las que se pueden recuperar los archivos de paquetes deseados. [4] aptitude tiene una dist-upgradecaracterística más inteligente llamada full-upgrade. [11]

Configuración y archivos

/etc/aptContiene las carpetas y archivos de configuración de APT.

apt-configes el programa de consulta de configuración de APT. [12] apt-config dump muestra la configuración. [13]

Archivos

  • /etc/apt/sources.list: [14] Ubicaciones desde donde obtener paquetes.
  • /etc/apt/sources.list.d/:Fragmentos de lista de fuentes adicionales.
  • /etc/apt/apt.conf:Archivo de configuración APT.
  • /etc/apt/apt.conf.d/:Fragmentos del archivo de configuración de APT.
  • /etc/apt/preferences.d/: Directorio con los archivos de preferencias de versiones. Aquí se especifica la "fijación", es decir, la preferencia para obtener determinados paquetes de una fuente independiente o de una versión diferente de una distribución.
  • /var/cache/apt/archives/:Área de almacenamiento para archivos de paquetes recuperados.
  • /var/cache/apt/archives/partial/:Área de almacenamiento para archivos de paquetes en tránsito.
  • /var/lib/apt/lists/:Área de almacenamiento para información de estado para cada recurso de paquete especificado ensources.list
  • /var/lib/apt/lists/partial/:Área de almacenamiento de información estatal en tránsito.

Fuentes

APT se basa en el concepto de repositorios para encontrar software y resolver dependencias. Para APT, un repositorio es un directorio que contiene paquetes junto con un archivo de índice. Puede especificarse como una ubicación en red o en CD-ROM . A fecha de 14 de agosto de 2021, [actualizar]el proyecto Debian mantiene un repositorio central de más de 50.000 paquetes de software listos para descargar e instalar. [15]

Se puede agregar cualquier cantidad de repositorios adicionales al archivo de configuración de fuentes/etc/apt/sources.list de APT ( ) y luego APT puede consultarlos. Las interfaces gráficas suelen permitir realizar modificaciones sources.listde forma más sencilla ( apt-setup). Una vez que se ha especificado un repositorio de paquetes (como durante la instalación del sistema), los paquetes de ese repositorio se pueden instalar sin especificar una fuente y se mantendrán actualizados automáticamente.

Además de los repositorios en red, también se pueden utilizar discos compactos y otros medios de almacenamiento (memoria USB, discos duros...), utilizando apt-cdrom[16] o añadiendo file:/la URI [17] al archivo de lista de fuentes. apt-cdromse puede especificar una carpeta distinta a un CD-ROM, utilizando la -dopción (es decir, un disco duro o una memoria USB). Los CD de Debian disponibles para descarga contienen repositorios Debian. Esto permite actualizar máquinas que no están en red. También se puede utilizar apt-zip.

Pueden surgir problemas cuando varias fuentes ofrecen los mismos paquetes. Los sistemas que tienen fuentes que pueden entrar en conflicto pueden usar la fijación APT para controlar qué fuentes deben preferirse.

Fijación APT

La función de fijación de APT permite a los usuarios obligar a APT a elegir versiones particulares de paquetes que pueden estar disponibles en diferentes versiones en distintos repositorios. Esto permite a los administradores asegurarse de que los paquetes no se actualicen a versiones que puedan entrar en conflicto con otros paquetes del sistema o que no hayan sido probados lo suficiente para detectar cambios no deseados.

Para hacer esto, se deben modificar los pines en el archivo de preferencias de APT ( ), [18] aunque las interfaces gráficas a menudo hacen que la fijación sea más sencilla./etc/apt/preferences

Partes delanteras

El administrador de paquetes Synaptic es una de las interfaces disponibles para APT.

Existen otras interfaces para APT que ofrecen funciones de instalación más avanzadas e interfaces más intuitivas. Entre ellas se incluyen:

  • Synaptic , una interfaz gráfica de usuario GTK
  • Centro de software de Ubuntu , una interfaz gráfica de usuario GTK desarrollada por el proyecto Ubuntu
  • aptitude , un cliente de consola coninterfaces TUI basadas en CLI y ncurses
  • KPackage , parte de KDE
  • Gestor de paquetes Adept , una interfaz gráfica de usuario para KDE (deb, rpm, bsd)
  • PackageKit , una interfaz D-Bus mantenida por freedesktop.org , impulsa GNOME Software y KDE Discover.
  • GDebi , una herramienta basada en GTK patrocinada por Ubuntu. (También existe una versión Qt, disponible en los repositorios de Ubuntu como gdebi-kde).
  • apt-cdrom , una forma de agregar un nuevo CDROM a la lista de repositorios disponibles de APT (sources.lists). Es necesario usar apt-cdrom para agregar CD al sistema APT, no se puede hacer manualmente.
  • apt-zip , una forma de usar apt con medios extraíbles , específicamente unidades flash USB .
  • aptURL , un paquete de software de Ubuntu que permite que las aplicaciones del usuario final se instalen con un solo clic a través de un navegador. [19] [20]
  • Cydia , un gestor de paquetes para iOS con jailbreak basado en APT (portado a iOS como parte del proyecto Telesphoreo). [21] [22]
  • Sileo , como Cydia , un administrador de paquetes para iOS con jailbreak basado en versiones más nuevas de APT (portado a iOS por el equipo Electra)
  • gnome-apt , una interfaz gráfica basada en widgets GTK/ GNOME . Desarrollada por Havoc Pennington [23]
  • Muon discover (anteriormente Muon software center) , una interfaz gráfica de usuario basada en Qt
  • Administrador de aplicaciones Hildon (aplicación Maemo) , una interfaz Maemo
  • apticron , un servicio diseñado para ejecutarse a través de cron para enviar por correo electrónico notificaciones de actualizaciones pendientes a un administrador del sistema (sysadmin).
  • APT Daemon , un frontend que se ejecuta como un servicio para permitir a los usuarios instalar software a través de PolicyKit y es a su vez el marco utilizado por el centro de software de Ubuntu (junto con el administrador de software de Linux Mint ).
  • Instalador de paquetes , parte de MX Linux.
  • Apt-offline : una forma conveniente de realizar cualquier cambio disponible que no esté en contenedores en cualquier instalación Linux de tipo Debian sin usar una conexión directa a Internet. Sin embargo, puede ser necesaria una conexión directa temporal, por ejemplo, para instalar Apt-offline en algunos de los tipos de Linux relevantes y para agregar PPA a la lista de fuentes.

Los front-ends de APT pueden:

  • buscar nuevos paquetes;
  • paquetes de actualización;
  • instalar o eliminar paquetes y
  • Actualizar todo el sistema a una nueva versión.

Los front-ends de APT pueden listar las dependencias de los paquetes que se están instalando o actualizando, preguntar al administrador si los paquetes recomendados o sugeridos por los paquetes recién instalados también deben instalarse, instalar dependencias automáticamente y realizar otras operaciones en el sistema, como eliminar archivos y paquetes obsoletos.

Historia

El esfuerzo original que condujo al apt-getprograma fue el dselectproyecto de reemplazo conocido por su nombre clave Deity . [24] Este proyecto fue encargado en 1997 por Brian White, el administrador de versiones de Debian en ese momento. La primera versión funcional de apt-getse llamó dpkg-gety solo estaba destinada a ser un programa de prueba para las funciones de la biblioteca central que respaldarían la nueva interfaz de usuario (IU). [25]

Gran parte del desarrollo original de APT se realizó en el chat de retransmisión por Internet (IRC), por lo que se han perdido los registros. Los archivos de la lista de correo del "Equipo de creación de la Deidad" incluyen solo los puntos más destacados.

El nombre "Deidad" fue abandonado como nombre oficial del proyecto debido a preocupaciones sobre la naturaleza religiosa del nombre. El nombre APT fue finalmente decidido después de un considerable debate interno y público. Finalmente, el nombre fue propuesto en IRC, aceptado y luego finalizado en las listas de correo. [26]

APT se introdujo en 1998 y se difundieron versiones de prueba originales en IRC. La primera versión de Debian que lo incluyó fue Debian 2.1, publicada el 9 de marzo de 1999. [27]

Al final, el objetivo original del proyecto Deity de reemplazar la dselectinterfaz de usuario fue un fracaso. El trabajo en la parte de la interfaz de usuario del proyecto fue abandonado (los directorios de la interfaz de usuario fueron eliminados del sistema de versiones concurrentes ) después del primer lanzamiento público de apt-get. La respuesta a APT como dselectmétodo y como utilidad de línea de comandos fue tan grande y positiva que todos los esfuerzos de desarrollo se centraron en mantener y mejorar la herramienta. No fue hasta mucho después que varias personas independientes construyeron interfaces de usuario sobre libapt-pkg.

Finalmente, un nuevo equipo retomó el proyecto, comenzó a desarrollar nuevas funciones y lanzó la versión 0.6 de APT, que introdujo la función Secure APT, utilizando una firma criptográfica fuerte para autenticar los repositorios de paquetes. [28]

Variantes

APT fue diseñado originalmente como una interfaz para que dpkg trabajara con los paquetes de Debian . Se lanzó .debuna versión de APT modificada para que también funcionara con el sistema de administración de paquetes RPM, denominada APT-RPM . [29] El proyecto Fink ha portado APT a Mac OS X para algunas de sus propias tareas de administración de paquetes, [30] y APT también está disponible en OpenSolaris .

archivo apt

apt-file es un comando, empaquetado por separado de APT, para encontrar qué paquete incluye un archivo específico o para enumerar todos los archivos incluidos en un paquete en repositorios remotos. [31]

Véase también

Referencias

  1. ^ "Versión inicial". Registro de cambios del paquete apt . El proyecto Debian. 31 de marzo de 1998 . Consultado el 18 de diciembre de 2021 .
  2. ^ "2.9.7 · Tags · APT Developers / apt · GitLab". 30 de julio de 2024. Consultado el 4 de agosto de 2024 .
  3. ^ abcdef "El proyecto de código abierto apt - Advanced Package Tool en Open Hub: Página de idiomas". Open Hub . Consultado el 2 de mayo de 2024 .
  4. ^ abc "apt-get(8)". Páginas de manual de Debian . Consultado el 18 de diciembre de 2021 .
  5. ^ Byfield, Bruce (9 de diciembre de 2004). "Un manual básico sobre apt-get" . Consultado el 18 de diciembre de 2021 .
  6. ^ "De los archivos: las mejores distribuciones del 2000". Tux Radar. Archivado desde el original el 26 de julio de 2020.
  7. ^ Dorgan, David (19 de enero de 2004). "Migración a Debian". linux.ie. Archivado desde el original el 13 de mayo de 2006.
  8. ^ "Desarrollo de Linux para móviles con Familiar y un Debian mínimo". Mobile Tux. Archivado desde el original el 15 de septiembre de 2008.
  9. ^ "Por qué Debian" . Consultado el 18 de diciembre de 2021 .
  10. ^ "Manual de políticas de Debian" . Consultado el 18 de diciembre de 2021 .
  11. ^ "Discusión sobre dist-upgrade vs. full-upgrade" . Consultado el 18 de diciembre de 2021 .
  12. ^ "apt-config(8)". Páginas de manual de Debian . Consultado el 18 de diciembre de 2021 .
  13. ^ "Consultar la configuración de APT mediante apt-config - Debian admin". 2 de diciembre de 2006. Consultado el 18 de diciembre de 2021 .
  14. ^ "SourcesList". Wiki de Debian . Consultado el 18 de diciembre de 2021 .
  15. ^ "Publicado Debian 11 "bullseye"" www.debian.org . Consultado el 11 de mayo de 2022 .
  16. ^ "apt-cdrom(8)". Páginas de manual de Debian . Consultado el 27 de diciembre de 2021 .
  17. ^ p. ej. archivo deb:/mnt/install estable principal contribución no libre.{{citation}}: Mantenimiento de CS1: postscript ( enlace )
  18. ^ "AptConfiguration". Wiki de Debian . Consultado el 18 de mayo de 2020 .
  19. ^ "AptURL". Wiki de Ubuntu . Consultado el 27 de diciembre de 2021 .
  20. ^ "Cómo instalar software en Ubuntu Linux: una guía completa para principiantes". 17 de junio de 2018. Consultado el 27 de diciembre de 2021 .
  21. ^ Jurick, David (2009). Trucos para el iPhone: Llevando el iPhone y el iPod touch más allá de sus límites. O'Reilly Media, Inc. p. 20. ISBN 9780596516642. Recuperado el 27 de diciembre de 2021 .
  22. ^ Adhikari, Richard (20 de marzo de 2008). «Android, Schmandroid: Linux en el iPhone». LinuxInsider . Consultado el 27 de diciembre de 2021 .
  23. ^ Mullikin, Glenn (diciembre de 2001). "La evolución de los sistemas de gestión de paquetes de Debian". AUUGN . Vol. 22, no. 4. p. 50. ISSN  1035-7521. gnome-apt fue escrito por Havoc Pennington
  24. ^ White, Brian C. (11 de abril de 1997). "Proyecto de reemplazo de "dselect" ("deity")". [email protected] (Lista de correo).
  25. ^ Gunthorpe, Jason (2 de marzo de 1998). "Está funcionando". [email protected] (Lista de correo).
  26. ^ Gunthorpe, Jason (19 de marzo de 1998). "Re: 2 cosas (!)". [email protected] (Lista de correo).
  27. ^ "Una breve historia de Debian". debian.org. Archivado desde el original el 24 de agosto de 2003.
  28. ^ "APT seguro". Wiki de Debian . Consultado el 27 de diciembre de 2021 .
  29. ^ "APT-RPM". apt-rpm.org. Archivado desde el original el 21 de abril de 2008. Consultado el 27 de diciembre de 2021 .
  30. ^ "Fink - Acerca de". www.finkproject.org. Archivado desde el original el 11 de mayo de 2008. Consultado el 27 de diciembre de 2021 .
  31. ^ "Inspección y extracción del contenido de los paquetes Debian". Blog de Packagecloud . 13 de octubre de 2015 . Consultado el 27 de diciembre de 2021 .
  • apt(8) –  Manual de comandos de mantenimiento de Debian
  • APT HOWTO Archivado el 9 de marzo de 2021 en Wayback Machine
  • Tutorial de Apt
  • Capítulo 2. Gestión de paquetes Debian - Referencia Debian
Obtenido de "https://es.wikipedia.org/w/index.php?title=APT_(software)&oldid=1247432588"