Установка Netatalk (AFP) на OpenSUSE

Oct 30, 2011 20:20

Рассмотрен процесс установки AFP (Apple File Protocol) с поддержкой TimeMachine на OpenSUSE Linux. После установки и настройки всех необходимых пакетов система Linux будет общаться по сети с компьютерами Macintosh по родному протоколу, отображаться в сетевом окружении Finder'a, а так же будет возможно подключение сетевого диска Linux к TimeMachine без дополнительных настроек и "хаков" мака.

Устанавливаем необходимые для работы пакеты:
sudo zypper ar http://download.opensuse.org/repositories/network/openSUSE_11.4
sudo zypper ref
sudo zypper in netatalk
sudo zypper in avahiНастройка netatalk

Правим конфигурационный файл /etc/netatalk/netatalk.conf:
# Netatalk configuration

#########################################################################
# Global configuration
#########################################################################

#### machine's AFPserver/AppleTalk name.
ATALK_NAME=machinename

#### server (unix) and legacy client (<= Mac OS 9) charsets
ATALK_UNIX_CHARSET='LOCALE'
ATALK_MAC_CHARSET='MAC_ROMAN'

#### Don't Edit. export the charsets, read form ENV by apps
export ATALK_UNIX_CHARSET
export ATALK_MAC_CHARSET

#########################################################################
# AFP specific configuration
#########################################################################

#### Set which daemons to run.
#### If you use AFP file server, run both cnid_metad and afpd.
CNID_METAD_RUN=yes
AFPD_RUN=yes

#### maximum number of clients that can connect:
#AFPD_MAX_CLIENTS=20

#### UAMs (User Authentication Modules)
#### available options: uams_dhx.so, uams_dhx2.so, uams_guest.so,
#### uams_clrtxt.so(legacy), uams_randnum.so(legacy)
#AFPD_UAMLIST="-U uams_dhx.so,uams_dhx2.so"

#### Set the id of the guest user when using uams_guest.so
#AFPD_GUEST=nobody

#### config for cnid_metad. Default log config:
#CNID_CONFIG="-l log_note"

#########################################################################
# AppleTalk specific configuration (legacy)
#########################################################################

#### Set which legacy daemons to run.
#### If you need AppleTalk, run atalkd.
#### papd, timelord and a2boot are dependent upon atalkd.
ATALKD_RUN=no
PAPD_RUN=no
TIMELORD_RUN=no
A2BOOT_RUN=no

#### Control whether the daemons are started in the background.
#### If it is dissatisfied that legacy atalkd starts slowly, set "yes".
#### In case using systemd/systemctl, this is not so significant.
#ATALK_BGROUND=no

#### Set the AppleTalk Zone name.
#### NOTE: if your zone has spaces in it, you're better off specifying
#### it in atalkd.conf
#ATALK_ZONE=@zone
#AFPD_OPTIONS=В конец конфигурационного файла /etc/netatalk/afpd.conf добавляем строку:

- -transall -uamlist uams_randnum.so,uams_dhx2.so -nosavepassword -advertise_ssh
Добавляем общие ресурсы в файле /etc/netatalk/AppleVolumes.default:
~/ "$u" allow:user1,user2 cnidscheme:dbd
/storage/TimeMachine TimeMachine allow:linuxusername,@groupname cnidscheme:dbd volsizelimit:500000 options:tm,usedots,upriv
/storage/share Share allow:linuxusername,@groupname cnidscheme:dbd options:usedots,upriv
/storage/music Music allow:linuxusername,@groupname cnidscheme:dbd options:usedots,upriv
/storage/pictures Pictures allow:linuxusername,@groupname cnidscheme:dbd options:usedots,upriv
/storage/video Video allow:linuxusername,@groupname cnidscheme:dbd options:usedots,upriv
В данном примере открываются папки пользователей для user1 и user2, папки share, music, pictures и video для пользователя username и группы groupname. Для тайм-машины предназначена папка TimeMachine и на нее установлен лимит в 500 Gb.

Запускаем netatalk, проверяем и добавляем в init.d:
rcnetatalk start
rcnetatalk status
insserv netatalkНастройка Avahi
Правим /etc/nsswitch.conf, находим и меняем строку:
hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4 mdnsСоздаем файл /etc/avahi/services/afpd.service следующего содержания:

%h

_afpovertcp._tcp

548

_device-info._tcp

0
model=Xserve

В случае, если на linux-хосте поднят сервер VNC, его можно так же прописать в Avahi в файле /etc/avahi/services/rfb.service:

%h

_rfb._tcp

5901

Запускаем Avahi и добавляем его в init.d:
rcavahi-daemon restart
insserv avahi-daemonРешение проблем
Если при старте netatalk возникает ошибка "nbp_rgstr: Connection timed out", то необходимо прописать сетевой интерфейс локальной сети в конфигурационном файле /etc/netatalk/atalkd.conf; например:
eth0Источники
  1. http://wiki.rsu.edu.ru/wiki/Установка_Netatalk_(AFP)_на_OpenSUSE
  2. http://www.jasonmyres.com/2011/04/install-netatalk-afp-on-opensuse-11-4/
  3. http://www.kremalicious.com/2008/06/ubuntu-as-mac-file-server-and-time-machine-volume/

на память, netatalk, админство, linux, avahi, suse, afp, bonjour, mac

Previous post Next post
Up