Tìm phiên bản cũ hơn để hạ cấp xuống


10

Trên máy chủ Debian của tôi, tôi đã nâng cấp gói SQLite lên phiên bản 3.7.7nhưng phát hiện ra rằng nó có một lỗi nghiêm trọng phá vỡ một số thứ bao gồm kho lưu trữ Subversion của tôi. Vì vậy, tôi muốn hạ cấp trở lại phiên bản trước tôi đang sử dụng. Nhưng:

  • Tôi không biết phiên bản đó là gì (tôi cho rằng đó là 3.7.6.3, nhưng tôi không chắc chắn).
  • Các phiên bản chỉ khác tôi thấy có sẵn cho các gói SQLite trong aptitude3.5.9.6mà là quá sớm để gói Subversion Tôi đang sử dụng (nó đòi hỏi ít nhất 3.6).

Làm cách nào tôi có thể xác định và hạ cấp xuống phiên bản SQLite mà tôi đang sử dụng và có thể vẫn còn trong bộ đệm trên máy tính của tôi? Hoặc, không thành công, làm thế nào tôi có thể biết aptitudenơi tải xuống các phiên bản trung gian của gói đó?

Câu trả lời:


8

Bộ đệm APT sống trong /var/cache/apt/archives. Nếu bạn có một phiên bản phù hợp của gói ở đó, bạn có thể cài đặt nó với dpkg -i /var/cache/apt/archives/sqlite3-VERSION.deb.

Nếu bạn không có nó, thử nghiệm hiện có 3.7.6.3-1 (có thể tải xuống từ bất kỳ máy nhân bản Debian nào) và hiện tại ổn định có 3.7.3-1 ; hoặc bạn có thể tìm thấy (gần như) bất kỳ phiên bản nào đã có trong Debian trên snapshot.debian.org . Vì đây là nhu cầu đúng giờ, nên dễ dàng tải xuống gói theo cách thủ công và cài đặt dpkg(nhưng bạn cũng có thể xác định ngày chụp nhanh cụ thể là nguồn APT, như được giải thích trên trang chủ snapshot.do).

Bạn có thể tìm ra phiên bản nào đã được cài đặt bằng cách xem qua nhật ký dpkg trong /var/log/dpkg.loghoặc nhật ký APT /var/log/apthoặc nhật ký Aptitude /var/log/aptitude.

Trong Aptitude, đánh dấu phiên bản lỗi là cấm cài đặt: Fkhóa trong giao diện người dùng aptitude forbid-versiontương tác hoặc tương tác. Nếu lỗi không được sửa trong bản phát hành tiếp theo, hãy đánh dấu gói đó là trên chế độ giữ chặt để ngăn chặn nâng cấp tự động cho đến khi có thông báo mới ( =khóa hoặc aptitude holdlệnh).


Điều này chỉ hoạt động với hai thay đổi nhỏ (tìm kiếm lib sqlite và nền tảng amd64). dpkg -ithực sự là cách nhanh nhất
Victor Nicollet

2

các tập tin /var/log/dpkg.logcó lịch sử thay đổi. Hãy làm một grep về điều này để tìm câu trả lời của bạn.


Điều này thực sự xác nhận rằng tôi đã chạy 3.7.6.3-1. Bây giờ, tôi cần tìm nó :-)
Victor Nicollet
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.