Netatalk - Arch Linux 中文维基

跳至內容

# Netatalk

出自 Arch Linux 中文维基
翻譯狀態：

- 本文（或部分內容）譯自 Netatalk，最近一次同步於 2020-04-23，若英文版本有所更改，則您可以幫助同步與翻譯更改的內容。
- 您可以在 ArchWiki 的對應頁面找到本文翻譯的原始修訂歷史。
- 本文可能與英文原文存在出入。

Netatalk 是一個 Apple Filing Protocol (AFP) 的開源實現。它為 Unix 風格系統提供了與 Macintosh 文件共享的功能。

## 安裝

安裝 netatalkAUR 包。

## 配置

使用 systemd 來啟用或啟動 `netatalk.service`

除了一併安裝的配置文件（升級的時候會檢查這些文件），另外 Netatalk 可能會生成 `/etc/netatalk/afp_signature.conf` 或 `/var/state/netatalk/afp_signature.conf`，來保存系統的 UUID；`/etc/netatalk/afp_voluuid.conf` 或 `/var/state/netatalk/afp_voluuid.conf` 來保存 Time Machine 的 UUID。為了消除本地網絡的服務廣播的歧義，移除包的時候可能並不會刪除這些文件。

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` 裡面使用符號連結（symbolic link）

### 來客訪問

如果要讓來客只讀地訪問你的共享文件夾，在 `[Global]` 這一行的下面加入以下片段：

    /etc/afp.conf

    [Global]
    uam list = uams_guest.so

要讓來客擁有讀/寫權限，首先要像上面一樣建立只讀權限，再添加下面這一行到指定的分享片段：

    /etc/afp.conf

    [Your Share]
    path = /mnt/public/share
    rwlist = nobody

## IP Tables

如果你使用 iptables 包來做防火牆，可能需要加入下面幾行：(如果需要的話，可以用用 `-A` 來 替換掉 `-I`)

    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` 來獲得一個完整的列表）。

如果 `avahi-daemon.service` 沒有運行的話，可能需要使用 systemd 啟用或啟動該服務。

分類：​

- 網絡

Netatalk
新增話題