FileSub Home
Getting Started Using The Submit System

The File Submission System Logo


The file submission system allows students to send assigned programs or other work to their instructors by uploading through a web form. The students have a specific listing of what files are needed, and the system insures everything is sent, and checks such basics as the file extension and absence of binary data. Instructors create assignments which list the files required to fulfill some assigned project. The files which students send are collected on the server. Instructors have direct access to the files through the command shell on the server, or may download the assignments through a web interface.

The impatient reader may now want to skip to the getting started page. But I do recommend staying for the rest of this one.


Instructors may define an assignment using either a web-based interface, or the command line program setsub. Web access is enabled by setting a password, which users can do with setsub. The web access password is different from a normal shell login. The description of the assignment is stored on disk in a directory submissions in the instructor's home area.

Once the assignment is created, students may use it to send work to fulfill it on-line. Each assignment has its own URL, which can be easily placed linked from a web page describing the assignment. It reaches a web form for similar to this one:

The student fills in the name fields and selects the files to send. The system again deposits the submitted files under submissions in the user's home area. The instructor can access the files directly using the command shell, use a web interface. It allow the instructor to list, download or delete submissions. Files may be downloaded individually or in groups as zip or tar-gzip archives.

The system also creates an index page for each instructor. It is a list of links to the instructor's assignment submission pages. Instructors control which assignments are listed.

File Structure

The submit system stores all files for any particular user in a directory submissions in that user's home directory. (This name can be changed by the installer, who will hopefully have told you about it.) The hashed web password is stored here in a one-line file web.pass. Each assignment is stored in a directory within submissions whose name is the assignment file name specified when the assignment is created. The description of the assignment is stored in a file Control.txt within this directory. Each submission creates a directory under the assignment directory formed from the student's name, and a sequence number if needed. The submitted files are placed within that. For instance, if a user jsmith has an assignment with file name cs234a1, it might be described in a file /home/jsmith/submission/cs234a1/Control.txt. If a student named Bonnie Simmons sent a file asst1.c, it might be stored as /home/jsmith/submission/cs234a1/Simmons,_Bonnie/asst1.c.

You may examine downloaded files directly by looking in the submission directory. If you download and archive of submissions through the web page, it will have the same structure, starting from the assignment file name. That is, if you download the submissions for cs234a1, you will get an archive containing a directory cs234a1, within which is a directory Simmons,_Bonnie along with similar directories for all other submissions.

Okay, now you're ready for getting started.