Besitzrechte übernehmen per Script

schaefff

Enthusiast
Thread Starter
Mitglied seit
20.03.2008
Beiträge
194
Moin alle zusammen,

hoffe hier kann mir jemand helfen.

Es geht um folgendes Problem:
Ich habe hier ein Produktionsserver (Server 2003 R2 x64)auf dem 30 Mann arbeiten und alle haben einen eigenen Ordner auf dem sie per Netzwerkfreigabe arbeiten. Die Ordnerbezeichnungen entsprechen ihren Benutzernamen. (Alles in einer Domäne)
Also Benutzer ist z.B. user1234, also heisst der Ordner user1234.

Nun werden aber täglich nachts Dateien in die Ordner aktualisiert um sie auf dem neuesten Stand zu halten. Problem dabei ist, dass die Kontigente, die den Usern zugewiesen sind, dadurch verfälscht werden, unter anderem auch wenn Kollegen anderen Kollegen was in ihre Ordner kopieren.

Also habe ich folgendes Script ausprobiert mit der subinacl.exe aus dem Windows Resource Kit:

Code:
subinacl /file E:\Produktionsordner\user1234 /setowner=domäne.de\user1234
subinacl /subdirec E:\Produktionsordner\user1234\*.* /setowner=domäne.de\user1234

Funktioniert auch alles wunderbar per Batch.
ABER das ist sehr unsauber und wartungsaufwendig. Sprich ich muss jeden einzelnen User händisch in die Batch aufnehmen und jedes Mal wenn ein Kollege die Firma verlässt oder hinzukommt, muss die Batch ergänzt werden. Da hat bei uns leider keiner die Zeit für, da täglich pro Server bis zu 20 Scripts laufen. Und wenn man jedes anpassen müsste... na ja. Viel Spaß

Also meine Frage wäre:

Kann man irgendwie in der Batch die Ordnernamen auslesen lassen und diesen dann anstelle des Benutzers setzen? Und das Ganze als Schleife, bis alle Ordner in dem Produktionsordner abgearbeitet sind?

Versteht ihr was ich meine? Will das halt nicht so unsauber laufen lassen.
Kann mir da jemand auf die Sprünge helfen? Bin nicht gerade der Scriptgott. Ich suche natürlich parallel im Netz nach Möglichkeiten, aber es kann ja sein, dass jemand schonmal die Problematik hatte.


Gruß
schaefff!
 
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
Hallo,
danke für die rege Teilnahme und Hilfe. :shot: :bigok:

Hier die Lösung falls es irgendwen interessiert:

Code:
@ECHO OFF & setlocal 
SET pfad=E:\NamedesOrdners 
for /d %%i IN ("%pfad%\*.*") do ( 
subinacl /file "%%i" /setowner="domäne.de\%%~nxi" 
subinacl /subdirec "%%i\*.*" /setowner="domäne.de\%%~nxi" 
)

Danke trotzdem fürs Lesen. ;)

Grüße
schaefff!
 
Da es nicht viele user sind und die "userordner" ja mehr oder minder gemeinsam genutzt werden würde ich die kontigente nicht auf benutzerbasis sondern auf ordnerbasis setzen...dann fällt auch das geskripte weg und das kontigent stimmt immer und kann nicht plötzlich mit dem anlaufen des skripts hoch und runter gehn
 
Ich muss mich leider auch mit dem Thema Sicherheit beschäftigen und frage mich, wieso du überhaupt für jeden User getrennt Ordner verwaltest, dann aber zulässt, das User X im Ordner von User Y rumpfuscht. Besonders, wenn du Kontigente spezifizierst... ist zwar angenehm so zu arbeiten, aber m.E. auch unsauber ...
 
@007

Das würde nicht viel bringen, denn die Besitzrechte werden beim Kopieren von Dateien und Ordnern komplett so belassen. Sprich Kollege 1 kopiert Dateien aus seinem Ordner mit seinen Besitzrechten in den Ordner von Kollege 2. Somit wird das Kontingent von Kollege 2 nicht belastet und das von Kollege1 nicht verkleinert. Oder sehe ich das falsch?


@McGizmo
Das ist so gewünscht ;-)
Transparente Firma, jeder weiß was jeder macht, jeder kann die Mails von jedem lesen, jeder kann die Zahlen der Buchhaltung einsehen und alles was dazu gehört. Komisches, aber geniales Prinzip. ;-)

Grüße
schaefff
 
Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh