一通りブームの去ったジンギスカン。。ブームの前からのお店、うまかったです。
そういや、「『ロケット打ち上げ』の『打ち上げ』は『打ち上げ』って言うの?」って聞くの忘れた。
カラオケで歌える歌がなくて、嵐の歌などを ipod につっこみました…。
tmpwatch でフォルダは削除されないので…。
[root@backup_samba_server ~]# find /home/samba/.trach/ -type d -empty -delete
怖いけどできる。(空ディレクトリしかないディレクトリは全部削除される)
/home/samba/.trach/ と指定すると、このフォルダになにもないとフォルダ自身が削除される。><
ので、/home/samba/.trach/* としたほうがいいと思う。
Logを取りたいので最終的にはこんな感じに。
# find /home/samba/.trach/* -type d -empty -print -delete > log.log
参考にさせていただきました。
[linux][bsd] 空ディレクトリだけを削除する
find → exec rmdir だとちょっと安心。空ディレクトリのツリー構造は消えないけど。
$ find . -type d -empty -exec rmdir {} \;
rdiff-backup を導入してしばらく、サーバがハングアップ後『バックアップのエラー』メールが届くようになりました。
rdiff-backup フォルダの backup.log を見てみると
UpdateError “ファイル名” File changed from regular file before signature
とエラーが…。
調べると 公式ページの Wiki に情報が。
Go into the “rdiff-backup-data” directory and find the most recent “file_statistics” and “mirror_metadata” gzipped files.
最新の “file_statistics” と “mirror_metadata” を解凍して該当部分を削除して圧縮するといいとのこと。
解凍してファイルを確認すると確かに文字化け( 便 → 偏 へ文字化けてる)の情報が記録されてる…。
修正して再圧縮。深夜には直ってるはず。。
さっきのを最後まで読むと ruby スクリプトがあるらしい。ので修正後に試したみた。
[root@samba_server rdiff-backup-data]# ruby ./fixRdiffBackupData.rb . dir=. time=2009-12-08T03:00:03+09:00 ERROR LOG read 1, ignored 1 FILE STAT read 753013, ignored 0 MIRROR META read 7319092, ignored 0
日本語通るかあやしいけど LOG にエラーがあるのは見て取れる。FILE STAT, MIRROR META の方は修正してるので何も検出されない?
今度また失敗したら試そう。
客先のファイルサーバの停電の再起動で時間がかかったりかからなかったりするので、どうなってるのか調べた結果を書いておく。
ちなみに、FedoraのインストーラでフォーマットしたHDDの場合は、「Maximum mount count」と「Check interval」の値がそれぞれ「-1」と「0」に設定されており、ファイルシステムの自動チェックは行われない。
[root@landisk root]# cat /etc/vine-release
Vine Linux 4.2 (Lynch Bages)
[root@landisk root]# tune2fs /dev/sda7 -l tune2fs 1.38 (30-Jun-2005) Filesystem volume name: /home Last mounted on:Filesystem UUID: c8a20838-8dfb-40d7-af9d-9e6dcdc92bda Filesystem magic number: 0xEF53 Filesystem revision #: 1 (dynamic) Filesystem features: has_journal resize_inode dir_index filetype needs_recovery sparse_super large_file Default mount options: (none) Filesystem state: clean Errors behavior: Continue Filesystem OS type: Linux Inode count: 29048832 Block count: 58078983 Reserved block count: 2903949 Free blocks: 54564334 Free inodes: 28999574 First block: 0 Block size: 4096 Fragment size: 4096 Reserved GDT blocks: 1024 Blocks per group: 32768 Fragments per group: 32768 Inodes per group: 16384 Inode blocks per group: 512 Filesystem created: Wed Apr 30 12:34:40 2008 Last mount time: Mon Aug 31 11:10:43 2009 Last write time: Mon Aug 31 11:10:43 2009 Mount count: 8 Maximum mount count: -1 Last checked: Wed Apr 30 12:34:40 2008 Check interval: 0 ( ) Reserved blocks uid: 0 (user root) Reserved blocks gid: 0 (group root) First inode: 11 Inode size: 128 Journal inode: 8 Default directory hash: tea Directory Hash Seed: d973d6b4-5d31-4ffe-b1bc-63cac0cfecb9 Journal backup: inode blocks
Vine 4.2 もチェックされないなぁ。
忘れるので書いておこう。
今回は遠隔サーバ(監視するサーバ)の設定です。
※Nagios 本体は tar から コンパイルして /usr/local/nagios にインストール済み。サーバ単体で localhost の監視を出来るのを確認する。
Nagios Addons から NSCA をダウンロード。
解凍
tar zxvf nsca-2.7.2.tar.gz
cd nsca-2.7.2
コンパイル
./configure
make all
インストール
cp src/send_nsca /usr/local/nagios/bin/
chown nagios.nagios /usr/local/nagios/bin/send_nsca
chmod 755 $_
cp sample-config/send_nsca.cfg /usr/local/nagios/etc/
chown nagios.nagios /usr/local/nagios/etc/send_nsca.cfg
chmod 640 $_
nagios 設定
# vi /usr/local/nagios/etc/nagios.cfg
enable_notifications=0
# このサーバからの警告発信を無効にする。
obsess_over_services=1
# 各サービスのチェック後コマンドを実行するオプション。使うコマンドは『ocsp_command』で設定。
ocsp_command=submit_check_result
# 実行するコマンド。『submit_check_result』 というコマンドを『/usr/local/nagios/etc/objects/commands.cfg』 に記載する。
vi /usr/local/nagios/etc/send_nsca.cfg
監視する側と設定を合わせる。
password=heoeoeoeoeojsasldfaas
encryption_method=3
『submit_check_result』 を作成する。
vi /usr/local/nagios/libexec/submit_check_result
#!/bin/sh # NSCA サーバの IP アドレスを指定。 central_server="192.168.1.1" # Arguments: # $1 = host_name (Short name of host that the service is # associated with) # $2 = svc_description (Description of the service) # $3 = state_string (A string representing the status of # the given service - "OK", "WARNING", "CRITICAL" # or "UNKNOWN") # $4 = plugin_output (A text string that should be used # as the plugin output for the service checks) # # Convert the state string to the corresponding return code return_code=-1 case "$3" in OK) return_code=0 ;; WARNING) return_code=1 ;; CRITICAL) return_code=2 ;; UNKNOWN) return_code=-1 ;; [0-2]) return_code=$3 ;; esac # pipe the service check info into the send_nsca program, which # in turn transmits the data to the nsca daemon on the central # monitoring server /usr/bin/printf "%s\t%s\t%s\t%s\n" "$1" "$2" "$return_code" "$4" | /usr/local/nagios/bin/send_nsca $central_server -c /usr/local/nagios/etc/send_nsca.cfg
# chmod +x /usr/local/nagios/libexec/submit_check_result
『/usr/local/nagios/etc/objects/commands.cfg』に ocsp_command コマンド追加。
###############
# for nsca client
define command{
command_name submit_check_result
command_line /usr/local/nagios/libexec/submit_check_result $HOSTNAME$ ‘$SERVICEDESC$’ $SERVICESTATEID$ ‘$SERVICEOUTPUT$’
}
###############
引っかかったところ。
mcrypt-devel インストールしてないのでエラー。
→こんなエラー
[root@chiba_sv src]# /usr/local/nagios/bin/send_nsca -H example.com -c /usr/local/nagios/etc/send_nsca.cfg Invalid encryption method (3) in config file '/usr/local/nagios/etc/send_nsca.cfg' - Line 64 Client was not compiled with mcrypt library, so encryption is unavailable. Error: Config file '/usr/local/nagios/etc/send_nsca.cfg' contained errors...
php5-apache2 インストールしてない。( Vine 5.0 )
→ 左のメニューがリンク切れ、表示が変。
ホスト名 localhost から変更しなかったので、監視元サーバに認識されない。
→『/usr/local/nagios/etc/objects/localhost.cfg』のhost_name を監視元サーバと合わせないと、識別されないのでいつまでたっても監視元サーバに認識されない。
参考にさせていただいたサイト。(ありがとうございます!)
雑記録 – Nagios NSCAによる遠隔サーバの内部リソース監視
起動時の fsck のチェックをしないようにする。
# tune2fs -l /dev/hdb1 … Mount count: 1 Maximum mount count: 20 …
設定。
# tune2fs -c 0 /dev/hdb1 tune2fs 1.35 (28-Feb-2004) Setting maximal mount count to -1 # tune2fs -l /dev/hdb1 … Mount count: 1 Maximum mount count: -1 …
-c max-mount-counts
e2fsck(8) がファイルシステムのチェックを行うマウント回数を設定する。 max-mount-counts が 0 または -1 の場合、 e2fsck(8) とカーネルはファイルシステムのマウント回数を考慮しない。ジャーナリングファイルシステムを使っている場合、 ファイルシステムを強制的にチェックするマウント回数を ファイルシステムごとにちょっとずつ変えておけば、 すべてのファイルがいっぺんにまとめてチェックされるのを 避けることができる。
マウント回数に依存したチェックを完全に停止してしまうなら、 その影響を慎重に考えておくべきである。 ディスクドライブ・ケーブル・メモリの故障やカーネルのバグによって、 マークされたりエラーが出ることもなく、 ファイルシステムが破壊されることもあり得る。 ファイルシステムにジャーナリング機能を使っていると、 ファイルシステムに壊れたというマークが付けられることは 絶対にないので、 通常ジャーナリングファイルシステムはチェックされない。 この場合でも、カーネルがファイルシステムエラーを検知すれば、 次のブート時に fsck が実行されるが、 この時点ではデータ喪失を防ぐにはもう遅すぎるかもしれない。
時間に依存したチェックを行う -i オプションも参照すること。
-i interval-between-checks[d|m|w]
ファイルシステムをチェックする最大の時間間隔を設定する。 数値のみ、もしくは末尾に d を付けると「日」と解釈され、 m, w はそれぞれ「月」「週」と解釈される。 0 を指定すると、時間依存のチェックはしなくなる。e2fsck(8) によるファイルシステムの完全なチェックを定期的に行わせるため、 -c (マウント回数依存のチェック)、または -i (時間依存のチェック) を指定しておくことを強く推奨する。 これらが指定されていない場合、 ディスク・ケーブル・メモリの故障やカーネルのバグによって ファイルシステムが破壊されても、 データの損失や破壊が起こるまでは知ることができない。
再起動時のオプションでもfsckする/しないを選択出来る。
$ shutdown -f -h now # シャットダウン(次回起動時にfsckしない)
$ shutdown -F -r now # 再起動(次回起動時に強制的にfsckしする)
-f Skip fsck on reboot.
-F Force fsck on reboot.
grub オプションで『fastboot』を追加する。
前も書いたような気がするけど…。
ntpdate ntp.jst.mfeed.ad.jp
hwclock -w
引っかかったところを書いておこう。
H/W は HP のML310G4 + Raid コントローラ SmartArray E200 – v1.66。
CentOS 5.4 64bit
結果的にはインストーラが 2 TB 以上を認識しない状態だったので、ACU(Array Configuration Utility)から小さい容量の LUN を設定。
こんな感じで 1.5TB HDD 4 台の Raid(1+0) = 約 3 TB を設定。
/dev/cciss/c0d0 contains GPT signatures, Indicating that It has a GPT table. However, It does not have a valid fake msdos partition table, as It should. Perhaps It was corrupted — possibly by a program that doesn’t understand GPT partition tables. Or perhaps you deleted the GPT table , and are now using an msdos partition table. Is this a GPT partition table?
途中『はい』のところで『いいえ』というとディスクが認識しない。ぬぬぬ。
探すと、HP に情報が…。
SmartStart CD から ACU(Array Configuration Utility) を起動して 10GB の LUN を設定後インストール。大丈夫かなぁ。
2009/10/30 追記インストールまで成功!!
qmail + vpopmail で管理してるメールサーバは cur ディレクトリ内のメールを削除しても maildirsize が再作成されない。→ vuseronfo の結果には反映されない。→ vusermod -q で quota 情報を設定し直す。
2017/07/12追記 再作成する他の方法を見つけた。
該当するユーザの maildirsizeファイルを削除して、vuserinfo -Q コマンドを使う。
$ cd /home/vpopmail/domains/domain.com/user/Maildir $ rm maildirsize $ vuserinfo -Q user@domain.com