Шпаргалка по правам доступа к файлам в Linux

29
Шпаргалка по правам доступа к файлам в Linux
Шпаргалка по правам доступа к файлам в Linux

📁 Структура прав доступа

-rwxr-xr--  1 user group  size date name
││││ │ │
││││ │ │└─ права для других (others)
││││ │ └── права для группы (group)
││││ └──── права для владельца (owner)
│││└────── тип файла (- обычный, d — директория, l — ссылка и т.д.)

🧩 Базовые типы прав

Символ Значение Число
r read (чтение) 4
w write (запись) 2
x execute (выполнение) 1
- нет права 0

🔢 Комбинации прав (числовой вид chmod)

Права Значение Описание
7 rwx полные права
6 rw- чтение и запись
5 r-x чтение и выполнение
4 r— только чтение
3 -wx запись и выполнение
2 -w- только запись
1 —x только выполнение
0 без прав

🔧 Команда chmod — изменить права

chmod 755 файл      # rwxr-xr-x
chmod 644 файл      # rw-r--r--
chmod u+x скрипт    # добавить право на выполнение владельцу
chmod go-w файл     # убрать право записи у группы и других
Символ Значение
u user (владелец)
g group (группа)
o others (остальные)
a all (все)
+ добавить право
- убрать право
= установить точно

👑 Спецправа

Право Обозначение Значение
setuid s в месте x для owner файл исполняется с правами владельца (часто root)
setgid s в месте x для группы файл/папка исполняется с правами группы
sticky bit t в конце прав для others используется в общих папках (например, /tmp) – удалять файл может только владелец
chmod u+s файл     # установить setuid
chmod g+s папка    # установить setgid
chmod +t /dir      # установить sticky bit

🔍 Команда ls для проверки

ls -l            # длинный формат со всеми правами
ls -ld каталог   # показать права каталога

🔁 Быстрая проверка

Команда Назначение
stat файл полная информация о файле и правах
namei -lx путь проверить права на всех уровнях пути
getfacl файл посмотреть ACL права, если они есть