Điểm:-1

Sau khi nâng cấp một gói, phiên bản gói trước đó bị mất, vì vậy tôi không thể hạ cấp xuống phiên bản đó

lá cờ jp

Sau khi tôi nâng cấp một gói, khi tôi chạy chính sách apt-cache <tên gói>, Tôi thấy rằng phiên bản trước của cùng gói này không có trong danh sách.

Trước khi gói bind9-dnsutils được nâng cấp, danh sách bộ đệm hiển thị ba phiên bản khác nhau của gói này:

$ apt-cache chính sách bind9-dnsutils
bind9-dnsutils:
  Đã cài đặt: 1:9.16.1-0ubuntu2.8
  Ứng viên: 1:9.16.1-0ubuntu2.9
  Bảng phiên bản:
     1:9.16.1-0ubuntu2.9 500
        500 http://pl.archive.ubuntu.com/ubuntufocal-updates/main AMD64 Gói
        500 gói http://pl.archive.ubuntu.com/ubuntufocal-security/main amd64
 *** 1:9.16.1-0ubuntu2.8 100
        100 /var/lib/dpkg/trạng thái
     1:9.16.1-0ubuntu2 500
        500 gói http://pl.archive.ubuntu.com/ubuntufocal/main amd64  

Tôi đã thực hiện nâng cấp thành công gói bind9-dnsutils lên phiên bản mới nhất. Sau khi gói bind9-dnsutils được nâng cấp, khi kiểm tra danh sách bộ đệm cho gói này không hiển thị phiên bản trước 1:9.16.1-0ubuntu2.8 trong danh sách.

$ Sudo aptitude cài đặt bind9-dnsutils=1:9.16.1-0ubuntu2.9
bind9-dnsutils:
  Đã cài đặt: 1:9.16.1-0ubuntu2.9
  Ứng viên: 1:9.16.1-0ubuntu2.9
  Bảng phiên bản:
*** 1:9.16.1-0ubuntu2.9 500
        500 http://pl.archive.ubuntu.com/ubuntufocal-updates/main AMD64 Gói
        500 gói http://pl.archive.ubuntu.com/ubuntufocal-security/main amd64
        100 /var/lib/dpkg/trạng thái
     1:9.16.1-0ubuntu2 500
        500 gói http://pl.archive.ubuntu.com/ubuntufocal/main amd64

Kết quả là nếu tôi cố hạ cấp xuống phiên bản 1:9.16.1-0ubuntu2.8 thì tôi nhận được thông báo lỗi này:

Không thể tìm thấy phiên bản "1:9.16.1-0ubuntu2.8" cho gói "bind9-dnsutils"
Không thể áp dụng một số hành động, hủy bỏ

Có cách nào để duy trì phiên bản trước ngay lập tức trong bộ đệm để tôi có thể quay lại phiên bản đó trong trường hợp phải làm như vậy không?

Greenonline avatar
lá cờ us
Tôi thực sự khuyên bạn, để dễ đọc, bạn nên sử dụng định dạng đánh dấu chính xác, đặc biệt là đối với mã, thay vì HTML hiện đang được sử dụng
user535733 avatar
lá cờ cn
Chỉnh sửa `/etc/apt/apt.conf.d/20archive` của bạn và mở rộng phạm vi gói được lưu giữ.
karel avatar
lá cờ sa
Bạn đang nói về tính năng **sao lưu và khôi phục** vốn là một phần của Windows từ lâu và kể từ ngày 20.04, bạn cũng có thể cài đặt gói bổ sung chức năng này cho Ubuntu.
user3737851 avatar
lá cờ jp
@ người dùng535733 Cảm ơn đã trả lời nhanh chóng. Tôi đã thử hai cách tiếp cận để mở rộng phạm vi và cũng bằng cách vô hiệu hóa việc lưu trữ bằng cách đặt giá trị 0 cho mỗi biến. Cả hai cách tiếp cận đều không hiệu quả > **Mở rộng phạm vi** APT::Archives::MaxAge "60"; APT::Archives::MinAge "60"; APT::Archives::MaxSize "1000"; > **Đã vô hiệu hóa hoạt động** APT::Archives::MaxAge "0"; APT::Archives::MinAge "0"; APT::Archives::MaxSize "0"; **Chi tiết phiên bản Ubuntu** ID nhà phân phối: Ubuntu Mô tả: Ubuntu 20.04.3 Bản phát hành LTS: 20.04 Tên mã: tiêu điểm Cảm ơn Ani
Điểm:0
lá cờ sa

Xin chúc mừng bạn đã được giải cứu bằng apt khỏi địa ngục phụ thuộc. apt đã làm những gì nó phải làm để duy trì quản lý gói chính xác cần thiết cho việc cài đặt, gỡ bỏ và nâng cấp phần mềm. Nếu bạn muốn thêm chức năng sao lưu và khôi phục vào Ubuntu, tương tự như tính năng Khôi phục hệ thống trong Windows, hãy cài đặt gói timeshift trong Ubuntu 20.04 trở lên.

cập nhật sudo apt
sudo apt cài đặt timeshift

Timeshift là một tiện ích khôi phục hệ thống, chụp nhanh hệ thống theo định kỳ. Những ảnh chụp nhanh này có thể được khôi phục vào một ngày sau đó để hoàn tác các thay đổi hệ thống. Timeshift tạo ảnh chụp nhanh gia tăng bằng cách sử dụng ảnh chụp nhanh rsync hoặc BTRFS bằng công cụ BTRFS.

Mặt khác, có thể bạn không muốn cài đặt Timeshift vì nó quá nặng khi bạn chỉ muốn hạ cấp một gói. Nếu bạn có thể quản lý để tải xuống thủ công bind9-dnsutils_9.16.1-0ubuntu2.8_amd64.deb và hạ cấp bind9-dnsutils mà không tạo ra lỗi phụ thuộc chưa được đáp ứng, thì bạn có thể ngăn không cho nâng cấp bind9-dnsutils bằng cách làm theo hướng dẫn trong câu trả lời cho Làm cách nào để ngăn cập nhật một gói cụ thể?. Sau khi bạn đã tải xuống bind9-dnsutils_9.16.1-0ubuntu2.8_amd64.deb, bạn có thể kiểm tra xem nó có thể cài đặt được mà không cần cài đặt các phụ thuộc bổ sung hay không bằng cách chạy lệnh sau:

cài đặt apt --mô phỏng ./bind9-dnsutils_9.16.1-0ubuntu2.8_amd64.deb

Lệnh trên chỉ là một mô phỏng. Nó không yêu cầu sudo lúc đầu và nó không cài đặt bất cứ thứ gì hoặc thực hiện bất kỳ thay đổi nào đối với hệ thống của bạn.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.