Sonntag, 16. Februar 2014

The Fabulous Deleting One

Einzelne Dateien im Webspace können nicht mittels FTP-Client gelöscht werden

Das Problem

Werden von einem Script im Webspace eines Servers automatisch Dateien in ihm abgelegt, ist es oftmals nicht möglich, diese wieder mithilfe eines externen FTP-Programms manuell zu löschen. Dieses Problem kann auftreten, wenn der Server (und das Betriebssystem) einem auf ihm laufenden Script eine andere Benutzergruppe zuordnet als einem externen FTP-Programm. Unixbasierte Systeme (u. a. Linux) beispielsweise unterscheiden bei den Datei­be­rech­ti­gungen zwischen dem Besitzer einer Datei, einer Benutzergruppe und Anderen. Diesen Nutzern können jeweils Lese-, Schreib- und Ausführungsrechte zugewiesen werden. Im beschriebenen Problemfall verfügt der Nutzer „FTP-Client“ also nicht über die Berechtigung, die von einem Script angelegten Dateien wieder zu löschen.

Die Lösung

Als Lösung des Problems bietet es sich an, die abgelegten Dateien und Verzeichnisse ebenfalls mit einem auf dem Server laufenden Script zu löschen. Und genau dies macht The Fabulous Deleting One. Ursprünglich für unseren internen Gebrauch programmiert, möchten wir Ihnen nun die Software kostenlos als Freeware unter der Selcox Free Software License zur Verfügung stellen.


Screenshot The Fabulous Deleting One
Screenshot The Fabulous Deleting One

The Fabulous Deleting One ist eine einzelne, in PHP geschriebene Datei. Es ist daher notwendig, dass auf dem Server auch PHP ausgeführt wird. Verwenden Sie zum Aufruf des Tools einen aktuellen, modernen Browser. Das Script wird als Freeware-Tool für Programmierer und Administratoren nicht mit Rücksicht auf Abwärtskompatibilität zu veralteten Browsern entwickelt.

Kopieren Sie einfach die Datei „eraser.php” mit Ihrem FTP-Programm in das Serververzeichnis, das Sie aufräumen möchten. Rufen Sie dann das Script aus Ihrem Browser heraus auf und folgen Sie den Anweisungen.

Achtung

Seien Sie dabei aber vorsichtig! Dieses Programm soll (und wird wahrscheinlich auch) alle Dateien und Unterordner, die sich in dem gleichen Verzeichnis wie das Script selbst befinden, unwiderruflich löschen. Falls Sie zuvor nicht ein korrektes Backup erstellt haben, werden diese Dateien und Ordner nicht wieder herstellbar sein. Sie sollten sich also stets darüber im Klaren sein, was Sie gerade tun. Wir übernehmen keinerlei Garantien für einen etwaigen Datenverlust. Eine Unachtsamkeit Ihrerseits könnte sich so zu Ihrem ganz persönlichen, kleinen Programmiereralptraum entwickeln...

Was ist, wenn der Inhalt eines Verzeichnisses unterschiedlichen Benutzern zugeordnet ist?

Sollten in einem Verzeichnis Ordner und Dateien enthalten sein, die zum Teil von einem Script angelegt und zum Teil mittels eines FTP-Clients hoch geladen wurden, ist es möglich, dass diese verschiedenen Benutzern zugeordnet sind.

In diesem Fall kann man zuvor mithilfe seines FTP-Programms allen enthaltenen Dateien und Ordnern Lese-, Schreib- und Ausführungsrechte für alle Personen zuweisen. Auf unixbasierten Systemen werden diese oftmals nummerisch als Oktalwert „777“ angegeben. Dieser Vorgang wird lediglich Auswirkungen auf Inhalte haben, auf die der FTP-Client diesbezüglich Zugriffsrechte hat. Achten Sie bei Ordnern darauf, auch deren Unterordner einzubeziehen. (Einige Programme verwenden dafür die Formulierung „rekursive Ausführung“).

Danach kann man mit The Fabulous Deleting One alle Dateien und Ordner in einem Schritt löschen.

Nach getaner Arbeit

Nachdem Sie das entsprechende Verzeichnis bereinigt haben, sollten Sie das PHP-Script „eraser.php” selbst mithilfe Ihres FTP-Clients manuell löschen. Andernfalls kann jeder, der über seinen Browser Zugriff auf das  Programm hat, alle zukünftigen Inhalte des Verzeichnisses immer wieder löschen.

Versäumen Sie keine neue Version!

Meldungen zu Verbesserungen und Updates von The Fabulous Deleting One finden Sie auf unseren Angeboten im Sozialen Netz. Folgen Sie uns auf:


Download

The Fabulous Deleting One können Sie von unserer Homepage auf der Seite selcox.de/tfdo kostenlos herunterladen.