logrotateでApacheのログローテート
By admin | 5 月 29, 2009
Apacheのログファイルのローテート。
今までは自分でスクリプトを作って、cronに登録してやってました。
こんな感じ。
—–
YMD=`env TZ=JST+15 date ‘+%Y%m%d’`
cp /usr/local/apache2/logs/access_log /usr/local/apache2/logs/access_log_${YMD}.log
cp /usr/local/apache2/logs/error_log /usr/local/apache2/logs/error_log_${YMD}.log
cp /dev/null /usr/local/apache2/logs/access_log
cp /dev/null /usr/local/apache2/logs/error_log
/usr/local/apache2/bin/apachectl graceful
—–
あんまりスマートじゃないような気がする。
ということで、logrotateを使うことにしました。
ローテートしたいログの設定ファイルを/etc/logrotate.d/内に作成。
—–
/usr/local/apache2/logs/access_log {
daily
rotate 30
dateext
create 0644 root root
postrotate
/usr/local/apache2/bin/apachectl graceful > /dev/null 2>&1
endscript
}
/usr/local/apache2/logs/error_log {
daily
rotate 30
dateext
create 0644 root root
postrotate
/usr/local/apache2/bin/apachectl graceful > /dev/null 2>&1
endscript
}
—–
『daily』は毎日。ここは他に『weekly』『monthly』などもある。
『rotate 30』は30世代分を残す。
『dateext』はローテートされたファイル名に日付をつける。
『create 0644 root root』は新規ログファイルを指定のパーミッション・ユーザ・グループで作成する。
『postrotate~endscript』はローテート後に実行するコマンド。ここではApacheをgracefulします。
最後にlogrotateを手動で実行。
# /usr/sbin/logrotate /etc/logrotate.d/hogehoge
初回は/var/lib/logrotate.statusにログファイル名と日付が保存されるだけで、ローテートはされない。
—–
”/usr/local/apache2/logs/access_log” 2009-5-29
”/usr/local/apache2/logs/error_log” 2009-5-29
—–
日付の部分を1日前(今回は『daily』なので1日。周期によってここは変える。)に書き換える。
これで完了。
デフォルトだと、AM04:02にローテートされます。
Topics: Apache, CentOS, Server | No Comments »
CentOSでUSB外付けHDD(NTFS)をマウント
By admin | 5 月 22, 2009
サーバのディスク容量を増やすために、USB接続の外付けHDDを買いました。
デフォルトでFAT32でフォーマットされているたで、
Windowsマシンに接続してNTFSにフォーマットしなおしました。
で、サーバにUSB接続。
dmesgでデバイスを確認
# dmesg
—–
・
・
sdd: sdd1
・
・
—–
マウント用ディレクトリを作成し、マウント
# mkdir /mnt/usb
# mount -t ntfs /dev/sdd1 /mnt/usb
・・・失敗。
どうやらNTFSフォーマットのディスクをマウントするには「ntfs-3g」というパッケージが必要らしい。
# yum install ntfs-3g
再度マウント
# mount -t ntfs-3g /dev/sdd1 /mnt/usb
何かWARNINGが出たけど、一応マウントできているようです。
追記
この時試したサーバはコレでマウントできたけど、別のサーバでやってみたらアレもコレも足りないと言われてしまった。
引き続き調べて手順を固めよう。
Topics: CentOS | No Comments »
CentOSでe-mobile接続
By admin | 5 月 19, 2009
e-mobileの端末「D02HW」を入手。
ひょんなことから、Linuxマシンで接続することになったので、その手順をまとめておきます。
OSはCentOS5.3です。
専用のモデムドライバをダウンロードしてインストール。
『make info』コマンドでmakeの使用方法が確認できます。
ボクの環境だと『make install_fedora』です。
# wget http://oozie.fm.interia.pl/src/huawei.tar.bz2
# tar xvfj ./huawei.tar.bz2
# cd ./huawei
# make install_fedora
設定ファイルをコピー、編集します。
# cat /etc/wvdial-huawei.conf >> /etc/wvdial.conf
# vi /etc/wvdial.conf
———-
Phone = *99***1#
Username = em
Password = em
———-
これで設定完了。
「D02HW」を接続し、ダイアルコマンド実行。
# wvdial
つながりました。
Topics: CentOS | No Comments »
Xenでブリッジ追加
By admin | 4 月 22, 2009
NICが2つあるときに、eth1(2つ目?)をDomUで使うときは、Dom0側でブリッジしてやらないといけない。
ということで、eth1のブリッジ「xenbr1」を作成します。
Xen起動時に実行されるスクリプト/etc/xen/scripts/network-bridgeをリネームします。
# cd /etc/xen/scripts
# cp ./network-bridge ./network-bridge.xen
新たに同名のファイルを作成します。
# vi ./network-bridge
———-
#!/bin/sh
set -e
OP=$1
shift
script=/etc/xen/scripts/network-bridge.xen
case ${OP} in
start)
$script start vifnum=0 bridge=xenbr0 netdev=eth0
$script start vifnum=1 bridge=xenbr1 netdev=eth1
;;
stop)
$script stop vifnum=0 bridge=xenbr0 netdev=eth0
$script stop vifnum=1 bridge=xenbr1 netdev=eth1
;;
status)
$script status vifnum=0 bridge=xenbr0 netdev=eth0
$script status vifnum=1 bridge=xenbr1 netdev=eth1
;;
*)
echo ‘Unknown command: ‘ ${OP}
echo ‘Valid commands are: start, stop, status’
exit 1
esac
———-
あとはXenを再起動。
# /etc/init.d/xend restart
ifconfigで見てみると、「xenbr1」が出来ています。
ココが参考になります。
Xen環境で仮想ネットワークを構築
Topics: CentOS, Server, Xen | No Comments »
SVNクライアント(RapidSVN)インストール
By admin | 4 月 17, 2009
CentOSをクライアントとしてちょっと使ってます。
で、SVNのクライアントソフト(RapidSVN)を入れたので、その手順をメモ。
当然パッケージでインストールです。
標準パッケージには入っていないので、リポジトリを追加します。
monitをインストールしたときに追加したのと同じリポジトリにあるので、追加手順はこちらを参照。
Monitでサーバ監視(1)
リポジトリの追加が完了したらインストール。
# yum install rapidsvn –-enablerepo=rpmforge
以上。
Topics: svn | No Comments »
« Previous Entries



