Giới thiệu
Trong lab này, bạn sẽ học cách sử dụng lệnh dnf (Dandified YUM), trình quản lý gói mặc định cho các bản phân phối Linux dựa trên Red Hat hiện đại như Fedora, CentOS và RHEL. Bạn sẽ hiểu cách sử dụng cơ bản của lệnh dnf, cài đặt và cập nhật các gói, và quản lý các nhóm gói và các phụ thuộc. Lab này bao gồm các tác vụ quản lý gói thiết yếu, cung cấp các ví dụ thực tế để giúp bạn thành thạo trong việc quản lý các gói phần mềm trên hệ thống Linux của bạn.
Tìm hiểu về lệnh dnf
Trong bước này, bạn sẽ tìm hiểu về lệnh dnf (Dandified YUM), là trình quản lý gói mặc định cho các bản phân phối Linux dựa trên Red Hat hiện đại như Fedora, CentOS và RHEL.
Đầu tiên, hãy kiểm tra phiên bản dnf hiện tại được cài đặt trên hệ thống:
sudo dnf --version
Ví dụ đầu ra:
dnf version 4.9.0
Lệnh dnf được sử dụng cho nhiều tác vụ quản lý gói khác nhau, chẳng hạn như:
- Cài đặt các gói mới
- Cập nhật các gói hiện có
- Gỡ bỏ các gói
- Tìm kiếm các gói
- Liệt kê các gói đã cài đặt
- Quản lý các nhóm gói và các phụ thuộc
Để có cái nhìn tổng quan nhanh về các lệnh và tùy chọn dnf có sẵn, bạn có thể sử dụng trợ giúp tích hợp sẵn:
sudo dnf help
Thao tác này sẽ hiển thị danh sách các lệnh dnf phổ biến nhất và mô tả ngắn gọn về từng lệnh.
Bạn cũng có thể nhận được thông tin chi tiết hơn về một lệnh dnf cụ thể bằng cách sử dụng lệnh man
:
man dnf
Thao tác này sẽ mở trang hướng dẫn sử dụng cho lệnh dnf, cung cấp tài liệu toàn diện về cách sử dụng và các tùy chọn có sẵn của nó.
Cài đặt và cập nhật các gói bằng dnf
Trong bước này, bạn sẽ học cách sử dụng lệnh dnf để cài đặt các gói mới và cập nhật các gói hiện có trên hệ thống của bạn.
Đầu tiên, hãy tìm kiếm một gói bằng lệnh dnf search
. Ví dụ: để tìm kiếm gói "tree":
sudo dnf search tree
Ví dụ đầu ra:
Last metadata expiration check: 0:00:36 ago on Fri 14 Apr 2023 05:33:00 PM UTC.
tree.x86_64 : Display a tree-like view of the directory structure
tree-python3.x86_64 : Python3 bindings for tree
tree-qt.x86_64 : Qt-based tree viewer
Để cài đặt gói "tree", hãy sử dụng lệnh dnf install
:
sudo dnf install -y tree
Ví dụ đầu ra:
Dependencies resolved.
...
Installed:
tree-1.8.0-10.el8.x86_64
Bây giờ, hãy cập nhật tất cả các gói đã cài đặt trên hệ thống bằng lệnh dnf update
:
sudo dnf update -y
Ví dụ đầu ra:
Dependencies resolved.
...
Updated:
...
Complete!
Cờ -y
trong các lệnh trên tự động trả lời "yes" cho bất kỳ lời nhắc nào, giúp quá trình cài đặt và cập nhật không cần giám sát.
Quản lý các nhóm gói và các phụ thuộc với dnf
Trong bước này, bạn sẽ học cách quản lý các nhóm gói và các phụ thuộc bằng lệnh dnf.
Các nhóm gói trong dnf là tập hợp các gói liên quan có thể được cài đặt hoặc gỡ bỏ cùng nhau. Để liệt kê tất cả các nhóm gói có sẵn, hãy sử dụng lệnh dnf group list
:
sudo dnf group list
Ví dụ đầu ra:
Available Environment Groups:
...
Server with GUI
Minimal Install
...
Available Groups:
Authoring and Publishing
C Development Tools and Libraries
...
Để cài đặt một nhóm gói, hãy sử dụng lệnh dnf group install
. Ví dụ: để cài đặt nhóm "Development Tools":
sudo dnf group install -y "Development Tools"
Ví dụ đầu ra:
Dependencies resolved.
...
Installed:
...
Khi cài đặt một gói, dnf cũng sẽ tự động xử lý các phụ thuộc của gói. Bạn có thể xem danh sách các phụ thuộc sẽ được cài đặt bằng cách sử dụng lệnh dnf deplist
:
sudo dnf deplist tree
Ví dụ đầu ra:
package: tree-1.8.0-10.el8.x86_64
dependency: libc.so.6()(64bit)
dependency: libm.so.6()(64bit)
dependency: libncurses.so.6()(64bit)
dependency: libpthread.so.0()(64bit)
dependency: rtld(GNU_HASH)
Điều này cho thấy các phụ thuộc được yêu cầu bởi gói "tree".
Để gỡ bỏ một nhóm gói, hãy sử dụng lệnh dnf group remove
:
sudo dnf group remove -y "Development Tools"
Ví dụ đầu ra:
Dependencies resolved.
...
Removed:
...
Tóm tắt
Trong lab này, bạn đã tìm hiểu về lệnh dnf (Dandified YUM), là trình quản lý gói mặc định cho các bản phân phối Linux dựa trên Red Hat hiện đại. Bạn đã khám phá cách sử dụng dnf để cài đặt các gói mới, cập nhật các gói hiện có, tìm kiếm các gói và quản lý các nhóm gói và các phụ thuộc. Cụ thể, bạn đã học cách kiểm tra phiên bản hiện tại của dnf, tìm kiếm các gói, cài đặt gói "tree" và cập nhật tất cả các gói đã cài đặt trên hệ thống.