Home

MacのDiskutilコマンドの説明 | diskutil list/erase/apfs/repair

Updated on 2024年12月3日火曜日

Written by

JackYamamoto

Approved by

Jessica Shee

やまと English Français Deutsch Español Português

概要: この記事では、iBoysoftから、ターミナルで内部または外部ディスク/パーティションを管理するための各動詞を使用する方法について学びます。以下の動詞について説明します: diskutil list, diskutil apfs, diskutil erase, diskutil mount/unmount, diskutil repair、そしてdiskutil eject。

多くのMacユーザーは、macOSに組み込まれたディスク管理ツールであるDisk Utilityを知っています。しかし、そのコマンドラインの相当部分である diskutil を知っている人は少数です。基本的に、diskutilはDisk Utilityの生の、より高度なバージョンです。

適切な動詞とパラメータと組み合わせることで、Disk Utilityで利用可能な同じタスクをより細かく制御することができます。さらに、Disk Utilityでは利用できない機能も使用できます。

例えば、diskutil listというコマンドを実行すると、Mac上のすべてのディスクがリストされ、EFIやPreboot、Recovery HDなどの隠しパーティションも含めて詳細な情報が表示されます。これに対し、Disk Utilityは部分的な情報しか表示しません。

diskutilの汎用性とパワーにより、Mac上のディスクやパーティションを管理するための優れたツールとなっています。ただし、不適切な使用法は意図しないデータ損失やその他の問題を引き起こす可能性があります。

それがこの投稿を作成した理由です。この投稿では、ディスクをリストしたり、消去したり、修復したり、マウントしたり、アンマウントしたり、またはイジェクトしたりするなど、ディスク/パーティションで実行したい基本的な機能について取り上げます。ターミナル

 ヒント: ターミナルで"man diskutil"を実行すると、diskutilのマンページが表示され、説明が付いた使用可能な動詞やオプションがすべて表示されます。もしくは、diskutilだけを実行すると、Terminalが使用可能な動詞を簡単に要約します。

diskutil list: macOS上でディスクをリストする

動詞「list」は、Macに接続されているすべての内部および外部ディスク、物理ディスク、そのパーティション、ディスクイメージなどの仮想ディスクをリストアップできます。内部、外部、物理的、コアストレージ、仮想などのフィルター引数を使用して表示されるディスクの数を制限することができます。

ドライブ情報をリストアップすることは、ディスクやパーティションで作業をするための最初のステップであり、作業したいディスクのディスク識別子を示しています。

Boot Campパーティションを含むmacOS上のすべてのディスクやパーティションを表示するには:

diskutil list

macOSによってディスクが検出されない場合、Terminalに表示されず、全ドライブが表示されないdiskutil listが表示されます。

"diskutil list: command not found"と表示される場合は、このガイドの解決策を試してみてください: [Fixed] Mac Command Not Found Error in Terminal

macOS上で内部ディスクのみを表示するには:

diskutil list internal

macOS上で外部ディスクのみを表示するには:

diskutil list external

特定のディスクのディスク情報を表示するには:diskutil list diskX

すべてのコアストレージ論理ボリュームグループ、物理ボリューム、論理ボリュームファミリ、または論理ボリュームをリストアップするには:diskutil cs listまたは 
diskutil corestorage list

Macにコアストレージボリュームがない場合、Terminalはメッセージ「コアストレージ論理ボリュームグループが見つかりません」と返します。これは次の3つの状況のいずれかで発生します: 1) あなたのMacにFusion Driveがない; 2) Fusion Driveが分割されている; 3) Fusion DriveがAPFSでフォーマットされている。

 注意: ターミナル出力にはアスタリスクとプラス記号が表示されます。アスタリスク(*)は物理ディスクを示し、プラス記号(+)は仮想ディスクを示します。

以下のセクションのコマンドは、ターゲットディスクまたはパーティションのディスク識別子が必要です。実行する前に、一般的な仕様をドライブの識別子で置き換えることを忘れないでください。

diskX: あなたのドライブのディスク識別子、disk2。

diskXsX: ボリュームまたはパーティションの識別子、disk2s2。

container_diskX: APFSコンテナのディスク識別子、disk3。

重要なファイルを消去または削除する前に、クリティカルなファイルをバックアップしてください!!!!

diskutil apfs: macOS上でAPFSボリュームを管理する

APFSは、macOS High Sierraおよびそれ以降を実行しているMacのデフォルトファイルシステムです。APFSの動詞を使用して、Terminalでボリュームのリスト、サイズ変更、ロック解除、追加、または削除を行うことができます。

APFSコンテナとパーティションの詳細を確認するには:(UUID、FileVault暗号化)diskutil apfs list

APFSコンテナをリサイズするには:(新しいコンテナサイズが既存のデータを収容するには十分でない場合、データが失われる可能性があります。)

diskutil apfs resizeContainer container_diskX size

識別されたdisk2を100GBにリサイズする必要がある場合、コマンドは次のようになります:diskutil apfs resizeContainer disk2 100GB

暗号化されたAPFSボリュームをアンロックするには:

diskutil apfs unlockVolume diskXsX

識別子がdisk3s1のAPFSボリュームをアンロックしたい場合、コマンドは次のようになります:diskutil apfs unlockVolume disk3s1

APFSコンテナのPrebootボリュームを更新するには:

diskutil apfs updatePreboot container_diskX

システムボリュームの再ブートボリュームを更新する必要がある場合、次のように実行します:diskutil apfs updatePreboot /

APFSボリュームを追加するには:

diskutil apfs addVolume container_diskX APFS name

APFSボリュームを削除するには:

diskutil apfs deleteVolume diskXsX

APFSコンテナを削除するには:

diskutil apfs deleteContainer containerDiskX

 ヒント: "diskutil apfs"の使用方法について詳しく学ぶには、ターミナルでdiskutil apfsを実行してください。"deleteContainer"のようなAPFS動詞の使用方法がわからない場合は、次のように実行してターミナルでその例を確認してください:diskutil apfs deleteContainer

macOSでディスクを消去するためのdiskutilの使用

ディスクやパーティションを消去するために、ディスクユーティリティコマンドを使用するのは一般的な方法です。

ディスクを消去するには:

diskutil eraseDisk format name GPT diskX

ディスク(disk2)を名前USBのAPFSにフォーマット:

diskutil eraseDisk APFS USB GPT disk2

ディスク(disk2)を名前USBドライブのMac OS Extended(Journaled)にフォーマット:

diskutil eraseDisk JHFS+ "USB Drive" GPT disk2

ディスク(disk2)を名前USBのexFATにフォーマット:

diskutil eraseDisk exFAT USB GPT disk2

ディスク(disk2)を名前USB External DriveのFAT32にフォーマット:

diskutil eraseDisk FAT32 "USB External Drive" GPT disk2

 注意: コマンドのGPTをMBRに変更することもできます。ここでは、一般的に多くの現代的な用途に適しており、2TBを超えるディスクに必要なGPTを使用しています。

パーティションを消去するには:

diskutil eraseVolume format name diskXsX

diskutil マウント/アンマウント:macOSでディスクをマウント/アンマウントする

macOSでディスクをマウントするには:

diskutil mountDisk diskX

macOSでパーティションをマウントするには:

diskutil mount diskXsX

これらのコマンドは、内部および外部ディスクの両方に適用されます。たとえば、MacでEFIパーティションをマウントする必要がある場合は、次のようにします:diskutil mount disk0s1

さらに読む: Macで外部ハードドライブを(強制的に)マウントする方法?(ターミナル)

macOSでディスクをアンマウントするには:

diskutil unmountDisk diskX

macOSでパーティションをアンマウントするには:

diskutil unmount diskXsX

diskutil 修復/検証:macOSでディスクを修復する

ディスクのファイルシステムデータ構造を検証するには:

diskutil verifyDisk diskX

パーティションのファイルシステムデータ構造を検証するには:

diskutil verifyVolume diskXsX

破損したディスクを修復するには:

diskutil repairDisk diskX

破損したパーティションを修復するには:

diskutil repairVolume diskXsX

diskutil イジェクト:macOSで安全にディスクをイジェクトする

外部ドライブをデスクトップからイジェクトする方法は必ずしもうまくいかず、ターミナルで行うよりも遅いことがあります。そのため、私はdiskutil ejectコマンドを使用してドライブをイジェクトすることをお勧めします。

diskutil eject diskX

これらのMac diskutilコマンドを共有してください!