digest認証 補足
2005-07-08-3 / カテゴリ: [linux][debian][Apache] / [permlink]

[2005-05-29-2]の補足

debian の Apache だと、標準ではモジュールが生きてないので Digest 認証できない。
以下追加
LoadModule digest_module /usr/lib/apache/1.3/mod_digest.so

でもって、htdigest コマンドの引数に指定する realm の文字列は、.htaccess に記述する AuthName と一致させること。
Referrer (Inside): [2005-08-09-2]

BINDのログをsyslogへ一時的に出力する
2005-07-08-1 / カテゴリ: [linux][debian][bind] / [permlink]

# rndc querylog
停止はもう一度同じコマンドを。(トグルになってる)

BINDの統計情報
2005-07-06-2 / カテゴリ: [linux][debian][bind] / [permlink]

# rndc stats
このコマンドで、/var/cache/bind/named.stats ファイルに
+++ Statistics Dump +++ (1120658402)
success 10741
referral 0
nxrrset 1253
nxdomain 242898
recursion 6834
failure 23
--- Statistics Dump --- (1120658402)
というファイルができる。
それぞれ

success成功した問い合わせの数(参照先以外の応答を返したもの)
referral結果として参照先を返した問い合わせの件数。
nxrrset要求されたタイプのレコードが定義されていないドメイン名に関する問い合わせの件数。
nxdomain存在しないドメインネームを問い合わせた数。
recursionゾーン内のドメイン名に関する再帰的問い合わせの内、ネームサーバが更に問い合わせをしなければいけなかった件数。
failureNXDOMAIN以外で失敗した問い合わせの数。

ということ。(DNS&BIND クックブックp115より引用)

で、再度実行すると、前回実行したファイルの末尾に追記され続けるので、前回実行時との差分を実行間隔(括弧内のepochの差分)で割れば、秒間の問い合わせ平均数がわかる。

けど、何行ものログから、末尾2件分のparseはなかなかメンドイので(ラスト1件分だけ取得して、RRDtoolなんかに差分計算させる手もあるけど)、うちでは、実行前にファイル退避・rndc stats 実行・差分計算・結果をRRDtoolに食わせる、という感じ。

crontab (実際は1行)
0 * * * * /bin/mv /var/cache/bind/named.stats /var/cache/bind/named.stats.bak;
          /usr/sbin/rndc stats;
          /root/bin/bindstat/bindstats.plx > /var/cache/bind/named.diff

bindstats.plx
#!/usr/bin/perl

my %logfile = ( new => "/var/cache/bind/named.stats",
                old => "/var/cache/bind/named.stats.bak",
              );
my %logstat;

foreach my $key (keys %logfile) {
  open F, $logfile{$key} or die "cannot open $logfile{$key}: $!\n";
  while (<F>) {
    if (/^([a-z]+)\s(\d+)/) {
      $logstat{$key}->{$1} = $2;
    }
  }
  close F;
}

foreach my $item (sort keys %{$logstat{new}}) {
  print $item, ": ", ($logstat{new}->{$item} - $logstat{old}->{$item}), "\n";
}

これで、前回実行時との差分値が named.diff に出るので
failure: 0
nxdomain: 451
nxrrset: 7
recursion: 94
referral: 0
success: 109
このファイルの値を RRDtool につっこむ。

BIND統計グラフ

うーん、、、なんでこんなに名前解決にミスってんだろ^^;

smbmount の日本語設定
2005-07-04-2 / カテゴリ: [linux][debian][samba] / [permlink]

# smbmount //address/dir /mnt -o codepage=cp932,iocharset=euc-jp
codepage に、サーバが発するファイル名の文字コード種
iocharset に、マウント時に変換したい変換後の文字コード種

Version 3.0.14a-Debian

samba3.0の日本語設定
2005-07-04-1 / カテゴリ: [linux][debian][samba] / [permlink]

smb.conf
dos charset = CP932
unix charset = CP932
ファイルシステムが認識しているファイル名の文字コード(unix charset)が SJIS で、sambaクライアント(Windowsマシンとか)に認識させたいのも(dos charset)が SJIS の場合。うちは、debian上で既にシフトJISとしてマウントしてるんで、これで。
要は、unix charset が in で、dos charset が out.

Linux上で、euc-jp としてマウントしているのであれば、unix charset は eucJP-ms に設定すれば良いらしい。
http://www.miraclelinux.com/technet/samba30/migration.html

grep(GNU) マッチ行の前後X行も出力(前後セット)
2005-06-27-1 / カテゴリ: [linux][command][grep] / [permlink]

$ grep -C X pattern file
もしくは
$ grep -X pattern file

追記: -C を -c と間違えて書いていたのを修正(06/29)

くぅ、-A とか -B [2004-11-29-2] より、こっち覚えるのが先じゃねーか。

ただし、このオプションだけつけてもむしろ見難いので、-n とセットのほうが結果が見やすい。
$ grep -nX pattern file
マッチ行前後-
マッチ行:
マッチ行前後-

fetchmail で procmail を使わずにファイルに落とす
2005-06-24-1 / カテゴリ: [linux][メール][command] / [permlink]

[2004-09-09]では「そのままファイルに落とす」といいつつ procmail 使ってるので訂正
mda "/bin/cat - > /dir/file"
これでいける

/usr/bin/emacs の wl で、cram-md5 認証ができない
2005-06-15-1 / カテゴリ: [linux][debian][emacs][wanderlust] / [permlink]

sarge に upgrade する以前からできてたかも定かじゃないんだけど、、、md5-el がないとかで、送信できない…。locate で見る限り、md5.el やら md5-el やら入ってるんだけどなぁ。しょうがないので、xemacs をインストール。
って、インストールの最中に、ふと気づいて、/usr/bin/emacs を見ると、/etc/alternatives/emacs は /usr/bin/emacs20 を指している。で、システムには、emacs20 と emacs21 が入ってる…
まさかと思い、emacs21 -f wl で起動すると、cram-md5 認証で送信できた…。インストールして損したよ orz

grep スクリプト(?)
2005-06-13-1 / カテゴリ: [linux][command][grep] / [permlink]

http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=21973&forum=10
hmiyazaki@chaource:~/tmp$ cat test.grep 
#!/usr/bin/grep -ve #
hoge
foo
bar
hoge
hmiyazaki@chaource:~/tmp$ ./test.grep 
hoge
foo
bar
hoge
こんなこともできたのかー。
でも、使い道が…^^;

RRDtool で cpu 使用率が取れてない…?
2005-06-12-3 / カテゴリ: [linux][debian][アプリ] / [permlink]

自作スクリプトの話 ^^;
iostat で値をとって RRDtool に放り込んでるんだけど、CPU 使用率の表示の箇所が、新たに iowait を表示するようになった(?)ため、その行の正規表現がマッチしてなかった。
ので、修正。

samba 3.0 になって、smbmount がエラーになった
2005-06-12-2 / カテゴリ: [linux][debian][samba] / [permlink]

timeout connecting to 192.168.XXX.XXX:445
になってしまう。。。
相手は LinkStation だけど。

こたえはこちら
http://lists.samba.org/archive/samba/2002-September/050637.html

つーわけで、fstab にオプション追加
:
//192.168.XXX.XXX/share  /mnt/lan1  smbfs  username=XXX,uid=XXX,gid=XXX,password=XXX,port=139  0  0

sarge アップグレード検証
2005-06-12-1 / カテゴリ: [linux][debian] / [permlink]

使用PC ... レッツノートR2
とりあえず、woody をインストールして、メジャーバージョンが変更する postfix, postfix-tls, samba をインストール・設定(auth, tls, cram-md5 対応等)。(sources.list は stable -> woody にしておく)

aptitude インストール
# apt-get install aptitude

sources.list の編集
s/woody/sarge/g



# aptitude update
# aptitude install aptitude

glibc を今アップグレードしますか? (という趣旨の質問) -> y
inetd, samba, postfix, ... リスタートしますか? -> y

リリースノートによると、次に doc-base を(インストールしていれば)アップグレードするようになってるが、入れてないし、本番機も入ってないのでスキップ

で、残りのシステムのアップグレード
# aptitude -f --with-recommends dist-upgrade

console-tools-libs が REMOVED 対象になってるけど、、まぁ、続行。y

debconfの設定 -> Dialog, medium
keymap -> Don't touch keymap
pcmcia-cs -> ask (本番機はないかも…)
adduser -> yes (uname)

Postfix Configuration (溜まってるメールキューもアップグレードする? って質問???) -> No (デフォルトで)
Courier-base Configure (Web baseの設定ページを作る? って質問??) -> No (イラネ)
Samba(1) (アカウント情報 /etc/samba/smbpasswd を、新しいバージョンのアカウント情報の /var/lib/samba/passdb.tdb にマイグレーションする? って質問) -> No (デフォルト。手動でしますわ)
Samba(2) (DHCPからWINS情報をgetしなおす? って質問ぽい??) -> No

で、しばらくアップグレード処理が進んで

Postfix Configuration (xxx.cf をアップグレードする?) -> Yes
Configuring man-db (set-user-id bit をセットする?) -> No

で、アップグレード完了

こっからアプリの設定

1. courier-imap
/etc/courier/authdaemonrc
/etc/courier/imapd

2. postfix, postfix-tls, sasl
# aptitude install sasl2-bin	

# saslpasswd2 -u $myhostname username
# chgrp postfix /etc/sasldb2
# cp -p /etc/sasldb2 /var/spool/postfix/etc
各コマンドの末尾に2をつければOK

とはいえ、MD5認証は、サーバ上にplainなパスワードを保存しておかないといけないのがどーもなぁ^^;

ssh でファイル転送
2005-06-08-2 / カテゴリ: [linux][ssh] / [permlink]

$ cat file.jpg | ssh user@server 'cat - > file.jpg'

ssh ログインしたときにコマンドを実行する
2005-06-08-1 / カテゴリ: [linux][ssh] / [permlink]

・サーバワイドに設定
/etc/ssh/sshrc に実行したいシェルスクリプトを書く

・ユーザごとに設定
~/.ssh/rc にシェルスクリプト

~/.ssh/rc があるときは、/etc/ssh/sshrc は無視される。

man sshd "LOGIN PROCESS"
           8. If $HOME/.ssh/rc exists, runs it; else if /etc/ssh/sshrc
                exists, runs it; otherwise runs xauth. The ``rc'' files are
                given the X11 authentication protocol and cookie in standard
                input.
とのこと。

ただし、これをやると、scp/sftp が失敗する…

ファイル添付のキーバインド
2005-06-07-5 / カテゴリ: [linux][wanderlust] / [permlink]

C-c C-x C-i
で、ファイル名とエンコード方式の入力

MANPATH を一時変更してマニュアルを見る
2005-06-07-4 / カテゴリ: [unix][linux][command] / [permlink]

$ man -M /foo/bar command

でも、alias で
alias man="man -M /usr/share/man -M /usr/local/man"
alias manlocal="man -M /usr/local/man -M /usr/share/man"
とかにした方がラクそうかも

grep でパターンを含まないファイル名を表示
2005-06-07-3 / カテゴリ: [linux][command][grep] / [permlink]

$ grep -L pattern *
Solaris の /bin/usr/grep は NG

ファイル内に1箇所も pattern を含まないファイル名を表示する。

grep パターンを含むファイル名のみを表示
2005-06-07-2 / カテゴリ: [unix][linux][command][grep] / [permlink]

$ grep -l pattern *
これで、pattern を含むファイル名(複数回マッチしてもファイル名は一つ)出力
Solaris の /bin/usr/grep も OK

たとえば、カレント以下 pattern を含むファイルを削除するなら
$ find . -type f | xargs grep -l pattern | xargs rm

みたいな。

sarge リリース!
2005-06-07-1 / カテゴリ: [linux][debian][diary] / [permlink]

http://www.debian.org/releases/sarge/i386/release-notes.ja.txt

あー、検証しなくちゃ…
というか、再インストールしてもいいんだけどね。かなり「わかってない状態」でインストールして、そのまんまだし、ディスクも / しかないし(笑)、ext2 だし。

基本パッケージのアップデートは Libretto や Let's note でやってるからいいけど、各種ソフトウェアがなぁ。Apache とか Postfix とか Courier-imap とか。Postfix で auth はかなり異なるはず。

備忘録
apache ... 1.3.33
perl ... 5.8.4
postfix ... 2.1.5
sasl(2) ... 2.1.19
courier-imap ... 3.0.8
samba ... 3.0.14a

あ、クライアント用途は良いな。待ちに待った xmms の日本語化が(笑)
xmms-mpg123-ja
mozilla-firefox (locale-ja)
wl(wanderlust) 2.10.1 (残念!)

カーネルが 2.4.27 ってことは、ソースをイジらずに複合機が使えるな…。ぜんぜん使ってないけど、プリンタもスキャナも。

debian 的 CPAN モジュールインストール
2005-06-05-2 / カテゴリ: [linux][debian][perl] / [permlink]

Foo::Bar を入れたい
# apt-cache search Foo::Bar
(説明に Foo::Bar が含まれるパッケージが出力
# apt-get install libfoo-bar-perl
(インストール)
大抵は、libXXX-XXX-perl というパッケージ名になってる
カテゴリ: linux / 前ページ 1 2 3 4 5 6 7 8 9 10 11 12 次ページ

最終更新時間: 2013-05-02 16:12