20 Perintah YUM untuk Manajemen Paket Linux


Dalam artikel ini, kita akan mempelajari cara menginstal, memperbarui, menghapus, menemukan paket, mengelola paket dan repositori pada sistem Linux menggunakan alat YUM (Yellowdog Updater Modified) yang dikembangkan oleh < kuat>RedHat.

Contoh perintah yang ditampilkan dalam artikel ini telah diuji secara praktis di server RHEL 8 kami, Anda dapat menggunakan materi ini untuk tujuan belajar, sertifikasi RHEL, atau sekadar mencari cara untuk menginstal paket baru dan menjaga sistem Anda tetap mutakhir.

Persyaratan dasar artikel ini adalah, Anda harus memiliki pemahaman dasar tentang perintah dan sistem operasi Linux yang berfungsi, di mana Anda dapat menjelajahi dan mempraktikkan semua perintah yang tercantum di bawah ini.

Apa itu YUM?

YUM (Yellowdog Updater Dimodifikasi) adalah baris perintah sumber terbuka serta alat manajemen paket berbasis grafis untuk RPM ( RedHat Package Manager) berbasis sistem Linux.

Hal ini memungkinkan pengguna dan administrator sistem untuk dengan mudah menginstal, memperbarui, menghapus atau mencari paket perangkat lunak pada suatu sistem. Ini dikembangkan dan dirilis oleh Seth Vidal di bawah GPL (Lisensi Publik Umum) sebagai sumber terbuka, yang berarti siapa pun boleh mengunduh dan mengakses kode untuk memperbaiki bug dan mengembangkan paket yang disesuaikan.

YUM menggunakan banyak repositori pihak ketiga untuk menginstal paket secara otomatis dengan menyelesaikan masalah ketergantungannya.

Pembaruan: Perintah yum diganti dengan perintah dnf, yang merupakan versi yum generasi berikutnya dan dianggap sebagai pengganti YUM di sebagian besar distribusi berbasis RPM baru.

1. Instal Paket dengan YUM

Untuk menginstal paket bernama Firefox, cukup jalankan perintah di bawah ini maka secara otomatis akan menemukan dan menginstal semua dependensi yang diperlukan untuk Firefox.

yum install firefox
Loaded plugins: fastestmirror
Dependencies Resolved

================================================================================================
 Package                    Arch        Version                    Repository            Size        
================================================================================================
Updating:
firefox                        i686        10.0.6-1.el6.centos     updates             20 M
Updating for dependencies:
 xulrunner                     i686        10.0.6-1.el6.centos     updates             12 M

Transaction Summary
================================================================================================
Install       0 Package(s)
Upgrade       2 Package(s)

Total download size: 32 M
Is this ok [y/N]: y
Downloading Packages:
(1/2): firefox-10.0.6-1.el6.centos.i686.rpm                                |  20 MB   01:10
(2/2): xulrunner-10.0.6-1.el6.centos.i686.rpm                              |  12 MB   00:52
------------------------------------------------------------------------------------------------
Total                                                           63 kB/s |  32 MB   02:04

Updated:
  firefox.i686 0:10.0.6-1.el6.centos

Dependency Updated:
  xulrunner.i686 0:10.0.6-1.el6.centos

Complete!

Perintah di atas akan meminta konfirmasi sebelum menginstal paket apa pun di sistem Anda. Jika Anda ingin menginstal paket secara otomatis tanpa meminta konfirmasi apa pun, gunakan opsi -y seperti contoh di bawah ini.

yum -y install firefox

2. Menghapus Paket dengan YUM

Untuk menghapus paket sepenuhnya dengan semua dependensinya, jalankan saja perintah berikut seperti yang ditunjukkan di bawah ini.

yum remove firefox
Loaded plugins: fastestmirror
Setting up Remove Process
Resolving Dependencies
--> Running transaction check
---> Package firefox.i686 0:10.0.6-1.el6.centos set to be erased
--> Finished Dependency Resolution

Dependencies Resolved

====================================================================================================
 Package                    Arch        Version                        Repository            Size        
====================================================================================================
Removing:
 firefox                    i686        10.0.6-1.el6.centos            @updates              23 M

Transaction Summary
====================================================================================================
Remove        1 Package(s)
Reinstall     0 Package(s)
Downgrade     0 Package(s)

Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Erasing        : firefox-10.0.6-1.el6.centos.i686                                                                                                                          1/1

Removed:
  firefox.i686 0:10.0.6-1.el6.centos

Complete!

Dengan cara yang sama, perintah di atas akan meminta konfirmasi sebelum menghapus sebuah paket. Untuk menonaktifkan konfirmasi konfirmasi cukup tambahkan opsi -y seperti yang ditunjukkan di bawah ini.

yum -y remove firefox

3. Memperbarui Paket menggunakan YUM

Misalkan Anda memiliki paket MySQL versi lama dan ingin memperbaruinya ke versi stabil terbaru. Jalankan saja perintah berikut ini maka secara otomatis akan menyelesaikan semua masalah ketergantungan dan menginstalnya.

yum update mysql
Loaded plugins: fastestmirror
Dependencies Resolved

============================================================================================================
 Package            Arch                Version                    Repository                    Size
============================================================================================================
Updating:
 vsftpd             i386                2.0.5-24.el5_8.1           updates                       144 k

Transaction Summary
============================================================================================================
Install       0 Package(s)
Upgrade       1 Package(s)

Total size: 144 k
Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Updating       : vsftpd                                                                     1/2
  Cleanup        : vsftpd                                                                     2/2

Updated:
  vsftpd.i386 0:2.0.5-24.el5_8.1

Complete!

4. Daftarkan Paket menggunakan YUM

Gunakan fungsi daftar untuk mencari paket tertentu dengan nama. Misalnya untuk mencari paket bernama OpenSSH, gunakan perintah.

yum list openssh
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirror.neu.edu.cn
 * epel: mirror.neu.edu.cn
 * extras: mirror.neu.edu.cn
 * rpmforge: mirror.nl.leaseweb.net
 * updates: mirror.nus.edu.sg
Installed Packages
openssh.i386                                       4.3p2-72.el5_6.3                                                                      installed
Available Packages                                 4.3p2-82.el5                                                                          base

Untuk membuat pencarian Anda lebih akurat, tentukan nama paket beserta versinya, jika Anda mengetahuinya. Misalnya untuk mencari versi paket OpenSSH-4.3p2 tertentu, gunakan perintah.

yum list openssh-4.3p2

5. Cari Paket menggunakan YUM

Jika Anda tidak ingat nama persis paket tersebut, gunakan fungsi pencarian untuk mencari semua paket yang tersedia agar sesuai dengan nama paket yang Anda tentukan. Misalnya untuk mencari semua paket yang cocok dengan kata tersebut.

yum search vsftpd
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirror.neu.edu.cn
 * epel: mirror.neu.edu.cn
 * extras: mirror.neu.edu.cn
 * rpmforge: mirror.nl.leaseweb.net
 * updates: ftp.iitm.ac.in
============================== Matched: vsftpd ========================
ccze.i386 : A robust log colorizer
pure-ftpd-selinux.i386 : SELinux support for Pure-FTPD
vsftpd.i386 : vsftpd - Very Secure Ftp Daemon

6. Dapatkan Informasi Paket menggunakan YUM

Katakanlah Anda ingin mengetahui informasi tentang suatu paket sebelum menginstalnya. Untuk mendapatkan informasi tentang suatu paket cukup jalankan perintah di bawah ini.

yum info firefox
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirror.neu.edu.cn
 * epel: mirror.neu.edu.cn
 * extras: mirror.neu.edu.cn
 * rpmforge: mirror.nl.leaseweb.net
 * updates: ftp.iitm.ac.in
Available Packages
Name       : firefox
Arch       : i386
Version    : 10.0.6
Release    : 1.el5.centos
Size       : 20 M
Repo       : updates
Summary    : Mozilla Firefox Web browser
URL        : http://www.mozilla.org/projects/firefox/
License    : MPLv1.1 or GPLv2+ or LGPLv2+
Description: Mozilla Firefox is an open-source web browser, designed for standards
           : compliance, performance and portability.

7. Cantumkan semua Paket yang Tersedia menggunakan YUM

Untuk membuat daftar semua paket yang tersedia di database Yum, gunakan perintah di bawah ini.

yum list | less

8. Daftarkan semua Paket yang Terinstal menggunakan YUM

Untuk membuat daftar semua paket yang terinstal pada suatu sistem, cukup jalankan perintah di bawah ini, ini akan menampilkan semua paket yang terinstal.

yum list installed | less

9. Yum Menyediakan Fungsi

Yum menyediakan fungsi yang digunakan untuk menemukan paket mana yang dimiliki file tertentu. Misalnya, jika Anda ingin mengetahui nama paket yang memiliki /etc/httpd/conf/httpd.conf.

yum provides /etc/httpd/conf/httpd.conf
Loaded plugins: fastestmirror
httpd-2.2.3-63.el5.centos.i386 : Apache HTTP Server
Repo        : base
Matched from:
Filename    : /etc/httpd/conf/httpd.conf

httpd-2.2.3-63.el5.centos.1.i386 : Apache HTTP Server
Repo        : updates
Matched from:
Filename    : /etc/httpd/conf/httpd.conf

httpd-2.2.3-65.el5.centos.i386 : Apache HTTP Server
Repo        : updates
Matched from:
Filename    : /etc/httpd/conf/httpd.conf

httpd-2.2.3-53.el5.centos.1.i386 : Apache HTTP Server
Repo        : installed
Matched from:
Other       : Provides-match: /etc/httpd/conf/httpd.conf

10. Periksa Pembaruan yang Tersedia menggunakan Yum

Untuk mengetahui berapa banyak paket terinstal di sistem Anda yang memiliki pembaruan, periksa untuk menggunakan perintah berikut.

yum check-update

11. Perbarui Sistem menggunakan Yum

Agar sistem Anda tetap mutakhir dengan semua pembaruan keamanan dan paket biner, jalankan perintah berikut. Ini akan menginstal semua patch terbaru dan pembaruan keamanan ke sistem Anda.

yum update

12. Cantumkan semua Paket Grup yang tersedia

Di Linux, sejumlah paket digabungkan ke dalam grup tertentu. Daripada menginstal paket individual dengan yum, Anda dapat menginstal grup tertentu yang akan menginstal semua paket terkait milik grup tersebut. Misalnya untuk membuat daftar semua grup yang tersedia, cukup jalankan perintah berikut.

yum grouplist
Installed Groups:
   Administration Tools
   DNS Name Server
   Dialup Networking Support
   Editors
   Engineering and Scientific
   FTP Server
   Graphics
   Java Development
   Legacy Network Server
Available Groups:
   Authoring and Publishing
   Base
   Beagle
   Cluster Storage
   Clustering
   Development Libraries
   Development Tools
   Eclipse
   Educational Software
   KDE (K Desktop Environment)
   KDE Software Development

13. Instal Paket Grup

Untuk menginstal grup paket tertentu, kami menggunakan opsi sebagai groupinstall. Misalnya, untuk menginstal “MySQL Database”, cukup jalankan perintah di bawah ini.

yum groupinstall 'MySQL Database'
Dependencies Resolved

=================================================================================================
Package								Arch      Version			 Repository        Size
=================================================================================================
Updating:
 unixODBC                           i386      2.2.11-10.el5      base              290 k
Installing for dependencies:
 unixODBC-libs                      i386      2.2.11-10.el5      base              551 k

Transaction Summary
=================================================================================================
Install       1 Package(s)
Upgrade       1 Package(s)

Total size: 841 k
Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing     : unixODBC-libs	1/3
  Updating       : unixODBC         2/3
  Cleanup        : unixODBC         3/3

Dependency Installed:
  unixODBC-libs.i386 0:2.2.11-10.el5

Updated:
  unixODBC.i386 0:2.2.11-10.el5

Complete!

14. Perbarui Paket Grup

Untuk memperbarui paket grup terinstal yang ada, jalankan saja perintah berikut seperti yang ditunjukkan di bawah ini.

yum groupupdate 'DNS Name Server'

Dependencies Resolved
================================================================================================================
 Package			Arch	        Version				Repository           Size
================================================================================================================
Updating:
 bind                           i386            30:9.3.6-20.P1.el5_8.2          updates              981 k
 bind-chroot                    i386            30:9.3.6-20.P1.el5_8.2          updates              47 k
Updating for dependencies:
 bind-libs                      i386            30:9.3.6-20.P1.el5_8.2          updates              864 k
 bind-utils                     i386            30:9.3.6-20.P1.el5_8.2          updates              174 k

Transaction Summary
================================================================================================================
Install       0 Package(s)
Upgrade       4 Package(s)

Total size: 2.0 M
Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Updating       : bind-libs            1/8
  Updating       : bind                 2/8
  Updating       : bind-chroot          3/8
  Updating       : bind-utils           4/8
  Cleanup        : bind                 5/8
  Cleanup        : bind-chroot          6/8
  Cleanup        : bind-utils           7/8
  Cleanup        : bind-libs            8/8

Updated:
  bind.i386 30:9.3.6-20.P1.el5_8.2                  bind-chroot.i386 30:9.3.6-20.P1.el5_8.2

Dependency Updated:
  bind-libs.i386 30:9.3.6-20.P1.el5_8.2             bind-utils.i386 30:9.3.6-20.P1.el5_8.2

Complete!

15. Hapus Paket Grup

Untuk menghapus atau menghapus grup terinstal yang ada dari sistem, cukup gunakan perintah di bawah ini.

yum groupremove 'DNS Name Server'

Dependencies Resolved

===========================================================================================================
 Package                Arch              Version                         Repository          Size
===========================================================================================================
Removing:
 bind                   i386              30:9.3.6-20.P1.el5_8.2          installed           2.1 M
 bind-chroot            i386              30:9.3.6-20.P1.el5_8.2          installed           0.0

Transaction Summary
===========================================================================================================
Remove        2 Package(s)
Reinstall     0 Package(s)
Downgrade     0 Package(s)

Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Erasing        : bind                                                   1/2
warning: /etc/sysconfig/named saved as /etc/sysconfig/named.rpmsave
  Erasing        : bind-chroot                                            2/2

Removed:
  bind.i386 30:9.3.6-20.P1.el5_8.2                                        bind-chroot.i386 30:9.3.6-20.P1.el5_8.2

Complete!

16. Daftar Repositori Yum yang Diaktifkan

Untuk mencantumkan semua repositori Yum yang diaktifkan di sistem Anda, gunakan opsi berikut.

yum repolist

repo id                     repo name                                            status
base                        CentOS-5 - Base                                      enabled:  2,725
epel                        Extra Packages for Enterprise Linux 5 - i386         enabled:  5,783
extras                      CentOS-5 - Extras                                    enabled:    282
mod-pagespeed               mod-pagespeed                                        enabled:      1
rpmforge                    RHEL 5 - RPMforge.net - dag                          enabled: 11,290
updates                     CentOS-5 - Updates                                   enabled:    743
repolist: 20,824

16. Cantumkan semua Repositori Yum yang Diaktifkan dan Dinonaktifkan

Perintah berikut akan menampilkan semua repositori yum yang diaktifkan dan dinonaktifkan pada sistem.

yum repolist all

repo id                     repo name                                            status
C5.0-base                   CentOS-5.0 - Base                                    disabled
C5.0-centosplus             CentOS-5.0 - Plus                                    disabled
C5.0-extras                 CentOS-5.0 - Extras                                  disabled
base                        CentOS-5 - Base                                      enabled:  2,725
epel                        Extra Packages for Enterprise Linux 5 - i386         enabled:  5,783
extras                      CentOS-5 - Extras                                    enabled:    282
repolist: 20,824

17. Instal Paket dari Repositori Tertentu

Untuk menginstal paket tertentu dari repositori tertentu yang diaktifkan atau dinonaktifkan, Anda harus menggunakan opsi --enablerepo di perintah yum Anda. Misal untuk Install paket PhpMyAdmin, jalankan saja perintahnya.

yum --enablerepo=epel install phpmyadmin

Dependencies Resolved
=============================================================================================
 Package                Arch           Version            Repository           Size
=============================================================================================
Installing:
 phpMyAdmin             noarch         3.5.1-1.el6        epel                 4.2 M

Transaction Summary
=============================================================================================
Install       1 Package(s)

Total download size: 4.2 M
Installed size: 17 M
Is this ok [y/N]: y
Downloading Packages:
phpMyAdmin-3.5.1-1.el6.noarch.rpm                       | 4.2 MB     00:25
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing : phpMyAdmin-3.5.1-1.el6.noarch             1/1
  Verifying  : phpMyAdmin-3.5.1-1.el6.noarch             1/1

Installed:
  phpMyAdmin.noarch 0:3.5.1-1.el6

Complete!

18. Yum Shell Interaktif

Utilitas Yum menyediakan shell khusus tempat Anda dapat menjalankan banyak perintah.

yum shell
Loaded plugins: fastestmirror
Setting up Yum Shell
> update httpd
Loading mirror speeds from cached hostfile
 * base: mirrors.sin3.sg.voxel.net
 * epel: ftp.riken.jp
 * extras: mirrors.sin3.sg.voxel.net
 * updates: mirrors.sin3.sg.voxel.net
Setting up Update Process
>

19. Bersihkan Yum Cache

Secara default yum menyimpan semua data paket yang mengaktifkan repositori di /var/cache/yum/ dengan setiap subdirektori, untuk membersihkan semua file cache dari repositori yang diaktifkan, Anda perlu menjalankan perintah berikut secara teratur untuk bersihkan semua cache dan pastikan tidak ada ruang yang tidak diperlukan yang terpakai. Kami tidak ingin memberikan output dari perintah di bawah ini, karena kami ingin menyimpan data cache sebagaimana adanya.

yum clean all

20. Lihat Sejarah Yum

Untuk melihat semua transaksi sebelumnya dari perintah yum, cukup gunakan perintah berikut.

yum history

Loaded plugins: fastestmirror
ID     | Login user               | Date and time    | Action(s)      | Altered
-------------------------------------------------------------------------------
    10 | root               | 2012-08-11 15:19 | Install        |    3
     9 | root               | 2012-08-11 15:11 | Install        |    1
     8 | root               | 2012-08-11 15:10 | Erase          |    1 EE
     7 | root               | 2012-08-10 17:44 | Install        |    1
     6 | root               | 2012-08-10 12:19 | Install        |    2
     5 | root               | 2012-08-10 12:14 | Install        |    3
     4 | root               | 2012-08-10 12:12 | I, U           |   13 E<
     3 | root               | 2012-08-09 13:01 | Install        |    1 >
     2 | root               | 2012-08-08 20:13 | I, U           |  292 EE
     1 | System            | 2012-08-08 17:15 | Install        |  560
history list

Kami telah mencoba membahas semua perintah dasar hingga lanjutan yum dengan contohnya. Jika ada sesuatu yang berhubungan dengan perintah yum mungkin terlewat. Silakan perbarui kami melalui kotak komentar kami. Jadi, kami terus memperbaruinya berdasarkan masukan yang diterima.