Trong bối cảnh Linux ngày càng phổ biến trong doanh nghiệp, việc triển khai ứng dụng trên nền tảng Linux đã mở rộng nhanh chóng. Không chỉ các ứng dụng quy mô lớn ở cấp enterprise, mà ngay cả ứng dụng desktop cũng đã được hỗ trợ mạnh mẽ trên Linux.
Để Linux tiến vào mainstream, cơ chế đóng gói (packaging) và phân phối (distribution) phần mềm phải được cải thiện. Trước đây, cách truyền thống là tải mã nguồn (source code) về rồi biên dịch (compile) tại chỗ. Tuy nhiên, cách này có nhiều hạn chế:
-
Với ứng dụng đơn giản, có thể tham khảo README hoặc forum để giải quyết dependency. Nhưng với ứng dụng phức tạp, việc này trở thành một quá trình rườm rà, dễ gây nản lòng cả những admin Linux dày dạn.
Package Management – Lời giải cho vấn đề cài đặt phần mềm
Cộng đồng Linux đã phát triển package management system để thay thế việc tự compile:
Lưu ý: Vì package đã được compile sẵn, nên cần chọn đúng package cho distribution và version của hệ điều hành. Ví dụ, gói dành cho Red Hat sẽ không dùng trực tiếp cho Ubuntu.
Cấu trúc chung của hệ thống Package Management
Hai định dạng phổ biến nhất hiện nay
-
RPM (Red Hat Package Manager): dùng trên Red Hat Enterprise Linux (RHEL), Fedora, CentOS, Rocky Linux, AlmaLinux.
Package Manager tiêu biểu
Cả YUM và APT đều có khả năng: