Hilfe: locked flag (uchg) geht beim Zippen verloren!?

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Hilfe: locked flag (uchg) geht beim Zippen verloren!?

    Hallo,
    ich habe in einem Quellordner eine geschützte Datei (locked/uchg), die ich zippe und wieder unzippe. Anschließend ist das locked flag der Datei nicht mehr vorhanden.
    Ich habe die Datei gezippt mit
    [font='&quot']ditto -c -k --sequesterRsrc QuellOrdner test.zip
    Alternativ habe ich es auch mit div. Zip-Tools getestet und mit verschiedenen Tools entpackt. Immer mit dem gleichen Ergebnis, dass die Datei nach dem Entpacken ihr uchg Flag verloren hat.
    Ich habe es mit verschiedenen Dateien reproduziert und habe auch alle Admin Rechte. (Trotzdem auch mit sudo getestet)

    Jetzt bin ich nicht der große Mac-Spezialist, deshalb meine Fragen:
    1. Ist dieses Verhalten evtl. normal und ich kann das uchg Flag nicht in einer PKzip Datei erhalten?
    2. Falls nicht normal, was mache ich falsch, bzw. wie kann ich das Flag erhalten?
    Vielen Dank für jeden Hinweis
    Tiemo


    [/font]
  • habe das hier gefunden:
    Only a limited number of utilities are chflags aware. Some of these tools include
    ls(1), cp(1), find(1), install(1), dump(8), and restore(8). In particular a tool
    which is not currently chflags aware is the pax(1) utility.
    Also anscheinend kann man das uchg Flag gar nicht in einem zip erhalten, weil das Zip-Tool (ditto) nach dem Erstellen der File-Kopie das Flag wieder neu setzen müsste...
  • Meines Erachtens macht das auch keinen Sinn. Das Flag ist, wie Du selber schreibst, eine Sperre auf der Datei. Mit einer Sperre verhindert ein Programm oder Nutzer den Zugriff anderer Programme auf die Datei.

    Mit ditto erstellst Du nun eine Kopie der Datei. Wer ist nun der Eigentümer der Sperre an der Kopie? Das Programm oder der Nutzer, das die ursprüngliche Sperre erzeugt hat? Ditto?

    Weshalb willst Du überhaupt die Sperre mit kopieren?
    „Meine Komplikation hatte eine Komplikation.“
  • hmm,
    die geschützte Datei ist eine (read-only) Datenbank meiner Anwendung, die ich auf Anraten des DB-Herstellers mit einem Schreibschutz versehe, um bestimmt Fehler auf manchen Maschinen zu vermeiden. Für einen automatischen Update meiner Applikation zippe ich die zu aktualisierenden Dateien, lade sie hoch und mein Updater holt sich das gezippte Update, entpackt es und aktualisiert die entsprechenden Dateien. Und wenn ich mein geschütztes DB-File nun update, muss der Schreibschutz "erhalten bleiben".
    Ich habe nun den Workaround gemacht, dass ich nach dem Update in meinem Programmstart den Schreibschutz auf die DB per Applescript setze. Geht auch, wäre anders herum nur einfacher gewesen, da keine Programmänderung notwendig und da ditto ja auch die __MACOSX/ Folder mit erstellt, war ich davon ausgegangen, dass ditto alle Flags mit "kopiert".