[再]colinuxのイメージを拡張する方法
以前「colinuxのイメージを拡張とswapを使う方法」というエントリを書いたのを思い出し見てみたのですが、自分で書いておきながらすごくめんどくさそうだったので、他に方法ないのか調べてみました。
そしたら公式のwikiにイメージ拡張の方法がまとめてあったので、ここに書いてある方法でイメージ拡張したログを残しておきます。
ちなみに、このwikiのページには数種類の方法が書いてあるのですが、この中でも今回は「The most reliable way to enlarge the root partition」という方法をやってみました。
- まずはcolinuxが起動してたらshutdown
- 次に新しいイメージをWindowsのコマンドプロンプトで作成する
- colinuxの設定ファイルで手順2で作成したイメージファイルを新しいパーティションとして登録する 昔のXMLの設定ファイルだったら下記のような感じ。
- colinux起動して、データのコピー等を行なう ここで元のパーティションでcolinuxを起動して、colinux上で以下のコマンドを順に実行していきます。
- 新しいイメージファイルをメインパーティションに変えて起動 ここまできたらもう少しです。
# shutdown now -h
# fsutil file createnew colinux_new.img 85899345928589934592=8Gのことです。4Gだったらこの半分ね。
<block_device index="0" path="\DosDevices\c:\path\to\colinux_old.img" enabled="true" /> <block_device index="1" path="\DosDevices\c:\path\to\swap_device.256mb.img" enabled="true" /> <block_device index="2" path="\DosDevices\c:\path\to\colinux_new.img" enabled="true" />「index="2"」のところは、今自分が使ってないパーティション番号にしなければなりません。
最近のcolinuxの設定だったらば下記のような感じ。
cobd2="c:\path\to\colinux_new.img"cobd2の「2」は、XMLの場合と同様に今自分が使ってないパーティション番号にしてください。
ちなみに、今回僕は上記のように 0 が既存のパーティション、1 がswapになっていたので、新しいイメージは 2 にしました。
まずは今まで使ってたパーティションをe2fsckする。ちなみに自分はこれはやりませんでした。というか、当たり前だけどマウントしてるパーティションなのでwarningがでますので注意してください。
# e2fsck /dev/cobd0次に新しいパーティションにddコマンドを使ってデータをコピーします。ifで指定したパーティションのデータをofで指定したパーティションにそのままコピーします。このコピーは元のパーティションのデータ量により若干時間がかかります。(3GBのパーティションで30分ぐらいかかりました)
# dd if=/dev/cobd0 of=/dev/cobd2次に新しい方のパーティションをe2fsckとresize2fs、そしてもう一度e2fsckします。
# e2fsck -f /dev/cobd2 # resize2fs -p /dev/cobd2 # e2fsck /dev/cobd2最後にshutdownです。
# shutdown now -h
新しく作ったイメージファイルをメインパーティションとして使うようにcolinuxの設定を変更します。
設定方法は、下記のように今まで index="0"(最近のcolinuxの場合は cobd0="") と設定していたところに colinux_new.img を指定して、先程指定していた 1 の部分を削除してやるだけです。
<block_device index="0" path="\DosDevices\c:\path\to\colinux_new.img" enabled="true" /> <block_device index="1" path="\DosDevices\c:\path\to\swap_device.256mb.img" enabled="true" />そして、最後にcolinuxを起動させます。問題なくログインできれば成功です。 自分は1時間ぐらいでこれらの作業は完了し、今のところ問題なく動いています。
でもまだ数時間した使ってませんので、なにか不具合があったらまた報告したいと思います。
と、ここまで書いたけど、めんどくささでは前のとそんなに変わらないような気もする…。