トイレのうず

Macのパーティションのサイズを(試行錯誤の末)変更した

当記事はアフィリエイト広告を掲載しています。

Mac mini に 240 GB の SSD を搭載して、 120 GB ずつにパーティションに切って、 Mac OS X 10.6 Snow Leopard と OS X Mavericks (10.9) をインストールして使っているのだけれど、最近常用している Mavericks の空き容量が少なくてきついのです。先日の記事に書いた modern.IE をダウンロードしてインストールしようとしていたら、空き容量が 6.4 GB とかになってしまいました。

Mavericks 用パーティションの残量が少ない

Mac のパーティションのサイズが変更できない

Mac OS 10.5 Leopard からマスターブートレコードパーティション以外のパーティションなら、どんなフォーマットのものでもパーティションのサイズの変更が可能になりました。
→ Apple サポート: Mac OS X v10.5 :ディスクパーティションの大きさを変更する

パーティションの容量を変更できるはずと思って、外付けから起動して、ディスクユーティリティ .app でパーティションを変更しようと思ったら、「選択したパーティションは変更できません。」と書いてあります。

パーティションが変更できない

もしかしたら Mavericks の空き容量が不足しているからかも、と Mavericks を起動して、ダウンロードした modern.IE の仮想マシンファイルを別の HDD に移して、 VMware FUSION 上の Windows XP の中身もきれいにして、 VMware Fusion 上の仮想マシンライブラリからクリーンナップしました。あと Java もアンインストールしました。しかし Mavericks の入ったパーティションは変更できる兆しはありません。

Snow Leopard の容量の余りを Mavericks に分けたい

パーティションのサイズを変更している記事なんかを見てみると、 1 パーティションの空きに 1 つパーティションを追加しているいるものばかりです。もしかしてすでに 2 パーティションに分けられているパーティションを移動することはできないのでは、と思って調べてみたら、やっぱりパーティションの容量を変更するのはサードパーティ製のソフトが必要なようです。

既に 2 パーティションに分かれている場合はダミーパーティションを作成して結合する

いろいろなサイトを読んで総合すると、以下の方法で可能なようです。失敗するとデータが飛ぶのでバックアップが必須だとか。

  1. Snow Lepard 用のパーティションのサイズを小さくしする
  2. 開いた領域に新しいパーティションを追加
  3. ターミナルで新しいパーティションと Mavericks 用と結合

→他愛もない日常が好き: BootCamp が不要になった Mac のパーティションをマージする
→ Mac とかの雑記帳: OS X 10.7 Lion の Recovery HD を削除する方法

Mavericks のバックアップ

まずは Mavericks のバックアップをします。 Snow Leopard については移行前のデータがタイムマシンに残っているので OK ということにしよう。

HDD かディスクイメージにバックアップを取ればいいのだけれど、手元に Mac mini に入っていた 120 GB の HDD があるので、それにディスクユーティリティの「復元」を使ってコピーすることにしました。 Snow Leopaerd のパーティションから起動して「復元」を行いました。(作業前に「ディスクのアクセス権を修復」を行いました。)

Mavericks のバックアップを取る

次にパーティションをいじるので、いじるディスク(今回の場合は SSD )以外から起動する必要があります。以前、 Mountain Lion インストール時に作った外付けのインストールディスクから起動して作業を行うことにします。
→ Mac OS X Mountain Lion の起動ディスクを作る

Snow Leopard 用のパーティションのサイズを小さくし、「+」ボタンをクリックし Snow Leopard 用の下に新しいパーティションを作ります。

Snow Leopard のパーティションを小さくして、新しいパーティションを追加する

ターミナルを起動します。 HDD 上パーティションの並び順を以下のコマンドを打って調べます。(起動ディスクからターミナルを使うと、 $ じゃなくて # になるんですね。)

# diskutil list
disk0s3 と disk0s4 をマージする

「 disk0s3 」「 disk0s4 」を 1 つのパーティションにします。失敗するとデータが消失するのでバックアップは必ずとっておくこと!

# diskutil mergePartitions JHFS+ new disk0s3 disk0s4

※このコマンドを実行すると「 disk0s4 」のデータを消失します。

パーティションをマージするコマンド(※間違っています。)

これでよし! と思って、ディスクユーティリティを見てみたら、 Mavericks のデータが消えていました。

マージしたパーティションが消えてしまった

きっとコマンドが間違っていたんだと思います。下記サイトの該当箇所を読んでみたら、やっぱりコマンドが間違っていました。
→ Mac Developer Library : diskutil(8) Mac OS Manual

mergePartitions [force] format name fromDevice toDevice
Merge two or more partitions on a disk. All data on merged partitions other than the first will be lost. Data on the first partition will be lost as well if the force argument is given.

「ディスク上の 2 つ以上のパーティションをマージします。マージしたパーティションのうち、最初以外のパーティションのデータはすべて失われます。 force 引数が指定されている場合、最初のパーティション上のデータも失われます。」

「 disk0s3 」は空のパーティションで、 「 disk0s4 」に Mavericks のデータが入っていたので、順番が逆でした。それはデータ消失するわ。

# diskutil mergePartitions JHFS+ new disk0s4 disk0s3

試してはいませんが上記のコマンドで上手くいくはずです。

バックアップから Mavericks を復元

コマンドのミスでデータが全部消えてしまったので、ディスクユーティリティから Mavericks のパーティションを復元しました。

ディスクユーティリティでシステムの復元

こんなことならパーティションのマージなんかせずに、 Mavericks のパーティションを削除して新しくパーティションを作ってそこに復元すればよかったです。でも本当に取っててよかったバックアップ。

いろいろありましたが、これで Mavericks のパーティションが大きくなりました!

Mavericks 用のパーティションが増えた

ついでにリカバリ領域の「 Recovery HD 」も削除しようかと思いましたが、またデータが消えたら大変なのでやめておきました。

関連記事

Mac mini Early 2009 を Snow Leopard から Mavericks にアップグレードしてみた
Mac
OS X Mavericksをダウンロード
OS X Mavericks アップデート v10.9.2 で SSL 接続の脆弱性を修正
Mac
OS X Mavericks アップデート v10.9.2がリリース
Mac mini Early 2009 を El Capitan にアップグレードしてみた
Mac
OS X El Capitanのインストール画面
Mac OS X 10.9 Mavericks の Safari で確定申告の作業はしてはいけない
MaciPhone
「goto fail;」の脆弱性:OS X Mavericks (Mac OS X 10.9.1) Safari 7.0.1
Mac の最新 OS Yosemite(10.10) で平成 26 年分の確定申告 (e-tax) できるのか
Macお金・確定申告
確定申告e-tax平成26年推奨環境
Mac での e-Tax( 平成 25 年度分 ) は Mavericks(10.9) は非推奨 ( だけどできます。 )
Macお金・確定申告
平成25年分e-Tax推奨環境

コメント (2)

  • 匿名

    この記事を参考にさせていただきました。どうもありがとうございました。私の Mac で試したところ、パーティション番号の大きい方を優先して統合する形のマージはできませんでした。パーティション番号の小さい方を優先して統合することしかできないようです。つまり、「 first partition 」の first は、コマンドの中の first という意味ではなく、ディスク上の first という意味で、マージする際の優先順位は変えられないのだと思います。以上、何かのお役に立てれば幸いです。

  • あさこん

    ◇匿名さん◇
    コメントありがとうございます。
    パーテションの後ろを残して前と結合することはできないのですね。
    first partition が番号が若いパーテションという意味なんですね。
    ご報告ありがとうございます。
    折を見て加筆します。

コメントを書く