
Ich habe mich immer gewundert, warum das Löschen von Verzeichnissen über PHP oder Shell nicht so einfach war wie in Windows, wo man einfach auf Löschen klickte. Jetzt ist mir klar, dass beim Löschen lediglich die Verknüpfung von Dateien mit der Dateizuordnungstabelle aufgehoben wird. Um also ein Verzeichnis zu löschen, müssen Sie die Verknüpfung aller darin enthaltenen Dateien aufheben.
Ist es möglich, dass der Verzeichniseintrag gelöscht wird, nicht aber die Einträge der darin enthaltenen Dateien? Suchen Betriebssysteme regelmäßig nach Dateien, die im Dateisystem nicht erreichbar sind?
Antwort1
Viele UNIX-Systeme haben einen unlink
Befehl, der es dem Benutzer ermöglicht root
, ein Verzeichnis zu trennen, aber esnichtrekursiv den Inhalt des Verzeichnisses trennen, es ist also sehr gefährlich. Wenn das jemals passiert, verwenden Sie , fsck
um das getrennte Verzeichnis wiederherzustellen, das im Ordner des Dateisystems mit einem zufälligen Namen angezeigt wird lost+found
(da der Name verloren ging, als das unlink
passierte).
Antwort2
Ja, das ist möglich, wenn auch eher unwahrscheinlich, da es im Betriebssystem Verfahren gibt, die dies verhindern sollen, aber Festplattenfehler und Merkwürdigkeiten können dazu führen, dass Dinge passieren.
Dies ist im Allgemeinen das, waschkdsk,fsckund eine ganze Reihe anderer Dienstprogramme sind dafür konzipiert. Sie lesen die Zuordnungstabellen und gleichen sie mit den bekannten Dateieinträgen ab. Wenn etwas nicht stimmt, werden entsprechende Maßnahmen ergriffen.
In Windows können Sie Windows normalerweise mitteilen, dass Sie eine Überprüfung wünschen, indem Sie in dasEigenschaftenOption, wenn Sie mit der rechten Maustaste auf die Laufwerkssymbole klicken. EskönnteFühren Sie dann die Prüfung durch, obwohl Windows anscheinend Prüfungen des Startvolumes bevorzugt. Sie erhalten dann die Meldung, dass dies beim nächsten Neustart geschieht.
Unter Linux ... können Sie sich ernsthaft verletzen, wenn Sie mit dem Dienstprogramm fsck auf einem aktiven System herumspielen. Deshalb führen Linux-Boxen ihre File-System Checks (fsck!) im Allgemeinen immer beim Start durch. Ein einfacher Neustart löst häufig eine Prüfung aus. (obwohl ich weiß, dass auch das Abschalten des Stroms von meinem Heimserver bei Ausfall der USV eine solche auslöst!) (Dateisystem wird als fehlerhaft markiert)
OS X? Keine Ahnung. Ich dachte einfach, du hättest neben der Maschine einen Latte getrunken und sie hätte das Problem selbst behoben, indem sie sich mit der nächsten GeniusBar verbunden hätte. (Ich glaube, du musst wahrscheinlich auch in oder in der Nähe eines Starbucks™ sein)