Yukiharu YABUKI の tDiary
このtDiaryを検索します。
2008-12-26 [長年日記]
_ Apache Portable Runtime(APR)
私が追っかけていないためだが、Apacheって、Portable Runtime Projectってのをやってて(http://apr.apache.org)で展開している。
今日時点の apache の安定版をコンパイルするのには、こいつが必要になっている。APRの中身については、前述のwebや、wikipediaなどでも概観できる。
Debian GNU/Linux Lenny の依存関係でチェックするとapache2をコンパイルするのに、下記のライブラリが必要だそうだ
$ sudo aptitude install libaprutil1-dev libapr1-dev パッケージリストを読み込んでいます... 完了 依存関係ツリーを作成しています 状態情報を読み取っています... 完了 拡張状態情報を読み込んでいます パッケージの状態を初期化しています... 完了 タスクの記述を読み込んでいます... 完了 以下の新規パッケージがインストールされます: libapr1-dev libaprutil1-dev libdb4.6-dev{a} libexpat1-dev{a} libpq-dev{a} 更新: 0 個、新規インストール: 5 個、削除: 0 個、保留: 0 個。 2206kB のアーカイブを取得する必要があります。展開後に 9495kB のディスク領域が新たに消費されます。 先に進みますか? [Y/n/?]
- libdb4.6 は、BerkleyDBのライブラリ
- libexpat1は、XMLのパーサ。
- libpq-devは、postgresqlのヘッダーなどの開発に必要なファイル
ということなんで、最小の構成でmakeするだけなら全部はいらない風味だ。で、debian/rulesを覗いてみる。
AP2_COMMON_CONFARGS = --enable-layout=Debian --enable-so \ --with-program-name=apache2 \ --with-ldap=yes --with-ldap-include=/usr/include \ --with-ldap-lib=/usr/lib \ --with-suexec-caller=www-data \ --with-suexec-bin=/usr/lib/apache2/suexec \ --with-suexec-docroot=/var/www \ --with-suexec-userdir=public_html \ --with-suexec-logfile=/var/log/apache2/suexec.log \ --with-suexec-uidmin=100 \ --enable-suexec=shared \ --enable-log-config=static --enable-logio=static \ --with-apr=/usr/bin/apr-1-config \ --with-apr-util=/usr/bin/apu-1-config \ --with-pcre=yes
が configure へオプションとして渡されているのを確認する。aprとapuのことも調べておく。
$ ls -la /usr/bin/apr-1-config /usr/bin/apr-config -rwxr-xr-x 1 root root 6934 2008-10-08 07:15 /usr/bin/apr-1-config lrwxrwxrwx 1 root root 12 2008-12-26 15:11 /usr/bin/apr-config -> apr-1-configで、そのaprの中身は?
$ file /usr/bin/apr-1-config /usr/bin/apr-1-config: POSIX shell script text executableってことで、後学のために中身を眺めておく。次は、apuの方
yelona:~# ls -la /usr/bin/apu-* -rwxr-xr-x 1 root root 5953 2008-08-21 05:39 /usr/bin/apu-1-config lrwxrwxrwx 1 root root 12 2008-12-26 15:12 /usr/bin/apu-config -> apu-1-config
yelona:~# file /usr/bin/apu-1-config /usr/bin/apu-1-config: POSIX shell script text executableこれも後学のために中身を眺めておく。
_ NIC2枚差しで、両方のNICからDHCPの設定をもらって困ってしまったら。
netstat -rn を実行して、現状を確認して、おもむろに、route default gw xxx.xxx.xxx.xxx と打ち込んで、netstat -rn を実行する。まあ、これだけじゃダメです。DHCPでリゾルバが上書きされて切ない状態になっていることが多い。よって /etc/resolv.confを手で修正するか、GWにしたい側のdhcp clientを起動してresolv.confを上書きしてもらえ。最近のlinuxならケーブルを抜き差しするだけでいいんじゃないかな。
って、ケーブルを抜きさした方が、viなどのエディターで/etc/resolv.confを書き換える必要がないから、ついつい使ってしまう