ministry
Goto Top

NET USE während shutdown?

Hallo, ich versuche ein Backup-Script während des Shutdowns auf einem XP-Client einzusetzen.

Das Script läuft manuell ausgeführt einwandfrei, jedoch kann ich scheinbar keine Netzlaufwerke während des Shutdowns anlegen?
Über die Gruppenrichtlinien als Shutdown-Script eingesetzt funktioniert
net use X: \\IP\Freigabe /user:Benutzer pwd /persistent:no
scheinbar nicht.
Gibt es generell keinen Zugriff mehr auf das Netzwerk beim Shutdown, oder liegt mein Fehler wo anders?

Danke im Vorraus.

Content-Key: 144156

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

Printed on: April 20, 2024 at 03:04 o'clock

Member: ebfrb1
ebfrb1 Jun 04, 2010 at 08:31:26 (UTC)
Goto Top
Das Skript so wie es da steht sollte funktionieren....Wie lautet denn das gesamte Skript für das Backup? Vlt liegt ja da der Fehler?

Problem könnte sein, dass beim Shutdown die Netzwerkverbindung mit als erstes getrennt wird...dann ist natürlich kein net use mehr möglich...

man müsste das skript mal sehen...
Member: Karo
Karo Jun 04, 2010 at 08:31:56 (UTC)
Goto Top
hmm, ich sehe jetzt zwar den Sinn dieser Aktion nicht so ganz, gerade weil Du Persistent:NO angibst.
Das bedeutet, das dieses LW nur einmalig verbunden wird. Bei YES wird es immer verbunden.

Karo
Member: Ministry
Ministry Jun 04, 2010 at 08:47:20 (UTC)
Goto Top
Das Problem liegt in jedem Fall in der Verbindung des Netzlaufwerks.
Weiter oben wird nur Datum und Wochentag ermittelt und ein paar Variablen festgelegt.
Nach dem NET USE:
net use X: \\IP\Freigabe /user:Benutzer pwd /persistent:no
if %errorlevel% EQU 0 (
>C:\BLog.txt echo Netzlaufwerk verbunden
) else (
>C:\Blog.txt echo Verbindung zum NAS fehlgeschlagen
exit /b
)

Edit: Und weiter komme ich auch nicht.
Member: Ministry
Ministry Jun 04, 2010 at 08:50:06 (UTC)
Goto Top
Persistent:no ist doch absicht.
Das Laufwerk wird für das backup verbunden und direkt hinterher wieder getrennt.
Der User soll ja keine Zugriff auf das Laufwerk haben, ausser wenn er den rechner runter fährt.

P.S. kann man nur jedem einzelnd antworten?
Member: ebfrb1
ebfrb1 Jun 04, 2010 at 09:02:26 (UTC)
Goto Top
versuch mal das skript als logoff skript zu verwenden und binde am ende den shutdown befehl ein. ich denke das sollte funktionieren...es liegt meines erachtens an der trennung der netzwerkverbindung.
Member: Karo
Karo Jun 04, 2010 at 09:04:19 (UTC)
Goto Top
Warum machst Du überhaupt ne Netzwerkverbindung wenn der User das LW nicht sehen soll. Du kannst doch auch direkt auf die Freigabe schreiben.

Wenn es darum geht, dass Du beim Abmelden geänderte Daten sichern willst, dann gibt es das wundervolle ROBOCOPY, das in den neueren Versionen eine Monitorfunktion besitzt, die nach vordefinierten Schaltern Änderungen erkennt und kopiert.

Ansonsten zu Deiner Batch:
C:\BLog.txt echo Netzlaufwerk verbunden
bedeutet Du willst denn Text 'Netzlaufwerk verbunden' nach C:\BLog.txt schreiben?
Das sollte dann aber so aussehen
echo Netzlaufwerk verbunden >C:\BLog.txt

Karo
Member: Karo
Karo Jun 04, 2010 at 09:06:44 (UTC)
Goto Top
hm, Du willst also ein Shutdown im Shutdown machen? face-wink
Member: Ministry
Ministry Jun 04, 2010 at 09:37:40 (UTC)
Goto Top
Als logoff-Script funktioniert es.
Jetzt hab ich das aber natürlich bei jedem Benutzerwechsel.
Ist nur die Frage, kann man überhaupt auf das Netzwerk zugreifen, während des Shutdowns?
Ein Ping scheint zu gehen, ansonsten?
Member: Ministry
Ministry Jun 04, 2010 at 09:42:42 (UTC)
Goto Top
Wie schreibe ich denn direkt auf eine passwortgeschützte Freigabe...ohne dass ich zuerst ein Netzlaufwerk verbinde?

Und meine Umleitung in die Textdatei funktioniert .
Die Reihenfolge ist egal. Ich finds leichter zu lesen so, da der "text" ja in der länge öfters variiert.
Member: Karo
Karo Jun 04, 2010 at 09:54:58 (UTC)
Goto Top
Sorry, falsch ausgedrückt. Hätte heissen sollen: Du kannst auch ein NET USE direkt auf die Freigabe machen ohne LW also
net use \\IP\Freigabe /user:Benutzer pwd /persistent:no
Versuch es mal damit

Ja ich weiss das das mit dem Pipe so geht. Allerdings hatte ich da mal Ärger mit. War irgendwas in Verbbindung mit ner VBS. Darum gehe ich immer den Standard.
Member: Karo
Karo Jun 04, 2010 at 09:58:47 (UTC)
Goto Top
Eigentlich ist es per Definition nicht möglich. Den während des Abmeldens werden spezifische Dienste runtergefahren. TCPIP Connection ist eines der letzten. Darum geht der Ping. Den Effekt siehst Du z.B. auch, wenn Du Shutdown machst, und versuchst den Explorer zu öffnen.
Wenn Du es wirklich nicht per User machen willst würde ich mir an Deiner Stelle wiklich mal Robocopy anschauen.

Karo
Member: Ministry
Ministry Jun 04, 2010 at 11:31:28 (UTC)
Goto Top
Funktioniert.
Allerdings (scheinbar logischerweise) nicht beim Shutdown.
Ich denke, ich werde damit leben müssen, dass bei logoff zu machen.
Inkrementelles Backup dauert zum Glück nicht sooo lang.
Am längsten dauert es immer noch, die Filelist zu erstellen. ;)

Bei Gelegenheit guck ich mir dann auch nochmal robocopy an.
Member: DerWoWusste
DerWoWusste Jun 04, 2010 at 15:48:38 (UTC)
Goto Top
Hi.
Wie schreibe ich denn direkt auf eine passwortgeschützte Freigabe...ohne dass ich zuerst ein Netzlaufwerk verbinde?
Ein Shutdownskript ist in der Lage auf dem Netzwerk zu handeln (@Karo: Die Definition, die Gegenteiliges behauptet, würde ich gerne mal sehen ;) und zwar als Konto System (=Domänencomputer-Mitglied=Computername$)
Du kannst auf der Freigabe beispielsweise Ändernzugriff für die Gruppe Domänencomputer geben und die Sache läuft.

Nebenbei: Du schreibst:
Der User soll ja keine Zugriff auf das Laufwerk haben, ausser wenn er den rechner runter fährt.
Wenn Du ein LW unter Angabe eines Benutzernamens außerhalb der Usersession verbindest (nämlich beim Shutdown, welcher nach der Abmeldung aller User erfolgt), so hat kein Benutzer darauf Zugriff, ein Trennen ist unnötig.
Member: Karo
Karo Jun 04, 2010 at 16:05:42 (UTC)
Goto Top
Hi,
mit der Aussage hast Du schon Recht, aber man sollte auch das dahinter lesen. Denn wenn das System runtergefahren wird, wird ab einem gewissen Punkt die Session gekillt. Und wo keine Brücke, da kein Übergang face-wink Insofern ist vielleicht der Begriff 'Definition' von mir nicht korrekt gewählt. Zudem habe ich selbst von Microsofties die Aussage mit Logoff-Skripten vorsichtig zu hantieren um Abbrüche zu verhindern.
Gleich allen Domänen-Computern den Zugriff zuzulassen ist sicherlich eine Lösung, aber vielleicht nicht so gewollt. Hier fehlt die eine oder andere kleine Info. Aber wir kommen schon alle irgendwie ans Ziel face-smile

Karo
Member: DerWoWusste
DerWoWusste Jun 07, 2010 at 07:54:39 (UTC)
Goto Top
Moin Karo.
Denn wenn das System runtergefahren wird, wird ab einem gewissen Punkt die Session gekillt.
Das stimmt, nur darf man nicht die Usersession mit der generellen Netzwerkverfügbarkeit verwechseln, die ist bis zum Schluss da, siehe http://blogs.technet.com/b/richard_macdonald/archive/2007/03/26/706879. ...
Nämlich bis es heißt "Windows is shutting down..." - dann erst werden die Dienste gestoppt, die benötigt werden. Ebenso darf ein Shutdownskript beliebig lange dauern, soweit ich weiß. Ich will nicht sagen, dass MS Dir Mist erzählt hat, aber vielleicht war es missverständlich.
Member: mad-manne
mad-manne Sep 18, 2012 at 13:02:16 (UTC)
Goto Top
Hallo und sorry, dass ich dieses alte Thema hervorkrame ... aber viel habe ich zu diesem Thema nicht gefunden, als ich gestern und heute fast 10 Stunden zu diesem Thema gegoogelt und rumprobiert habe ... umsomehr will ich dann doch mein Lösung loswerden face-wink

Nach diversen Tests komme ich nun nämlich zu folgendem Ergebniss:
Der "net use"-Befehl verhält sich offenbar innerhalb eines Shutdown-Skripts nicht exakt so, wie in einem Logoff-Skript bzw. beim Testen während des "normalen" Betriebs!
Dazu hatte ich per GPO erlaubt, dass meine Shutdown/Logoff-Skripte zu sehen sind und dort dann noch "Haltepunkte" eingebaut um überhaupt Zeit zu haben um zu sehen, wo das Problem liegt ...

Unter anderem habe ich zwischendurch einfach mal das Kennwort weggelassen um es dann interaktiv eingeben zu müssen: und siehe da, dann klappte die Verbindung.

Da dies natürlich kein gangbarer Weg ist, habe ich weiter und weiter getestet. Offenbar muss man nur die Syntax des net use-Befehls so ändern, dass das Kennwort das letzte ist, was in der Befehlszeile steht ... dann klappt es auch bei einem Shutdown-Skript!

So sieht das bei mir jetzt aus:
net use \\servername\sharename /persistent:no /user:username password

Da ich in robocopy den direkten Pfad eintrage nutze ich gar keinen Laufwerskbuchstaben, aber es geht auch mit einem LW-Buchstaben!

Ich hoffe irgendjemand kann mit dieser Info was anfangen ...
Gruss,
Manne.