Уменьшить .sparseimage

14

У меня есть .sparseimageдиск, который занимает 90 ГБ на жестком диске, несмотря на то, что в нем всего 30 ГБ файлов. Как я могу освободить свободное место, используемое .sparseimageи сжать файл?

squircle
источник

Ответы:

15

После некоторого беглого поиска, я нашел форум пост , указывающий на hdiutil«s compactглагол. Со manстраницы:

компактное изображение

сканирует полосы разреженного (SPARSE или SPARSEBUNDLE) образа диска, содержащего файловую систему HFS, удаляя те части образа, которые больше не используются файловой системой. В зависимости от расположения файлов в размещенной файловой системе, компактный может уменьшать или уменьшать изображение. Для изображений SPARSEBUNDLE полностью неиспользуемые файлы полос просто удаляются.

Я побежал, hdiutil compact drive.sparseimageи он успешно освоил почти 98% пространства.

(Я думаю, что это один из тех дней ... Я должен сначала научиться Google вещи).

Изменить: я протестировал compactна 1 ГБ sparseimageс несколькими текстовыми файлами, и он работал довольно быстро, но мой Mac занимает довольно много времени, чтобы сжать изображение 90 ГБ. Будьте готовы ждать.

squircle
источник
1
Приготовьтесь к часам веселья, наблюдая, как второй индикатор прогресса подкрадывается к правому краю Терминала.
Даниэль Бек
@Daniel Я немного отредактировал свой ответ. Я тестировал его на меньшем, sparseimageи он работал довольно быстро, но на большом изображении это занимает довольно много времени. Сейчас такие времена, я благодарен за то, что обновил жесткий диск до 7200 об / мин!
Белка
Это связано с тем, сколько нужно сделать для реорганизации этой задачи. Обычно это происходит довольно быстро, если вы выгружаете некоторые файлы sparseimage, извлекаете их обратно, и они компактны, поскольку система может просто отбрасывать эти байты.
Даниэль Бек
3
Если вы получаете сообщение об ошибке «hdiutil: компактный сбой - функция не реализована»: apple.stackexchange.com/questions/132147/…
traindriver
6
  1. Дважды щелкните .sparseimageфайл, чтобы открыть его
  2. Очистить корзину
  3. Извлечь .sparseimageдиск
  4. Введите это в Терминал: hdiutil compact path-to-file.sparseimage
Хи Фонг
источник
Мне нравится добавление «Очистить корзину», я думаю, это шаг, который легко пропустить.
Эрик