Làm thế nào để tôi khôi phục hệ thống?


16

Vấn đề tôi phải đối mặt

  • Tôi đã cài đặt một cái gì đó làm hỏng trình điều khiển Wifi mà tôi đã biên dịch trước đó.
  • Hủy cài đặt cùng một gói không giúp đỡ.
  • Cuối cùng, tôi biên dịch lại trình điều khiển wifi của tôi và mọi thứ đều tốt.

Câu hỏi của tôi

Nhưng, có bất cứ điều gì như System Restore hoặc System Rollback trong Ubuntu / LinuxMint không?

  • Có bất cứ điều gì có thể undomột apt-get install packagelệnh?

Sự cố hệ thống là một vấn đề nghiêm trọng trong Linux, phải có một cái gì đó như thế System Wide UNDOnào?
Joly Julum

Hãy suy nghĩ bên ngoài hộp cửa sổ (và Google câu hỏi của bạn). Bạn chỉ có thể nén toàn bộ khối hệ thống của mình, nhưng nói rằng lỗi hệ thống là một vấn đề nghiêm trọng không đúng. Tôi chạy Linux trên tất cả các máy tính của mình (Arch Linux tiên tiến, vì vậy tính ổn định sẽ bị ảnh hưởng) và tôi vẫn chưa thấy máy tính của mình gặp sự cố hoặc trục trặc. Tôi có đề cập đến các máy tính đã chạy Arch được 2-4 năm không?
Máy xay sinh tố

Có thể đáng để thực hiện một cuộc thanh lọc apt-get trên gói đã phá vỡ hệ thống của bạn vì việc này được cho là để xóa mọi cài đặt liên quan đến nó.
Col

@Blender Tôi là người dùng Linux 100% từ 2 năm nay. Mặc dù tôi ghét khôi phục hệ thống Windows, nhưng trong linux, một số lần cập nhật X phá vỡ đồ họa của bạn, nên có một cái gì đó như hộp cát hoặc một cái gì đó .. để hoàn tác điều đó.
Joly Julum

Câu trả lời:


7

Sự bổ sung của apt-get install packageapt-get remove package. Để loại bỏ tất cả các cài đặt liên quan quá, bạn cần phải chạy apt-get purge package.

Lưu ý rằng các lệnh này dựa trên các tập lệnh gỡ cài đặt được cung cấp cùng với gói. Tất cả các gói trong kho lưu trữ chính mà tôi biết đều thực hiện công việc gỡ cài đặt rất tốt. Đây có thể không phải là trường hợp cho các gói của bên thứ ba.

Đối với vấn đề trình điều khiển của bạn, có một vài khả năng tại sao cài đặt gói đã phá vỡ trình điều khiển không dây của bạn:

  • Trình điều khiển có một hook sau khi cài đặt được thực thi khi một điều kiện được đáp ứng, ví dụ như cập nhật kernel
  • Gói ghi đè lên một tệp mà trình điều khiển không dây phụ thuộc vào
  • Gói trong câu hỏi là một bản cập nhật kernel nhưng trình điều khiển không có móc cài đặt sau để biên dịch lại trình điều khiển (rất có thể)

Đối với các tính năng "Phục hồi hệ thống" / "Khôi phục hệ thống", tính năng gần nhất bạn sẽ nhận được là hình ảnh hệ thống sử dụng phần mềm như Clonezilla . Thật không may, điều này không thể được thực hiện trong một hệ thống đang chạy và phải được thực hiện từ Live CD.


14

Có một phần mềm dành cho Linux có tên Timeshift chính xác cho mục đích này. Sử dụng Timeshift, bạn có thể chụp ảnh nhanh hệ thống Linux của mình thường xuyên và khôi phục chúng bất cứ khi nào bạn cần.

Phần mềm này mang tính năng Khôi phục Hệ thống của Windows vào bản phân phối Linux của bạn.

Một mô tả ngắn từ trang web chính thức của nó:

TimeShift cho Linux là một ứng dụng cung cấp chức năng tương tự như tính năng Khôi phục hệ thống trong Windows và công cụ Time Machine trong Mac OS. TimeShift bảo vệ hệ thống của bạn bằng cách chụp các ảnh chụp nhanh của hệ thống tệp theo định kỳ. Những ảnh chụp nhanh này có thể được khôi phục sau đó để đưa hệ thống của bạn về trạng thái chính xác tại thời điểm chụp ảnh nhanh.

Ảnh chụp nhanh được thực hiện bằng cách sử dụng rsync và liên kết cứng. Các tệp phổ biến được chia sẻ giữa các ảnh chụp nhanh giúp tiết kiệm dung lượng ổ đĩa. Mỗi ảnh chụp là một bản sao lưu toàn bộ hệ thống có thể được duyệt bằng trình quản lý tệp.


Nghe có vẻ hay, nhưng nếu tôi chưa chụp ảnh nhanh, tôi không thể tận dụng lợi thế của nó. :/ đúng?
gsamaras

9

Trên thực tế, có vài điều trong Ubuntu et al. điều đó sẽ cho phép bạn khôi phục các thay đổi. Tóm tắt dưới đây:

  1. /var/backups/dpkg.status.*: thư mục này giữ một tập hợp nhật ký của trạng thái hệ thống cuối cùng trước khi cài đặt như sau; /var/backups/dpkg.status.0là nhật ký gần đây nhất trước khi thay đổi trạng thái (ví dụ: cài đặt / gỡ bỏ / cập nhật gói ... vv); /var/backups/dpkg.status.?.gzđược nén, lưu trữ các phiên bản của nhật ký tại nhiều thời điểm khác nhau, được luân chuyển hàng tháng.
  2. /var/lib/dpkg/status: đây là trạng thái hiện tại của các gói được cài đặt. Tự sao lưu dự phòng này hoặc cung cấp tập lệnh logrotate /etc/logrotate.dsẽ đảm bảo lịch chụp nhanh trạng thái hệ thống theo ý thích của bạn.
  3. Roll-back: đá góc là trạng thái trước đây của bạn /var/backups/dpkg.status.0. Dưới đây là một quy trình từng bước ngắn gọn để khôi phục trạng thái gói trước đó (lưu ý ngắn gọnkhông đầy đủ ).

    a. cp /var/backups/dpkg.status /var/lib/dpkg/status(sẽ hoàn nguyên lại trạng thái gói một phiên bản trở lại).

    b. dpkg -l | grep ii(sẽ cung cấp cho bạn một danh sách các gói được cho là đã cài đặt dựa trên /var/lib/dpkg/statustệp khôi phục đã đạt được ở bước a. ở trên).

    c. dpkg -l | grep ii | awk '{print "apt-get --reinstall -y install", $2}' > /tmp/reinstall && sh /tmp/reinstall(sẽ tạo một tập lệnh shell một lớp đơn giản và chạy nó để cài đặt lại các gói được xác định là đã có trên hệ thống trước khi hoạt động apt-get)

    d. apt-get --reinstall install ucf(sẽ chăm sóc vệ sinh / etc config file et. al)

    e. Lặp lại bước c. nếu / khi cần thiết


Với một chút may mắn, bạn sẽ ổn thôi.


4

Không có tính năng nào như vậy trong Ubuntu như "Khôi phục trạng thái trước đó" trong Windows. Bạn nên đã sao lưu, để khôi phục máy về giai đoạn trước. Nghiêm túc, tôi cũng thiếu tính năng này. Có nhiều công cụ nhưng không có công cụ nào hoạt động như Windows Restore point hay Macs Time Machine. Hãy xem liệu mọi thứ trở nên tốt hơn trong bản sao lưu trong Linux.


1

btrfs đã / sẽ có một số tính năng chụp nhanh tiện lợi có thể xử lý loại công cụ này. Chỉ cần giữ dữ liệu của bạn trong một hệ thống tệp và hệ thống của bạn trong một hệ thống khác và sử dụng ảnh chụp nhanh định kỳ (hàng ngày? Hàng tuần?), Sau đó quay lại bất cứ khi nào có vấn đề phát sinh.


2
Gói apt-btrfs-snapshot sẽ tự động chụp nhanh subvolume gốc bất cứ khi nào apt thực hiện mọi thứ với các gói, giúp dễ dàng quay trở lại.
psusi

1
Vui lòng kết bạn .. làm ơn.
Joly Julum


1

Ngoài các bản ghi Timeshift và / var được đề cập, bạn cũng có thể sử dụng etckeeper để bảo vệ chống làm hỏng các tệp cấu hình trong thư mục / etc của bạn và không có bản sao lưu để khôi phục. Nó sử dụng một VCS.

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.