Überprüfen Sie ggf. die erweiterten Attribute:
# lsattr file ----i-------------- file # chattr -i file
Das "i" -Bit ist "unveränderlich", was bedeutet, dass es allen Änderungen widersteht.
Ich habe eine Datei auf meinem Webserver, die ich nicht umbenennen, löschen, verschieben, bearbeiten kann. Ich habe die Berechtigungen auf 777 festgelegt. Was kann ich noch tun?
BEARBEITEN: zu klären - dies ist ein Hosting-Service, auf den ich keinen Shell-Zugriff habe. Die Datei ist eine Drupal-Installation settings.php.
LÖSUNG: Verzeichnisdateiberechtigungen waren ungenau. Danke, wer hat vorgeschlagen, das zu überprüfen.
Überprüfen Sie ggf. die erweiterten Attribute:
# lsattr file ----i-------------- file # chattr -i file
Das "i" -Bit ist "unveränderlich", was bedeutet, dass es allen Änderungen widersteht.
Meine Vermutung ist, dass es eine dieser nervigen .pureftp-upload
Dateien ist. Auch wenn dies nicht der Fall ist, gibt es zwei Möglichkeiten, wie ich mit diesen Dateien umgehen kann.
$ f = ".pureftp-upload.23kjfvds9osd890235mn"; unlink ($ f);
Dann umgeben Sie den obigen Code mit <?php
am Anfang und ?>
am Ende (Code-Formatierung lässt sich mit PHP-Tags nicht abspielen).
Was kann ich sonst noch tun?
"ls -lZ file"
?ls -i
, um den Inode der Datei anzuzeigen, und versuchen Sie, sie anhand der Inode-Nummer zu entfernenBenutzung auf eigene Gefahr.
Wenn sich diese Datei in einem Ordner befindet, von dem angenommen wird, dass er über den Apache-Webdienst erreichbar ist, müssen Sie Apache möglicherweise für einen Moment stoppen und dann Ihre Änderungen vornehmen.
Ich weiß, dass IIS in Windows etwas Ähnliches hat, bei dem, wenn auf die Datei möglicherweise zugegriffen werden könnte, die Benutzerrechte keine Rolle spielen.