2009/07/10

Debian etchなALIXをlennyにアップグレードしてみる

元々CD-ROMから導入するのとは別の方法で構成しているので、apt-getを使ってアップグレードする事にしました。Debianのマニュアルには事前にパッケージ構成が壊れていないかなどのチェックをする手順が書かれています。ALIX用のイメージは使っているパッケージも少ないので、そういったチェックは飛して作業をしてみました。

Ubuntuをデスクトップ環境で使っていれば"/usr/bin/update-manager"を使うべきでしょうし、普通にdebianを使っていればマニュアル通りに作業するべきだと思います。 基本的にはetchなALIXで、$ sudo apt-get update ; sudo apt-get upgradeを実行してから"/etc/apt/source.list"を編集して、"etch"を"lenny"に書き換えます。

これが終れば$ sudo apt-get update; sudo apt-get dist-upgradeを実行しますが、いろいろ質問に答える必要があるので目を離すわけにはいかないようです。 またマニュアルでは先に"apt-get install apt"を実行してAPTパッケージを更新するように書かれていますが、特に深刻な問題は起りませんでした。

ただkernelのバージョンがetchの古いままだったので、$ dpkg -l | grep linux-imageでみるとdummyパッケージは導入されていませんでした。lennyの時と同じように"linux-image-486"を$ sudo apt-get install linux-image-486を実行して無事に新しいカーネルが導入されました。

新しいカーネルを導入した時には/boot/grub/menu.lstファイルを確認して間違ったファイルを指定していないか確認しておきます。 と、ここでmenu.lstファイルが書き変わっていない事に気がついたのですが、どうやら/etc/kernel-img.confファイルの中で設定が抜けていたようです。普通のUbuntuと見比べて気がついたのですが、設定を追加しました。

$ cat /etc/kernel-img.conf
do_symlinks = Yes
do_initrd = Yes
postinst_hook = update-grub
postrm_hook   = update-grub

kernel-img.confファイルを編集してから導入したlinux-imageパッケージを削除して再度導入をやり直します。

$ sudo apt-get remove linux-image-486 linux-image-2.6.26-2-486
$ sudo apt-get install linux-image-486 linux-image-2.6.26-2-486

これで出来上がった"/boot/grub/menu.lst"ファイルを確認すると、少し問題がありました。

  • 古いmenu.lstの内容がファイル先頭にそのまま残っている
  • 新しい設定の中でkernel行の"console="オプションが消えている

古い設定の中でも"serial", "terminal"行は必要なので、先頭5行を残し、続く"title"行から"savedefault"行までの5行は削除します。 手動でconsoleオプションを各kernel行に追記する事にします。

title           Debian GNU/Linux, kernel 2.6.26-2-486
root            (hd0,0)
kernel          /boot/vmlinuz-2.6.26-2-486 root=/dev/hda1 ro console=ttyS0,38400n8
initrd          /boot/initrd.img-2.6.26-2-486

0 件のコメント: