Anmeldeskript mit net use * / delete / yes

5922
Francis Batalla

Ich versuche, alle manuell zugeordneten Netzlaufwerke auf allen Arbeitsstationen in meiner Domäne zu entfernen. Ich möchte, dass die zugeordneten Laufwerke des Endbenutzers ausschließlich über GPO zugeordnet werden (GPOs sind bereits vorhanden).

Ich versuche ein Skript zu schreiben, das Folgendes tun wird:

  1. Entfernen Sie alle Netzlaufwerke, wenn sich der Benutzer anmeldet
  2. Führen Sie gpupdate /fden Vorgang aus, um Laufwerke basierend auf dem verwendeten Gruppenrichtlinienobjekt neu zuzuordnen

Ich plane, diese Anmeldeskriptrichtlinie nur für einige Wochen anzuwenden, bis ich überprüfen kann, ob alle manuell zugeordneten Laufwerke nicht mehr vorhanden sind.

Hier ist der Inhalt meines Batch-Skripts:

REM Delete all mapped drives net use * /del /y  REM force a group policy update to map all drives according to GPO's. gpupdate /force   REM create a directory to verify the script is actually running. mkdir %USERPROFILE%\test 

Ich habe dieses Skript in meinem NETLOGON-Verzeichnis auf meinem Domänencontroller abgelegt. Das Skript wird wie beabsichtigt ausgeführt, wenn es manuell aus diesem Verzeichnis ausgeführt wird. Wenn der net use /delete /yesBefehl als Anmeldeskript angewendet wird, scheint er jedoch nicht zu funktionieren. Ich habe festgestellt, dass das Skript tatsächlich während der Anmeldung mit der ausgeführt wird mkdir %USERPROFILE%\test.

Ich habe sogar versucht, die Ausgabe des ersten Befehls umzuleiten net use * /del /y > result.txtund die Ausgabe kam als heraus

"Die Liste enthält keine Einträge"

Gibt es einen Grund, warum mein Skript funktioniert, wenn ich es manuell ausführe, aber nicht als Anmeldeskript?

Server: Windows 2012R2
Host: Windows 10

1
Es kann zu früh laufen. Versuchen Sie, das Skript um einige Minuten zu verzögern. [ping] (http://www.robvanderwoude.com/wait.php#PING) zeigt Ihnen, wie Sie mit ping eine Verzögerung hinzufügen. DavidPostill vor 8 Jahren 0
Dies beantwortet Ihre Frage nicht, aber Sie möchten das Unmapping-Skript als Abmeldeskript ausführen. Auf diese Weise konkurrieren Sie nicht mit der GPO-Zuordnung der Laufwerke, und die Laufwerke sollten bei der Abmeldung zugeordnet werden (was bedeutet, dass sie vorhanden sind und Sie sie aufheben können). Patrick Seymour vor 8 Jahren 2
@DavidPostill Ich habe gerade versucht, vor dem Befehl unmap einen sleep 300 und vor dem gpupdate / f andere sleep 100 hinzuzufügen. Die Ausgabe sagt immer noch "Es gibt keine Einträge in der Liste." Francis Batalla vor 8 Jahren 0
@PatrickS. Ich habe das Skript so geändert, dass es stattdessen beim Abmelden ausgeführt wird. Außerdem habe ich das Skript so gekürzt, dass es NUR die Entkernungslaufwerke cmd und eine Skriptlaufüberprüfung enthält (Ausgabe in Textdatei senden). Meine Laufwerke bleiben weiterhin zugeordnet. Irgendwelche anderen Vorschläge? Francis Batalla vor 8 Jahren 0
Mein Kommentar war nicht als Antwort gedacht, sondern lediglich als Vorschlag, wann das Skript ausgeführt werden sollte. Ich habe tatsächlich versucht, was Sie tun, und es hat für mich auf einem Windows 10-Computer funktioniert. Patrick Seymour vor 8 Jahren 0
Es ist möglich, dass Sie unterschiedliche Benutzerkontexte erhalten, wenn Sie sie manuell und nicht in einem Anmeldeskript ausführen. (Zum Beispiel UAC oder "Als Administrator ausführen".) In einem Kontext können möglicherweise Laufwerke nicht angezeigt werden, die einem anderen zugeordnet sind. Die von Knuckle-Dragger aufgelistete Antwort könnte hier hilfreich sein: http://superuser.com/questions/695035/windows-8-net-use-no-longer-works Josh vor 8 Jahren 0
Verwenden Sie Gruppenrichtlinienvorgaben, um die Laufwerke zuzuordnen? Zalmy vor 8 Jahren 0
Ich hatte ein ziemlich ähnliches Problem mit einem meiner Anmeldeskripts. Überprüfen Sie meine Antwort hier: http://serverfault.com/questions/768028/why-is-my-logon-script-not-mapping-any-drives Es geht um das Zuordnen eines Laufwerks, nicht das Löschen der Laufwerke, Sie können jedoch ein ähnlicher Ansatz. SimonS vor 8 Jahren 0

2 Antworten auf die Frage

0
user759438

Ich hatte gerade ein Problem mit net use g: / delete / yes unter Windows 2012R2. Dies führte zu Mapping-Konflikten. Meine G-Laufwerkszuordnung wurde anderen Servern zugeordnet, und manchmal erschien ein zusätzliches Z-zugeordnetes Laufwerk, das ein Geist war. Es steht nicht im Batch-Skript

Wenn Sie Netzlaufwerke vor den eigentlichen Zuordnungen mit Freigaben auf Server 2012R2 löschen müssen, verwenden Sie net use g: / del (NUR). Dies funktioniert auf dem 2012R2-Server

MJ

Sie sagen also, dass Sie zuerst 'NET USE G: / DELETE` ausführen und explizit alle möglichen zugeordneten Laufwerksbuchstaben auf diese Weise löschen möchten, anstatt das Sternchen zu verwenden, um alle Laufwerksbuchstaben unabhängig vom zugeordneten Laufwerksbuchstaben zu verwenden, oder? Pimp Juice IT vor 7 Jahren 0
0
Daniel B

Wenn es sich bei dem betreffenden Benutzer um einen Administrator handelt, funktionieren Laufwerke, die Skripts verwenden, nicht (nicht).

Mit der Benutzerkontensteuerung haben Sie zwei Token und Anmeldesitzungen: eine mit allen Berechtigungen ("erhöht") und eine mit eingeschränkten Berechtigungen. Skripts, die von Gruppenrichtlinienobjekten gestartet werden, werden mit vollständigen Berechtigungen ausgeführt.

Zugeordnete Laufwerke werden pro Sitzung verfolgt. Wenn Sie versuchen, Laufwerke aus Anmelde- / Abmeldeskripts zuzuordnen oder deren Zuordnung aufzuheben, stehen sie nur für Programme zur Verfügung, die mit erhöhten Rechten laufen. Der Explorer wird standardmäßig nicht als erhöht ausgeführt.

Hier gibt es mehr Infos direkt von Microsoft .

Um dies zu umgehen, verwenden Sie das folgende .regSkript. Danach wirken sich Änderungen an zugeordneten Freigaben sowohl auf das vollständige als auch auf das begrenzte Token aus.

Windows Registry Editor Version 5.00  [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System] "EnableLinkedConnections"=dword:00000001 

Dies behebt auch Fehler beim Versuch, Setups (oder andere Elemente, die mit erhöhten Rechten ausgeführt werden) von zugeordneten Laufwerken auszuführen.