📦 Package Management di Linux

Manajemen paket (Package Management) adalah cara standar di Linux untuk menginstal, memperbarui, dan menghapus software.
Dengan package manager, administrator tidak perlu mengompilasi program dari source, cukup mengambil dari repositori resmi.


🔹 Konsep Dasar

  • Package: file berisi aplikasi + metadata (dependency, versi, dll).
  • Repository: server yang menyimpan kumpulan package.
  • Package Manager: tool yang mengatur instalasi, update, upgrade, dan dependency.

Beberapa package manager populer di Linux:

  • apt → Debian, Ubuntu dan turunannya
  • yum → Red Hat, CentOS (lama)
  • dnf → Fedora, RHEL, CentOS Stream (pengganti yum)
  • snap → Ubuntu dan distro lain (paket universal, sandboxing)

🔹 apt (Advanced Package Tool) – Debian/Ubuntu

Update daftar paket

sudo apt update

Upgrade paket yang sudah terinstal

sudo apt upgrade

Instal paket baru

sudo apt install nginx

Hapus paket

sudo apt remove nginx

Hapus beserta konfigurasi

sudo apt purge nginx

Cari paket

apt search nginx

Lihat informasi paket

apt show nginx

🔹 yum (Yellowdog Updater, Modified) – RHEL/CentOS Lama

Catatan: Digantikan oleh dnf pada versi baru, tapi masih ada di RHEL/CentOS 7.

Update daftar paket

sudo yum check-update

Upgrade paket

sudo yum update

Instal paket

sudo yum install httpd

Hapus paket

sudo yum remove httpd

Cari paket

yum search httpd

Info paket

yum info httpd

🔹 dnf (Dandified Yum) – Fedora, RHEL, CentOS Stream

dnf adalah penerus yum dengan dependency management lebih baik.

Update repositori

sudo dnf check-update

Upgrade sistem

sudo dnf upgrade

Instal paket

sudo dnf install httpd

Hapus paket

sudo dnf remove httpd

Cari paket

dnf search httpd

Info paket

dnf info httpd

🔹 snap (Canonical Snap Packages)

snap adalah format paket universal (cross-distro), dikembangkan oleh Canonical (Ubuntu).
Setiap paket dijalankan terisolasi (sandbox).

Instal paket

sudo snap install hello-world

Jalankan aplikasi snap

hello-world

Cari paket

snap find docker

Daftar aplikasi snap terinstal

snap list

Update paket snap

sudo snap refresh

Hapus paket snap

sudo snap remove hello-world

✅ Best Practices

  • Selalu update repo sebelum install.
  • Gunakan upgrade rutin untuk patch keamanan.
  • Hapus paket yang tidak digunakan untuk mengurangi attack surface.
  • Untuk server production → gunakan repositori resmi (hindari repo tidak terpercaya).
  • Snap cocok untuk software modern/cross-distro, tapi hati-hati resource usage (sandbox lebih berat).

📌 Kesimpulan

  • Debian/Ubuntu: gunakan apt.
  • RHEL/CentOS lama: yum.
  • Fedora, RHEL baru, CentOS Stream: dnf.
  • Snap: paket universal, sering dipakai di Ubuntu untuk software desktop & modern apps.

Sebagai admin Linux, kuasai minimal apt dan dnf, karena dua inilah yang paling banyak dipakai di industri.