File Permissions on HPCC
The HPCC offers several different types of storage for users. All of these filesystems make use of standard UNIX file permissions. Understanding how standard UNIX permissions and ownership works is an important way to control access to your files.
UNIX users and groups
Every user has a unique username on HPCC systems. This is typically your
MSU NetID. Every user is also a member of at least one group. This group
is typically the department the user is in (such as cse
or plb
). An user
can be a member of additional groups. To see what groups you are a
member of, run the groups
command. If you feel you are in the wrong
group, please contact HPCC staff.
UNIX file ownership
Every file and directory has two sets of ownership, the user and the group. The user owner is normally set to the user that created the file. Normally, the user owner of a file or directory is the only user that is able to change permissions or group ownership.
The group owner of a file or directory allows a user owner to grant permissions to a group of users for a particular file or directory. The user owner of a file can change the group ownership of a file to any group that they are a member of. Any file created by a user normally defaults to group owner being set to the user's primary group, unless the user or directory owner has changed the behavior (using procedures described here.)
The three types of basic UNIX permissions
Read
Read permission on a file allows the contents of a file to be read. The
read permission, when applied to a directory, allows the contents of a
directory to be listed. Referred to as "r" in the output of the ls -l
command.
Write
Write permission on a file allows the file to be modified or deleted.
Write permissions in a directory allow the creation of additional files
in that directory. Referred to as "w" in the output of the ls -l
command.
Execute
The execute permission allows a file to be run as an executable. When
applied to a directory it allows traversal of that directory: the
ablility to access files or subdirectories in that directory. Referred
to as "x" in the output of the ls -l
command.
Other resources
This just covers the basic ideas of UNIX file permissions. In order to work with permissions on the HPCC most effectively, see the page on managing file permissions. Here are some other resources for more in-depth information: