Cách quản lý các gói trên các bản phân phối Linux dựa trên RPM với DNF | Học trực tuyến CNTT, học lập trình từ cơ bản đến nâng cao

Cách quản lý các gói trên các bản phân phối Linux dựa trên RPM với DNF

Chia sẻ kiến thức 17/03/2022

Biết cách cài đặt và gỡ bỏ các gói là một tác vụ đơn giản trên Linux. Bài viết này hướng dẫn bạn cách quản lý các gói trên Linux với DNF.

 

Biết cách cài đặt và gỡ bỏ các gói là một tác vụ đơn giản trên Linux. Bài viết này hướng dẫn bạn cách quản lý các gói trên Linux với DNF.

 

Một trong những tính năng hấp dẫn nhất của hệ điều hành Linux là dễ dàng cài đặt hoặc tự động hóa việc cài đặt các gói phần mềm từ các kho lưu trữ từ xa an toàn.

Hướng dẫn này sẽ hướng dẫn bạn cách cài đặt và quản lý các gói phần mềm trên các bản phân phối Linux dựa trên RPM như Fedora và Red Hat Enterprise Linux (RHEL) bằng cách sử dụng DNF, trình quản lý gói thế hệ tiếp theo cho các bản phân phối dựa trên RPM.

DNF là gì?

DNF là chương trình kế thừa của YUM (Yellowdog Updater Modified) và là trình quản lý gói mặc định trên Fedora và RHEL. Tên DNF là viết tắt của Dandified YUM.

Mục đích chính của DNF là để dễ dàng cài đặt, truy vấn và quản lý các gói phần mềm trên cả máy chủ và desktop. Ngoài ra, giống như các trình quản lý gói chính thống khác trên Linux, DNF giải quyết tất cả các phần phụ thuộc (dependencies) của gói phần mềm trong quá trình cài đặt.

DNF cũng duy trì khả năng tương thích ngược với YUM để các tập lệnh (script) cũ của bạn vẫn sẽ chạy tốt. Trên thực tế, khi bạn chạy lệnh yum trên các bản phân phối Linux mới, nó thực sự đang sử dụng DNF ở chế độ nền. Bạn có thể xác minh điều này bằng cách chạy lệnh:

ls -l /usr/bin/yum

Như bạn có thể nhận thấy trong đầu ra, lệnh yum chỉ đơn giản là một liên kết tượng trưng đến dnf.

Tìm kiếm các gói phần mềm bằng DNF

Một phần quan trọng của việc quản lý các gói là có thể truy vấn hoặc tìm kiếm các gói mà bạn quan tâm, cả cục bộ và trên các kho lưu trữ từ xa. Bạn có thể tìm kiếm các gói dựa trên tên gói, nội dung gói hoặc từ khóa, v.v.

Ví dụ: nếu bạn muốn tìm kiếm một số trình duyệt web mà bạn có thể cài đặt thì bạn có thể bắt đầu bằng một tìm kiếm chung bằng từ khóa “browser” (trình duyệt).

dnf search browser

Đầu ra là danh sách tất cả các gói phần mềm có chứa từ “browser” trong tên gói hoặc mô tả.

Nếu bạn muốn biết thêm thông tin về một gói nào đó, chẳng hạn như trình duyệt Firefox, bạn có thể sử dụng lệnh con info như sau:

dnf info firefox

Đầu ra cung cấp cho bạn thông tin chi tiết hơn về gói, chẳng hạn như kiến ​​trúc, kích thước gói, số phiên bản, giấy phép (license), v.v.

Bạn cũng có thể liệt kê tất cả các gói có sẵn để cài đặt từ các kho được định cấu hình bằng phương thức (method) list. Chúng tôi đã pipe* lệnh less để liệt kê các gói trên toàn màn hình tại một thời điểm.

dnf list available | less

*pipe lấy output từ câu lệnh này và dùng nó làm input cho câu lệnh kế tiếp.

Sử dụng phím F để di chuyển về phía trước và phím B để di chuyển về phía sau. Bạn cũng có thể tìm kiếm đầu ra cho một từ khóa bằng cách nhấn / sau đó nhập từ khóa của bạn. Nhấn Q để thoát khỏi đầu ra.

Sử dụng lệnh sau để xem tất cả các gói phần mềm đã cài đặt trên PC:

dnf list installed

Cài đặt gói phần mềm

Việc cài đặt các gói với DNF khá đơn giản. Tuy nhiên, bạn cần có các đặc quyền nâng cao với tư cách là người dùng root hoặc sudo. Ví dụ: để cài đặt trình duyệt Firefox, chỉ cần chạy lệnh sau, sau đó nhấn Y trong lời nhắc để đồng ý với các điều khoản:

sudo dnf install firefox

Như đã đề cập trước đó, lệnh dnf sẽ quản lý việc cài đặt tất cả các phần phụ thuộc cho một gói. Để xem tất cả các phần phụ thuộc được cài đặt như một phần của Firefox, hãy sử dụng lệnh con deplist theo sau là tên gói.

dnf deplist firefox

Gỡ cài đặt gói phần mềm

Gỡ bỏ gói là một tác vị quan trọng không kém khi quản lý phần mềm. Một trong những cách dễ nhất để xóa hoặc gỡ cài đặt gói là sử dụng phương pháp remove (loại bỏ).

sudo dnf remove firefox

Một cách khác để loại bỏ các gói phần mềm là thông qua lệnh con history. DNF lưu giữ hồ sơ về tất cả các giao dịch (transaction) liên quan đến việc cài đặt hoặc gỡ bỏ các gói phần mềm. Để xem các giao dịch DNF trước đó, bạn có thể chạy lệnh sau:

dnf history

Đầu ra liệt kê các hành động hoặc giao dịch trước đó ở dạng bảng. Trong trường hợp này, kết quả cho thấy trước đó chúng ta đã cài đặt vim và chromium.

Với lệnh phụ history, bạn có thể hoàn tác hoặc xóa bất kỳ giao dịch nào trước đó. Ví dụ: để xóa gói vim, chỉ cần chạy lệnh history với tùy chọn undo (hoàn tác), theo sau là ID giao dịch, sau đó nhấn Y khi được nhắc tiếp tục.

sudo dnf history undo 3

Tuy nhiên bạn nên biết thêm thông tin chi tiết về một giao dịch trước khi hoàn tác để tránh các tác dụng phụ không mong muốn. Bạn có thể xem chi tiết của một giao dịch bằng lệnh sau:

sudo dnf history info 3

Hãy nhớ thay thế số 3 bằng ID giao dịch thích hợp.

Loại bỏ các phần phụ thuộc không được sử dụng

Một trong những thứ chiếm dung lượng đĩa trên PC Linux là các gói và phần phụ thuộc hệ thống không còn cần thiết nữa.

Để loại bỏ các phần phụ thuộc như vậy, hãy chạy lệnh sau:

sudo dnf autoremove

Ngoài ra, DNF cũng cho phép bạn xóa dữ liệu đã tải xuống cùng với các gói đã cài đặt.

sudo dnf clean packages

Bạn cũng có thể dọn dẹp bộ nhớ cache của gói phần mềm và siêu dữ liệu khác là một phần của các gói đã cài đặt bằng cách chạy lệnh sau:

sudo dnf clean metadata

Cài đặt lại các gói phần mềm

Đôi khi, bạn có thể chỉ phải cài đặt các thành phần cụ thể của một gói. Ví dụ: nếu bạn vô tình xóa một số gói phần mềm nhất định của firefox, bạn có thể cài đặt lại chúng bằng cách chạy:

sudo dnf reinstall firefox

Cập nhật các gói với DNF

Cập nhật phần mềm là một trong những cách tốt nhất để duy trì một hệ thống mạnh mẽ và an toàn vì phần mềm mới chứa các bản vá bảo mật và sửa lỗi mới nhất.

Để tìm nạp (fetch) các bản cập nhật gói phần mềm mới nhất từ ​​các kho lưu trữ từ xa, bạn có thể sử dụng lệnh con check-update như sau:

sudo dnf check-update

Sau khi tìm nạp các bản cập nhật, bạn có thể áp dụng chúng cho tất cả các gói phần mềm đã cài đặt bằng cách sử dụng update.

sudo dnf update

Kết quả hiển thị tổng số gói DNF sẽ cập nhật.

Bạn cũng có thể cập nhật một gói cụ thể, chẳng hạn như firefox, bằng cách sử dụng lệnh sau:

sudo dnf update firefox

Kết luận

Hy vọng sau bài viết này, bạn đã biết cách quản lý các gói phần mềm trên các bản phân phối Linux dựa trên RPM như Fedora và Red Hat Enterprise Linux (RHEL) bằng lệnh DNF. Bạn cũng có thể sử dụng trình quản lý gói YUM và RPM trên Fedora.

Vân Nguyễn

Dịch từ: https://www.makeuseof.com/manage-packages-with-dnf/

ĐĂNG KÝ TƯ VẤN HỌC LẬP TRÌNH TẠI FUNiX
icon icon

Bình luận (
0
)

Bài liên quan

  • Tầng 0, tòa nhà FPT, 17 Duy Tân, Q. Cầu Giấy, Hà Nội
  • info@funix.edu.vn
  • 0782313602 (Zalo, Viber)        
Chat Button
FUNiX V2 GenAI Chatbot ×

yêu cầu gọi lại