duffy-op
Goto Top

Login Script ber Active Directory

Hallo,

ich habe ein Problem mit meinem Login script.

Das login script wird über eine *.bat Datei ausgeführt, sobald sich der User an der Domäne und somit an der AD des Windows 2003 Servers anmeldet.

Das script macht nichts anderes als über den "net use-Befehl" freigegebene Laufwerke mit dem Client zu verbinden.

Eigentlich funktioniert das ganz gut.....nur manchmal passiert es das nicht alle Netzlaufwerke verbunden werden.

Ich habe schon eine kleine Warteschleife eingefügt, was aber auch kein Erfolg brachte.

Hatte schon mal jemand so ein Problem oder kann mir weiterhelfen??

Danke.

Content-Key: 27174

Url: https://administrator.de/contentid/27174

Ausgedruckt am: 28.03.2024 um 08:03 Uhr

Mitglied: fugu
fugu 01.03.2006 um 20:58:39 Uhr
Goto Top
Moinz!

Setz mal ein
NET USE * /D /Y
davor.

Damit werden zunächst alle Netzlaufwerke getrennt. Dann funktioniert die Neueinbindung i. d. R. problemlos.

Gruss, Fugu
Mitglied: Dani
Dani 01.03.2006 um 21:02:53 Uhr
Goto Top
Hi,
es könnte du gut sein, dass dein Server überlastet ist und dann das Script die Verbindung herstellt. Aber das ist ganz selten. Ich denke mal dein Netzwerk ist so aufgebaut, dass es gar net soweit kommt.
Als Fehler wird wohl im DOS - Fenster angezeigt, dass das Laufwerk nicht verbunden werden kann. Oder wird ein anderer Fehler aufgezeigt?!
Kommt das immer bei den gleichen Benutzer bzw. am gleichen Comuter?! Vielleicht auch zur gleichen Uhrzeit. Das würde dann heißen, dass dann irgendwas ausgeführt wird, wo das verbinden von Shares verbietet. Könntest mal dein Script posten?!

Gruß
Dani
Mitglied: duffy-op
duffy-op 02.03.2006 um 19:36:40 Uhr
Goto Top
danke für die Antworten.

Mein script sieht folgendermassen aus:

NET USE * /D /Y

NET USE \\Server\Home
NET USE \\Server2\Dokumente
.
.
.


davor hab ich noch eine Warteschleife eingefügt.

Aber ich glaube das ich ein Problem habe mit der DNS und nicht mit dem Script.

Kann mir vielleicht jemand dabei helfen?
Der Server löst die Namen nicht immer richtig auf...und deswegen vielleicht auch das Problem mit dem Script
Mitglied: Dani
Dani 02.03.2006 um 19:38:06 Uhr
Goto Top
Hi,
mach doch bitte einen Thread auf, da es ja nicht mehr um das Script geht!!
Danke...

Gruß
DAni
Mitglied: Biber
Biber 02.03.2006 um 22:15:31 Uhr
Goto Top
Moin duffy-op,

ich denke, wie Dani auch schon geschrieben hat, dieser Beitrag ist wahrscheinlich nicht beantwortbat, weil das Problem gar nicht in dem Net-Use-Befehl liegt.

Setze doch einfach vor das erste NET USE die Zeilen:

if not exist \\server\home echo \\Server\home nicht erreichbar & goto :eof
if not exist \\server2\Dokumente echo \\Server2\Dokumente nicht erreichbar & goto :eof

... dann ersparst Du Dir die Rumraterei.

Und bei den Net-Use-Befehlen würde ich schon auf konkrete Laufwerksbuchstaben mappen.

Gruß
Biber
Mitglied: duffy-op
duffy-op 06.03.2006 um 17:29:05 Uhr
Goto Top
also das Login funktioniert jetzt soweit.

Hab nur noch ein kleines Problem.
Ich will folgende Freigabe mappen

net use K: \\server-domain\temp_(Löschintervall_alle_10_Tage)

dieses kann er mir aber aus irgendwelchen Gründen nicht mappen.
Hab es auch schon mal lokal unter DOS versucht.......da erscheint der Systemfehler 53.

Kann mir jemand helfen???

Hab auch schon versucht den String in " zu setzen...hat aber leider auch nicht geholfen.
Mitglied: Dani
Dani 06.03.2006 um 17:31:28 Uhr
Goto Top
Hi,
das liegt daran, dass du die Klammern benutzt. Ist ein Sonderzeichen!

Gruß
Dani
Mitglied: Biber
Biber 06.03.2006 um 17:42:08 Uhr
Goto Top
...oder Du hast unter dem CMD-Interpreter einen anderen Zeichensatz aktiv als unter dem Explorer (bzw. Windows_GUI).
Dann liegt das Problem in den Umlauten (dem "ö" in "Löschintervall").

Wenn Du das überprüfen willst:
- verbinde das Laufwerk über die GUI ("Netzlaufwerk verbinden") als K:
- dann "Start"->"Ausführen"-cmd
->am CMD-Prompt "net use k:" eingeben.

wenn dann "....Löschintervall"... zu lesen ist->noch mal posten.
wenn dort "...L"schintervall" ..zu lesen ist: auf CHCP 1252 umstellen im CMD.

Oder besser: den Freigabenamen auf "...Loeschintervall.. ändern.

Gruß
Biber
Mitglied: duffy-op
duffy-op 07.03.2006 um 10:00:20 Uhr
Goto Top
Das mit dem Umlaut hab ich gelöst in dem ich das "ö" in "oe" geändert habe.

Ich glaube dass das Problem eher mit der länge des Namens zusammenhängt.....ich hab da irgendwas gelesen das man ab einer bestimmten Länge des Namens, den Namen in "-Zeichen setzen soll???

Weiss da jemand was genaueres?

Auf jeden Fall ist das Problem immer noch vorhanden.

Wie stell ich auf CHCP1252 um?

Danke.
Mitglied: Biber
Biber 07.03.2006 um 10:17:02 Uhr
Goto Top
Moin duffy-op,

a) Umstellen auf Zeichensatz 1252 mit CHCP (CHange CodePage):
CHCP 1252
Am Cmd-Prompt oder im Batch. Hilfe mit CHCP /?

b) Lange Namen in Anführungszeichen.
Denke, das ist ein Missverständis.
- Namen mit Leerzeichen in Anführungszeichen: Ja.
- Namen mit mehr als 8 Zeichen sind für (einige) DOS-Netzwerkverbindungen nicht erkennbar.

Andere Restriktionen kenne ich nicht.
Nochmal die Frage:
-Kannst Du übe GUI das Laufwerk verbinden?
Wenn ja, was zeigt danach ein "Net use" am Prompt?

Gruß
Biber
Mitglied: duffy-op
duffy-op 07.03.2006 um 17:47:56 Uhr
Goto Top
ok...ich habs gefunden......meine Freigabe lautete in etwa "tausch_wird_alle....".

Aus irgendwelchen Gründen gab es Probleme mit den Unterstrichen, die ich jetzt ersetzt habe durch Bindestriche.

Vielen Dank an alle.
Mitglied: Biber
Biber 07.03.2006 um 20:45:41 Uhr
Goto Top
*lacht*
...das habe ich auch noch nie gesehen...

Dani hatte vollkommen recht.
Ich habe mal so ein Verzeichnis auf \\Biber1 angelegt und freigegeben:
net share "temp_(Löschintervall_alle_10_Tage)"="d:\temp\temp_(Löschintervall_alle_10_Tage)"
temp_(Löschintervall_alle_10_Tage) wurde erfolgreich freigegeben.

Von \\Biber2 MUSS ich über Net use wie folgt verbinden:
net use K: \\Biber1\temp_^(Löschintervall_alle_10_Tage^)
-->"Der Befehl wurde erfolgreich ausgeführt."

Hatte also nichts mit den Umlauten zu tun, aber die Steuerzeichen KlammerAuf und KlammerZu müssen mit einer Caret maskiert werden.

Ich würde also die Freigabe unbenennen in:
net share temp_[Löschintervall_alle_10_Tage]= ...(realer Name)
-oder-
net share temp_{Löschintervall_alle_10_Tage}= ...(realer Name)

Wieder was gelernt...
Grüße
Biber