9 trình quản lý gói Linux phổ biến nhất hiện nay

Điểm chung giữa tất cả các bản phân phối Linux là chúng cần có khả năng cài đặt các gói phần mềm mới vào hệ thống. Tùy thuộc vào bản phân phối, các trình quản lý gói khác nhau có sẵn, cho phép người dùng cài đặt, quản lý và xóa các gói dễ dàng và nhanh chóng. Trong bài viết này, Quantrimang.com sẽ thảo luận về các trình quản lý gói có sẵn khác nhau, chúng có thể được sử dụng cho bản phân phối nào và điều gì làm cho mỗi trình quản lý gói trở nên đặc biệt. Bài viết sẽ bao gồm các trình quản lý gói dựa trên Debian, trình quản lý gói dựa trên RedHat Enterprise Linux (RHEL) và những trình quản lý gói được thiết kế tùy chỉnh khác.

Quản lý gói là gì?

Trình quản lý gói là tập hợp những công cụ phần mềm tự động hóa quá trình cài đặt, cập nhật, định cấu hình và xóa ứng dụng.

Các ứng dụng trong Linux có dạng gói (package). Gói là một file chứa phần mềm mong muốn, cùng với tất cả các dependency của phần mềm nói trên. Lý do các gói được sử dụng là vì nó đơn giản hóa việc cài đặt phần mềm Linux. Đây là một cách tiêu chuẩn được nhà phát triển sử dụng để cung cấp và bảo trì phần mềm, cũng như cho phép người dùng cuối cài đặt và cập nhật phần mềm. Điều này giúp cho Linux dễ sử dụng hơn nhiều so với trước kia, khi mà hầu hết mọi thứ phải được biên dịch bởi người dùng cuối và thường tạo ra sự cố.

Trình quản ly gói Linux

Để biết rõ hơn về cách thức hoạt động của trình quản lý gói Linux, vui lòng tham khảo bài viết: Giải mã cách thức hoạt động của trình quản lý gói và cài đặt phần mềm trên Linux.

Những trình quản lý gói dựa trên Debian

Trình quản lý gói dpkg

dpkg

Ubuntu và Debian được coi là một trong những hệ điều hành dựa trên Linux được sử dụng rộng rãi nhất trên thị trường hiện nay. 2 hệ điều hành này có chung trình quản lý gói, với hệ thống quản lý gói cấp thấp nhất là dpkg, viết tắt của Debian Package. Dpkg là một phần mềm quản lý gói cơ bản, với những công cụ để cài đặt, gỡ bỏ và xây dựng các gói.

Tuy nhiên, dpkg lại thiếu những tính năng nâng cao như tải xuống các gói từ Internet hoặc cài đặt dependency tự động. Việc có thể làm tải xuống các gói từ Internet rất hữu ích, vì nó cho phép người dùng thêm kho lưu trữ cho các gói, giúp tăng đáng kể việc lựa chọn phần mềm có thể dễ dàng cài đặt trên hệ thống. Quá trình cài đặt phần mềm cũng được hợp lý hóa, bằng cách có thể dễ dàng tìm và cài đặt gói chỉ với một lệnh duy nhất.

Trình quản lý gói APT

APT

Đây là nơi mà các frontend như aptaptitude phát huy tác dụng. APT, viết tắt của Advanced Package Tool, có chức năng nâng cao hơn nhiều khi so sánh với dpkg. APT cũng có thể cài đặt, gỡ bỏ và xây dựng các gói - tuy nhiên, chức năng của nó không chỉ dừng lại ở đó. APT có thể tự động cập nhật gói, tự động cài đặt các dependency cũng như tải xuống những gói bạn cần từ Internet. Đây là một trong những trình quản lý gói phổ biến nhất được cài đặt trên các bản phân phối hiện đại. APT được cài đặt sẵn trên Ubuntu, Debian và hầu hết các hệ điều hành dựa trên Debian khác.

Trình quản lý gói Aptitude

Aptitude

Aptitude rất giống với APT và cung cấp hầu hết các chức năng tương tự như trình quản lý gói này. Nhưng, Aptitude còn cung cấp một vài tính năng bổ sung, chẳng hạn như nâng cấp an toàn, cho phép người dùng nâng cấp các gói mà không cần xóa những gói hiện có khỏi hệ thống. Tính năng giữ nguyên gói cũng có sẵn, điều này ngăn các gói nhất định được nâng cấp tự động.

Cả hai trình quản lý gói này thực sự sử dụng dpkg cho các hoạt động cơ bản và chỉ sử dụng phần mềm của riêng chúng để tải xuống và quản lý gói.

Những trình quản lý gói dựa trên RedHat Enterprise Linux (RHEL)

Trình quản lý gói RPM

RPM

RedHat và CentOS là một trong những hệ điều hành được sử dụng rộng rãi nhất và dễ dàng được tìm thấy trên các máy chủ hiện nay. Phần mềm quản lý gói cơ bản được tìm thấy trên các hệ thống này là RPM, viết tắt của Red Hat Package Manager. Trình quản lý gói này cũng thực hiện những hoạt động cơ bản như cài đặt và gỡ bỏ các gói, và giống như dpkg, RPM cũng không thể quản lý các gói hoặc cài đặt chúng trực tiếp từ Internet.

Trình quản lý gói YUM

YUM

Giống như các hệ điều hành dựa trên Debian khác, hệ điều hành RHEL cũng có phần mềm riêng để quản lý gói. YUM, viết tắt của Yellow Dog Updater, là lựa chọn phổ biến nhất dưới dạng RPM frontend. YUM mở ra nhiều chức năng hơn cho các file RPM thông qua những kho lưu trữ, khả năng theo dõi những gì được cài đặt trên hệ thống, cập nhật hợp lý và hơn thế nữa. YUM là tùy chọn dựa trên RHEL tương đương của trình quản lý gói APT.

Trình quản lý gói DNF

DNF

DNF, viết tắt của Dandified Packaging Tool, là phiên bản hiện đại và tiên tiến hơn của trình quản lý YUM. DNF kết hợp các tính năng của YUM, đồng thời cải thiện hiệu suất và việc sử dụng tài nguyên. Hiện tại, mới chỉ có Fedora sử dụng phiên bản YUM thế hệ tiếp theo này, nhưng hy vọng, người dùng sẽ thấy nó xuất hiện trên nhiều hệ điều hành hơn trong tương lai.

Có một số công cụ quản lý gói khác có sẵn cho những hệ thống dựa trên RPM, chẳng hạn như up2date, urpmi và ZYpp. Tuy nhiên, những trình quản lý gói này được sử dụng rộng rãi như YUM hoặc DNF.

Những trình quản lý gói khác

Đôi khi, các nhà phát triển sẽ tạo ra những trình quản lý gói đặc biệt được thiết kế cho bản phân phối Linux. Chúng thường được thiết kế dựa trên hệ điều hành và được tìm thấy trên các bản phân phối Linux chính thống.

Trình quản lý gói Pacman

Pacman

Pacman là trình quản lý gói được tìm thấy trên Arch Linux. Pacman là công cụ quản lý gói duy nhất được tìm thấy trên Arch, khiến nó không phải là một frontend. Arch Linux là một hệ điều hành phát hành dạng rolling release, với các bản cập nhật, được thêm vào mỗi ngày. Chỉ có một vài lệnh với Pacman, dùng để tìm kiếm, cài đặt và xóa gói. Trình quản lý gói này có thể kết nối với Internet và lấy các gói từ đó, khiến Pacman thân thiện hơn với người dùng. Tuy nhiên, Pacman được thiết kế để cài đặt phần mềm từ kho Arch, nên không thể cài đặt từ kho của bên thứ ba.

Trình quản lý gói ABS

ABS

ABS, viết tắt của Arch Build System, là một hệ thống các công cụ dành cho việc tạo những gói phần mềm có thể cài đặt cho Arch Linux ngoài mã nguồn. Trình quản lý gói ABS bao gồm một số công cụ hoạt động song hành để tạo ra các gói. Những công cụ này là tất cả các chương trình độc lập, chẳng hạn như makepkg, pacman, asp, v.v... Phương pháp tạo/cài đặt gói sử dụng ABS khác với những bản phân phối Linux thông thường. Thay vì cài đặt các gói được biên dịch sẵn, bạn cần tạo file PKGBUILD từ nhánh Svn hoặc Git bằng cách sử dụng gói asp. Sau đó, bạn sử dụng lệnh makepkg, dùng file PKGBUILD để tải xuống và biên dịch mã nguồn cho hệ thống của mình. Điều này làm cho ABS trở thành một phương pháp cài đặt gói ít trực quan hơn trên Arch Linux. Cũng có một số cách khác để sử dụng ABS, chẳng hạn như tùy chỉnh các gói hiện có hoặc xây dựng và cài đặt kernel tùy chỉnh.

Trình quản lý gói Portage

Portage

Portage là trình quản lý gói cho Gentoo, một hệ điều hành đơn giản, nhưng phải được biên dịch từ đầu khi cài đặt trên bất kỳ hệ thống nào. Đây là một trong những trình quản lý gói tiên tiến nhất hiện có, với các tính năng và cải tiến mới được bổ sung liên tục.

Mặc dù có rất nhiều sự lựa chọn khi sử dụng phần mềm quản lý gói, nhưng đa số chúng được thiết kế để hoàn thành các nhiệm vụ tương tự. Do đó, tốt nhất là bạn nên thử nghiệm và xem chương trình quản lý gói nào sẽ hoạt động tốt nhất cho nhu cầu của mình.

Về bản chất, việc cài đặt phần mềm trên Linux giúp cải thiện bản phân phối và khả năng sử dụng trình quản lý gói giúp cuộc sống của bạn dễ dàng hơn rất nhiều. Thông thường, chỉ cần nhập một lệnh đơn giản và phần mềm của bạn sẽ nhanh chóng được cài đặt. Không cần phải tìm kiếm đúng file cài đặt hoặc phiên bản trên Internet.

Chúc bạn tìm được cho mình lựa chọn phù hợp!

Thứ Hai, 20/05/2019 11:39
52 👨 381