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 とかになってしまいました。
目次
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 の入ったパーティションは変更できる兆しはありません。
パーティションのサイズを変更している記事なんかを見てみると、 1 パーティションの空きに 1 つパーティションを追加しているいるものばかりです。もしかしてすでに 2 パーティションに分けられているパーティションを移動することはできないのでは、と思って調べてみたら、やっぱりパーティションの容量を変更するのはサードパーティ製のソフトが必要なようです。
既に 2 パーティションに分かれている場合はダミーパーティションを作成して結合する
いろいろなサイトを読んで総合すると、以下の方法で可能なようです。失敗するとデータが飛ぶのでバックアップが必須だとか。
- Snow Lepard 用のパーティションのサイズを小さくしする
- 開いた領域に新しいパーティションを追加
- ターミナルで新しいパーティションと Mavericks 用と結合
→他愛もない日常が好き: BootCamp が不要になった Mac のパーティションをマージする
→ Mac とかの雑記帳: OS X 10.7 Lion の Recovery HD を削除する方法
Mavericks のバックアップ
まずは Mavericks のバックアップをします。 Snow Leopard については移行前のデータがタイムマシンに残っているので OK ということにしよう。
HDD かディスクイメージにバックアップを取ればいいのだけれど、手元に Mac mini に入っていた 120 GB の HDD があるので、それにディスクユーティリティの「復元」を使ってコピーすることにしました。 Snow Leopaerd のパーティションから起動して「復元」を行いました。(作業前に「ディスクのアクセス権を修復」を行いました。)
次にパーティションをいじるので、いじるディスク(今回の場合は SSD )以外から起動する必要があります。以前、 Mountain Lion インストール時に作った外付けのインストールディスクから起動して作業を行うことにします。
→ Mac OS X Mountain Lion の起動ディスクを作る
Snow Leopard 用のパーティションのサイズを小さくし、「+」ボタンをクリックし Snow Leopard 用の下に新しいパーティションを作ります。
ターミナルを起動します。 HDD 上パーティションの並び順を以下のコマンドを打って調べます。(起動ディスクからターミナルを使うと、 $ じゃなくて # になるんですね。)
# diskutil list
「 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 のパーティションが大きくなりました!
ついでにリカバリ領域の「 Recovery HD 」も削除しようかと思いましたが、またデータが消えたら大変なのでやめておきました。