たこさんのメモ書き

Linuxの設定/構築のメモを残すのが主体です。
わからないこと、あれこれたくさん。

webalizerを使う

2008-11-03 19:52:11 | Vine4.x
Vine4.2をサーバーとして外部公開していると、アクセスログが日々積み重なるのがわかる。
ログは、その1行ずつにアクセスの形跡を記述しているのだが、一目でわかるようにはなっていないので、読むのが辛い。
一目でログがわかるようになればいいのに・・・でも、スクリプトは書けないし。
でも、ログを整理しグラフにして表示してくれるソフトを見つけた。webalizerというものだ。

Vine4.2にはパッケージが用意されているので、apt-getコマンドでインストールが簡単にできる。
$ sudo apt-get install webalizer
$ rpm -qa | grep webalizer
webalizer-2.01.10-0vl3

次に、使えるように設定する。
参考は下記。
http://vine.1-max.net/apache-webalizer.html

ユーザーhogeのディレクトリを公開しているので、ユーザー個別に使用する設定を行う。
パッケージをインストールした時点で、設定ファイルである /etc/webalizer.conf ができる。
このファイルを必要に応じて編集。

LogFile /var/log/apache2/access_log   #初期設定値から、実際のaccess_logの位置へ変更
OutputDir /home/httpd/html/webalizer #インストール時点で生成されている
HistoryName webalizer.hist #コメントをはずし有効化
Incremental yes #同上
IncrementalName webalizer.current #同上
Hostname localhost #初期設定値。これが解析の対象になる

以上の部分を変更して保存。

そして、/etc/webalizer.conf を、/home/hoge/配下へ移動させる。
$ sudo cp -i /etc/webalizer.conf /home/hoge/
次に、webalizerの解析結果などを置くディレクトリを作成する。
$ mkdir /home/hoge/public_html/webalizer

アクセスログを解析させる。
$ sudo webalizer -c /home/hoge/webalizer.conf
これで、webalizerディレクトリの下に結果が生成される。

以上で、webブラウザからグラフ化された解析結果を閲覧できるようになった。
http://huga.mydns.jp/~hoge/webalizer
ブラウザで上記のアドレスにアクセスすると、結果を見ることができる。

追記 2008年11月9日
webalizerは、コマンドを手動で動かすたびに、ログファイルの解析を行ってくれる。
いちいち手動でコマンドを動かさないと、解析してくれないわけだ。
だから、上記のコマンドを自動実行させるように、cronで設定することにする。

$ sudo crontab -e
0 4 * * * wget -c /home/hoge/webalizer.conf #この行を追加。

これで、毎日午前4時ちょうどに、wgetコマンドが発行される(はず)。








Movable Type Open Source 4.22をインストール

2008-11-03 19:26:35 | Vine4.x
VMware server 1.0.7の仮想マシンにインストールしたVine4.2に、オープンソース化されたMovable Type Open Source 4.22(MTOS4.22)をインストールした。
インストール作業自体は、MTOS4.22のZIPファイルを、目的のディレクトリで展開し、その中の設定ファイルを編集するだけという簡単なものだが、webサーバーの設定をいろいろと考えて編集するのにてこずった。
サーバーの設定をよく理解して設定することが重要。

まず、webサーバーapache2によって公開されるディレクトリを決める。
初期設定値は/var/www/htmlディレクトリだが、一般ユーザーのディレクトリを公開することも可能だ。
また、公開するディレクトリはMTOSをインストールするディレクトリでもあるのだが、このディレクトリで、CGIを実行できるように設定しておく。
MTOSはperl言語によるCGIスクリプトでできているので、CGIが動くようにしておかなくてはいけない。

また、記事などの内容はデータベース(DB)に保存されるので、使用するDBを別途インストールし、それを正しく設定しておくこと。
今回は、MySQLを選んだ。(SQLiteというDBを選ぶと、設定作業自体は不要らしい。)

また、MySQLとMTOSとを接続するためのプログラムを入手する。
これはperl言語で作られたモジュールで、こういった有用なモジュール群を収録した、CPANというweb上の公開データベースから入手できる。
入手方法はいたって簡単で、以下のコマンドを入力する。
$ sudo perl -MCPAN -e shell
password:
すると、以下のプロンプトが現れるので、ここにコマンドを入力する。
cpan>
cpan> install DBI
cpan> install DBD::mysql
など。
終了は以下。
cpan>quit

以上の準備を行った後で、MTOSのZIPファイルを展開するためのディレクトリを作成。
「アプリケーションディレクトリ」/home/hoge/public_html/cgi-bin/mt
「スタティックディレクトリ」  /home/hoge/public_html/cgi-bin/mt/mt-static
「ブログディレクトリ」 /home/hoge/public_html/blog
#ブログディレクトリの所有者・グループは、それぞれapache,apacheとした。
ブログディレクトリは、MTOSが生成した記事が書き込まれ、webへ公開されるようになる。
apache2が読み書きできないといけないため、このディレクトリの所有者を、apache2と同じにした。
上記のディレクトリへ、展開したファイル群をそれぞれに分けてコピーする。

以上の作業を終えてから、Vine4.2のブラウザから(つまりローカルから)、インストール作業をするためのwebページへアクセスする。
http://localhost/~hoge/cgi-bin/mt/mt-upgade.cgi
すると、「アカウントの作成」画面が出る。
ユーザー名やメールアドレス、使用言語、パスワードを入力。
ここの入力を終えると「最初のブログを作成」画面に移るので、ブログのURLと公開パス(サーバーマシン上のファイルの位置)を正しく入力すること。
ブログ名: My First Blog(初期設定値)
ブログURL:/http://huga.mydns.jp/~hoge/blog(無料のダイナミックDNSサービスmydnsを利用している)
公開パス: /home/hoge/public_html/blog

以上で「完了しました」とのメッセージが出ると、インストールは完了。

VMware server のホストOSであるUbuntuのブラウザから、ホスト名の代わりにIPアドレスを入力すると、無事にブログが表示された。
ホストOSの/etc/hostsファイルに、ゲストOSであるVine4.2のIPアドレスとホスト名(hoge.mydns.jp)を一致させるように記入してやると、ホスト名を使ったURLでブログを表示することができた。
(参考)
ホストOSの/etc/hosts
127.0.0.1 localhost
192.168.0.2 hoge.mydns.jp








grubの再インストール

2008-09-11 19:19:36 | Vine4.x
起動しないのは、そもそも、何らかの理由でブートローダーがおかしくなったのが原因かも知れない。
とりあえず、grubの設定をやり直すためにはVineを起動させることが必要だろう。そう考え、フロッピーディスクからの起動を試してみる。
grubをインストールしてある、いわゆる緊急起動用フロッピーからの起動だ。Vine4からはインストール時に起動ディスクを作るオプションがなくなったので、別に用意したものだが、ここに来て役に立つ。
起動ディスクを入れてマシンを再起動すると、grubのプロンプトが現れる。
grub>
ここにオプションを入力して、OSを起動させる。無事に起動したなら、
#/usr/sbin/grub-installコマンドを使って、プライマリハードディスクのMBRへgrubをインストールする計画だ。
問題なのは、プライマリハードディスク/dev/hdaの具合がどうやらおかしいこと。もし物理的にだめになっていたら、このやり方は使えないだろう。
準備は、マシンの起動順序をフロッピードライブからにしておくこと、grubの設定ファイルの内容をメモしておくこと。設定ファイルは/boot/grub/grub.confまたはmenu.lstだ。

grub>root (hd0,0)
grub>kernel /vmlinuz
grub>initrd /initrd.img
grub>boot
以上が基本的な、起動のためのコマンド。2行目と3行目の末尾に、必要なオプションを加える。
入力の内容を間違えると、kernel panic!を表示して停止してしまう。

設定ファイルmenu.lstの内容を注意して正確に入力、bootさせると、Vine4が無事に起動!
つぎは、grubをMBRへ再インストールする工程だ。
$sudo grub-install --root-directory=/ /dev/hda1
上記のコマンドを入力し、MBRを書き換える。
しばらくのあいだ、HDDの書き込みに時間がかかる。端末の表示が戻ってきたら、作業終了。
マシンを再起動してみる。
ところが、Vineは起動せず、grubのプロンプトが再び表示された。エラーメッセージは、"error 2"
不正なブロックが選択された、というエラーのようだ。grub-installのオプションを間違えたのかも知れない。
起動の仕組みをおさらいしてみる必要がありそうだ。

起動不能 その2

2008-09-09 00:04:13 | Vine4.x
起動しなくなった自作機に、KNOPPIX5.3.1を入れて再起動。
調子のおかしいCD-ROMも無事に動き、KNOPPIXが動き出した。
画面の遷移がつっかかるのが気にかかるが・・・
KDEが立ち上がったところで、端末から下記のコマンドを実行。
$ sudo e2fsck -p /dev/hda
すると、/bootの入っている/dev/hda1は、なにごともなくチェックが終了。
特に問題はなかったようだ。
しかし、Debian Etchの入っている/dev/hda2は、何やらエラーメッセージが・・・
自動での修復は無理だから、手動でチェックせよ、ということだ。
$ sudo e2fsck /dev/hda2
しかしこれを実行すると、とてつもない時間がかかる。
いちいち、rewrite?などと聞かれるのだ・・・
数時間トライして、根負けして終了。

あらためて検索してみると、e2fsckでエラー修復を試みた場合、ファイルシステムが壊れる(!?)という記事を発見。ほんまかいな??
それよりも、既にハードディスクが物理的に壊れていることの方が、確率としては高いような気がするのだが・・・

物理的に壊れていれば、e2fsckだろうがfsckだろうが、エラーの修復は不可能だ。
となると、grubそのものを直してみるのはどうだろう?

ハードディスクのパーティション構成は、
/dev/hda1 : /boot
/dev/hda2 : Debianのルート
/dev/hdb1 : VineLinuxのルート
となっている。
ダメなのは/dev/hda2だけのようだから、このパーティションをつぶすか、grubの設定を変えてしまえばOKではないだろうか?!

まず、/dev/hda2のDebianを削除してみることにする。パーティションごとフォーマットだ。
KNOPPIXでQTPartedを起動させ、/dev/hda2の領域を削除、そしてext3形式でフォーマットしてみる。
特にエラーも出ず、/dev/hda2はまっさらなext3領域になった、はず。
これで再度、Vine4.2を起動させてみた。
・・・しかし、結果は起動せず。
考えてみれば当たり前で、grubの設定自体を書き換えないといけないはずだ。Debianのboot用ファイルは消えてなくなったわけだから、Vineの/bootパーティションにあるmenu.lstの内容を反映させてやればいいはずだ。








起動不能 grub error:16

2008-09-05 23:29:55 | Vine4.x
先日、Linux機を立ち上げたときに、画面の動きが固まったと思ったら・・・
起動不能。
機械が動き出す手前のブートローダーのところで、止まってしまった。

エラーメッセージは、
grub error:16

あれこれ調べると、ハードディスクの不調が原因とも思える。
中古品ばかりで作った自作機だからなあ・・・
マザーボードは1999年製だし。。

動かないことには手が出しようがないので、KNOPPIXでブートを試みることにする。
ブートできたなら、ハードディスクをfsckする予定。

WineでIEを

2008-07-26 10:41:26 | Vine4.x
Vine4.2でもWineが用意されている。バージョンは既にrcではなく正式版の1.0だ。
以前、Wine0.9.xをソースコードからコンパイル、インストールしたものを試したが、InternetExprolerはうまく動かなかった。
ところが最近、mixiの記事で、ies4linuxを用いればIE5や6のインストールが可能との話を見る。
早速試してみた。
ies4linuxとは、IE5や5.5、6をWineにインストールするためのプログラム。サイトはこちら。
http://www.tatanka.com.br/ies4linux/page/Main_Page
下記のページにインストール方法のガイドがある。
http://www.tatanka.com.br/ies4linux/page/Installation
このとおりにwgetを用いてダウンロードし、tar.gzファイルを解凍する。解凍してできたディレクトリies4linux-2.99.0.1(今はこれが最新版)へ移動して、ies4linuxを起動させる。
$ cd ies4linux-2.99.0.1
$ ./ies4linux
すると、Microsoftのサイトからdcom98などのライブラリとともにInternetExprolerを自動でダウンロードし、インストールしてくれる。
途中で、IEのどのバージョンを入れるか聞かれるので、適当に選ぶこと。

IEのインストールが終了すると、Vine4.2のGNOMEデスクトップに、"e"がひっくりかえってワイングラスに浸かっているアイコンが出現する。
このアイコンをダブルクリックすると、IEが起動する。
同時に、wineserverも起動する。

IE6.0をインストールして試してみた。
日本語入力もきちんとでき、gooブログへの書き込みもできる。ただ、文字入力するたびに画面がちらつき、見ていられない・・・
動作はやや難があるか?
ブラウジングなら十分に使えそうだ。

IEを終了させても、wineserverは起動しっぱなしで、CPU使用率が100%近くになっていた。
IEを動かせているときは、CPU使用率は40~70%だったのに、なぜだろう・・・
端末からkillコマンドを使って、wineserverを強制終了させる。
$ top
これでwineserverのプロセスID(PID)を探す。
$ kill -9 "wineserverのPID"
普通にkill "PID" とやったのでは、終了できない。オプション"-9"を使うと、killシグナルがブロックされずに有効になるようだ。






wine-1.0登場

2008-07-05 23:11:31 | Vine4.x
Windows環境をエミュレートするプログラム、wine。
誕生から15年かかって遂に正式版1.0へ到達。
そんなニュースが流れたが、Vine4.2用パッケージが登場している。
バージョンは wine-1.0-1.rc4vl4
Vine用のwineは、1.0の手前のものが導入されているようだ。
早速、apt-getでインストール。
$ sudo apt-get install wine

インストール後は、GNOMEのデスクトップにwineのメニューが日本語で表示されている。
ファイルブラウザも動くし、以前の0.9.xのものより安定しているようだ。あたりまえか。
最初に環境設定をするために、wineのメニューから「wineの設定」を選ぶ。
するとダイアログが表れるが、このときに出てくるWindowsのバージョン(たぶん、エミュレートする対象)はXPになっている。
特にいじらず、初期設定のままで日本語化putty(もちろんWindows版)を動かしてみた。

$ cd putty-0.60-jp20070603.zip_FILES
$ ls
build.html plink.exe* puttygen.exe* puttyjp.patch
initcode.html pscp.exe* puttyjp.exe* puttytel.exe*
pageant.exe* psftp.exe* puttyjp.lng readme.html

$ wine puttyjp.exe

無事に起動した。
起動直後は、画像のような環境設定画面になる。


Firefox3を試す

2008-06-21 23:58:49 | Vine4.x
ギネス記録を狙うキャンペーンのおかげで、猛烈な数のダウンロードが行われたらしいFirefox3だけど、ウチも試してみようとダウンロードした。
記録を構成するひとつにはなったのかな。
ところで、VineLinux4.2にインストールするためには、ダウンロードしたtar.bz2ファイルを展開し、実行ファイルfirefoxを起動させるという段階をふむ必要がある。参考はこちら
FedoraやUbuntuには、アプリケーションの追加というメニューがあるそうな・・・

以下はその結果。
取得したファイルを、まず展開する。
$ tar jxvf firefox-3.0.tar.bz2
すると、ディレクトリfirefoxが生成され、その中にファイル群が展開される。
その中に実行ファイルfirefoxがあり、これを起動させるということだ。
やってみる。
$ cd firefox/
$ ./firefox

すると、以下のエラーが出てfirefox3は起動しなかった。
$ ./firefox
./firefox-bin: error while loading shared libraries: libjemalloc.so: cannot handle TLS data

libjemalloc.soってなんだろう?
よく見ると、さきほど展開したfirefox3のディレクトリ(firefox)の中にあるものだ・・・
$ pwd
$ /home/xxxxx/firefox
$ ls -l libjemalloc.so
-rwxr-xr-x 1 xxxxx xxxxx 30724 5月30日 05:21 libjemalloc.so*

となると、TLSの関係のエラーなんだろうか?
TLS関連のパッケージとしては、gnutlsが最初から入っているのだが、ううむ・・・

もう少し調べてみると、MozillaZine.jpに以下のようなコメントを発見。
「Firefox 3 を使うためには GTK+ 2.10 以上が必要ですが、これは VineLinux 4.2 には含まれていませんのでまずそれをインストールして下さい。」
これは、firefox3ベータ版のインストールに関するやりとりの一部だけど、正式版でも同じ事情なのかもしれない。

GTK+2.10以上・・・
このインストールは難物かも。。



MP3エンコーダ、午後のこーだをインストール

2008-06-16 23:47:55 | Vine4.x
以前Gripを使おうとした時、エンコーダとしてlameをインストールした。
午後のこーだは、lameをベースとしたもので、処理速度がより速いらしい。ソースコードのみが配布されているので、これをcheckinstallでrpm化しインストールしようとしたのだが、エラーが出てうまくいかなかった。
そこで、ソースコードをrpm化せずに直にインストールしてみた。

まず、午後のこーだのパッケージである"petit313.tgz"を入手。
入手先は下記。
http://www.marinecat.net/free/windows/mct_free.htm

入手したファイルを展開する。
$ tar zxvf petit313.tgz

展開したファイルに移動する。
cd petit313

環境設定。
$ ./configure

コンパイル。
$ make
そして、インストール。

$ sudo make install
Password:
/usr/bin/install -c gogo /usr/local/bin/
$
無事に成功したようだ。

確認してみる。
$ which gogo
/usr/local/bin/gogo

/usr/local/bin/の配下に、起動ファイルが座っている。

試しに動かしてみる。
$ gogo
GOGO-no-coda ver. 3.13 ( May. 20 2004 ) is a mp3 encoder based on lame 3.88,
which is distributed under LGPL on http://www.mp3dev.org/mp3/ .
See http://member.nifty.ne.jp/~pen/ ,
http://homepage1.nifty.com/herumi/gogo_e.html .
USAGE
gogo [options] input.wav [output.mp3]
if input.wav is `stdin' then GOGO reads from stdin.
-b [kbps] bitrate
-m {s/m/j} encode mode(Stereo/Mono/Joint-stereo)
-v [0-9] VBR quality
-vb [min] [max] VBR bitrate range
-nopsy high speed encoding
WITH psycho-acoustics different from `gogo2 -nopsy'!!
The quality is near to `gogo2 WITHOUT -nopsy option'
-q [0-9] quality(0:high 9:fast)
-a ABR
-silent disable progress message
-s [KHz] input sampling rate
-d [KHz] output sampling rate
-test [sec] gogo bench:see http://homepage1.nifty.com/herumi/bench.html

使いかたが出てきた。
これで、Gripを使うときに、lameとgogoのいずれかを選ぶことができる。

Gripを使う

2008-05-14 22:56:13 | Vine4.x
あともうしばらくしたら、VineLinux5.0が登場するのかもしれない。
とはいえ、Vine4.2をメインに据えて使っていくつもりでいる。
通勤方法が変わったので、列車内で音楽を聞くために、GripでCDの楽曲を取り出すことをやってみる。さらにmp3にエンコードし、古いZaurusで聴くのだ。

Vine4.2にはバージョン3.3.1のGripが搭載されている。
メニューからGripを起動。
音楽CDを入れると、ネットにつながっていれば、CDDBから曲名・アーティスト名などをダウンロードして、楽曲に名前をつけてくれる。

Gripのメニューから、「切り出し」-「一括作成」を選ぶと、CDから楽曲を(CDDAからWAVE形式に変換して)コピーし、さらにmp3形式に変換してくれる・・・のだが、
初期設定では「切り出し」用および「エンコード」用のソフトがインストールされていないため、何もできないのだ・・・

そこで、これらをインストールする。
「切り出し」用ソフトにはいろいろ種類があるらしいが、とりあえずcdparanoiaを使う。以前読んだネットの記事で、切り出しが速いとあったのだが・・不明。
これは、apt-getで導入可能。
「エンコード」用ソフトも数種類があるが、apt-getで比較的簡単に導入できたのはlameだった。
まず最初にself-build-lameなるパッケージが導入され、それがインストールされたら、自動でwebサイトからlameをダウンロード・インストールしてくれる、というものだった。
以前読んだ記事では、「午後のこーだ」の方がエンコード速度が速いというのを見た記憶があるのだが、まあいいか。
「午後のこーだ」については、apt-getではインストールできず、該当するwebサイトからソースを取得してコンパイルする必要がある。
参考はこちら

以上で準備はできたのだが、大事な設定がもうひとつ。
Gripの「設定」メニューから、「その他」タブを開き、「ファイルに日本語(EUC-JP)を使用する」というチェックボックスに印をつけること。
これをしないと、日本語名の楽曲が「切り出し」「エンコード」ともできない。というか、消えてしまうのだ。。