そこでDebian化したときにディスクを分割しているので、次のようにしてインストールすることにしました:
/dev/sda1 --> /boot (そのまま上書き)
/dev/sda2 --> / (消去してしまう)
/dev/sda3 --> swap (そのまま利用)
/dev/sda4 --> /home (そのまま利用)
こうすると、/home にあるファイル以外は EABI に移行することができます。/boot はカーネルのみなので問題はおきません。その代わり Debian パッケージは再インストールが必要ですし、パッケージを利用せずにインストールしたコマンド類は再コンパイルが必要です。
*1 Debian Wiki ArmEabiPort に詳しい
http://wiki.debian.org/ArmEabiPort?highlight=((ArmEabiHowto))
*2 以降方法も書かれているがバイナリは全部退避して新規インストールに近い
http://wiki.debian.org/ArmEabiHowto
■インストール前のバックアップ
まず、消去する / パーティションのバックアップをします。/home/etch 以下にコピーを作ることにして以下を実行しました。
cd /
mkdir /home/etch
tar --one-file-system -cf - . | (cd /home/etch/; tar xpf -)
Debian パッケージのリストも作っておきます。
cd /home/etch
dpkg --get-selections > dpkg.lst
この状態で HDD 全体を別の HDD にバックアップしておくといいでしょう。
■インストールの開始
フラッシュ起動までは前回に紹介した方法と同じです。玄箱PROにコピーするファイルは、debian-
debian-lenny-keep-disk.tar.gz を使ってください。前回のものと同じですが、ディスクを初期化するスクリプトを消しています。コピーしたら、/dev/sdaX をすべてアンマウントしてから、SetupDevEnv.sh を実行してください(前回紹介したファイルを展開して InitDisk1.sh を間違って実行しないこと)。指示が出たら reboot します。
/mnt/mtd # ./SetupDevEnv.sh
kjournald starting. Commit interval 5 seconds
EXT3 FS on sda1, internal journal
EXT3-fs: mounted filesystem with ordered data mode.
Saving U-Boot environment to ubootenv.bak... done.
Changing U-Boot environment...
>nvram_set:bootcmd = ide reset; ext2load ide 0:1 $(default_kernel_addr) /$(kernel); ext2load ide 0:1 $(default_initrd_addr) /$(initrd); setenv bootargs $(bootargs_base); bootm $(default_kernel_addr) $(default_initrd_addr)
done.
Please reboot your Kurobox Pro.
/mnt/mtd # reboot
■パーティションを手動で設定する
インストーラの起動のため SSH でログインします。以前のパーティションを残すため、Partitioning method で Manual を選び作業をします。以下の画面を参考にしてください。

図22 パーティション方法は Manual を選ぶ

図23 パーティション・リストが表示されるので、マウント・ポイントなどを指定する。パーティションを選んだら Enter を押す

図24 Use as で Enter を押す

図25 以前と同じフォーマットの ext3 を選んで Enter を押す

図26 Mount point を変えるため、Enterを押す

図27 #1 (/dev/sda1) は /boot にするため、/boot で Enter を押す

図28 Bootable flag でEnter を押し、設定を確認したら、Go Back で Enter を押す

図29 #2 (/dev/sda2) は Ext3, /, でフォーマットする(yes, format it), Bootable flag: off にする

図30 #4 (/dev/sda4) は Ext3, /home, フォーマットしない(no, keep exisiting data), Bootable flag: off にする

図31 設定を確認したら Finish partitioning and write changes と disk を選ぶ

図32 もう一度、フォーマットするパーティションについて確認画面が出るので、確認して Yes で Enter を押す
残りのインストールは、前回に紹介したものと同様です。最後にリブートします。
■Debian パッケージの再インストール
リブートしたら、まず、ホスト名を戻します。そのために /etc/hostname を書き換えます。書き換えた後で、
hostname `cat /etc/hostname`
をするといいでしょう。つぎに、以前インストールしていた Debian パッケージをリストに基づいて再インストールします。root で以下を実行します:
cd /home/etch
dpkg --set-selections < dpkg.lst
apt-get dselect-upgrade
インストールしたときには、ダイアログが出るパッケージもあるので答えていきます。インストール後は設定ファイルなどを戻していきます。locale の設定は別途作業する必要があるようです。
参考:
http://www.eleki-jack.com/Kurobox-pro2/2007/07/locale.html
samba のユーザも再度作ります。
参考:
http://www.eleki-jack.com/Kurobox-pro2/2007/06/debian-1-samba.html smbpasswd ではなく pbedit を使うように変わっています:
pdbedit -a -u kurobox
としました。また/etc/samba/smb.conf のwritable は read only と変わっていました。
read only = no
としておきます。ほかにALSA周りでの不具合もあるようです。
■バックアップしたHDDからの起動
バックアップした HDD (以前に Debian 化した HDD) から起動するには、uBoot の環境変数を戻す必要があります。etch Debian の HDD から起動するには uBoot で以下のコマンドを入れて起動します:
setenv bootcmd 'ide reset; ext2load ide 0:1 $(default_kernel_addr) /$(kernel); bootm $(default_kernel_addr)'
boot
光永 法明
コメントする