Ubuntu 14.04にnetatalk 3.1.3インストール
昔書いた記事にコメントが付いていました。
コメントによると、次の事をしたい様です。
- afp.confを/usr/local/etcに置きたい
- 上記の方法だと、netatalk 3.1.3で問題が出る
検証のために、Ubuntu 14.04にnetatalk 3.1.3をインストールしました。
最終形態としては、debianパッケージの形でインストールできる様にする事ですが、まずは通常の方法でインストールします。と言っても、HATさんが既に完璧なドキュメントを作って下さっているので、それをなぞるだけです。ありがとうございます。
詳細は、こちらを見ていただく事にして、やる事だけまとめます。
- 必要パッケージインストール
- ビルド
- ビルド結果のチェック
- 設定
- 起動
- 動作チェック
それでは、順番に解説します。
1. 必要パッケージインストール
今回、ParallelsにUbuntu 14.04をクリーンインストールしてから、netatalkをインストールしました。仮想環境があると便利ですね。っていうか、仮想環境がないと、各種検証ができません。
必要パッケージは、上記リストに書かれています。そのまま、apt-get installコマンドでインストールします。
$ sudo apt-get install build-essential libssl-dev libgcrypt11-dev libkrb5-dev libpam0g-dev libwrap0-dev libdb-dev libmysqlclient-dev libavahi-client-dev libacl1-dev libldap2-dev libcrack2-dev systemtap-sdt-dev libdbus-1-dev libdbus-glib-1-dev libglib2.0-dev tracker libtracker-sparql-0.16-dev libtracker-miner-0.16-dev
上記ページに、libtrackerとtrackerのバージョンの確認について書かれています。
$ apt search libtracker-sparql ソート中... 完了 全文検索... 完了 gir1.2-tracker-0.16/trusty-updates,now 0.16.2-1ubuntu4.1 amd64 GObject introspection data for Tracker libtracker-sparql-0.16-0/trusty-updates,now 0.16.2-1ubuntu4.1 amd64 metadata database, indexer and search tool - library libtracker-sparql-0.16-dev/trusty-updates,now 0.16.2-1ubuntu4.1 amd64 metadata database, indexer and search tool - development files libtracker-sparql-doc/trusty-updates 0.16.2-1ubuntu4.1 all metadata database, indexer and search tool - API documentation $ apt search libtracker-miner ソート中... 完了 全文検索... 完了 gir1.2-tracker-0.16/trusty-updates,now 0.16.2-1ubuntu4.1 amd64 GObject introspection data for Tracker libtracker-miner-0.16-0/trusty-updates,now 0.16.2-1ubuntu4.1 amd64 tracker data miner library libtracker-miner-0.16-dev/trusty-updates,now 0.16.2-1ubuntu4.1 amd64 tracker data miner library - development files libtracker-miner-doc/trusty-updates 0.16.2-1ubuntu4.1 all tracker data miner library - API documentation
“0.16"が最新の様です。インストールしたtrakerも0.16です。
$ dpkg-query -l tracker 要望=(U)不明/(I)インストール/(R)削除/(P)完全削除/(H)保持 | 状態=(N)無/(I)インストール済/(C)設定/(U)展開/(F)設定失敗/(H)半インストール/(W)トリガ待ち/(T)トリガ保留 |/ エラー?=(空欄)無/(R)要再インストール (状態,エラーの大文字=異常) ||/ 名前 バージョン アーキテクチャ 説明 +++-======================================-========================-========================-================================================================================== ii tracker 0.16.2-1ubuntu4.1 amd64 metadata database, indexer and search tool
2. ビルド
Netatalk本体は、次のページにリンクが張られています。
bzip2とgzがありますので、お好きな方をどうぞ。
$ tar xvjf netatalk-3.1.3.tar.bz2 $ cd netatalk-3.1.3
このディレクトリに、configureがあるので、"–help"オプションを使って、使えるオプションを調べられます。今回は、上記ページの設定のままでインストールします。
$ ./configure \ --with-init-style=debian \ --with-cracklib \ --enable-krbV-uam \ --with-pam-confdir=/etc/pam.d \ --with-dbus-sysconf-dir=/etc/dbus-1/system.d \ --with-tracker-pkgconfig-version=0.16 : Compilation summary: CPPFLAGS = -I$(top_srcdir)/include -I$(top_builddir)/include CFLAGS = -D_U_="__attribute__((unused))" -g -O2 LIBS = -ldl -lcrack PTHREADS: LIBS = CFLAGS = -pthread TRACKER: LIBS = -Wl,--export-dynamic -pthread -ltracker-sparql-0.16 -lgio-2.0 -lgmodule-2.0 -lgobject-2.0 -lglib-2.0 CFLAGS = -pthread -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/tracker-0.16 -I/usr/include/tracker-0.16/libtracker-sparql SSL: LIBS = -L/usr/lib64 -lcrypto CFLAGS = -I/usr/include/openssl LIBGCRYPT: LIBS = -lgcrypt CFLAGS = PAM: LIBS = -lpam CFLAGS = WRAP: LIBS = -lwrap CFLAGS = BDB: LIBS = -L/usr/lib64 -ldb-5.3 CFLAGS = GSSAPI: LIBS = -Wl,-Bsymbolic-functions -Wl,-z,relro -lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err CFLAGS = ZEROCONF: LIBS = -lavahi-common -lavahi-client CFLAGS = -D_REENTRANT LDAP: LIBS = -lldap CFLAGS = LIBEVENT: bundled TDB: bundled MySQL: LIBS = -L/usr/lib/x86_64-linux-gnu -lmysqlclient -lpthread -lz -lm -ldl CFLAGS = -I/usr/include/mysql -DBIG_JOINS=1 -fno-strict-aliasing -g -DNDEBUG Configure summary: INIT STYLE: debian AFP: Extended Attributes: ad | sys ACL support: yes Spotlight: yes CNID: backends: dbd last tdb mysql UAMS: DHX (PAM SHADOW) DHX2 (PAM SHADOW) RANDNUM (afppasswd) Kerberos V clrtxt (PAM SHADOW) guest Options: Zeroconf support: yes tcp wrapper support: yes quota support: yes admin group support: yes valid shell check: yes cracklib support: yes ACL support: auto Kerberos support: yes LDAP support: yes AFP stats via dbus: yes dtrace probes: yes Paths: Netatalk lockfile: /var/lock/netatalk init directory: /etc/init.d dbus system directory: /etc/dbus-1/system.d pam config directory: /etc/pam.d Documentation: Docbook: no
お手軽だなあ。configureのまとめが最後に出るので、チェックします。問題なさそうです。確認が終了したので、makeします。
$ make $ ./etc/afpd/afpd -V afpd 3.1.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 3.4 CNID backends: dbd last tdb mysql Zeroconf support: Avahi TCP wrappers support: Yes Quota support: Yes Admin group support: Yes Valid shell checks: Yes cracklib support: Yes EA support: ad | sys ACL support: Yes LDAP support: Yes D-Bus support: Yes Spotlight support: Yes DTrace probes: Yes afp.conf: /usr/local/etc/afp.conf extmap.conf: /usr/local/etc/extmap.conf state directory: /usr/local/var/netatalk/ afp_signature.conf: /usr/local/var/netatalk/afp_signature.conf afp_voluuid.conf: /usr/local/var/netatalk/afp_voluuid.conf UAM search path: /usr/local/lib/netatalk// Server messages path: /usr/local/var/netatalk/msg/
make installする前に、出来上がったバイナリをチェックしておくと良いと思います。特に、おかしな所は見当たりません。よって、make installします。
$ sudo make install
3. ビルド結果のチェック
正しく、バイナリがインストールされているか確認します。
$ which afpd /usr/local/sbin/afpd $ afpd -V afpd 3.1.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 3.4 CNID backends: dbd last tdb mysql Zeroconf support: Avahi TCP wrappers support: Yes Quota support: Yes Admin group support: Yes Valid shell checks: Yes cracklib support: Yes EA support: ad | sys ACL support: Yes LDAP support: Yes D-Bus support: Yes Spotlight support: Yes DTrace probes: Yes afp.conf: /usr/local/etc/afp.conf extmap.conf: /usr/local/etc/extmap.conf state directory: /usr/local/var/netatalk/ afp_signature.conf: /usr/local/var/netatalk/afp_signature.conf afp_voluuid.conf: /usr/local/var/netatalk/afp_voluuid.conf UAM search path: /usr/local/lib/netatalk// Server messages path: /usr/local/var/netatalk/msg/
大丈夫です。
4. 設定
設定ファイルは、afp.confです。上記の確認結果にある様に、"/usr/local/etc/afp.conf"です。動作確認だけなので、上記のページの設定通りにします。
[Global]
mac charset = MAC_JAPANESE
[Homes]
basedir regex = /home
[Test Volume]
path = /export/test1
[My Time Machine Volume]
path = /export/timemachine
time machine = yes
vol size limit = 512000
ディレクトリを作っておきます。
$ sudo mkdir -p /export/test1 $ sudo chmod 777 /export/test1/ $ sudo mkdir /export/timemachine $ sudo chmod 777 /export/timemachine/
それと、ACLとEA(拡張属性)を有効にするために、/etc/fstabを修正しておきます。
$ vi /etc/fstab
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
#
# / was on /dev/sda1 during installation
UUID=oooooooo-oooo-oooo-oooo-oooooooooooo / ext4 defaults,user_xattr,acl,errors=remount-ro 0 1
# swap was on /dev/sda5 during installation
UUID=oooooooo-oooo-oooo-oooo-oooooooooooo none swap sw 0 0
修正後、ファイルシステムをマウントし直します。
$ sudo mount -o remount /
これで、ACLとEAが使える様になっているはずです。
5. 起動
avahi-daemonとnetatalkを起動します。
$ sudo service avahi-daemon start start: Job is already running: avahi-daemon
あれ? 動いているみたい。それじゃあ、restartします。
$ sudo service avahi-daemon restart avahi-daemon stop/waiting avahi-daemon start/running, process 30475 $ sudo service netatalk start Starting Netatalk services: netatalk.
自動起動は、次の様にして設定できる様です。やり方が、変更になっているのですね。
$ sudo update-rc.d avahi-daemon defaults Adding system startup for /etc/init.d/avahi-daemon ... /etc/rc0.d/K20avahi-daemon -> ../init.d/avahi-daemon /etc/rc1.d/K20avahi-daemon -> ../init.d/avahi-daemon /etc/rc6.d/K20avahi-daemon -> ../init.d/avahi-daemon /etc/rc2.d/S20avahi-daemon -> ../init.d/avahi-daemon /etc/rc3.d/S20avahi-daemon -> ../init.d/avahi-daemon /etc/rc4.d/S20avahi-daemon -> ../init.d/avahi-daemon /etc/rc5.d/S20avahi-daemon -> ../init.d/avahi-daemon $ sudo update-rc.d netatalk defaults Adding system startup for /etc/init.d/netatalk ... /etc/rc0.d/K20netatalk -> ../init.d/netatalk /etc/rc1.d/K20netatalk -> ../init.d/netatalk /etc/rc6.d/K20netatalk -> ../init.d/netatalk /etc/rc2.d/S20netatalk -> ../init.d/netatalk /etc/rc3.d/S20netatalk -> ../init.d/netatalk /etc/rc4.d/S20netatalk -> ../init.d/netatalk /etc/rc5.d/S20netatalk -> ../init.d/netatalk
6. 動作チェック
一応、次の雹のチェックをしています。無事動いている様です。
OS X 10.9.4 | |
---|---|
サーバーを見つけられるか? | OK |
フォルダを作れるか? | OK |
MacからUbuntuにコピーできるか? | OK |
UbuntuからMacにコピーできるか? | OK |
コピーされたファイルのパーミッションはどうか? | OK |
コピーされたファイルのタイムスタンプはどうか? | OK |
ファイルの拡張属性はどうか? | OK |
“:”の様な特殊文字はどうか? | OK |
長いファイル名はどうか? | OK |
TimeMachineでバックアップできるか? | OK |
ディスカッション
コメント一覧
まだ、コメントがありません