Я использовал ls -l чтобы найти права доступа к файлу в оболочке и нашел это:

Файл 1: -rw-r--r-- 1 root root 451 Mar 9 15:25 file.class.php

Файл 2: -rw-rw-r-- 1 andy dev 872 Mar 9 15:43 file.class.php

Я хочу, чтобы разрешения файла 1 были изменены на разрешения файла 2. У меня есть root-доступ и я cd'd для соответствующих каталогов. Я никогда не использовал chmod раньше, и у меня возникли некоторые проблемы. Когда я пытаюсь сделать это:

chmod 872 file.clas.php

Я получаю сообщение об ошибке: chmod: invalid mode: '872'

1 ответ1

3

В этом пятом столбце указан размер файла, а не разрешения. Разрешения перечислены слева в развернутом виде. Разрешения для первого файла 644 в восьмеричном виде (сложите вклады для каждого бита: r-- = 4, -w- = 2, --x = 1, поэтому rw- = 6) и разрешения для второго файл 664. Поэтому вы хотите

chmod 664 file.class.php

Кроме того, помните, что три группы разрешений - это user, group и другие, поэтому rw-rw-r-- - это «user rw, group rw, other r». Затем, чтобы изменить rw-r--r-- на rw-rw-r-- , вам нужно добавить права на запись в группу, т.е.

chmod g+w file.class.php

Это позволяет обновлять разрешения индивидуально.

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