Зміна ємності DMG


20

Під час зміни свого mac HDD на SSD я зіткнувся з такою проблемою:

Я створив DMG-зображення свого старого жорсткого диска, ємністю 320 Гб. Файл DMG запам’ятав і врятував ємність у зображенні, а проблема в тому, що мій SSD лише 120 Гб .. Тож DMG не можна використовувати, якщо я не можу якось зменшити ємність ..

EDIT : Загальна кількість використовуваного місця на зображенні становить лише 15 Гб ..

Я переглянув, hdiutilале я насправді розробник рубіну на рейках, тому я не дуже розумію цього матеріалу.

Чи можливий їх спосіб за допомогою тієї чи іншої утиліти знизити ємність DMG?

Спасибі!

Відповіді:


39

Я не бачив хорошого способу через графічний інтерфейс, який я бачив робити це - ви повинні використовувати, hdiutilяк ви просили. Це швидка команда. Щоб змінити розмір (змініть 25G на все, що завгодно),

hdiutil resize -size 25G /PATH/TO/DISK/IMAGE.dmg

Ще один спосіб його стиснення - це клонувати зображення вашого диска в осередок, а потім стискати спарсендле. Це може бути, а може і не працювати, залежно від того, скільки відбувається стиснення.

Спочатку створіть образ диска, який відображає ваше старе зображення диска:

hdiutil convert /location/of/disk.dmg -format UDSP -o /PATH/TO/NEWIMAGE.sparseimage

Потім ущільнюйте отриманий розріз:

hdiutil compact /PATH/TO/NEWIMAGE.sparseimage

Якщо ці команди не працюють, то це має щось спільне із зображенням вашого диска та / або дозволами.

Я провів багато часу, граючи з цим, hdiutilі це далеко не бездоганно - я знайшов і подавав помилок у Snow Leopard, які досі не виправлені в Mountain Lion, тому, якщо у вас є трохи дивної поведінки, не робіть будьте поставлені!


Я спробував це, але дієслово resize кидає проблему дозволу, я зараз створюю диск RW диска, щоб побачити, чи це працює.
Тім Баас

З мого зображення диска RW я зміг використати дієслово розміру та зменшити зображення до 120G, це призвело до ємності 128,85 Гб .. Отже, це правильний шлях, але це все ще недостатньо, щоб поміститись на мій SSD .. Компактне дієслово не працює, йдеться compact failed - function not implemented.
Тім Баас

@TimBaas Kinda пізно, але якщо у вас виникли проблеми з дозволом (можливо, у вас немає доступу на запис у DMG), ви можете використовувати sudo hdiutil resize -size 25G /PATH/TO/DISK/IMAGE.dmg. Я щойно зробив це із зображенням резервного диска Time Machine, і, здавалося, не порушував жодних дозволів.
судо

Я перетворив на розріджене зображення з вашою другою командою, але тоді ні ані той, compactані інший resizeне працювали б над цим. compactсказала, що вона оброблена 0 байтами, але в мене 40GiB безкоштовно. convertсказав, що розмір занадто малий Гучність - Mac OS Extended (Journaled).
судо

1

Спробуйте це:

hdiutil compact image.dmg

Але як ви бачите в посібнику з hdiutil :

Depending on the location of files in the hosted filesystem, compact may or may not shrink the image.

Дякую за вашу реакцію. Під час виконання цієї команди я отримую відповідь, що їхня проблема з дозволом. Можливо, тому, що dmg є форматом диска, форматованого лише для читання. У мене зараз Carbon Copy Cloner створює копію через FireWire ..
Тім Баас

Ви можете використовувати утиліту диска Mac OS X для перетворення зображення з ro в rw.

Я отримав це, працюючи з CCC, все-таки дякую за вашу допомогу!
Тім Баас

1

Після того, як cjc вказав, щоб задати питання на apple.stackexchange.com, я це зробив. На запитання я потрапив у відповідні квести, які відповів хтось, хто сказав спробувати Carbon Copy Cloner.

Carbon Copy Cloner клонував файли через FireWire на мій SSDisk, не запитував, і все як слід бути ..

Ось питання, яке я маю на увазі:

Відновлення системи з DMG (оригінальний диск, що перевищує призначення)

Для тих, хто цікавиться зміною розміру зображення диска:

Зробіть зображення вашого диска читанням-записом у програмі Mac Disk Utility:

Встановіть диск, виберіть його та натисніть на нове зображення диска. Виберіть команду читання-запису в структурі зображення диска, що випадає, і натисніть кнопку «Зберегти». (Моя ОС - голландська, тому це мої власні переклади).

Використовуйте hdiutilдля зміни розміру образу диска:

У терміналі: hdiutil resize -size 100G /location/of/disk.dmg. Ви можете замінити 100G на потрібний розмір.

Необов’язково (не працювало для мене), ви можете спробувати його компактно:

У терміналі: hdiutil convert /location/of/disk.dmg -format UDSP -o /location/of/NEW/disk.dmg.

Це створює розріджений образ.

Потім: hdiutil compact /location/of/SPARSE/disk.dmg.sparseimage

Це спробує звільнити місце на зображенні диска. Якщо це працює, я думаю, вам може знадобитися знову змінити розмір DMG, щоб зменшити ємність (я не впевнений) ..


0

Пробував усе це безрезультатно; hdiutil не дозволив мені змінити розмір нижче певного порогу (набагато нижче, ніж ОП).

Проста відповідь:

  1. Створіть новий файл DMG у потрібному розмірі.
  2. Скопіюйте всі файли зі старого DMG
  3. Закрийте і знову відкрийте новий DMG і переконайтеся, що це все добре
  4. Сміття / резервне копіювання / архівування старого DMG.

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