Hướng dẫn cách hạ cấp gói trên hệ điều hành Linux

Cách hạ cấp gói trên Linux

Chia sẻ kiến thức 01/10/2023

Khi bản cập nhật mới nhất của gói chứa đầy lỗi, việc chuyển sang phiên bản cũ hơn có thể khôi phục tính ổn định cho máy tính Linux của bạn.

 

Thật khó chịu khi bạn nâng cấp một gói trên Linux rồi phát hiện ra phiên bản cập nhật bị hỏng và không hoạt động bình thường. Trong những trường hợp như vậy, bạn có thể muốn xóa hoàn toàn gói khỏi hệ thống của mình. Tuy nhiên, có cách tốt hơn để khắc phục sự cố này.
VIDEO MUO TRONG NGÀY

 
 
 
 
Đóng
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

 

Trên hệ điều hành dựa trên Linux, bạn có thể dễ dàng chuyển sang các phiên bản gói cũ hơn bằng trình quản lý gói mặc định. Đây là cách hạ cấp các gói trên Linux và lý do bạn có thể cần phải làm vậy.

Khi nào bạn nên hạ cấp gói?

Đôi khi, khi các nhà phát triển phát hành phiên bản mới của gói, phiên bản đó sẽ có sẵn để người dùng tải xuống ngay lập tức. Hầu hết các bản phát hành phần mềm mới thường chưa được kiểm tra và chứa các lỗi cũng như sự cố cần khắc phục.

Mặc dù trong thế giới nguồn mở, việc người dùng kiểm tra phần mềm mới nhất và báo cáo lỗi là điều hoàn toàn bình thường, nhưng bạn có thể chọn hệ thống ổn định bằng cách hạ cấp gói cập nhật xuống phiên bản đã thử nghiệm cũ hơn. Điều này chủ yếu xảy ra với các bản phân phối Linux tiên tiến nhất như Arch Linux hoặc các phiên bản phái sinh của nó. Mặt khác, nhiều bản phân phối Linux cung cấp các bản phát hành ổn định chỉ chứa các gói đã được kiểm tra và đáng tin cậy trong kho của chúng. Ubuntu và Debian (ổn định) là hai ví dụ điển hình.

Tính năng hạ cấp rất hữu ích, đặc biệt khi bạn đang sử dụng Linux để chạy một hệ thống cần được ổn định ở cốt lõi, ví dụ như một máy chủ. Bạn không thể thỏa hiệp về tính ổn định và tin vào một gói chưa được kiểm tra khi bạn đang cung cấp tài nguyên cho hàng trăm hoặc hàng nghìn người dùng cùng lúc trên web. Trong những tình huống như vậy, việc chuyển gói sang phiên bản ổn định cũ hơn là cách khả thi nhất để duy trì sự ổn định của hệ thống.

Cách hạ cấp gói trên Linux

Mọi bản phân phối Linux đều có trình quản lý gói mặc định cho phép bạn chuyển sang các phiên bản gói cũ hơn bằng cách hạ cấp chúng. Trên các bản phân phối dựa trên Debian, bạn có trình quản lý gói APT; các bản phân phối dựa trên Arch Linux và RHEL lần lượt đi kèm với Pacman và RPM.

Trên Ubuntu và Debian

Việc hạ cấp một gói trên Ubuntu và các bản phân phối dựa trên Debian khác cũng dễ dàng như quá trình cài đặt. Tất cả những gì bạn cần biết là tên gói và số phiên bản cụ thể mà bạn muốn cài đặt.

Giả sử bạn đã biết nên hạ cấp gói nào, bạn có thể lấy thông tin chi tiết về phiên bản gói bằng lệnh sau:

apt list -a packagename

Ví dụ: hãy tìm các phiên bản gói có sẵn cho terminal Gnome:

apt list -a gnome-terminal

Đầu ra:

 

Đầu ra sẽ hiển thị tất cả các phiên bản của gói được chỉ định hiện có sẵn trong kho. Lưu ý giá trị thứ hai (trong trường hợp này là ” 3.36.1.1-1ubuntu1″) trong đầu ra tương ứng với phiên bản bạn muốn chuyển sang và chỉ định nó theo định dạng lệnh sau:

 
sudo apt install packagename=version

Để hạ cấp gói gnome-terminal xuống phiên bản “3.36.1.1-1ubuntu1” cũ hơn:

sudo apt install gnome-terminal=3.36.1.1-1ubuntu1

Đầu ra:

 

APT sẽ cảnh báo bạn về quá trình hạ cấp. Xác nhận thay đổi bằng cách nhập “Y” và nhấn Enter.

Bạn có thể xác minh xem APT có hạ cấp gói thành công hay không bằng cờ –version:

gnome-terminal --version

Nếu đầu ra hiển thị số phiên bản cũ hơn bản phát hành mới nhất thì gói đã được hạ cấp thành công và bạn có thể tiếp tục sử dụng gói đó như bình thường.

Hạ cấp gói trên Arch Linux

Trên Arch Linux, bạn có thể chuyển sang phiên bản cũ hơn của gói được cài đặt trước đó bằng bộ đệm Pacman đã lưu. Bộ đệm gói là một thư mục trên hệ thống dựa trên Arch lưu trữ mọi gói bạn tải xuống trên máy của mình. Các gói không bị xóa khỏi bộ đệm gói trừ khi được chỉ định.

Để thực hiện việc này, hãy tìm kiếm tệp gói được lưu trong bộ nhớ cache được lưu trữ trong thư mục /var/cache/pacman/pkg. Sau đó, sử dụng lệnh pacman để cài đặt phiên bản cũ hơn của gói như sau:

sudo pacman -U /var/cache/pacman/pkg/packagename-old.tar.zst

Hạ cấp các gói từ bộ đệm không phải là lựa chọn tốt nhất vì nó đòi hỏi bạn phải tìm kiếm rất nhiều. Để dễ dàng hơn, bạn có thể sử dụng lệnh find để thực hiện tìm kiếm thay thế.

Một lựa chọn thậm chí còn tốt hơn là sử dụng tiện ích hạ cấp. Theo mặc định, nó không có sẵn trên Arch Linux và bạn sẽ phải tải xuống từ AUR.

yay -S downgrade

Để hạ cấp gói trên các bản phân phối dựa trên Arch bằng cách hạ cấp, hãy ra lệnh sau:

sudo downgrade package

Đầu ra:

 

Đầu ra sẽ liệt kê tất cả các phiên bản gói có sẵn để cài đặt. Chọn từ các tùy chọn và nhập số tương ứng với phiên bản gói để tiếp tục cài đặt gói cũ hơn.

 

Trên Fedora và RHEL

Trên các bản phân phối Linux dựa trên RPM như Fedora, CentOS và Red Hat Enterprise Linux, có một tính năng tích hợp trong trình quản lý gói YUM cho phép người dùng hạ cấp các gói.

Để hạ cấp gói bằng YUM, chỉ cần chạy:

sudo yum downgrade packagename

Ví dụ: để hạ cấp gói trình duyệt Firefox:

sudo yum downgrade firefox

Đầu ra:

Lệnh nói trên sẽ chuyển sang phiên bản mới nhất trước đó của gói.

Để hạ cấp gói xuống một phiên bản cụ thể, trước tiên, bạn cần biết số phiên bản chính xác. Để làm điều này, bạn có thể truy cập Fedora Koji Web và tìm kiếm gói. Nó sẽ liệt kê tất cả các phiên bản có sẵn của gói.

Tất cả các phiên bản của gói có thể không có sẵn trong kho chính thức. Trong những trường hợp như vậy, bạn có thể tải xuống gói RPM từ Fedora Koji Web và cài đặt thủ công bằng lệnh rpm.

gói web fedora kobi

Chỉ cần ghi lại tên gói đầy đủ và chỉ định nó trong lệnh downgrade như sau:

sudo yum downgrade pkgnamewithversion

Để hạ cấp nhiều gói trong một lệnh, chỉ cần cung cấp tên gói được phân tách bằng dấu cách:

sudo yum downgrade package1 package2 package3

Duy trì sự ổn định trên máy tính Linux của bạn

Tương tự như Windows và các hệ điều hành khác, các gói có lỗi trên Linux thậm chí có thể làm hỏng hệ thống của bạn nếu không được xử lý. Tuy nhiên, những vấn đề như vậy nhanh chóng được giải quyết nhờ cộng đồng nguồn mở hữu ích kiểm tra các gói bị hỏng này và báo cáo lỗi cho nhà phát triển.

Nếu bạn không muốn cài đặt một hệ điều hành ổn định thì bạn có thể loại trừ Arch Linux và các bản phân phối dựa trên Arch khác khỏi danh sách. Đây hầu hết là các bản phân phối tiên tiến và cung cấp các bản cập nhật cho các gói ngay khi phiên bản mới nhất được phát hành.

Nếu bạn muốn có trải nghiệm máy tính ổn định hơn với Linux, hãy cân nhắc cài đặt các bản phân phối cung cấp bản phát hành LTS (hỗ trợ dài hạn) như Ubuntu, Debian, Linux Mint hoặc openSUSE Leap.

Tìm hiểu ngay chương trình học công nghệ thông tin trực tuyến tại FUNiX ở đây:

Vân Nguyễn

Dịch từ:https://www.makeuseof.com/how-to-downgrade-packages-linux/

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

Bình luận (
0
)

Bài liên quan

  • Tầng 0, tòa nhà FPT, 17 Duy Tân, phường Cầu Giấy, Hà Nội
  • info@funix.edu.vn
  • 0782313602 (Zalo, Viber)        

Cơ quan chủ quản: Công ty Cổ phần Giáo dục Trực tuyến FUNiX
MST: 0108171240 do Sở kế hoạch và Đầu tư thành phố Hà Nội cấp ngày 27 tháng 02 năm 2018

– Văn phòng Hà Nội:

+ Tầng 4, Tòa nhà 25T2, đường Nguyễn Thị Thập, phường Yên Hòa, Hà Nội.

+ Tầng 0, tòa nhà FPT, đường 17 Duy Tân, phường Cầu Giấy, Hà Nội.

– Văn phòng TP.HCM: Lầu 3A, tòa nhà 51-53 Võ Văn Tần, Phường Xuân Hòa, Thành phố Hồ Chí Minh, Việt Nam

Hotline: 078 231 3602 – Email: info@funix.edu.vn

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