Linux File Storage in EECS

Every EECS Linux account has an associated home directory (aka “home area”) where all files are stored by default. When you log into an EECS Linux system, whether directly or via remote access such as SSH or RealVNC, your account's home directory is automatically attached (“mounted”) to /home/username. So if your username is “jruser” all your files are now mounted at /home/jruser.

Your files are not actually stored on the hard drives or other permanent storage attached to the login systems such as the lab computers. Instead, your files are stored on a file server in the EECS datacenter and are remotely accessed over the network.

If you are a member of a professor's research group or have been otherwise given special access, you may be able to use a directory in one of the two storage areas maintained by EECS:

  • /research - Sub-directories in this hierarchy are RAID-protected and backed up nightly.
  • /storage - Sub-directories in this hierarchy are RAID-protected but not regularly backed up.

To access one of these directories, you can cd into the appropriate sub-directory. For example, if you have been given access to the foo research directory, you would type:

cd /research/foo

Please note that these directories are only viewable after they are accessed. If you cd into /research you will not see a full listing of all available research directories. However, if you cd into /research/foo then the foo directory will appear.

Showing Permissions

The ls -l command shows file permissions in the leftmost column of the output. Permissions are displayed in three blocks:

  • User Permissions – permissions that apply to the file's owner
  • Group Permissions – permissions that apply to the file's group
  • Other Permissions – (often called “world” permissions) permissions that apply to everyone not covered by the above. Note that this means a file that is other-readable but not group-readable is not readable to a member of the group.

Permissions are:

  • r – Readable
  • w – Writable
  • x – Executable (or being able to enter a directory)

There are additional permissions that can be set such as setUID and setGID, the “sticky bit”, etc. For more information on how to use these and what they mean, please see one of the many guides to file permissions, for example:

Example File Permissions

jruser:hydra9 ~> ls -l
-rwxr-x---. 1 jruser jruser     1024 Apr  9 13:20 myFile

Directory Listing Elements

Click on the different elements below for an explanation.

- rwx r-x ---. jruser jruser 1024 Apr 9 13:20 myFile

In most situations, you do not want your EECS files to be readable or writable by other users on the system. EECS home directories are not meant as a place to share files with others. Thus, by default, files are not accessible to anyone but the end user. In a system (like is the case with EECS) where User Private Groups are in effect, even changing the group permission on a file does not make it accessible to other users.

Writable Files

Do not make files in your home directory writable to all users (others), aka “world-writable”.

Files in your webhome directory will need to be readable but should not be writable by other users. Under certain circumstances, it may be necessary to give other users access to some of your EECS files or directories. Below are some scenarios and the recommended way of granting access:

Shared Research

Files that need to be shared between members of a research group should be stored in the appropriate /research directory.

Each faculty members may request a /research directory for their group. Please contact the EECS IT Staff for more help.

Group ownership of research files should be that of the associated Linux group. So, for example, if you are a member of a research group named Foolab, you should store all your research-related files in /research/foolab and the files should be group-owned by the foolab Linux group:

jruser:hydra9 /research/foolab>ls
total 8
drwxrwx---. 3 jruser foolab    42 Aug 25  2005 important/
drwxrwx---. 2 jruser foolab     6 Feb  6  2013 more_important/
-rw-rw----. 1 jruser foolab  2693 Oct 21  2016 somefile

Shared Projects

If you have short-term projects (e.g. for a class) which require sharing files with other users, you can request a special Linux group to be created for your project. Please contact the EECS IT staff with the following information:

  • Description of the project
  • Members of the project group
  • Faculty sponsor
  • Project duration
  • File storage requirements

The EECS IT staff will help you design the right kind of solution.

Ad-hoc Sharing

If you need to quickly share a file with others, consider using one of UT's recommended cloud file storage options such as Microsoft OneDrive or Google Drive File Stream. You can access these from any web browser on our Linux systems.