玄箱をVine-4.1にアップグレードする話

最近とんとご無沙汰だったが、 久しぶりに玄箱をいじって見たので、 それについて書くことにする。

事前の要件

とりあえず、カーネル以外はちゃんとVine3.1で動く 玄箱が必要である。

「rpm -Va」としても、rc.dやinit.d等起動スクリプトのディレクトリ構造に、 大きな違いがないことが望まれる。

ただし、ファイルが多少違うくらいは別に問題ない。

カーネルのアップグレード(u-boot使用)

まず、カーネルを2.6に上げてみる。

  1. 「http://www.genbako.com/」で公開されている 「uImage/kernelImage-2.6.xx-kuroXX-uImage.tgz」「modules-2.6.xx-kuroXX.tgz」 「u-boot_loader/u-boot-hx.flash.bin」を貰ってくる. (xXは自分の環境に合わせること)
  2. kernelImageを「/boot」で展開する。
  3. modulesを「/lib/modules」で展開する。
  4. 祈る。この次行うflashの書き換えは、 失敗すると玄箱が本当にただの箱になり、 私のような一般人には復旧できなくなる、 真に危険な作業である。 作業は自身の完全な責任の元に行わねばならない。
  5. 「cat u-boot-xx.flash.bin > /dev/fl2」として、 ブートローダを書き込む。
  6. リブートする。立ち上がればOK。 立ち上がらなければ、どうしようもない。

他のパッケージはVine-3.1のままで、カーネルのみ2.6にしても動作する。 そのため、この時点でdump等を用いてファイルシステムを他に保存しておけば、 HDD内のシステムを壊しても、HDDのみをUSBで他のLinuxマシンに接続し、 restoreすることで、元の状態に戻すことができる。

Vine-4.1へアップグレード

/etc/apt/source.listを4.1用に書き換えて、 アップグレードしたのだが、 適当にやったのであまり順番を覚えていない。

aptでできない部分は、 rpmのコマンド使ってアップデートしていけば、 そのうちVine-4.1になると思う。

ただし注意点が二つある。

その他

Vine-3.1で必要だったglibcの改造は、今回は不要のようだ。 Vine-4.1のglibcで問題なく動作している。

また特段アップグレードでなくても動作するようだ。

参考