GNU/Linux >> Belajar Linux >  >> Ubuntu

Cara mengabaikan atau melewati dependensi saat menginstal paket di Ubuntu

Jika Anda menggunakan manajer paket APT untuk menginstal berbagai paket di Ubuntu, Debian, Linux Mint, OS Dasar, MX Linux, atau Linux serupa lainnya, maka Anda dapat mengabaikan atau mengecualikan beberapa dependensi yang tidak ingin berada di sistem Anda.

Sebagai contoh, akhir-akhir ini saya membuat artikel tentang instalasi web server Lighttpd di Ubuntu 20.04, di mana saya harus melewati satu dependensi atau paket saat menginstal PHP dan ekstensinya. Namun, secara default, saat menginstal paket-paket itu, itu juga akan menginstal server web Apache2 yang tidak saya lakukan karena saya sudah memiliki Lighttpd, jadi saya ingin manajer paket APT menyimpan paket Apache2 tunggal itu saat menginstal yang lain.

Ini contohnya:

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]

Pada output di atas, Anda dapat melihat teks warna Merah adalah apache2 yang akan diinstal secara otomatis meskipun saya tidak membutuhkannya. Jadi, untuk mengecualikan itu saya akan menggunakan flag sederhana yaitu - Tanda hubung, minus atau tanda hubung, apa pun yang Anda ingin menyebutnya. Oleh karena itu, paket apa pun yang ingin Anda hapus, Anda harus menggunakan - . ini di akhir mereka saat mengeluarkan perintah.

Misalnya :

Pada perintah berikut, saya ingin mengabaikan atau mengecualikan paket Apache2 sebagai dependensi.

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

Lalu yang akan saya lakukan, saya cukup mengetikkan nama paket dengan tanda hubung -. Oleh karena itu, perintah di atas akan menjadi seperti ini:

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

Jika Anda ingin mengecualikan semua paket yang terkait dengan paket yang ingin Anda kecualikan, cukup berikan tanda bintang tanda. Katakanlah pada perintah di atas saya ingin mengabaikan semua paket yang terkait dengan apache2 maka saya harus menambahkan apache2*- di akhir perintah dengan  * dan - tanda.

Dan kali ini output untuk perintah yang sama akan seperti ini:

Anda dapat melihat bahwa kali ini paket Apache2 tidak ada dalam daftar paket BARU yang akan diinstal.

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]

Kesimpulan

Oleh karena itu untuk mengabaikan dependensi saat menginstal beberapa paket menggunakan pengelola paket APT, kita hanya perlu menambahkan tanda minus - di akhir ketergantungan, Anda ingin mengecualikan.


Ubuntu
  1. Cara Mendaftar Paket yang Diinstal di Ubuntu

  2. Cara Menginstal PHP 7.4 / 7.3 / 7.2 di Ubuntu 18.04 / Ubuntu 16.04

  3. Instalasi Satu Dengan Wacom Di Ubuntu 16.04?

  1. Cara Mendaftar Paket yang Diinstal di Ubuntu 20.04

  2. Cara Menginstal PHP 7 di Ubuntu 14.04

  3. Cara Menginstal PHP 7 di Ubuntu 15.04

  1. Cara Mendaftar Paket yang Diinstal di Ubuntu

  2. Cara Memperbaiki Paket Rusak di Ubuntu

  3. Cara Menginstal Paket RPM di Ubuntu