Content deleted Content added
→Features: tidy up ref |
Add link to 'File-system permissions' article. Replace presumed attempt at humour with more technical term. (If 'flock' is genuinely jargon specific to this technology, it should be properly introduced and explained rather than expecting the reader to infer its meaning and usage.) |
||
(27 intermediate revisions by 21 users not shown) | |||
Line 1:
{{Short description|File system for computers}}{{Distinguish||text=the [[Apple File System]], also abbreviated AFS}}
The '''Andrew File System''' ('''AFS''') is a [[distributed file system]] which uses a set of trusted servers to present a homogeneous, ___location-transparent file name space to all the client workstations. It was developed by [[Carnegie Mellon University]] as part of the [[Andrew Project]].<ref>[http://www.cmu.edu/corporate/news/2007/features/andrew/what_is_andrew.shtml What is Andrew] {{webarchive |url=https://web.archive.org/web/20110909232809/http://www.cmu.edu/corporate/news/2007/features/andrew/what_is_andrew.shtml |date=September 9, 2011 }} - part of CMU's official site chronicling the history of the [[Andrew Project]].</ref> Originally named "Vice",<ref name="garfinkel19890506">{{cite news | url=http://simson.net/clips/1989/1989.TechRev.Athena.pdf | title=Ripples Across the Academic Market | work=Technology Review | date=May–June 1989 | accessdate=25 January 2016 | author=Garfinkel, Simson L. | author-link=Simson Garfinkel | pages=9–13}}</ref> AFS is named after [[Andrew Carnegie]] and [[Andrew W. Mellon|Andrew Mellon]]. Its primary use is in [[distributed computing]].▼
▲The '''Andrew File System''' ('''AFS''') is a [[distributed file system]] which uses a set of trusted servers to present a homogeneous, ___location-transparent file name space to all the client workstations. It was developed by [[Carnegie Mellon University]] as part of the [[Andrew Project]].<ref>[http://www.cmu.edu/corporate/news/2007/features/andrew/what_is_andrew.shtml What is Andrew] {{webarchive |url=https://web.archive.org/web/20110909232809/http://www.cmu.edu/corporate/news/2007/features/andrew/what_is_andrew.shtml |date=September 9, 2011 }} - part of CMU's official site chronicling the history of the [[Andrew Project]].</ref> Originally named "Vice",<ref name="garfinkel19890506">{{cite news | url=http://simson.net/clips/1989/1989.TechRev.Athena.pdf | title=Ripples Across the Academic Market | work=Technology Review | date=May–June 1989 |
== Features ==
AFS<ref>{{cite journal|author =Howard, J.H.|author2 =Kazar, M.L.|author3 =Nichols, S.G.|author4 =Nichols, D.A.|author5 =Satyanarayanan, M.|author6 =Sidebotham, R.N.|author7 =West, M.J.|
AFS uses the [[
|publisher = Amazon
|author = Yaniv Pessach
Line 14 ⟶ 16:
}}</ref> Read and write operations on an open file are directed only to the locally cached copy. When a modified file is closed, the changed portions are copied back to the file server. Cache consistency is maintained by [[Callback (computer science)|callback]] mechanism. When a file is cached, the server makes a note of this and promises to inform the client if the file is updated by someone else. Callbacks are discarded and must be re-established after any client, server, or network failure, including a timeout. Re-establishing a callback involves a status check and does not require re-reading the file itself.
A consequence of the [[file locking]] strategy is that AFS does not support large shared databases or record updating within files shared between client systems. This was a deliberate design decision based on the perceived needs of the university computing environment. For example, in the original email system for the Andrew Project, the Andrew Message System, a single file per message is used, like [[maildir]], rather than a single file per mailbox, like [[mbox]]. See [[file locking#
A significant feature of AFS is the [[Volume (computing)|volume]], a tree of files, sub-directories and AFS [[mount (computing)|mountpoints]] (links to other AFS volumes). Volumes are created by administrators and linked at a specific named path in an AFS cell. Once created, users of the filesystem may create directories and
Line 23 ⟶ 25:
The file name space on an Andrew workstation is partitioned into a ''shared'' and ''local'' name space. The shared name space (usually mounted as /afs on the Unix filesystem) is identical on all workstations. The local name space is unique to each workstation. It only contains temporary files needed for workstation initialization and symbolic links to files in the shared name space.
The Andrew File System heavily influenced Version 4 of [[Sun Microsystems]]' popular [[Network File System (protocol)|Network File System]] (NFS). Additionally, a variant of AFS, the [[DCE
== Implementations ==
Arla was an independent implementation of AFS developed at the [[Royal Institute of Technology]] in [[Stockholm]] in the late 1990s and early 2000s.<ref>{{Cite journal |title= Arla-a free AFS client |journal= Proceedings of the 1998 USENIX, Freenix Track |date= 1998 |author= Assar Westerlund and Johan Danielsson <!-- seems citeseer only? |doi= 10.1.1.16.1360--> |citeseerx= 10.1.1.16.1360 }}</ref><ref>{{Cite journal |title= Porting the Arla file system to Windows NT |journal= Workshop on Management and Administration of Distributed Environments |date= 2000 |author= Magnus Ahltorp, Love Hörnquist-Åstrand and Assar Westerlund <!-- seems citeseer only? |doi= 10.1.1.512.9570 --> |citeseerx= 10.1.1.512.9570 }}</ref>
A fourth implementation of an AFS client exists in the [[Linux kernel]] [[source code]] since at least version 2.6.10.<ref>[https://archive.today/20120710092252/http://lxr.linux.no/source/Documentation/filesystems/afs.txt?v=2.6.10 Linux kernel AFS documentation for 2.6.10]</ref> Committed by [[Red Hat]], this is a fairly simple implementation still
== Available permissions ==
Line 49 ⟶ 52:
:allows a user to look at the contents of files in a directory and list files in subdirectories. Files that are to be granted read access to any user, including the owner, need to have the standard UNIX "owner read" permission set.
;Write (w)
:allows a user to modify files in a directory. Files that are to be granted write access to any user, including the owner, need to have the standard UNIX "owner write" [[File-system permissions|permission set]].
;Lock (k)
:allows the processor to run programs that need to
Additionally, AFS includes Application ACLs (A)-(H) which have no effect on access to files.
Line 66 ⟶ 69:
== Further reading ==
* [http://pages.cs.wisc.edu/~remzi/OSTEP/dist-afs.pdf The Andrew File System (2014), Arpaci-Dusseau, Remzi H.; Arpaci-Dusseau, Andrea C.; Arpaci-Dusseau Books]
{{File systems}}
{{Authority control}}
[[Category:Network file systems]]
|