Как настроить параметры и список установленных пакетов

257

Если я хочу сделать резервную копию всего, что я сделал со свежей установки Ubuntu, каковы возможные варианты? Что мне нужно сделать резервную копию? Я хочу получить все настройки, которые я изменил, все установленные мной пакеты и т. Д.

    
задан n1kh1lp 24.10.2010 в 02:36
источник

14 ответов

265

Программы

Быстрый запуск резервной копии списка программ - это:

dpkg --get-selections > ~/Package.list
sudo cp -R /etc/apt/sources.list* ~/
sudo apt-key exportall > ~/Repo.keys

Он будет поддерживать их в формате, который dpkg может читать * после переустановки, например:

sudo apt-key add ~/Repo.keys
sudo cp -R ~/sources.list* /etc/apt/
sudo apt-get update
sudo apt-get install dselect
sudo dselect update
sudo dpkg --set-selections < ~/Package.list
sudo apt-get dselect-upgrade -y

* Возможно, вам придется обновить список доступных пакетов dpkg или просто проигнорировать ваши варианты (см. эта ошибка debian для получения дополнительной информации). Вы должны сделать это до sudo dpkg --set-selections < ~/Package.list , например:

apt-cache dumpavail > ~/temp_avail
sudo dpkg --merge-avail ~/temp_avail
rm ~/temp_avail

Настройки и личные данные

Перед тем, как переустановить, вы должны, возможно, создать резервную копию настроек из некоторых ваших программ, это легко сделать, захватив папки из / etc и весь контент из вашего каталога пользователя (а не только то, что вы можете увидеть в наутилусе! ):

rsync --progress /home/'whoami' /path/to/user/profile/backup/here

После переустановки вы можете восстановить его с помощью

rsync --progress /path/to/user/profile/backup/here /home/'whoami'

Итак, все вместе как скрипт псевдо-bash.

Предполагается, что на машине есть только один пользователь (удалите /'whoami' в противном случае) и вы использовали одно и то же имя пользователя для обеих установочных файлов (в противном случае измените dest. rsync).

dpkg --get-selections > ~/Package.list
sudo cp -R /etc/apt/sources.list* ~/
sudo apt-key exportall > ~/Repo.keys
rsync --progress /home/'whoami' /path/to/user/profile/backup/here

##  Reinstall now

rsync --progress /path/to/user/profile/backup/here /home/'whoami'
sudo apt-key add ~/Repo.keys
sudo cp -R ~/sources.list* /etc/apt/
sudo apt-get update
sudo apt-get install dselect
sudo dpkg --set-selections < ~/Package.list
sudo dselect
    
ответ дан Huckle 28.01.2012 в 01:19
46

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

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

Резервное копирование текущих пакетов и пользовательских настроек

Как только вы будете готовы к своей системе и будете довольны установленным программным обеспечением, вы можете получить список установленных пакетов с помощью команды dpkg --get-selections и сохранить вывод в файле журнала.

Создайте папку backup в своем доме

sudo mkdir ~/backup

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

dpkg --get-selections > ~/backup/installed_packages.log

Сделайте резервную копию файла apt sources

sudo cp /etc/apt/sources.list ~/backup/sources.bak

и копию списка доверенных ключей вашего apt

sudo apt-key exportall > ~/backup/repositories.keys

Сделайте резервную копию домашней папки со встроенным инструментом резервного копирования в Ubuntu, Deja-dup.

  • Установить папку резервного копирования

  • Убедитесь, что он сделает резервную копию вашей домашней папки и добавит любые папки, которые вам не нужны, например, папка Trash

  • На вкладке "Обзор" нажмите Сделать резервное копирование сейчас , чтобы создать резервную копию домашней папки

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

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

Восстановление резервной копии

Начните с восстановления исходного файла из сделанной резервной копии.

sudo cp ~/backup/sources.bak /etc/apt/sources.list

Поддержанные клавиши

sudo apt-key add ~/backup/repositories.keys

Обновить список источников

sudo apt-get update

Восстановить пакеты из сохраненного installed_packages.log

sudo dpkg --clear-selections
sudo dpkg --set-selections < ~/backup/installed_packages.log && sudo apt-get dselect-upgrade

sudo dpkg --clear-selections отметит все текущие пакеты, установленные для удаления, таким образом, при восстановлении сохраненного списка пакетов пакеты, которые не находятся в списке, будут удалены из вашей системы.

Удалите текущую конфигурацию из своего дома, создав резервную копию папки в их текущем состоянии (в конце концов, зачем использовать восстанавливаемые свежие файлы, если есть другие, которые могут повлиять на конфигурацию?)

mkdir ~/.old-gnome-config/ && mv ~/.gnome* ~/.old-gnome-config/ && mv ~/.gconf* ~/.old-gnome-config/ && mv ~/.metacity ~/.old-gnome-config/ && mv ~/.cache ~/.old-gnome-config/ && mv ~/.dbus ~/.old-gnome-config/ && mv ~/.dmrc ~/.old-gnome-config/ && mv ~/.mission-control ~/.old-gnome-config/ && mv ~/.thumbnails ~/.old-gnome-config/   && ~/.config/dconf/* ~/.old-gnome-config/

После этого восстановите резервную копию, созданную с помощью Deja-dup.

  • Откройте инструмент резервного копирования и на вкладке "Обзор" нажмите "Восстановить"

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

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

Осталось только очистить и проверить, что все работает.

Что-то пошло не так, мой рабочий стол ушел

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

  • Как сбросить Gnome по умолчанию?
  • Как сбросить конфигурацию Compiz / Unity?
ответ дан Bruno Pereira 28.01.2012 в 03:20
27

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

Будьте осторожны с «лучшим способом», то, что лучше всего подходит для одного человека, может быть не лучшим для другого.

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

Использование изображений

Один из способов - просто скопировать и сжать образ ваших разделов. Вы можете сделать это с помощью нескольких инструментов, от dd до partimage to clonezilla

partimage
clonezilla

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

Меньшие резервные копии

Вы можете сделать небольшие резервные копии, только резервную копию данных и настроек. Для этого есть несколько инструментов, от dd до tar до rsync.

Ключ здесь - знать, что вам нужно для резервного копирования.

Преимущество. Резервные копии будут меньше.
Недостаток - это ручной метод, поэтому легко забыть о критическом файле (/ etc / passwd).

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

1) Список установленных пакетов

Список пакетов     # Создайте текстовый список существующей установки всех установленных пакетов apt-get     #, чтобы переустановить на недавно установленном дистрибутиве

# make the list
[old distro] sudo dpkg --get-selections > packages

Затем вы выполните новую установку и восстановите свои пакеты. Следующие команды также обновляют все пакеты в вашей системе (так что восстановление и полное обновление все сразу).

# Now put them back on the new distro
[new distro] sudo dpkg --set-selections < packages

[new distro] sudo apt-get dselect-upgrade

2) Данные . Обычно это будет / дом. Большинство пользовательских данных и настроек будут находиться в домашнем каталоге ваших пользователей. Если вы сохраняете данные в других местах, включите это (например, / media / data).

3) системные настройки . Вот где будет какая-то вариация. Лично, если я редактирую системный параметр ЛЮБОЙ , я сохраняю копию исходного файла конфигурации и моего настраиваемого файла в / root. Поэтому, если я редактирую /etc/fstab , например, сохраните копию в / root / etc / fstab и оригинал в /root/etc/fstab.orig

Вам также понадобятся /etc/passwd , /etc/shadow , /etc/group , /etc/sudoers , /etc/hostname и /etc/hosts (вам может понадобиться больше в / etc, если я что-то запомнил) / p>

На сервере вам может потребоваться указать /var/www или другие каталоги данных.

Я понимаю, что это требует определенных усилий, поэтому может быть проще включить все /etc .

4) Копия вашей таблицы таблицы разделов .

sudo fdisk -l > fdisk.bak

Вы можете использовать эту информацию для восстановления таблицы разделов при замене жесткого диска.

5) Копия вашего MBR

dd if=/dev/sda of=MBR.bak bs=512 count=1

Затем вы восстановили с помощью

dd if=MBR.bak of=/dev/sda bs=512 count=1

6) Другие файлы / каталоги . В зависимости от вашей системы и настройки вам может потребоваться включить дополнительные каталоги. Соображения могут включать в себя /opt , /usr/local , / usr / share 'и / или ваши файлы .desktop. Все, что в вашей системе загружено или настроено вне приложения apt-get или программного обеспечения.

7) Поместите все это в архив

tar -cvpzf backup.tar.gz /home /root /etc ./MBR.bak ./fsdisk.bak ./packages

8) rsync

В качестве альтернативы tar вы можете использовать rsync.

Смотрите - Ссылка

Сетевые резервные копии

Другой вариант - использовать NFS или Samba для резервного копирования данных.

Cron

Вы можете автоматизировать резервное копирование, написав сценарий резервного копирования и выполнив его (ежедневно / ежечасно) с помощью cron.

Восстановление

1) Используя Live CD, восстановите свои разделы, используя gparted или fdisk, из информации в fdisk.bak
2) Установите Ubuntu.
3) Загрузите новую версию, обновите свои пакеты.
4) Восстановите свои данные и настройки

tar -xvpzf /home/test/backup.tar.gz -C / 

Затем перезагрузите

См. также - Ссылка

Другие стратегии

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

см. Ссылка

Тестирование

Это не резервная копия, если она не проверена. Это наиболее важно, когда вы НЕ используете образ вашего корневого раздела.

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

    
ответ дан Panther 28.01.2012 в 21:17
18

Установленные пакеты с использованием apt-clone

APT-Clone. This package can be used to clone/restore the packages on a apt based system. It will save/restore the packages, sources.list, keyring and automatic-installed states. It can also save/restore no longer downloadable packages using dpkg-repack.

APT-Clone используется ubiquity (установщик Ubuntu) для процесса обновления.

  1. Установить

    sudo apt-get install apt-clone
    
  2. Сделать резервную копию

    sudo apt-clone clone path-to/apt-clone-state-ubuntu-$(lsb_release -sr)-$(date +%F).tar.gz
    
  3. Восстановить резервную копию

    sudo apt-clone restore path-to/apt-clone-state-ubuntu.tar.gz
    

    Восстановить до более новой версии:

    sudo apt-clone restore-new-distro path-to/apt-clone-state-ubuntu.tar.gz $(lsb_release -sc)
    

Ссылка: man apt-clone

Домашние данные, конфигурация /etc , .. с использованием duplicity

Duplicity backs directories by producing encrypted tar-format volumes and uploading them to a remote or local file server. Because duplicity uses librsync, the incremental archives are space efficient and only record the parts of files that have changed since the last backup. Because duplicity uses GnuPG to encrypt and/or sign these archives, they will be safe from spying and/or modification by the server.

  1. Установить

    sudo apt-get install duplicity
    
  2. Резервное копирование

    duplicity full path-to/source_folder/ file:///path_to/duplicity_backups/
    

    или инкрементное резервное копирование (оно будет делать резервную копию только разницы с последней резервной копией):

    duplicity incremental path-to/source_folder/ file:///path_to/duplicity_backups/
    
  3. Восстановление

    duplicity restore file:///path_to/duplicity_backups/ path-to/target_folder/
    

Ссылка: man duplicity

    
ответ дан user.dz 22.06.2014 в 10:56
14

Хотя на этот вопрос был дан ответ на некоторое время, я заметил, что никто не упомянул об этом. Запустите apt-get install etckeeper , настройте свой VCS в /etc/etckeeper/etckeeper.conf , и с этого момента вы сможете гораздо лучше контролировать свой каталог / etc. Это может также использоваться для восстановления ваших конфигураций в каталоге / etc.

Например, (если вы настроили git как ваш VCS), создайте резервную копию своего каталога /etc/.git . Каждый раз, когда вам нужно восстановить свои конфигурации на свежий / etc, вы копируете резервную директорию /etc/.git в новый каталог / etc. Теперь у вас есть много вариантов управления восстановлением:

  • Просмотр различий
    • git diff
  • Сохраняйте все различия в «свежей» директории в ветке git
    • git checkout -b new; git add -A; git commit -m 'new etc'
  • Безоговорочно вернуться к резервной копии
    • git clean -f
ответ дан EdwardTeach 17.11.2012 в 19:26
10

Для желающих приятно. аккуратный GUI ...

... введение Aptik.

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

Вы можете установить его через ppa:

sudo apt-add-repository –y ppa:teejee2008/ppa
sudo apt-get update
sudo apt-get install aptik

Надеюсь, что это поможет :)

    
ответ дан TellMeWhy 15.10.2015 в 13:08
9

Чтобы создать список резервных копий всех установленных программ: Ссылка
> Вам, очевидно, потребуется создать резервную копию ваших источников программного обеспечения, из которых некоторые из этих установленных пакетов: Источники резервного копирования

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

    
ответ дан Isaiah 24.10.2010 в 05:52
2

I want to have ready-to-restore apps and their data, also offline.

Это побеждает цель «форматирования и установки». Если вы хотите это сделать, просто выполните обновление с существующей установки Ubuntu.

Так как «установка» в Ubuntu так же просто входит в Центр программного обеспечения (или Synaptic или apt-get ), и большинство программ сами обновляются часто, нет никакой реальной резервной копии программ, переустановки Ubuntu, а затем установки из резервных копий вместо того, чтобы просто получать последние версии из репозиториев.

Пока ваши резервные копии данных и программ сохраняются, вы должны быть в порядке. Если вам все еще нужен исчерпывающий список всего в вашей системе, чтобы вы знали, что пакет отсутствует, просто зайдите в терминал и наберите dpkg --list > mypackages.txt и поместите этот текстовый файл где-нибудь в безопасности - он содержит каждый когда-либо установленный в вашей текущей системе.

    
ответ дан ish 21.05.2012 в 05:23
2

Я предполагаю, что это новый жесткий диск, SSD или новая система, или у вас был старый Ubuntu. Теперь вы хотите перейти на Ubuntu 12.04 (Precise Pangolin)?

Я полагаю, вы ненавидите установку их снова или реконфигурирование? Не нужно.

Откройте терминал, нажав Ctrl + Alt + T и выполните следующую команду:

sudo dpkg --get-selections > app-backup-list.txt

Затем cp текстовый файл в ваш домашний каталог:

sudo cp app-backup-list.txt /home/username

Затем запустите приложение резервного копирования из системных настроек на боковой панели.

Резервное копирование /home в Ubuntu One, флеш-карту, дискету (сглаживание царапин) или запись на компакт-диск или другой жесткий диск в системном или внешнем жестком диске или использование любой требуемой программы резервного копирования.

Затем отмените резервное копирование с помощью восстановления, выберите в программе резервного копирования, которую вы использовали, и теперь \ home вернулся.

Наконец, отмените команду dkpg :

sudo dpkg --get-selections < app-backup-list.txt
sudo apt-get -y update
sudo apt-get dselect-upgrade

Примечание

Восстановление дома, получение всех настроек для ваших приложений. Я установил SSD и скопировал все файлы, но я все же сделал резервную копию на всякий случай.

PS . Это позволяет избежать, на самом деле, резервного копирования массивного кода приложений и т. д. Убедитесь, что папка загрузки чиста. Не заполнен машинным кодом или видео, а затем сгенерируйте папку download на DVD с помощью k3B.

    
ответ дан modprobe 21.08.2012 в 19:23
2

Если пространство для хранения данных не вызывает беспокойства, использование dd или dc3dd будет делать резервные копии абсолютно всех на целевом диске или разделе, который вы обозначили. Вы не хотите попробовать это на подключенном диске, так что сделайте это с загрузочного USB или DVD (или на установочном носителе, выбрав «Try Ubuntu»):

sudo dd if=/dev/<source> of=/path/<target>.img

Где диск или раздел, который вы хотите создать для резервного копирования и таргетинга, - это имя файла резервной копии (часто то же самое) ( sda , sda1 ).

Замените dc3dd для dd, если вам нужен отчет о проделанной работе . Чтобы получить доступ к определенным файлам в резервном копировании, вы можете, как правило, монтировать полученный .img-файл как устройство цикла с помощью:

mount -o loop,ro,offset=32256 filename.img /mnt/dir Это работает на дисках с одним разделом, где вы создали резервную копию всего диска.

Или mount -o loop,ro filename.img /mnt/dir , если вы создали резервную копию раздела.

Вы можете восстановить весь диск или раздел, заменив параметры if = и of =, как в:

sudo dd if=/path/<source>.img of=/dev/<target>

Где находится файл изображения, который вы хотите восстановить и < target > это диск или раздел, который вы хотите восстановить.

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

CONS: Время (время компьютера, а не ваше) и не подходит для ежедневного резервного копирования (без дополнительных настроек)

Источник: опыт; Я использую этот подход для резервного копирования клиентских систем до начала работы и никогда не терял несколько данных клиента.

    
ответ дан Elder Geek 21.05.2014 в 20:31
1

Я нашел другое решение:

Проверьте APTonCD . Он будет создавать резервные копии всех ваших приложений и помещать их в образ ISO.

    
ответ дан Suhaib 05.07.2012 в 18:38
0

Я считаю, что самый простой процесс - использовать две программы:

Возврат к резервному копированию / home и / etc

Aptik для резервного копирования программ

    
ответ дан Amphibio 07.04.2016 в 22:07
0

Изменить:

Этот ответ больше не работает в соответствии с пользователем @Izzy

У меня был тот же вопрос выше! то я нашел этот сайт:

ЩЕЛКНУТЬ ЗДЕСЬ

Я скопирую то, что говорит сайт для резервного копирования программ:

" Вместе с резервным копированием моего / домашнего раздела я также использую Synaptic Package Manager для периодического создания списка резервных копий всех установленных пакетов (приложений и их зависимостей). Для этого вам нужно использовать Ubuntu основанный на дистрибутиве или тот, который использует Synaptic. Я не знаком с этим в других дистрибутивах, которые используют другой менеджер пакетов. Но в Bodhi Linux, Linux Mint или любом другом производном Ubuntu / Debian просто откройте Synaptic, перейдите в File > Сохранить заметки. Обязательно проверьте флажок «Сохранить полное состояние, а не только изменения», а затем сохраните этот файл там, где вы хотите (желательно, где бы вы не сохранили резервную копию вашего дома). Затем, когда вам нужно переустановить операционную систему, после применения всех обновлений вы можете открыть Synaptic, перейти в File > Прочитайте отметки и выберите файл сохраненных пакетов. Пока вы подключены к Интернету, он автоматически загружает и устанавливает все приложения и другие пакеты, которые вы изначально установили. Это, безусловно, экономит много времени и проблем, поэтому вам не нужно искать и переустанавливать все ваше приложение

веселит

    
ответ дан Suhaib 30.06.2012 в 18:59
-1

Для резервного копирования всех установленных пакетов с помощью графического интерфейса вы можете использовать Центр программного обеспечения Ubuntu. Перейдите в меню (затем войдите в систему) и выполните синхронизацию всех ваших пакетов. Когда вам нужно будет переустановить, выберите все пакеты с компьютера и нажмите «установить» из того же меню.

В командной строке (CLI) вы также можете использовать OneConf (oneconf).

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

    
ответ дан cm-t 10.09.2013 в 16:14