Права доступа к файлам в Linux
В данной статье мы с вами будем говорить о том, как правильно нужно обозначать права доступа к различным файлам системы Unix или других подобных ей. Также на конкретном примере мы попытаемся разъяснить, что обозначают цифры 777, 555 и другие символы drwxrwxrwx. Итак, начнем с того, что право доступа к файлам могут обозначаться как буквами, так и цифрами. И эти записи – буквенные или цифровые, полностью совпадают. Приведем просто пример. Если вы увидите значение «777» то можно смело говорить о том, что оно идентично буквенному значению «drwxrwxrwx».
Если говорить просто, стоит сказать о том, что есть всего, лишь три вида прав, предоставляющих доступ к файлам рассматриваемой нами системы. Первый вид – чтение, который можно определить по букве р ( от английского read — читать). Второй вид доступа — запись, который можно определить по букве в (от английского write – писать). Ну и третьим видом доступа является выполнение, который можно определить по букве х (от английского execute).
Далее стоит сказать о том, что право доступа к файлам есть у трех видов пользователей, непосредственно, владельца нужной парки или файла, определенной группы пользователей (в том числе и владельца), а также остальных пользователей.
Теперь давайте рассмотрим вопрос о том, как можно определить право доступа, используя определенные символы. Приведем простой пример. Допустим, для того, чтобы все пользователи могли получить полный доступ к файлу с названием drwxrwxrwx, его нужно разделить на 4 основные части — d rwx rwx rwx. Первая часть может быть как директорией, так и каким-то определенным файлом. Во второй части пользователь может ознакомиться с правами, которыми обладает владелец определенного файла или папки. Причем хотелось бы отметить, эта часть может быть представлена в трех основных видах – чтении, записи, выполнении. При ознакомлении с третьей частью можно увидеть права доступа, которые имеет определенная группа пользователей, в которую также входит и владелец файла. Ну а в четверной части остальные пользователи файлов могут ознакомиться со своими правами.
Для большей наглядности попробуем расписать несколько несложных примеров. Предположим, что вывод существующей директории «test» представлен в таком виде:
gt# ls -la
total 6
drwxr-xr-x 3 igor users 512 May 16 11:06 .
drwxr-xr-x 5 igor users 512 May 16 11:05 ..
-rwxr-xr-x 1 igor users 0 May 16 11:06 script.pl
drwxr—– 2 igor users 512 May 16 11:06 test2
-rwxrw-r– 1 igor users 0 May 16 11:06 text.txt
Рассматриваем запись слева направо. Для начала можно ознакомиться с правами на существующий файл, дальше увидеть, сколько существует ссылок для доступа к нему. Также определяется имя владельца файла или папки, размер файла, а также дата, когда были внесены последние изменения в него. Итак, говоря о нашем конкретном примере, можно расшифровать его так: 1) script.pl – имеет право доступа и выполнения действий с объектом. А вот все остальные пользователи, в том числе и группа пользователей, в которую входит владелец, могут лишь читать и выполнять конкретный файл. 2) test2 –говорит нам о том, что файл, который мы ищем, является директорией, указывает, по скольким ссылкам мы можем к нему добраться, а также то, что владелец имеет право полностью использовать файл, а группа пользователей лишь читать его. Остальным пользователям доступ к файлу закрыт.
Итак, читаем слева направо и узнаем права на конкретный файл, число ссылок, кто является владельцем, группа, в которую входит владелец, каков размер файла, а также период последних изменений.
Права доступа к файлу обозначаются 3 цифрами – владелец, группа, остальные. Чтение обозначается 4, запись 2, выполнение 1. Для получения значения доступа мы складываем права для каждой части. Простой пример. 7 (4+2+1) — с файлом можно выполнять все действия, 6 (4+2) — только читать и записывать, 5 (4+1) — только выполнять и читать.
Рассматривая созданную папку «test» уже знаем, что право доступа к ней выглядит так: script.pl 755 или -rwxr-xr-x
text.txt 764 или -rwxrw-r–
test2 740 или drwxr—–
Источник: qwedr.com