Linux / UNIX – Display the permissions of a file

by on July 31, 2007 · 5 comments· LAST UPDATED July 31, 2007

in , ,

Q. How do I list or display the permission of a file using ssh? I don’t have GUI installed on a remote Linux computer.

A.You need to use ls command with -l option. File access permissions are displayed in the first column of the output, after the character for file type.

ls command List information about the FILEs. If no argument is given it will use the current directory by default.

Task: List a file's access permissions

Type ls -l command as follows to display permission for /etc/passwd file:
$ ls -l /etc/passwd
Output

-rw-r--r-- 1 root root 2453 Jul 17 16:25 /etc/passwd

Understanding the file permission

File access permissions appear in the first column of the output i.e. -rw-r--r--

  • The first character - is nothing but the file type. means regular file and d means directory.
  • The next three characters (rw-) specify permissions for the user who owns the file
  • The next three (r--) specify permissions for all members of the group that owns the file.
  • Finally, the last three characters in the column (r--) specify permissions for all other users on the system.

Each character in permission has meaning as follows:

  • r : Read permission.
  • w : Write permission.
  • x : Execute permission.
  • - : No permission.

For example rw- permission means owner can read, write to a file but cannot execute the same.

TwitterFacebookGoogle+PDF versionFound an error/typo on this page? Help us!

{ 5 comments… read them below or add one }

1 PS February 27, 2013 at 7:28 pm

Is there any way to list for what users those permissions apply?
Like the “Permissions” display box in Windows?
What I would like to know is:
user John has read + execute permissions
user Annie has only read permissions
Group Developpers has read/write/exec permission

etc.

Any way to do that?

Reply

2 bynw July 6, 2013 at 7:20 pm

That’s not really necessary to be broken down. Again using the example above it’s easy to see who has what permissions.
-rw-r–r– 1 root root 2453 Jul 17 16:25 /etc/passwd

In the example, the owner of the file is root and the group is root.
The owner has read+write permissions
The group of root has read only
And then everyone else has read only.

So as long as you know what user and group owns a file and who that owner is and who is in that group (which is easy to look up) then you know everyone’s permissions.

Reply

3 PS July 10, 2013 at 3:16 pm

Thanks, and it does make this clear.
What I was looking for is something that the Unix permissions do not even provide – I was thinking I can assign rights to many different users, but this is not possible at all.
In Windows, I can, for a single file, assign 20 users various rights. The standard Unix permission have a single owner, a single group and “everybody else”.

Reply

4 edwin August 14, 2013 at 4:47 pm

please give me some step to find this FILE PERMISSION. where can i found them?

Reply

5 vamsi October 24, 2013 at 10:46 am

ls -l filename

Reply

Leave a Comment

Tagged as: , , , ,

Previous Faq:

Next Faq: