GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Cómo ignorar u omitir dependencias al instalar paquetes en Ubuntu

Si está utilizando un administrador de paquetes APT para instalar varios paquetes en Ubuntu, Debian, Linux Mint, Elementary OS, MX Linux u otro Linux similar, puede ignorar o excluir algunas dependencias que no quieren estar en su sistema.

Por ejemplo, últimamente estaba escribiendo un artículo sobre la instalación del servidor web Lighttpd en Ubuntu 20.04, donde tuve que omitir una dependencia o paquete al instalar PHP y sus extensiones. Sin embargo, de forma predeterminada, al instalar esos paquetes, también instalará el servidor web apache2 que no hice porque ya tenía Lighttpd, por lo que quiero que el administrador de paquetes APT contenga ese único paquete Apache2 mientras instala los demás.

Este es el ejemplo:

sudo apt-get install php php-cgi php-cli php-fpm php-curl php-gd php-mysql php-mbstring zip descomprimir

The following additional packages will be installed:
apache2 apache2-bin apache2-data apache2-utils libapache2-mod-php7.4 libapr1
libaprutil1 libaprutil1-dbd-sqlite3 libaprutil1-ldap liblua5.2-0 libonig5
php-common php7.4 php7.4-cgi php7.4-cli php7.4-common php7.4-curl php7.4-fpm
php7.4-gd php7.4-json php7.4-mbstring php7.4-mysql php7.4-opcache
php7.4-readline
Suggested packages:
apache2-doc apache2-suexec-pristine | apache2-suexec-custom php-pear
The following NEW packages will be installed:
apache2 apache2-bin apache2-data apache2-utils libapache2-mod-php7.4 libapr1
libaprutil1 libaprutil1-dbd-sqlite3 libaprutil1-ldap liblua5.2-0 libonig5
php php-cgi php-cli php-common php-curl php-fpm php-gd php-mbstring
php-mysql php7.4 php7.4-cgi php7.4-cli php7.4-common php7.4-curl php7.4-fpm
php7.4-gd php7.4-json php7.4-mbstring php7.4-mysql php7.4-opcache
php7.4-readline
0 upgraded, 32 newly installed, 0 to remove and 43 not upgraded.
Need to get 9,280 kB/9,386 kB of archives.
After this operation, 42.7 MB of additional disk space will be used.
Do you want to continue? [Y/n]

En el resultado anterior, puede ver que el texto en color rojo es apache2, que se instalará automáticamente aunque no lo necesite. Por lo tanto, para excluir eso, usaré una bandera simple que es - Guión, menos o guión, como quieras llamarlo. Por lo tanto, independientemente de los paquetes que desee eliminar, debe usar este - al final de ellos mientras emite el comando.

Por ejemplo:

En el siguiente comando, quiero ignorar o excluir el paquete Apache2 como dependencia.

sudo apt-get install php php-cgi php-cli php-fpm php-curl php-gd php-mysql php-mbstring zip unzip

Entonces lo que haré, simplemente escribo el nombre del paquete con guión -. Por lo tanto, el comando anterior será así:

sudo apt-get install php php-cgi php-cli php-fpm php-curl php-gd php-mysql php-mbstring zip descomprimir apache2-

Si desea excluir todos los paquetes relacionados con el que desea excluir, simplemente proporcione asterisco Marcos. Digamos que en el comando anterior quiero ignorar todos los paquetes relacionados con apache2 entonces tengo que agregar apache2*- al final del comando con  * y - firmar.

Y esta vez la salida para el mismo comando será así:

Puede ver que esta vez el paquete Apache2 no está en la lista de NUEVOS paquetes que se van a instalar.

Reading state information... Done
Package 'apache2' is not installed, so not removed
unzip is already the newest version (6.0-25ubuntu1).
unzip set to manually installed.
zip is already the newest version (3.0-11build1).
zip set to manually installed.
The following additional packages will be installed:
apache2-bin libapache2-mod-php7.4 libapr1 libaprutil1
libaprutil1-dbd-sqlite3 libaprutil1-ldap liblua5.2-0 libonig5 php-common
php7.4 php7.4-cgi php7.4-cli php7.4-common php7.4-curl php7.4-fpm php7.4-gd
php7.4-json php7.4-mbstring php7.4-mysql php7.4-opcache php7.4-readline
Suggested packages:
apache2-doc apache2-suexec-pristine | apache2-suexec-custom php-pear
Recommended packages:
apache2
The following NEW packages will be installed:
apache2-bin libapache2-mod-php7.4 libapr1 libaprutil1
libaprutil1-dbd-sqlite3 libaprutil1-ldap liblua5.2-0 libonig5 php php-cgi
php-cli php-common php-curl php-fpm php-gd php-mbstring php-mysql php7.4
php7.4-cgi php7.4-cli php7.4-common php7.4-curl php7.4-fpm php7.4-gd
php7.4-json php7.4-mbstring php7.4-mysql php7.4-opcache php7.4-readline
0 upgraded, 29 newly installed, 0 to remove and 97 not upgraded.
Need to get 8,942 kB/9,048 kB of archives.
After this operation, 40.8 MB of additional disk space will be used.
Do you want to continue? [Y/n]

Conclusión

Por lo tanto, para ignorar las dependencias al instalar algún paquete usando el administrador de paquetes APT, solo necesitamos agregar un signo menos - al final de la dependencia, desea excluir.


Ubuntu
  1. Cómo enumerar los paquetes instalados en Ubuntu 20.04

  2. Cómo enumerar los paquetes instalados en Ubuntu

  3. Cómo instalar PHP 7.4/7.3/7.2 en Ubuntu 18.04/Ubuntu 16.04

  4. Cómo instalar PHP 7 en Ubuntu 14.04

  5. Cómo instalar PHP 7 en Ubuntu 15.04

Cómo eliminar paquetes huérfanos en Ubuntu

Cómo enumerar los paquetes instalados en Ubuntu 20.04

¿Cómo instalar GLPI en Ubuntu 20.04?

Cómo instalar OwnCloud en Ubuntu 18.04

Cómo instalar Joomla en Ubuntu 18.04

Cómo enumerar los paquetes instalados en Ubuntu 22.04