Только владелец файла или пользователь root, могут изменить полномочия файла. Текущие полномочия на файле или на его родительском каталоге являются несоответствующим ¹. Это указано в POSIX:
Приложение должно гарантировать, что эффективный идентификатор пользователя процесса соответствует владельцу файла, или процесс имеет соответствующие полномочия, чтобы сделать это.
На большинстве нельдов, “соответствующие полномочия” означают работать как корень. Если эти условия не соблюдают, chmod
обычно сбои с EPERM
, хотя другие поведения, такие как прерывание программы из-за нарушения безопасности разрешены.
Кроме того, некоторые варианты Unix имеют системные особенные методы авторизации или запрещения chmod
. Например, Linux имеет возможность (CAP_FOWNER
) это позволяет процессам изменять полномочия файла и другие метаданные независимо от его владельца.
Существуют другие причины chmod
мог бы перестать работать даже при том, что файл существует, доступен и имеет соответствующего владельца. Общие включают файловую систему только для чтения или файловую систему, которая не поддерживает полномочия, такие как FAT. Менее общие включают определенные для системы ограничения, такие как неизменный атрибут в ext2 файловой системе и преемниках Linux.
¹ Кроме того, поскольку он обрабатывает выполнение chmod
должен смочь получить доступ к файлу, таким образом, он должен иметь, выполняют разрешение на каталоге, содержащем файл и любой другой каталог, который он пересекает, чтобы сделать так.
Запуск sudo nano /etc/default/grub
найдите строку, которая теперь говорит GRUB_CMDLINE_LINUX_DEFAULT=”quiet splash”
и пересмотрите его для чтения GRUB_CMDLINE_LINUX_DEFAULT=”quiet splash text”
затем выполненный sudo update-grub
Ваша следующая начальная загрузка принесет Вам к интерфейсу командной строки (CLI).