0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Mutt を レンタルサーバーにインストールする

Last updated at Posted at 2024-11-24

Mutt を送信のためのクライアントとして使いたい人向けです

Mutt は メールを読み書きするためのソフトなんですが、自分は Mutt を送信のためだけに使いたいです。受信や読み書きのCUIクライアントツールとして使いたい場合は、以下の方法だと役に立たないかもしれません。

当方、UNIX/Linuxコマンドとかにそんなに詳しくないです。FreeBSDなのでpkgコマンドが使えれば簡単なんだろうけど、pkgコマンドは使えないので、手動でインストールする。

上記のサイトからダウロード。(wget使える)今回は下記のファイル。

  • mutt-2.2.13.tar.gz

そして、展開し、移動。

tar -zxvf ./mutt-2.2.13.tar.gz
cd ./mutt-2.2.13

試行錯誤の末、下記のような引数を与えることでインストールできた。

./configure --prefix=/home/**my_dir**/.local \
  --enable-external-dotlock \
  --with-homespool=/home/**my_dir**/Mail
make
make install

※初心者のために補足しておくと、上記の \ (バックスラッシュ)は改行を表すもので、1行が長くなり見にくくなるので改行を入れるため入れています。通常、コマンドの途中でエンターキーを押すと、そのコマンドが即時実行されてしまいますが、バックスラッシュを打ってからエンターを押すとコマンドを改行することができます。

configureの説明

 --prefix=/home/**my_dir**/.local 
    自分のローカルディレクトリにインストールしたいため
    なんで .local としたのかは自分でもよくわからない
 
 --enable-external-dotlock 
   これはなくても動くかもしれない。後述のdotlockファイルが
    作れない問題があり付け加えた
    
 --with-homespool=/home/**my_dir**/Mail
   dotlock問題が解決しないまま、勘でこのパラメータ与えたら
    エラーなくインストールできた。

インストールが完了してversionを表示するとこのようになった。
パスが通ってないので、muttのパスを直接叩いてる。

~/.local/bin/mutt -v
Mutt 2.2.13 (2024-03-09)
Copyright (C) 1996-2023 Michael R. Elkins and others.
Mutt comes with ABSOLUTELY NO WARRANTY; for details type `mutt -vv'.
Mutt is free software, and you are welcome to redistribute it
under certain conditions; type `mutt -vv' for details.

System: FreeBSD 11.2-RELEASE-p15 (amd64)
ncurses: ncurses 5.9.20140222 (compiled with 5.9)
libiconv: 1.16
libidn: 1.35 (compiled with 1.35)

追記

上記、3つのパラメーターが必要と書きましたが、 --prefix=/home/**my_dir**/.local このパラメーターだけでも、送信だけだったら大丈夫みたいです(やや不確実さあり)。このパラメーターだけだと、インストールが失敗したっていうメッセージがでるのですが、試しに mutt コマンドを叩いてみるとメールが送信できてました。そのメールは迷惑フォルダに振り分けられていて、すぐには気づかなくってだいぶ後になってそのメールが送信できていたことに気づきました。

mutt_dotlock 問題

上記のconfigureの際の引数が適切でないと、次のようなエラーでこけた。

 ...
 
 ./install-sh 
 -c -d '/home/**my_dir**/.local/bin' /usr/bin/install 
 -c mutt mutt_dotlock mutt_pgpring 
 pgpewrap  '/home/**my_dir**/.local/bin'
  ./install-sh -c -d '/home/**my_dir**/.local/bin'
  /usr/bin/install -c muttbug flea smime_keys '/home/**my_dir**/.local/bin'
 make  install-exec-hook
 if test -f /home/**my_dir**/.local/bin/mutt.dotlock 
 && test -f      /home/**my_dir**/.local/bin/mutt_dotlock ;
 then	 rm -f /home/**my_dir**/.local/bin/mutt.dotlock  
 ln -sf /home/**my_dir**/.local/bin/mutt_dotlock /home/**my_dir**/.local/bin/mutt.dotlock ;  
 fi
 if test -f /home/**my_dir**/.local/bin/mutt_dotlock 
 && test xmail != x ; 
 then  chgrp mail /home/**my_dir**/.local/bin/mutt_dotlock 
 &&  chmod 2755 /home/**my_dir**/.local/bin/mutt_dotlock 
 ||  { echo "Can't fix mutt_dotlock's permissions!  
 This is required to lock mailboxes in the mail spool directory." >&2 ; 
 exit 1 ; }  
 fi
 chgrp: you are not a member of group mail
 Can't fix mutt_dotlock's permissions!  
 This is required to lock mailboxes in the mail spool directory.
 *** Error code 1
 
 Stop.
 make[4]: stopped in /home/**my_dir**/mutt-2.2.13
 *** Error code 1

 ...

よくわかっているわけではないけれど、メール送信時に衝突を避けるため、dotlockファイルを作成しているけれど、それが作成できないとかそういう問題。
また、mail というグループ名に chgrp できないという問題なのかも。いずれにしてもrootが使いない環境下ではこの問題は正攻法で解決できないので、上述のようなoptionで回避を狙ったわけです。

送信テスト

echo "hogehoge" | ~/.local/bin/mutt -s "this is subject" myaddress@example.co.jp

で送れるはず。だいたい、迷惑メール判定される。

参考

今回はつかわなかったがportsをローカル環境に入れられたらな・・・

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?