Posts Tagged ‘single user mode’

h1

Backups.backupdb löschen

31. Dezember 2009

Böse Geschichte: Ein sich aufgehängtes Backup mittels Time-Machine auf eine externe WD MyBook Studio Edition (1 TB) hinterliess ein nicht mehr zu löschendes Verzeichnis Backups.backupdb. Nach intensiver Suche in Büchern und Foren habe ich dann eine Lösung gefunden.

Die Lösung in Kurzform (für Leopard):

  1. Deaktivieren der ACLs (fsaclctl)
  2. Löschen des Verzeichnisses im Finder (nicht auf der Komandozeile)

Lösungsansätze für Snow-Leopard siehe Ende des Artikels.

Meine Odysee und Erkenntnisse


Flags

Quellen
Kommandozeile
    $ ls -lO datei01
    -rw-r--r--  1 ingolantschner  ingolantschner  uchg 0 31 Dez 13:00 datei01
    $ chflags nouchg datei01
    $ ls -lO datei01
    -rw-r--r--  1 ingolantschner  ingolantschner  - 0 31 Dez 13:00 datei01
    $ sudo chflags schg datei01
    $ sudo chflags noschg datei01
    $ ls -lO datei01
    -rw-r--r--  1 ingolantschner  ingolantschner  schg 0 31 Dez 13:00 datei01
    $ ls -lO datei01
    -rw-r--r--  1 ingolantschner  ingolantschner  - 0 31 Dez 13:00 datei01

Ergebnis: An den Flags lag es also nicht.


ACLs komplett entfernen

Quelle: http://discussions.apple.com/thread.jspa?threadID=1469957

    $ sudo chmod -R -N Backups.backupdb/
    chmod: Failed to clear ACL on file spinning-globe.scm: Operation not permitted

Sandbox

Schaut ganz nett aus das Tool – setzt die Rechte aber auch nicht um. Das sehen wir z.B.

hier:

    $ ls -le Installer\ Log\ File
    -rwxrwxrwx@ 3 lisi  staff  12922 23 Sep  2008 Installer Log File
     0: group:everyone deny write,delete,append,writeattr,writeextattr,chown

Ausserdem gibt es von Seiten Sandbox keine Rückmeldung, dass das Setzen der Berechtigungen fehlschlug. Ein zuverlässiges Werkzeug schaut anders aus.

Interessant: Dieses pauschale evereyone deny schaut nicht gut aus … ich habe einen Verdacht.

Reproduktion meines Verdachtes
    $ chmod +a "everyone deny write,delete,append,writeattr,writeextattr,chown" datei02
    $ ls -le datei02
    -rw-r--r--+ 1 ingolantschner  ingolantschner  0 31 Dez 14:01 datei02
     0: group:everyone deny write,delete,append,writeattr,writeextattr,chown
    $ rm datei02
    override rw-r--r--  ingolantschner/ingolantschner for datei02? y
    rm: datei02: Permission denied
    $ sudo rm datei02
    Password:
    $ ls -le datei02
    ls: datei02: No such file or directory

Seltsam: Eine so gesperrte Datei kann also sehr wohl noch mit sudo gelöscht werden. (Also an sich ist das nicht so verwunderlich und durchaus eine vernünftige Verhaltensweise des Betriebssystemes – nur im konkreten Fall wähnte ich mich schon einer Erklärung nahe, die jetzt aber nicht zutrifft.) Mein Verdacht, dass das „everyone deny …“ meine Löschversuche ursächlich unterbindet war also unbegründet.


ACLs ausschalten

Quelle: http://www.macosxhints.com/article.php?story=20080128003716101

    $ fsaclctl -p /Volumes/Filme/ -v
    fsaclctl version 1.2
    $ fsaclctl -p /Volumes/Filme/
    Access control lists are supported on /Volumes/Filme/.

    $ sudo fsaclctl -p /Volumes/Filme/ -d
    $ ls -le Installer\ Log\ File
    -rwxrwxrwx@ 3 lisi  staff  12922 23 Sep  2008 Installer Log File

Die ACLs werden nicht mehr angezeigt.

Erster Teilerfolg: Mit sudo rm <datei> lässt sich die Datei nun endlich entfernen.

    $ sudo rm Installer\ Log\ File
    $ ls -le Installer\ Log\ File
    ls: Installer Log File: No such file or directory
Symlink (Alias?) lässt sich nicht entfernen
    $ ls -le
    total 8
    lrwxr-xr-x  1 root  staff   28 30 Dez 17:57 CodeResources -> _CodeSignature/CodeResources
    drwxr-xr-x  5 lisi  staff  170 31 Dez 14:09 Frameworks
    iMac-Ingo:Contents ingolantschner$ sudo rm CodeResources
    Password:
    rm: CodeResources: Operation not permitted

Lösung: Im Finder ist dieser Link dann aber problemlos zu löschen. Und auch der gesamte Verzeichnisbaum Backups.backupdb lässt sich einfach in den Papierkorb werfen. Von dort ist es dann in zwei Schritten auch zu entfernen. (Ich musste den Papierkorb zwei mal entleeren, bis alles weg war.)

Hinweis

In Snow Leopard wird man das tool fsaclctl vergeblich suchen – es wird nicht mehr angeboten. Gerüchteweise kann man aber die Version vom Leopard auch in Snow-Leopard verwenden (man muss es sich halt auf den Schneeleo-Rechner von einer alten Installation kopieren.) Ein weiteres Gerücht besagt, dass man im Single User Mode (cmd + S bei Ertönen des Startgongs drücken) mit rm -rf alles ohne Rückfragen und Einschränkungen löschen könne. Nun ja, das auszuprobieren überlasse ich nun jemand anders – ich bitte um Kommentare :-)

Advertisements