gzip - перенаправлення чи трубопровід?


10

Я буду робити резервну копію великого (750 Гб) диска на зовнішній USB-диск за допомогою dd.
Чи слід використовувати перенаправлення або трубопровід? Що є більш ефективним? Або є різниця?

Також який найкращий розмір блоку? Тут, швидше за все, є USB.

dd if=/dev/sda bs=1M | gzip -c > /mnt/sdb1/backups/disk.img.gz

gzip -dc /mnt/sdb1/backups/disk.img.gz | dd of=/dev/sda bs=1M

проти

dd if=/dev/sda bs=1M | gzip -c | dd of=/mnt/sdb1/backups/disk.img.gz

dd if=/mnt/sdb1/backups/disk.img.gz | gzip -dc | dd of=/dev/sda bs=1M

Дякую.


2
Я б спробував створити резервну копію файлових систем, а не сирої образи диска. І щоб налаштувати параметри, вам доведеться орієнтуватися.

ddє архаїчним (будь-який інший інструмент, на щастя, знищує bs=і count=, як ddrescue), і у вашому випадку також майже безглуздий. Просто вставте його в gzip -c </dev/sda >disk.img.gz& gzip -cd disk.img.gz >/dev/sda.

Або робити це за допомогою rsync. Просто побудуйте команду з параметрами, і вона зробить все у найбільш ефективний спосіб.
вакуфо

У другій команді другого списку, що dd if=.../disk.img.gz |слід робити? Наскільки я розумію, gzip -dc(= zcat) не хвилює його, stdinколи є аргумент файлу.
sr_

Я не думаю, що Linux може надійно відтворити установки Windows, просто скопіювавши файлову структуру. Отже, потреба у розрядних копіюваннях, як dd. ddrescueвиглядає більш міцним, ніж просто dd. Чи використовуєте ви GNU ddrescueабо dd_rescue? Який хороший Live CD завантажити?
mcu

Відповіді:


3

Трубопровід передбачає ще один процес та ще одну копію наземного користувача, тому використання перенаправлення повинно бути більш ефективним.

Але я здогадуюсь, що в даний час система кешування апаратно-програмного забезпечення не повинна мати жодних реальних змін. Можливо, ви можете мати кращі результати, використовуючи bs=4kабо bs=64k, оскільки це ліміт труби під Linux. Дивіться це питання для більш детальної інформації про різні параметри bs .


9

Вам зовсім не потрібно використовувати ddабо трубопроводи.

</dev/sda gzip >/mnt/sdb1/backups/disk.img.gz
</mnt/sdb1/backups/disk.img.gz gunzip >/dev/sda

Я колись зробив орієнтир і знайшов використання ddповільніше, ніж catдля прямої копії між різними дисками. Я би сподівався, що труба зробить будь-яке рішення, що передбачає ddще повільніше в цьому випадку.


Те є приклад використання перенаправлення.
psusi

@psusi Gah! Я мав на увазі написати «дд або трубопровід». Дякую.
Жил "ТАК - перестань бути злим"

Чи є спосіб поєднати pvв цих командах?
Ярон

2
@Yaron Sure: замінити gzipна pv | gzipі gzip -dпоgzip -d | gv
Жиля SO- перестати бути злим »

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.