В Linux имеется 3 вида прав доступа: права на чтение (r — read), права на запись (w — write), права на выполнение или еще называют права на запуск(x — eXecute).
В свою очередь права присваиваются пользователю (u — user), группе(g — group), на всех других (o — other).
Права на файлы также могут отображаться в виде цифр, а не букв rwx, где для r (чтение) соответствует 4, для w (запись) соответствует 2, для x (выполнение) соответствует 1.
Цифровое обозначение позволяет нам посчитать права, которые мы хотим задать:
— права на все (rwx) 4 + 2 + 1 = 7
— права на чтение и запись (rw-) 4 + 2 + 0 = 6
— права на чтение и выполнение (r-x) 4 + 0 + 1 = 5
— права на чтение (r—) 4 + 0 + 0 = 4
— права на запись (-w-) = 0 + 2 + 0 = 2
— прав нет (—) 0 + 0 + 0 = 0
Посмотреть права текущей директории можно командой:
ls -l
[root@localhost zabbix]# ls -l total 24 -rwxrw-r-- 1 zabbix ithelp21ru 460 Dec 10 22:31 zabbix_server.log
либо, для просмотра любой другой директории мы можем указать путь
ls -l /var/log/zabbix
В данном выводе мы получили следующую информацию:
-rwxrw-r-- делим на три равные части по 3 (rwx),(rw-)(r-- ). (rwx) - права доступа для владельца, на чтение, запись и выполнение; (rw-) - права доступа для группы, только на чтение и запись; (r--) - для всех остальных права только для чтения; zabbix - владелец файла; ithelp21ru - группа; zabbix_server.log - имя файла;
В цифрах права доступа rwxrw-r— выглядят как 764.
Познакомились как читать права фалов и директорий, теперь ознакомимся как назначить права на файлы и директории в Linux.
Для изменения прав используется команда «chmod«:
Изменим права файла с 764 на 766, то есть повысим привилегии для других пользователей.
[root@localhost zabbix]# chmod 766 zabbix_Server.log
Следующая команда будет для директории /var/log/zabbix/ с ключом -R, что позволяет нам применить права 764 для всех файлов в данной директории.
[root@localhost zabbix]# chmod -R 764 /var/log/zabbix/
Теперь разберемся с вопросом: «Как изменить владельца папки или файла в Linux?»
Как было написано вначале статьи есть три типа прав: для владельца,для группы, для всех остальных.
За изменение владельца папки или файла в Linux отвечает команда «chown».
Примеры:
Назначим пользователя и группу sanek на директорию /zabbix со всеми файлами в нем.
[root@localhost zabbix]# chown -R sanek:sanek ./zabbix
без ключа -R соответственно изменения будут только применены на директорию.