Я новичок в системе Linux, и когда я выучил команды, я научился изучать права доступа и владельцев. Я понял все команды, но не понял специального разрешения. Я имею в виду chmod u+s, chmod g+sи chmod u+t. Может кто-нибудь объяснить это для меня?
Дело о специальном разрешении на Linux
2 ответа
S-бит или sticky-бит позволяет влиять на выполнение исполняемых файлов или на то, как обрабатываются каталоги. Для того, как это работает, setuid также очень важен.
Обычное использование:
Чаще всего этот бит закреплен в каталогах, находящихся в файловых системах для Unix-подобных операционных систем. Когда установлен липкий бит каталога, файловая система обрабатывает файлы в таких каталогах особым образом, так что только владелец файла, владелец каталога или корень может переименовать или удалить файл.
Так же как:
setuid и setgid (сокращение от «установить идентификатор пользователя при выполнении» и «установить идентификатор группы при выполнении» соответственно) - это флаги прав доступа Unix, которые позволяют пользователям запускать исполняемый файл с разрешениями владельца или группы исполняемого файла соответственно и изменять поведение в каталогах.
Таким образом, вы можете использовать его для «защиты» каталога или позволить пользователю запускать программу, которая требует повышенных привилегий, без явного предоставления их пользователю. Например, у вас может быть скрипт, которым владеет root, с установленным битом закрепления, и если вы выполните его, он будет выполнен так, как если бы вы были пользователем root.
Если вы посмотрите на страницу руководства, вы увидите, что s обозначает бит setuid / gid, а t обозначает бит удаления.
установить идентификатор пользователя или группы при выполнении (ях), флаг ограниченного удаления или фиксированный бит (t)
Смотрите также:
chmod u + s chmod g + s chmod u + t
Оператор + добавляет режим в класс. Например:
chmod u+s Добавляет s-режим (setuid) к классу u (владельцу файла).
Статья в Википедии объясняет это довольно хорошо: https://en.wikipedia.org/wiki/Chmod
Также см:
info chmod man chmod
Пожалуйста, будьте более сложными. Какие команды вы узнали? Что вы поняли и что не поняли? Вы говорите о sbit или о каких «специальных разрешениях» вы говорите?