« 2013年09月 | メイン | 2014年01月 »

2013年12月 アーカイブ

2013年12月01日

玄箱HGにwheezyを諦めてsqueezeをインストール

夏くらいから、このブログに大量のスパムコメントが届くようになった。その数、1日に800件以上。MovableTypeのSpamLookupプラグインによるフィルターをすり抜けるコメントが200件を越え、日々大量のコメントを手作業で削除するのが阿呆らしくなってきた。

まず、MovableType 3.xのサポートが終了したので、SpamLookupのブラックリストもメンテナンスされなくなったのではないかと思った。(その真偽の程は未確認である。)
そこで、先日、MovableTypeをバージョンアップしようと思った。
しかし、最新のMovableType 5.xや6.0は多機能で、システム要件が3.xと変わっており、インストールに時間を割く羽目になる予感がした。

このサーバーは玄箱HG + Debianである。ふと、aptitudeでmovabletypeを検索してみると、あった。MovableTypeのバージョンは4.xとなっていた。
暫くaptのデータベースを更新していなかったので、更新すればバージョン5.xもaptitudeでインストールできるのではないかと思ったが、何故か、更新の操作をしても全く更新されなかった。しばらくして今頃気付いたのだが、Lennyの更新は昨年3月頃に終了していたようだ。

最新のDebianのバージョンは7(wheezy)だそうだ。/etc/apt/sources.listを書き換えてwheezyのパッケージリストを取得してみると、movabletypeのバージョンは5.xだった。何故か、まだ更新されているDebian 6(squeeze)だと、最新のmovabletypeは4.xである。これはwheezyにアップグレードするしか無い、と思った。

Lennyをインストールした(というかされてしまった)時は起動に苦労する羽目になったが、それで玄箱HGが起動する2.4系のカーネルのLinuxから2.6系のカーネルを起動する2段ブート環境になったし、Linuxのカーネルは2.6系になったし、もうDebianをアップグレードしても大きなトラブルになることはなかろう、と思って、/etc/apt/sources.listのlennyをsqueezeに書き換えて、aptitudeでデータベース更新→自動的にマークされたパッケージをインストール、とすると、途中でいくつか理解できなかった警告があったものの、何とか更新が完了し、再起動もできた。

その勢いで、/etc/apt/sources.listのsqueezeをwheezyに書き換えて、同じようにaptitudeで更新インストールすると、途中で"FATAL: kernel too old"というエラーが出て、回復困難な状態になってしまった。

アンインストールしようがないlibc6のインストールが途中で失敗しており、その後はaptitudeやapt-getで何をやろうとしても、

Setting up libgcc1 (1:4.6.1-1) ...
FATAL: kernel too old
Segmentation fault
The following packages have unmet dependencies:
libc-dev-bin : Depends: libc6 (> 2.13) but 2.11.x is installed
libc6 : Depends: libc-bin (= 2.11.x) but 2.13.x is installed
libc6-dev : Depends: libc6 (= 2.13-x) but 2.11.x is installed
となった。中断したインストールを強制実行する
apt-get -f install
でも結果は同じで、libc-dev-binやlibc6-devを個別にインストールしようとしても先にこのエラーに阻まれ、apt-getにlibgcc1やlibc6のインストールを保留させる方法も分からなかった。

既に再起動もできない状態だと思った(バックアップの準備をして、すぐ玄箱をEMモードに切り替えて電源を落とした)ので、仕方なく、Debianを再インストールすることにした。

試しに、不要なHDDを玄箱に繋いで、同じようにlenny->squeezeとアップグレードして、
/etc/apt/sources.listにてwheezyのディレクトリーを指定して、

apt-get update
apt-get upgrade
(最小アップグレード手順)としても、同じ状態になった。玄箱へのDebianのインストールに使用しているLinux kernelのバージョンが2.6.25なのに対し、wheezyのインストールには2.6.26以降のkernelが必要であることが原因のようだ。
そう思って、squeezeの状態でaptitudeでlinux-image-2.6.32-5-powerpc等をインストールしてみても、2段ブートの1段目から起動されるカーネルが置き換わる訳ではないので、無効であった。
玄箱や玄箱HGにwheezyをインストールした人も居るので、1段目から起動するカーネルかU-Bootのカーネルを更新さえすればできそうではあるが、そこまでするよりは手作業でMovableTypeをインストールする方が楽だと思ったのと、squeezeのサポートが終了する頃にはそろそろ玄箱HGよりも省電力な小型Webサーバーに買い換えたくなるような気がするので、wheezyのインストールは諦めた。

そこで、とりあえずsqueezeをきちんとインストールしておくことにした。

■手順
1. 玄箱HGにLennyをインストールする
2. /etc/init.d/kuroevtd の2行目辺りに以下のコメント行を追加
(squeezeのdependency based boot sequencingに対応する為、/etc/init.d/*や/etc/rc?.d/*はLSBInitScripts形式にする必要がある)

### BEGIN INIT INFO
# Provides: kuroevtd
# Required-Start: $network $remote_fs $syslog
# Required-Stop: $network $remote_fs $syslog
# Default-Start: 2 4 5
# Default-Stop: 0 1 3 6
# Short-Description: Start/stop the KURO-BOX Event daemon
### END INIT INFO

3. /etc/init.d/kuro_boot の2行目に以下のコメント行を追加

### BEGIN INIT INFO
# Provides: kuro_boot
# Required-Start: $remote_fs $all
# Required-Stop:
# Default-Start: 2 4 5
# Default-Stop: 0 1 3 6
# Short-Description: Initialize the KUROBOX AVAR
### END INIT INFO

4. /etc/apt/sources.list の"lenny"を"squeeze"に変更
 なお、日本国内なら http://ftp.jp.debian.org/debian の行だけにしてもOK
5.
apt-get update
を実行、しばらくするとGPGのエラーになるので、続いて
apt-get install debian-keyring debian-archive-keyring
を実行(エラーになればもう1度実行)
6.
apt-get dist-upgrade
を実行

続きを読む "玄箱HGにwheezyを諦めてsqueezeをインストール" »

2013年12月07日

Debian SqueezeにTomcat+MySQL環境構築

玄箱にDebianをクリーン再インストールしたので、Tomcatの動作環境も復旧することにした。結局、このサーバーでもPerlのCGIがメインで、JavaのservletやJSPはあまり作っていないのだが、筆者にはJavaへのこだわりがあり、まだ諦め切れないのである。

サーブレットの動作環境としては、引き続き、Tomcatを選択する。また、MySQLを使うservletがあるので、その為のJDBCが必要である。
以下、MySQLはセットアップ済だとする。

■手順
1. aptitudeでtomcat6とlibmysql-javaをインストール
2. HTTPの待ち受けポートを変えるなら、/etc/tomcat6/server.xmlを適当に編集する。
3. /etc/init.d/tomcat6 restart としてTomcatを再起動する
4. Webブラウザーからアクセスし、"It works !"の画面が出ることと、CATALINA_HOME とCATALINA_BASEを確認する
5. $(CATALINA_HOME)/sharedまたは $(CATALINA_BASE)/sharedディレクトリーに、
 /usr/share/java/mysql-connector-java.jarへのシンボリックリンクを作成する
 例:

ln -s /usr/share/java/mysql-connector-java.jar /usr/share/tomcat6/shared/

6. $(CATALINA_BASE)/webappsにservletを置いて、Tomcatを再起動する

続きを読む "Debian SqueezeにTomcat+MySQL環境構築" »

About 2013年12月

2013年12月にブログ「Weblog on mebius.tokaichiba.jp」に投稿されたすべてのエントリーです。過去のものから新しいものへ順番に並んでいます。

前のアーカイブは2013年09月です。

次のアーカイブは2014年01月です。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。

Powered by
Movable Type 3.35