С первым апреля вас, продолжаем.
Решил себе небольшую заметочку сделать о правах пользователей на файл. Как вам наверное известно, в POSIX совместимых операционных системах есть три основных флага доступа к файлу или папке: чтение, запись и выполнение. Обозначаются они соответственно буквами r, w и x.
И немного теории, файлом в POSIX совместимых ОС, владеет один пользователь и одновременно одна группа. Все пользователи, входящие в эту группу, имеют равные права по отношению к данному файлу, которые описываются отдельным флагом.
Теперь запомним три цифры:
4 — чтение
2 — запись
1 — выполнение
Перейдем к даче прав на что либо утилой chmod, опишу самое простое, подробнее можно в man’e посмотреть:
$ chmod xyz some_file_or_folder
Где x — некое число для пользователя, который владеет файлом, y — для группы, которая владеет файлом и z для всех остальных. Как получаются эти числа, рассмотрим на примере:
Задача. Иметь возможность писать/читать пользователю, владеющему файлом, писать/выполнять группе, владеющей файлом и никаких прав остальным.
У нас получается: чтение + запись, запись + выполнение, ничего. Помните о тех волшебных цифрах, которые я писал запомнить ? Слаживаем их:
$ chmod 630 some_file
Ну вот, все просто, ну и на засыпку, поменяем пользователя и группу, владеющих файлом:
# chown user:group some_file