Ubuntu 10.04にnetatalk 2.2.3をインストール
netatalk 2.2.3がリリースされたので、インストールしました。
- インストール済みのNetatalkを削除
- 関連ツールインストール
- Netatalk本体インストール
- パッケージダウンロード&展開
- configure
- make
- sudo make install
- Netatalk設定
- 動作確認
1. インストール済みのNetatalkを削除
まず、古いパッケージを消します。
前のnetatalkをどうやってインストールしていたかによって違います。
Ubuntu標準のnetatalkでインストールした場合は、Synapticパッケージ・マネージャや、apt-getでアンインストールしてください。
次の様な手順で、自分でdpkgを作った場合は、dpkgでアンインストールしてください。
必要に応じて、設定ファイルはバックアップしておいてください。
- /etc/init.d/netatalk
- /etc/default/netatalk
- /etc/netatalk/afpd.conf
- /etc/netatalk/AppleVolumes.default
2. 関連ツールインストール
次のツールがインストールされている必要があります。
$ sudo apt-get install libdb4.8-dev (CNIDの管理のために必要。4.6以上ならOK) $ sudo apt-get install libgcrypt11-dev (uams_dhx2.soを使う時に必要) $ sudo apt-get install libavahi-client-dev (Zeroconfのために必要)
今まで、SLPサポートも入れてきたのですが、使わないのでやめました。私のブログを参考にしている方も、入れる必要が無いのにSLPを入れているようですので。
LDAP/ACLサポートのために、追加で必要になるパッケージもインストールします。ACLに対応させないなら不要です。
$ sudo apt-get install libldap2-dev (LDAPのために必要) $ sudo apt-get install libacl1-dev (ACLのために必要)
ACLに対応させるには、Ubuntu側/Mac OS X側もLDAPに対応させなければならないので、非常に困難です。次の記事をご覧下さい。
記事を書いていませんが、Mac OS XでもLDAPを利用してログインできるようにしておく必要があります。かなり面倒です。私が参考にしたウェブサイトがどこだったか、調べられません…。ブックマークしてあったはずなのに。
これだけの設定をしているのですが、まだ不完全なようです。私の環境では、Mac OS XでACLを使えません。原因調査中です。
以上のツールは、今までnetatalkを使っていたなら、既にインストールされているかもしれませんが、確認しておいてください。
3. Netatalk本体インストール
作業は、~/work/netatalkでする事にします。
cd mkdir work cd work mkdir netatalk cd netatalk
以下の説明では、このディレクトリで作業している物とします。
3.1 パッケージダウンロード&展開
$ wget http://sourceforge.net/projects/netatalk/files/netatalk/2.2.3/netatalk-2.2.3.tar.bz $ tar xvjf netatalk-2.2.3.tar.bz $ cd netatalk-2.2.3
3.2 configure
$ ./configure --enable-debian \ (UbuntuはDebian系なので) > --prefix=/usr \ (できたファイルは/usr以下に置く) > --with-pkgconfdir=/etc/netatalk \ (設定ファイル置き場) > --with-uams-path=/usr/lib/netatalk (ユーザ認証ライブラリ置き場)
最後に、summaryがでます。
Using libraries: LIBS = -lpthread -ldl -L$(top_srcdir)/libatalk CFLAGS = -I$(top_srcdir)/include -D_U_="__attribute__((unused))" -g -O2 -I$(top_srcdir)/sys SSL: LIBS = -lcrypto CFLAGS = -I/usr/include/openssl LIBGCRYPT: LIBS = -lgcrypt CFLAGS = PAM: LIBS = -lpam CFLAGS = WRAP: LIBS = -lwrap CFLAGS = BDB: LIBS = -ldb-4.8 CFLAGS = CUPS: LIBS = -lcups -lgssapi_krb5 -lgnutls -lz -lpthread -lm -lcrypt CFLAGS = ZEROCONF: LIBS = -lavahi-common -lavahi-client CFLAGS = -D_REENTRANT Configure summary: Install style: debian AFP: Large file support (>2GB) for AFP3: yes Extended Attributes: ad | sys CNID: backends: dbd last tdb UAMS: DHX (PAM SHADOW) DHX2 (PAM SHADOW) RANDNUM (afppasswd) clrtxt (PAM SHADOW) guest Options: DDP (AppleTalk) support: no SLP support: no Zeroconf support: yes 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 ACL support: yes LDAP support: yes
3.3 make
$ make $ ./etc/afpd/afpd -V afpd 2.2.3 - Apple Filing Protocol (AFP) daemon of Netatalk This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. Please see the file COPYING for further information and details. afpd has been compiled with support for these features: AFP versions: 2.2 3.0 3.1 3.2 3.3 DDP(AppleTalk) Support: No CNID backends: dbd last tdb SLP support: No Zeroconf support: Avahi TCP wrappers support: Yes Quota support: Yes Admin group support: Yes Valid shell checks: Yes cracklib support: No Dropbox kludge: No Force volume uid/gid: No EA support: ad | sys ACL support: Yes LDAP support: Yes afpd.conf: /etc/netatalk/afpd.conf AppleVolumes.system: /etc/netatalk/AppleVolumes.system AppleVolumes.default: /etc/netatalk/AppleVolumes.default afp_signature.conf: /etc/netatalk/afp_signature.conf afp_voluuid.conf: /etc/netatalk/afp_voluuid.conf afp_ldap.conf: /etc/netatalk/afp_ldap.conf UAM search path: /usr/lib/netatalk/ Server messages path: /etc/netatalk/msg/ lockfile: /var/lock/afpd
3.4 sudo make install
$ sudo make install
4. Netatalk設定
設定するのは、次のファイルです。
- /etc/default/netatalk
- /etc/netatalk/afpd.conf
- /etc/netatalk/AppleVolumes.default
/etc/default/netatalk
変更するのは、次の部分です。
ATALK_UNIX_CHARSET='UTF8' ATALK_MAC_CHARSET='MAC_JAPANESE' CNID_CONFIG="-l LOG_NOTE -f /var/log/netatalk.log"
/etc/netatalk/afpd.conf
次の設定を一行で書きます。
- -tcp -noddp -uamlist uams_guest.so,uams_dhx2.so -maccodepage MAC_JAPANESE -unixcodepage UTF8
/etc/netatalk/AppleVolumes.default
:DEFAULT:を書き換えます。
:DEFAULT: options:upriv,usedots cnidscheme:dbd dperm:0700 fperm:0600 ea:sys
マウントさせるディスクを宣言します。TimeMachineのボリューム名に、non-ASCIIも扱えるようになったので、試してみました。
~/ "Home Directory" /home/u_capsule "私のタイムマシーン" options:tm volsizelimit:1024
5. 動作確認
OS X 10.7.4 Lionで、動作確認しました。
- Finderから、サーバが見えるか? … OK
- フォルダを作れるか? … OK
- ファイルをコピーできるか? (Mac→Ubuntu、Ubuntu→Mac) … OK
- ファイルのパーミッションとタイムスタンプはどうか? … OK
- 拡張属性はついているか? … OK
- ファイル名の確認(日本語、禁止文字、長いファイル名) … OK
- TimeMachineでバックアップ動作するか? … OK
大丈夫そうです。
なお、次のウェブサイトを参考にしています。ありがとうございます。
ディスカッション
恐るべき対応の速さ。
なお、So-netブログがメンテ中のため、ウチのblogは更新出来ません。
HATさんへ、いつもコメントありがとうございます。
メーリングリストに加入したので、更新がすぐわかりました。
ブログに何を書こうか迷っていたので、インストール方法を書く事にしました。
今回は、モダンな設定のみにしてみました。
HATさんも、netatalkに関するブログを見つけるの、早いですね!