Полезная утилита dd во FreeBSD и Linux

Сегодня я рассмотрю одну из древних утилит Unix составляющую, но при этом достаточно гибкую чтобы не утерять свою актуальность не смотря не на что. Утилита dd – она есть в составе многих Unix систем к примеру FreeBSD, Linux, NetBSD и других.

Работает она просто – копирует все что идет на стандартный ввод на стандартный вывод. Но как я уже говорил – она более чем универсальна, перейдем к практике.

Наша задача сделаем образ одного из дисков нашей системы, к примеру раздел /var/, делаем это так :


ifreebsd#/>df -m
Filesystem 1M-blocks Used Avail Capacity Mounted on
/dev/ad0s1a 3872 315 3247 9% /
devfs 0 0 0 100% /dev
/dev/ad0s1e 13037 8664 3330 72% /usr
/dev/ad0s1d 965 339 548 38% /var
devfs 0 0 0 100% /var/named/dev
ifreebsd#/>dd if=/dev/ad0s1d of=var.img
2048000+0 records in
2048000+0 records out
1048576000 bytes transferred in 681.831838 secs (1537881 bytes/sec)
ifreebsd#/>
Теперь мы обладаем копией раздела /var/ в файле var.img
ifreebsd#/>ls -la var.img
-rw-r–r– 1 root wheel 1048576000 Dec 17 10:21 var.img
ifreebsd#/>


Теперь нам не составит труда смонтировать этот имидж, делаем это так (и не важно будем ли монтировать /var/ на этой же машине или на другой) :


ifreebsd#/>mdconfig -a -t vnode -f var.img -u 0
ifreebsd#/>bsdlabel -w md0 auto
ifreebsd#/>mount /dev/md0 /mnt
Вот так мы получили в каталоге /mnt полную копию /dev/ad0s1d (/var/).
Так же точно можно работать и CD/DVD копирую даже данные защищенные от копий.
Утилита много еще чего умеет и много ее где можно применить – тут просто примеры дабы показать в какую сторону можно мыслить.


Удачи.

http://ifreebsd.org/freebsd/полезная-утилита-dd-во-freebsd-и-linux/

Обновлено: 13.03.2015