I want to know how to see the permissions a particular file has. Which command should I type in the terminal? However, I don't want to change it.
If you want to see the the permission of a file you can use
ls -l /path/to/file command.
ls -l acroread -rwxr-xr-x 1 10490 floppy 17242 May 8 2013 acroread
What does this mean ?
- represents a regular file. It gives you a hint of the type of object it is.
It can have following values.
- d (directory)
- c (character device)
- l (symlink)
- p (named pipe)
- s (socket)
- b (block device)
- D (door)
- - (regular file)
r represents read permission.
w represents write permission and
x represents executable permission.
First combination of
rwx represents permission for the owner .
Second combination of
rwx represents permission for the group .
Third combination of
rwx represents permission for the other of the file.
Permission of file can also be represented in octal notation.
In octal notation
r is represented by 4,
w is represented by 2
x is represented by 1.
Sum of these three is use to represent the permission.
stat command can be used to view file permission in octal notation
stat -c "%a %n" /path/of/file
stat -c "%a %n" acroread 755 acroread
Here you can see
For owner it is 4+2+1=7 (111 in binary)
For group it is 4+0+1=5 (101 in binary) and
For other it is 4+0+1=5 (101 in binary).
Regardless of you actually using ACL permissions, if you have the
acl package installed, you can use
getfacl <path> to get a pretty decent breakdown of permissions on that file.
$ getfacl /root/ # file: root/ # owner: root # group: root user::rwx group::--- other::---
If you do use ACL permissions, it'll tell you about permissions that
stat just can't.
$ sudo setfacl -m u:oli:r /root $ getfacl /root/ # file: root/ # owner: root # group: root user::rwx user:oli:r-- group::--- mask::r-- other::---