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 |










ディスカッション
コメント一覧
まだ、コメントがありません