답변:
거의 모든 읽기 전용 DMGs 실제로 압축 ( UDZ0
- 투시 hdiutil(1)
사람 페이지), 자신의 파일 형식은 그들에게 쓰기 가능하게 "조금 내리고"단순히 지원하지 않도록.
디스크 유틸리티를 사용하거나
hdiutil imageinfo filename.dmg
... 디스크 이미지의 형식을 확인하려면 디스크 유틸리티 또는 이와 유사한 것을 사용할 수 있습니다.
hdiutil convert filename.dmg -format UDSP -o filename.sparseimage
... 읽기-쓰기 형식으로 변환합니다. 변환은 제자리에서 일어나지 않으므로 출력 파일을 압축되지 않은 파일의 모든 데이터를위한 충분한 공간이있는 파일 시스템에 배치하도록 지시해야합니다 .dmg
.
이 .dmg
확장 기능은 이미지가 실제로 압축되었음을 보장하지는 않지만 가장 가능성이 높습니다.
와 함께 사용 가능한 다른 여러 가지 방법이 있습니다 hdiutil
. 예를 들어 .dmg
실제로 압축되지 않은 읽기 전용 ( UDRO
) 인 경우 읽기 / 쓰기를 강제로 마운트 할 수 있습니다. 또한 .dmg
압축 된 상태를 유지하고 쓰기 가능한 방식으로 마운트하려는 경우 "그림자 파일"로 마운트 할 수 있습니다. 모든 쓰기는 실제로 섀도 파일에 쓰여집니다.
업데이트 :이 질문에 대한 다른 답변은 .dmg
항상 UDZ0
사실이 아닌 것을 의미 한다고 생각 합니다. 로부터 hdiutil(1)
man 페이지, 여기에 내부 형식의 목록은이 .dmg
있을 수 있습니다 (이 중 몇 가지있을 수 있습니다 기본 같은 파일 이름 확장을 .sparseimage
,하지만 난 확신이의 아닌 하드 및 빠른 규칙 중이야).
UDRW - UDIF read/write image
UDRO - UDIF read-only image
UDCO - UDIF ADC-compressed image
UDZO - UDIF zlib-compressed image
UDBZ - UDIF bzip2-compressed image (OS X 10.4+ only)
UFBI - UDIF entire image with MD5 checksum
UDRo - UDIF read-only (obsolete format)
UDCo - UDIF compressed (obsolete format)
UDTO - DVD/CD-R master for export
UDxx - UDIF stub image
UDSP - SPARSE (grows with content)
UDSB - SPARSEBUNDLE (grows with content; bundle-backed)
RdWr - NDIF read/write image (deprecated)
Rdxx - NDIF read-only image (Disk Copy 6.3.3 format)
ROCo - NDIF compressed image (deprecated)
Rken - NDIF compressed (obsolete format)
DC42 - Disk Copy 4.2 image
다음은 방금 프로젝트에 사용한 방법이며 지금까지 가장 좋은 방법이었습니다. 여기에서 찾았습니다.
http://myjeeva.com/best-possible-way-edit-read-only-dmg.html
hdiutil을 사용하여 읽기 전용 dmg 파일 첨부
hdiutil attach -owners on /path/to/your.dmg -shadow
DM을 수정하십시오. 명령 행을 사용하여 컨텐츠를 추가, 편집 또는 삭제하십시오. GUI에서 컨텐츠를 작성하면 이상한 부작용이나 권한 문제가 발생할 수 있습니다. 또한 명령 을 sudo 해야 할 수도 있습니다
아래 명령으로 마운트 된 드라이브를 분리하거나 Finder에서 꺼내십시오.
# fill disk number at <number>
hdiutil detach /dev/disk<number>
음영 처리 된 dmg를 읽기 전용 DMG로 변환 / 쓰기
hdiutil convert -format UDZO -o /path/to/new.dmg /path/to/your.dmg -shadow
DMG에 쓸 수 없습니다. 그것은 말도 안돼. 모든 것을 복사하고 편집하고 새로운 DMG를 만들어야합니다.
죄송합니다.
공간을 추가 할 방법이 없으므로 일반 DMG 이미지는 쓸 수 없습니다. @Brian_Postow가 지적한 해결책은 전체 내용을 복사하고 완전히 새로운 DMG 파일을 만드는 것입니다. 이 작업을 많이 수행하려는 경우 다음에 쓰기 가능 하므로 스파 스 이미지 를 만듭니다 .