asot00 10 Geschrieben 26. August 2008 Melden Teilen Geschrieben 26. August 2008 Ich hab ein Problem mit meinem Anmeldescript. Das Script soll Benutzer- und Gruppenabhängig sein. Dass heißt, wenn ich mich als user "vmuser1" anmelde, möchte ich nur das Laufwerk "x: \\server\freigabe1" und nur den Drucker "\\server\Agfa" zugewiesen bekommen. Leider werden nach Abarbeiten des Scripts alle Laufwerk und Drucker verbunden. Das gleiche gilt auch für die user "vmuser2" und "vmuser3". Ich kann keinen Fehler sehen. @echo off net use * /delete /yes \\server\netlogon\ifmember administratoren if errorlevel 1 goto Gruppe goto END :Gruppe %logonserver%\netlogon\con2prt /c "\\server\hp" net use y: \\server\alle goto END if /i %username%==vmuser1 goto v1 :v1 %logonserver%\netlogon\con2prt /cd "\\server\Agfa" net use x: \\server\freigabe1 goto END if /i %username%==vmuser2 goto v2 :v2 %logonserver%\netlogon\con2prt /c "\\server\brother" net use x: \\server\freigabe2 goto END if /i %username%==vmuser3 goto v3 :v3 %logonserver%\netlogon\con2prt /c "\\server\epson" net use x: \\server\freigabe3 goto END :END Zitieren Link zu diesem Kommentar
chris_davidi 10 Geschrieben 26. August 2008 Melden Teilen Geschrieben 26. August 2008 Ich habe es so gemacht und es funktioniert, ... benutze wie Du siehst kein goto. \\vmsrvdc01\NETLOGON\IFMEMBER Standard-Benutzer if %errorlevel%==1 ( net use P: \\freenas\shared\public net use T: \\freenas\shared\tausch ) Zitieren Link zu diesem Kommentar
asot00 10 Geschrieben 27. August 2008 Autor Melden Teilen Geschrieben 27. August 2008 Danke. Ich werde es ausprobieren Zitieren Link zu diesem Kommentar
Squire 262 Geschrieben 27. August 2008 Melden Teilen Geschrieben 27. August 2008 kleine Ergänzung: verwende statt \\server folgendes: %logonserver%\netlogon\ifmember ... Grund: Du musst das Script nicht umbauen wenn mal ein oder mehrere DCs hinzukommen Zitieren Link zu diesem Kommentar
chris_davidi 10 Geschrieben 27. August 2008 Melden Teilen Geschrieben 27. August 2008 Hi Squire, vielen Dank für den Tipp. Es ist tatsächlich so, dass ich zwei DCs habe und das Script nicht funktionieren würde, wenn der entsprechende Server nicht vorhanden wäre. Mit %logonserver% ist dies natürlich viel besser gelöst und auch flexibler wenn es noch mehr DCs werden. Danke und Grüße, chris_davidi Zitieren Link zu diesem Kommentar
asot00 10 Geschrieben 27. August 2008 Autor Melden Teilen Geschrieben 27. August 2008 Mein Script sieht jetzt so aus. Aber der user "vmuser1" bekommt alle Laufwerke. @echo off net use * /delete /yes \\%logonserver%\netlogon\ifmember administratoren if %errorlevel%==1( %logonserver%\netlogon\con2prt /c "\\vmsrv01\hp" net use y: \\vmsrv01\alle ) if /i %username%==vmuser1( %logonserver%\netlogon\con2prt /cd "\\vmsrv01\Agfa" net use x: \\vmsrv01\freigabe1 ) if /i %username%==vmuser2( %logonserver%\netlogon\con2prt /c "\\vmsrv01\brother" net use l: \\vmsrv01\freigabe2 ) if /i %username%==vmuser3( %logonserver%\netlogon\con2prt /c "\\vmsrv01\epson" net use s: \\vmsrv01\freigabe3 ) Zitieren Link zu diesem Kommentar
phoenixcp 10 Geschrieben 28. August 2008 Melden Teilen Geschrieben 28. August 2008 Und du bist zu 100% sicher das das auch das Skript ist, welches ausgeführt wird? Check nochmal, welches Skript an den Usern als Logonskript eingetragen ist und prüfe, ob es das korrekte ist. Zitieren Link zu diesem Kommentar
asot00 10 Geschrieben 28. August 2008 Autor Melden Teilen Geschrieben 28. August 2008 Bin sehr sicher, weil ich das Script manuell ausführe. Zitieren Link zu diesem Kommentar
Sunny61 806 Geschrieben 28. August 2008 Melden Teilen Geschrieben 28. August 2008 Bin sehr sicher, weil ich das Script manuell ausführe. Dann mach doch mal das @echo off weg, dann siehst Du mehr. Zur Not auch mal ein Pause einfügen, zum bestätigen. Wie lautet der genaue Name der Batch oder des Scriptes? Zitieren Link zu diesem Kommentar
asot00 10 Geschrieben 28. August 2008 Autor Melden Teilen Geschrieben 28. August 2008 Script heißt: script.bat Das Script führe ich manuell in der CMD Konsole aus um mir die Fehler anzuschauen Zitieren Link zu diesem Kommentar
Sunny61 806 Geschrieben 28. August 2008 Melden Teilen Geschrieben 28. August 2008 Script heißt: script.bat Das Script führe ich manuell in der CMD Konsole aus um mir die Fehler anzuschauen Dann müssten ja auch alle Drucker verbunden werden, ist das so? Lass dir doch auch mal die Variable %USERNAME% in eine Datei schreiben, damit Du siehst, welcher Inhalt da ankommt. Auf einem Terminalserver probierst Du das nicht grade, oder? Wenn ja, dafür gibts glaube ich eine eigene Variable, bin mir aber grade nicht sicher. Zitieren Link zu diesem Kommentar
Cybquest 36 Geschrieben 28. August 2008 Melden Teilen Geschrieben 28. August 2008 Ich weiß jetzt nicht, ob's bei mir am Vista liegt, aber bei IF müssen bei mir Leerzeichen mit rein, sonst läuft es nicht korrekt! if /i %username% == vmuser1(... Zitieren Link zu diesem Kommentar
phoenixcp 10 Geschrieben 28. August 2008 Melden Teilen Geschrieben 28. August 2008 Also bei mir unter XP gehts ohne UND mit Leerzeichen... Grade nochmal verifiziert... Zitieren Link zu diesem Kommentar
asot00 10 Geschrieben 28. August 2008 Autor Melden Teilen Geschrieben 28. August 2008 ich bekomme beim folgenden Script diese Ausagbe: net use * /delete /yes if /i %username%==vmuser1 goto vmuser1 :vmuser1 %logonserver%\netlogon\con2prt /cd "\\vmsrv01\Agfa" net use x: \\vmsrv01\freigabe1 if /i %username%==vmuser2 goto vmuser2 :vmuser2 %logonserver%\netlogon\con2prt /c "\\vmsrv01\brother" net use l: \\vmsrv01\freigabe2 if /i %username%==vmuser3 goto vmuser3 :vmuser3 %logonserver%\netlogon\con2prt /c "\\vmsrv01\epson" net use s: \\vmsrv01\freigabe3 :end --------------------------------------------------------- Ausgabe in txt C:\>net use * /delete /yes Sie verf�gen �ber folgendene Remoteverbindungen: L: \\vmsrv01\freigabe2 S: \\vmsrv01\freigabe3 X: \\vmsrv01\freigabe1 Fortsetzen beendet die Verbindungen. Der Befehl wurde erfolgreich ausgef�hrt. C:\>if /I vmuser3 == vmuser1 goto vmuser1 C:\>\\VMSRV01\netlogon\con2prt /cd "\\vmsrv01\Agfa" Connected to printer: \\vmsrv01\Agfa. Set the printer: \\vmsrv01\AGFA-AccuSet 800 as your default printer. C:\>net use x: \\vmsrv01\freigabe1 Der Befehl wurde erfolgreich ausgef�hrt. C:\>if /I vmuser3 == vmuser2 goto vmuser2 C:\>\\VMSRV01\netlogon\con2prt /c "\\vmsrv01\brother" Connected to printer: \\vmsrv01\brother. C:\>net use l: \\vmsrv01\freigabe2 Der Befehl wurde erfolgreich ausgef�hrt. C:\>if /I vmuser3 == vmuser3 goto vmuser3 C:\>\\VMSRV01\netlogon\con2prt /c "\\vmsrv01\epson" Connected to printer: \\vmsrv01\epson. C:\>net use s: \\vmsrv01\freigabe3 Der Befehl wurde erfolgreich ausgef�hrt. ------------------------------------------------------ Er verbindet alle Laufwerke. Unlogisch Zitieren Link zu diesem Kommentar
Sunny61 806 Geschrieben 28. August 2008 Melden Teilen Geschrieben 28. August 2008 Wie editierst Du das Script? Mittels edit auf der Comandline? Wenn nein, dann probiers mal damit. Insgesamt sieht das schon sehr komisch aus. Gibts bei SET überhaupt die Variabld %USERNAME% bei diesem Client? 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.