* * * *

Pack FAQ

* * * *

This is an in-house information page for the Many Wolves authoring collective with tips on HTML authoring, page mounting, and other issues. Besides serving as a beginner's guide, this FAQ ("frequently asked questions") will be a place to work out the technical and social practices involved in sharing a collectively writable directory. (Page last revised 7/28/95)

Directory Map
Setting Permissions
All the Unix You Need to Get Started
Possible Authoring Procedures
Two Suggested Ideal Authoring Set-Ups
Getting Started with HTML

Lines of Flight (Project Proposals) | Tools


* DIRECTORY MAP
* The URL of the pack directory is http://humanitas.ucsb.edu/projects/pack/ . In this URL, "http://humanitas.ucsb.edu" signifies the "web root" or top of the web space on the Humanitas server.
* Web space, however, is itself only one branch of the total space on the Humanitas server. Hidden behind the web root is the fact that "http://humanitas.ucsb.edu" is an assigned pseudonym for the following full path descended from the machines ultimate root directory: /www/httpd/web_doc_root/. So, for example, our pack/ directory has the full path: /www/httpd/web_doc_root/projects/pack/ . This full path is used in two circumstances:
  1. Outside your Web browser when you are changing directories, copying files, or doing other things in Unix on the Humanitas server. Since full path names for web directories are long and cumbersome, you will probably want to create "set" statements in your .cshrc file to, for example, make "cd pack" stand for "cd /www/httpd/web_doc_root/users/pack/.
  2. Inside your browser when you are invoking a directory or page on the Humanitas machine by its "local" filename. For example, instead of going to the URL http://humanitas.ucsb.edu/projects/pack/pagename.html you can go to file://localhost/www/httpd/web_doc_root/projects/pack/pagename.html in order to open a page on Humanitas locally. This is extremely useful because in Lynx the "e" command allows you to edit directly any local page for which you have write permission (Lynx puts you in the Pico text-editor interface familiar to anyone who uses Pine e-mail).

* The pack/ directory contains four utility subdirectories in addition to any project-specific subdirectories that we will set up in the future. These are:
Backup/ is the place to copy a file from the main pack/ directory before you edit it. Incoming/ is a container into which to upload pages via modem or ftp before mounting them to the main pack/ directory. (Usually, incoming pages will have a .htm extension because DOS only allows three-letter filename extensions. (Alan will soon make available some Unix scripts to automate the whole process of first backing up existing pack/ files and then overwriting them with /incoming files whose extensions are changed to .html.) Temp/ is a place to park pages and other stuff temporarily. Someone will clean it out once in a while. Scratch/ is a scratchpad for trial pages or revisions not yet ready to be mounted to the main pack/ directory (scratch/ is a provisional space like temp/ but holds stuff permanently until you remove it yourself). Images/ is a container for all commonly usable image files associated with the pack's pages. In practice, we will probably want to put all our images here to create a library that other pack members can draw upon.

Top of Page


* SETTING PERMISSIONS
* Directory Permissions: When you list the contents of a directory in Unix using the long-listing format (the command is ls -l), you will see that each subdirectory has a listing that begins something like, drwx------, while each file has a listing of the sort, -rw-------. The first slot here ("d" or "-") indicates whether the item is a directory or file. Then there are three sets of three characters each. The first triplet indicates the permissions for the owner/creator of the item; the second triplet the permissions for the "group" to which the owner belongs; and the third triplet the permissions for all others. The possible characters for these slots are "r" (read permission), "w" (write/edit permission), and "x" (execute permission for programs and scripts). (There is also a "s" permission for directories that need not concern us.) The pack/ directory has the permission structure, drwxrws--- , meaning it is read/write/execute for the owner (our webmaster or sysadmin, who created it) and read/write/execute for everyone in our pack group who has a Humanitas account.
* If you create a subdirectory within pack/, it will by default have the permissions drwx------. This is because everyone's .cshrc file has a "umask" feature in it that masks any created directories or files from the eyes of others (you can change the umask setting, but not if you value your privacy). To make subdirectories created within pack/ readable/writable by other members of our group, use the following Unix command while in the pack/ directory: chmod 770 subdirectory-name.
* Note that the drwxrws--- permission structure for a pack directory or subdirectory will automatically take care of the fact that the minimum permissions needed to make any Web directory accessible globally (so browsers can request pages) is drwxr-x---.
* File Permissions: Just setting the proper permissions for pack directories, however, will not make files created in those directories usable by others. This is because the umask line in your .cshrc file will by default set the permissions of any file you create (whatever the permissions of its containing directory) to -rw------- for maximum privacy.
  1. To make a Web page gettable by browsers around the world, you need a file with the minimum permissions: -rw-r-----. Use the Unix command chmod 640 filename to do accomplish this.
  2. To make a Web page editable by members of our pack, however, you need to set a file's permissions to -rw-rw----. Use the Unix command chmod 660 filename to do accomplish this. (Note, the space for "x" is irrelevant with files unless the file is a program or script.)

Top of Page


* ALL THE UNIX YOU NEED TO GET STARTED
* Changing Directories: When you log in, you are placed by default in your home directory on Humanitas: /home/username. To change to a different working directory, use the command cd directory-name. For example, "cd /www/httpd/web_doc_root/projects/pack", will change to the pack/ directory. Some refinements:

* Creating Files: You can create a file ex nihilo by using the Pico text editor. Go pico by itself to open an unnamed file (that can be named when you exit pico) or pico filename to specify the filename in advance.
* Editing Files: Go pico filename to open an existing file and edit it. "Ctrl-X" in pico will then save the file and exit. (Note: you can also edit Web pages in pico directory from within Lynx if you open a page on Humanitas in local mode.)
* Copying Files: The command is cp source-path/filename destination-path/filename. The source and destination paths are assumed to be the present working directory if you do not include paths. If you do not include a filename in a destination that is a directory othe than the present one, then the file will be copied to the same name in the new location. Some examples:

* Moving/Renaming Files: The command is mv source-path/filename destination-path/filename. The same variations apply as for the copy command described above.
* Removing or Deleting Files: The command is rm path/filename . By default, our system will then ask for a confirmation before actually deleting the file.
* Making and Removing Directories: While in the desired higher-level directory, go mkdir directory-name to create a subdirectory (whose permissions will then need to be adjusted). To remove a directory, first delete all the items it contains and then go rmdir directory-name. (Note: stay away from the more complicated situation of moving directories from one location on the directory tree to another. Instead, use a combination of making directories, copying files, and removing directories to accomplish the same task.)

Top of Page


* POSSIBLE AUTHORING PROCEDURES
* Authoring at Home or on an HCF Machine:
  1. Create and edit your pages using any ASCII text-editor, word-processor (save in ASCII mode), or HTML-editor. (Download pages from pack/ on Humanitas if you wish to edit existing pages this way.)
  2. Upload the finished pages as .htm files to pack/incoming.
  3. Then backup the original pages in pack/, move the pages in incoming/ to pack/, change the filename extensions to .html, and use chmod 660 filename to set the permissions to make the pages gettable by browsers as well as editable by other pack members.

* Authoring Directly on the Humanitas Server:
  1. Backup the file.
  2. Open it in Pico and edit away.

* Authoring Directly on the Humanitas Server via Lynx. (This is the easiest and most interactive way to edit a Web page if you just want to tweak something or add a paragraph. However, of course, you can't see any images or graphical formatting.)
  1. Start Lynx.
  2. Use the "g" command to goto a URL.
  3. Fill in the URL with the file://localhost/www/httpd/web_doc_root/pack/filename convention to call it up in local mode.
  4. If you have write permission for the file, then while viewing the page you can go "e" in Lynx to load the file directly into Pico for editing. Exiting from Pico then returns you to Lynx with the page updated to reflect your changes.

Top of Page


* TWO SUGGESTED IDEAL AUTHORING SET-UPS
* Author on your home machine or some other machine that has a capable editor on it. Upload to Humanitas, mount the pages, and then go in with Lynx to do any tweaking. Finally, go in with Netscape either from campus or over a SLIP modem connection and check that the graphics on your pages are okay.
* Where interactive editing of images or other graphical features is necessary, you'll need a fairly complex set-up. For example:
  1. Start a SLIP connection in Windows.
  2. Start your text editor or word processor (running in a Windows box) and edit a file.
  3. Start a FTP client for SLIP like WS-FTP and use it to upload the file to Humanitas.
  4. Start a Telnet client for SLIP like Trumpet Telnet and use it to dial into your Humanitas account in order to perform any necessary Unix operations upon your file--e.g., move it, change its permissions, etc.
  5. Then start Netscape and take a look at the page.
  6. Keep all the programs open in Windows (if you have enough memory and don't get the dreaded General Protection Fault error) so that you can redit as necessary. For example, you can tweak a file by using your Humanitas session running in telnet to edit a file on the server with Pico; then immediately flip back to Netscape, reload the page (to clear the cache), and see what your changes look like.

Top of Page


* GETTING STARTED WITH HTML
* The easiest way to get started doing HTML is to read a quick primer and then copy other people's source code in order to see what you can customize. For example, even without reading about HTML, a beginner will likely be able to open our pack's "Lines of Flight" page and see that s/he can put text between <dt></dt> tags, or <dd></dd> tags.
* Here are some primers in HTML:
* For more advanced guides to HTML (including tables, etc.), see the Voice of the Shuttle: Tools Page.

Top of Page