12月 30
ApacheBenchでこのブログのパフォーマンスを計測したら、
Requests per second: 9.94[#/sec]
という、思っていたより残念な結果でした。うーん、思っていたより低いなぁ。。。
で、とりあえずmysql_connectをmysql_pconnectに変えてみたのですが。
Requests per second: 10.01 [#/sec]
と、大して変わらず。。。
めんどくさいけど、ApacheとMySQLの設定から見直そう。PHPをDSOで使ってるのも影響してるのかなぁ。。。
12月 20
CentOSをネットワークインストールというエントリーでネットワークインストールする方法を書いておいたのですが、これは32bit版のやりかた。
といってもほとんど変わりません。FTPで見に行く先が変わるだけです。今回はCentOS5.4の64bit版をCore2Duoのマシンにインストールしました。
ディレクトリが「/Linux/centos/5.4/os/x86_64」に変わるだけでした。あとは32bit版とまったくおんなじ。
初の64bit環境ですが、ちといろいろと試して遊んでみたいと思います。
10月 03
rootじゃ接続できないようにしてあるし、鍵方式での接続しか許可していないので不正ログインされる危険性はとても低いと思っているのですが、それでもせっせとログインしようとしてくる怪しげなプログラム君たちがいます。
ログがひたすら増えるだけでも若干気分が悪いので、SSHで接続できるホストをごりっと制限してしまいました。e-mobile等で外からメンテナンスすることができなくなってしまうので不便ではありますが、まぁレアケースだし、そもそもe-mobile持ってないので気にしないことにしましょう。
/etc/hosts.allow
に接続できるホストのIPアドレスを記載します。ここはホスト名でもいいみたいなんですが、IPにしておきました。
sshd:xxx.xxx.xxx.xxx xxx.xxx.xxx.xxx
複数ある場合は半角スペースで区切るようです。これで、上記IPアドレスからの接続は許可されます。次は禁止ホストの設定です。
/etc/hosts.deny
に
sshd: ALL
と記述します。
「hosts.allow」→「hosts.deny」の順で解釈するそうです。「hosts.allow」に当該IPアドレスがあればそのまま接続を許可。「hosts.allow」にないIPは次に「hosts.deny」を参照し、そっちにあったら禁止。どっちにもなければ許可になります。
SCP使えばFTPもいらないし、MySQL等もローカル接続のみを許可にして、外部からつなぎたい場合はSSHでポートフォワードすればOK。無駄なポートは空けないことが重要かと。
10月 03
社内にあるCentOSはntpで時刻同期ができません。「そんなntpdサーバいねーよ」と怒られてしまいます。うーん、自宅では見えてるサーバなんだけどなぁ。。。ポート閉じられてて外に出れないのかなぁ。(←確認してない)
ということで、地道に手動で設定。なんというアナログ。
date mmddhhmmyyyy
めんどくさくなったら調べよう。それまで放置しよう。
月2桁、日2桁、24時で2桁、分2桁、年4桁、ですね。
7月 21
まぁたいしたことではないのですが、
「トラブル時にはログをみる」
これが如何に大事かというのを痛感しました。設定ファイルを見直す前に、ログを見直す。tailコマンド大活躍!
当然のこと過ぎて、ついつい忘れてしまう今日この頃です。油断大敵。
6月 30
ln -s リンク先パス リンク名
/home/www/hogeへ/home/www/hoge2という名前でシンボリックリンクを張るには、
ln -s /home/www/hoge /home/www/hoge2
となる。これを知っているのと知らないのとので、運用負荷が大きく違う、と思っている。
6月 17
cvs -d:pserver:ユーザ名@CVSサーバの場所:/var/cvs checkout モジュール名
クライアントで開発、CVSにコミット。で、そのソースコードをサーバ上にチェックアウトするときに使う。
いちいちクライアントからFTPやSCPでアップするのもよいが、さすがにめんどくさいのでこれ一発。で、あとは随時アップデートを行えば修正箇所の本番への反映もコマンド一発。
cvs -d:pserver:ユーザ名@CVSサーバの場所:/var/cvs update -d モジュール名
環境設定ファイルなんかは更新対象外としたいが、そのやり方はまた後日調べておこう。
4月 01
手を抜いてyumでperlをインストールしたらどこにインストールされたのかわからんようになってしまいました。ちゃんとソースコード落としてきてmakeしろっていうことなんですよね。
whereis perl
これでperlの実行ファイルへのパスが表示されます。
いやいや、いい加減学習しないとね。(←MySQLで前科アリ)
3月 01
/etc/sysconfig/network-scripts/ifcfg-eth0
NICが2枚あったらeth1になるんでしょうね。
ONBOOT=yes
BOOTPROTO=none
IPADDR=192.168.0.99
GATEWAY=192.168.1.1
上から、起動時に有効にするか。「none」で固定IP、「dhcp」でまんまDHCP、あとはIPとゲートウェイ。
その他、MACアドレスも記載されてますが、それはOSインストール時に勝手に書かれます。
2月 27
いまどきのLinuxってディスクが5~6枚あるので、焼くのが大変だったんですよね。まぁ全部焼かなくてもいいのですが、つい全部焼いておいてしまう。
で、今回CentOSのマシンをセットアップするのにネットワークインストールなるものを試してみました。これがもうカンタンラクチン。
CentOSのisoをダウンロードする際に「CentOS-5.1-i386-netinstall.iso」(今回はCentOS5を使用)を選択してダウンロード。このISOをCDに焼きます。
あとはCDブート、途中まではいつもとおんなじです。
「Installation Method」、インストール方法の選択画面で「http」か「ftp」を選択するだけ。今回はftpを利用しました。
ネットワークの設定は自動にしちゃって、ftpサーバの指定は「ftp.riken.jp」(理研さん、ありがとうございます)。ディレクトリは「/Linux/centos/5/os/i386」、「Use non-anonymouse ftp」にはチェックを入れません。
ここ以降は通常のインストールのまんま。変わりはありません。勝手にファイルをダウンロードしてインストールしてくれます。
OSのメディアなんて何度も使うものじゃないから、これはすっごく便利です。