GNU/Linux >> Tutoriales Linux >  >> Debian

Cómo listar todos los paquetes en un repositorio en Ubuntu, Debian o Linux Mint [APT]

Este artículo explica cómo enumerar todos los paquetes disponibles (instalados y disponibles para la instalación) en un repositorio de Ubuntu, Linux Mint o Debian, ya sea un repositorio oficial o una fuente de terceros como un PPA, etc.

A continuación se muestran 2 formas de listar paquetes desde un repositorio:a través de una GUI o a través de la línea de comandos.

De la misma serie:

  • Cómo evitar que un paquete se actualice en Ubuntu, Debian o Linux Mint [APT]
  • Cómo encontrar paquetes disponibles desde la línea de comandos en Debian, Ubuntu o Linux Mint [APT]

Lista de todos los paquetes en un repositorio Debian, Ubuntu o Linux Mint con una GUI

Si desea enumerar todos los paquetes en un repositorio en su escritorio, puede usar el Administrador de paquetes Synaptic.

Synaptic es una aplicación de administración de paquetes gráficos para APT (APT es el administrador de paquetes de línea de comando principal para Debian y sus derivados).

Si no tiene Synaptic instalado, puede instalarlo en Debian, Ubuntu y cualquier distribución de Linux basada en Debian o Ubuntu, incluidos los sistemas operativos elementales, Linux Mint, etc., usando este comando:

sudo apt install synaptic

Para enumerar todos los paquetes en un repositorio de software específico con Synaptic, inicie la aplicación y haga clic en Origin en la parte inferior izquierda de la ventana. A continuación, seleccione el repositorio para el que desea enumerar todos los paquetes disponibles (tanto instalados como disponibles para la instalación) de la lista que se muestra en el lado izquierdo del Administrador de paquetes Synaptic.

Por ejemplo, aquí está Synaptic, que muestra todos los paquetes disponibles en el repositorio de Google y enumera Google Chrome Stable, Beta e Unstable, así como también Google Earth Pro y EC:


Como puede ver, aquí se enumeran todas las fuentes de software, incluidos los repositorios oficiales.

Los repositorios PPA de Launchpad también son compatibles. Su nombre comienza con LP-PPA, seguido del nombre real de PPA. Synaptic enumera 2 entradas para cada PPA:asegúrese de seleccionar la entrada de PPA que termina con /ubuntu-codename , por ejemplo /bionic , /cosmic , etc. La entrada con la terminación /now no enumera todos los paquetes disponibles en el PPA.

Esta es una captura de pantalla que muestra todos los paquetes disponibles en el PPA de controladores de gráficos de Ubuntu (para Ubuntu 18.10 Cosmic Cuttlefish, que es lo que estoy usando), incluidos los instalados en mi sistema:

No estoy seguro de por qué, pero algunos paquetes se enumeran varias veces para las fuentes de PPA (y solo para los repositorios de PPA). Esto es solo una cuestión de visualización y no interrumpe ninguna funcionalidad.

Lista todos los paquetes en un repositorio en Ubuntu, Debian o Linux Mint desde la línea de comandos

Enumerar todos los paquetes en un repositorio desde la línea de comandos en Ubuntu, Debian o Linux Mint es un poco complicado, pero sigue siendo bastante fácil.

Hay varias formas de hacer esto a través del comando, pero solo mencionaré una. El comando para listar todos los paquetes disponibles en repository-name es el siguiente:

grep ^Package /var/lib/apt/lists/repository-name*_Packages | awk '{print $2}' | sort -u

Explicaré cómo obtener el nombre del repositorio. descubre /var/list/apt/lists Y cómo usarlo. Antes de eso, explicaré lo que hace este comando:

  • grep ^Package ... busca líneas que comienzan con ^Package haciendo /var/lib/apt/lists/*_Packages archivo
  • awk '{print $2}' genera la segunda columna para cada línea (esto filtrará todo excepto el nombre del paquete)
  • sort -u ordena las líneas y solo genera líneas únicas (elimina los duplicados)

Lo primero que debes hacer es buscar el nombre del repositorio *_Packages Archivo de /var/lib/apt/lists/ . Puede listar todos los repositorios _Packages Archivos disponibles en /var/lib/apt/lists/ con un simple ls :

ls /var/lib/apt/lists/*_Packages


Dado que los resultados pueden ser muy largos, puede ejecutar la salida del comando a través de more para facilitar la lectura:

ls /var/lib/apt/lists/*_Packages | more

Si conoce parte del nombre del repositorio (estoy usando KEYWORD en el comando a continuación como el nombre), puede usar el ls Resultados con grep , así:

ls /var/lib/apt/lists/*_Packages | grep KEYWORD

Suponga que desea enumerar todos los paquetes en el repositorio oficial de Tor y sabe que el nombre del repositorio debe incluir tor . En ese caso, usaría este comando para averiguar _Packages Nombre de archivo de /var/lib/apt/lists/

ls /var/lib/apt/lists/*_Packages | grep tor

Con consultas rápidas, es posible que vea algunos repositorios no relacionados, pero aún es más fácil ver lo que está buscando. grep que listar todos los repositorios _Packages Archivos.

Ahora que sabes _Packages nombre de archivo, puede enumerar todos los paquetes disponibles en este repositorio ejecutando este comando:

grep ^Package /var/lib/apt/lists/some-repository-amd64_Packages | awk '{print $2}' | sort -u

Utilice el archivo con la arquitectura para la que desea enumerar todos los paquetes disponibles en este repositorio. El ejemplo anterior es para 64 bits (amd64 ), pero podrías usarlo i386 para 32 bits, etc.

No necesitas todo el repositorio _Packages Nombre del archivo. Volviendo a mi ejemplo de repositorio Tor, el _Packages El nombre de archivo para Tor es deb.torproject.org_torproject.org_dists_cosmic_main_binary-amd64_Packages . En ese caso, podría usar deb.torproject seguido de *_Packages para simplificar cosas como esta:

grep ^Package /var/lib/apt/lists/deb.torproject*_Packages | awk '{print $2}' | sort -u

Que genera lo siguiente:

deb.torproject.org-keyring
tor
tor-geoipdb

Otro ejemplo. Suponga que quiere todos los paquetes disponibles en Linux Uprising Oracle Java 11 PPA (ppa:linuxuprising/java ). Puede enumerarlos usando:

grep ^Package /var/lib/apt/lists/ppa.launchpad.net_linuxuprising_java*_Packages | awk '{print $2}' | sort -u

Que genera esto:

oracle-java11-installer
oracle-java11-set-default

Para usar esto con otros repositorios de PPA, reemplace linuxuprising con la primera parte del nombre del PPA y java con la segunda parte del nombre del PPA, y el comando enumerará todos los paquetes de ese PPA (tanto instalados como no instalados).

También puede enumerar todos los paquetes disponibles en todos los repositorios de PPA que haya agregado a su sistema usando:

grep ^Package /var/lib/apt/lists/ppa.launchpad.net*_Packages | awk '{print $2}' | sort -u

Para facilitar el acceso, puede marcar este comando usando el Administrador de marcadores para comandos de marcador (aunque se usa principalmente para buscar, HSTR también puede usar marcadores para comandos).


Debian
  1. Cómo enumerar todos los archivos instalados por el paquete DEB en Ubuntu/Debian Linux

  2. Cómo listar todos o paquetes específicos instalados en el sistema Debian/Ubuntu Linux

  3. Cómo instalar Pip en Ubuntu 18.04, Debian 9 y Linux Mint 19

  4. Cómo instalar VLC 2.0.6 en Ubuntu 12.10, Linux Mint 14

  5. Cómo enumerar todos los paquetes instalados en Linux

Cómo configurar source.list en Debian 9

Cómo instalar Visual Studio Code en Ubuntu 18.04 / Linux Mint 19 y Debian 9

Cómo agregar un repositorio a Debian

Cómo descargar paquetes con dependencias localmente en Ubuntu, Debian, Linux Mint, Pop OS

Cómo enumerar todos los paquetes actualizables en Ubuntu, Debian y Mint

Descargue los paquetes Deb de Spotify para instalarlos en Ubuntu, Debian y Linux Mint