So-net無料ブログ作成

【Ubuntu】Virtualbox の仮想ハードディスクの容量を増やす方法 [ubuntu]

先日、VirtualBoxで起動しているUbuntuをアップグレードしようとしたら、ディスク容量が不足していてアップグレードできませんでした。

そこで、VirtualBoxの仮想ハードディスクの容量を増やす事にしました。

行ったのはVirtualBox 4.0.4で、Host OS: Windows Vista、Guest OS: Ubuntu 11.04 alpha2です。

ちょっと面倒です。それと、Gpartedを使いますが、そちらの説明は省略しています。あと、やり方の中に出てくるswap,mount(マウント),fstab,UUIDなどの詳しい説明は記述していません。ただ、これらに関してある程度知識を習得した上で行われた方が良いと思います。

※※ 注意 ※※

パーティションを変更するので、行う際はバックアップを取るなどして十分注意して行ってください。

やり方は、結構長いので知りたい方は「続きを読む」を押してください。(このページにダイレクトに飛ばれた方は既に見えていると思います。)

 ←Canonインクジェット複合機 MG6130

    これ最近のだからUbuntuとかのドライバ無いかと
    思ったらUbuntu 10.04用のドライバがCanonの
    ホームページからダウンロード出来る。
    それも64bit版にも対応している・・・

    http://cweb.canon.jp/drv-upd/bj/bjlinux340.html

 

 

 

 

<< 仮想ハードディスクの容量の増やし方>>

 A) 仮想ハードディスクの容量を大きくする。

今回は、下記の図の仮想ハードディスクnatty.vdiを増やしました。

 Vbox-disk-001.JPG

a1) VirtualBoxを全て終了して、コマンドプロンプトを起動する。

a2) コマンドプロンプトで仮想ディスクのあるフォルダに移動する。

特にインストール時に変更していなければ、C:\Users\user name\.VirtualBox\HardDisks に入っています。

a3) VBoxManagerで容量を大きくする。

VirtualBoxのインストールディレクトリを変えてなければ、

コマンドプロンプトから、

"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" modifyhd 仮想ハードディスク名 -- resize 大きさ

で大きくします。仮想ハードディスク名は.vdiファイルです。大きさはMbyte単位で指定します。

私の場合はnatty.vdiを12Gに増やしたかったので、

"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" modifyhd natty.vdi -- resize 12288

としました。サイズはくれぐれも間違わない様に・・・

a2)及びa3)の手順をやったスクリーンショットが下記です。

Vbox-disk-002.JPG

これで、一応VirutalBoxの仮想ハードディスク容量は大きくなりました。

Vbox-disk-003.JPG

ただし、大きくなっただけです。B)以降の手順をして下さい。

なお、VBoxManagerコマンドはLinux版VirtualBoxでもあるはずなので、端末から同等なことをすれば出来るはずです。もちろん、コマンドの格納されてるPathは違ったりします。

 

B) バーティションの移動と拡張

A)の手順をやるだけでは、仮想ハードディスクのサイズは大きくなりますが、中にあるパーティションは大きくなりません。なので、Gpartedを使用してパーティションを拡張します。

b1) GpartedのISOファイルをダウンロードする。

下記からGpartedをダウンロードできます。

http://gparted.sourceforge.net/download.php

 

※VirtualBox内に複数のOSを入れている場合、サイズを変更したOSに対してb2)以降の操作を行う。

b2)起動順番を仮想ハードディスクよりCD/DVDを先にする。

設定を開いて、下図の起動順番の所をCD/DVDがハードディスクより前になっていて、かつ、チェックが入ってる事を確認する。

恐らく、インストールしたままなら、このようになってるはず。(フロッピーにもチェックが入っていてもOK)

VBOX-disk-004.JPG

 

b3) GpartedをCD/DVDに設定する。

下図のIDE プライマリマスターと書いてあるCDのアイコンを押して、Gpartedのisoファイルを選らぶ。

私の場合はgparted 0.7.1-5を使用しました。

VBOX-disk-005.JPG

終わったら設定画面をOKを押して抜ける。

 

b4) gpartedを起動。

b2) 及びb3)を設定したOS(つまりハードディスクを大きくしたOS)を起動すると、自動的にGpartedが起動するはずです。

途中で、下記のようなキーボードの設定が出てくるので、自分にあったキーボードを設定する。

 Vbox-disk-006.JPG

次に言語の選択。 好きな言語でどうぞ・・・

Vbox-disk-008.JPG

Xを起動してGpartedを起動するか選択。

Vbox-disk-009.JPG

とやっていくとGpartedが起動されます。(Gpartedの説明でないので、細かい所は省略)

下図の様に立ち上がるはず。

 Vbox-disk-010.JPG

上の図を見てもらえれば分るように、A)の手順でディスク容量を増やした部分はディスクの後ろに増えています。

 

b5) パティションの移動と拡張操作

まず/dev/sda2内の論理パーティションである/dev/sda5(swapファイルとして使われている)を削除します。これをしないと、/dev/sda2の位置を動かせません。

次に、/dev/sda2をディスクの一番後ろに持っていく。

そして、/dev/sda2内にswapとして使う様に指定した、論理フォーマットを作成する

最後に、/dev/sda1を拡張して大きくする。区切りの都合上、少し空き部分が出来るかもしれません。

それと、下図はswapエリアがあまりに小さかったのでちょっと大きくしました。

Vbox-disk-011.JPG

そして、これらを適応する。(もちろん、途中で適応しながらでも良いです。)

すると、下図のようになります。

Vbox-disk-012.JPG

色が変わっている所を見ると/dev/sda5になってる事がわかると思います。この/dev/sda5がswapだと言う事を覚えておいてください。

これで、一応パーティションの変更及び拡張は終わりですが・・・まだやることがあります。Gpartedを終了しないでください。

 

C) swapエリアのマウント情報の書き換え

Ubuntuの場合、マウント情報はUUIDを使ってfstabに記述してあります。ところが、B)の手順で移動してしまったため、swapエリアのUUIDが変わってしまってます。それを修正します。

 

c1) マウント

Gparted内にあるterminalを立ち上げて、

sudo mount /dev/sda1 /mnt

として/dev/sda1をマウントします。(Gpartedはsudoを使用してもパスワードは聞かれません)

 

c2) fstabの書き換え

sudo vi /mnt/etc/fstab

として、エディタでfstabを開きます。

UUID=xxxx-xxx-xxxx-・・xxx  none  swap sw 0 0

と言う行の頭に#を付けてコメントアウトします。その下にでも、

/dev/sda5  none swap sw 0 0

という行を付け加えます。/dev/sda5の所はb5)のパーティションの変更結果の所で述べたswapとして作成されたデバイスファイルと一致させてください。 

下記が変更した例です。

Vbox-disk-013.JPG

後はセーブして下さい。

 

c3) Gparted終了

Gpartedを終了して下さい。その後、b3)で設定した画面を開いてGpartedをディスクから取り除いてください。

「IDE プライマリーマスター」の隣にあるCDのアイコンを押して、「仮想ドライブからディスクを除去」をすれば、「gparted-x.x.x-x」 が「空」 になるはずです。

これで、一応ディスクを増やす事はできたはずです。

 

D)確認とswapの指定をUUIDに戻す。

d1) ディスクを増やしたOSを普通に起動する。

d2) sawpon -sと端末から入力して、下記の様にswapとして認識されていればOK(もちろんサイズは、設定しだいなので違うと思います。)

swapon -s

 Filename                Type        Size    Used    Priority
/dev/sda5                               partition    523260    0    -1

 

d3) fstabの記述をUUIDに戻す(推奨だけど、やらなくても動く)

まず端末から

sudo  blkid

と入力すると、下記の様に出るはずです。もちろんUUIDは個々で違います。

/dev/sda1: UUID="1b4757cc-4318-4479-9539-4ef5e0c48ff1" TYPE="ext4"
/dev/sda5: UUID="6558f88c-4af8-4718-ac32-3c5cac4abcea" TYPE="swap"

そしたらTYPE="swap"の行のUUIDをコピーしておきます。

そして別ウインドでエディタをroot権限で開きます。

sudo vi /etc/fstab

すると、 c2) の所で記述したfstabが出てくるはずです。その時にコメントアウトした所をコメントインして、UUIDの部分をblkidで取得(コピー)した物に書きなおします。 それと同時にその下に付けくわえた行を削除するか、コメントアウトします。

Vbox-disk-014.JPG

そして、セーブした後に再起動します。再起動したのちにd2)に記述した swapon-s でswapがちゃんと動作しているか確認して下さい。

これでやっと完了です。お疲れさまでした。


nice!(3)  コメント(5) 
共通テーマ:パソコン・インターネット

nice! 3

コメント 5

NO NAME

すごく助かりました!!ありがとうございました。
by NO NAME (2012-11-10 15:50) 

あんきょ

☆NO NAMEさん☆

どういたしまして。
容量が無くなると困りますよね。

by あんきょ (2012-11-12 02:23) 

null

有益な情報ありがとうございます。
by null (2014-04-01 05:24) 

pico

とてもとても助かりました。どうもありがとうございます。
by pico (2015-09-22 23:41) 

Tei

はじめまして。EaseUS SotwareのTeiと申します。
メールアドレスなどのご連絡先をいただけませんでしょうか。
弊社の製品レビューのご執筆をお願いしたいんですが…
恐縮ですが、メルアド:teiisyou@easeus.comまでご連絡いただけますでしょうか。

お手数ですが、ご覧になったら、このコメントを削除していただけませんか。
by Tei (2016-06-23 16:29) 

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

メッセージを送る

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。