dmgは、macOSで使われるディスクイメージのファイル形式。アプリの配布や、ファイルの保管に使われる。dmgは、hdiutilかdiskutil imageで作る。ここでは、dmgの作り方を解説した記事へリンクする。
hdiutilとdiskutil image
dmgを作るhdiutil createは、実行すると、diskutil image createへの移行を勧める警告が表示される。hdiutil attach、hdiutil detach、hdiutil convert、hdiutil imageinfoも、同様に非推奨の警告が表示された。警告が表示されても、コマンドは動作する。
記事では、hdiutilの使い方に加えて、移行先のdiskutil imageの使い方も紹介する。実行例はmacOS 27.0.1のもの。
記事一覧
dmgを作る
- 【hdiutil】フォルダからdmgを作る
hdiutil create -srcfolderでフォルダからdmgを作り、マウントして中身を確認する。 - 【hdiutil】空のdmgを作って中身を書き込む 容量を指定した空のdmgを作って書き込み、圧縮した形式に変換する。スパースバンドルも紹介する。
- 【diskutil】image createでdmgを作る
非推奨の
hdiutil createの移行先として、diskutil image createのfromとblankを紹介する。
dmgの形式を選ぶ
- 【hdiutil】dmgの圧縮形式を選ぶ
UDZO、ULFO、ULMOなどの形式を、同じ中身で比べる。 - 【hdiutil】dmgのファイルシステムを指定する
-fsで指定できるファイルシステムと、大文字と小文字の区別の違いを比べる。
dmgを保護して配布する
- 【hdiutil】dmgをパスワードで暗号化する
-encryption AES-256で暗号化したdmgを作り、標準入力のパスワードでマウントする。 - 【dmg】配布用のレイアウトにする
/Applicationsへのシンボリックリンクを入れ、背景画像とアイコンの配置をFinderに設定させる。
署名と公証
dmgの署名と公証は、別の記事で紹介している。
- 【notarytool】dmgを公証する (submit) dmgに署名して、公証とstaple(公証チケットを添付)までを行う。
- 【codesign】署名の内容と整合性を検証する
codesignで、署名の内容を検証する。
\第一線のプログラマーの行動原理を学べる!/
