7

У меня есть профессор, который настаивает на том, чтобы всегда вводить chmod 7777 , но меня учили, что chmod 777 - это правильное соглашение.

Я опробовал их в командной строке и chmod 777 something.txt

-rwxrwxrwx   1 home  staff    0 May  6 16:47 something.txt

и chmod 7777 something.txt дает

-rwsrwsrwt   1 home  staff    0 May  6 16:47 something.txt

Что меняет исполняемые поля на s, s и t. Я понимаю 777, потому что это 111 111 111 в двоичном формате, поэтому он просто включает все поля, но зачем мне использовать 7777 и что он делает по-другому?

4 ответа4

11

В 7777 первые три бита - флаги setuid , setgid и sticky . Они должны быть установлены только при особых обстоятельствах. Вы правы, что 777 является более подходящим параметром (если вы хотите, чтобы файл был доступен для записи как в мире, так и в мире).

И если файл не является исполняемой программой или скриптом или каталогом, обычно вам не следует устанавливать биты x . Это не сильно вредно.

1

У разумного профессора нет причин настаивать на установке setuid/gid и липких битов, так что, возможно, вы путаете 7777 и 0777 .

Разрешения указываются в виде восьмеричного числа, правильное соглашение для их представления заключается в добавлении 0 . Это так же, как когда 0x используется для различения шестнадцатеричного числа.

Обратите внимание, что chmod не ожидает, что разрешения будут выражаться в десятичном или шестнадцатеричном формате, поэтому этот восьмеричный префикс является необязательным.

0

Крайняя левая цифра - это setuid, setgid и stickybit. Первые два устанавливают эффективные идентификаторы пользователя и группы пользователя, открывающего файл. Я не знаю, что такое залипание.

-1

Фиксированный бит используется, чтобы сообщить операционной системе, насколько это возможно, сохранить файл в оперативной памяти, чтобы уменьшить чтение с диска и уменьшить задержку. Это применяется к файлам, которые часто предъявляются к суду и требуются с высокой скоростью. Некоторые ОС и программные системы игнорируют его или используют другие методы для достижения того же результата. Но именно отсюда и происходит липкое имя (держите его в памяти, когда это возможно)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .