Rocky Linux: memakai DNF untuk memasang dan memperbarui paket
DNF (Dandified YUM) adalah alat default di Rocky Linux untuk mencari, memasang, memperbarui, dan menghapus paket, serta mengelola riwayat transaksi. Sebelum menjalankan perintah, penting untuk memeriksa paket target dan daftar perubahan dependensi, dan pada server produksi, untuk mengklarifikasi repositori dan cakupan pembaruan sebelum menerapkan perubahan.
Versi dan Format Dasar DNF
Contoh berikut memakai antarmuka DNF 4. Karena implementasi dan keluaran dapat berbeda menurut versi Rocky Linux, periksa versi dan bantuan lokal terlebih dahulu. Format perintah yang umum adalah dnf [options] command [target].
dnf --version
dnf --help
Perintah kueri dapat dijalankan sebagai pengguna biasa, tetapi menginstal, menghapus, atau memperbarui paket yang mengubah sistem memerlukan hak istimewa administrator.
Mencari Paket dan Memeriksa Informasi
Mencari berdasarkan nama dan ringkasan
dnf search nginx
dnf info nginx
Pada DNF 4, search mencari nama dan ringkasan; search --all juga mencari deskripsi dan URL. info menunjukkan versi, arsitektur, repositori, dan deskripsi. Jika ada beberapa versi atau arsitektur dengan nama yang sama, periksa hasilnya dengan hati-hati.
Menemukan Paket yang Menyediakan File atau Perintah
dnf provides '*/semanage'
dnf provides /usr/bin/rsync
Pencarian bergantung pada repositori dan metadata yang tersedia dan tidak memasang paket yang ditemukan.
Jika Anda tidak mengetahui jalur yang tepat, Anda dapat menggunakan wildcard. Lebih aman untuk menempatkan pola dalam tanda kutip agar tidak diperluas terlebih dahulu oleh shell.
Menginstal dan Menginstal Ulang Paket
Baris pertama memasang paket; baris kedua adalah operasi terpisah untuk memasang ulang paket yang sudah ada. Jalankan hanya operasi yang dibutuhkan.
sudo dnf install nginx
sudo dnf reinstall nginx
install menyelesaikan ketergantungan yang diperlukan bersama dengan paket. reinstall menginstal ulang versi yang sama jika file paket rusak, tetapi ini bukan perintah yang memaksa mengatur ulang file konfigurasi yang diubah oleh administrator.
Versi yang sama harus masih tersedia agar reinstall berhasil. Perlakuan terhadap konfigurasi bergantung pada paket RPM; simpan konfigurasi dan periksa hasilnya. Paket terpasang tidak membuktikan layanan sudah dikonfigurasi atau berjalan.
Untuk RPM lokal, ganti ./example-package.rpm dengan jalur berkas nyata yang kompatibel dan berasal dari sumber tepercaya. DNF dapat mencari dependensi di repositori aktif, tetapi tidak menjamin RPM dari distribusi lain kompatibel.
sudo dnf install ./example-package.rpm
Memeriksa dan Menerapkan Pembaruan
Menanyakan Item yang Dapat Diperbarui
dnf check-update
dnf updateinfo list
dnf check-update dapat mengembalikan kode keluar 100 jika ada pembaruan yang tersedia. Jika skrip shell tidak membedakan ini dari kode kesalahan normal, skrip tersebut mungkin keliru menafsirkan status "pembaruan tersedia" sebagai kegagalan.
Pada DNF 4, 0 menunjukkan tidak ada pembaruan dan 1 menunjukkan kesalahan yang ditangani. updateinfo list menampilkan advis yang tersedia dari repositori; daftar kosong bukan bukti tidak ada kerentanan.
Memperbarui Semua atau Paket Tertentu
Pilih salah satu: baris pertama meminta pembaruan seluruh paket, sedangkan baris kedua menargetkan OpenSSL dan dapat tetap melibatkan dependensi. Tinjau ringkasan transaksi sebelum konfirmasi.
sudo dnf upgrade
sudo dnf upgrade openssl
Pembaruan kernel, pustaka C, dan layanan inti mungkin memerlukan reboot atau restart layanan. Di lingkungan produksi, siapkan rincian perubahan, waktu pemeliharaan, dan metode rollback terlebih dahulu.
Jangan memperlakukan dnf upgrade sebagai prosedur umum migrasi ke versi utama Rocky Linux lain.
Penghapusan paket dan membersihkan dependensi yang tidak diperlukan
Baris pertama meminta penghapusan Nginx. Baris kedua menampilkan kandidat pembersihan dan menjawab tidak pada konfirmasi; ini bukan langkah yang harus dijalankan bersamaan.
sudo dnf remove nginx
sudo dnf autoremove --assumeno
remove dapat mengikutsertakan paket lain yang bergantung pada target dan, tergantung konfigurasi, dependensi yang tidak lagi diperlukan. Pastikan untuk membaca daftar penghapusan di layar konfirmasi. autoremove --assumeno berguna untuk meninjau kandidat pembersihan tanpa benar-benar menghapusnya.
Mengelola daftar instalasi dan repositori
Melihat daftar paket
dnf list --installed
dnf list --available
dnf list --upgrades
Daftar menunjukkan paket terpasang, tersedia dan yang dapat diperbarui. Untuk inventaris yang lebih rinci, lihat cara memeriksa paket terpasang dengan DNF dan RPM. Filter konfigurasi dan repositori aktif dapat memengaruhi hasil.
Memeriksa status repositori
dnf repolist
dnf repolist --all
dnf repository-packages appstream list --available
appstream adalah ID contoh; periksa ID pada sistem dan sesuaikan. repolist menampilkan repositori aktif, sedangkan --all juga mencakup yang nonaktif.
Saat mengaktifkan repositori tambahan, Anda harus memverifikasi penyedia, kunci tanda tangan, cakupan dukungan, dan kemungkinan menggantikan paket dari repositori default. Untuk pemecahan masalah, Anda dapat memilih untuk mengecualikan atau mengaktifkan repositori tertentu hanya sekali.
Kedua perintah berikut tetap melakukan transaksi: baris pertama meminta pembaruan, baris kedua pemasangan. Ganti example-repo dan package-name, jalankan hanya baris yang diperlukan, dan gunakan --assumeno bila ingin meninjau tanpa mengonfirmasi. Pengaturan ini hanya untuk pemanggilan tersebut dan repositori harus sudah dikonfigurasi.
sudo dnf --disablerepo='example-repo' upgrade
sudo dnf --enablerepo='example-repo' install package-name
Periksa asal dan kunci tanda tangan saat terjadi kesalahan, jangan menonaktifkan verifikasi hanya untuk menyelesaikan pemasangan. Lihat referensi konfigurasi DNF.
Memeriksa riwayat transaksi dan meninjau rollback
Jalankan dua baris kueri terlebih dahulu dan ganti transaction_ID dengan ID sebenarnya. Baris terakhir mengubah paket dan hanya boleh dijalankan setelah memeriksa transaksi dan rencana pemulihan.
dnf history
dnf history info transaction_ID
sudo dnf history undo transaction_ID
history undo mungkin gagal jika repositori tidak lagi menyediakan versi sebelumnya yang diperlukan atau jika dependensi telah berubah setelah transaksi. Ini bukan fungsi cadangan yang mengembalikan basis data, konfigurasi, atau data aplikasi, jadi Anda perlu menyiapkan metode rollback operasional yang terpisah.
Perubahan skrip paket atau migrasi data mungkin memerlukan pemulihan tersendiri. Gunakan cadangan dan prosedur yang sudah diuji; setelah pembalikan, periksa versi, konfigurasi dan layanan.
Manajemen Cache dan Metadata
| Perintah | Tujuan |
|---|---|
dnf makecache |
Mengunduh atau memperbarui metadata repositori aktif. |
dnf clean metadata |
Menghapus metadata repositori yang tersimpan. |
dnf clean packages |
Menghapus file paket yang tersisa di cache. |
dnf clean all |
Membersihkan cache DNF, termasuk metadata dan paket. |
Tidak perlu secara rutin menjalankan clean all setiap kali terjadi kesalahan repositori. Pertama, memeriksa jaringan, waktu sistem, URL repositori, dan pesan kesalahan tanda tangan GPG membantu dalam mengidentifikasi penyebabnya.
Membersihkan cache tidak menghapus paket terpasang tetapi dapat memerlukan unduhan ulang. Cache pengguna biasa dan administrator dapat berbeda. Jangan menghapus basis data RPM atau berkas kunci untuk memaksa operasi.
Ringkasan Perintah yang Sering Digunakan
| Tujuan | Perintah |
|---|---|
| Cari | dnf search keyword |
| Periksa Informasi | dnf info package_name |
| Pasang | sudo dnf install package_name |
| Perbarui | sudo dnf upgrade |
| Hapus | sudo dnf remove package-name |
| Mencari paket penyedia berkas | dnf provides '*/filename' |
| Riwayat transaksi | dnf history |
| Daftar repositori | dnf repolist --all |
Ganti keyword, package_name, package-name dan filename dalam tabel dengan nilai yang sebenarnya.
Cara mengoperasikan dengan aman
- Sebelum menggunakan opsi konfirmasi otomatis, seseorang harus terlebih dahulu meninjau daftar instalasi/penghapusan yang disarankan oleh DNF.
- Untuk server penting, cadangkan data dan pengaturan sebelum memperbarui dan uji prosedur pemulihan.
- Verifikasi sumber file repositori dan kunci GPG, dan jangan biarkan repositori eksternal yang tidak perlu selalu diaktifkan.
- Beberapa server mengurangi perbedaan versi dengan menggunakan snapshot repositori yang sama atau prosedur otomatis yang diverifikasi.
Dokumen Referensi
Opsi terperinci dan status keluar untuk setiap perintah dapat ditemukan dalam dokumentasi referensi perintah resmi DNF.




