coLinux(0.6.x)のインストール [その10]

このページではcoLinux用にHDDを増設して、 使用できるディスク領域を増やします。

ハードディスクを増やす

ダウンロードしたDebianのディスクイメージは1GBです。 これではKDEやGNOMEを入れたらすぐにいっぱいになってしまいます。

そこで新しい4GBのディスクイメージを作って、 今まで設定した環境を引っ越しましょう。

ディスクイメージの作成

ディスクイメージはスワップディスクを作成したときと同様に作ります。

cygwinを利用できる場合は以下のようにして行います (colinuxではなく、cygwin内で以下のコマンドを入力してください)。 結構時間がかかりますが、じっと待ちます。

なお、ディスクのサイズを変えたい場合は「count=4096」の数字を 変更してください。 この数字を変えると1メガバイト単位でサイズが変わります。

$ cd /cygdrive/c/colinux
$ dd if=/dev/zero of=4gb.img bs=1M count=4096
4096+0 records in
4096+0 records out

cygwinをインストールしていない場合は makedummy.exeを使います。 makedummy.exeをc:\coLinuxにコピーして、 コマンドプロンプトから以下のコマンドを入力します。

c:\>cd c:\coLinux
c:\coLinux>makedummy -f 4gb.img -s 4096M -m 0
Create "C:\coLinux\4gb.img" <size: 4096MB>
  
c:\coLinux>dir 4gb.img
  ...
  C:\coLinux のディレクトリ
  
  06/06/03  18:36          4,294,967,296 4gb.img
                 1 個のファイル       4,294,967,296 バイト
  ...

colinuxの設定ファイルの修正

設定ファイルを変更して、 作成した4gb.imgをcolinuxにハートディスクとして割り当てます。 これには、my.colinux.xmlのblock_deviceの部分を編集します。

また、ファイルをコピーするためにシングルユーザモード(Windowsでいうセーフモード)で立ち上がるようにします。 これには、bootparamsの部分を変更します。

以下が修正を施したmy.colinux.xmlです。 block_deviceのindex="2"の行と、 root=/dev/cobd0のうしろにsingleという単語が追加された点に 注意してください。

<?xml version="1.0" encoding="UTF-8"?>
<colinux>
    <block_device index="0" path="\DosDevices\c:\colinux\root.img" enabled="true" />
    <block_device index="1" path="\DosDevices\c:\colinux\swap.img" enabled="true" />
    <block_device index="2" path="\DosDevices\c:\colinux\4gb.img" enabled="true" />
    <bootparams>root=/dev/cobd0 single</bootparams>
    <initrd path="initrd.gz" />
    <image path="vmlinux" />
    <memory size="128" />
    <network index="0" type="tap" />
</colinux>

coLinuxの起動

変更した設定でcoLinuxを起動しょう。 シングルユーザモードなので、普通のログインプロンプトではなく、 以下のような行が表示されます。 rootのパスワードを入力してください。

なおシングルユーザモードではssh等では接続できません。 以下の作業はcolinux-consoleで行います。

Give root password for maintenance
(or type Control-D for normal startup): 

ドライブの初期化

rootでログインしたら、 先ほど作成した4GBのディスクにファイルシステムを作成します。

linuxにはいくつかファイルシステムが存在して、 ダウンロードしたディスクイメージはext3というファイルシステムでした。 もちろん新しいディスクもext3にしてもいいのですが、 せっかくなのでreiserfsにしてみましょう。

まずreiserfsのファイルシステム作成ツールをインストールします。 これは下記のコマンドで一発です。

# aptitude install reiserfsprogs
# aptitude clean

いよいよファイルシステムを作りましょう。以下のコマンドを実行します。 このコマンドは入力を間違えると大変なことになるので間違えずに入力しましょう。 コマンドを実行すると本当にするかどうかを聞かれるので、 「y」を入力します。 すると、4gb.imgが割り当てられている/dev/cobd2上に reiserfsファイルシステムが作成されます。

# mkfs.reiserfs /dev/cobd2

<------------------- mkfs.reiserfs, 2002 ------------------->
reiserfsprogs 3.6.19

A pair of credits:
----省略---
ATTENTION: YOU SHULD REBOOT AFTER FDISK
        ALL DATA WILL BE LOST ON '/dev/cobd2'
Continue (y/n): y

ちなみにreiserfsではなくext3ファイルシステムの方がいい場合は、 ここではmkfs.ext3コマンドを使用してください。 また、以降のreiserfsとなっている部分を、 ext3と読み替えてください。

新規ディスクのマウント

ではファイルシステムを作成したディスクをマウントして、 colinuxから使えるようにしましょう。次のコマンドを入力します。

# mount /dev/cobd2 /mnt
ReiserFS: cobd2: found format "3.6" with standard journal
ReiserFS: cobd2: using ordered data mode
ReiserFS: cobd2: journal params: device cobd2, size 8192, ....
ReiserFS: cobd2: checking transaction log (cobd2)
ReiserFS: cobd2: Using r5 hash to sort names

上記のように表示されたらmountコマンドを実行して ちゃんとマウントされたか確かめましょう。

# mount
/dev/cobd0 on / type ext3 (rw,noatime,errors=remount-ro)
tmpfs on /lib/init/rw type tmpfs (rw,nosuid,mode=0755)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=620)
/dev/cobd2 on /mnt type reiserfs (rw)

ディスクのコピー

さて、現在のディスクの内容を新しく作ったディスクにコピーしましょう。 コピーするものはルート(/)にあるディレクトリのうち、 /mntと/procと/sys以外です。 以下のコマンドでコピーしましょう。

# cd /
# ls -F
bin/  etc/   lib/         media/  opt/   root/  srv/  tmp/  var/
dev/  home/  lost+found/  mnt/    proc/  sbin/  sys/  usr/
# cp -a bin/ dev/ etc/ home/ media/ opt/ root/ sbin/ srv/ tmp/ usr/ var/ /mnt/

結構時間がかかりますがじっと待ちます。 コピーが終わったら/mntの下を確認しましょう。 ちゃんとコピーしたディレクトリができていたら、 コピーしなかった/mntと/procと/sysを作っておきます。

# ls -F /mnt
bin/   etc/  lib/         media/    root/   srv/   usr/
dev/   home/ lost+found/  opt/      sbin/   tmp/   var/
# mkdir /mnt/mnt
# mkdir /mnt/proc
# mkdir /mnt/sys

次に、コピーしたディスク内の起動時の設定ファイルを書き換えます。 これには/mnt/etc/fstabを次のように編集します(ext3をreiserfsに書き換えます)。

/dev/cobd0 /     reiserfs defaults 0 1
proc       /proc proc     defaults 0 0
/dev/cobd1 none  swap     sw       0 0

更に、/mnt/etc/mtabのファイル名を変更しておきます。

# cd /mnt/etc
# mv mtab mtab.disable

ここまできたら一旦coLinuxを終了します。

# shutdown -h now

設定ファイルの再修正

ディスクのコピーが終了したので、 まずディスクイメージのファイル名を変更します。 ここでは、元のディクスをroot.imgからroot.back.imgに、 コピーした4gb.imgをroot.img(元のディスクと同じ名前)にします。

ディスクイメージのファイル名を変更したらcoLinuxの設定ファイル my.colinux.xmlを元に戻します。 つまりblock_deviceのindex="2"の部分と singleを削除して以下のようにします。

<?xml version="1.0" encoding="UTF-8"?>
<colinux>
    <block_device index="0" path="\DosDevices\c:\colinux\root.img" enabled="true" />
    <block_device index="1" path="\DosDevices\c:\colinux\swap.img" enabled="true" />
    <bootparams>root=/dev/cobd0</bootparams>
    <initrd path="initrd.gz" />
    <image path="vmlinux" />
    <memory size="128" />
    <network index="0" type="tap" />
</colinux>

確認

設定ファイルを書き換えてから colinux-daemon.exeを実行すると新しいディスクで起動するはずです。

立ち上がったら mountコマンドとdfコマンドで確認しましょう。

まずmountコマンドを実行して、 /dev/cobd0がreiserfsとしてマウントされていればまずはOKです。

# mount
/dev/cobd0 on / type reiserfs (rw)
tmpfs on /lib/init/rw type tmpfs (rw,nosuid,mode=0755)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=620)

次にdfコマンドを実行して/dev/cobdの容量が増えていればOKです。

# df
Filesystem           1k-blocks      Used Available Use% Mounted on
/dev/cobd0             4194172   486120   3708052  12% /

しばらく新しいディスクを使ってみて、 問題なければ古いディスクイメージ(root.back.img)は削除してしまいましょう。

SEO [PR] 爆速!無料ブログ 無料ホームページ開設 無料ライブ放送