Откат обновления arch linux

Обновлено: 04.07.2024

Arch Linux часто хвалят за передовое программное обеспечение и модель непрерывных выпусков. Мы обсудим эти функции более подробно в нашем статья, сравнивающая Arch Linux и Manjaro . В дополнение к этой похвале, Arch Linux также имеет репутацию нестабильной системы. Эта репутация проистекает из иногда непредсказуемой природы новейшего программного обеспечения. Последнее программное обеспечение от разработчиков может содержать ошибки, которые не были обнаружены во время первоначального тестирования. В результате всегда существует риск того, что обновление с помощью диспетчера пакетов, Пакман , может привести к неожиданным результатам. Они могут включать в себя определенную часть программного обеспечения, которая больше не работает должным образом (или вообще), или даже несколько приложений или среды рабочего стола, которые перестают работать должным образом.

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

дд , BackupPC , rsync , Fsarchiver , rsnapshot . Если у вас есть обычное решение для резервного копирования, то может быть приятно знать, что вы можете выполнить восстановление из резервной копии в том случае, если Пакман обновление вызывало проблемы, но было бы идеально, если бы вам не пришлось этого делать. В этой статье мы покажем вам, как откатиться Пакман обновления в Arch Linux. Это можно сделать двумя способами. Один из способов - через кеш pacman ; другой - с помощью Архив Arch Linux . Мы обсудим оба метода.

В этом уроке вы узнаете:

  • Как откатить обновления Arch Linux с помощью кеша pacman
  • Как откатить обновления Arch Linux с помощью Arch Linux Archive

Как откатить обновления pacman в Arch Linux

Как откатить обновления pacman в Arch Linux

Требования к программному обеспечению и используемые условные обозначения

Как откатить обновления Arch Linux с помощью кеша pacman

Каждый раз, когда вы устанавливаете или обновляете пакет Пакман сохраняет этот пакет в /var/cache/pacman/pkg/ . Пакман также позволяет вручную обновить пакет через -U флаг. Как оказалось, этот метод обновления также можно использовать для установки более старой версии пакета, эффективно понижая версию пакета.

Понижение одиночного пакета

Предположим, вы только что обновили свою систему через $ sudo pacman -Syu команда, а затем вы открываете Fire Fox просматривать веб-страницы только для того, чтобы понять, что теперь он вылетает, чего никогда не было раньше. Вы можете легко перейти на более раннюю версию Fire Fox к предыдущей версии, которую вы установили с помощью кеша pacman.

Сначала изучите Fire Fox пакеты, перечисленные в /var/cache/pacman/pkg/

Вы должны увидеть последнюю версию, до которой вы только что обновились, и все предыдущие версии, которые вы установили. В нашем примере это результат, который мы получаем.

Мы знаем, что обновились с версии 81.0.1-1 к 83.0-2 и подозреваю, что это могло вызвать проблему. Чтобы проверить эту теорию, просто вернитесь к версии 81.0.1-1 используя кеш pacman с помощью следующей команды.

Вы увидите следующий результат.

Как только вы наберете у для продолжения у вас будет установленная ранее версия Fire Fox установлен и может открыть его, чтобы увидеть, решена ли проблема.

Переход на более раннюю версию нескольких пакетов

Используя кеш pacman, вы можете понизить версию нескольких пакетов, указав их в качестве отдельных аргументов для pacman -U .
Например

При переходе на более раннюю версию нескольких пакетов может быть полезно перейти на /var/cache/pacman/pkg каталог, чтобы вам не нужно было вводить полный путь к каждому пакету, версию которого вы хотите понизить.

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

Понижение версии нескольких связанных пакетов с аналогичной схемой именования

Предположим, вы просто включили питание своей машины после того, как не использовали ее в течение нескольких недель. Вы продолжаете обновлять свою систему через $ sudo pacman -Syu , и вы замечаете, что все ваши приложения на основе qt работают некорректно, но все остальные приложения работают. Поскольку многие из базовых пакетов и библиотек qt имеют qt в имени файла, и очень маловероятно, что какие-либо пакеты, отличные от qt, имеют это в имени файла, можно откатить только обновления qt с последнего обновления системы.

Всякий раз, когда вы выполняете обновление с помощью Пакман запись того, что именно вы обновили и когда, хранится в /var/log/pacman.log . Пример строки следует ниже.

Мы можем использовать этот журнал, чтобы помочь нам систематически понижать версию только пакетов qt, ища строки в pacman.log которые показывают пакеты, содержащие qt в имени файла, которые были обновлены сегодня и производят над ними некоторые текстовые манипуляции, а затем предоставляют их в качестве аргументов для pacman -U в цикле for . В приведенном ниже примере предполагается, что текущая дата - 30 ноября 2020 года. Отрегулируйте дату соответствующим образом, если хотите ее использовать.

Откат всех обновленных пакетов

Предположим, вы просто включили питание своей машины после того, как не использовали ее в течение нескольких недель. Вы продолжаете обновлять свою систему через $ sudo pacman -Syu команда, а затем вы замечаете, что вся ваша система работает ненормально медленно. Вы не знаете, какое обновление пакета могло вызвать это, и вы хотите временно откатить все 512 из них до предыдущей версии, которую вы установили.

На самом деле это не требует больше усилий, чем в предыдущем примере. Вы выполняете те же шаги, за исключением того, что используете pacman.log файл, чтобы получить имена всех пакетов, которые были обновлены сегодня, а не только тех, которые соответствуют определенной схеме именования. Это будет работать для любого количества пакетов, по сути, функционируя как большая кнопка отмены для Пакман . В приведенном ниже примере предполагается, что текущая дата - 30 ноября 2020 года. Отрегулируйте дату соответствующим образом, если хотите ее использовать.

Как откатить обновления Arch Linux с помощью Arch Linux Archive

в Архив Arch Linux - официальный архив, содержащий снимки предыдущих версий пакетов. Они сохранены в пакеты каталог сайта. Есть два потенциальных преимущества использования Архив Arch Linux над кеш pacman . Во-первых, кеш pacman занимает место на вашем локальном хранилище. В результате некоторые люди предпочитают регулярно очищать свой кеш. Во-вторых, Архив делает доступными все предыдущие версии пакета, а не только те, которые вы ранее установили.

Понижение одиночного пакета

Чтобы понизить пакет до предыдущей версии, сначала вы найдете его в архиве, а затем используйте Пакман чтобы перейти на эту конкретную версию. Если мы еще раз рассмотрим наш предыдущий пример перехода на более раннюю версию Fire Fox , мы больше не ограничены переходом с версии 83.0-2 к 81.0.1-1 . Как видно из архив firefox , у нас также есть возможность перейти на следующие промежуточные версии: 81.0.2-1, 82.0-1, 82.0.2-1, 82.0.3-1, 83.0-1 .

Чтобы перейти на Fire Fox версия 83.0-1 с использованием Архив Arch Linux введите следующую команду.

Понизить все пакеты до более ранней даты

Другой вариант, который у вас есть при использовании Архив Arch Linux состоит в том, чтобы восстановить все пакеты в вашей системе до «текущей» версии, которая существовала в репозиториях на определенную дату во времени. Это может быть полезно, если у вас сейчас возникают проблемы с вашей системой Arch, но вы помните, что несколько недель назад у вас их не было. В следующем примере мы понизим версию всех пакетов до 10 ноября 2020 года.
Чтобы понизить версию пакетов, нам нужно будет сообщить pacman, что мы хотим использовать репозиторий архива, отредактировав /etc/pacman.d/mirrorlist .
Перед внесением каких-либо изменений в файл рекомендуется создать резервную копию, чтобы мы могли легко вернуться к текущему состоянию. зеркальный список файл, когда мы захотим.

Затем отредактируйте свой /etc/pacman.d/mirrorlist файл с помощью выбранного вами редактора:

и измените содержимое на следующее.

Теперь, чтобы завершить откат пакетов, введите следующую команду.

Вывод

В этой статье мы рассмотрели два метода отката или понижения пакетов в Arch Linux: кеш pacman и Архив Arch Linux . Это оба мощных метода, у которых есть свои преимущества. Давайте кратко поразмышляем об этих преимуществах в заключение этой статьи.

Основное преимущество использования кеш pacman заключается в том, что он не требует подключения к Интернету или загрузки пакетов, поскольку он хранится локально. В результате процесс перехода на более раннюю версию выполняется быстрее. Еще одно преимущество заключается в том, что кеш pacman содержит версии пакетов, которые вы установили в своей системе раньше, поэтому вы, скорее всего, имеете представление о том, насколько хорошо они работали. Третье преимущество заключается в том, что вы можете понизить версию нескольких пакетов без необходимости редактировать какие-либо файлы конфигурации.

Основное преимущество использования Архив Arch Linux заключается в том, что вы можете перейти на любую версию пакета независимо от того, устанавливали ли вы его ранее. Еще одно преимущество заключается в том, что он не занимает локальное хранилище, поэтому, если у вас заканчивается хранилище и вы хотите очистить кеш pacman, вы знаете, что есть еще один жизнеспособный вариант для понижения версии. Третье преимущество заключается в том, что вы можете легко понизить версию каждого отдельного пакета в своей системе, просто отредактировав один файл конфигурации.

LinuxConfig ищет технических писателей, специализирующихся на технологиях GNU / Linux и FLOSS. В ваших статьях будут представлены различные руководства по настройке GNU / Linux и технологии FLOSS, используемые в сочетании с операционной системой GNU / Linux.

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

Как открывать и закрывать порты в RHEL 8 / CentOS 8 Linux

Как открывать и закрывать порты в RHEL 8 / CentOS 8 Linux

Firewalld - мощный и в то же время простой в использовании инструмент для управления брандмауэр на RHEL 8 / Сервер CentOS 8 или Рабочая станция GNOME. Firewalld позволяет управлять открытыми или закрытыми портами, используя предопределенные службы.

Изменить имя хоста на AlmaLinux

Изменить имя хоста на AlmaLinux

Имя хоста Система Linux важен, потому что он используется для идентификации устройства в сети. Имя хоста также отображается в других заметных местах, например, в командной строке терминала. Это дает вам постоянное напоминание о том, с какой систем.

Добавление новых разделов, логических томов и подкачки в систему без разрушения.

Добавление новых разделов, логических томов и подкачки в систему без разрушения.

Управление дисками и пространством - важное знание сисадмин. Его или ее повседневная работа - решать проблемы с дисками. В рамках Подготовка к экзамену RHCSA, мы узнаем, как добавлять новые пространства различных типов в систему, используя инструм.

Регулярное обслуживание системы необходимо для правильной работы Arch в течение определенного периода времени. Своевременное обслуживание является привычной практикой многих пользователей.

Contents

Проверка на наличие ошибок

Неудачный запуск служб systemd

Проверьте, возможно какие-либо службы systemd неудачно запустились:

Файлы журналов

Посмотрите на наличие ошибок файл журнала, находящийся в /var/log , а также высоко приоритетные ошибки в журнале systemd:

Резервное копирование

Создавайте резервные копии важных данных через регулярные промежутки времени. Эти данные включают в себя конфигурационные файлы, установленные пакеты и каталоги, такие как /etc , /home , /var и для серверных установок, также /srv .

Смотрите различные приложения синхронизации и программ резервного копирования которые подойдут в вашем случае. Также смотрите восстановление системы.

Резервное копирование можно автоматизировать с помощь Systemd/Таймеры.

Файлы настроек

Перед внесением изменений в файлы настроек, создайте резервную копию. Таким образом, вы можете вернуться к рабочей версии в случае возникновения проблем. Такие редакторы как vim и emacs могут сделать это автоматически, а также такая утилита как etckeeper держат /etc в системе контроля версий (VCS).

Список установленных приложений

Ведите список всех установленных пакетов, а если полная переустановка неизбежна, то легче будет воссоздать первоначальное окружение.

База данных Pacman

Заголовки LUKS

Обновление системы

Если в системе есть пакеты из AUR, внимательно обновите все из них.

Избегайте определенных команд pacman

Избегайте частичные обновления, то есть никогда не запускайте pacman -Sy , вместо того чтобы использовать pacman -Syu .

Избегайте использования опции -d с Pacman. pacman -Rdd пакет пропустит проверку зависимостей при удалении пакета. В результате пакет, создающий критическую зависимость, может быть удален, что приведет к нарушению системы.

Частичные обновления не поддерживаются

Arch Linux является роллинг-релиз дистрибутивом. Это означает, что когда новая версия библиотек поступит в репозиторий, разработчики и доверенные пользователи пересоберут все пакеты в репозиториях, которые должны быть пересобраны с библиотеками. Например, если два пакета зависят от той же библиотеки, обновление только одного пакета может также обновить библиотеку (в качестве зависимости), которая может сломать другой пакет, который зависит от старой версии библиотеки.

Именно поэтому частичные обновления являются не поддерживаемыми. Не используйте pacman -Sy пакет или любой эквивалент, такой как pacman -Sy а затем pacman -S пакет , всегда обновляйтесь (с помощью pacman -Syu ) перед установкой пакета. По той же причине будьте очень осторожны при использовании IgnorePkg и IgnoreGroup . Если в системе есть локально установленные пакеты (например, пакеты из AUR), пользователи должны будут пересобрать их, когда их зависимост получит игнор.

Если было частичное обновление, и бинарные файлы сломаны, потому что они не могут найти зависимые библиотеки, не "исправляйте" проблему при помощи символьной ссылки. Библиотеки получают игнор, когда они не имеет обратной совместимости. Выполнение команды pacman -Syu с правильно синхронизированным зеркалом решит проблему, пока сам "pacman" работоспособен.

Прочитайте перед обновлением системы

Сигналы предупреждений во время обновления

Как можно быстрее договаривайтесь с новыми файлами настроек

Когда вызывается pacman, могут быть созданы файлы .pacnew и .pacsave . Pacman уведомит вас, когда это произойдет, и пользователи должны разобраться с этими файлами в кратчайшие сроки. Пользователи могут обратиться к вики-страницы Pacman/Pacnew and Pacsave (Русский) для подробных инструкций.

Кроме того, подумайте о других файлах настроек которые вы можете скопировать или создать. Если пакет содержал пример настроек, который был скопирован в ваш домашний каталог, проверьте, был ли создан новый.

Откат сломанных обновлений

Используйте менеджер пакетов для установки программного обеспечения

Pacman делает работу намного лучше, чем ваше ручное содержание файлов. Если вы устанавливаете пакеты вручную, вы в скором времени, рано или поздно, забудете что вы делали, устанавливали конфликтующее программное обеспечение, устанавливали в неправильное место и т.д. Вместо этого, узнайте, как создать пакет.

Выбирайте драйверы с открытым исходным кодом

Будьте осторожны с неофициальными пакетами

Используйте меры предосторожности при использовании пакетов из AUR или неофициальных пользовательских репозиториев. Большинство из них содержатся обычными пользователями, и, следовательно, не могут иметь те же стандарты, что и в официальных репозиториях. Будьте осторожны с вспомогательными утилитами для работы с AUR, которые весьма упрощают установку пакетов AUR. Всегда проверяйте PKGBUILD'ы на вменяемость, признаки ошибок или вредоносного кода, прежде чем собрать и/или установить пакет.

Обновите список зеркал (mirrorlist)

Обновите список зеркал pacman, так как качество зеркал может меняться со временем, и некоторые из них могут перейти в офлайн или их скорость загрузки может ухудшиться. Смотрите Зеркала.

Очистите файловую систему

При поиске файлов для удаления, важно найти файлы, которые занимают большую часть дискового пространства. Программы, которые вам помогут можно найти в:

Старые файлы настроек

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

/.config . По тем же причинам, будьте осторожны при совместном использовании домашних папок между установками.

Посмотрите на следующие папки:

Для большей информации смотрите XDG Base Directory support.

Чтобы сохранить домашний каталог чистым от временных файлов, созданных в неправильном месте, будет хорошо иметь список нежелательных файлов и удалять их регулярно, например, с помощью rmshit.py.

rmlint может быть использован для поиска и при необходимости удалении дубликатов файлов, пустых файлов, рекурсивных пустых каталогов и сломанных символических ссылок.

Неиспользуемые пакеты

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

Кэш пакетов

Удалите ненужные файлы .pkg из /var/cache/pacman/pkg/ чтобы освободить дисковое пространство. .

Сломанные симлинки

Старые, сломанные символьные ссылки могут находится в вашей системе; вы должны удалить их. Найти примеры того как их найти указаны тут (Англ.) и там (Англ.).

Для быстрого просмотра списка всех сломанных символьных ссылок в вашей системе, воспользуйтесь:

Затем проверьте и удалите ненужные записи из этого списка.

Советы и приёмы

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

Используйте проверенные программные пакеты

Роллинг-релиз Arch даёт преимущество пользователям, которые хотят попробовать новейшие функции и получить последние обновления как можно скорее, но это может сделать обслуживание системы более трудным. Для упрощения технического обслуживания и повышения стабильности, старайтесь избегать ультрасовременное программное обеспечение и устанавливайте только зрелое и проверенные программное обеспечение. Такие пакеты имеют меньше шансов получить сложные обновления, такие как основные изменения настроек или удаление особенностей. Предпочитайте программное обеспечение, которое имеет сильное и активное сообщество разработчиков, а также большое количество компетентных пользователей, для того чтобы упростить поддержку в случае возникновения проблем.

Избегайте использования тестового (testing) репозитория, даже отдельных пакетов из testing. Эти пакеты являются экспериментальными и не подходят для стабильной системы. Кроме того, избегайте разрабатываемых пакетов, которые собираются непосредственно из апстрима. Они обычно находятся в AUR, и содержат в названии: "dev", "devel", "svn", "cvs", "git", и т.д.

Установите пакет linux-lts

Пакет linux-lts представляет собой альтернативный пакет ядра Arch, и доступен в core репозитории. Эта конкретная версия ядра имеет долгосрочную поддержку (LTS) от апстрима, включая исправления безопасности, и некоторые Бэкпорты. Это будет полезным, если вы предпочитаете стабильность и менее частые обновления ядра, или если вы хотите иметь запасное ядро, в случае если новая версия ядра вызывает проблемы.

Пакет для понижения версии в Linux

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

Если это ваш случай, в этом урок мы покажем вам, как вы можете перейти на более раннюю версию любого пакета, то есть откатить обновление и получить предыдущую версию, установленную в вашей системе. Таким образом, у вас не будет проблем, если новые версии вас подведут. Ну что ж, приступим!

Поскольку не существует общего метода для всех дистрибутивов, я покажу, как это можно сделать с помощью самые популярные менеджеры пакетов. Кстати, если вы используете другие методы, такие как YaST, Synaptic и т. Д., Процедуры также возможны, но графически и намного более интуитивно понятны. Здесь я объясню методы через консоль, которые вызывают наибольшую путаницу .

apt-get: Debian / Ubuntu и производные

Для всех дистрибутивы на основе пакетов DEB а с помощью диспетчера пакетов apt-get вы можете легко перейти с более современной версии на более старую. Например, мы возьмем пакет firefox в качестве эталона, представив, что мы хотим вернуться от текущей версии к предыдущей. В этом случае вы можете выполнить следующие команды:

  • Вы можете получить информация о пакете firefox (или что-то еще, вам просто нужно изменить имя на соответствующее в вашем случае), например, предыдущие установленные версии и т. д., вы можете использовать следующую команду:
  • Как только вы хорошо знаете предыдущая версия, которую вы хотите установить, вы можете использовать следующую команду для установки нужного пакета. В нашем случае в предыдущей команде мы получили пакет с именем firefox = 57.3-build1-0ubuntu1, который мы хотим установить:
  • После этого у вас уже будет установлена ​​предыдущая версия этой программы. Вы знаете, что если нет указать версию Используя APT, вы устанавливаете последнюю версию, доступную в репозитории этого пакета. В данном случае мы указали конкретную версию.

Помните, что возможно, что сосуществуют два разных пакета версий на GNU / Linux без проблем. Итак, если вы хотите иметь две разные версии одного и того же пакета, вы можете это сделать .

pacman: Arch Linux и производные

Если у вас есть Arch Linux, то вам придется иметь дело с pacman как с менеджером пакетов. Этот инструмент также позволяет вам вернуться к предыдущей версии, если хотите. Способ сделать это немного другой, но такой же простой:

  • Искать ев кеше пакета доступные версии, вы можете проверить запись. Чтобы отфильтровать результаты только для пакетов firefox в нашем случае (но вы уже знаете, что можете заменить имя пакета на то, которое хотите . ), вы можете использовать:
  • Теперь, когда вы знаете, какая версия вам нужна, вы можете использовать следующую команду установить это:

zypper: SUSE / openSUSE и производные

В мире SUSE, вы можете использовать менеджер пакетов zypper. Это также простой способ получить пакет в предыдущей версии. В нашем случае с Mozilla Firefox это будет примерно так:

  • Первым делом нужно обратиться к кешу пакетов аналогично тому, как мы это делали для Arch, с помощью следующей команды, чтобы узнать предыдущие версии пакета в наличии:
  • Как только предыдущая версия будет найдена, вы сможете установить эту версию используя zypper следующим образом:

dnf: Red Hat / CentOS / Fedora и производные

Наконец, в дистрибутивах на основе Fedora yum или dnf будут использоваться. Чтобы отменить обновление пакета и вернуться к предыдущей версии с пониженной версией, вы можете использовать следующие команды:

  • В этом случае первым делом нужно будет увидеть предыдущие версии пакета, который вы пытаетесь установить в репозитории DNF. В нашем примере вы можете использовать эту команду для получения списка:
  • Теперь, когда вы внимательно посмотрите на имя версия, которую вы хотите установить, вам просто нужно скопировать его из данных, выданных в выводе предыдущей команды, и вставить в следующую. Например:

Вы также можете использовать снимки или снимки вернуться к предыдущим версиям. Для этого вы можете использовать следующие команды, которые они будут делать, соответственно, получать историю, затем получать информацию о транзакции из истории с ее идентификатором (что вы хотите в вашем случае), а затем возвращаться к статусу этой транзакции с указанием идентификатора (в нашем примере 32):

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

Содержание статьи соответствует нашим принципам редакционная этика. Чтобы сообщить об ошибке, нажмите здесь.

Полный путь к статье: Любители Linux » Общие » Программное обеспечение Linux » Переход на более раннюю версию: возврат к предыдущей версии программного пакета.


Я относительно новичок в Arch Linux, и мне очень нравится его концепция непрерывного выпуска. Теперь я хочу знать, что перед обновлением системы через pacman -Syu , Я хочу создать точка восстановления так что в случае сбоя обновления моей системы я могу вернуться в последнее хорошее состояние, в котором находился мой компьютер перед попыткой обновления системы.

Это потому, что однажды, когда я pacman -Syu на моей установке Arch он завалил мою систему и не загружался. Это произошло, когда на моем компьютере все еще оставалось минимум или совсем не было важных файлов, поэтому я выполнил новую установку. Но теперь, когда я как бы медленно создавал систему, которая мне очень нравилась, я не хочу переустанавливать ее с нуля и снова делать все то, что я уже сделал, если обновление системы сломает ее. С точка восстановления, Скорее всего, я смогу восстановить свой компьютер, не переустанавливая все заново.

Итак, как я создаю и использую, точки восстановления в Arch linux?

Arch не предназначен для такой работы: это скользящий выпуск, поэтому вам всегда придется продолжать обновлять пакеты по мере их отправки в ваше репо: единственная альтернатива - заморозить все.

регулярное обновление (так что вы обновляете только небольшое количество пакетов за раз) и использование журналов в /var/log/pacman.log чтобы предоставить список пакетов для отката, если что-то пойдет не так.

Не очищать кеш пакетов преждевременно или - если вам нужно пространство - до того, как вы действительно выпустите pacman -Sc или же pacman -Scc , затем резервное копирование /var/cache/pacman/pkg/ на внешний диск, чтобы у вас был доступ к более ранним версиям, если вам действительно нужно понизить версию пакета или пакетов.

Если вы не используете [Testing] репо, то на самом деле поломок очень мало, и когда они случаются, это хорошо задокументировано. Как отметили wojox, чтение является необходимым условием для поддержания хорошо работающей установки Arch Linux.

Для Linux в целом вы можете использовать такой инструмент, как Clonezilla, чтобы делать снимки текущей установки.

Предостережение Все вышесказанное относится к вашей системе. Конечно, у вас должен быть режим резервного копирования ваших данных.

В дистрибутивах Linux вообще нет ничего похожего на систему восстановления. Есть небольшие исключения. Дистрибутив на основе RPM, который я использую, сохраняет архив всех предыдущих версий пакетов при их обновлении. Можно установить эти пакеты и откатить программное обеспечение к тому, что было до обновления, но это создает хаос зависимостей и менее полезно, чем кажется. Обычно единственный выход из проблем с упаковкой - вперед.

Однако, если вы хотите внедрить общесистемную систему восстановления, способ сделать это будет через файловую систему, а не менеджер пакетов. Используйте файловую систему, такую ​​как XFS, которая позволяет делать снимки всей файловой системы. Или, что еще лучше, настройте свои диски с помощью LVM и используйте любую файловую систему, которая вам нравится. Немного более ручной способ был бы rsnapshot инструмент для создания инкрементных резервных копий.

Прежде чем приступить к основной работе с системой, сделайте снимок всего этого. Затем, если что-то пойдет не так, вы можете вернуться к тому, как было, и попробовать снова.

Две вещи, которые я делаю в Arch: ПРОЧИТАЙТЕ ПЕРЕД ОБНОВЛЕНИЕМ

и пакеты для перехода на более раннюю версию. Я не знаю ни одной точки восстановления :).

Это будет зависеть от используемой файловой системы, а не только от ОС или менеджера пакетов.

Если ты бежишь / на btrfs вы можете использовать для этого возможность создания снимков.

Я только просто началось с Arch, но в качестве примера того, что можно сделать: Ubuntu имеет apt-btrfs-snapshot. Это относительно простой скрипт, который подключается к apt для создания моментального снимка btrfs прямо перед установкой пакетов, а также дает пользователям возможность легко перечислять / создавать / удалять / откатывать снимки. Конечно, все это работает, только если / находится на btrfs. С 11.04 установщик достаточно умен, чтобы поставить / и /home на отдельные подобтомы, даже если они находятся в одном разделе, поэтому откаты моментальных снимков не влияют /home .

Вручную

Arch: безопасно сохранять и восстанавливать базы данных pacman описывает ручной подход к сохранению моментальных снимков пакетов в официальных репозиториях. Вы можете использовать этот подход в сочетании с сохранением снимка файловой системы для данных пакета. Насколько я понимаю, в репозиториях хранятся только самые последние версии пакетов.

С помощью aura

aura-bin позволяет легко откатить / восстановить pacman -Su обновление / обновление системы.

Сохранить текущее состояние

Чтобы сохранить список установленных пакетов и версий:

Восстановить предыдущее состояние

Выберите предыдущую точку восстановления из списка с датой:

Очистить старые точки восстановления

Чтобы удалить все точки восстановления, кроме трех последних:

Пользователи Manjaro

Если вы используете Manjaro, удалите PKGBUILD зависимость от abs при беге yaourt -S aura-bin .

Читайте также: