DMG 용량 변경


20

Mac HDD를 SSD로 변경할 때 다음 문제가 발생했습니다.

용량이 320GB 인 오래된 HDD의 DMG 이미지를 만들었습니다. DMG 파일은 이미지의 용량을 기억하고 저장했으며, 문제는 SSD의 용량이 120GB에 불과하다는 것입니다. 따라서 어떻게 든 용량을 줄일 수 없으면 DMG를 사용할 수 없습니다.

편집 : 이미지에서 사용 된 총 공간은 15GB입니다.

나는 보았지만 hdiutil실제로 루비 온 레일 개발자이므로 실제로이 물건을 얻지 못합니다.

DMG의 용량을 줄이기 위해이 유틸리티 나 다른 유틸리티를 사용할 수 있습니까?

감사!

답변:


39

GUI를 통해이 작업을 수행하는 좋은 방법은 없습니다 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에서 여전히 수정되지 않은 버그를 발견하여 제출했습니다. 그래서 이상한 행동을 취한다면 미루다!


나는 이것을 시도했지만 크기 조정 동사에 권한 문제가 발생합니다. 이제 작동하는지 확인하기 위해 RW 디스크 이미지를 만들고 있습니다.
Tim Baas

RW 디스크 이미지를 사용하면 크기 조정 동사를 사용하고 이미지를 120G로 축소 할 수 있었으며 용량은 128,85GB였습니다. 따라서 올바른 방법이지만 여전히 SSD에 적합하지 않습니다. 콤팩트 동사는 작동하지 않습니다 compact failed - function not implemented.
Tim Baas

@TimBaas Kinda는 늦었지만 권한 문제가 발생하면 (DMG에 대한 쓰기 액세스 권한이 없을 수 있음)을 사용할 수 있습니다 sudo hdiutil resize -size 25G /PATH/TO/DISK/IMAGE.dmg. 방금 Time Machine 백업 디스크 이미지로이 작업을 수행했는데 권한이 손상되지 않은 것 같습니다.
sudo

두 번째 명령으로 희소 이미지로 변환했지만 그중에서도 작동 compact하지 않습니다 resize. compact0 바이트를 트리밍한다고 말했지만 40GiB가 비어 있습니다. convert크기가 너무 작습니다. 볼륨은 Mac OS Extended (저널링)입니다.
sudo

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는 읽기 전용 형식의 디스크 이미지이기 때문일 것입니다. 이제 FireWire를 통해 사본을 생성하는 Carbon Copy Cloner가 있습니다.
Tim Baas

Mac OS X 디스크 유틸리티를 사용하여 ro에서 rw 이미지로 변환 할 수 있습니다.

어쨌든 도움을 주셔서 감사합니다.
Tim Baas

1

cjc가 apple.stackexchange.com에서 질문을 하자고 말한 후에 나는 그렇게했습니다. 질문을 할 때 Carbon Copy Cloner를 사용해 보라는 누군가가 대답 한 관련 퀘스트를 받았습니다.

Carbon Copy Cloner는 FireWire를 통해 파일을 SSDisk에 의심없이 묻지 않고 복제했습니다.

다음은 내가 말하는 질문입니다.

DMG에서 시스템 복원 (대상보다 큰 원본 소스 디스크)

디스크 이미지 크기 조정에 관심이있는 사용자 :

Mac의 디스크 유틸리티에서 디스크 이미지를 읽기 / 쓰기로 작성하십시오.

디스크를 마운트하고 선택하고 새 디스크 이미지를 클릭하십시오. 디스크 이미지 구조 드롭 다운에서 읽기-쓰기를 선택하고 저장을 클릭하십시오. (내 OS는 네덜란드어이므로 이것들은 내 자신의 번역입니다).

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을 사용하면 특정 임계 값 (OP보다 훨씬 낮음)보다 작은 크기를 조정할 수 없습니다.

간단한 답변 :

  1. 원하는 크기로 새 DMG 파일을 만드십시오.
  2. 이전 DMG에서 모든 파일을 복사하십시오.
  3. 새 DMG를 닫았다가 다시 열고 모두 정상인지 확인
  4. 이전 DMG를 휴지통 / 백업 / 보관합니다.

시스템을 복사 할 때이 작업을 수행하는 방법을 잘 모르겠습니다. cp특수 파일에 대한 수많은 오류가 발생합니다.
sudo
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.