mailutilsのインストール
提供: Wikiducca
概要
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に切り替える/