Lembar cheat manajer paket YUM pada CentOS dan RHEL

Pada artikel ini, kita akan melihat manajer paket Yum, yang memungkinkan Anda untuk mengontrol instalasi, menghapus dan memperbarui program (paket .RPM), secara otomatis menyelesaikan dependensi, dan mengelola repositori tambahan. Artikel tentang Yum ini terutama harus menarik sebagai lembar contekan untuk administrator Linux pemula..

Yum (Yellowdog Updater Dimodifikasi) adalah manajer paket konsol untuk distribusi Linux berdasarkan paket RPM. (RedHat Package Manager) Ini termasuk OS populer seperti RedHat, CentOS, Fedora, Oracle Linux, Scientific Linux.

Konten:

  • Yum: menginstal, memperbarui, dan menghapus paket
  • Yum: riwayat dan log paket menginstal / menghapus instalan
  • Opsi yum tambahan yang bermanfaat
  • File konfigurasi /etc/yum.conf
  • Plugin yum berguna
  • Menggunakan yum melalui proxy

Yum: menginstal, memperbarui, dan menghapus paket

Di mana untuk memulai? Mungkin, seperti dalam kasus lain, kami mulai dengan bantuan:

tolong yum - bantuan penuh untuk manajer paket yum

Membuka itu, saya akan menyoroti perintah utama:

yum bersih semuanya - bersihkan cache semua paket (biasanya digunakan jika ada masalah dengan yum).
yum makecache - buat kembali paket cache lagi.
yum repolist - menampilkan daftar repositori yang terhubung, hasilnya terlihat seperti ini:

Plugin yang dimuat: paling cepat berkecepatan cermin Memuat kecepatan dari cache hostfile * basis: mirror.fasthost.ru * ekstra: mirror.fasthost.ru * pembaruan: mirror.fasthost.ru repo id repo basis status nama repo / 7 / x86_64 CentOS-7 - Base 10.019 ekstra / 7 / x86_64 CentOS-7 - Ekstra 435 pembaruan / 7 / x86_64 CentOS-7 - Pembaruan 2.500 repolist: 12.954 

Saya hanya memiliki repositori CentOS-7 standar yang diinstal pada sistem saya: Basis, Ekstra dan Pembaruan.

daftar yum tersedia - daftar semua paket yang tersedia untuk instalasi.

daftar yum diinstal - daftar semua paket yang diinstal pada sistem.

kernel daftar yum - daftar paket yang merupakan bagian dari kernel Linux.

Anda dapat memeriksa apakah paket tertentu diinstal pada sistem Anda, misalnya, apache:

daftar yum memasang httpd

Plugin yang dimuat: paling cepat memuat kecepatan cermin dari hostfile cache * basis: mirror.fasthost.ru * ekstra: mirror.fasthost.ru * pembaruan: mirror.fasthost.ru Paket Terpasang httpd.x86_64 2.4.6-89.el7.centos.1 @ tanggal 

Anda dapat memperoleh informasi lebih rinci tentang paket tersebut, misalnya, kami akan mendapatkan data tentang paket MariaDB:

yum info mariadb

Untuk menginstal paket, gunakan perintah yum install. Untuk menginstal server web apache lakukan:

yum instal httpd

Jika Anda mendapatkan kesalahan saat yum Traceback (panggilan terakhir terakhir): thread.error: tidak dapat memulai utas baru, kemungkinan besar Anda tidak memiliki RAM yang cukup. Coba tambahkan RAM atau nonaktifkan plugins yum (di /etc/yum.conf, tentukan plugins = 0).

Sebelum menginstal paket, Anda dapat memeriksanya untuk dependensi dan paket yang diperlukan menggunakan perintah:

yum deplist httpd

Jika Anda ingin menginstal beberapa paket, tetapi lupa nama lengkapnya, Anda dapat menggunakan wildcard *. Sebagai contoh:

yum instal epel- *

Plugin yang dimuat: tercepat dengan kecepatan cermin Memuat dari cache hostfile * basis: centos.fasthost.ru * ekstra: centos.fasthost.ru * pembaruan: centos.fasthost.ru Menyelesaikan Dependensi -> Menjalankan cek transaksi ---> Paket epel-release .noarch 0: 7-11 akan diinstal -> Resolusi Ketergantungan Selesai Instal 1 Paket Total ukuran unduhan: 15 k Ukuran terinstal: 24 k Apakah ini ok [y / d / N]: 

Jika Anda memasukkan:

yum instal epel

Tidak ada paket epel yang tersedia. Kesalahan: Tidak ada hubungannya 

Sayangnya, paket itu tidak terlihat.

Yum memungkinkan Anda untuk menginstal beberapa paket sekaligus:

yum instal httpd php wget rsyslog

Instal ulang paket:

yum instal ulang proftpd

Untuk menghapus paket yang diinstal menggunakan yum, gunakan parameter hapus:

yum hapus httpd

Tetapi sebelum mencopot paket apa pun, disarankan untuk terlebih dahulu memeriksanya untuk dependensi (ada paket yang penghapusannya memerlukan penghapusan banyak paket lain, yang, sebagai akibatnya, menyebabkan sistem tidak dapat dioperasikan):

yum deplist proftpd

Temukan paket dengan nama atau deskripsi:

yum cari nginx

Dengan menggunakan opsi yang disediakan, Anda dapat menemukan paket yang berisi file tertentu, misalnya:

yum menyediakan * / squid.conf

Anda dapat memperbarui semua paket yang diinstal menggunakan perintah:

pembaruan yum

Anda hanya dapat memperbarui paket tertentu dengan menyebutkan namanya:

yum perbarui php

Periksa apakah pembaruan yang tersedia untuk sistem dapat dilakukan dengan perintah:

yum periksa-perbarui

Dapatkan informasi tentang pembaruan keamanan yang tersedia:

yum perbarui keamanan daftar

Ada kasus ketika, setelah memperbarui paket atau layanan, masalah muncul. Misalnya, setelah memperbarui php, situs Anda telah berhenti berfungsi. Anda dapat mengembalikan versi paket sebelumnya dengan memutar kembali paket yang diinstal melalui yum:

yum perl downgrade

Saya juga ingin menarik perhatian Anda pada instalasi grup paket melalui grouplist. Repositori memiliki kelompok paket yang telah ditentukan sebelumnya dengan serangkaian program yang berbeda. Anda dapat membuat daftar grup yang tersedia:

daftar grup yum

Pertimbangkan contoh lembar grup "Web Web". Dapatkan informasi ke grup dan paket di dalamnya:

yum groupinfo "Server Web Dasar"

Saat memeriksa, kami melihat bahwa satu set paket dan layanan akan diinstal untuk server web.

Dan lembar grup lain yang bermanfaat, Alat Administrasi Sistem:

yum groupinfo "Alat Administrasi Sistem"

Seperti yang Anda lihat, lembar ini berisi paket-paket yang akan berguna untuk pemantauan dan debugging..

Anda dapat mengatur daftar grup dengan perintah:

yum groupinstall "Alat Administrasi Sistem"

Paket yang diinstal akan berada di blok terpisah "Grup Terpasang":

Yum: riwayat dan log paket menginstal / menghapus instalan

Anda dapat menampilkan informasi tentang riwayat instalasi paket yum (daftar transaksi) menggunakan perintah:

daftar riwayat yum

Output terdiri dari 5 kolom, yang pertama menampilkan ID transaksi dimana Anda dapat melihat semua informasi (paket yang diinstal, dependensi):

Sebagai contoh:

info sejarah yum 10

Selain itu, Anda dapat membatalkan transaksi ini dengan perintah:

yum history undo 10

Dalam kasus saya, 4 paket akan dihapus:

Juga, semua informasi tentang riwayat instalasi / penghapusan paket oleh manajer yum dapat dilihat di log /var/log/yum.log:
cat /var/log/yum.log

Sep 03 11:06:38 Diinstal: mpfr-3.1.1-4.el7.x86_64 Sep 03 11:06:38 Diinstal: libmpc-1.0.1-3.el7.x86_64 Sep 03 11:06:38 Diinstal: libquadmath -4.8.5-36.el7_6.2.x86_64 Sep 03 11:06:38 Terpasang: apr-1.4.8-3.el7_4.1.x86_64 Sep 03 11:06:38 Terpasang: m4-1.4.16-10 .el7.x86_64 Sep 03 11:06:38 Terpasang: apr-util-1.5.2-6.el7.x86_64 Sep 03 11:06:38 Terpasang: unzip-6.0-19.el7.x86_64 Sep 03 11:06: 38 Terpasang: patch-2.7.1-10.el7_5.x86_64 Sep 03 11:06:38 Terpasang: 1: perl-Error-0.17020-2.el7.noarch Sep 03 11:06:38 Terpasang: boost-system-1.53 .0-27.el7.x86_64 Sep 03 11:06:38 Diinstal: perl-Thread-Queue-3.02-2.el7.noarch Sep 03 11:06:38 Diinstal: avahi-libs-0.6.31-19.el7 .x86_64 Sep 03 11:06:38 Diinstal: boost-thread-1.53.0-27.el7.x86_64 Sep 03 11:06:38 Diinstal: zip-3.0-11.el7.x86_64 Sep 03 11:06:38 Diinstal: boost-thread-1.53.0-27.el7.x86_64 : libgfortran-4.8.5-36.el7_6.2.x86_64 Sep 03 11:06:39 Terpasang: cpp-4.8.5-36.el7_6.2.x86_64 

Opsi yum tambahan yang bermanfaat

Utilitas yum memiliki beberapa opsi berguna yang sering Anda gunakan ketika mengelola paket. Agar tidak mengambil tindakan apa pun saat menginstal atau menghapus paket setelah memasukkan perintah, Anda dapat menggunakan opsi -y, misalnya:

pembaruan yum -y yum instal httpd -y

Untuk menjawab tidak saat diminta, Anda perlu menentukan opsi:

--assumeno

Gunakan yum tanpa plugin atau nonaktifkan plugin tertentu:

--noplugins

--disableplugin = tercepatmirror

Aktifkan plugin yang dinonaktifkan:

--enableplugin = tercepatmirror

Aktifkan repositori yang dinonaktifkan:

pembaruan yum -enablerepo = atom

Nonaktifkan repositori spesifik:

pembaruan yum -disablerepo = atom

File konfigurasi /etc/yum.conf

File konfigurasi yum - /etc/yum.conf.

Parameter utama file konfigurasi:

cachedir- cache paket lokal (secara default / var / cache / yum)

file log- path ke file log yum

obsoletes - tingkatkan atau tidak, paket usang (1-ya, 0-tidak)

gpgcheck - verifikasi tanda tangan paket sebelum instalasi (1-ya, 0-tidak)

keepcache - penyimpanan cache (1-ya, 0-tidak)

cachedir - direktori untuk menyimpan cache (default / var / cache / yum)

tingkat debug - tingkat debug dari 1 hingga 10

plugin - aktifkan plugin yum (1-ya, 0-tidak)

bugtracker_url - tautan tempat kesalahan yum akan didaftarkan

installonly_limit - jumlah versi maksimum yang dapat diinstal untuk satu paket.

Plugin yum berguna

Untuk apa plugin yum? Seperti di tempat lain, sederhanakan pekerjaan kami.

Beberapa plugin populer dan deskripsinya:

yum-plugin-tercepatmirror - sebuah plugin untuk mengukur kecepatan mirror dan menyediakan yang tercepat untuk menginstal paket.

yum-plugin-security - plugin yang menyediakan daftar pembaruan yang hanya terkait dengan keamanan sistem.

yum-plugin-keys - memungkinkan Anda untuk bekerja dengan tombol kunci, kunci-info, kunci-data, kunci-hapus

Direktori tempat semua plugin / etc / yum / disimpan

yum-plugin-versionlock - memungkinkan Anda untuk memblokir memperbarui paket yang ditentukan

Untuk daftar plugin yum yang tersedia, lakukan:

yum search yum-plugin

=================================================== ====================== N / S cocok: yum-plugin ===================== =================================================== PackageKit-yum-plugin.x86_64: Beri tahu PackageKit untuk memeriksa pembaruan ketika yum keluar dari fusioninventory-agent-yum-plugin.noarch: Tanyakan agen FusionInventory untuk mengirim inventaris ketika yum keluar dari kabi-yum-plugins.noarch: CentOS Linux kernel ABI yum plugin yum-plugin-aliases.noarch: plugin Yum untuk mengaktifkan filter alias yum-plugin-auto-update-debug-info.noarch: Yum plugin untuk mengaktifkan pembaruan otomatis untuk menginstal paket debuginfo yum-plugin-changelog.noarch: Yum plugin untuk melihat changelog paket sebelum / setelah memperbarui yum-plugin-copr.noarch: yum plugin untuk menambahkan perintah copr yum-plugin-tercepatmirror.noarch: Yum plugin yang memilih repositori tercepat dari mirrorlist yum-plugin-filter-data.noarch: Yum plugin untuk daftar filter berdasarkan data paket yum-plugin-fs-snapshot.noarch: plugin Yum untuk secara otomatis snapshot f Anda ilesystems selama pembaruan yum-plugin-keys.noarch: Yum plugin untuk menangani kunci penandatanganan yum-plugin-list-data.noarch: Yum plugin untuk mendaftar data paket agregat yum-plugin-local.noarch: Yum plugin untuk secara otomatis mengelola lokal repo. paket yang diunduh yum-plugin-merge-conf.noarch: Plugin Yum untuk menggabungkan perubahan konfigurasi saat menginstal paket yum-plugin-ovl.noarch: Plugin Yum untuk mengatasi masalah overlayfs yum-plugin-post-transaksi-tindakan.narch: Yum plugin untuk menjalankan perintah arbitrer ketika pkg tertentu dijalankan pada yum-plugin-priority.noarch: plugin untuk memberikan prioritas pada paket dari repo yum-plugin-protectbase.noarch yang berbeda: plugin Yum untuk melindungi paket dari repositori tertentu. yum-plugin-ps.noarch: Yum plugin untuk melihat proses, sehubungan dengan paket yum-plugin-remove-with-leaves.noarch: Yum plugin untuk menghapus dependensi yang tidak lagi digunakan karena penghapusan yum-plugin-rpm -warm-cache.noarch: Plugin Yum untuk mengakses file rpmdb lebih awal untuk menghangatkan akses ke db yum-plugin-show-leaves.noarch: Plugin Yum yang menampilkan paket daun yang baru diinstal yum-plugin-tmprepo.noarch: plugin Yum untuk menambahkan repositori sementara yum-plugin-tsflags.noarch: plugin Yum untuk menambahkan tsflags dengan opsi commandline yum-plugin-upgrade-helper.noarch: plugin Yum untuk membantu meningkatkan ke versi distribusi berikutnya yum-plugin-memverifikasi.narch: Yum plugin untuk menambahkan perintah verifikasi, dan opsi yum-plugin-versionlock.noarch: Plugin Yum untuk mengunci paket tertentu agar tidak diperbarui 

Anda dapat menginstal plugin yang dipilih dengan perintah install yum, seperti paket lainnya:

yum instal yum-plugin-changelog

yum -y install yum-versionlock

Untuk memblokir memperbarui paket melalui plugin, lakukan:

yum versionlock nginx

Daftar paket yang diblokir:

yum daftar versi kunci

Hapus paket dari yang diblokir:

yum version, hapus nginx

Jika suatu saat Anda tidak perlu menggunakan plugin tertentu, Anda dapat menonaktifkannya dengan menambahkan awalan ketika yum dipanggil:

--disableplugin = tercepatmirror

Atau nonaktifkan semua plugin yang terpasang di sistem:

--noplugins

Menggunakan yum melalui proxy

Yum menggunakan protokol HTTP / 1.1 untuk bekerja dengan repositori program. Jika server Linux Anda hanya memiliki akses Internet melalui server proxy HTTP, Anda dapat menentukan nama server proxy di file konfigurasi /etc/yum.con di bagian [utama]:

proxy = http: // proxyservername: 3128

Jika server proxy memerlukan otorisasi, tambahkan baris:

proxy_proxy_username = pengguna
proxy_password = lulus

Untuk memeriksa yum melalui server proxy, gunakan perintah

yum bersih semua && yum cari nginx

Untuk verifikasi, saya tentukan server proxy publik dari Jerman dan selama instalasi, plugin paling cepat bekerja, menemukan mirror yang kecepatannya lebih tinggi:

Jika Anda perlu menggunakan proxy hanya untuk beberapa repositori, Anda tidak perlu mengedit file /etc/yum.conf, dan tentukan pengaturan proxy di file konfigurasi repositori /etc/yum.repos.d/your_config.repo.

Jadi, dalam artikel ini, kami melihat fitur-fitur dasar manajer rpm untuk paket yum di Linux CentOS / RHEL. Dalam artikel berikutnya, kita akan berbicara lebih banyak tentang mengelola repositori di Yum. Temui, coba dan gunakan yum dalam pekerjaan Anda.