---
status: stable
type: concept
tags:
  - os
updated: 2026-02-27
title: File Permissions
created: 2025-12-17
---

# File Permissions
В системах Linux права и привилегии присваиваются файлам и каталогам в виде разрешений. Эти разрешения указывают, кто может _читать_, _писать_ или _выполнять_ (запустить) их. В Linux существует три типа пользователей: **владельцы**, **группы** и **другие**, которые могут иметь другой набор разрешений.

**Права (permissions)** — указывают, кто и что может делать с файлом или директорией:

- `r` (read) — чтение содержимого файла или просмотр списка файлов в директории.
- `w` (write) — запись/изменение содержимого файла или добавление/удаление файлов в директории.
- `x` (execute) — запуск файла как программы или возможность "войти" в директорию (`cd`).

**Категории пользователей:**

- **owner (u)** — владелец файла.
- **group (g)** — члены группы, связанной с файлом.
- **others (o)** — все остальные пользователи.

`-rwxr--r-- 1 root root 4096 Jan 1 12:00 filename`

- → это обычный файл (d будет означать директорию).
- rwx → владелец может читать, писать, исполнять.
- r-- → группа может только читать.
- r-- → остальные могут только читать.

## Основные Команды

- `chmod` → изменение прав (permissions).

```bash
chmod 600 <path_to_file>
chmod o+r -R <path_to_dir>
```

- `chown` → изменение владельца (owner).

```bash
chown <user> <path>
chown <user>:<group> <path>
```

- `chgrp` → изменение группы.

```bash
chgrp <group> <file>
```

## Особые Биты

Кроме стандартных rwx есть **особые флаги**:

- **SUID (set user ID,** `**s**`**)** — исполняемый файл запускается с правами владельца.
    Пример: `/usr/bin/passwd` запускается с правами root, хотя ты обычный пользователь.
- **SGID (set group ID)** — аналогично, но для группы. У директорий — новые файлы наследуют группу.
- **Sticky bit (**`**t**`**)** — на директориях запрещает пользователям удалять чужие файлы. Классический пример: `/tmp`.