Рекомендуется сделать ДВА резервных копии. 1 для / и 1 для / home, если они находятся в другом разделе. Если вы хотите, вам нужно добавить множество исключений для этой команды. Пример:
sudo su
cd /
tar -cvpzf backup.tar.gz --exclude=/backup.tar.gz --one-file-system /
tar -cvpzf backuphome.tar.gz --one-file-system /home/
создаст резервную копию вашего корневого каталога и исключит ВСЕ смонтированные разделы, например / media (вы не хотите создавать резервные копии внешних устройств (вы действительно этого не делаете)), и вы абсолютно НЕ хотите создавать резервные копии чего-то вроде / dev или / proc. И / home переходит в другую резервную копию.
В вышеупомянутом методе резервная копия хранится в /. Лучше хранить его на внешнем носителе; Затем вы можете поместить каталог перед backup.tar.gz и удалить --exclude=...
из 1-й команды.
- backup.tar.gz это резервная копия.
- Это
--exclude
предотвратит резервное копирование фактической резервной копии.
cvpzf: создавать, подробно, сохранять разрешения, сжимать, использовать файл.
--one-file-system - не включать файлы в другую файловую систему. Если вы хотите, чтобы другие файловые системы, такие как раздел / home, или внешний носитель, смонтированный в / media, были зарезервированы, вам нужно либо создать их резервную копию отдельно, либо пропустить этот флаг. Если вы пропустите этот флаг, вам нужно будет добавить еще несколько аргументов --exclude =, чтобы избежать нежелательных файловых систем. Это будут каталоги / proc, / sys, / mnt, / media, / run и / dev в корневом каталоге./ proc и / sys - это виртуальные файловые системы, которые предоставляют окна в переменные работающего ядра, поэтому вы не хотите пытаться делать резервные копии или восстанавливать их. / dev - это tmpfs, содержимое которого динамически создается и удаляется с помощью udev, поэтому вы также не хотите создавать резервные копии или восстанавливать его. Аналогично, / run - это tmpfs, который содержит переменные в работающей системе, резервное копирование которых не требуется ( Source ).
Так что ... если вы действительно хотите "однострочник", он может выглядеть так:
cd /
tar -cvpzf backup.tar.gz --exclude=/backup.tar.gz --exclude=/proc
--exclude=/tmp --exclude=/mnt --exclude=/dev --exclude=/sys /
(Надеюсь, я получил все, что нужно исключить)
Восстановление будет
sudo su
cd /
tar xvzf backup.tar.gz
Я не использовал sudo
перед командой tar, так как вы получите сообщения об ошибках относительно прав доступа (из-за файлов, принадлежащих пользователю root).
tar
на самом деле не заботятся об устройствах и точках монтирования. Пожалуйста, отредактируйте свой пост, чтобы включить дополнительную информацию.