48 lines
1.8 KiB
Markdown
48 lines
1.8 KiB
Markdown
![]() |
---
|
||
|
title: File Permissions
|
||
|
---
|
||
|
|
||
|
# File Permissions
|
||
|
|
||
|
* In Linux each file and directory has three user based permission groups:
|
||
|
|
||
|
**owner (u)** - This group of permissions apply only on owner of directory or file, and they do not impact the actions of other users.
|
||
|
|
||
|
**group (g)** - This group of permissions apply only on group of user that are assigned to the directory or file, and they do not impact the actions of other users.
|
||
|
|
||
|
**all users (o)** - This group of permissions apply to all users on the system.
|
||
|
|
||
|
* In Linux each file and directory has three basic permission types:
|
||
|
|
||
|
**read** - This permission allows user to read content of files.
|
||
|
|
||
|
**write** - This permission allows user to write or modify the file or directory.
|
||
|
|
||
|
**execute** - This permission allows user to execute a file or view the content of directory.
|
||
|
|
||
|
* To view permission you can use some of content listing commands such as `ls -l`, `ll` and etc.
|
||
|
|
||
|
Permissions are displayed as **_rwxrwxrwx**. Where _ means it is either directory marked as `drwxrwxrwx` or link marked as `lrwxrwxrwx`, first set of rwx are permissions for owner, second one are for group and the last set of rwx permissions are applied on all users.
|
||
|
|
||
|
Usually each set of permissions has its value in integer. You can calculate each set value if you sum default values of each permission.
|
||
|
|
||
|
**read (r)** = **4**
|
||
|
|
||
|
**erite (w)** = **2**
|
||
|
|
||
|
**execute (x)** = **1**
|
||
|
|
||
|
This is important when you want to grant permissions to some type of user `owner`, `group`, `all users`. Granting permissions is usually done with command `chmod`.
|
||
|
|
||
|
```
|
||
|
chmod u=rwx,g=rx,o=r myfile
|
||
|
```
|
||
|
or equivalent
|
||
|
```
|
||
|
chmod 754 myfile
|
||
|
```
|
||
|
Example with no permission for groups
|
||
|
```
|
||
|
chmod 704 myfile
|
||
|
```
|