Программа с графическим интерфейсом для создания образа резервной копии раздела не больше, чем его файлы?
Мне нравятся Диски (gnome-disk-utility
) и его способность создавать резервные копии системных разделов.
Но в какой-то момент я прочитал в интернете о программе, которая создала бы такие изображения, которые были бы не такими большими, как весь раздел, а такими же большими, как файлы на нем. Теперь я не могу найти его снова.
Есть ли такая утилита?
8 ответов
Поскольку, похоже, нет какой-либо программы, которая сама по себе удовлетворяла бы двум условиям:
1) иметь графический интерфейс в стиле "Disks";
2) Создать образ диска размером с занимаемое пространство,
Я думал о довольно простом обходном пути, но с участием двух программ с графическим интерфейсом, очень распространенных в Ubuntu:
Одним из них будет тот же "Диски" (gnome-disk-utility), который используется для создания образа резервной копии данного раздела, а вторым будет Gparted, чтобы максимально сжать раздел перед созданием его образа резервной копии, и после этого изменить его размер до оригинального.
Я не вижу неудобств в такой операции: сжатие раздела до минимума займет всего несколько минут (около минуты для 10 ГБ) и создаст пустое пространство справа. После создания резервной копии диска с помощью "Дисков" с помощью Gparted можно изменить размер раздела обратно вправо в пустое пространство до его исходного состояния, и это займет всего несколько секунд.
Протестировано на разделе с установкой Ubuntu:
максимально сократить усадку с помощью Gparted
резервный образ этого раздела с дисками
восстановить образ с Дисками на раздел размером больше изображения; этот раздел должен быть сначала размонтирован: Как правильно восстановить системный раздел (iso-образ) с помощью "Дисков".
В следующем ответе используется TUI, а не GUI- решение:
В зависимости от вашего варианта использования (я использую его для резервного копирования системы), вы можете использовать CloneZilla Live. Это может создать:
- редкие изображения,
- сжатые изображения:
- целые системы,
- целые диски
- просто отдельные разделы.
Основными преимуществами являются:
- что он загружается с:
- внешние СМИ
- внутренние СМИ
- поставляется с собственной ОС (на основе Ubuntu)
- это может сделать точные резервные копии системы, которые легко восстанавливаются.
Помимо всех этих вкусностей, он также может копировать MBR.
Если резервное копирование системы охлаждения не то, что вы ищете, вы все равно можете использовать технологию, на которой основана CloneZilla, и этоpartclone
,
Достижение меньших образов дисков обычно выполняется путем не копирования нулевых блоков из исходной файловой системы в образ. Это понятие называется разреженным пространством в файлах или пробелами в файлах, и файловая система вашего хоста должна его поддерживать. немного командной строки, но попробуйте это:
sudo apt-get install virt-manager qemu-utils
И после установки вы можете использовать:
qemu-img convert -f raw -O raw /dev/sdX /home/<user>/Ubuntu.img
Это создаст разреженный (нули в файле не записаны) образ вашего диска. где -f = формат, -O выходной формат. sdX диск (также можно использовать разделы). Программа имеет расширенные функции, такие как снимки и различные форматы вывода (vdi, vmdk и т. Д.). Место, где вы сохраняете изображение , должно поддерживать разреженные файлы, иначе размер будет таким же большим, поскольку нули в разделе будут записаны на диск. И чтобы максимально использовать это, запустите программу, такую как sfill
или же zerofree
находится в разделе apt для раздела, поскольку свободное пространство не всегда означает нулевое пространство, и вы хотите максимально увеличить объем нулевого пространства в файловой системе.
Бонусные очки ниндзя. Поскольку linux считает диски "файлами", вы также можете использовать простой cp с условием, что ваш выходной раздел, где вы храните файл, знает разреженные файлы.
sudo cp --sparse=always /dev/sdX /home/<user>/Ubuntu.img
Который создаст сырую копию с помощью cp..
Примеры файловых систем, которые поддерживают разреженные: ext4, btrfs, xfs, ntfs (однако ntfs-3g может не разрешать разреженные записи).
Примеры файловых систем, которые не: fat32.
Изменить: Это не будет работать хорошо, если файлы, удаленные из файловой системы, все еще присутствуют в разделе, поэтому сначала необходимо стереть свободное место на целевом разделе:
- Смонтируйте целевой раздел
- Бежать
dd if=/dev/zero of=<path_to_partition_volume>/file.dd && rm <path_to_partition_volume>/file.dd
- Размонтировать целевой раздел
Затем:
Вы можете прочитать весь раздел раздел за блоком с dd
и вывести все в утилиту сжатия, как gzip
, Скорее всего, любой инструмент сжатия, даже используя самые быстрые / самые низкие параметры сжатия, сожмет все свободное пространство во время процесса.
С gzip
:
sudo dd if=/dev/sdX | GZIP=-1 gzip >/path/to/backup.gz
(GZIP=-1
временно устанавливает переменную среды GZIP
в -1
добиться самого быстрого / самого низкого сжатия)
Чтобы восстановить резервную копию:
gzip -d /path/to/backup.gz >/dev/sdX
Как насчет использования ddrescue
с -S
вариант?
ddrescue -S /dev/sdXY /<path_to_backup>/backup.img
Это будет клонировать каждый блок, но в блочном устройстве будет найдено ноль блоков. /dev/sdXY
в /<path_to_backup>/backup.img
Его нельзя использовать для копирования на меньший диск. Когда у меня есть диск на 64 Гб, который заполнен данными только на 10%. Я хотел бы иметь возможность скопировать его в файл образа 6 ГБ, который я могу скопировать на его диске 16 ГБ, а затем расширить его до 16 ГБ
Единственная возможность, которую я знаю сейчас, - это использовать GParted, чтобы уменьшить оригинал, затем скопировать его и затем изменить размер обоих. Очень рискованная операция, так как вам нужно уменьшить и изменить размер оригинала.
Клонезилла может быть довольно дружелюбной. Live CD не требует использования командной строки - я был бы счастлив назвать его GUI, даже если он не использует мышь - и я думаю, что по умолчанию все в порядке во многих случаях. Проблема в том, что вы явно не вызывали: похоже, она не предназначена для установки в произвольной системе Linux. Он специально для Debian / Ubuntu, и Live CD - самый простой способ его запустить.
Clonezilla / partclone используют клонирование с учетом файловой системы и используют собственный сжатый формат изображения.
Есть еще одна возможность без графического интерфейса для создания простых (монтируемых) разреженных файлов, которые не зависят от обнаружения нулевых секторов.
virt-sparsify /dev/your-block-device backup.img
Если / tmp является виртуальным диском, он предупредит, что ему может понадобиться больше места для временных файлов. Так что вам может понадобиться добавить опцию --tmp /var/tmp
,
Вы могли бы использовать rsync
резервное копирование только файлов на разделе в другой раздел. Или же tar
создать сжатый архив, содержащий все файлы.
Оба, вероятно, имеют (несколько) графических интерфейсов, но я никогда не использовал их сам.