Самая полная резервная копия /dev/sdX с помощью dd, tar, gz, xz.

Каков наиболее полный способ резервного копирования/восстановления всего /dev/sdX (в/из файла), включая таблицу разделов устройства и флаги разделов , все возможные метаданные, владельцев, права доступа к файлам, списки управления доступом , время создания/доступа/изменения, атрибуты файлов (например, добавлять только (a) или неизменяемый (i)), xattrs, флаги прав доступа (например, setuid, setgid, липкий бит), атрибуты, специфичные для файловой системы, и т. д., хочу ли я получить сжатый файл резервной копии? Разделы /dev/sdX могут быть отформатированы в ext4, fat, exfat, ntfs, в другой файловой системе для каждого раздела или нет.

Самый простой способ — использовать или дажеdumpутилиту, но в результате мы получим большой несжатый файл (.iso, .img, .bin и т. д.). Но что дальше?

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

Другой вариант — использовать самые современные, эффективные и многопоточные инструменты сжатия, такие как. Но человек говорит

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

Имеет ли это значение, если я использую его в канале с dd, который копирует блоки, а не файлы? Этоsudo dd if=/dev/sdX | xz -9 --threads=0 --keep -v > output.img.xzдостаточно канала, чтобы сохранить все указанные данные? И трубка типаxz -dck output.img.xz | dd of=/dev/sdX status=progressвосстановить резервную копию? Нужно ли мне беспокоиться о метаданных (атрибутах, списках управления доступом и т. д.)?

Я не уверен, что нет, учитывая цитату из xzруководства xz :

--keep Не удалять входные файлы. Начиная с xz 5.2.6, эта опция также заставляет xz сжимать или распаковывать, даже если входные данные представляют собой символическую ссылку на обычный файл, имеют более одной жесткой ссылки или имеют установленный бит setuid, setgid или липкий. Биты setuid, setgid и Sticky не копируются в целевой файл.

Нужно ли мне беспокоиться о таких параметрах команды, как--xattrs, --aclsв случае, когда я используюdd | tarтрубка?

Наконец, нужно ли мне всегда указыватьbsатрибутddкоманда, если я создаю резервную копию всего /dev/sdX и использую сжатый файл в качестве промежуточного хранилища резервной копии, если я хочу получить наиболее идентичную копию исходного устройства в результате восстановления? В этом случае какой размер bs предпочесть?

Может быть, мне нужно предпочестьfsarchiverили что-то подобное вместо dd, но оно используется реже и еще не выпущено как v1.x.

0 ответов

Другие вопросы по тегам