GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come ignorare o saltare le dipendenze durante l'installazione di pacchetti su Ubuntu

Se stai utilizzando un gestore di pacchetti APT per installare vari pacchetti su Ubuntu, Debian, Linux Mint, SO elementare, MX Linux o altri Linux simili, puoi ignorare o escludere alcune dipendenze che non vogliono essere sul tuo sistema.

Ad esempio, ultimamente stavo scrivendo un articolo sull'installazione del server web Lighttpd su Ubuntu 20.04, in cui dovevo saltare una dipendenza o un pacchetto durante l'installazione di PHP e delle sue estensioni. Tuttavia, per impostazione predefinita, durante l'installazione di quei pacchetti verrà installato anche il server web apache2 che non avevo perché avevo già Lighttpd, quindi voglio che il gestore di pacchetti APT contenga quel singolo pacchetto Apache2 durante l'installazione degli altri.

Ecco l'esempio:

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

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]

Nell'output sopra, puoi vedere il testo di colore rosso è apache2 che verrà installato automaticamente anche se non ne ho bisogno. Quindi, per escluderlo userò un semplice flag che è - Trattino, meno o trattino, come vuoi chiamarlo. Pertanto, qualunque pacchetto tu voglia rimuovere, devi usare questo - alla fine di essi durante l'esecuzione del comando.

Ad esempio:

Nel comando seguente, voglio ignorare o escludere il pacchetto Apache2 come dipendenza.

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

Quindi quello che farò, scrivo semplicemente il nome del pacchetto con trattino -. Pertanto, il comando sopra sarà così:

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

Se vuoi escludere tutti i pacchetti relativi a quello che vuoi escludere, assegna semplicemente asterisco marchio. Diciamo che nel comando precedente voglio ignorare tutti i pacchetti relativi a apache2 quindi devo aggiungere apache2*- alla fine del comando con  * e - firmare.

E questa volta l'output per lo stesso comando sarà questo:

Puoi vedere che questa volta il pacchetto Apache2 non è nell'elenco dei NUOVI pacchetti che verranno installati.

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]

Conclusione

Pertanto per ignorare le dipendenze durante l'installazione di alcuni pacchetti utilizzando il gestore di pacchetti APT, dobbiamo solo aggiungere un segno meno - alla fine della dipendenza, vuoi escludere.


Ubuntu
  1. Come elencare i pacchetti installati su Ubuntu 20.04

  2. Come elencare i pacchetti installati in Ubuntu

  3. Come installare PHP 7 su Ubuntu 14.04

  4. Come installare PHP 7 su Ubuntu 15.04

  5. Uno di Wacom che installa in Ubuntu 16.04?

Come rimuovere i pacchetti orfani su Ubuntu

Come elencare i pacchetti installati in Ubuntu 20.04

Come installare GLPI su Ubuntu 20.04?

Come installare OwnCloud su Ubuntu 18.04

Come installare Joomla su Ubuntu 18.04

Come elencare i pacchetti installati in Ubuntu 22.04