2004年12月30日

届いたメールをプログラムに渡す方法

届いたメールをプログラムに渡す方法(さくらレンタルサーバの場合)

ホームディレクトリ以下の MailBox/<メールアカウント>/ にある .mailfilter と言うファイルを変更する。


メールをサーバに残す場合
cc "| /home/<アカウント名>/<フォルダ名>/<プログラム名>"
サーバに残さない場合は
to "| /home/<アカウント名>/<フォルダ名>/<プログラム名>"

spamフィルタリングをしている場合は一番下に付け足す。

(例)
xfilter "/usr/local/bin/spamc"
if ( /^X-Spam-Flag:.*YES/ )
{
    to "maildir/.spam/"
}
cc "| /home/tunagaru2/ubiqun/ubiqun.pl -dir_data=/home/tunagaru2/MailBox/komuro/ubiqun/"

webmail でスパムフィルタの追加や、転送の設定をしてしまうとこの設定が消えてしまうので注意!

1/10追記
.mailfilter のパーミッションは 400 (rw--------)にすること

サーバに残さない設定は、
cc "| /home/<アカウント名>/<フォルダ名>/<プログラム名>"
exit

投稿者 mkomu : 07:04 | コメント (0) | トラックバック

2004年08月31日

JAVAのインストール


http://java.sun.com/j2se/1.4.2/ja/install-linux.html


JAVAを使うユーザーのホームディレクトリにある .bash_profile
に以下のように追加する。

----- RPMでインストールした場合 -----
export JAVA_HOME=/usr/java/j2sdk1.4.2_
export PATH=$PATH:$JAVA_HOME/bin

----- ソースからインストールした場合 -----
export JAVA_HOME=/usr/local/1.4.2_
export PATH=$PATH:$JAVA_HOME/bin


確認のため以下のコマンドでバージョン情報を表示してみる
$ java -version

java version "1.4.2_05"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_05-b04)
Java HotSpot(TM) Client VM (build 1.4.2_05-b04, mixed mode)

投稿者 mkomu : 22:54 | コメント (0) | トラックバック

2004年07月15日

まとめてIPアドレスを設定する


/etc/rc.d/rc.local 等に追加
# ipaliase
i=0
while [ $i -le 127 ]; do
  ifconfig eth0:$i inet 192.168.0.$i netmask 255.255.255.255
  i=`expr $i + 1`
done

削除するときは
ifconfig eth0:127 down
また再開するときは
ifconfig eth0:127 up

投稿者 mkomu : 00:00 | コメント (0) | トラックバック

URLでユーザ認証

http://ユーザ名:パスワード@ホスト名.ドメイン名:ポート番号/
(例) http://user:passwd@www.komuro.ne.jp:80/
ポート番号の 80は省略可

投稿者 mkomu : 00:00 | コメント (0) | トラックバック

メール処理プログラムの雛形

ユーザのホームディレクトリの .forward を以下のように書き換える。

\user, |"/home/user/mail.pl -op1 -op2"

\user はそのメールボックスにメールを残す設定
それ以降はプログラムにメールを渡す
-op1 -op2 はプログラムへの引数(必要なときだけ設定)

投稿者 mkomu : 00:00 | コメント (0) | トラックバック

inetd が以下のようなログを吐くとき、


ftp/tcp server failing (looping or being flooded), service terminated for 10 min

-------------------------------------------------------------------------
Inetd counts the number of connection occuring within a minute. 
If that number exceeds some threshold, is assumes the ftp service is broken (or under attack) 
and keeps getting restarted - and shuts down the service. In most systems, this can be overcome
 by adding a parameter to the inetd.conf file like .... nowait.400 (400 connections per minute). 
Check the specific syntax for your operating system. 
-------------------------------------------------------------------------

/etc/inetd.conf ファイルを変更する。
(例)
ftp	stream	tcp	nowait.100	root	/usr/sbin/tcpd	in.proftpd 
# POPサーバは 400ぐらいに設定しておく。
pop-3   stream  tcp     nowait.400  root    /usr/sbin/tcpd  ipop3d

投稿者 mkomu : 00:00 | コメント (0) | トラックバック

telnetログイン時のLinuxバージョン表示を隠す

/etc/issue.net を書き換える。
再起動したとき変更されないように /etc/issue も同じように書き換える

投稿者 mkomu : 00:00 | コメント (0) | トラックバック

日付時間の変更

root になって
# date mmddhhmmyy
(例)
2003年01月28日17時05分 の場合、
# date 0128170503

投稿者 mkomu : 00:00 | コメント (0) | トラックバック

80番以外のポートでも Apache を動かす方法

/etc/httpd/conf/httpd.conf に以下を付け足す

Listen 880
<VirtualHost 192.168.0.1:880>
  ServerAdmin webmaster@dummy-host.example.com
  DocumentRoot /www/docs/dummy-host.example.com
  ServerName dummy-host.example.com
  ErrorLog logs/dummy-host.example.com-error_log
  CustomLog logs/dummy-host.example.com-access_log common
</VirtualHost>

投稿者 mkomu : 00:00 | コメント (0) | トラックバック

cron 等で標準出力やエラー出力を破棄したい場合

cron 等で標準出力やエラー出力を破棄したい場合、コマンドの後ろに以下をつける。
> /dev/null 2>&1
(例)
ping -c 1 10.1.1.1 > /dev/null 2>&1

投稿者 mkomu : 00:00 | コメント (0) | トラックバック

どんなサブドメインでもホームページを表示する


DNSの正引きファイルに
*.komuro.ne.jp. IN A nn.nn.nn.nn

apache の httpd.conf の適当な場所に
ServerAlias *.komuro.ne.jp

※この場合それぞれのファイルには一番下に書かないとうまくいかない。
ServerAlias *.komuro.ne.jp の下に ServerAlias aaa.komuro.ne.jp が有ったら
aaa.tv には行かなくなってしまうと思う。

投稿者 mkomu : 00:00 | コメント (0) | トラックバック

メールソフトの不正終了等でメールアカウントがロックされた場合

メールソフトの不正終了等でメールアカウントがロックされた場合、

-ERR Can't get lock. Mailbox in use
Connection closed by foreign host.

telnet でログインして mail コマンドでメールを見るとロックが解除される
ことがある

投稿者 mkomu : 00:00 | コメント (0) | トラックバック

コンピュータ(Linux)の情報を見る

CPUの情報を見る
vi /proc/cpuinfo

メモリーの情報を見る
vi /proc/meminfo

起動時のログ
/var/log/dmesg

投稿者 mkomu : 00:00 | コメント (0) | トラックバック

apache2でCGIをEUCで動かすときのヘッダ

print "Content-type: text/html; charset=euc-jp\n\n";

投稿者 mkomu : 00:00 | コメント (0) | トラックバック

「UNEXPECTED INCONSISTENCY...」の表示で起動できない


/dev/hda1;UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY;
(i.e., without -a or -p options)

***An error occurred during the file system check.
***Dropping you to a shell the file system will reboot
***when you leave the shell
Give root password for maintenance
(or type Control-D for normally startup) 

root のパスワードを入力する。
fsck をする。(その時 -a と -p のオプションはつけない)
fsck -t <ファイルシステムタイプ> <チェックするデバイス>

(例)エラーが /dev/hda1 の場合
fsck -t ext2 /dev/hda1
ファイルタイプが ext2 なら以下のコマンドでもOK
e2fsck /dev/hda1

投稿者 mkomu : 00:00 | コメント (0) | トラックバック

proftpd でログインするまでに時間がかかる場合


DNSルックアップをオフにする
# vi /etc/proftpd.conf
...
UseReverseDNS off

投稿者 mkomu : 00:00 | コメント (0) | トラックバック

RedHat 8.0 のPerl

RedHat 8.0 に含まれる Perl は改行コードが LF (\n) 以外だとエラーになる。
これを回避するにはプログラムの1行目を、
#!/usr/bin/perl --
とすることでも回避できる。


$ perl -v
This is perl, v5.8.0 built for i386-linux-thread-multi

投稿者 mkomu : 00:00 | コメント (0) | トラックバック

パスワードの変更が出来ない場合


パスワードを変更しようとしても Authentication token manipulation error
と言って変更を受け付けてくれない場合

pwconv

PWCONVの日本語man
http://www.linux.or.jp/JM/html/shadow/man8/pwconv.8.html

投稿者 mkomu : 00:00 | コメント (0) | トラックバック

アーカイブを解凍出来ない場合

$ tar fvxz hoge.tar.gz
をしても以下の様なエラーが有る場合
gzip: stdin: not in gzip format

gzip で圧縮されていない可能性あり
リネームして tar を実行する

$ mv hoge.tar.gz hoge.tar
$ tar fvx hoge.tar

投稿者 mkomu : 00:00 | コメント (0) | トラックバック