memo.xight.org

日々のメモ

カテゴリ : UNIX

1ページ目 / 全2ページ

libiconv 1.9.2 + cp932 patch

インストール

$ tar zxvf libiconv-1.9.2.tar.gz
$ zcat libiconv-1.9.2-cp932.patch.gz | patch -p0
$ cd libiconv-1.9.2
$ ./configure
$ make ; make check
$ su
# make install

確認方法

$ iconv -l | egrep -i '(-31j|-ms)'
EUC-JP-MS EUCJP-MS EUCJP-OPEN EUCJP-WIN
CP932 SJIS-OPEN SJIS-WIN WINDOWS-31J CSWINDOWS31J

Reference

  GNU - libiconv
  http://www.gnu.org/software/libiconv/
  libiconv パッチ集
  http://www2d.biglobe.ne.jp/~msyk/software/libiconv-patch.html

テンポラリファイルを確実に消す方法

Summary

  open 直後に unlink してそのまま使いつづける.
  プロセスが終了したら確実にファイルは消去される.

Reference

  [PHP-users 23600] Re: バージョンアップ後にunlinkでエラー
  http://ns1.php.gr.jp/pipermail/php-users/2004-November/024120.html

via

  Landscape - 2004-12-07
  http://sonic64.com/2004-12-07.html#2004-12-07-1

webalizer 日本語化

検索語の文字化け問題

  いったんEUC-JPに変換してから webalizer にかける

サンプルプログラム

#!/usr/bin/env perl
use Jcode;

open (IN ,$ARGV[0]);
while (<IN>){
	$_ =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
	Jcode::convert(\$_,euc);
	print $_;
}
close (IN);
exit;


使用方法

# ./convertlog.pl /var/log/apache/access_log > /var/log/apache/jaccess_log
# /usr/bin/webalizer -o /var/www/webalizer/ /var/log/apache/jaccess_log

- Reference
  ahref.org - アクセスログ解析ソフトwebalizer日本語化
  http://www.ahref.org/linux/a.phtml?number=10000011
  fkimura.com - Webalizer の設定. (FreeBSD)
  http://www.fkimura.com/webalizer2.html

write コマンド

write user [tty]


  write yoshiki pts/3

空いてる端末に話しかけろYO!

Migemo - ローマ字のまま日本語をインクリメンタル検索するためのツール

必要なもの

  Emacs
  APEL
  Ruby
  Ruby/Romkan
  Ruby/Bsearch

Ruby/Romkan

  http://namazu.org/~satoru/ruby-romkan/ruby-romkan-0.4.tar.gz

$ tar xzvf ruby-romkan-0.4.tar.gz
$ cd ruby-romkan-0.4
# cp ./ruby-romkan /usr/local/lib/ruby/1.6

- Ruby/Bsearch
  http://namazu.org/~satoru/ruby-bsearch/ruby-bsearch-1.5.tar.gz

$ tar xzvf ruby-bsearch-1.5.tar.gz
$ cd ruby-bsearch-1.5
# cp ./ruby-bsearch.rb /usr/local/lib/ruby/1.6

- インストール

$ ./configure
$ make
# make install

- .emacs の設定

(load "migemo.el")

  を追加

Reference

  Migemo: ローマ字のまま日本語をインクリメンタル検索
  http://migemo.namazu.org/

ネットワーク構成を変えたらネットワーク一覧が見えなくなった

原因

  nmbd が起動しているサーバのネットワーク的な位置が突然変わったから?

対処法

  nmbd を再起動する

今回のケース

  ネットワーク上に 3つ samba が起動していた
  ネットワーク構成を変更後 Windows クライアントからネットワーク - 近くのコンピュータが見えなくなった.(アドレスを直接指定すると見える)
  すべてのsambaを再起動したら ネットワーク - 近くのコンピュータ が見えるようになった.

Nmap の使用法

ポートを指定して PortScan (Port 1 - 1023)

$ nmap -p 1-1023 192.168.0.2

- サブネット指定して OSスキャン

$ nmap -O 192.168.0.2/24

- サブネット指定して Ping スキャン

$ nmap -sP 192.168.0.2/24


詳細な情報を出力

  -v を複数つけることによって詳細度が上がる
  -d で詳細出力度が更に上がる
  -d を複数つけることによって更に詳細に

$ nmap 192.168.0.2 -v [-v -v ...]


スキャン結果を指定ファイルに XML で保存

$ nmap -oX /hoge/Nmap_XML.log

- スキャン結果を指定ファイルにScriptKiddie形式で保存

$ nmap -oS /hoge/Nmap_ScriptKiddie.log

- スキャン結果を読みやすいようにファイルに出力

$ nmap -oN /hoge/Nmap_ScriptKiddie.log

- スキャン結果を grep しやすいようにファイルに出力

$ nmap -oG /hoge/Nmap_ScriptKiddie.log


Port 80 をランダムスキャン

$ nmap -iR -p 80


注意

  デフォルトで /usr/share/nmap/nmap-services に記述がある TCP Port のみをスキャンする

Reference

  NMAPを利用したポートスキャンへの対策
  http://www.bflets.dyndns.org/Security/NMAP.html
  Nmap -- Free Stealth Port Scanner For Network Exploration & Security Audits.
  http://www.insecure.org/nmap/

Webalizer の DNS エラー対策

Summary

Error: Unable to open DNS cache file /var/lib/webalizer/dns_cache.db

  というメッセージが表示される.

原因

  /var/lib/webalizer/dns_cache.db がない

対策

# webazolver

  /var/lib/webalizer/dns_cache.db が作成される

Reference

  歪 - 自宅サーバの構築 - webalizerの使い方
  http://www.aritia.org/hizumi/dsl/page_08.htm

Webalizer の Warning メッセージ

Summary

  Webalizerを実行すると
  [new_snode] Warning: String exceeds storage size (69)
  というメッセージが表示される.

原因

  長いHTTPリクエストがあり,ログの中で,1行の長さの制限を超えた物があったときに起きるようだ.
  検索サイトからの参照や,Buffer Overflow を狙ったアタックなどで発生する.

対策

  なし.気にしない.

Reference

  歪 - 自宅サーバの構築 - webalizerの使い方
  http://www.aritia.org/hizumi/dsl/page_08.htm

 tcsh alias補完

1 つの引数は

% alias hoge 'hoge \!^'

  !^ で引数がとれる.

複数の引数は

% alias hoge 'hoge \!*'

  !* で引数がとれる.

簡易スケジュール

Summary

  現在スケジュールされているリストを表示

% sched

  指定時刻にコマンドを実行

% sched hh:mm command
% sched hh:mm(am|pm) command

  一定時間後にコマンドを実行

% sched +hh:mm command

  n 番目のスケジュールを削除

% sched -n

- 例
  11:00 になったら It's eleven o'clock. を表示する

% sched 11:00 echo It\'s eleven o\'clock.