PC関係のメモ
SONY MDR-Z600
SONYカタログサイトより
スタジオでのプロ用としての性能を持ち原音に忠実な音質を再生。 長時間聴いても疲れない装着感、持ち運びに便利な折りたたみ式のモニター用ヘッドホン
mod_gzip: TRANSMIT_ERROR:ISMEM:104 / [server][PostgreSQL]PostgreSQL 7.3.4 install
mod_gzip: TRANSMIT_ERROR:ISMEM:104
メモリが足りないのかエラーが出てた。要調査
PostgreSQL 7.3.4 install
7.3.1 からアップグレード.
doc/README.mb.jp によると
PostgreSQL 7.3からはconfigureのオプション指定の有無に関わらず,マル チバイトサポートが有効になっていますので,特にconifgure時にマルチバ イト用の特別なオプションを指定する必要はありません.
らしい、しかも --enable-syslog も標準で組み込まれてる
./configure make su make install cp contrib/start-scripts/linux /etc/rc.d/init.d/postgres chmod 755 /etc/rc.d/init.d/postgres chkconfig --add postgres
PostgreSQL 7.4 にレプリケーションが搭載される?
7.4 はWindows 対応とかレプリケーション対応とか目立つ機能がいっぱい。
あと、これも
disp_referrer.rb プラグイン導入 / [Apache]mod_rewrite / [PostgreSQL]PHPに必要なヘッダ・ライブラリのみインストール
disp_referrer.rb プラグイン導入
- Noraライブラリをインストール
- Uconvライブラリをインストール
- disp_referer.rb をpluginディレクトリに入れる
mod_rewrite
./configure に --enable-rewrite を追加
PHPに必要なヘッダ・ライブラリのみインストール
試してないけど INSTALL ドキュメントによるとこんな感じ
./configure make make src/bin install # psql とか make src/include install # ヘッダファイル make src/interfaces install # ライブラリ /sbin/ldconfig /usr/local/pgsql/lib
RedHat8 setup / [server][PostgreSQL]PostgreSQL 7.3.4 install / [server]mrtg-2.9.29 install / [server]net-snmp / [server]CPU states: 98.2%
RedHat8 setup
PostgreSQL 7.3.4 install
./configure make su make install cp contrib/start-scripts/linux /etc/rc.d/init.d/postgres chmod 755 /etc/rc.d/init.d/postgres chkconfig --add postgres
groupadd -g 70 postgres useradd -u 70 -g postgres -d /usr/local/pgsql postgres mkdir /usr/local/pgsql/data chown postgres /usr/local/pgsql/data su - postgres /usr/local/pgsql/bin/initdb -D -E EUC_JP --no-locale /usr/local/pgsql/data
~/.bash_profile に以下を追加
export PATH="$PATH":/usr/local/pgsql/bin export POSTGRES_HOME=/usr/local/pgsql export PGLIB=$POSTGRES_HOME/lib export PGDATA=$POSTGRES_HOME/data export MANPATH="$MANPATH":$POSTGRES_HOME/man export LD_LIBRARY_PATH="$LD_LIBRARY_PATH":"$PGLIB"
/usr/local/pgsql/data/postgres.conf を変更
tcpip_socket = true silent_mode = true max_connections = 32 shared_buffers = 512 sort_mem = 4096
SYSLOG にログを吐くように設定
mrtg-2.9.29 install
他に必要だったのは
- GDライブラリ (gd-2.0.15.tar.gz)
- libpng (RPM)
ついでに以下のものも
- freetype(RPM)
- libjpeg(RPM)
まずは gd から、libpng を RPM で入れた後
./configure make make install
mrtg も同じ
net-snmp
わかりやすく説明されてるのでこれを参考に、以下のような snmpd.conf を作成. もちろんコミュニティ名は変更しましたが.
# セキュリティ名 ネットワーク コミュニティ名 com2sec local localhost local #com2sec securenet 192.168.0.0/24 securenet
group local_group v1 local group local_group v2c local group local_group usm local #group secure_group v1 securenet #group secure_group v2c securenet #group secure_group usm securenet
view view_all included .1 80 view view_mib2 included .1.3.6.1.2.1 fc view view_ucdavis included .1.3.6.1.4.1.2021 fe
access local_group "" any noauth exact view_all none none #access secure_group "" any noauth exact view_mib2 none none
syslocation Red Hat Linux 8.0 syscontact root<root@****.***>
作成後 snmpd を起動.確認のため以下を実行
snmpwalk -c <community> localhost Timeout: No Response from localhost
・・・今日はここまで
CPU states: 98.2%
top コマンドで見たら常にこんな状態(22:00).まずい・・・ていうかDr.コトー診療所始まってるじゃんかYO!
net-snmp 続き / MythTV / Perlで書かれた日記システム / [PostgreSQL]PostgreSQL 7.4のbetaテストが開始 / [Ruby]Ruby 1.8.0 リリース!(8/4) / CGI日記
net-snmp 続き
group local_group v1 local
の最後の local をコミュニティ名と勘違いしてた、これはセキュリティ名でした。 なので local のままで良い。
snmpwalk -c <community> localhost
を実行して、情報一覧が取得できることを確認できた.
MythTV
今月の LinuxMagazine に載ってた。XMLTV みたいなのは日本では無理だろうな・・・
Perlで書かれた日記システム
シンプルでいいんだけど、どうせなら MovableType 使いたい気持ちもある
PostgreSQL 7.4のbetaテストが開始
Ruby 1.8.0 リリース!(8/4)
CGI日記
logrotate でログファイル名に日付を付ける
/usr/local/apache/logs/access_log {
rotate 50
monthly
compress
postrotate
/bin/kill -HUP `cat /usr/local/apache/logs/httpd.pid 2> /dev/null` 2> /dev/null
EXT=`date +%Y%m%d`
for f in $1;
do mv $f.1 $f.$EXT;
done
endscript
}
PHP Magazine / [PHP]BinaryPHP / IPnuts 4.0 released
PHP Magazine
Host AP driver / ブロードバンドルータを選ぶ
Host AP driver
ブロードバンドルータを選ぶ
- NTT-ME BA8000Pro 約¥16,000
- マイクロ総合研究所 NetGenesis SuperOPT90 約¥17,000
Linux Magazine 2003年4月号にブロードバドルータとLinux ルータの比較の話があったので参考にしようと思ったが、そのLinuxルータのスペックが「CPU が Pentium4 2AGHz、1G バイトのメモリを搭載し、インテルの PRO/1000 MT Desktop Adapter を2枚装着した。」という大層なスペック。こんなマシンルータにするほどマシンは余ってないので今回は見送り。(ていうかこんなマシン使ったら比較にならんと思うんだけど・・・)
logrotate for Apache / Web Application Server / 日記システムの整形ルール
logrotate for Apache
do mv $f.1 $f.$EXT;
を
do mv $f.1 $f.$EXT.gz;
に変更。
生成された過去ログが compress されていなかったのでさらに以下のように修正
do mv $f.1.gz $f.$EXT.gz;
駄目っぽい気がする・・・明日確認
Web Application Server
PHP で PostgreSQL に接続してる場合も Web アプリケーションサーバになるのかな?
* ((<e-Words : Web アプリケーションサーバ【WAS】|URL:http://e-words.jp/w/E382A2E38397E383AAE382B1E383BCE382B7E383A7E383B3E382B5E383BCE38390.html>))
ユーザからの要求を受け付けて、データベースなどの業務システムの処理に橋渡しす る機能を持ったサーバソフトウェア。 ある程度の規模まできたらアプリケーションサーバとデータベースサーバ一緒のマシンで運用しちゃ駄目だと改めて思った。反省。 忘れないうちに分離するメリットを
- 管理面で楽
- 障害時の問題の切り分けが楽。よって復旧も早い。
- とにかく金さえあれば分離するに越したことは無い。
日記システムの整形ルール
前に Wiki 使ったときにも思ったんだけど、決定版ともいえるルールが無い。それぞれ似通ってはいるんだけど。
テキスト整形関係って何があったっけ・・・
- RD Format
- POD
- plain2
「普通のテキストとしても読める」フォーマットが好き。 あと他データとの交換ができるようにシンプルなルール。そういう意味で RD は今のところベスト。
あとリンクの張り方も重要。はてなダイアリーのキーワード機能は便利そう。入力したテキストから自動でキーワード部分にリンクを張ってくれるんだろうか?
仕組みはどうなってるんだろ、テキストをわかち書きしてキーワードデータベースと照合するのかな?
logrotate で Apache のログに YYYYMMDD つけて圧縮する
簡単にできると思ったのに存外手間取る
結局以下で落ち着いた
/usr/local/apache/logs/access_log {
rotate 50
daily
postrotate
/bin/kill -HUP `cat /usr/local/apache/logs/httpd.pid 2> /dev/null` 2> /dev/null
EXT=`date +%Y%m%d`
for f in $1;
do mv $f.1 $f.$EXT;
done
/bin/gzip -f $f.$EXT
endscript
}
もっとスマートなやり方があるような・・・
ブラスター亜種を除去してきた。 W32.Welchia.Worm / [PHP][programming]PHP 4.3.3RC4 released / [book][PostgreSQL]Software Design 2003.9 / テキスト整形ルール / [server]MRTG
ブラスター亜種を除去してきた。 W32.Welchia.Worm
シマンテック配布のツールで除去
PHP 4.3.3RC4 released
Software Design 2003.9
気になる記事 PostgreSQL 二相コミット 永安悟史氏に聞く
調べてみたら未踏ソフトウェア創造事業にもなってるらしい
テキスト整形ルール
* 見出し -リスト 1. 番号リスト
だと普通のテキストとしても使えそう。見出は = のほうが読み易い気もするが、意味的には変。知らない人がみたら「イコール見出し?」となるし
結局リンク部分をどうするかが一番の課題のような気がする。やっぱり はてな のキーワードはすごい。
MRTG
cron に以下を追加
*/5 * * * * /usr/local/mrtg-2/bin/mrtg /home/httpd/htdocs/mrtg/mrtg.cfg
mrtg.cfg を書き換え
WorkDir: /home/httpd/htdocs/mrtg Language: eucjp IconDir:/mrtg/icons/ ### Global Defaults # to get bits instead of bytes and graphs growing to the right Options[_]: growright, bits Target[la]: 1.3.6.1.4.1.2021.10.1.5.1&.1.3.6.1.4.1.2021.10.1.5.2:senkosha@localhost: MaxBytes[la]: 100 Options[la]: gauge, nopercent, absolute, integer, growright, withzeroes Title[la]: CPU Usage PageTop[la]: <H1> CPU Usage on DB2Server</H1> YLegend[la]: CPU Usage(%) ShortLegend[la]: % LegendI[la]:1分平均 LegendO[la]:15分平均
ログローテート / [server]Naver の IP から大量アクセス / [PHP]エラー/ログ関係の設定 / [server][Apache]負荷分散・チューニングいろいろ覚書
ログローテート
/usr/local/apache/logs/host1-access_log /usr/local/apache/logs/host2-access_log
{
rotate 50
daily
sharedscripts
postrotate
/bin/kill -HUP `cat /usr/local/apache/logs/httpd.pid 2> /dev/null` 2> /dev/null
EXT=`date +%Y%m%d`
for f in $1;
do mv $f.1 $f.$EXT;
/bin/gzip -f $f.$EXT
done
endscript
}
Naver の IP から大量アクセス
名前引きできない IP からのアクセスが大量にあるので調べてみたら Naverbot だった。Naverbot は Googlebot を詐称したり(robots.txt へのアクセス時)あまりお行儀が良くないようで。
エラー/ログ関係の設定
エラー表示を抑制する。これは php.ini より個々のスクリプト内で書いた方がデバッグしやすい
ini_set("display_errors", 0);
ログを取る
log_errors = On error_log = /var/log/php
負荷分散・チューニングいろいろ覚書
* ロードバランサ * LVS * mod_rewrite * proxy * APC , "PHP Accelerator"
APC Install / [server][PHP]PHP Accelerator
APC Install
pear install apc mv apc.so /usr/local/lib/php/extensions/
これでインストールは完了. php.ini に以下を設定
extension=apc.so
phpinfo(); で動作していることを確認できた。
cli 版 PHP で以下のメッセージが表示されるようになった。
[Fri Aug 22 12:30:00 2003] [apc-notice] APC version 2.0b -- startup complete
php.ini を php-cli.ini という名前でコピーして extension=apc.so を削除
動かないスクリプトが出てきた
<?php require_once "DB.php"; ?>
で
Fatal error: Class db_error: Cannot inherit from undefined class pear_error in /home/httpd/public_html/db.starcat.co.jp/test.php on line 2
というエラーが出る。発生条件はどうも別の別のスクリプトが作った DB.php のキャッシュがこっちでは動いてない模様。
安心して使えないので APC 外すことにする
PHP Accelerator
いつのまにか ionCube の日本語ページができてた
PHP Accelerator についても日本語の解説がある.ダウンロードには無料の登録が必要なので登録する.
php_accelerator-1.3.3r2_php-4.3.0_linux_i686-glibc2.1.tgz をダウンロードして INSTALL.txt を開くとインストール方法が日本語で書いてあった.
pgpool install
Web サーバに pgpool をインストールした。
allow_inet_domain_socket 1


_ hajime [昔の日記に突っ込んでみるテスト]