玄箱HGをetchにバージョンアップ
今月号の日経LinuxでDebianの新しいパッケージetchがリリースされたことを知り、etchにアップしました。玄箱をWEBサーバとして運用している私としては、ちょっと心配だったのですが、ネットで探すと、既にアップされた方がたくさんいるようで、思い切ってバージョンアップしました。アップする前に、既にetch化されていたオモイノホカ日々徒然さんのブログにコメントを書いてみたら、etchのPowerPC用リリースノートを教えてもらい、ざぁーっと読んでからアップしました。一応成功し、本サイトは、玄箱HGのetchで動いています。アップの方法は、次の通りです。
sargeでの前準備
まずバックアップを行います。/etcや/home、WEBサーバのドキュメントルート、Subversionのレポジトリなど、大事なものをバックアップしました。私の場合、sambaからもアクセス可能なディレクトリ/mnt/shareにtar.gzファイルを作成し、PCにバックアップしました。例えば、/etcのバックアップならば、次のような感じです。
# cd / # tar zcvf /mnt/share/etcbk.tar.gz etc
バックアップ後、次のコマンドでインストールが中断しているパッケージがないか探します。私の場合、インストールが中断しているパッケージはありませんでした。
# dpkg --audit
次に、/etc/apt/sources.listの中身をチェックします。すべて"sarge"になっていることを確認します。私の場合、次のようになっていました。
deb http://security.debian.org sarge/updates main contrib non-free deb http://ftp2.de.debian.org/pub/debian sarge main contrib non-free
この"sarge"の状態で、パッケージリストを更新します。リリースノートには、"stable"も一旦"sarge"に変えた方がいいようなことが書いてありました。
# aptitude update
これで、前準備は終わりです。
etchにアップグレード
sargeでの前準備ができたので、etchにあげます。/etc/apt/sources.listを"etch"に変更します。私の場合は、上記"sarge"を"etch"に変えただけです。
deb http://security.debian.org etch/updates main contrib non-free deb http://ftp2.de.debian.org/pub/debian etch main contrib non-free
ダウンロード先をetchに変更したので、まず、etchのパッケージリストを更新します。幾つかワーニングがでますが、気にしません。
# aptitude update
この後、dist-upgradeしたいところですが、リリースノートを見ると、まず、システムの最小アップグレードを行い、その上でdist-upgradeを行う2段階にした方がいいと書いてあったので、次のように2段階にしました。ところが、単なるupgradeは問題なくいけたのですが、dist-upgradeにおいて、下記のようなメッセージがでて、dist-upgradeできませんでした。
# aptitude upgrade
# aptitude dist-upgrade
: : 途中略 : :
インストールできないパッケージがありました。おそらく、ありえない状況
を要求したか、不安定版ディストリビューションを使用しているなら必要な
パッケージがまだ作成されていないか Incoming から移動されていないと考
えられます。
以下のパッケージには解決できない依存関係があります:
libfam0c102: 競合: libfam0 しかし、2.7.0-12 はインストール予定です。
libfam0c102って何でしょうね?その辺りに関して、リリースノートを調べると、4.5.4.2節の「Xのパッケージがいくつかインストールされているシステムのアップグレード」という節に、アップグレード方法が書いてありました。そのため、リリースノート通り、きちんとやるようにしました。まず、aptitude upgradeの後、次のコマンドで、libc6やlocaleがアップグレードされるようにします。
# aptitude install initrd-tools
幾つか聞かれますが、すべてデフォルト(つまり、リターンキー押しただけ)にします。そして、次のコマンドでX関係の何がインストールされているかを確認します。
# dpkg -l xfree86-common | grep ^ii ii xfree86-common 4.3.0.dfsg.1-1 X Window System (XFree86) infrastructure # dpkg -l libfam0c102 | grep ^ii ii libfam0c102 2.7.0-6sarge1 client library to control the FAM daemon # dpkg -l xlibmesa-glu | grep ^ii xlibmesa-glu に一致するパッケージが見つかりません。
私の場合、xfree86-commonとlibfam0c102がインストールされており、xlibmesa-gluはインストールされていませんでした。そのため、x11-commonとlibfram0をインストールします。すると、次のようにxfree86-commonが削除され、libfam0c102が更新されました。
# aptitude install x11-common libfam0
: : 途中略 : :
以下のパッケージが削除されます:
xfree86-common
以下のパッケージが更新されます:
fam fontconfig libfam0c102 libfontconfig1 libfreetype6 libgcc1 libice6
libncurses5 libsm6 libx11-6 libxaw7 libxext6 libxmu6 libxpm4 libxt6 xterm
xutils
: : 途中略 : :
X関連についても、幾つか聞かれましたが、これもすべてデフォルトにしました。無事にインストールできたので、再度、dist-upgradeをしました。
# aptitude dist-upgrade
今度はうまくいき、250個ぐらいのパッケージがインストールされていきました。幾つか尋ねられますが、すべてデフォルトにしました。特に、玄箱では/etc/init.d/haltや/etc/init.d/rebootは、玄箱用の設定がされているので、インストールされているバージョンを残すようにします。他の設定ファイルも同様に聞かれますが、すべてデフォルトの「現在インストールされている自分のバージョンを残す」を選択しました。
設定ファイル `/etc/init.d/halt'
==> これはインストールしてから (あなたかスクリプトによって) 変更されて
います。
==> パッケージ配布元が更新版を提供しています。
どうしますか? 以下の選択肢があります:
Y か I : パッケージメンテナのバージョンをインストールする
N か O : 現在インストールされている自分のバージョンを残す
D : 両バージョンの差異を表示する
Z : この処理をバックグラウンドにし、状況を確認する
デフォルトでは現在使っている自分のバージョンを残します。
*** halt (Y/I/N/O/D/Z) [デフォルト=N] ? N
: : 途中略 : :
設定ファイル `/etc/init.d/reboot'
==> これはインストールしてから (あなたかスクリプトによって) 変更されて
います。
==> パッケージ配布元が更新版を提供しています。
どうしますか? 以下の選択肢があります:
Y か I : パッケージメンテナのバージョンをインストールする
N か O : 現在インストールされている自分のバージョンを残す
D : 両バージョンの差異を表示する
Z : この処理をバックグラウンドにし、状況を確認する
デフォルトでは現在使っている自分のバージョンを残します。
*** reboot (Y/I/N/O/D/Z) [デフォルト=N] ? N
ほとんど問題なくいきましたが、ウィルスメール対策のamavisd-newだけはうまくインストールできなかったようです。
以下のパッケージの処理中にエラーが発生しました:
amavisd-new
E: Sub-process /usr/bin/dpkg returned an error code (1)
パッケージのインストール中に問題が起こりました。修復を試みます:
: : 途中略 : :
以下のパッケージの処理中にエラーが発生しました:
amavisd-new
とは言え、一応うまくetch化できたようで、改めてloginすれば、次のようにGNU/Linux 4.0 になっていました。ちなみにsargeはGNU/Linux 3.1です。etchはカーネル2.6.18が標準みたいですが、2.6.20のままでした。
Debian GNU/Linux 4.0 kurohg login: Password: Last login: Sat May 19 01:07:14 2007 from 192.168.11.5 on pts/0 Linux kurohg 2.6.20-kuroboxHG #1 Mon Feb 5 22:40:49 JST 2007 ppc The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law.
この後、主なサーバを軽く調べましたが、うまく機能していなかったのは、sambaとamavisd-newのようです。現在は問題なく動いており、その設定方法はそれぞれ、「etchでのsamba設定」、「etchでのメール設定」で紹介しています。また、WEBサーバ系は次のようにアップグレードされていました。
- Apache 2.2.3
- php 4.4.4 (※PHP5も正式にリリースされており、既にバージョンアップしました。詳細は「etchでPHP4->PHP5」にあります)
- MySQL 5.0.32
- phpMyAdmin 2.9.1
MySQLとphpMyAdminは確認していないので、正しく動いているかどうか分かりませんが、apacheとphpはsargeの設定ファイルそのままで動いているようです。
MySQLとphpMyAdminの動作も確認しました。データベースやユーザもsargeのMySQL4.1.1で設定した内容がそのままきちんと残っていました。また、新たにデータを追加したりしましたが、問題なく追加・更新できました。sargeの時に、「玄箱WEBをUTF-8に統一」で書いたように漢字コードはUTF8化しており、これも問題はありませんでした。気のせいかもしれませんが、幾分phpMyAdminの速度が速くなったように思います。
最新の7件
OpenGL
電子工作
玄箱HG
- ClamAVのアップデート
- Smartyも入れてみる
- etchでPHP4->PHP5
- etchでのSamba設定
- etchでのメール設定
- 玄箱HGのetch化
- Webdruidでログ解析
- PEARも入れてみる
- 玄箱WEBのUTF-8化
- phpMyAdminでMySQL
- postmasterの変更
- ウィルスメール対策
- SPAMメール対策
- メールサーバ(IMAP)
- メールサーバ(Postfix)
- 猫にXOOPS
- PHPも入れてみる
- MySQLを入れてみる
- Subversion導入
- WebDav導入
- Apacheのrewrite機能
- Apacheディレクトリ設定
- Apache1.3->2.0
- ddclientの設定
- 静かな玄箱
- ユーザ追加