• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Rechtevergabe vereinfachen durch kleines Skript

linuxER

Member
Moin Forum, weiß nicht ob ein drei Zeilen Skript schon unter Programmierung fällt, aber ich wußte sonst nicht wohin damit.

Folgendes:
Hab hier nen kleinen Server am Laufen auf dem für die Familie MP3s, Filme, Wallpapers, usw. liegen. Immer wenn ich neue Datein hinzufüge, lasse ich folgendes 3-Zeilen Skrip laufen

chown -R user /pfad/*
chgrp -R group /pfad/*
chmod go=rx -R /pfad/*

Damit erreiche ich zwar, dass alle Datei (incl. Unterverzeichnisse) die gewollten Rechte erhalten, allerdings unterscheidet er dann nicht, zwischen neuen Dateien, und denen die schon die nötigen Rechte haben.
Gibt es ne Möglichkeit, einen Befehl oder eine zusätzliche Option mit dem man sagen kann, er soll nur die Dateien bearbeiten, die die Soll-Rechtevergabe nicht haben???

Noch mal zur Vorgehensweise: Ich habe praktisch zwei verzeichnisse auf dem Server. Eines wo alle Netzwerkrechner RWX Rechte haben. In dem werden dann die neuen Dateien erst mal zwischengespeichert. Dann gehe ich über putty per root-Rechten auf den Server und schiebe mir die jeweiligen Datein in die entsprechenden Verzeichnisse. Anschließend lasse ich das skript laufen und keiner im Netz kann die Dateien verändern.

Vielleicht hat ja jemand ne Idee wie man das verfahren vereinfachen, bzw. beschleunigen kann. Momentan dauert es ca. 10 min. bis die Rechte neu vergeben sind.

Bevor ichs vergesse. Es ist ein SuSE Linux 10.1 Server mit 4 Win2000 Clients.


MfG

linuxER
 

sc_m

Member
Du könntest etwa mit "find ! -user USER" alle Dateien suchen, die nicht USER gehören. Das Ergebnis schickst du an xargs, so dass xargs den Besitzer ändert. Also:
Code:
find ! -user USER | xargs chown USER
Für die anderen Befehle hat find die Argumente "-group" und "-perm". Falls die Dateinamen Leerzeichen enthalten können, verwende "find -print0" und "xargs -0".
Ich habe allerdings keine Ahnung, ob das dann schneller ist. Wenn du aber ohnehin die Dateien direkt vorher verschiebst, warum merkst du dir dann nicht die verschobenen Dateien und änderst die dann?
 
Oben