Как мне восстановить систему?

16

Проблема, с которой я столкнулся

  • Я установил что-то, что сломало мои драйверы Wi-Fi, которые я скомпилировал ранее.
  • Удаление того же пакета не помогло.
  • Наконец, я перекомпилировал мои драйверы Wi-Fi, и все хорошо.

Мой вопрос

Но есть ли что-то вроде восстановления системы или отката системы в Ubuntu / LinuxMint?

  • Есть что - нибудь , что может команда?undoapt-get install package
Югаль Джиндл
источник
Сбой системы - это серьезная проблема в Linux, должно быть что-то подобное System Wide UNDO?
Югаль Джиндл
Подумайте за пределами окна (и Google ваш вопрос). Вы можете просто сжать целые куски своей системы, но сказать, что системный сбой является серьезной проблемой, просто не соответствует действительности. Я запускаю Linux на всех своих компьютерах (передовой Arch Linux, поэтому стабильность должна пострадать), и мне еще предстоит увидеть сбой или сбой моего компьютера. Я упоминал, что на компьютерах Arch работает по 2-4 года каждый?
Блендер
Возможно, стоило бы выполнить apt-get purge для пакета, который сломал вашу систему, поскольку он должен был удалить все параметры, связанные с ним.
полковник
@Blender Я на 100% пользователь Linux с 2 лет. Хотя я ненавижу восстановление системы Windows, но в Linux иногда X-обновления нарушают вашу графику, должно быть что-то вроде песочницы или чего-то еще… чтобы отменить это.
Югаль Джиндл

Ответы:

7

Дополнение apt-get install packageесть apt-get remove package. Чтобы удалить все связанные настройки тоже нужно запустить apt-get purge package.

Обратите внимание, что эти команды основаны на сценариях удаления, прилагаемых к пакету. Все пакеты в основном репозитории, о которых я знаю, выполняют свою работу по удалению очень хорошо. Это может быть не так для сторонних пакетов.

Что касается вашей проблемы с драйвером, есть несколько возможностей, почему установка пакета сломала ваш беспроводной драйвер:

  • Драйвер имеет хук после установки, который выполняется, когда выполняется условие, например, обновления ядра
  • Пакет перезаписал файл, от которого зависел драйвер беспроводной сети
  • Рассматриваемый пакет был обновлением ядра, но у драйвера нет перехвата после установки для перекомпиляции драйвера (скорее всего)

Что касается функций «Откат системы» / «Восстановление системы», то ближайшая функция, которую вы получите, - это образ системы с использованием программного обеспечения, такого как Clonezilla . К сожалению, это не может быть сделано в работающей системе и должно выполняться с Live CD.

Lekensteyn
источник
14

Для этой цели существует программное обеспечение для Linux под названием Timeshift . Используя Timeshift, вы можете регулярно делать снимки вашей системы Linux и восстанавливать их в любое время.

Это программное обеспечение добавляет функцию восстановления системы Windows в ваш дистрибутив Linux.

Краткое описание с официального сайта:

TimeShift для Linux - это приложение, которое обеспечивает функциональность, аналогичную функции восстановления системы в Windows и инструменту Time Machine в Mac OS. TimeShift защищает вашу систему, делая регулярные снимки файловой системы через равные промежутки времени. Эти снимки могут быть восстановлены позже, чтобы привести вашу систему в состояние, в котором она находилась во время создания снимка.

Снимки сделаны с использованием rsync и жестких ссылок. Общие файлы распределяются между снимками, что экономит дисковое пространство. Каждый снимок представляет собой полную резервную копию системы, которую можно просматривать с помощью файлового менеджера.

Teo
источник
Это звучит хорошо, но если я еще не сделал снимки, я не могу воспользоваться этим. :/ право?
Гсамарас
9

На самом деле, в Ubuntu et al. Есть несколько вещей. это позволит вам откатить изменения. Краткое описание ниже:

  1. /var/backups/dpkg.status.*: этот каталог хранит набор журналов последнего состояния системы перед установкой следующим образом; /var/backups/dpkg.status.0это самый последний журнал до изменения состояния (например, установка / удаление / обновление пакета и т. д.); /var/backups/dpkg.status.?.gzсжатые, заархивированные версии журналов в различные моменты времени, ротационные ежемесячно.
  2. /var/lib/dpkg/status: это текущее состояние установленных пакетов. Резервное копирование вручную или предоставление сценария logrotate /etc/logrotate.dобеспечит запланированные снимки состояния вашей системы по вашему вкусу.
  3. Откат: краеугольный камень - это ваше предыдущее состояние /var/backups/dpkg.status.0. Вот краткая пошаговая процедура для восстановления предыдущего состояния пакета (обратите внимание, краткая и не исчерпывающая ).

    а. cp /var/backups/dpkg.status /var/lib/dpkg/status(вернет обратно состояние пакета на одну версию назад).

    б. dpkg -l | grep ii(выдаст список предположительно установленных пакетов на основе /var/lib/dpkg/statusфайла отката, полученного на шаге а. выше).

    с. dpkg -l | grep ii | awk '{print "apt-get --reinstall -y install", $2}' > /tmp/reinstall && sh /tmp/reinstall(создаст простой однострочный сценарий оболочки и запустит его для переустановки пакетов, определенных в системе до операции apt-get)

    д. apt-get --reinstall install ucf(позаботится о дезинфекции конфигурационных файлов / etc и др.)

    е. Повторите шаг c. если / при необходимости


С минимальным количеством удачи, вы должны быть в порядке.

user148919
источник
4

В Ubuntu нет такой функции, как «Восстановить предыдущее состояние» в Windows. Вы должны были сделать резервную копию, чтобы восстановить машину на более ранней стадии. Серьезно мне тоже не хватает этой функции. Существует много инструментов, но ни один из них не работает как точка восстановления Windows или Mac Time Machine. Посмотрим, улучшится ли резервное копирование в Linux.

Abhijeet
источник
1

btrfs имеет / будет иметь некоторые отличные функции снимков, которые должны быть в состоянии справиться с такого рода вещами. Просто храните ваши данные в одной файловой системе, а вашу систему в другой, и используйте периодические (ежедневные? Еженедельные?) Снимки, а затем выполняйте откат при возникновении проблем.

скоро
источник
2
Пакет apt-btrfs-snapshot автоматически снимает корневой подобъем всякий раз, когда apt работает с пакетами, что упрощает откат.
Псуси
1
Уточни .. пожалуйста.
Югаль Джиндл
1

Помимо Timeshift и упомянутых журналов / var, вы также можете использовать etckeeper для защиты от разрушения файлов конфигурации в вашем каталоге / etc и отсутствия резервных копий для восстановления. Он использует VCS.

PD12
источник