LinuxForum.Fans
Тема

Снатие образа диска ddrescue

Автор: yurasik6363 7 сообщений 878 просмотров
24.12.2014 09:15 · отредактировано #406729

Есть скрипт

text
#!/bin/bash
#Backup system in IMG to net server storage to folder backup.
#V.1.0.1

echo "Просмотреть список устройств - fdisk -l или ls /dev/sd* или /dev/*" ls /dev/sd* echo -n "Укажите диск с которого нужно снять образ (например sda или cciss/c0d0): " read diskin echo -n "Укажите образ диска (gateway, asterisk): " read diskimg mkdir /mnt/backup/$diskimg dd if=/dev/zero of=/zero_file bs=16M rm /zero_file ddrescue --sparse /dev/$diskin /mnt/backup/$diskimg/$diskimg"_"`date +%d.%m.%Y`.img /mnt/backup/$diskimg/$diskimg"_"`date +%d.%m.%Y`.img.log echo "Создание backup завершено!"

Все работает замечательно, за маленьким исключением как видите ddrescue имеет параметр --sparse что означает объяснять не нужно, но при создании образа диска занятым на 200 мегабайт и общим объемом 36.6 GB образ получается 36.6 GB а не 200М, что делать я не знаю. Подскажите куда и чем копать.

P.S. О главном - Centos 6.6 установка была Web Server, соответственно установил ddrescue и даже пакет sparse (попробовал на вскидку yum install sparse и он там есть, поставил результатов не принесло), файловая система ext4, вместо dd if=/dev/zero of=/zero_file bs=16M wiki говорит есть fallocate но как пользоваться я не разобрался.

24.12.2014 09:59 · отредактировано #406734
"yurasik6363" написал:
Все работает замечательно, за маленьким исключением как видите ddrescue имеет параметр --sparse что означает объяснять не нужно, но при создании образа диска занятым на 200 мегабайт и общим объемом 36.6 GB образ получается 36.6 GB а не 200М, что делать я не знаю. Подскажите куда и чем копать.

смотри размер с помощью du, а не в ls...
используй ФС, которая поддерживает разряженные файлы (почти все распространённые, окромя fat'а)

"yurasik6363" написал:
и даже пакет sparse (попробовал на вскидку yum install sparse и он там есть, поставил результатов не принесло)

казалось бы, при чём тут «C semantic parser»...

"yurasik6363" написал:
dd if=/dev/zero of=/zero_file bs=16M wiki говорит есть fallocate но как пользоваться я не разобрался.

нет, fallocate это вообще из другой оперы...

"yurasik6363" написал:
dd if=/dev/zero of=/zero_file bs=16M

zerofile должен создаваться на разделе /dev/$diskin, а не в корне...

"yurasik6363" написал:
mkdir /mnt/backup/$diskimg
dd if=/dev/zero of=/zero_file bs=16M

тут следовало бы размонтировать раздел и сделать sync... на всякий случай...

ЗЫ: используй тег [сode] для листингов

24.12.2014 10:12 · отредактировано #406739
"Fat-Zer" написал:
смотри размер с помощью du, а не в ls...

Скорее всего оно и есть)
[console]# du __test.disk.img
57744 __test.disk.img
# ls -l
-rw-r----- 1 root root 1010826752 дек 24 09:08 __test.disk.img[/console]

"Fat-Zer" написал:
zerofile должен создаваться на разделе /dev/$diskin, а не в корне...
"Fat-Zer" написал:
тут следовало бы размонтировать раздел и сделать sync... на всякий случай...

Ну мож там корень копируется.....
ЗЫ
А чем не канает вот это??

text

создать образ:
dd if=/dev/$diskin | gzip -c9 > /PATH/TO/BACKUP.gz

распаковать обратно: gunzip -c /PATH/TO/BACKUP.gz | dd of=/dev/$diskin

24.12.2014 10:51 #406749

А чем не канает вот это??
text

создать образ:
dd if=/dev/$diskin | gzip -c9 > /PATH/TO/BACKUP.gz

распаковать обратно: gunzip -c /PATH/TO/BACKUP.gz | dd of=/dev/$diskin

А тем что если диск не новый то будут проблемы

24.12.2014 10:54 #406751


смотри размер с помощью du, а не в ls...

ЗЫ: используй тег [сode] для листингов

Попробую du отпишусь. PS: спасибо за code бессонная ночка выдалась и хотелось быстрее ответ получить не подумал, прошу прощения, исправил.

24.12.2014 11:09 #406752
"diablopc" написал:
Ну мож там корень копируется.....

тогда а)не запрашивать в юзера diskin. б) mount -o remount,ro

"yurasik6363" написал:
PS: спасибо за code бессонная ночка выдалась и хотелось быстрее ответ получить не подумал, прошу прощения, исправил.

/me простирает свою царственную длань и изрекает: «Прощён...»

24.12.2014 11:20 #406757

du -sh успокоило душу, файл соответствует размеру занимаемого пространства. Всем спасибо тема закрыта.

Войдите или зарегистрируйтесь, чтобы ответить.