Netatalk

提供: ArchWiki
移動先: 案内検索

Netatalk は Apple Filing Protocol (AFP) のフリーなオープンソース実装です。Macintosh コンピュータのためのファイルサーバーとして Unix ライクなオペレーティングシステムで動作します。

インストール

Netatalk は netatalkAUR パッケージでインストールできます。

設定

systemd を使って netatalk.service を起動・有効化してください。

インストール時に作成される設定ファイル (アップグレード時にチェックされます) とは別に、netatalk は2つのファイルを生成します。システム UUID を記録する /etc/netatalk/afp_signature.conf または /var/state/netatalk/afp_signature.conf と、TimeMachine のボリューム UUID を記録する /etc/netatalk/afp_voluuid.conf または /var/state/netatalk/afp_voluuid.conf です。これらのファイルはパッケージを削除しても消されることなく、ローカルネットワーク上のサービスを識別するために残しておいてください。

Netatalk 3.x は単一の設定ファイル /etc/afp.conf を使用します。詳しくは man afp.conf や以下の例を見て下さい (プロセスが afpd.log に書き込みを行えることを確認してください):

/etc/afp.conf
[Global]
 mimic model = TimeCapsule6,106
 log level = default:warn
 log file = /var/log/afpd.log
 hosts allow = 192.168.1.0/16

[Homes]
 basedir regex = /home

[TimeMachine]
 path = /mnt/timemachine
 valid users = tmuser
 time machine = yes

[Shared Media]
 path = /srv/share/media
 valid users = joe sam
警告: afp.conf でシンボリックリンクを使ってはいけません。

ゲストアクセス

ゲストが共有フォルダに読み取りだけできるようするには、以下の行を [Global] セクションに追加してください:

/etc/afp.conf
[Global]
uam list = uams_guest.so

ゲストが読み書きできるようにするには、上記のように読み取りを可能にしてから以下の行を共有のセクションに追加してください:

/etc/afp.conf
[Your Share]
path = /mnt/public/share
rwlist = nobody

iptables

ファイアウォールとして iptables パッケージを使っている場合、以下を追加してください (必要に応じて -I-A に置き換えてください):

Bonjour/Zeroconf
iptables -I INPUT -p udp --dport mdns -d 224.0.0.251 -j ACCEPT
iptables -I OUTPUT -p udp --dport mdns -d 224.0.0.251 -j ACCEPT
AFP
iptables -I INPUT -p tcp --dport afpovertcp -j ACCEPT
SLP
iptables -I INPUT -p tcp --dport slp -j ACCEPT
iptables -I OUTPUT -p tcp --dport slp -j ACCEPT
iptables -I INPUT -p udp --dport slp -j ACCEPT
iptables -I OUTPUT -p udp --dport slp -j ACCEPT
AppleTalk
iptables -I INPUT -p tcp -m multiport --dport at-rtmp,at-nbp,at-echo,at-zis -j ACCEPT
iptables -I OUTPUT -p tcp -m multiport --dport at-rtmp,at-nbp,at-echo,at-zis -j ACCEPT

Bonjour/Zeroconf の有効化

Bonjour/Zeroconf は現在 netatalk の必須要件となっておりデフォルトでコンパイルされています。設定は必要ありません。netatalk は dbus リンクを使ってサービスを登録します。-mimicmodel を適切な文字列に設定してください (完全なリストは Mac の /System/Library/CoreServices/CoreTypes.bundle/Contents/Info.plist を参照)。

まだ実行していない場合は、systemd を使って avahi-daemon.service を起動・有効化してください。