Netatalk implementiert Appletalk und AppleShare IP auf UNIX-Systemen und ist auch auf der Linux-Distribution CentOS 5.3 (basiert auf Red Hat Enterprise Linux Quellcode) lauffähig. Dadurch tritt ein Linuxrechner als Server in einem Apple-Netzwerk auf- sozusagen ein SAMBA für klassische Apple-Netze. Allerdings muss die Software aus dem Quellcode neu kompiliert und ein anderer als der standardmässig installierte Kernel verwendet werden. Hier kommt eine Schritt-für-Schritt Anleitung.
Kernel-Update
Der normalerweise mit CentOS installierte Kernel verfügt nicht über das erforderliche atalk Kernelmodul. Dieses stellt das eigentliche Appletalk-Protokoll bereit. Ein Weg wäre, einen passenden Kernel aus den Quellen neu zu kompilieren. Dies ist aber aufwändig und fehleranfällig hinsichtlich der richtigen Konfiguration. Einfacher ist es, den Kernel aus dem CentOS Plus Repository zu installieren.
- Das CentOS Plus Repository nur für Kernel-Pakete eingefügen:
- Hinzufügen an das Ende von /etc/yum.repos.d/CentOS-Base.repo:
#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus
gpgcheck=1
enabled=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos5
includepkgs=kernel*
- In der Sektion [base] hinzufügen:
exclude=kernel kernel-devel kernel-PAE-*
- In der Sektion [update] hinzufügen:
exclude=kernel kernel-devel kernel-PAE-*
- Hinzufügen an das Ende von /etc/yum.repos.d/CentOS-Base.repo:
- Testen, ob das Hinzufügen auch geklappt hat:yum list updatesAusgabe ist dann:
...
* centosplus: centos.intergenia.de
...
centosplus | 1.9 kB
...
Excluding Packages from CentOS-5 - Base
Finished
Excluding Packages from CentOS-5 - Updates
Finished
Reducing CentOS-5 - Plus to included packages only
Finished
...
- Wurde das Repository korrekt eingebaut, startet ein yum update kernel* das Update. Hierbei wird der neue Kernel zusätzlich zum alten in die Grub-Konfiguration übernommen; geht etwas schief, kann immer noch der alte Kern gebootet werden.
- Nach einem Reboot steht das Appletalk-Protokoll bereit, ein modprobe appletalk als root sollte das Protokoll laden (lsmod zeigt die geladenen Module).
Netatalk-Installation
- Netatalk nutzt die Berkeley-DB und benätigt das Development-Paket. Vor der eigentlichen Installation muss diese also ergänzt werden:
yum install db4-devel
- Die Quellen liegen auf Sourceforge und lassen sich z.B. mit WGET herunterladen:
cd /tmp
wget http://downloads.sourceforge.net/project/netatalk/netatalk/2.0.5/netatalk-2.0.5.tar.gz?use_mirror=kent
- Kompilieren und Installieren geht nach dem üblichen Muster:
cd /usr/src
tar -xvzf /tmp/netatalk-2.0.5.tar.gz
cd netatalk*
./configure --enable-redhat --with-mutex="x86/gcc-assembly"
make | tee /tmp/netatalk_make.log
make install | tee /tmp/netatalk_make_install.log
Dies sollte ohne Fehlermeldungen durchlaufen, dies kann man in den durch tee erzeugten Logdateien später nachlesen.
- Die Installation kopiert die Dateien nach /usr/local und die Konfigurationsdateien nach /usr/local/etc/netatalk, dort genügt anfangs eine minimale Konfiguration:afpd.conf:
- -transall -uamlist uams_guest.so,uams_clrtxt.so,uams_dhx.so
AppleVolumes.default:
# die Tilde gibt die Home-Verzeichnisse der User frei !
~
/var/share "Austausch"
atalkd.conf:
eth0 -phase 2 -net 0-65534 -addr 65280.59
- Nun lohnt sich der Start von Netatalk:
/etc/init.d/atalk startStarting AppleTalk services:
Starting atalkd: [ OK ]
Registering myserver:Workstation: [ OK ]
Registering myserver:netatalk: [ OK ]
Starting cnid_metad: [ OK ]
Starting afpd: [ OK ]Der Start der einzelnen Prozesse dauert ein wenig, also Geduld !