Зображення жорсткого диска на блискавці дуже велике


20

Щойно я створив зображення щойно встановленого подвійного завантаження (Ubuntu та Windows) за допомогою цієї команди (яку я деякий час використовував для менших зображень):

dd if=/dev/sda | gzip > /mnt/drive.img.gz

На цьому приводі використовується менше 60G з 500G. Тим не менш, цей файл-файл зараз має величину 409G.

Як у тому, що? Чи не вдається gzip стиснути всі ці нулі? Як я вже сказав, це щойно встановлена ​​система. Це не могло бути таким захаращеним.

Зараз я не очікував, що файл буде 60G, але 400G мені здається дуже величезним.


Відповіді:


29

Як у тому, що? Чи не повинен gzip вдатися стиснути всі ці нулі?

Так, якби вони були нулями .

Невикористаний простір на диску не означає, що він містить нулі; це означає, що він не використовується і може містити що завгодно .

Є програми, які стирають невикористаний простір на диску до нулів. Я пропоную вам скористатися ними перед тим, як зробити образ диска. (Я не пам'ятаю ні одного експромтом, в Linux, я б просто використовувати dd if=/dev/zero bs=1048576 of=somefileдля створення файлів , що містять тільки нулі, заповнюючи кожну файлову систему ;. Потім видалити їх , перш ніж зробити зображення Крім того , я вважаю за краще xzбільш gzip.)


О, дякую, я навіть не думав про те, що було на цьому диску, перш ніж я встановив його! Я думаю, що зараз швидше розпакувати це зображення і зробити його меншим (до якого, здається, також є рішення). Я також розглядаю питання про використання xz. Спасибі!
— chris137

12
Запис 400G нулів щоразу, коли ви хочете зробити клон, не здається гарною ідеєю на SSD. Інше рішення (з використанням програми клонування, обізнаної з файловою системою) здається кращою.
— Федеріко Полоні

4
@FedericoPoloni: Ні, але сформоване зображення є ідеальним зображенням із сирої дискової форми . Утиліти для клонування дисків використовують різні формати, тому для відновлення зображення вам потрібна утиліта. Я не знаю (але також не перевіряв, чи є) будь-який, який може насправді генерувати необроблене зображення, замінюючи невикористані блоки на зображенні нулями; це було б справді корисно. Використання ddв Linux - це найпростіший і найпростіший виправити непотрібний розмір зображення, а як разовий - це добре навіть на SSD.
— Номінальна тварина

1
@FedericoPoloni: Так, як gzip, так і xz-стиснуті зображення можна монтувати за допомогою nbdkit . (Я не дуже переживаю за формати, якщо вони відкриті та підтримуються більш ніж однією утилітою; я переживаю лише за те, щоб утиліти стали непідтримуваними та невдалими в нових системах. Я був би радий використовувати SquashFS замість xz або gzip, наприклад.)
— Номінальна тварина

3
@Gilles Обрізаний простір під час читання не гарантовано матиме нулі. Деякі контролери дають це, інші - ні.
— девіантфан

14

Для резервного копіювання окремих розділів ви можете використовувати partclone .

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


3
Також Clonezilla є відмінним графічним інтерфейсом для цього.
— Федеріко Полоні

partimage є прекрасним інструментом, і він вже є у багатьох Linux-дистрибутивах / живих компакт-дисках.
— Criggie

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