Netatalk

From Wikipedia, the free encyclopedia
Netatalk
Developer(s)Netatalk Team
Initial release1990; 33 years ago (1990)
Stable release
3.13.1.14 / January 10, 2023; 19 days ago (2023-01-10)
2.22.2.7 / January 10, 2023; 19 days ago (2023-01-10)
Repositorygithub.com/Netatalk/Netatalk
Operating systemPOSIX-compliant *NIX/*BSD systems
TypeRemote Access
License2001: GPL-2.0-or-later[a]
1990: Other permissive licenses[1]
Websitenetatalk.sourceforge.io

Netatalk (pronounced "ned-talk")[2] is a free, open-source implementation of the Apple Filing Protocol (AFP). It allows Unix-like operating systems to serve as file server for Macintosh computers running macOS or Classic Mac OS.

Netatalk was originally developed by the Research Systems Unix Group at the University of Michigan for BSD-derived Unix systems[3] and released in 1990. Apple had introduced AppleTalk soon after the release of the original Macintosh in 1985, followed by the file sharing application AppleShare (which was build on top of AFP) in 1987. This was an early example of zero-configuration networking, gaining significant adoption in educational and small to mid size office environments in the late 80s. Netatalk emerged as a part of the software ecosystem around AppleTalk.

In 1986 Columbia University published the Columbia AppleTalk Package (CAP), which was an open source implementation of AppleTalk originally written for BSD 4.2, allowing Unix servers to be part of AppleTalk networks.[4] CAP also had its own implementation of AFP/AppleShare, but Netatalk appearing in 1990 claimed better performance due to software design advantages.[5] CAP and Netatalk were also interoperable, the latter being able to be run on an AppleTalk backend provided by CAP.

As part of transitioning the software into an open source community project, the codebase was moved to SourceForge for revision control in July 2000, then re-licensed under the terms of the GNU General Public License with version 1.5pre7 in August 2001.[6]

Since Classic Mac OS used a forked file system, unlike the host operating systems where Netatalk would be running, Netatalk originally implemented the AppleDouble format for storing the resource fork separately from the data fork when a Mac OS file was transferred to the Unix-like computer's file system. This was required in order not to ruin most files by discarding the resource fork when copied to the Netatalk served AppleShare volume. With the release of Netatalk 3.0, the backend was re-implemented to use the Extended Attributes format that Apple had introduced with Mac OS X for backwards compatibility with Classic Mac OS resource forks.

Development History[edit]

The original developer of Netatalk was Wesley Craig at the University of Michigan. In 1997 Adrian Sun created a popular fork, coding the initial implementation of the then-new AppleShare IP (AFP over TCP/IP) network layer.[7] By the time the project started transitioning into an open source model in 2000, the "ASUN" fork had been merged back into Netatalk proper.

In October 2004 Netatalk 2.0 was released, which brought major improvements, including: support for Apple Filing Protocol version 3.1 (providing long UTF-8 filenames, file sizes > 2 gigabytes, full Mac OS X compatibility), CUPS integration, Kerberos V support allowing true "single sign-on", reliable and persistent storage of file and directory IDs and countless bug fixes compared to previous versions.

Since version 2.0.5, Netatalk supports the use of Time Machine over a network in a similar fashion to Apple's own Time Capsule. Starting with version 2.2, Netatalk supports AFP protocol level 3.3, which is inter-operable with all subsequent OS versions through at least macOS Ventura (13.1).

Up until version 2.2, Netatalk implemented the AppleTalk (DDP) protocol suite, allowing Unix-like operating systems to serve also as print (PAP via a CUPS backend) and time (Timelord)[8] servers for Macintosh computers. In addition, networked Apple IIe and Apple IIGS computers can be netbooted from a Netatalk shared volume. In fact, this version contains an entire suite of tools for inspecting and manipulating AppleTalk networks, as well as reading and writing files in Macintosh formats on a Unix-like operating system. For this reason, version 2.2 is still being actively developed and new versions released.

Version 3.0 of Netatalk was released in July 2012 and added ini style configuration, Mac OS X compatible Extended Attributes as default, and removed AppleTalk networking support. The latest version supports the AFP level 3.4, introduced in OS X Mountain Lion.

Currently Netatalk supports the FreeBSD, Linux, OpenBSD, NetBSD, Solaris and OpenSolaris operating systems.

Enterprise Deployments[edit]

In 2010, a company called NetAFP run by a group of Netatalk maintainers started providing commercial support for enterprise deployments of Netatalk.[9] The company merged with SerNet in December 2013, signaling the end of commercial support for Netatalk in favor of Samba which Apple had made the primary file sharing protocol with the release of Mac OS X Mavericks that same year.[10] The NetAFP website was shut down in early 2022.

[edit]

Netatalk Logo, captured from the University of Michigan's website in 2000

While a project at the University of Michigan, Netatalk's logo was the head of the BSD Daemon on a daisy chained serving tray, mimicking the icon design language that Apple used for AppleTalk and AppleShare in Classic Mac OS.[11]

Coinciding with the release of Netatalk 2.0, the logo was stylized into the Daemon head silhouette with overlaid networking cables logo that the project is presently using.[12]

See also[edit]

Notes[edit]

  1. ^ GPL-2.0-or-later since 2001-08-28, version 1.5pre7

References[edit]

  1. ^ https://github.com/Netatalk/Netatalk/blob/master/COPYRIGHT
  2. ^ "Netatalk FAQ". Research Systems Unix Group. The University of Michigan. 19 February 1996. Archived from the original on 23 December 1996. Retrieved 11 January 2023. How do I pronouce netatalk? Ah, good question! The unenlightened often mis-pronounce this word \'net-'a-to.k\. The correct pronouciation is \'ned-*-to.k\ (the 't' is soft, like d, and the first 'a' is a schwa).
  3. ^ https://web.archive.org/web/20070127103530/http://netatalk.sourceforge.net/
  4. ^ https://github.com/mabam/CAP/blob/master/README
  5. ^ https://web.archive.org/web/20011126202953/http://www.umich.edu/~rsug/netatalk/faq.html#1.8
  6. ^ "Netatalk-devel Mailing List". SourceForge. SourceForge. 28 August 2001. Retrieved 11 January 2023. As of 1.5pre7, netatalk is now being distributed under the GNU Public License (GPL). Versions up to 1.5pre7 can still be modified under the BSD License, and all terms of the BSD License that do not conflict with the GPL are still in force.
  7. ^ Bill McGonigle (2 March 2001). "Netatalk Faq-O-Matic". Netatalk Faq-O-Matic. Archived from the original on 2 March 2001. Retrieved 12 January 2023. Over the past couple years Adrian Sun has pretty much taken over the application development and has added a slew of new features, including AFP over TCP and bug fixes.
  8. ^ "Mac Time Client/Server". The University of Melbourne. The University of Melbourne. 19 February 1996. Archived from the original on 14 February 1997. Retrieved 12 January 2023. The tardis/Timelord package allows the Macintosh time to be set over an AppleTalk network from a Macintosh or UNIX/CAP based time server.
  9. ^ "NetAFP Netatalk Support". NetAFP. 15 August 2010. Archived from the original on 15 August 2010. Retrieved 11 January 2023.
  10. ^ Ralph Böhme (11 December 2013). "SerNet expands Apple Support – NetAFP joins SerNet". SerNet. SerNet Service Network GmbH. Retrieved 11 January 2023. SerNet is joined by Ralph Böhme from NetAFP to further strengthen the SAMBA team. Böhme is the main developer of Netatalk, a free AFP implementation for Linux servers. [...] "Many users and manufacturers use Netatalk as Linux servers for Apple clients. Over the next two years, they need to migrate to SMB," says Ralph Böhme.
  11. ^ https://web.archive.org/web/20190314055621/http://rsug.itd.umich.edu/software/netatalk.html
  12. ^ https://web.archive.org/web/20040825081434/http://netatalk.sourceforge.net/

External links[edit]