Сократить. Sparseimage

9571
squircle

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

12

2 ответа на вопрос

13
squircle

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

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

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

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

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

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

Приготовьтесь к часам веселья, наблюдая, как второй индикатор прогресса подкрадывается к правому краю Терминала. Daniel Beck 13 лет назад 1
@Daniel Я немного отредактировал свой ответ. Я протестировал его на меньшем `sparseimage`, и он работал довольно быстро, но на большом изображении это занимает довольно много времени. Сейчас такие времена, я благодарен за то, что обновил жесткий диск до 7200 об / мин! squircle 13 лет назад 0
Это связано с тем, сколько нужно сделать для реорганизации этой задачи. Обычно это происходит довольно быстро, если вы сбрасываете некоторые файлы в `sparseimage`, извлекаете их обратно, и они компактны, поскольку система может просто выбросить эти байты. Daniel Beck 13 лет назад 0
Если вы получили сообщение об ошибке «hdiutil: компактный сбой - функция не реализована»: http://apple.stackexchange.com/questions/132147/hdiutil-compact-failed-function-not-implemented traindriver 9 лет назад 3
4
Hải Phong
  1. Дважды щелкните .sparseimageфайл, чтобы открыть его
  2. Очистить корзину
  3. Извлечь .sparseimageдиск
  4. Введите это в Терминал: hdiutil compact path-to-file.sparseimage
Мне нравится добавление «Очистить корзину», я думаю, это шаг, который легко пропустить. Eric 6 лет назад 0

Похожие вопросы