1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

.DS_Store Dateien rekursiv mit anderen Rechten ausstatten?

Dieses Thema im Forum "Unix & Terminal" wurde erstellt von stk, 09.05.08.

  1. stk

    stk Grünapfel

    Dabei seit:
    05.01.04
    Beiträge:
    7.141
    Moin,

    ich würde gerne sicherstellen, das auf Fileshares nur eine gültige Darstellung im Finderfenster existiert und nicht Gredi und Bledi, die sich auf den Server verbinden die Darstellung umstellen können.

    Mein Ansatz wäre, das die dafür zuständigen .DS_Store-Files mit den Rechten admin:staff rw-r--r-- ausgestattet werden, so daß lediglich der (Server)-Admin die Einstellungen vorgeben kann und alle Benutzer der Gruppe staff (also die, die sich auf den Server verbinden) nur noch read-only Rechte haben. Und das bitte für alle Fenster die es im (sehr ausufernden) Verzeichnisbaum der Freigabe geben könnte. Die .DS_Store-Dateien sollen nicht grundsätzlich gelöscht werden (die Lösung hätte ich hier im Forum schon gefunden ;)).

    Die jeweiligen Benutzer könnten sich dann ihre Darstellung zwar wählen, diese würde aber nicht abgespeichert und der nächste fände die Darstellung im Finder wieder im Default vor.

    Wie schaffe ich es nun via Terminal die Rekursion aufzulösen? Ein
    Code:
    chmod -R 644 /Hauptverzeichnis
    würde mir ja die Rechte in allen Dateien und Ordnern verbiegen (was nicht gewollt wäre). Ein
    Code:
    chmod -R 644 .DS_Store
    würde im ersten Verzeichnis enden, da der explizite Dateiname die Rekursion überfährt. Wie heißt die Kombination daraus?

    Der nächste Schritt wäre dann zu schauen, was passiert, wenn ein neuer Ordner angelegt wird. Ich vermute mal, das dann die Rechte für diesen neuen Ordner wieder nicht mehr stimmen werden, so das ich den zu findenden Aufruf möglicherweise wiederkehrend einrichten müßte.

    Oder kennt jemand einen ganz anderen Weg um das Thema zu lösen?

    Gruß Stefan
     
  2. doeme89

    doeme89 Pomme Miel

    Dabei seit:
    27.12.06
    Beiträge:
    1.476
    Ein Applescript dass als Ordneraktion angehängt ist und ständig auf neue Unterordner prüft dürfte abhilfe schaffen. Den Terminalbefehl den du suchst, kenne ich leider nicht... Terminalbefehle können aber grundsätzlich in Applescript ausgeführt werden:
     
  3. stk

    stk Grünapfel

    Dabei seit:
    05.01.04
    Beiträge:
    7.141
    Moin,

    die Ausführung von Shellscripten via AS ist klar. Da wir über einen Server reden, wäre mir eine reine Shell-Lösung am liebsten, zumal AS-Ordneraktionen auf Filemounts (also vom Client aus) alles andere als zuverlässig sind.

    Gruß Stefan
     
  4. IceHouse

    IceHouse Ribston Pepping

    Dabei seit:
    30.09.04
    Beiträge:
    297
    sudo find -x / -user $USER -group $GROUP -type f -name ".DS_Store" | xargs sudo chmod 644

    Eine moegliche Loesung fuer die bestehenden .DS_Store Files. Mit $USER und $GROUP kannst du die .DS_Store Files, die du finden und veraendern moechtest noch eingrenzen. Du kannst diese Eingrenzung aber auch weglassen.

    Gruss von IceHouse
    P.S.: Bzgl. des anlegens von Daten mit bestimmten Rechten solltest du dir mal das Stichwort ACL ansehen. Als Angel sei dir diese hoffentlich hilfreich gesonnen.
     
  5. tfc

    tfc Ontario

    Dabei seit:
    21.07.07
    Beiträge:
    348
    Mach es mit der Z-Shell (zsh)!

    Code:
    chmod 644 **/.DS_Store
    Und das wars.
     
  6. Skeeve

    Skeeve Pomme d'or

    Dabei seit:
    26.10.05
    Beiträge:
    3.121
    Nicht ganz. Du hast vergessen, daß unter OS X Ordnernamen mitLeerzeichen gang und gäbe sind:
    Code:
     sudo find -x / -user $USER -group $GROUP -type f -name ".DS_Store" -print0 | xargs -0 sudo chmod 644
    @stk: [​IMG] ""Gredi und Bledi" sollten eigentlich "Krethi und Plethi" sein. Oder meintest Du vielleicht "Greedy und Blödie" ;)
     
  7. IceHouse

    IceHouse Ribston Pepping

    Dabei seit:
    30.09.04
    Beiträge:
    297
    Das ist korrekt - danke fuer die Korrektur. Man sollte die Zeilen in der .bashrc, die man selber verwendet, erst komplett einpasten um sie dann zu kuerzen und nicht umgekehrt - dann passiert so ein Fauxpas auch nicht :D

    Gruss von IceHouse
     

Diese Seite empfehlen