Когда вам нужно изменить права доступа к файлу или каталогу, основным инструментом, который вы будете использовать, является команда chmod (изменить режим). Понимание того, как изменить разрешения в Linux, является фундаментальным навыком для любого пользователя. Команда chmod предлагает два основных метода для этой задачи: символьный и числовой режимы.
Использование символьного режима
Символьный режим часто считается более читаемым, поскольку он использует буквы для обозначения пользователей и разрешений. Сначала вы указываете, какой набор разрешений хотите изменить (пользователь, группа или другие), затем используете + для добавления разрешения или - для его удаления.
u(пользователь/владелец)g(группа)o(другие)a(все: пользователь, группа и другие)
Давайте посмотрим, как изменить права доступа к файлу в стиле linux, на некоторых примерах.
Чтобы добавить право на выполнение для пользователя в файле, вы бы использовали:
chmod u+x myfile
Эта команда добавляет (+) право на выполнение (x) для пользователя (u) в файле myfile.
Чтобы удалить разрешение, используйте оператор -. Например, чтобы удалить право на запись для группы:
chmod g-w myfile
Вы также можете изменять несколько разрешений одновременно. Следующая команда добавляет право на запись как для пользователя, так и для группы:
chmod ug+w myfile
Использование числового (восьмеричного) режима
Еще один мощный способ, который предлагает изменение разрешений в Linux, — это использование числового, или восьмеричного, режима. Этот метод позволяет одновременно установить все разрешения для пользователя, группы и других с помощью трехзначного числа.
Разрешения представляются следующими значениями:
4: чтение (r)2: запись (w)1: выполнение (x)
Чтобы установить набор разрешений, вы складываете числа. Например, чтобы предоставить права на чтение, запись и выполнение, вы бы использовали 4 + 2 + 1 = 7.
Рассмотрим распространенный пример:
chmod 755 myfile
Как работает эта команда linux change permission? Давайте разберем число 755:
- 7 (Пользователь):
4 + 2 + 1-> Пользователь получает права на чтение, запись и выполнение (rwx). - 5 (Группа):
4 + 0 + 1-> Группа получает права на чтение и выполнение (r-x). - 5 (Другие):
4 + 0 + 1-> Все остальные пользователи получают права на чтение и выполнение (r-x).
Соображения безопасности
Хотя chmod является важным инструментом, его следует использовать осторожно. Изменение разрешений без понимания последствий может подвергнуть конфиденциальные файлы несанкционированному изменению или просмотру. Например, рекурсивная установка разрешений 777 (chmod -R 777 /some/directory) — распространенная, но опасная практика, которая предоставляет всем полный доступ на чтение, запись и выполнение. Всегда применяйте принцип наименьших привилегий, предоставляя только те разрешения, которые строго необходимы.