「Netatalk」の版間の差分
(ページの作成:「Category:ネットワーク en:Netatalk Netatalk は Apple Filing Protocol (AFP) のフリーなオープンソース実装です。Macintosh コンピュータ...」) |
(→iptables: 同期) |
||
(同じ利用者による、間の1版が非表示) | |||
4行目: | 4行目: | ||
==インストール== |
==インストール== |
||
− | Netatalk |
+ | Netatalk は {{AUR|netatalk}} パッケージで[[インストール]]できます。 |
− | |||
− | netatalk の旧バージョンである v2 は {{AUR|netatalk-ddp}}{{Broken package link|{{aur-mirror|netatalk-ddp}}}} として配布されており AppleTalk (ATalk), Apple Filing Protocol (AFP), Printer Access Protocol (PAP) などの Apple Macintosh ネットワークプロトコルをサポートしています。 |
||
− | |||
− | ===機能の選択=== |
||
− | DDP (ATalk, PAP, timelord, a2boot) の廃止によって、バージョン 3.0 から netatalk もそれらの機能を廃止しています。DDP をサポートする旧式の 2.x ブランチは [[AUR]] の {{AUR|netatalk-ddp}}{{Broken package link|{{aur-mirror|netatalk-ddp}}}} で使うことができます。DDP は Mac OS 9 以下をサポートするのに必要なだけでなく、OS X 10.3 以下でも Bonjour/Zeroconf が完全にサポートされていないため SLP の統合が役に立ちます。DDP は TCP/IP ではなく AppleTalk を使用していた古い Mac を接続していました。時刻同期には timelord が、Apple II の起動には a2boot がありました。TCP/IP をサポートしていない LaserWriter プリンタを使っている場合、いまだに PAP が必要になることもあります。 |
||
− | |||
− | *Bonjour/Zeroconf をサポートする cnid_metad や afpd などの近代的な機能だけが必要な場合 {{AUR|netatalk}} をインストールしてください。 |
||
− | *SLP をサポートする旧式な機能を充足したい場合は {{AUR|netatalk-ddp}}{{Broken package link|{{aur-mirror|netatalk-ddp}}}} をインストールしてください。 |
||
==設定== |
==設定== |
||
18行目: | 10行目: | ||
インストール時に作成される設定ファイル (アップグレード時にチェックされます) とは別に、netatalk は2つのファイルを生成します。システム UUID を記録する {{Ic|/etc/netatalk/afp_signature.conf}} または {{Ic|/var/state/netatalk/afp_signature.conf}} と、TimeMachine のボリューム UUID を記録する {{Ic|/etc/netatalk/afp_voluuid.conf}} または {{Ic|/var/state/netatalk/afp_voluuid.conf}} です。これらのファイルはパッケージを削除しても消されることなく、ローカルネットワーク上のサービスを識別するために残しておいてください。 |
インストール時に作成される設定ファイル (アップグレード時にチェックされます) とは別に、netatalk は2つのファイルを生成します。システム UUID を記録する {{Ic|/etc/netatalk/afp_signature.conf}} または {{Ic|/var/state/netatalk/afp_signature.conf}} と、TimeMachine のボリューム UUID を記録する {{Ic|/etc/netatalk/afp_voluuid.conf}} または {{Ic|/var/state/netatalk/afp_voluuid.conf}} です。これらのファイルはパッケージを削除しても消されることなく、ローカルネットワーク上のサービスを識別するために残しておいてください。 |
||
− | |||
− | ===Netatalk=== |
||
− | {{Note|2.x から 3.x に移行したら CNID データが {{ic|.AppleDB}} ディレクトリに保存されていないことに気づいて下さい。データは {{ic|/var/state/netatalk/CNID}} に保存されます。共有をアップグレードするために、{{ic|.AppleDB}} ディレクトリを削除して {{ic|dbd -r <path>}} で再作成しましょう。}} |
||
Netatalk 3.x は単一の設定ファイル {{ic|/etc/afp.conf}} を使用します。詳しくは {{ic|man afp.conf}} や以下の例を見て下さい (プロセスが {{ic|afpd.log}} に書き込みを行えることを確認してください): |
Netatalk 3.x は単一の設定ファイル {{ic|/etc/afp.conf}} を使用します。詳しくは {{ic|man afp.conf}} や以下の例を見て下さい (プロセスが {{ic|afpd.log}} に書き込みを行えることを確認してください): |
||
44行目: | 33行目: | ||
{{Warning|{{ic|afp.conf}} でシンボリックリンクを使ってはいけません。}} |
{{Warning|{{ic|afp.conf}} でシンボリックリンクを使ってはいけません。}} |
||
− | === |
+ | ===ゲストアクセス=== |
+ | ゲストが共有フォルダに読み取りだけできるようするには、以下の行を {{ic|[Global]}} セクションに追加してください: |
||
− | ====システム==== |
||
+ | {{hc|/etc/afp.conf|<nowiki> |
||
− | afpd 設定ファイル ({{Ic|/etc/netatalk/afpd.conf}}) を編集して、以下のような行を追加してください: |
||
+ | [Global] |
||
− | {{hc|/etc/netatalk/afpd.conf|...<br>- -mimicmodel TimeCapsule6,106 -setuplog "default log_warn /var/log/afpd.log"}} |
||
+ | uam list = uams_guest.so |
||
− | 上記の設定では netatalk はシステムのホストネームを使用し、TimeCapsule に擬態して、警告とエラーをファイルに出力します。 |
||
+ | </nowiki>}} |
||
− | ====ボリューム==== |
||
+ | ゲストが読み書きできるようにするには、上記のように読み取りを可能にしてから以下の行を共有のセクションに追加してください: |
||
− | ボリューム設定ファイル {{Ic|/etc/netatalk/AppleVolumes.default}} を編集して以下のように TimeMachine のような共有を追加してください: |
||
+ | {{hc|/etc/afp.conf|<nowiki> |
||
− | {{hc|/etc/netatalk/AppleVolumes.default|...<br><path_to_share> <sharename> allow:<username> options:usedots,upriv,tm}} |
||
+ | [Your Share] |
||
− | * {{Ic|volsizelimit:<limit_in_whole_mebibytes>}} 引数を使うことで TimeMachine に報告する合計容量を制限できます。 |
||
+ | path = /mnt/public/share |
||
− | * "home" 共有をオフにしたい場合、{{Ic|~}} 行を {{Ic|#~}} に変更してください。 |
||
+ | rwlist = nobody |
||
− | {{Warning|ボリュームを入れ子にしたり、他のプロトコルでディレクトリを共有してはいけません。ファイルの変更は afpd によってのみ行われるようにします。}} |
||
+ | </nowiki>}} |
||
==iptables== |
==iptables== |
||
− | ファイアウォールとして iptables パッケージを使っている場合、以下を追加してください (必要に応じて {{Ic|-I}} は {{Ic|-A}} に置き換えてください): |
+ | ファイアウォールとして [[iptables]] パッケージを使っている場合、以下を追加してください (必要に応じて {{Ic|-I}} は {{Ic|-A}} に置き換えてください): |
{{hc|Bonjour/Zeroconf|iptables -I INPUT -p udp --dport mdns -d 224.0.0.251 -j ACCEPT |
{{hc|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}} |
iptables -I OUTPUT -p udp --dport mdns -d 224.0.0.251 -j ACCEPT}} |
2016年11月29日 (火) 20:22時点における最新版
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
ゲストアクセス
ゲストが共有フォルダに読み取りだけできるようするには、以下の行を [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
を起動・有効化してください。