[CentOS 8] DNF là trình quản lý gói mặc định thay cho YUM trong CentOS 8

30/12/2020
Chưa phân loại

Một trong các điểm mới của CentOS 8 là về trình quản lý gói quen thuộc YUM đã được thay thế bằng DNF. Trình quản lý DNF được team Fedora sử dụng từ bản Fedora 22 nhưng phải tới bây giờ thì team CentOS mới quyết định đưa vào sử dụng. Vậy có lý do nào mà cộng đồng chuyển từ YUM sang DNF hay không? Khi dùng DNF thì người dùng có phải nhớ thêm các cú pháp lệnh quen thuộc hay không? Tất cả sẽ được tóm tắt trong bài viết này.

Lý do mà DNF được thay thế cho YUM.

Một số lý do chính mà DNF được ca ngợi là thông minh, có tương lai hơn YUM là như sau:

  • YUM được phát triển bởi cộng đồng và trải qua thời gian lâu đời, do đó, trong các thời kỳ trước thì việc chuẩn hóa các tài liệu về API của YUM có chút khó khăn hoặc thậm chí là tệ. Do vậy nếu muốn phát triển tiếp thì rất vất vả cho DEV.
  • DNF thì hỗ trợ cả python2python3, trong khi đó YUM không giải quyết được việc này. Trong tương lai tới 2020 thì python2 cũng đã có kế hoạch ngững hỗ trợ. Do vậy việc chuyển sang DNF là một bước tính cho tương lai.
  • Đơn giản là YUM đã outdate (lỗi thời) nên việc DNF hoặc một dạng khác thay thế là điều đương nhiên :D.

Dùng DNF có khó khăn gì không?

Câu trả lời là KHÔNG, bởi vì cú pháp của DNF kế thừa lại hoặc nói cách khác là y hệt như khi dùng YUM. Do vậy người dùng không cần phải nhớ quá nhiều, chỉ cần thay đổi yum bằng dnf là được.

Lưu ý: trên CentOS 8 bạn vẫn có thể dùng yum để cài các gói như hiện tại. Lý do sẽ được trao đổi ở phần dưới.

Cú pháp cài đặt gói bằng DNF

dnf install ten_goi  hoặc  dnf install -y ten_goi

Ví dụ

Cài đặt các gói bằng DNF

dnf install -y vim  dnf install -y httpd

Bản chất của trình quản lý gói DNF

Về bản chất, trình quản lý gói DNF là được link tới YUM trong CentOS 8. Có nghĩa là bạn vẫn dùng được lệnh yum install ten_goi để cài đặt các gói cần thiết. Ta sẽ kiểm tra việc này.

Kiểm tra đường dẫn của chương trình yum bằng lệnh which

[root@centos8srv01 ~]# which yum /usr/bin/yum

Kiểm tra các liên kết của /usr/bin/yum

[root@centos8srv01 ~]# ll /usr/bin/yum lrwxrwxrwx. 1 root root 5 May 14 02:34 /usr/bin/yum -> dnf-3

Trên kết quả trên, ta thấy bản chất /usr/bin/yum là được link từ file dnf3

Tiếp tục kiểm tra xem đường dẫn của gói dnf bằng lệnh which

 [root@centos8srv01 ~]# which dnf /usr/bin/dnf

Và kiểm tra các liên kết của /usr/bin/dnf, ta có kết quả dưới.

[root@centos8srv01 ~]# ll /usr/bin/dnf lrwxrwxrwx. 1 root root 5 May 14 02:34 /usr/bin/dnf -> dnf-3

Kiểm tra tiếp đường dẫn của /usr/bin/dnf-3

[root@centos8srv01 ~]# ll /usr/bin/dnf-3 -rwxr-xr-x. 1 root root 1954 May 14 02:34 /usr/bin/dnf-3

Kết quả trên cho thấy dnf-3 không liên kết tới file nào cả. Đây là file gốc cho lệnh dnfyum.

Ta có thể kiểm tra các đường dẫn khác của các file liên quan tới gói yum

[root@centos8srv01 ~]# ll /etc/yum.conf lrwxrwxrwx. 1 root root 12 May 14 02:34 /etc/yum.conf -> dnf/dnf.conf

Kết luận

Như vậy, trong tương lai bạn nên chuyển dần sang dùng dnf thay cho yum đi nhé, vì hiện nay yum đang được link tới dnf rồi.

Hết rồi, tới đây tôi đã cập nhật thêm cho các bạn các thông tin về một thứ mới mẻ trong CentOS 8 để anh em nắm được và biết cách dùng về sau. Nếu có thêm chiêu trò gì mời bạn cùng chia sẻ với Onet.

Tham khảo

(1) https://www.linux.com/tutorials/what-you-need-know-about-fedoras-switch-yum-dnf/

ONET IDC thành lập vào năm 2012, là công ty chuyên nghiệp tại Việt Nam trong lĩnh vực cung cấp dịch vụ Hosting, VPS, máy chủ vật lý, dịch vụ Firewall Anti DDoS, SSL… Với 10 năm xây dựng và phát triển, ứng dụng nhiều công nghệ hiện đại, ONET IDC đã giúp hàng ngàn khách hàng tin tưởng lựa chọn, mang lại sự ổn định tuyệt đối cho website của khách hàng để thúc đẩy việc kinh doanh đạt được hiệu quả và thành công.
Bài viết liên quan

Bash jq command

JSON data are used for various purposes. But JSON data can’t be read easily from JSON file by using bash script like...
29/12/2020

Python SYS Module

In this lesson on Python sys module, we will study how this module allows us to interact with the interpreter and the host...
28/12/2020

Bash yes Command

Bash `yes` command is one of those commands of Linux that is related to the operation of another command. Using this command...
29/12/2020
Bài Viết

Bài Viết Mới Cập Nhật

SỰ KHÁC BIỆT GIỮA RESIDENTIAL PROXY VÀ PROXY DATACENTER
17/02/2024

Mua Proxy v6 US Private chạy PRE, Face, Insta, Gmail
07/01/2024

Mua shadowsocks và hướng dẫn sữ dụng trên window
05/01/2024

Tại sao Proxy Socks lại được ưa chuộng hơn Proxy HTTP?
04/01/2024

Mua thuê proxy v4 nuôi zalo chất lượng cao, kinh nghiệm tránh quét tài khoản zalo
02/01/2024