Удаление chmod 0 файлов без прав суперпользователя?

Сценарий PHP accidentially изменил правильные флаги (chmod) каталога к 0. (Никакой доступ к кому-либо, включая владельца). Если у меня нет корневого доступа к этому серверу, действительно ли возможно удалить файл снова с FTP или PHP?

2
задан 18.12.2009, 09:41

3 ответа

Запрещая некоторое использование ACLs вне основной системы разрешения, a chmod 000 может быть отменен без дополнительных полномочий. Биты полномочий управляют доступом к содержанию файла, но они не управляют доступом для записи к самим битам полномочий. Как правило, у корня и владельца файла всегда есть доступ для записи к битам полномочий. Так, необходимо смочь 'восстановить' файл, пока можно принять меры как владелец файла.

$ id -u                                       
501
$ echo foo > foo                              
$ stat -f '%u %p' foo; cat foo                
501 100644
foo
$ chmod 000 foo
$ stat -f '%u %p' foo; cat foo
501 100000
cat: foo: Permission denied
$ chmod 644 foo
$ stat -f '%u %p' foo; cat foo
501 100644
foo

Если у Вас есть доступ оболочки, и Ваш пользователь оболочки владеет файлом (или Ваш пользователь может измениться на владельца файла (su/sudo / …)), то просто chmod это назад вручную. Иначе, если можно отредактировать Сценарий PHP (и выполнения PHP как владелец файла), просто отредактируйте его к chmod файл к желаемым полномочиям.

6
ответ дан 08.12.2019, 05:58

Если можно исправить PHP, который создал файл во-первых, возможно, Вы могли заставить PHP сбросить полномочия к тому, что Вы хотите...

0
ответ дан 08.12.2019, 05:58

В основном, нет. Вы потеряли весь доступ к файлу. Только корень может изменить полномочия на том файле. Свяжитесь со своим системным администратором или администраторами хостинговой компании или ISP, размещающего сайт.

-1
ответ дан 08.12.2019, 05:58

Теги

Похожие вопросы