102.4 - Gestion de paquetes Debian: Ejercicios

Pregunta 1

Cual es la diferencia entre dpkg -r paquete y dpkg -P paquete?

a) -r desinstala y purga, -P solo desinstala b) -r desinstala conservando los archivos de configuracion, -P elimina todo incluyendo la configuracion c) No hay diferencia, ambos eliminan todo completamente d) -r marca el paquete para eliminacion futura, -P lo desinstala inmediatamente

Respuesta

b) -r desinstala conservando los archivos de configuracion, -P elimina todo incluyendo la configuracion

dpkg -r (remove) elimina los archivos del programa pero conserva los archivos de configuracion, permitiendo reinstalar el paquete y recuperar la configuracion anterior. El paquete aparecera con estado rc en dpkg -l. dpkg -P (purge) elimina todo: archivos del programa y archivos de configuracion. Los equivalentes con apt son apt remove y apt purge respectivamente.


Pregunta 2

Necesitas saber que paquete instalo el archivo /usr/bin/vim en tu sistema. Que comando usarias?

a) apt-file search /usr/bin/vim b) apt search vim c) dpkg -S /usr/bin/vim d) dpkg -L vim

Respuesta

c) dpkg -S /usr/bin/vim

dpkg -S busca entre los paquetes instalados en el sistema cual proporciona un archivo determinado. apt-file search tambien puede buscar archivos pero busca en todos los repositorios (incluso paquetes no instalados) y requiere tener su base de datos actualizada. apt search busca paquetes por nombre o descripcion, no por archivo. dpkg -L hace lo contrario: lista los archivos que pertenecen a un paquete, no busca a que paquete pertenece un archivo.


Pregunta 3

Cual es la diferencia entre apt update y apt upgrade?

a) apt update actualiza los paquetes instalados y apt upgrade descarga las listas de paquetes b) apt update descarga las listas de paquetes disponibles y apt upgrade actualiza los paquetes instalados c) Son equivalentes, ambos actualizan el sistema d) apt update solo actualiza el kernel y apt upgrade actualiza el resto

Respuesta

b) apt update descarga las listas de paquetes disponibles y apt upgrade actualiza los paquetes instalados

apt update descarga la informacion actualizada de que paquetes estan disponibles en los repositorios configurados en /etc/apt/sources.list. No instala ni actualiza nada. apt upgrade actualiza los paquetes instalados a su version mas reciente usando esas listas. Siempre se debe ejecutar apt update antes de apt upgrade. Existe tambien apt full-upgrade (equivalente a apt-get dist-upgrade) que puede eliminar paquetes obsoletos e instalar nuevas dependencias.


Pregunta 4

Has descargado un paquete .deb manualmente y al ejecutar dpkg -i paquete.deb falla por dependencias faltantes. Cual es la forma correcta de resolver el problema?

a) Ejecutar dpkg --fix-broken paquete.deb b) Ejecutar apt --fix-broken install o apt-get install -f c) Reinstalar el paquete con dpkg -i --force-depends paquete.deb d) Descargar e instalar manualmente cada dependencia con dpkg -i

Respuesta

b) Ejecutar apt --fix-broken install o apt-get install -f

Cuando dpkg -i falla por dependencias, el paquete queda en estado “parcialmente instalado”. Al ejecutar apt --fix-broken install (o apt-get install -f), apt descarga e instala automaticamente las dependencias faltantes de los repositorios y completa la instalacion. Una alternativa mas directa es usar apt install ./paquete.deb (con el prefijo ./), que resuelve dependencias automaticamente al instalar el archivo local.


Pregunta 5

En la estructura del archivo /etc/apt/sources.list, que significa el campo deb-src?

a) Repositorio de paquetes binarios de codigo cerrado b) Repositorio de codigo fuente de los paquetes c) Repositorio de seguridad para actualizaciones criticas d) Repositorio secundario de respaldo

Respuesta

b) Repositorio de codigo fuente de los paquetes

En una linea de sources.list, el primer campo indica el tipo: deb es para paquetes binarios compilados y deb-src es para el codigo fuente de los paquetes. Una linea completa tiene el formato: tipo URI distribucion componentes. Por ejemplo: deb http://archive.ubuntu.com/ubuntu jammy main restricted. Los componentes tipicos de Ubuntu son main (libre oficial), restricted (propietario soportado), universe (libre comunitario) y multiverse (no libre).


Pregunta 6

Que comando lista todos los archivos instalados por el paquete openssh-server?

a) dpkg -s openssh-server b) dpkg -S openssh-server c) dpkg -L openssh-server d) apt-file list openssh-server

Respuesta

c) dpkg -L openssh-server

dpkg -L (listfiles) muestra la lista completa de archivos que un paquete instalo en el sistema. dpkg -s muestra el estado e informacion del paquete (version, dependencias, descripcion). dpkg -S busca a que paquete pertenece un archivo especifico (operacion inversa). apt-file list tambien puede listar archivos de un paquete, pero busca en todos los repositorios y no solo en paquetes instalados, requiriendo ademas tener su base de datos actualizada.


Pregunta 7

Que hace el comando dpkg-reconfigure tzdata?

a) Reinstala el paquete tzdata desde el repositorio b) Elimina y vuelve a crear la configuracion de zona horaria por defecto c) Vuelve a ejecutar los scripts de configuracion post-instalacion del paquete tzdata d) Actualiza el paquete tzdata a la ultima version disponible

Respuesta

c) Vuelve a ejecutar los scripts de configuracion post-instalacion del paquete tzdata

dpkg-reconfigure re-ejecuta los scripts de configuracion post-instalacion de un paquete ya instalado, como si el paquete se estuviera configurando por primera vez. Es util para cambiar configuraciones interactivas como la zona horaria (tzdata), los idiomas del sistema (locales) o el teclado (keyboard-configuration). No confundir con dpkg --configure -a, que intenta completar la configuracion de paquetes que quedaron en estado parcialmente configurado.


Pregunta 8

En la salida de dpkg -l, un paquete aparece con el estado rc. Que significa?

a) El paquete esta instalado correctamente y configurado b) El paquete fue eliminado pero sus archivos de configuracion aun permanecen en el sistema c) El paquete esta retenido y no se actualizara d) El paquete tiene un error de configuracion que necesita reparacion

Respuesta

b) El paquete fue eliminado pero sus archivos de configuracion aun permanecen en el sistema

El estado rc se compone de dos letras: r (desired: Remove) indica que se solicito la eliminacion, y c (status: Config-files) indica que los archivos de configuracion siguen presentes. Esto ocurre cuando se usa dpkg -r o apt remove. Para eliminar completamente el paquete incluyendo la configuracion residual, se debe usar dpkg -P nombre_paquete o apt purge nombre_paquete.


Pregunta 9

Donde se almacenan los archivos .deb descargados por apt y que comando los elimina todos?

a) En /tmp/apt/ y se eliminan con apt remove --cache b) En /var/cache/apt/archives/ y se eliminan con apt clean c) En /var/lib/dpkg/cache/ y se eliminan con dpkg --clean d) En /usr/share/apt/downloads/ y se eliminan con apt autoclean

Respuesta

b) En /var/cache/apt/archives/ y se eliminan con apt clean

Los paquetes .deb descargados se almacenan en /var/cache/apt/archives/ y pueden ocupar mucho espacio con el tiempo. apt clean (o apt-get clean) elimina todos los .deb descargados. apt autoclean (o apt-get autoclean) es mas conservador: solo elimina los .deb de versiones obsoletas que ya no estan en los repositorios, conservando los de las versiones actuales.


Pregunta 10

Cual es la diferencia fundamental entre dpkg y apt como herramientas de gestion de paquetes?

a) dpkg trabaja con repositorios remotos y apt solo con archivos locales b) apt es de bajo nivel y dpkg de alto nivel c) dpkg gestiona paquetes individuales sin resolver dependencias, mientras que apt resuelve dependencias automaticamente d) dpkg solo funciona en Debian y apt funciona en cualquier distribucion

Respuesta

c) dpkg gestiona paquetes individuales sin resolver dependencias, mientras que apt resuelve dependencias automaticamente

dpkg es la herramienta de bajo nivel del sistema de paquetes Debian: instala y desinstala archivos .deb individuales pero no gestiona dependencias. Si un paquete requiere otro que no esta instalado, dpkg simplemente reporta el error. apt (y apt-get) es la herramienta de alto nivel que trabaja con repositorios, descarga paquetes y resuelve dependencias automaticamente. Internamente, apt utiliza dpkg para la instalacion final de los paquetes.

Pregunta 11

Que comando se utiliza para mostrar informacion detallada (version, dependencias, descripcion) de un paquete .deb que aun no esta instalado?

a) dpkg -s paquete.deb b) dpkg -I paquete.deb c) dpkg -L paquete.deb d) apt show paquete.deb

Respuesta

b) dpkg -I paquete.deb

dpkg -I (o dpkg --info) muestra la informacion de control de un archivo .deb sin instalarlo, incluyendo nombre, version, arquitectura, dependencias y descripcion. dpkg -s muestra informacion de paquetes ya instalados (consultando la base de datos local). dpkg -L lista los archivos de un paquete instalado. dpkg -c (o --contents) lista el contenido de un archivo .deb sin instalarlo.

Pregunta 12

Cual es la diferencia entre apt upgrade y apt full-upgrade?

a) apt upgrade actualiza el kernel y apt full-upgrade actualiza el resto b) apt upgrade nunca elimina paquetes ni instala nuevos, mientras que apt full-upgrade puede hacerlo para resolver dependencias c) apt full-upgrade solo actualiza paquetes criticos de seguridad d) No hay diferencia, son sinonimos

Respuesta

b) apt upgrade nunca elimina paquetes ni instala nuevos, mientras que apt full-upgrade puede hacerlo para resolver dependencias

apt upgrade actualiza los paquetes instalados pero si una actualizacion requiere eliminar un paquete o instalar uno nuevo, la omite. apt full-upgrade (equivalente a apt-get dist-upgrade) realiza una actualizacion mas agresiva, pudiendo eliminar paquetes obsoletos e instalar nuevos paquetes si es necesario para resolver conflictos de dependencias. Esto es util cuando hay cambios mayores de dependencias.

Pregunta 13

Que directorio contiene archivos de repositorios adicionales de terceros en el sistema APT?

a) /etc/apt/repos.d/ b) /etc/apt/sources.list.d/ c) /var/lib/apt/lists/ d) /etc/dpkg/repos/

Respuesta

b) /etc/apt/sources.list.d/

El directorio /etc/apt/sources.list.d/ contiene archivos adicionales de configuracion de repositorios, con extension .list o .sources. Cada archivo puede definir uno o mas repositorios de terceros (como Docker, Google Chrome, etc.). Esto permite organizar los repositorios de forma modular sin modificar el archivo principal /etc/apt/sources.list. /var/lib/apt/lists/ contiene las listas descargadas de paquetes disponibles.

Pregunta 14

Que componente del repositorio de Ubuntu contiene software libre mantenido por la comunidad?

a) main b) restricted c) universe d) multiverse

Respuesta

c) universe

En Ubuntu, universe contiene software libre mantenido por la comunidad (no oficialmente soportado por Canonical). main contiene software libre soportado oficialmente. restricted contiene controladores propietarios soportados. multiverse contiene software no libre (propietario). En Debian, los componentes son main (libre), contrib (libre que depende de no libre) y non-free (propietario).

Pregunta 15

Que comando configura paquetes que quedaron en estado parcialmente instalado o con configuracion pendiente?

a) apt —fix-broken install b) dpkg —configure -a c) dpkg-reconfigure -a d) apt reconfigure

Respuesta

b) dpkg —configure -a

dpkg --configure -a intenta completar la configuracion de todos los paquetes que quedaron en estado parcialmente configurado o pendiente de configuracion (por ejemplo, despues de un fallo durante la instalacion). apt --fix-broken install resuelve dependencias rotas instalando paquetes faltantes. dpkg-reconfigure re-ejecuta la configuracion de un paquete ya instalado correctamente (por ejemplo, para cambiar opciones interactivas).

Pregunta 16

Que comando permite buscar que paquete de los repositorios (incluso no instalado) contiene un archivo determinado?

a) dpkg -S /ruta/archivo b) apt search archivo c) apt-file search /ruta/archivo d) apt-cache showpkg archivo

Respuesta

c) apt-file search /ruta/archivo

apt-file search busca en todos los paquetes de los repositorios (instalados o no) cual contiene un archivo determinado. Requiere tener instalado el paquete apt-file y su base de datos actualizada con apt-file update. dpkg -S solo busca en paquetes actualmente instalados en el sistema. apt search busca paquetes por nombre o descripcion, no por archivos que contienen.

Pregunta 17

Que diferencia hay entre apt-get clean y apt-get autoclean?

a) clean elimina solo paquetes obsoletos, autoclean elimina todos b) clean elimina todos los .deb descargados, autoclean solo elimina los de versiones obsoletas c) clean limpia la cache y los logs, autoclean solo los logs d) No hay diferencia practica entre ambos

Respuesta

b) clean elimina todos los .deb descargados, autoclean solo elimina los de versiones obsoletas

apt-get clean (o apt clean) vacia completamente el directorio /var/cache/apt/archives/, eliminando todos los archivos .deb descargados. apt-get autoclean (o apt autoclean) es mas conservador: solo elimina los .deb de versiones que ya no estan disponibles en los repositorios, manteniendo los de versiones actuales. clean libera mas espacio pero requiere volver a descargar paquetes si se necesitan.

Pregunta 18

Que comando muestra las dependencias inversas de un paquete, es decir, que otros paquetes dependen de el?

a) apt-cache depends paquete b) apt-cache rdepends paquete c) dpkg -s paquete d) apt-cache show paquete

Respuesta

b) apt-cache rdepends paquete

apt-cache rdepends (reverse depends) muestra que paquetes dependen del paquete especificado. apt-cache depends muestra las dependencias del paquete (de que otros paquetes depende), que es la operacion inversa. dpkg -s muestra el estado e informacion del paquete. apt-cache show muestra informacion detallada como descripcion, version y dependencias.

Pregunta 19

Que contiene el directorio /var/lib/dpkg/ en un sistema Debian?

a) Los archivos .deb descargados de los repositorios b) La base de datos de dpkg con el estado de todos los paquetes conocidos c) Los scripts de configuracion de apt d) Los repositorios locales del sistema

Respuesta

b) La base de datos de dpkg con el estado de todos los paquetes conocidos

El directorio /var/lib/dpkg/ contiene la base de datos de dpkg, incluyendo: el archivo status (estado de todos los paquetes conocidos), available (lista de paquetes disponibles), y el subdirectorio info/ (scripts de control y archivos de configuracion de cada paquete). Esta base de datos es consultada por dpkg y apt para determinar que paquetes estan instalados.

Pregunta 20

Que comando se puede usar para instalar un archivo .deb local resolviendo automaticamente sus dependencias desde los repositorios?

a) dpkg -i paquete.deb b) apt install ./paquete.deb c) apt-get install paquete.deb d) dpkg —install —resolve paquete.deb

Respuesta

b) apt install ./paquete.deb

apt install ./paquete.deb (con el prefijo ./) instala un archivo .deb local y resuelve automaticamente sus dependencias desde los repositorios configurados. dpkg -i instala el paquete pero no resuelve dependencias. apt-get install paquete.deb (sin ./) buscaria un paquete con ese nombre en los repositorios. Alternativamente, se puede usar dpkg -i paquete.deb seguido de apt --fix-broken install.

Pregunta 21

Que comando se usa para instalar un paquete .deb individual con dpkg?

Respuesta

dpkg -i

dpkg -i paquete.deb (o dpkg --install paquete.deb) instala un archivo de paquete .deb en el sistema. Si faltan dependencias, dpkg reportara un error y dejara el paquete en estado parcialmente instalado. Para resolver las dependencias faltantes se puede ejecutar apt --fix-broken install.

Pregunta 22

Que comando elimina un paquete incluyendo todos sus archivos de configuracion con dpkg?

Respuesta

dpkg -P

dpkg -P paquete (o dpkg --purge paquete) elimina el paquete junto con todos sus archivos de configuracion. A diferencia de dpkg -r (remove), que conserva los archivos de configuracion, purge elimina todo. El equivalente con apt es apt purge paquete.

Pregunta 23

Que comando descarga la lista actualizada de paquetes disponibles desde los repositorios configurados?

Respuesta

apt update

apt update (o apt-get update) descarga la informacion actualizada de los paquetes disponibles desde los repositorios configurados en /etc/apt/sources.list y /etc/apt/sources.list.d/. No instala ni actualiza ningun paquete. Se debe ejecutar antes de apt upgrade o apt install para asegurar que se dispone de la informacion mas reciente.

Pregunta 24

Que comando busca a que paquete instalado pertenece un archivo determinado?

Respuesta

dpkg -S

dpkg -S /ruta/archivo (o dpkg --search) busca entre los paquetes instalados en el sistema cual proporciona el archivo especificado. Por ejemplo: dpkg -S /usr/bin/ssh devolvera openssh-client: /usr/bin/ssh. Solo busca entre paquetes instalados; para buscar en todos los repositorios se usa apt-file search.

Pregunta 25

Que comando se usa para volver a ejecutar los scripts de configuracion post-instalacion de un paquete ya instalado?

Respuesta

dpkg-reconfigure

dpkg-reconfigure paquete re-ejecuta los scripts de configuracion post-instalacion de un paquete ya instalado, permitiendo modificar configuraciones interactivas. Usos comunes: dpkg-reconfigure tzdata (zona horaria), dpkg-reconfigure locales (idiomas del sistema), dpkg-reconfigure keyboard-configuration (teclado). No debe confundirse con dpkg --configure -a, que completa la configuracion de paquetes que quedaron en estado pendiente.