which, whereis, find, locate の違い
2007/02/08 22:06 posted by kunkichi
自宅サーバ用にCentOSのインストール手順について調べていたら、結構な数で locate コマンドのデータベースを作ってる人が多いんだよね。locate コマンドって「ファイル検索」系のコマンドってことだけは知ってたんだけど、ほとんど使ったことがなくて、検索する時はいつも大体こんな感じ。
- ファイル検索・・・find
- コマンド検索・・・which
で気になったのでこれらの検索系コマンドがどう違うのか調べてみた。
- (コマンドも含めた全ての)ファイル・ディレクトリの検索
- find
ファイル名・ディレクトリ名を検索。
ただし、ベタにディレクトリ配下をなめるような検索を行うので時間がかかる場合あり。
- locate
ファイル名・ディレクトリ名を検索。(ここまでは find と一緒)
予め検索結果のデータベースを作成しておくので検索が高速。
ただし、データベース更新の後にファイルの移動とかを行うと、再度更新しないと反映されない。
よって定期的な更新が必要。
なるほどね。ついでにwhich、whereisとの違いは。
- コマンド(つまり実行権があるファイル)の検索
- which
コマンドへのパスを表示する
- whereis
コマンドのバイナリ・ソース・マニュアルのパスを表示する。
ということらしい。あんまり考えずにベタな方を使ってるってことか、爆
Category: UNIX, Server | コメント&トラックバック(0)
MacPortsでNagios
2007/01/08 10:22 posted by kunkichi
お休みも終わってしまい、がんばって仕事モードに戻るかー、と気合いを入れようと思いきや、いきなりの連休でまたもやダメ人間へと突き落とされています(笑)が、気を取り直して、前々から勉強しようと思っていたサーバ監視ツール Nagiosのインストールを Mac でやってみました。
ちなみに、仕事でやってるサーバの監視はこんな感じ。
- 死活・稼働監視
SNMPと自前スクリプトでサーバの死活監視、サービスの稼働監視。
- 経過監視
SNMPで取ったデータをMRTGでグラフ化。
よそはどうやってるのかあんまり知らないけどまあ一般的なやり方なのかなぁ。
でも、SNMPでトラップ拾えないものもあるし、新しいサービス追加するたびに自前スクリプト書くのも面倒だし、ってな感じで不便さも感じてきたので、最近流行のNagiosをうちに余っていたiBook(G3/800MHz OSX 10.4)でまずは実験。
まず、Nagiosは、
- Nagios本体
監視のスケジューリングや監視結果の処理
- プラグイン
実際の実際の監視を行うコマンド
という構成になっていて、いろんなサービスを監視するためにはそれ用のプラグイン(コマンド)が必要、言い換えるとそれぞれのサービスのライブラリやコマンドをインストールしなければいけない。OSXのデフォルトではいろいろと足りなさそうなのだけど、いちいちビルドするのは面倒なのでここはMacPortsで端折ることにする。
↑を参考にしてまずMacPortsをインストール。調べてみると、なんだ、MacPorts自体にNagiosが既にあるやん。ということでMacPortsでそのまま入れることにする。
$ sudo port install nagios
※もしこれを参考にする人がいたら、ここですぐ実行せずに下まで読んだほうが時間短縮されるかも。
これで依存関係のあるライブラリも全て自動的にインストールされる。
と、おもったら、
---> Building XFree86 with target World
---> Staging XFree86 into destroot
---> Installing XFree86 4.5.0_2
---> Activating XFree86 4.5.0_2
Error: Target com.apple.activate returned: Image error: /usr/X11R6/include/DPS/ColorSB.h already exists and does not belong to a registered port. Unable to activate port XFree86.
Error: The following dependencies failed to build: gd2 XFree86 freetype zlib jpeg libpng nagios-plugins fping p5-crypt-des perl5.8 p5-digest-hmac p5-digest-sha1 p5-net-snmp openssl
Error: Status 1 encountered during processing.
依存関係にあると思われるXFree86のインストールでなんかコケてる。ググってみたら↓を見つけた。
http://trac.macports.org/projects/macports/ticket/6188
どうやら -f つけて強引に突き進めばいいらしい(爆
まあ、いいや、XFree86 だけ先にいれちゃおう。依存してるパッケージもわかったし。
$ sudo port -f uninstall XFree86
$ sudo port -f install XFree86
$ sudo port install Nagios
ちなみにXFree86のビルドにかなり時間がかかりました。でインストールの最後にいろいろメッセージが出るのでその通りやってみる。
- まず、/etc/httpd/httpd.conf の 「ScriptAlias /cgi-bin/ “/Library/WebServer/CGI-Executables/」の記述の上に以下のエントリを追加。
#
# Nagios stuff
ScriptAlias /nagios/cgi-bin/ "/opt/local/sbin/nagios/"
<directory>
AllowOverride None
Options ExecCGI
Order allow,deny
Allow from all
AuthName "Nagios Access"
AuthType Basic
AuthUserFile /opt/local/etc/nagios/htpasswd.users
require valid-user
</directory>
Alias /nagios "/opt/local/share/nagios"
<directory>
Options None
AllowOverride AuthConfig
Order allow,deny
Allow from all
</directory>
# End Nagios stuff
#
設定変更を反映するためにapacheを再起動。
$ sudo apachectl restart
- 次に /opt/local/etc/nagios にNagiosの設定ファイルを準備。
$ cd /opt/local/etc/nagios
$ sudo mkdir sample
$ sudo cp *.cfg-sample sample/
$ for i in *cfg-sample; do sudo mv $i `echo $i | sed -e s/cfg-sample/cfg/`; done;
commands.cfgとか編集しろ、って書いてあるけど最低限のコマンドは書いてあるようなのでここではパス。とりあえず設定ファイルのテストだけしてみる。
$ sudo nagios -v /opt/local/etc/nagios/nagios.cfg
以下のようにエラーが出なければOK。
Total Warnings: 0
Total Errors: 0Things look okay - No serious problems were detected during the pre-flight check
- /opt/local/etc/nagios/cgi.cfgの管理者ユーザ設定を”nagiosadmin”に変更する。
authorized_for_system_information= nagiosadmin
authorized_for_configuration_information= nagiosadmin
authorized_for_system_commands= nagiosadmin
authorized_for_all_services= nagiosadmin
authorized_for_all_hosts= nagiosadmin
authorized_for_all_service_commands= nagiosadmin
authorized_for_all_host_commands= nagiosadmin
- 先ほどの管理者ユーザでapacheのBASIC認証ができるようにする。
$ sudo htpasswd -c /opt/local/etc/nagios/htpasswd.users nagiosadmin
- 最後にNagiosが自動起動するように設定して
$ sudo launchctl load -w /Library/LaunchDaemons/org.macports.nagios.plist
Nagiosを起動。
$ sudo /opt/local/var/nagios/nagios.init start
これでインストールは完了。ブラウザから”http://IPアドレス/nagios”を参照してNagiosのTOP画面が見えればとりあえずインストールはできてるはず。

まあ監視対象サーバの設定は一つも設定してないのでデフォルトだとNagiosがインストールされているlocalhost(つまりiBook)しか設定がないのだけど、それはまた後日。
Category: UNIX, Mac | コメント&トラックバック(2)
cron(crontab)で月末で指定する方法 - ぎじゅっやさん
2006/12/29 23:59 posted by kunkichi
ぎじゅっやさんよりcron(crontab)で月末で指定する方法 - ぎじゅっやさん
55 23 28-31 * * /usr/bin/test $( date -d '+1 day' +%d ) -eq 1 && /path/to/
で↑はbashの場合。shの場合は、
55 23 28-31 * * /usr/bin/test `date -d '+1 day' +%d` -eq 1 && /path/to/script
だね。プログラム側で判断しなくてよいのでちょい便利。
ちなみにSolarisの標準のdateじゃできないね、shellutilsインストールしないと。あ、でもSolaris10だとできるのかも。
Category: UNIX | コメント&トラックバック(0)
activeCollabがさくらにインストールできない件について
2006/11/30 23:56 posted by kunkichi
前のエントリでphp5をインストールしたので、やっとactiveCollabを試せると思っていたのに、インストールしてみると、、、
InnoDB storage engine is not supported.
さくらのmysqlってInnoDB非対応なのね、、orz
うーん、どうするかなあ、、、
【追記】
InnoDBじゃなくてMyISAMでは動かないのかなぁと思って、本家サイトのフォーラムをのぞいてみるとFAQ化していた様子、、、自分にorz
It should work, but I strongly recommend using InnoDB because activeCollab uses transaction to keep data in sync and recover from errors. Its that important that I’d say that InnoDB is requirement, but you can use MyISAM at your own risk.
To use MyISAM do what gog said in the previous post (open install/installation/templates/sql/mysql_schema.php and replace every occurance of ENGINE=InnoDB with ENGINE=MyISAM).
うーん、一人で使うつもりだから、とりあえずソースいじって使ってみるかな。
Category: PHP, UNIX, Server, Web | コメント&トラックバック(3)
さくらでphp5(pearエラー対応)
2006/11/30 20:01 posted by kunkichi
さくらインターネットでphp5をインストールする手順はたくさんの人が書いているけど、それらを参考にphp-5.2.0をインストールしてみたところ、make installでpearのエラーが発生する。
ということでググってみたところ、琥瑠璃どっとこむ:さくらのレンタルサーバーへPHP5.2.0をインストールでやっぱり指摘されていたので、それに従いインストール。
うちのconfigureオプションはこんな感じ。
# export PHP_PEAR_CACHE_DIR="$HOME/local/php-5.2.0/pear/cache"
# ./configure ¥
--prefix=$HOME/local/php-5.2.0 ¥
--program-suffix=5 ¥
--with-pear=$HOME/local/php-5.2.0/share ¥
--with-config-file-path=$HOME/local/etc/php5.ini
--enable-force-cgi-redirect ¥
--enable-mbstring=all ¥
--enable-mbregex ¥
--enable-mbstr-enc-trans ¥
--enable-versioning ¥
--enable-trans-sid ¥
--with-mysql ¥
--with-openssl=/usr ¥
--with-soap=yes ¥
--with-zlib=/usr ¥
--with-gd=/usr/local ¥
--with-jpeg-dir=/usr ¥
--with-freetype-dir=/usr ¥
--with-ttf ¥
--with-png-dir=/usr ¥
--with-curl ¥
--with-iconv=/usr/local
ちょっと冗長なところもありますが、細かいことは気にしないタイプなので、爆。
これでactiveCollabを試してみたいと思います。
Category: PHP, UNIX, Server, Web | コメント&トラックバック(0)
さくらでvim
2006/11/26 18:25 posted by kunkichi
うちのサイトはさくらインターネットのスタンダードプランを使っているのだけど、スタンダードプランで使えるssh/telnetをもちょっと便利にするために以下のサイトを参考にvimを入れてみた。
p0t: vim on sakura internet
.vimrcははてな技術発表会を参考に。
Category: UNIX, Server | コメント&トラックバック(0)
Page 5 of 5« First...«12345
2012/02/07/ 18:03
2012/01/04/ 07:43
2011/10/06/ 10:13
2011/10/06/ 07:03
2011/10/06/ 06:46