close

Hướng dẫn về DNF, trình quản lý gói mặc định thay cho YUM trong CentOS 8

Tác giả: Nguyen Văn Phong Ngày cập nhật: 09/10/2019 Chuyên mục:
Disclosure
Website Wiki.tino.org được cung cấp bởi Tino Group. Truy cập và sử dụng website đồng nghĩa với việc bạn đồng ý với các điều khoản và điều kiện trong chính sách bảo mật - điều khoản sử dụng nội dung. Wiki.tino.org có thể thay đổi điều khoản sử dụng bất cứ lúc nào. Việc bạn tiếp tục sử dụng Wiki.tino.org sau khi thay đổi có nghĩa là bạn chấp nhận những thay đổi đó.
Why Trust Us
Các bài viết với hàm lượng tri thức cao tại wiki.tino.org được tạo ra bởi các chuyên viên Marketing vững chuyên môn và được kiểm duyệt nghiêm túc theo chính sách biên tập bởi đội ngũ biên tập viên dày dặn kinh nghiệm. Mọi nỗ lực của chúng tôi đều hướng đến mong muốn mang đến cho cộng đồng nguồn thông tin chất lượng, chính xác, khách quan, đồng thời tuân thủ các tiêu chuẩn cao nhất trong báo cáo và xuất bản.

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ả python2 và python3, 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 dnf và yum.

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 dnfthay cho yum đi nhé, vì hiện nay yum đang được link tới dnf rồi.

 

Bài viết liên quan

CÔNG TY CỔ PHẦN TẬP ĐOÀN TINO
Trụ sở chính: L17-11, Tầng 17, Tòa nhà Vincom Center, Số 72 Lê Thánh Tôn,  Phường Bến Nghé, Q. 1, TP. Hồ Chí Minh

Văn phòng kinh doanh: Số 42 Trần Phú, Phường 4, Quận 5, TP HCM
GPKD số 0315679836 do Sở KH và ĐT TP Hồ Chí Minh cấp
Hotline: 0364 333 333
Góp ý/Phản ánh dịch vụ: 0933 000 886