依存するあれこれの確認

まずは avahi-daemon の確認。
[paraches@centos ~]$ sudo /sbin/chkconfig --list | grep avahi
avahi-daemon   	0:off	1:off	2:off	3:on	4:on	5:on	6:off
avahi-dnsconfd 	0:off	1:off	2:off	3:off	4:off	5:off	6:off
[paraches@centos ~]$ 

最初から入ってるし、ちゃんと動いてる。
次は openssl の確認。

[paraches@centos ~]$ yum list | grep openssl
openssl.i686                               0.9.8e-12.el5_4.6           installed
openssl.x86_64                             0.9.8e-12.el5_4.6           installed

最初から入ってるし、ちゃんと動いてる。
openssl-devel もインストール。

[paraches@centos ~]$ sudo yum install openssl-devel.x86_64

次は libgcrypt の確認。

[paraches@centos ~]$ yum list | grep libgcrypt
libgcrypt.i386                             1.4.4-5.el5                 installed
libgcrypt.x86_64                           1.4.4-5.el5                 installed
libgcrypt-devel.i386                       1.4.4-5.el5                 base     
libgcrypt-devel.x86_64                     1.4.4-5.el5                 base     
[paraches@centos ~]$ 

これも入ってるし。
で、libgcrypt-devel も入れておく。

[paraches@centos ~]$ sudo yum install libgcrypt-devel

次は Berkeley DB の番。

[paraches@centos ~]$ yum list | grep Berkeley

パッケージは無い…
仕方が無いので最初から頑張る。
まずは、ソースをココから取って来て展開、configure する。その際にカレントディレクトリが build_unix でないとダメなので注意(らしい)。

[paraches@centos build_unix]$ cd build_unix/
[paraches@centos build_unix]$ ../dist/configure 
[paraches@centos build_unix]$ make
[paraches@centos build_unix]$ sudo make install

特に問題なく /usr/local/BerkeleyDB.5.1/lib にインストールされた。
以上で準備完了!

netatalk のインストール

これは sourceforge から最新のバージョンを取ってきて展開。

[paraches@centos netatalk]$ ls
netatalk-2.1.3.tar.bz2
[paraches@centos netatalk]$ tar jxvf netatalk-2.1.3.tar.bz2 
[paraches@centos netatalk]$ ls
netatalk-2.1.3  netatalk-2.1.3.tar.bz2
[paraches@centos netatalk]$ cd netatalk-2.1.3
[paraches@centos netatalk-2.1.3]$ 

configure してみる。RedHat 系では --enable-redhat とする。

[paraches@centos netatalk-2.1.3]$ ./configure --enable-redhat
<省略>
Make sure you have the required Berkeley DB libraries AND headers installed.
You can download the latest version from http://www.sleepycat.com.
If you have installed BDB in a non standard location use the
--with-bdb=/path/to/bdb configure option and make sure
your linker is configured to check for libraries there.
configure: error: Berkeley DB library required but not found!

Berkeley DB が見つからないって…。
場所を指定してもう一回。

[paraches@centos netatalk-2.1.3]$ ./configure --enable-redhat --with-bdb=/usr/local/BerkeleyDB.5.1
<省略>
Using libraries:
    LIBS =  -L$(top_srcdir)/libatalk
    CFLAGS = -I$(top_srcdir)/include -D_U_="__attribute__((unused))" -g -O2 -I$(top_srcdir)/sys
    SSL:
        LIBS   =  -L/usr/lib64 -lcrypto
        CFLAGS =  -I/usr/include/openssl
    LIBGCRYPT:
        LIBS   = -lgcrypt -ldl -lgpg-error
        CFLAGS = 
    BDB:
        LIBS   =  -L/usr/local/BerkeleyDB.5.1/lib -ldb-5.1
        CFLAGS =  -I/usr/local/BerkeleyDB.5.1/include/
Configure summary:
    Install style:
         redhat
    AFP:
         AFP 3.x calls activated: yes
         Large file support (>2GB) for AFP3: yes
         Extended Attributes: ad | sys
         DDP enabled: yes
    CNID:
         backends:  dbd last tdb
    UAMS:
         DHX     ( SHADOW)
         DHX2    ( SHADOW)
         RANDNUM ( SHADOW)
         passwd  ( SHADOW)
         guest
    Options:
         CUPS support:           no
         SLP support:            no
         tcp wrapper support:    yes
         quota support:          yes
         admin group support:    yes
         valid shell check:      yes
         cracklib support:       no
         dropbox kludge:         no
         force volume uid/gid:   no
         Apple 2 boot support:   no
         ACL support:            no
[paraches@centos netatalk-2.1.3]$ 

こんな感じで OK。
次に make & make install。

[paraches@centos netatalk-2.1.3]$ make
[paraches@centos netatalk-2.1.3]$ sudo make install

問題なく終了。

netatalk の設定

次は設定をする。
/usr/local/etc/netatalk に設定ファイルがあるので、その中の AppleVolumes.default をちょっと修正。

:DEFAULT: options:upriv,usedots dperm:0700 fperm:0600 ea:sys

最後に avahi-daemon の設定ファイル /etc/avahi/services/afpd.service を作って終了。これは前に作ったものと同じ。


後はシステムの方の設定。
まずはファイアーウォールが afp の邪魔をしているので Port 548 を開ける。
そしてサービスで netatalk を登録、自動的に起動する様にする。
この辺の作業は昨日の mt-daapd のところに方法がメモってある。


以上で netatalk が使える様になった!