chmod
команда изменяет атрибуты из файла/папки:
chmod 666 file/folder
означает, что все пользователи могут читать и записывать, но не могут выполнить файл/папку;chmod 777 file/folder
разрешает все действия для всех пользователей;chmod 744 file/folder
позволяет только пользователю (владельцу) выполнять все действия; группе и другим пользователям разрешено только читать.
разрешение: user(u) group(g) other(o)
/¯¯¯\ /¯¯¯\ /¯¯¯\
восьмеричный разряд: 6 6 6
двоичный: 1 1 0 1 0 1 1 0
что разрешать: r x r x r x r x r x x x
двоичный - 1: включен, 0: отключен
что разрешать - r: читать, w: писать, x: выполнять
разрешение на - пользователь: владелец, создающий файл/папку
группа: пользователи из группы, членом которой является владелец.
прочие: все остальные пользователи
В качестве альтернативы можно выполнить команду с более интуитивным синтаксисом, без необходимости мыслить двоично или восьмерично (но знание числового синтаксиса так важно): chmod u=rw, g=rw, o=rw file/folder
Помните, что разрешение изменяется командой chmod
требует как минимум 3 аргумента, поэтому chmod 666
ничего не делает без явного изменения разрешения файла/папки. Также не забудьте критиковать, если это не приводит к небезопасным ситуациям или просто к бесполезному изменению разрешений, потому что chmod 666
разрешит запись файла/папки всем, а выполнение - никому.
На самом деле, это делает файл читаемым и записываемым владельцем файла, группой владельцев файла и всеми остальными, использующими машину (все). Применимый к каталогу, он позволяет всем читать (получать списки содержимого файлов) каталога и записывать (создавать, редактировать файлы в каталоге), но не выполнять файлы из каталога.
Для получения более подробной информации о том, как работает chmod
, ознакомьтесь с этим удобным учебником.
Как упоминалось в других ответах, chmod означает режим изменения. Он влияет на права на чтение, запись и исполнение для владельца, группы и других категорий пользователей. Цифры, которые следуют за командой (в данном случае 666), показывают, как изменяются эти разрешения для файла, на котором выполняется команда (для 666 это означает, что у владельца, группы и других пользователей есть разрешения на чтение и запись, но нет разрешений на исполняемые файлы).
Изменяя числа на разные значения, вы фактически меняете права доступа к файлу. Ссылка, на которую я ссылался выше, содержит небольшой инструмент, позволяющий понять, какие значения вам нужно ввести, чтобы получить нужную вам схему разрешений. Она также просматривает опции переключателя, доступные для команды, и некоторые примеры, чтобы помочь вам лучше понять, как она работает
. Команда chmod (сокращенно от change mode) - это Unix-команда, позволяющая оператору сказать системе, сколько (или мало) доступа она должна разрешить к файлу. Команда chmod 666
означает, что все пользователи будут иметь права на чтение и запись.
Если ваши вопросы больше касаются части 666, чем части chmod, я бы сослался на The Linux Documentation Project, где есть достойное объяснение того, как работают разрешения на файлы в Linux.
.