Как создать резервную копию и восстановить установленные пакеты в Ubuntu Linux

Переустановка Ubuntu может показаться началом с чистого листа, но вскоре после этого мы снова сталкиваемся с той же проблемой: нам приходится переустанавливать все приложения, PPA-репозитории и настройки одно за другим. Это занимает несколько часов, и мы часто забываем что-то важное.
Чтобы решить эту проблему, мы создали простой пошаговый алгоритм, который позволяет создавать резервные копии всех установленных пакетов и конфигураций перед переустановкой и восстанавливать их после неё в Ubuntu Linux.
В этой статье мы объясним, как создавать резервные копии и восстанавливать установленные пакеты Ubuntu, включая файлы конфигурации и точечные файлы. Такой подход сэкономит вам много времени и снизит вероятность ошибок.
Зачем создавать резервную копию установленных пакетов
В Ubuntu Linux недостаточно просто скопировать домашнюю папку. Без надлежащего резервного копирования вы потеряете:
- Установленные вручную пакеты APT
- Дополнительные PPA или сторонние репозитории
- Приложения Snap и Flatpak
- Файлы конфигурации и точечные файлы
Правильно создав резервную копию системы Ubuntu, вы сможете восстановить предыдущее рабочее состояние после новой установки, не запоминая каждую деталь.
Давайте без лишних слов узнаем, как создавать резервные копии и восстанавливать установленные пакеты, PPA, приложения Snap, Flatpak и точечные файлы в Ubuntu.
Мы протестировали описанные ниже действия в последней версии Ubuntu 25.10, но полагаю, что те же действия должны работать в любой версии Ubuntu и её производных, таких как Pop!_OS, Linux Mint, Elementary OS и т. д.
Резервное копирование установленных пакетов и конфигураций в Ubuntu
Для тех, кто предпочитает разбираться в каждом шаге и выполнять его самостоятельно, я расскажу, как это сделать вручную.
1. Создайте каталог для резервного копирования
Создайте каталог для хранения всех резервных копий. Назовём его ubuntu_packages.
mkdir ubuntu_packages
Вставьте в него компакт — диск:
cd ubuntu_packages
2. Резервное копирование пакетов APT
Список всех установленных вручную пакетов APT:
apt-mark showmanual > manual-pkgs.txt
Это гарантирует, что будут сохранены только выбранные вами приложения, а не системные зависимости.
3. Резервное копирование репозиториев и ключей
Сохраните свои репозитории:
cp /etc/apt/sources.list ~/sources.list.backup cp -r /etc/apt/sources.list.d ~/sources.list.d.backup
Экспортируйте все ключи репозитория:
sudo apt-key exportall > repo-keys.gpg
4. Резервное копирование приложений Snap и Flatpak
Snap:
snap list > snaplist.txt
Плоский пакет:
flatpak list --app > flatpaklist.txt
5. Резервное копирование файлов и конфигураций
Скопируйте важные конфигурации:
mkdir -p backup-dotfiles cp -r ~/.bashrc ~/.profile ~/.gitconfig ~/.ssh ~/.config backup-dotfiles/
При необходимости вы можете добавить другие точечные файлы, например .vimrc или .zshrc
Это очень важная задача. Скопируйте каталог ubuntu_packages в безопасное место — на внешний USB-накопитель или в облачное хранилище. Он понадобится нам для восстановления пакетов после переустановки Ubuntu.
Восстановление пакетов Ubuntu из резервной копии
После переустановки Ubuntu вы можете восстановить пакеты Ubuntu из резервной копии в следующем порядке.
1. Скопируйте каталог резервной копии
Скопируйте каталог резервной копии (в нашем случае ubuntu_packages) в только что установленную систему Ubuntu.
Перейдите в каталог:
cd ubuntu_packages
2. Восстановление репозиториев и ключей
sudo cp ~/sources.list.backup /etc/apt/sources.list sudo cp -r ~/sources.list.d /etc/apt/ sudo apt-key add repo-keys.gpg sudo apt update
3. Переустановите пакеты APT
xargs -a manual-pkgs.txt sudo apt install -y
4. Восстановление приложений Snap
tail -n +2 snaplist.txt | awk '{print $1}' | xargs -n1 sudo snap install5. Восстановление приложений Flatpak
awk '{print $1}' flatpaklist.txt | xargs -n1 flatpak install -y
6. Скопируйте обратно файлы dotfiles
cp -r backup-dotfiles/. ~/
Лучшие практики
- Храните папку с резервными копиями на внешнем диске или в облачном хранилище.
- Регулярно обновляйте резервные копии, если устанавливаете новые приложения.
- Защищайте конфиденциальные файлы, такие как SSH-ключи, при онлайн-синхронизации.
Шпаргалка: быстрые команды резервного копирования и восстановления
Резервное копирование
# Резервное копирование установленных вручную пакетов APT apt-mark showmanual > manual-pkgs.txt # Резервные репозитории и ключи cp /etc/apt/sources.list ~/sources.list.backup cp -r /etc/apt/sources.list.d ~/sources.list.d.backup sudo apt-key exportall > repo-keys.gpg # Резервное копирование приложений Snap snap list > snaplist.txt # Резервное копирование приложений Flatpak flatpak list --app > flatpaklist.txt # Резервное копирование точечных файлов mkdir -p backup-dotfiles cp -r ~/.bashrc ~/.profile ~/.gitconfig ~/.ssh ~/.config backup-dotfiles/
Восстановить
# Восстановление репозиториев и обновление
sudo cp ~/sources.list.backup /etc/apt/sources.list
sudo cp -r ~/sources.list.d /etc/apt/
sudo apt-key add repo-keys.gpg
sudo apt update
# Восстановление пакетов APT
xargs -a manual-pkgs.txt sudo apt install -y
# Восстановление приложений Snap
tail -n +2 snaplist.txt | awk '{print $1}' | xargs -n1 sudo snap install
# Восстановление приложений Flatpak
awk '{print $1}' flatpaklist.txt | xargs -n1 flatpak install -y
# Восстановление dotfiles
cp -r backup-dotfiles/. ~/
Различные способы резервного копирования и восстановления Ubuntu
Это единственный способ резервного копирования и восстановления приложений в Ubuntu? Конечно, нет. Существует множество способов резервного копирования и восстановления систем Linux. Мы уже опубликовали множество руководств на эту тему.
Заключение
Переустановка Ubuntu не обязательно должна означать начало с нуля. Выполнив эти простые действия, я восстановил свою систему за несколько минут. Наши пакеты, репозитории, приложения Snap/Flatpak и конфигурации вернулись в прежнее состояние.
Есть ли у вас более эффективный способ выполнения этой задачи? Пожалуйста, поделитесь им в комментариях ниже.
Редактор: AndreyEx