LINUX.ORG.RU

помогите в написании скрипта


0

0

допустим есть раздел винта: /dev/hda1 ( vfat, 15 Gb)

я хочу сделать его копию, и потом ее сжать, т.е. делаем dd if=/dev/hda1 of=/temp/hda.iso tar -cZvf /temp/hda.iso hda.iso.tar

все бы нечено но в таком случае мне придеться выделить 15Gb места, нельзя ли этот процесс сделать одновременным, т.е. по мере того как данные будут считываеться в dd, tar сразу бы их архивировал ?

anonymous
Ответ на: комментарий от sdio

"-c" и "-" это дефолтное поведение, так что они лишние
а вот bs=1024k будет не лишним добавить

dd if=/dev/hda1 bs=1024k | bzip2 > /temp/hda1.bz2

sdio ★★★★★
()
Ответ на: комментарий от Teak

Кстати, перед такими фокусами рекомендуется создать на этом разделе файл размером во всё свободное место, забитый нулями, и сразу удалить его. Чтоб в архиве были легкосжимающиеся нули, а не трудносжимающийся мусор от уже удалённых файлов.

Teak ★★★★★
()
Ответ на: комментарий от sdio

Кстати не проверял, но наверное через dd с выставленным большим bs действительно побыстрее будет.

Teak ★★★★★
()
Ответ на: комментарий от Teak

Трудно сказать, со всеми этими оптимизирующими io-scheduler_ами (типа anticipatory), думаю особой разницы не будет.

sdio ★★★★★
()
Ответ на: комментарий от Teak

>Кстати, перед такими фокусами рекомендуется создать на этом разделе >файл размером во всё свободное место, забитый нулями, и сразу >удалить его. Чтоб в архиве были легкосжимающиеся нули, а не >трудносжимающийся мусор от уже удалённых файлов.

как вы посоветуете ?

это через dd можно сделать ?

anonymous
()
Ответ на: комментарий от anonymous

cat /dev/zero >filename

и жди пока она не отвалится из-за закончившегося на разделе места. Потом сразу rm filename, всё-таки этот файл там тебе наверное не очень нужен. :)

Teak ★★★★★
()
Ответ на: комментарий от anonymous

cat /dev/zero > zero.file

пока не остановится ?

sin_a ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.