(no commit message)
[wiki.git] / doc / afs-and-you.html
index f470f8366c058d888d9795088b8afb724076469f..1bf75b259b68590e09d1344fb046107e4457c0f6 100644 (file)
@@ -1,4 +1,4 @@
-
+[[!meta title="AFS and You"]]
 
 <div style="float: right; font-size: 0.8em; background-color: #D0D0D0; margin: 1em;">
        <ol>
@@ -19,7 +19,7 @@
                        </ol>
                <li><a href="#Troubleshooting">Troubleshooting</a>
                        <ol>
-                               <li><a href="#ImtryingtoaccessmyfilesfslasaysIshouldhavepermissionsherebutitstillsays:Permissiondenied">I'm trying to access my files, <tt>fs la</tt> says I should have permissions  &hellip;</a></li>
+                               <li><a href="#ImtryingtoaccessmyfilesfslasaysIshouldhavepermissionsherebutitstillsays">I'm trying to access my files, <tt>fs listacl</tt> says I should have permissions  &hellip;</a></li>
                                <li><a href="#IdreallypreferthatnoteveryonecouldlistmyfileshowshouldIstopthis">I'd really prefer that not everyone could list my files, how should I stop  &hellip;</a></li>
                                <li><a href="#Itwasaround6amonaSundaymorningandsuddenlyIcouldntaccessmyfiles">It was around 6am on a Sunday morning and suddenly I couldn't access my  &hellip;</a></li>
                                <li><a href="#ItisntSundayandIcantgettomyfiles">It isn't Sunday and I can't get to my files</a></li>
@@ -28,6 +28,8 @@
                        <ol>
                                <li><a href="#PuttingSoftwareinaLocker">Putting Software in a Locker</a></li>
                                <li><a href="#Acquiringanewlocker">Acquiring a new locker</a></li>
+                               <li><a href="#Findouttechnicalinformationaboutmylocker">Find out technical 
+                               information about my locker</h2></li>
                        </ol>
                <li><a href="#SeeAlso">See Also</a></li>
        </ol>
@@ -41,30 +43,30 @@ Credit goes to them, blame goes to him.
 </p>
 <h2 id="WhatisAFS">What is AFS?</h2>
 <p>
-The <strong>Andrew File System</strong> or <strong>AFS</strong> is a distributed network file system invented at <a href="http://www.cmu.edu/index.shtml">Carnegie Mellon University</a> as part of Project Andrew (approximately their equivalent of MIT's Project Athena). More importantly, it is the file system used to store most files on Athena today. This includes your personal home directory, the data and websites of many living groups and student groups on campus, and probably some of the software you run (if you ever use Athena clusters). (Though all user directories were migrated from NFS in the summer of 1992, some files probably still remain on NFS and, of course, various file systems are used on personal computers and servers.)
+<strong>AFS</strong> (previously the <strong>Andrew File System</strong> or ) is a distributed network file system invented at <a href="https://www.cmu.edu/index.shtml">Carnegie Mellon University</a> as part of Project Andrew (approximately their equivalent of MIT's Project Athena). More importantly, it is the file system used to store most files on Athena today. This includes your personal home directory, the data and websites of many living groups and student groups on campus, and probably some of the software you run (if you ever use Athena clusters). (Though most user directories were migrated from NFS in the summer of 1992, some files still remain on NFS and, of course, various file systems are used on personal computers and servers.)
 
 </p>
 <p>
 <strong><i>In Short: AFS is probably where some of the files you care about live</i></strong>
 </p>
 <p>
-For the most part, using AFS, particularly at MIT, is well-hidden and can be used like any other UNIX file system. For some things, you will need to know a bit more. Let's start by defining some terms.
+For the most part, using AFS, particularly at MIT, is well-abstracted; For most tasks, it can be used like any other UNIX file system. For a few, you will need to know a bit more. Let's start by defining some terms.
 </p>
 <h2 id="SomeMITAFSterminology">Some MIT/AFS terminology</h2>
 <dl><dt><strong>locker</strong></dt><dd>
-For practical purposes, a folder. Probably the what you'll care about most of the time. Technically any directory mountable under /mit, regardless of how its stored. Today, most lockers lockers are stored in AFS.
+For practical purposes, a folder. Probably what you'll care about most of the time. Technically any directory with a hesiod FILSYS entry, regardless of how its stored. Most lockers, however, are stored in AFS and are usually accessed as directories in /mit.
 </dd></dl>
 <dl><dt><strong>tokens</strong></dt><dd>
-Essentially proof to the AFS servers that you are who you say you are, thus allowing you to access files you are supposed to. Analogous to Kerberos tickets
+Proof to the AFS servers that you are who you say you are, thus allowing you to access files you are supposed to. Technically, a special type of Kerberos ticket
 
 </dd></dl>
 <dl><dt><strong>cell</strong></dt><dd>
-AFS concept of an "administrative domain of authority." Each cell has its own set of users, groups, and administrators. Analogous to a Kerberos realm. Each top-level directory in /afs corresponds to a cell. The cells you are most likely to care about are <tt>athena.mit.edu</tt> and <tt>sipb.mit.edu</tt>.
+AFS concept of an "administrative domain of authority." Each cell has its own set of users, groups, and administrators. Analogous to a Kerberos realm. Each top-level directory in /afs generally corresponds to a cell. The cells you are most likely to care about are <tt>athena.mit.edu</tt> and <tt>sipb.mit.edu</tt>.
 </dd></dl>
 <h2 id="TheBasics">The Basics</h2>
 <h2 id="TheLayoutofaTypicalMITLocker">The Layout of a Typical MIT Locker</h2>
 <p>
-Every Athena user has a locker (their home directory), which mounts at <tt>/mit/&lt;username&gt;</tt>. From a technical standpoint, it is stored in the volume <tt>user.&lt;username&gt;</tt> which is located at <tt>/afs/athena.mit.edu/user/&lt;first letter&gt;/&lt;second letter&gt;/&lt;user name&gt;</tt>. For example, the user <tt>joeuser</tt> has a home directory that mounts at <tt>/mit/joeuser</tt>, is volume <tt>user.joeuser</tt>, and is accessible at <tt>/afs/user/j/o/joeuser</tt>. Lockers for projects, software, classes, living groups, and student groups are all mounted at <tt>/mit/&lt;lockername&gt;</tt> and stored at various places in AFS.
+Every Athena user has a locker (their home directory), which mounts at <tt>/mit/&lt;username&gt;</tt>. From a technical standpoint, it is (almost always) stored in the volume <tt>user.&lt;username&gt;</tt> which is located at <tt>/afs/athena.mit.edu/user/&lt;first letter&gt;/&lt;second letter&gt;/&lt;user name&gt;</tt>. For example, the user <tt>joeuser</tt> has a home directory that mounts at <tt>/mit/joeuser</tt>, is volume <tt>user.joeuser</tt>, and is accessible at <tt>/afs/athena.mit.edu/user/j/o/joeuser</tt>. Lockers for projects, software, classes, living groups, and student groups are all mounted at <tt>/mit/&lt;lockername&gt;</tt> and stored in various places in AFS.
 
 </p>
 <p>
@@ -73,33 +75,35 @@ Within each locker, there are (by default) 4 special subdirectories you want to
 <dl><dt><strong><tt>Public</tt></strong></dt><dd>
 By default, this directory can be read by everyone (and I do mean EVERYONE!), so put files here you want to share with the entire world.
 </dd><dt><strong><tt>Private</tt></strong></dt><dd>
-By default, this directory can only be read and can only be <i>listed</i> by you (from AFS, not from web) whereas the files in other directories can (by default) only be read by you, but can be listed by anyone. This means that other people can't see the contents of your files, but they can see what files you have outside of <tt>Private</tt> 
+By default, this directory can only be read and can only be <i>listed</i> by you (from AFS, not from web) whereas the files in other directories can (by default) only be read by you, but can be listed by anyone. This means that other people can't see the contents of your files, but they can see the names of the files you have outside of <tt>Private</tt> 
 </dd><dt><strong><tt>OldFiles</tt></strong></dt><dd>
 
-This folder is a link to a read-only copy of a backup of your files (created nightly at 3 a.m.). This copy cannot be edited and does not count towards the locker's quota. (From a technical standpoint, this is a separate volume, user.&lt;username&gt;.backup and is stored only as changes against the current copy.)
+This folder is a link to a read-only copy of a backup of your files (created nightly around 3 a.m.). This copy cannot be edited and does not count against the locker's quota. From a technical standpoint, this is a separate volume with .backup appended (e.g. user.&lt;username&gt;.backup ) and is stored only as changes against the current copy.
 </dd><dt><strong><tt>www</tt></strong></dt><dd>
-Where you should put a website, if you want one. There is very little special about this directory from an AFS standpoint, but it is world-readable (like Public) and is linked directly to <tt>http://www.mit.edu/~&lt;lockername&gt;</tt> as well as <tt>http://web.mit.edu/&lt;lockername&gt;</tt>.
+Where you should put a website, if you want one. There is very little special about this directory from an AFS standpoint, but it is world-readable (like Public) and is linked directly to <tt>https://www.mit.edu/~&lt;lockername&gt;</tt> as well as <tt>https://web.mit.edu/&lt;lockername&gt;/www/</tt>.
 </dd></dl>
 <h2 id="AccessingLockers">Accessing Lockers</h2>
 <h3 id="FromAthena">From Athena</h3>
 
 <p>
-On Athena, you can access a locker either as its full AFS path, if you know it (e.g. <tt>/afs/athena.mit.edu/course/6/6.01</tt>), or under <tt>/mit</tt> if it is "attached." Yet a third way is to use tilde expansion and simply <tt> cd ~~&lt;locker&gt; </tt> (e.g. <tt>cd ~~6.01</tt>) which will take you to the full path. Often, however, you want to attach lockers because it is easier to refer to them outside of the shell (in a script, for example) and software is set up to run with a path under <tt>/mit</tt>. There are a few ways to attach a locker: 
+On Athena, you can access a locker either as its full AFS path, if you know it (e.g. <tt>/afs/athena.mit.edu/course/6/6.01</tt>), or under <tt>/mit</tt> if it is "attached." Though you can always use the full path, you often want to attach lockers because it is easier to refer to them and software is set up to run with a path under <tt>/mit</tt>. There are a few ways to attach a locker: 
 
 </p>
-<ul><li>If you are running on a <a href="http://debathena.mit.edu">Debathena</a> machine, such as <a href="http://linerva.mit.edu">linerva.mit.edu</a>, then simply <tt>cd /mit/&lt;locker&gt;</tt> and it will be auto-attached.
+<ul><li>If you are running on a <a href="https://debathena.mit.edu">Debathena</a> machine, such as <a href="http://linerva.mit.edu">linerva.mit.edu</a>, then simply <tt>cd /mit/&lt;locker&gt;</tt> and it will be auto-attached.
 </li><li>If you are on another Athena machine and don't want to run software out of the locker, than simply type <tt>attach &lt;locker&gt;</tt> and then <tt>cd</tt> to it.
 
-</li><li>If, however, you want to use software in the locker, you will be better served by running <tt>add &lt;locker&gt;</tt> (e.g. <tt>add ruby-lang</tt>). This will attach the locker at <tt>/mit/&lt;locker&gt;</tt> and will add the <tt>bin</tt> directory (for your architecture) of that locker to your PATH. What this means is that you should be able to run any program located in that locker by simply typing the name of the program at the command line.
+</li><li>If, however, you want to use software in the locker, you will be better served by running <tt>add &lt;locker&gt;</tt> (e.g. <tt>add ruby-lang</tt>). This will attach the locker at <tt>/mit/&lt;locker&gt;</tt> and will add the <tt>bin</tt> directory (for your architecture) of that locker to your PATH and the <tt>man</tt> directory to your MANPATH. What this means is that you should be able to run any program located in that locker by simply typing the name of the program at the command line.
 <ul><li>If you frequently use the same locker, it may be helpful for you to add the <tt>add &lt;locker&gt;</tt> command to your <tt>.environment</tt> file. To do this simply from the Athena command line, type <tt>echo "add lockername" &gt; ~/.environment</tt> or <tt>echo "add lockername &gt;&gt; ~/.environment</tt>.
 
 </li></ul></li></ul><h3 id="FromtheWeb">From the Web</h3>
 <p>
-Generally any locker that you would access on Athena as <tt>/mit/&lt;locker&gt;</tt> is accessible on the web as <tt>http://web.mit.edu/&lt;locker&gt;</tt>. For example, the barnowl locker is at <a href="http://web.mit.edu/barnowl">http://web.mit.edu/barnowl</a>. As you can see, if there is no index.html (see below), the files in the directory are listed. By default, however, none of the contents are readable except in the <tt>www</tt> and <tt>Public</tt> folders.
+Generally any locker that you would access on Athena as <tt>/mit/&lt;locker&gt;</tt> is accessible on the web as <tt>https://web.mit.edu/&lt;locker&gt;</tt>. For example, the barnowl locker is at <a href="https://web.mit.edu/barnowl">https://web.mit.edu/barnowl</a>. As you can see, if there is no index.html (see below), the files in the directory are listed. By default, however, none of the contents are readable except in the <tt>www</tt> and <tt>Public</tt> folders.
 
 </p>
 <p>
-Also, you may access something in one of the MIT AFS cells by taking its full AFS path after web.mit.edu (<a href="http://web.mit.edu/afs/athena.mit.edu/activity/c/chess-club">http://web.mit.edu/afs/athena.mit.edu/activity/c/chess-club</a>). (That link also shows that if you have a text file named README readable, as a link to Public/README for example, its contents will be displayed below the directory listing).
+Also, you may access something in one of the MIT AFS cells by typing its full AFS path after web.mit.edu (<a href="https://web.mit.edu/afs/athena.mit.edu/activity/c/chess-club">https://web.mit.edu/afs/athena.mit.edu/activity/c/chess-club</a>). (That link also shows that if you have a text file named README readable, as a link to Public/README for example, its contents will be displayed below the directory listing).
+
+Note that when accessed from web.mit.edu (or www.mit.edu), only static files may be shown. If you are interested in serving dynamic content (such as a blog or wiki using PHP, Perl, Python, Ruby, etc.), you should check out SIPB's Scripts dynamic web service. See <a href="https://scripts.mit.edu">https://scripts.mit.edu</a> for more information.
 </p>
 <h2 id="CheckingQuota">Checking Quota</h2>
 <p>
@@ -115,13 +119,13 @@ If this information is good enough for you, then you are done. If not, read on.
 <h2 id="CommonTasks">Common Tasks</h2>
 <h2 id="ControllingWhocanAccessFiles">Controlling Who can Access Files</h2>
 <p>
-You may be familiar with Unix permissions. Sad to say, but that knowledge is basically useless here. Whereas Unix permissions, are per-file, AFS permissions are controlled by <strong>Access Control List</strong>s (<strong>ACL</strong>s) on a per-directory basis. 
+You may be familiar with Unix permissions. Sad to say, but that knowledge is more or less useless here. While Unix permissions are per-file, AFS permissions are controlled by <strong>Access Control List</strong>s (<strong>ACL</strong>s) on a per-directory basis. (AFS does however, attend to the e<stong>x</strong>ecute Unix permission on a file. )
 </p>
 <p>
-To view the ACL for a given directory (where you have permission to do so), run <tt>fs listacl</tt> or <tt>fs la</tt>, for short. For a typical user locker, the ACL in the top level will look like this 
+To view the ACL for a given directory (where you have permission to do so), run <tt>fs listacl</tt>, or <tt>fs la</tt> for short. For a typical user locker, the ACL in the top level will look like this 
 
 </p>
-<pre>user@host:~$ fs la
+<pre>user@host:~$ fs listacl
 Access list for . is
 Normal rights:
   system:expunge ld
@@ -131,23 +135,24 @@ Normal rights:
 This is a list of users or <a href="#CreatinganAFSGroup">AFS groups</a> and their permissions in this directory (and subdirectories that don't have their own ACL modifications). In AFS there are seven permissions as follows
 </p>
 <blockquote>
-<table>
+<table style="align: center;">
 <tr><td><strong>r</strong></td><td>  read   </td><td>   user or members of group can read files in the directory    (i.e. see the contents of files)                  
-</td></tr><tr><td><strong>l</strong></td><td>  list   </td><td>   user or members of group can list files in the directory    (i.e. see the names of files)                     
+</td></tr><tr><td><strong>l</strong></td><td>  list   </td><td>   user or members of group can list files in the directory (i.e. see the names of files), they can also list the permissions of the directory.                   
 
 </td></tr><tr><td><strong>i</strong></td><td>  insert </td><td>   user or members of group can create files (or subdirectories) in the directory                                
 </td></tr><tr><td><strong>d</strong></td><td>  delete </td><td>   user or members of group can delete files in the directory                                                    
 </td></tr><tr><td><strong>w</strong></td><td>  write  </td><td>   user or members of group can modify files in the directory  (i.e. change the contents of files)               
 </td></tr><tr><td><strong>k</strong></td><td>  lock   </td><td>   user or members of group can lock files in the directory   (you will likely never use this)                   
 
-</td></tr><tr><td><strong>a</strong></td><td>  admin  </td><td>   user or members of group can see and change permissions. It does <strong>not</strong> affect pre-existing subdirectories.
-</td></tr></table>
+</td></tr><tr><td><strong>a</strong></td><td>  admin  </td><td>   user or members of group can change permissions of this directory (though not existing subdirectories, unless they have the <strong>a</strong> permission in those too. They will have admin powers in newly created subdirectories.)
+</td></tr>
+<tr><td><strong>A</strong>,<strong>B</strong>,&hellip;,<strong>H</strong></td><td>site-specific</td><td>Site-specific permissions that are meaningless to AFS but may be used by other software (or special versions of AFS).</td></tr></table>
 </blockquote>
 <p>
 To add a user or group to the ACL for a given directory simply run <tt>fs setacl</tt> or <tt>fs sa</tt> as follows:
 
 </p>
-<pre>fs sa &lt;directory&gt; &lt;user or group&gt; &lt;permissions&gt;
+<pre>fs setacl -dir &lt;directory&gt; [&lt;directory&gt;]* -acl &lt;user or group&gt; &lt;permissions&gt; [&lt;user or group&gt; &lt;permissions&gt;]*
 </pre><dl><dt><tt>&lt;directory&gt;</tt></dt><dd>
 can be an absolute or relative path, usually you will want <tt>.</tt>
 </dd><dt><tt>&lt;user or group&gt;</tt></dt><dd>
@@ -161,10 +166,11 @@ can be a string of the above letters (in any order) or any of the words <tt>read
 For example, if <tt>user</tt> wants his friends <tt>sipbtest</tt> and <tt>jarandom</tt> to be able to read and write files and anyone to be able to read files in his <tt>awesome_project</tt> directory, he might have a session that looks like this
 </p>
 <pre>user@host:~$ cd awesome_project/
-user@host:~/awesome_project$ fs sa . system:anyuser read
-user@host:~/awesome_project$ fs sa . jarandom write
-user@host:~/awesome_project$ fs sa . sipbtest write
-user@host:~/awesome_project$ fs la
+user@host:~/awesome_project$ fs setacl -dir . -acl system:anyuser read
+user@host:~/awesome_project$ fs setacl -dir . -acl jarandom write
+user@host:~/awesome_project$ fs setacl -dir . -acl sipbtest write
+user@host:~/awesome_project$ #alternatively: fs setacl -dir . -acl system:anyuser read jarandom write sipbtest write
+user@host:~/awesome_project$ fs listacl
 Access list for . is
 Normal rights:
   system:expunge ld
@@ -175,18 +181,37 @@ Normal rights:
 user@host:~/awesome_project$
 
 </pre><p>
-See also: <tt>man 1 fs</tt>, <tt>fs help &lt;command&gt;</tt>
+See also: <tt>man 1 fs</tt>, <tt>fs help &lt;command&gt;</tt>, <tt>man fs_listacl</tt>.
+
+There is also such thing as negative permissions to deny rights to certain members of a larger group to which positive permissions are granted. In the words of the fs_setacl manpage, however, <blockquote>Setting negative permissions is generally unnecessary and not recommended. Simply omitting a user or group from the "Normal rights" section of the ACL is normally adequate to prevent access. In particular, note that it is futile to deny permissions that are granted to members of the system:anyuser group on the same ACL; the user needs only to issue the unlog command to receive the denied permissions.</blockquote> For an example of negative permissions used on Athena run <tt>fs listacl /afs/athena.mit.edu/contrib/games/</tt>.
+
+
 </p>
 <h2 id="CreatinganAFSGroup">Creating an AFS Group</h2>
 <p>
-The "normal" way to make an AFS group would be with a command similar to <tt>pts creategroup &lt;your user name&gt;:&lt;group name&gt;</tt> and then add people with <tt>pts adduser &lt;user&gt; &lt;full group name&gt;</tt>(e.g. If Donald Guy wanted to created a group for people to edit his www directory (including <tt>sipbtest</tt> and <tt>jflorey</tt>, he might use the following chain of commands <tt>pts creategroup fawkes:www ; pts adduser sipbtest fawkes:www; pts adduser jflorey fawkes:www; fs sa ~/www fawkes:www write</tt>
-
+The "normal" way to make an AFS group would be with a command similar to <tt>pts creategroup &lt;your user name&gt;:&lt;group name&gt;</tt> and then add people with <tt>pts adduser &lt;user&gt; &lt;full group name&gt;</tt>(e.g. If Donald Guy wanted to created a group for people to edit his www directory (including <tt>sipbtest</tt> and <tt>jflorey</tt>, he might use the following chain of commands <tt>pts creategroup fawkes:www; pts adduser sipbtest fawkes:www; pts adduser jflorey fawkes:www; fs setacl -dir /mit/fawkes/www -acl fawkes:www write</tt>
 </p>
 <p>
-This method will work, but at MIT, it is much more common to use moira lists as a group. To create a new list, use the web interface at <a href="https://wserv.mit.edu:444/fcgi-bin/lc">https://wserv.mit.edu:444/fcgi-bin/lc</a>? to create a moira list, NOT A MAILMAN LIST and be sure to check the box for "Should this list be an AFS Group?" (to make an already existing moira list into an AFS group simply <tt>blanche -G &lt;list&gt;</tt>). After the servers update (which may take anywhere between 1 second and 10 minutes depending on the number of similar requests), the AFS group system:&lt;list name&gt; will exist in the athena.mit.edu cell. 
+You can see general information about a group by running <tt>pts examine &lt;group&gt;</tt> and see the membership of a group by running <tt>pts membership &lt;group&gt;</tt>. In the above example:
+<pre>
+fawkes@dr-wily:~$ pts examine fawkes:www
+Name: fawkes:www, id: -33555072, owner: fawkes, creator: fawkes,
+  membership: 2, flags: S-M--, group quota: 0.
+fawkes@dr-wily:~$ pts membership fawkes:www
+Members of fawkes:www (id: -33555072) are:
+  jflorey
+  sipbtest
+fawkes@dr-wily:~$ 
+</pre>
 </p>
+
 <p>
-This is useful because one often wants the same certain people who can operate on files in a folder to be a mailing list. Thus, for example, it is possible to send mail to gnu@mit.edu and use system:gnu as an AFS group on ACLs. (it is also possible to make moira lists that are AFS groups, but not mailing lists).  
+This method will work, but at MIT, it is much more common to use moira lists as groups. To create a new list, use the web interface at <a href="http://wserv.mit.edu/lc">http://wserv.mit.edu/lc</a> to create a moira list, NOT A MAILMAN LIST and be sure to check the box for "Is this list an AFS group?" (to make an already existing moira list into an AFS group simply run <tt>blanche -G &lt;list&gt;</tt> on athena). After the servers update (which may take anywhere between 1 second and 10 minutes depending on the number of similar requests), the AFS group system:&lt;list name&gt; will exist in the athena.mit.edu cell. 
+</p>
+<p>To check the membership of a moira list simply run <tt>blance &lt;list name&gt;</tt>. Note that the name of the list does not have the system: that is in the string. (e.g. to view the membership of the list gnu aka the group system:gnu, run <tt>blanche gnu</tt>).
+
+<p>
+This is useful because one often wants the same certain people who can operate on files in a folder to be a mailing list. Thus, for example, it is possible to send mail to gnu@mit.edu and use system:gnu as an AFS group on ACLs. (it is also possible to make moira lists that are AFS groups, but not mailing lists).
 </p>
 <p>
 see also: <tt>man 1 pts</tt>
@@ -194,63 +219,60 @@ see also: <tt>man 1 pts</tt>
 </p>
 <h2 id="ControllingAccessfromtheWeb">Controlling Access from the Web</h2>
 <p>
-If you make a directory listable and readable by system:anyuser then it can be viewed by any user on the web via the urls mentioned <a href="#FromtheWeb">above</a>
+If you make a directory listable and readable by system:anyuser then it can be viewed by any user on the web via the URLs mentioned <a href="#FromtheWeb">above</a>
 </p>
 <p>
-Unfortunately, just because you add specific users to an AFS ACL does not mean they can see the folder when the access from the web. IS&amp;T, however, does provide a solution to this. First, make sure that the wanted directory is not readable by system:anyuser. Next <tt>fs sa &lt;dir&gt; system:htaccess.mit read </tt>. Then create a file named <tt>.htaccess.mit</tt> in that directory. In that file you can do three things, 
+Unfortunately, adding specific users to an AFS ACL does not mean they can see the folder when they access it from the web. IS&amp;T, however, does provide a solution to this. First, make sure that the wanted directory is not readable by system:anyuser. Create a file named <tt>.htaccess.mit</tt> in that directory. In that file you can do one of three things, 
 
 </p>
 <ul><li>You can require that the user have valid certificates:
-<pre>  &lt;limit GET&gt;
-  require valid-user
-  &lt;/limit&gt;
+<pre>require valid-user
 </pre></li></ul><ul><li>You can require the reader be (a) specific user(s), for example:
-<pre>  &lt;limit GET&gt;
-  require user fawkes jflorey siptest jarandom
-  &lt;/limit&gt;
-
+<pre>require user fawkes jflorey sipbtest jarandom
 </pre></li><li>You can require that the reader be a member of one of certain moira groups (notice these are <strong>moira</strong> groups, there is no "system:". For example:
-<pre> &lt;limit GET&gt;
-  require group sipb-staff sipb-prospectives
- &lt;/limit&gt;
+<pre>require group sipb-staff sipb-prospectives
 </pre></li></ul><p>
-There after the users should be able to get to the folders at <tt>http'''s'''://web.mit.edu/&lt;locker&gt;/&lt;path to folder&gt;</tt> if they have certificates and no one should be able to reach it via http. Make sure to add yourself if you are going to be accessing it.
+<p>Note that you cannot mix users and groups in the same directory.</p>
+
+<p>Finally <tt>fs setacl -dir &lt;dir&gt; -acl system:htaccess.mit read</tt>.</p>
+        
+Thereafter, the users should be able to get to the folders at <tt>http<b>s</b>://web.mit.edu/&lt;locker&gt;/&lt;path to folder&gt;</tt> if they have certificates and no one should be able to reach it via http. Make sure to add yourself if you are going to be accessing it.
 
 </p>
 <p>
-see also: <a href="http://web.mit.edu/is/web/reference/web-resources/https.html">http://web.mit.edu/is/web/reference/web-resources/https.html</a>
+see also: <a href="https://ist.mit.edu/services/web/reference/web-resources/https">https://ist.mit.edu/services/web/reference/web-resources/https</a>
 </p>
 <h2 id="Troubleshooting">Troubleshooting</h2>
-<h3 id="ImtryingtoaccessmyfilesfslasaysIshouldhavepermissionsherebutitstillsays:Permissiondenied">I'm trying to access my files, <tt>fs la</tt> says I should have permissions here, but it still says <tt>: Permission denied</tt></h3>
+<h3 id="ImtryingtoaccessmyfilesfslasaysIshouldhavepermissionsherebutitstillsays">I'm trying to access my files, <tt>fs listacl</tt> says I should have permissions here, but it still says <tt>: Permission denied</tt></h3>
 <p>
-There are two likely possibilities. First, its likely that your tokens may have expired. To get new tokens, make sure you have valid kerberos tickets and then run <tt>aklog</tt>. Another possibility is that you have tokens but not for the correct cell. <tt>tokens</tt> will tell you what tokens you already have. In all likelihood, if you are reading this, you probably want <tt>aklog athena sipb</tt>. Finally, a third possibility is that your group membership has changed since you acquired tokens. Try running <tt>aklog -force</tt>
+There are two likely possibilities. First, its likely that your tokens may have expired. You can check this by running <tt>tokens</tt>. If they are, in fact, expired (or missing) get new tokens as follows: first, make sure you have valid kerberos tickets and then run <tt>aklog</tt>. Another possibility is that you have tokens but not for the correct cell. <tt>tokens</tt> will tell you what tokens you already have. In all likelihood, if you are reading this, you probably want <tt>aklog athena sipb</tt>. Finally, a third possibility is that your group membership has changed since you acquired tokens. Try running <tt>aklog -force</tt>
 
 </p>
 <h3 id="IdreallypreferthatnoteveryonecouldlistmyfileshowshouldIstopthis">I'd really prefer that not everyone could list my files, how should I stop this?</h3>
 <p>
-What you <strong>don't</strong> want to do is take away the l permission from <tt>system:anyuser</tt> because then no one will be able to get to your <tt>Public</tt> or <tt>www</tt> which you probably don't want. All told, there is no way to stop people on Athena from listing your files (unless you keep everything under <tt>Private</tt> or a similarly restricted directory). It is rather trivial to stop web users, however. A solution I recommend, if you have a website in <tt>www</tt>, is to make a page <tt>redirect.html</tt> (or similar) with the contents like:
+What you <strong>don't</strong> want to do is take away the l permission from <tt>system:anyuser</tt> because then no one will be able to get to your <tt>Public</tt> or <tt>www</tt> which is probably not what you want want. All told, there is no way to stop people on Athena from listing your files (unless you keep everything under <tt>Private</tt> or a similarly restricted directory). It is rather trivial to stop web users, however. A solution I recommend, if you have a website in <tt>www</tt>, is to make a <tt>redirect.html</tt> (or similar) with the contents like:
 
 </p>
 <pre>&lt;html&gt;
 &lt;head&gt;
-  &lt;meta http-equiv="Refresh" content="0; url=http://www.mit.edu/~&lt;lockername&gt;/"&gt;
+  &lt;meta http-equiv="Refresh" content="0; url=https://web.mit.edu/&lt;lockername&gt;/www"&gt;
 &lt;/head&gt;
 &lt;body&gt;
-  &lt;p&gt;Please go to my &lt;a href="http://www.mit.edu/~&lt;lockername&gt;/"&gt;www&lt;/a&gt;!&lt;/p&gt;
+  &lt;p&gt;Please go to my &lt;a href="https://web.mit.edu/&lt;lockername&gt;/www"&gt;www&lt;/a&gt;!&lt;/p&gt;
 
 &lt;/body&gt;
 &lt;/html&gt;
 </pre><p>
-and then doing a <tt>ln -s www/redirect.html index.html</tt> in the top level of the locker. Alternatively you can link index.html to a blank file in your <tt>Public</tt> or <tt>www</tt> (you can't simply it in the top level because its not readable there, this will result in a 403 Forbidden error).
+and then doing a <tt>ln -s www/redirect.html index.html</tt> in the top level of the locker. Alternatively you can link index.html to a blank file in your <tt>Public</tt> or <tt>www</tt> (you can't simply put it in the top level because it's not readable there; this will result in a 403 Forbidden error).
 </p>
 <h3 id="Itwasaround6amonaSundaymorningandsuddenlyIcouldntaccessmyfiles">It was around 6am on a Sunday morning and suddenly I couldn't access my files</h3>
 
 <p>
-Yeah, most AFS servers restart weekly at 6 AM on Sunday.
+Most AFS servers restart weekly at 6 AM on Sunday.
 </p>
 <h3 id="ItisntSundayandIcantgettomyfiles">It isn't Sunday and I can't get to my files</h3>
 <p>
-There may be a non-scheduled AFS outage. Check <a href="http://3down.mit.edu">3down</a>, hopefully it will be back up soon :-(.
+There may be a non-scheduled AFS outage. Check <a href="https://3down.mit.edu">3down</a>, hopefully it will be back up soon :-(. You can check up on the AFS servers by running <tt>fs checkservers</tt> (or <tt>fs checks</tt>). If there is no reported outage and you can't access the AFS servers (but can access the rest of the net), contact <a href="https://ist.mit.edu/services/athena/olh">OLC</a>.
 </p>
 <h2 id="AdvancedTasks">Advanced Tasks</h2>
 <h2 id="PuttingSoftwareinaLocker">Putting Software in a Locker</h2>
@@ -259,25 +281,22 @@ The Athena environment was designed to allow software to run on several architec
 
 </p>
 <p>
-The special variable @sys in a path corresponds to the first of these that matches. When a user runs <tt>add</tt>, <tt>/mit/&lt;locker&gt;/arch/@sys/bin</tt> is added to their PATH and <tt>/mit/&lt;locker&gt;/man</tt> or <tt>/mit/&lt;locker&gt;/arch/@sys/man</tt> is added to their MANPATH.
+The special variable @sys in an AFS path corresponds to the first of these that matches. When a user runs <tt>add</tt>, <tt>/mit/&lt;locker&gt;/arch/@sys/bin</tt> is added to their PATH and <tt>/mit/&lt;locker&gt;/man</tt> or <tt>/mit/&lt;locker&gt;/arch/@sys/man</tt> is added to their MANPATH.
 
 </p>
 <p>
-Primarily because of this fact, a typical locker is set up with the following sort of layout:
+Primarily because of this fact, a typical locker might be set up with the following sort of layout:
 </p>
 <pre>user@host:/mit/&lt;some locker&gt;$ tree -dL 2
 .
 |-- arch
-|   |-- i386_linux22
-|   |-- i386_linux24 -&gt; i386_rhel4/
+|   |-- i386_linux24
 |   |-- i386_rh9 -&gt; i386_linux24
-|   |-- i386_rhel3 -&gt; i386_rhel4
 |   |-- i386_rhel4
 |   |-- sgi_65
-|   |-- sun4x_510
-|   |-- sun4x_57
-|   |-- sun4x_58 -&gt; sun4x_510/
-|   `-- sun4x_59 -&gt; sun4x_58
+|   |-- sun4x_58
+|   |-- sun4x_59 -&gt; sun4x_518/
+|   `-- sun4x_510 -&gt; sun4x_59
 |-- bin -&gt; arch/@sys/bin
 |-- include -&gt; arch/@sys/include
 |-- info
@@ -286,8 +305,8 @@ Primarily because of this fact, a typical locker is set up with the following so
    `-- man1
 
 </pre><p>
-Please note that the @sys variable should really be used ONLY in these convenience in symlinks. To make the folder in arch you usually want to either pick a more general architecture and set it up yourself or simply use the following command in the top level of the locker:
-<tt>mkdir -p arch/$ATHENA_SYS/{bin,lib,include</tt>}. After making this folder, make the shortcut symlinks with commands similar to <tt>ln -s arch/@sys/bin bin</tt> (again, this is the <i>ONLY</i> time you should use @sys yourself). Other than that, its mainly just a matter of making sure to run configure with options like <tt>--prefix=/mit/&lt;lockername&gt;</tt> and <tt>--with-manpath=/mit/&lt;lockername&gt;/man</tt>. 
+Please note that the @sys variable should really be used ONLY in these convenience symlinks. To make the folder in arch you usually want to either pick a more general architecture and set it up yourself or simply use the following command in the top level of the locker:
+<tt>mkdir -p arch/$ATHENA_SYS/{bin,lib,include</tt>}. After making this folder, make the shortcut symlinks with commands similar to <tt>ln -s arch/@sys/bin bin</tt> (again, this is the <i>ONLY</i> time you should use @sys yourself). Other than that, it's mainly just a matter of making sure to run configure with options like <tt>--prefix=/mit/&lt;lockername&gt;</tt> and <tt>--with-manpath=/mit/&lt;lockername&gt;/man</tt>. 
 
 </p>
 <p>
@@ -299,8 +318,29 @@ See also: <tt>man lockers</tt>
 While it is easily possible to make an AFS group for yourself, it is harder to get a new locker. If you want a locker for something official like a student group or a piece of software, send an email to <a href="mailto:accounts@mit.edu">accounts@mit.edu</a> explaining what you need it for and someone at IS&amp;T will let you know. If you feel it is something less official or you would just rather consider it a SIPB project (perhaps get other SIPB people involved) send an email to <a href="mailto:sipb-afsreq@mit.edu">sipb-afsreq@mit.edu</a> instead. In either case, if a mount point under <tt>/mit</tt> fails to get set up for you, let <a href="mailto:hesreq@mit.edu">hesreq@mit.edu</a> know.
 </p>
 
+<h2 id="Findouttechnicalinformationaboutmylocker">Find out technical information about my locker</h2>
+<p>Figure out the volume name of the locker. One way to do this is to run <tt>fs listquota .</tt> in the directory and look in the left column. Once you have the volume name, run <tt>vos examine &lt;volume name&gt;</tt>. This will tell you information such as what server it is located on, its ID numbers, when it was last accessed, when it was last backed up, etc. For example:
+<pre>
+$ vos examine user.sipbtest
+user.sipbtest                     537058147 RW      69785 K  On-line
+    PHLEGETHON.MIT.EDU /vicepa 
+    RWrite  537058147 ROnly          0 Backup  537058149 
+    MaxQuota    2000000 K 
+    Creation    Sat Nov  2 21:29:46 1996
+    Copy        Fri Dec  4 19:38:29 2009
+    Backup      Sat Mar 20 02:07:55 2010
+    Last Update Wed Mar  3 00:22:34 2010
+    35 accesses in the past day (i.e., vnode references)
+
+    RWrite: 537058147     Backup: 537058149 
+    number of sites -> 1
+       server PHLEGETHON.MIT.EDU partition /vicepa RW Site
+</pre>
+
+<tt>vos</tt> has many other commands, but most of them are only useful to administrators.
+</p>
    
 <h2 id="SeeAlso">See  Also</h2>   
-<p>SIPB's older guide, <a href="http://stuff.mit.edu/afs/sipb.mit.edu/project/doc/afs/html/afs-new.html">Inessential AFS</a>  <br /> OpenAFS documentation  at <a href="http://www.openafs.org/">http://www.openafs.org/</a>
+<p>SIPB's older guide, <a href="https://stuff.mit.edu/afs/sipb.mit.edu/project/doc/afs/html/afs-new.html">Inessential AFS</a>  <br /> OpenAFS documentation  at <a href="https://www.openafs.org/">https://www.openafs.org/</a>
 </p>