Скажите, что я хочу создать резервную копию "приложений" (программное обеспечение, но я предполагаю, что все - программное обеспечение) моей системы. Некоторые из них находятся в /opt
, некоторые находятся в моей домашней папке, но куда действительно больше всего идут? Для установленных через репозитории, двоичные файлы находятся в /usr/bin
и я надеюсь, что все другие необходимые файлы находятся в /usr
папка (например, библиотеки и другие файлы)
Так, мой вопрос:
Если я создаю резервную копию моего /usr
папка, переустановите систему и восстановите ту папку, я получу всю свою старую работу приложений? Или я должен сделать что-то еще?
Едва ли.
, Поскольку Вы сказали, что собираетесь получить все исполняемые файлы и большинство библиотек, но Вы собираетесь пропустить все конфигурационные файлы, среди прочего, таким образом, большинство приложений не собирается работать.
, Если я, где, думая что-то вроде этого, я предпочел бы копировать конфигурацию и переустанавливать приложения. Большинство системных файлов конфигурации расположено под /etc
каталог (пользовательские файлы конфигурации могут быть найдены в $HOME
в скрытых файлах и каталогах (.file
).
Если вам нужна резервная копия, чтобы вы могли восстановить конфигурацию системы после переустановки.
Лучший способ - создать список установленных программ.
apt-clone
обеспечивает эту функциональность. Он создает список установленных на данный момент пакетов, которые можно использовать для создания точно такой же установки на другом компьютере или для новой установки.
sudo apt-get install apt-clone
sudo apt-clone clone foo #This creates a file foo.apt-clone.tar.gz.
Скопируйте его на конечный аппарат и запустите
sudo apt-clone restore foo.apt-clone.tar.gz #this tells apt to install the packages n the list.
Я готовлюсь теперь перемещать свою установку Ubuntu 16.04 на новом ноутбуке. Это - сценарий, который я буду использовать для резервного копирования:
#!/bin/bash
# NAME: full-backup
# PATH: /usr/local/bin
# DESC: Full system backup - must call with SUDO
# DATE: July 16, 2017. Modified Oct 17, 2017.
apt autoclean # reduces size of /var/cache/apt/archives
cd /tmp # tar must be created in directory not backed up.
time tar -cvpzf backup.tar.gz \
--exclude=/backup.tar.gz \
--exclude=/proc \
--exclude=/tmp \
--exclude=/mnt \
--exclude=/dev \
--exclude=/sys \
--exclude=/media \
--exclude=/usr/src/linux-headers* \
--exclude=/home/rick/.cache \
--exclude=/var/log \
--exclude=/var/run/ \
--exclude=/run
Некоторые мои сценарии должны будут быть изменены после восстановления. Например, у меня есть сценарий обертки для dd
, который гарантирует, что данные не записаны в /dev/sda
, /dev/sdb
или /dev/sdc
. Новый ноутбук имеет PCIe NVMe SSD, где соглашение о присвоении имен Linux /dev/nvme0n1
. После восстановления я сделаю этот неисполняемый файл сценария обертки, таким образом, это не будет работать и исходные dd
выполнения вместо этого.
Другим примером является сценарий, который сбрасывает сетевой адаптер, когда возобновление от приостанавливает. Новый ноутбук будет, вероятно, иметь другой сетевой драйвер. После восстановления я прокомментирую загрузку старых названий драйвера и позволю машине приостановить/возобновить без модификаций.
заголовки Linux, которые необходимы DKMS для компиляции пользовательских драйверов, не включены в резервное копирование. Я, вероятно, удалю весь DKMS из нового ноутбука, затем устанавливают его позже, если пользовательскому драйверу было нужно.
Наконец прежде, чем восстановить таблицу /etc/fstab
диска должен быть сохранен и затем скопировал назад после восстановления.
сжатый размер файла резервной копии составляет 6 ГБ включая весь /home
файлы, которые включают не только сценарии, данные и документы, но также и конфигурационные файлы для всех приложений.