Difference between revisions of "AFP"

From Amahi Wiki
Jump to: navigation, search
m (forgot a part)
m
Line 1: Line 1:
 
The Apple Filing Protocol (AFP) is a network protocol that offers file services for Mac OS X and original Mac OS.  
 
The Apple Filing Protocol (AFP) is a network protocol that offers file services for Mac OS X and original Mac OS.  
Avahi is an open source implementation of Bonjour or former Rendezvous wich advertises servers to MacosX
+
Avahi is an open source implementation of Bonjour or former Rendezvous wich advertises servers to MacOS X.
  
NOTE: THIS IS NOT MEANT FOR PEOPLE WHO DONT KNOW WHAT THEY ARE DOING
+
NOTE: THIS IS NOT MEANT FOR PEOPLE WHO DONT KNOW WHAT THEY ARE DOING.
  
 
== Installation of netatalk into Amahi ==
 
== Installation of netatalk into Amahi ==
Line 8: Line 8:
 
* Become root (sudo -s or su -)
 
* Become root (sudo -s or su -)
 
* yum -y install netatalk
 
* yum -y install netatalk
* edit afpd.conf <code>- -noddp -tcp -uamlist uams_randnum.so,uams_dhx.so,uams_dhx2.so -nosavepassword -advertise_ssh</code>  
+
* edit /etc/atalk/afpd.conf <code>- -noddp -tcp -uamlist uams_randnum.so,uams_dhx.so,uams_dhx2.so -nosavepassword -advertise_ssh</code>  
*edit netatalk.conf
+
*edit /etc/atalk/netatalk.conf <code>
<code>
+
ATALKD_RUN=no<br>
ATALKD_RUN=no
+
PAPD_RUN=no<br>
PAPD_RUN=no
+
CNID_METAD_RUN=yes<br>
CNID_METAD_RUN=yes
+
AFPD_RUN=yes<br>
AFPD_RUN=yes
+
TIMELORD_RUN=no<br>
TIMELORD_RUN=no
+
A2BOOT_RUN=no</code>  
A2BOOT_RUN=no
+
* Once the app is installed you can add the folders you wish to share over AFP by editing the /etc/atalk/Applevolumes.default file:<code>~/ "$u" allow:UserName rwlist:UserName,@users cnidscheme:cdb</code>
</code>  
 
* Once the app is installed you can add the folders you wish to share over AFP by editing the Applevolume.default
 
 
 
<code>~/ "$u" allow:UserName rwlist:UserName,@users cnidscheme:cdb</code>
 
  
 
Change UserName to your username, this will share your homefolder over afp
 
Change UserName to your username, this will share your homefolder over afp
Line 31: Line 27:
 
*add the afpd.service
 
*add the afpd.service
  
<code><?xml version="1.0" standalone='no'?><!--*-nxml-*-->
+
<code><?xml version="1.0" standalone='no'?><!--*-nxml-*--><br>
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
+
<!DOCTYPE service-group SYSTEM "avahi-service.dtd"><br>
<service-group>
+
<service-group><br>
<name replace-wildcards="yes">%h Xserve</name>
+
<name replace-wildcards="yes">%h Xserve</name><br>
<service>
+
<service><br>
<type>_afpovertcp._tcp</type>
+
<type>_afpovertcp._tcp</type><br>
<port>548</port>
+
<port>548</port><br>
</service>
+
</service><br>
<service>
+
<service><br>
<type>_device-info._tcp</type>
+
<type>_device-info._tcp</type><br>
<port>0</port>
+
<port>0</port><br>
<txt-record>model=Xserve</txt-record>
+
<txt-record>model=Xserve</txt-record><br>
</service>
+
</service><br>
 
</service-group></code>
 
</service-group></code>
  
Line 53: Line 49:
 
rfb.service for screensharing without chickenvnc
 
rfb.service for screensharing without chickenvnc
  
<code><?xml version="1.0" standalone='no'?><!--*-nxml-*-->
+
<code><?xml version="1.0" standalone='no'?><!--*-nxml-*--><br>
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
+
<!DOCTYPE service-group SYSTEM "avahi-service.dtd"><br>
<service-group>
+
<service-group><br>
<name replace-wildcards="yes">%h</name>
+
<name replace-wildcards="yes">%h</name><br>
<service>
+
<service><br>
<type>_rfb._tcp</type>
+
<type>_rfb._tcp</type><br>
<port>5900</port>
+
<port>5900</port><br>
</service>
+
</service><br>
</service-group>
+
</service-group></code>
</code>
 
  
 
samba.service so the bsod icon is replaced with a nice screen icon and is on the same server as vnc/screensharing
 
samba.service so the bsod icon is replaced with a nice screen icon and is on the same server as vnc/screensharing
  
<code><?xml version="1.0" standalone='no'?><!--*-nxml-*-->
+
<code><?xml version="1.0" standalone='no'?><!--*-nxml-*--><br>
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
+
<!DOCTYPE service-group SYSTEM "avahi-service.dtd"><br>
<service-group>
+
<service-group><br>
<name replace-wildcards="yes">%h</name>
+
<name replace-wildcards="yes">%h</name><br>
<service>
+
<service><br>
<type>_smb._tcp</type>
+
<type>_smb._tcp</type><br>
<port>139</port>
+
<port>139</port><br>
</service>
+
</service><br>
</service-group>
+
</service-group></code>
</code>
 
  
 
there is also a nfs.service but havent been able to get this to work on snow leopard
 
there is also a nfs.service but havent been able to get this to work on snow leopard
  
<code><?xml version="1.0" standalone='no'?>
+
<code><?xml version="1.0" standalone='no'?><br>
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
+
<!DOCTYPE service-group SYSTEM "avahi-service.dtd"><br>
<service-group>
+
<service-group><br>
<name replace-wildcards="yes">NFS Shares on %h</name> ## Display Name
+
<name replace-wildcards="yes">NFS Shares on %h</name><!-- Display Name --><br>
<service>
+
<service><br>
       <type>_nfs._tcp</type>
+
       <type>_nfs._tcp</type><br>
       <port>2049</port>
+
       <port>2049</port><br>
       <txt-record>path=/var/hda/files/music</txt-record> ## path to NFS mountpoint
+
       <txt-record>path=/var/hda/files/music</txt-record><!-- Path to NFS mountpoint --><br>
</service>
+
</service><br>
<service>
+
<service><br>
         <type>_nfs._tcp</type>
+
         <type>_nfs._tcp</type><br>
         <port>2049</port>
+
         <port>2049</port><br>
         <txt-record>path=/var/hda/files/movies</txt-record> ## path to NFS mountpoint
+
         <txt-record>path=/var/hda/files/movies</txt-record><!-- Path to NFS mountpoint --><br>
</service>
+
</service><br>
</service-group>
+
</service-group></code>
</code>
 
  
 
Thanks to this great [http://www.kremalicious.com/2008/06/ubuntu-as-mac-file-server-and-time-machine-volume/#netatalk2 tutorial] for ubuntu !!  
 
Thanks to this great [http://www.kremalicious.com/2008/06/ubuntu-as-mac-file-server-and-time-machine-volume/#netatalk2 tutorial] for ubuntu !!  
Line 100: Line 93:
 
*Add mdns at the end of this line in /etc/nsswitch.conf
 
*Add mdns at the end of this line in /etc/nsswitch.conf
 
hosts: files dns mdns
 
hosts: files dns mdns
 
  
 
*Starting and stopping AFP and Avahi :  
 
*Starting and stopping AFP and Avahi :  
Line 109: Line 101:
 
== TODO ==
 
== TODO ==
  
Integrate AFP and avahi with the Shares tab of the WebUI just as tightly as Samba is
+
Integrate AFP and avahi with the Shares tab of the WebUI just as tightly as Samba is.

Revision as of 15:34, 26 January 2010

The Apple Filing Protocol (AFP) is a network protocol that offers file services for Mac OS X and original Mac OS. Avahi is an open source implementation of Bonjour or former Rendezvous wich advertises servers to MacOS X.

NOTE: THIS IS NOT MEANT FOR PEOPLE WHO DONT KNOW WHAT THEY ARE DOING.

Installation of netatalk into Amahi

  • Open a terminal either on the desktop or SSH
  • Become root (sudo -s or su -)
  • yum -y install netatalk
  • edit /etc/atalk/afpd.conf - -noddp -tcp -uamlist uams_randnum.so,uams_dhx.so,uams_dhx2.so -nosavepassword -advertise_ssh
  • edit /etc/atalk/netatalk.conf

ATALKD_RUN=no
PAPD_RUN=no
CNID_METAD_RUN=yes
AFPD_RUN=yes
TIMELORD_RUN=no
A2BOOT_RUN=no

  • Once the app is installed you can add the folders you wish to share over AFP by editing the /etc/atalk/Applevolumes.default file:~/ "$u" allow:UserName rwlist:UserName,@users cnidscheme:cdb

Change UserName to your username, this will share your homefolder over afp

Installation of avahi into Amahi

  • Open a terminal either on the desktop or SSH
  • Become root (sudo -s or su -)
  • yum -y install avahi
  • go to /etc/avahi/services/
  • add the afpd.service

<?xml version="1.0" standalone='no'?>
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<service-group>
<name replace-wildcards="yes">%h Xserve</name>
<service>
<type>_afpovertcp._tcp</type>
<port>548</port>
</service>
<service>
<type>_device-info._tcp</type>
<port>0</port>
<txt-record>model=Xserve</txt-record>
</service>
</service-group>

%h Xserve can be changed to your server name (not the same as your samba server!) model=Xserve can be changed to get a different icon for your server to PowerBook, PowerMac, Macmini, iMac, MacBook, MacBookPro, MacBookAir, MacPro, AppleTV1,1, AirPort

  • Additionally you can make avahi advertise other services on your mac

rfb.service for screensharing without chickenvnc

<?xml version="1.0" standalone='no'?>
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<service-group>
<name replace-wildcards="yes">%h</name>
<service>
<type>_rfb._tcp</type>
<port>5900</port>
</service>
</service-group>

samba.service so the bsod icon is replaced with a nice screen icon and is on the same server as vnc/screensharing

<?xml version="1.0" standalone='no'?>
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<service-group>
<name replace-wildcards="yes">%h</name>
<service>
<type>_smb._tcp</type>
<port>139</port>
</service>
</service-group>

there is also a nfs.service but havent been able to get this to work on snow leopard

<?xml version="1.0" standalone='no'?>
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<service-group>
<name replace-wildcards="yes">NFS Shares on %h</name>
<service>

      <type>_nfs._tcp</type>
<port>2049</port>
<txt-record>path=/var/hda/files/music</txt-record>

</service>
<service>

       <type>_nfs._tcp</type>
<port>2049</port>
<txt-record>path=/var/hda/files/movies</txt-record>

</service>
</service-group>

Thanks to this great tutorial for ubuntu !!

  • Add mdns at the end of this line in /etc/nsswitch.conf

hosts: files dns mdns

  • Starting and stopping AFP and Avahi :

service atalk (start stop restart) service avahi-daemon (start stop restart)


TODO

Integrate AFP and avahi with the Shares tab of the WebUI just as tightly as Samba is.