3.6 KiB
3.6 KiB
status, type, tags, created, updated, title
| status | type | tags | created | updated | title | ||
|---|---|---|---|---|---|---|---|
| stable | concept |
|
2025-12-17 | 2026-05-07 | File Permissions |
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).
chmod 600 <path_to_file>
chmod o+r -R <path_to_dir>
chown→ изменение владельца (owner).
chown <user> <path>
chown <user>:<group> <path>
chgrp→ изменение группы.
chgrp <group> <file>
Особые Биты
Кроме стандартных rwx есть особые флаги:
- SUID (set user ID,
**s**) — исполняемый файл запускается с правами владельца. Пример:/usr/bin/passwdзапускается с правами root, хотя ты обычный пользователь. - SGID (set group ID) — аналогично, но для группы. У директорий — новые файлы наследуют группу.
- Sticky bit (
**t**) — на директориях запрещает пользователям удалять чужие файлы. Классический пример:/tmp.
Связанные заметки
- Volume - Docker — uid/gid и права доступа в Docker Volumes определяются Linux-правами; проблема "root как владелец" решается через userns-remap + chown
- Modules - Ansible — модуль
userуправляет uid/gid;file/copyзадают владельца и режим файлов через те же chmod/chown - Сегментация сети — принцип наименьших привилегий: на уровне ФС — rwx для owner/group/others; на уровне сети — VLAN для Admin/Employee/Guest
Связанные заметки
- Linux