2007年11月9日金曜日

perlの@INCという配列

@INC
indou@T21:Expect-1.21$ perl -le "print for @INC"
/etc/perl
/usr/local/lib/perl/5.8.8
/usr/local/share/perl/5.8.8
/usr/lib/perl5
/usr/share/perl5
/usr/lib/perl/5.8
/usr/share/perl/5.8
/usr/local/lib/site_perl
.
indou@T21:Expect-1.21$

追加するには
unshift @INC, '/home/user/lib/';

環境変数に
% setenv PERL5LIB=/home/user/lib
% perl -le 'print for @INC'
/home/user/lib
/etc/perl
/usr/local/lib/perl/5.8.8
/usr/local/share/perl/5.8.8
/usr/lib/perl5
/usr/share/perl5
/usr/lib/perl/5.8
/usr/share/perl/5.8
/usr/local/lib/site_perl

または
BEGIN {
push(@INC, '/usr/local/sbin');
}
use libにて追加
use lib 'path to module';

2007年10月28日日曜日

From To

テキストファイルよりある文字列の含まれる行から、ある文字列の含まれる行までを抽出する。sedって、奥が深い。
indou@LANTANK:/tmp$ uname -a
Linux LANTANK 2.4.21 #48 2004年 11月 19日 金曜日 10:46:05 JST sh4 GNU/Linux
indou@LANTANK:/tmp$ cat test.txt
1 xxxxxxxxxxxxxxxxxxxxxx
2 Beginaaaaaaaaaaaaaa
3 bbbbbbbbbbbbbbb
4 cccccccccccccccccc
5 ddddddddddddEnddddd
6 eeeeeeeeeeeeeeeeee
7 Beginaaaaaaaaaaaaaa
8 bbbbbbbbbbbbbbb
9 cccccccccccccccccc
10 ddddddddddddEnddddd
11 kkkkkkkkkkkkkkkkkkkkBegin
indou@LANTANK:/tmp$ sed -n "/Begin/,/End/p" test.txt
2 Beginaaaaaaaaaaaaaa
3 bbbbbbbbbbbbbbb
4 cccccccccccccccccc
5 ddddddddddddEnddddd
7 Beginaaaaaaaaaaaaaa
8 bbbbbbbbbbbbbbb
9 cccccccccccccccccc
10 ddddddddddddEnddddd
11 kkkkkkkkkkkkkkkkkkkkBegin
indou@LANTANK:/tmp$
indou@pb4:~/tmp ()$ uname -a
Darwin pb4.local 8.10.0 Darwin Kernel Version 8.10.0: Wed May 23 16:50:59 PDT 2007; root:xnu-792.21.3~1/RELEASE_PPC Power Macintosh powerpc
indou@pb4:~/tmp ()$ cat test.txt
xxxxxxxxxxxxxxxxxxxxxx
Beginaaaaaaaaaaaaaa
bbbbbbbbbbbbbbb
cccccccccccccccccc
ddddddddddddEnddddd
eeeeeeeeeeeeeeeeee
Beginaaaaaaaaaaaaaa
bbbbbbbbbbbbbbb
cccccccccccccccccc
ddddddddddddEnddddd
kkkkkkkkkkkkkkkkkkkkBegin
indou@pb4:~/tmp ()$ sed -n "/Begin/,/End/p" test.txt
Beginaaaaaaaaaaaaaa
bbbbbbbbbbbbbbb
cccccccccccccccccc
ddddddddddddEnddddd
Beginaaaaaaaaaaaaaa
bbbbbbbbbbbbbbb
cccccccccccccccccc
ddddddddddddEnddddd
kkkkkkkkkkkkkkkkkkkkBegin
indou@pb4:~/tmp ()$

2007年10月12日金曜日

Ubuntuでsamba

システム管理-フォルダの共有-全般的なプロパティ
 ドメイン/ワークグループをTSYSTEM
 フォルダの共有-追加
  フォルダ:ubuntu
  共有プロトコル Windowsネットワーク(SMB)
  共有するプロパティ:ubuntu
ターミナル
 sudo smbpasswd -a ubuntu
 New SMB password:
 Retype new SMB password:
 sudo /etc/init.d/samba restart

2007年10月10日水曜日

Windows VISTA で、 CPU 使用率が高くなる

タスクマネージャーで見てみると、 NMIndexStoreSvr.exe の利用率が 48%。ひどいなー。
msconfigを立ち上げて、サービスタグの、 NMIndexingService Nero AGを止めることに。

find

findで、その他のユーザが読み権限のないディレクトリを探す。
root@blade1000:/work/o102: find . -type d \! -perm -o+r -exec ls -ld {} \;
drwxrwx--- 6 o102 dba 512 9月 30日 03:54 ./oraInventory
drwxr-x--- 3 o102 dba 1024 9月 30日 03:53 ./oraInventory/logs
| ずらずら
drwxr-x--- 2 o102 dba 512 9月 30日 03:14 ./oradata/bld10200
drwxr-x--- 2 o102 dba 512 9月 30日 04:15 ./oradata/fva
root@blade1000:/work/o102:
root@blade1000:/work/o102: find . -type d \! -perm -o+r -exec chmod o+r {} \;
root@blade1000:/work/o102: find . -type d \! -perm -o+r -exec ls -ld {} \;
root@blade1000:/work/o102:
★わかりずらいね。

2007年10月1日月曜日

Debianから、Port Scan nmap

ファィアーウォールの外側から、接続できないため、ポートが空いているかどうかを、nmapで調べる。

indou@T21:~$ nmap xxx.xxx.xxx.xxx -p 443

Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2007-09-27 03:59 JST
Interesting ports on xxx.xxx.xxx.xxx:
PORT STATE SERVICE
443/tcp open https

Nmap finished: 1 IP address (1 host up) scanned in 0.753 seconds
indou@T21:~$ nmap xxx.xxx.xxx.xxx -p 5100

Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2007-09-27 03:59 JST
Interesting ports on xxx.xxx.xxx.xxx:
PORT STATE SERVICE
5100/tcp filtered admd

Nmap finished: 1 IP address (1 host up) scanned in 11.093 seconds
indou@T21:~$ nmap xxx.xxx.xxx.xxx -p 5090

Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2007-09-27 04:00 JST
Interesting ports on xxx.xxx.xxx.xxx:
PORT STATE SERVICE
5090/tcp open unknown

Nmap finished: 1 IP address (1 host up) scanned in 0.432 seconds
indou@T21:~$ nmap xxx.xxx.xxx.xxx -p 443

Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2007-09-27 04:00 JST
Interesting ports on xxx.xxx.xxx.xxx:
PORT STATE SERVICE
443/tcp open https

Nmap finished: 1 IP address (1 host up) scanned in 0.448 seconds
Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2007-10-01 02:33 JST
Note: Host seems down. If it is really up, but blocking our ping probes, try -P0Nmap finished: 1 IP address (0 hosts up) scanned in 4.932 seconds
indou@T21:~$ nmap xxx.xxx.xxx.xxx -p 5100

Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2007-10-01 02:33 JST
Interesting ports on xxx.xxx.xxx.xxx:
PORT STATE SERVICE
5100/tcp open admd

Nmap finished: 1 IP address (1 host up) scanned in 0.412 seconds
indou@T21:~$ nmap xxx.xxx.xxx.xxx -p 443

Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2007-10-01 02:33 JST
Interesting ports on xxx.xxx.xxx.xxx:
PORT STATE SERVICE
443/tcp closed https

Nmap finished: 1 IP address (1 host up) scanned in 0.229 seconds
indou@T21:~$ nmap xxx.xxx.xxx.xxx -p 444

Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2007-10-01 02:33 JST
Interesting ports on xxx.xxx.xxx.xxx:
PORT STATE SERVICE
444/tcp filtered snpp

Nmap finished: 1 IP address (1 host up) scanned in 10.606 seconds
indou@T21:~$

REFERENCE:http://insecure.org/nmap/man/jp/index.html#man-description

 Nmap (“Network Mapper”)は、ネットワーク調査およびセキュリティ監査を行うためのオープンソースのツール。Nmapは生の(raw)IPパケットを用いて、ネットワーク上でどのようなホストか利用可能になっているか、これらのホストが提供しているサービス(ア プリケーション名とバージョン)は何か、ホストが実行しているOS(OS名とバージョン)は何か、どのような種類のパケットフィルタ/ファイアウォールが 使用されているかなど、その他数多くの特徴を判別する。  
 状態は、open、filtered、closed、またはunfilteredのいずれか。open(開いた)ポートは、調査対象マシン上のアプリケーションがそのポート上で接続/パケットを待ち受けている状態。 Filtered(フィルタあり)は、ファイアウォールやフィルタなどのネットワーク上の障壁でポートが遮られている状態にあり、ポートが開いているか閉じているかをNmapが判断できないことを意味する。Closed(閉じた)ポートには、待ち受け状態のアプリケーションは何もないが、これらはいつでも開放することが可能。ポートがNmapのプローブには応答するが、開いているか閉じているかをNmapが判別できない場合には unfilteredに分類される。ポートの状態がopen|filteredやclosed|filteredのように、2つの状態の組み合わせで報告されるのは、そのどちらがポートの状態を表しているかをNmapが判断できない場合である。またこのポート一覧表には、バージョンの検出が求められた場合には、ソフトウェアのバージョン情報も記載される。IPプロトコルスキャン(-sO)が要求された場合には、ポートを一覧表示するのではなく、対応可能なIPプロトコルに関する情報が提供される。
 Nmapのコマンドラインで、オプション(もしくはオプションの引数)でないものはすべて、ターゲットホストの指定として扱われる。

2007年9月25日火曜日

perlでclient、server

ソケットを使用したプロセス間通信の手順
perl入門 P.351

サーバ側 クライアント側

・socket
・bind
・listen ・socket
・accept ・connect
+<-------------接続確立--------->+
・read <-----------データ-------> ・read
print print
・shutdown ・shutdown
close close