mailutilsのインストール

提供: ウィキデュッカ
移動: 案内検索

概要

CentOS 5.X から 6.X に乗り換えたところ mail コマンドを使用したシェルスクリプトが正常に動かなくなった。

こんな感じのスクリプト。

toaddr="[email protected]"
fromaddr="[email protected]"
subject="Subject"

mail -s "$subject" $toaddr -- -f "$fromaddr" << HONBUN
This is Test.
HONBUN


具体的に使えなくなったのは、

-- -f "$fromaddr"

の部分。

それと、これまでは nkf で日本語も文字化けせずに送信できていたのが使えなくなった。


原因

原因は、CentOS 6.X から標準で入っている mail(mailx) コマンドとのこと。

5.X 以前のものに戻したいけど、そのまんまは戻せないっぽい。


対策

調べてみると、mailutils なるものがそれに近いらしい。

というわけでインストールしてみる。

ただし、OS 全体で変更しちゃうのはちょっと心配だったので、mail コマンドを使う一般ユーザ限定で。

つまり、一般ユーザの home にインストールします。


mailutils インストール

$ mkdir -p /home/[USER]/local/src
$ cd /home/[USER]/local/src
$ wget http://ftp.gnu.org/gnu/mailutils/mailutils-latest.tar.gz
$ tar xvzf mailutils-latest.tar.gz
$ cd mailutils-*
$ ./configure --prefix=/home/[USER]/local/
$ make
$ make install

以上で、

/home/[USER]/local/bin/mail

にインストールされた。


シェルスクリプトを修正

toaddr="[email protected]"
fromaddr="[email protected]"
subject="Subject"

/home/[USER]/local/bin/mail -a 'MIME-Version: 1.0' -a 'Content-Type: text/plain; charset="iso-2022-jp"' -a 'Content-Transfer-Encoding: 7bit' -a 'From:$fromaddr' -s "$subject" $toaddr << HONBUN
This is Test.
HONBUN

以上。


参考・引用

http://digape.com/201205/mail-centos6でmailxをmailunitsに切り替える/