-hannes- 10 Geschrieben 29. Oktober 2010 Melden Teilen Geschrieben 29. Oktober 2010 Hallo, ich hab` mir jetzt auf gruppenrichtlinien.de und hier im Forum alles angesehen, aber noch keine Möglichkeit gesehen, bei der Probleme mit Berechtigungen auf die Freigaben abgefangen werden. In einer 2003 Domäne hatte ich das Problem, dass zwar die Gruppenmitgliedschaft korrekt ist, aber die Gruppe auf die Freigabe keine Rechte mehr hatte. Deshalb blieb das Logon-Skript einfach bis zum Standard-Timeout von 10 Minuten hängen und die Benutzer bekamen dann auch nur die Netzlaufwerke zugeteilt, die bis zu der Stelle, an der der Fehler auftrat zugewiesen wurden. Momentan sieht das so aus: REM --------------- Laufwerk J: Rechnungswesen---------- net use J: /del > NUL: 2>&1 \\%LOGONSERVER%\netlogon\util\ifmember.exe "Rechnungswesen" > NUL: 2>&1 if errorlevel 1 net use J: \\Server\Rechnungswesen /persistent:no > NUL: 2>&1 Rem REM --------------- Laufwerk K: und M: Personalabteilung-- net use K: /del > NUL: 2>&1 net use M: /del > NUL: 2>&1 \\%LOGONSERVER%\netlogon\util\ifmember.exe "Personalabteilung" > NUL: 2>&1 if errorlevel 1 ( net use K: \\Server\Personal /persistent:no > NUL: 2>&1 net use m: \\Server\SagePersonal /persistent:no > NUL: 2>&1 ) Rem Im konkreten Beispiel wurden Laufwerk K: und M: für die Personalabteilung nicht mehr gemappt, weil bei Laufwerk J: die Berechtigung auf die Freigabe "\\Server\Rechnungswesen" versehentlich nicht mehr die Gruppe "Rechnungswesen" enthielt. Nun würde ich das gerne so gestalten, dass von einem Berechtigungsproblem auf die Freigabe die nachfolgenden Netzlaufwerke nicht mehr betroffen sind und hier im Beispiel nur die Gruppe "Rechnungswesen" ein Problem mit einem nicht verbundenen Netzlaufwerk hätte. Was ich bisher herausgefunden habe, wäre der Einsatz von Sprungmarken, der aber scheinbar keine Lösung darstellt, weil die User in mehreren Gruppen sind und der Befehl: if errorlevel = 1 GOTO Sprungmarke dazu führen würde, dass ich nur Abfrage, ob die jeweilige Gruppenmitgliedschaft stimmt und dann zur nächsten ifmember-Abfrage gesprungen werden soll. Das Problem ist aber nicht die Gruppenmitgliedschaft, sondern die Freigabeberechtigung. Würde sich die Freigabeberechtigung auch konkret im Netlogon-Skript abfragen lassen? Wenn ja wie? Als alternative dachte ich mir in etwa folgenden Code: REM --------------- Laufwerk J: Rechnungswesen---------- net use J: /del > NUL: 2>&1 \\%LOGONSERVER%\netlogon\util\ifmember.exe "Rechnungswesen" > NUL: 2>&1 if errorlevel 1 net use J: \\Server\Rechnungswesen /persistent:no > NUL: 2>&1 if not exist J:\>nul GOTO Sprungmarke1 @echo in der Gruppe Rechnungswesen sind Sie nicht oder die Freigabeberechtigungen stimmen nicht if exist J:\>nul GOTO Sprungmarke1 @echo Sie sind in der Gruppe Rechnungswesen und das Laufwerk wurde korrekt gemappt Rem :Sprungmarke1 REM --------------- Laufwerk K: und M: Personalabteilung-- net use K: /del > NUL: 2>&1 net use M: /del > NUL: 2>&1 \\%LOGONSERVER%\netlogon\util\ifmember.exe "Personalabteilung" > NUL: 2>&1 if errorlevel 1 ( net use K: \\Server\Personal /persistent:no > NUL: 2>&1 net use m: \\Server\SagePersonal /persistent:no > NUL: 2>&1 ) Rem Würde das so funktionieren, oder nicht? Gibt es vielleicht einen eleganteren Weg, dass auf jeden Fall versucht wird, immer zur nächsten ifmember-Abfrage zu gelangen, egal ob Fehler auftreten? Vielen Dank und Gruß, hannes Zitieren Link zu diesem Kommentar
humpi 11 Geschrieben 29. Oktober 2010 Melden Teilen Geschrieben 29. Oktober 2010 Hallo, guck dir vielleicht mal Kixtart an. Da hast du mehr Möglichkeiten, denke ich. Da gibt es die Funktion inGroup() Zitieren Link zu diesem Kommentar
-hannes- 10 Geschrieben 29. Oktober 2010 Autor Melden Teilen Geschrieben 29. Oktober 2010 Da ich über kurz oder lang ohnehin die Domäne auf 2008 R2 hochstufen werde, ist mir ein Umstieg auf Kixtart für die Zwischenzeit zu umständlich. Mich hätte eben nur interessiert, ob sich der Fehlerfall wie rot markiert abfangen ließe? Danke, hannes Zitieren Link zu diesem Kommentar
-hannes- 10 Geschrieben 30. Oktober 2010 Autor Melden Teilen Geschrieben 30. Oktober 2010 Hallo, Vor \\%LOGONSERVER% müssen die beiden "\\" natürlich weg, damit das ganze funktioniert. ;) Ansonsten hab` ich`s gestern mit einem Windows 7 Professional Client durchprobiert und es lief durch. Erstaunlich ist nur, dass es auch funktionierte, sofern ich bei Laufwerk J: bewusst einen Fehler eingebaut habe, bei dem der Testuser zwar in der Gruppe war, die Freigabe aber nicht mehr existierte und ich die beiden rot markierten Zeilen auskommentiert hatte. Dies war nämlich der Fall, den ich neulich produktiv hatte und wonach das Script nicht weiter wollte. Schon etwas merkwürdig, aber vielleicht ist hier Windows 7 etwas Fehlertoleranter als Windows XP ? Oder in der Produktivumgebung gibt`s noch irgend einen anderen Grund, weshalb das Logon-Script dann stoppt? Müsste ich wohl mal ganauer untersuchen. Jemand `ne Idee, was da noch verantwortlich sein könnte? Aber zumindest stören die beiden Rot eingefügten Zeilen auch nicht, so dass sich ein Test mit XP Clients noch lohnen würde. Gruß, hannes Zitieren Link zu diesem Kommentar
NorbertFe 2.027 Geschrieben 31. Oktober 2010 Melden Teilen Geschrieben 31. Oktober 2010 ;1053195']Hallo' date=' Vor \\%LOGONSERVER% müssen die beiden "\\" natürlich weg, damit das ganze funktioniert. ;)[/quote'] Ich würd %logonserver% weglassen und einfach \\deinedomain.tld\ hinschreiben. ;) Bye Norbert Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.