Я пытаюсь очистить журналы, но у меня нет разрешения, поскольку права доступа к файлам в журналах ошибок Apache выглядят следующим образом: -rw-r -----
Когда я пытался сделать что-то вроде chmod 777 error.log
Я получил эту ошибку: chmod: изменение разрешений на `error.log.1 ': операция не разрешена
Есть идеи, как изменить мои разрешения, чтобы позволить себе очистить журналы и удалить старые файлы журнала ошибок?
Спасибо алекс
Вы не указали владельца файла, но я предполагаю, исходя из того, что вы описываете, что он принадлежит пользователю root, а группа принадлежит пользователю вашей группы.
Вы не можете изменить режим разрешений для файла, который не принадлежит вашему пользователю, если вы не являетесь пользователем root, и вы не можете удалить файл из каталога, в котором у вас нет прав на запись, через пользователя или владельца группы этот каталог. Поэтому, если у вас нет root-доступа, вам придется попросить об этом администратора.
Если я правильно помню, в большинстве современных дистрибутивов Linux файлы журнала apache по умолчанию принадлежат root, с корнем группы. Таким образом, вам потребуется доступ на корневом уровне, чтобы изменить разрешения или очистить журналы. Если у вас этого нет с помощью входа в систему с правами root, sudo, su или какого-либо инструмента root setuid, вам, вероятно, не повезло.
Если вы можете использовать sudo, это должно быть так просто:
sudo cat /dev/null > error.log
который полностью очистит файл журнала (удалив его), но сохранит разрешения.
Вы можете изменить разрешение файла, если вы используете sudo перед командой:
sudo chmod 777 /var/log/error.log
Вам нужно будет добавить себя в файл sudoers как пользователь root:
visudo
В качестве альтернативы вы можете создать группу журналов и добавить себя в группу, а затем изменить групповое владение всеми вашими файлами журналов на группу журналов.