Pages

2014年1月28日火曜日

Mac OSX(10.8.5)環境のSubversionで濁点問題を解決する

■Unicodeパッチに対応しているSubversion1.7をbrew経由でインストール

現在の最新は1.8なので、1.7があるリポジトリを追加

$ brew tap homebrew/versions
$ brew info subversion17
--unicode-path
    Include support for OS X UTF-8-MAC filename

インストールの設定を弄って1.7の最新バージョンを持ってくるようにする

$ vi /usr/local/Library/Taps/homebrew-versions/subversion17.rb
Subversion(1.7.13 -> 1.7.14)
- url 'http://www.apache.org/dyn/closer.cgi?path=subversion/subversion-1.7.13.tar.bz2'
- mirror 'http://archive.apache.org/dist/subversion/subversion-1.7.13.tar.bz2'
- sha1 '844bb756ec505edaa12b9610832bcd21567139f1'
+ url 'http://archive.apache.org/dist/subversion/subversion-1.7.14.tar.bz2'
+ mirror 'http://archive.apache.org/dist/subversion/subversion-1.7.14.tar.bz2'
+ sha1 'b35254a844d0b221a3fd8e80974ac75119d77b94'
serf(1.3.2 -> 1.3.3)
- url 'http://serf.googlecode.com/files/serf-1.3.2.tar.bz2'
- sha1 '90478cd60d4349c07326cb9c5b720438cf9a1b5d'
+ url 'http://serf.googlecode.com/files/serf-1.3.3.tar.bz2'
+ sha1 'b25c44a8651805f20f66dcaa76db08442ec4fa0e'
インストール
$ brew install subversion17 --unicode-path

入った・・・が

$ svn --version                                                                                                                 svn: E200019: ra_serf was compiled for serf 1.3.2 but loaded an incompatible 1.2.1 library

serfのバージョンに互換性がないと言われたので、もしかして既に入ってるserfと干渉しているのではと思い

$ brew list | grep serf

したら見つかったので、削除した後再度インストールしたらいけた。

$ brew remove serf
$ brew remove subversion17                                                                                                                                  Uninstalling /usr/local/Cellar/subversion/1.7.10...
$ brew install subversion17 --unicode-path
...
$ svn --version                                                                                                                                                      
svn, version 1.7.14 (r1542130)

■参考

HomebrewでSubversion17をインストールする際のunicode-pathオプションでのエラー対処

http://befool-inc.github.io/blog/2013/09/30/fix-homebrew-subversion17-unicode-patch/

2014年1月27日月曜日

CentOS6.3へqmailをyumインストールしてメールを送るところまで

CentOS6.3へqmailをyumインストールしてメールを送るところまで

デフォルトではqmail用のレポジトリがないので、リポジトリを追加する

■ yumレポジトリの追加

# cd /etc/yum.repos.d/
# wget http://download.opensuse.org/repositories/home:/weberho:/qmailtoaster/CentOS_CentOS-6/home:weberho:qmailtoaster.repo
# mv ”home:weberho:qmailtoaster.repo” qmailtoaster.repo

■qmailと関連ソフトウェアをまとめてyumでインストール

# yum -y install qmail vpopmail daemontools —enablerepo=home_weberho_qmailtoaster
..
 conflicts with postfix

Postfixとコンフリクトしたのでアンインストール

$ yum remove Postfix

一緒に消える依存ソフトウェアにcronie等があるが、後で入るので無視して実行する。

気を取り直してもう一度

# yum install qmail vpopmail daemontools —enablerepo=home_weberho_qmailtoaster
...

Installed:
daemontools.x86_64 0:0.76-5.3 qmail-toaster.x86_64 0:1.03.5-16.1 vpopmail.x86_64    0:5.4.25-4.1

Dependency Installed:
cronie.x86_64 0:1.4.4-7.el6 cronie-anacron.x86_64 0:1.4.4-7.el6 crontabs.noarch 0:1.10-33.el6 libsrs2-0.x86_64 0:1.0.18-1.3 qmail-skel.noarch 0:1-1.3 
ucspi-tcp.x86_64 0:0.88-2.2

入った。

■sendmailクローンでメール送信の互換性を保つ

# rm -f /usr/sbin/sendmail
# ln -s /var/qmail/bin/sendmail /usr/sbin/sendmail
# ln -s /var/qmail/bin/sendmail /usr/lib/sendmail

■daemontoolsを用いたqmailの起動準備

# mkdir /service
# mkdir /var/qmail/supervise/qmail-smtpd
# mkdir /var/qmail/supervise/qmail-send

※tcpserverとかは入ってた

$ which tcpserver
/usr/bin/tcpserver

$ which tcprules
/usr/bin/tcprules

■SMTPサーバの起動スクリプト(/var/qmail/supervise/qmail-smtpd/run) を作成する 

#!/bin/sh
HOST=foo.example.jp
QUID=`id -u qmaild`
QGID=`id -g qmaild`
exec \
/usr/local/bin/tcpserver \
-H -v -R -c 50 -x /etc/tcp.smtp.cdb \
-l "$HOST" -u "$QUID" -g "$QGID" 0 smtp \
/var/qmail/bin/qmail-smtpd 2>&1

■TCPサーバ用のSMTPの接続制限設定ファイル(tcp.smtp)の設定

/etc/tcp.smtp
127.:allow,RELAYCLIENT=""
218.223.31.12:allow,RELAYCLIENT=""

※tcp.smtp の 変更箇所は tcp.smtp.cdb に反映させる

tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtp

■qmailサービスの起動

ln -s /var/qmail/supervise/qmail-send /service/qmail-send
ln -s /var/qmail/supervise/qmail-smtpd /service/qmail-smtpd
sleep 5; svstat /service/*; pstree

■自動起動設定をする

CentOS6の場合は/etc/inittabはなく、/etc/init/svscan.conf

下記のファイルを無かったら作って編集する

# vim /etc/init/svscan.conf

-- # svscan - daemontools # # This service starts daemontools from the point the system is # started until it is shut down again.

start on runlevel [2345]
stop on shutdown
respawn
exec /usr/bin/svscanboot
--

■メール送信テスト

$ echo "body" | mail -s "title" <メールアドレス>

参考サイト

yumインストールするとこで参照

http://kyuxyu.tumblr.com/post/7987689646/centos-yum-qmail

設定周り

http://kawa.at.webry.info/200604/article_1.html

 

Life

Tech

Play