File Permissions in the Shell

Back in Chapter 5, I showed you how to look at file permissions with Konqueror. When you use the ls -l command, you are doing the same thing?looking at basic Linux security at the file (or directory) level. Here is an example of a long ls listing:

$ ls -l
total 3
drwxr-x?-     5 root     system     512   Dec 25 12:01     presents
-r-xr?r?      1 zonthar  users       123   Dec 24 09:30    wishlist
-rw-rw??      1 zonthar  users       637   Nov 15 09:30    griflong

The first entry under the total column shows a directory (I'll talk about the next nine characters in a moment). The first character is a d, which indicates a directory. Right at the end of each line, you'll find the directory or file name?in my example, they are presents, wishlist, and griflong. The first character in the permissions field is d, so presents is a directory.

On to those other nine characters (characters 2 through 10). These indicate permissions for the user or owner of the file (first three), the group (second group of three), and others or everyone else (last three). In the first line, user root has read (r), write (w), and execute (x) permissions, whereas the system group has only read and execute. The three dashes at the end imply that no one else has any permissions. The next two files are owned by the user called zonthar.