Netzwerkdrucker basierend auf AD-Gruppen verteilen

Eine Aufgabe, die die meisten kennen: Es kommt ein neuer Drucker in das Netzwerk und muß den Benutzern zugewiesen werden. Bei manueller Durchführung ist es ab einer gewissen Anzahl von Clients eine mehr als lästige Sache und hat man bereits ein Skript zur Verteilung so muß dieses i.d.R. in gewissem Umfang angepaßt werden.

Das zum Download angebotene VBSkript müssen Sie nur erstmalig an die Umgebung anpassen und die Verteilung der Drucker wird komplett über Gruppen im Active Directory (AD) geregelt.

Hier gibt es eine aktualisierte Version des Skripts!

Konfiguration

Es ist erforderlich im AD eine Organisationseinheit (OU) anzulegen und für jeden Drucker, der verteilt werden soll, (mindestens) eine Gruppe.

Im Skript selbst ist es dann noch notwendig, daß Sie es über die Konstanten in den Zeilen 22-25 mit den benötigten Informationen über die Umgebung versorgen. Diese sind:

KonstanteBeschreibungBeispielwert
PRINTSERVERName des Servers auf dem die Drucker Freigegeben sindserver1
PRINTER_OUDN der OU mit den Gruppen (ohne DC)ou=Netzwerkdrucker,ou=Gruppen
SUFFIX_STD_PRINTERSuffix für Gruppen zum Setzen von Standarddruckern._Std

Beispiel

Würden wir die Konstanten mit den in der Tabelle genannten Beispielwerten belegen würde es in der Praxis folgendermaßen aussehen:

Die Druckerfreigaben sind auf dem Server server1 zu finden:
Windows Explorer: Durckerfreigaben (Drucker1, Drucker2, Drucker3) auf Printserver (\\server1)

In der OU bistron.eu/Gruppen/Netzwerkdrucker (ou=Netzwerkdrucker,ou=Gruppen) ist je Drucker eine Sicherheitsgruppe hinterlegt, welche in der Beschreibung den Druckerfreigabenamen enthält, und eine weitere mit dem Suffix _Std und leerer Beschreibung, um die Drucker als Standarddrucker zuweisen zu können:
Active Directory-Benutzer und -Computer: OU mit Gruppen zur Druckerverteilung mit Druckernamen (Drucker1, Drucker2, Drucker3) in Beschreibung hinterlegt

Ein Benutzer muß, wenn wir ihm einen Drucker als Standarddrucker zuweisen möchten, immer in beiden Gruppen sein.

Verschachtelung von Gruppen wird nicht unterstützt – also müssen die Benutzer direkt in die Gruppen eingetragen werden.

Fügen wir nun einen Benutzer zu den Gruppen Verteilung_Drucker_1, Verteilung_Drucker_1_Std, Verteilung_Drucker_2 und Verteilung_Drucker_3_Std hinzu
Benutzereigenschaften - Mitglied von: Verteilung_Drucker_1, Verteilung_Drucker_1_Std, Verteilung_Drucker_2, Verteilung_Drucker_2_Std, Verteilung_Drucker_3_Std
erhalten wir bei Ausführung des Skriptes unter diesem folgendes Ergebnis:

  • Alle bereits von server1 verbundenen Drucker werden entfernt
  • Drucker 1 wird verbunden und als Standarddrucker gesetzt
  • Drucker 2 wird verbunden
  • (Drucker 3 wird weder verbunden noch als Standarddrucker gesetzt)

Client-Migration

Das Skript ist auch dazu geeignet beim Wechsel des Printservers alle Verbindungen zum alten Server zu entfernen und vom neuen Printserver entsprechend wiederherzustellen. Um dies zu bewerkstelligen müssen wird der Konstante PRINTSERVER_ALT im Skript den Namen des alten Printservers und der Konstante PRINTSERVER natürlich den Namen des neuen Printservers zuweisen.

Beispiel

Nehmen wir an, daß wir alle Drucker z.B. mit Hilfe des Tools PrintMigrator von Server1 auf Server2 verlagert haben – dann sollte unser Skript (ab Z. 22) in etwa so aussehen:

Const PRINTSERVER = "server2"                         '* Name Server mit Druckerfreigaben
Const PRINTSERVER_ALT = "server1"                     '* Name des alten Printservers
Const PRINTER_OU = "ou=Netzwerkdrucker,ou=Gruppen"    '* OU mit Sicherheitsgruppen zur Druckerverteilung
Const SUFFIX_STD_PRINTER = "_Std"                     '* Suffix d. Gruppen zum setzen von Standard-Druckern

Als Resultat werden alle Druckerverbindungen zu Server1 dauerhaft entfernt und entsprechend neu zu Server2 aufgebaut.

Downloads

1 Stern2 Sterne3 Sterne4 Sterne5 Sterne
(Keine Bewertungen)
Loading...

2 Kommentare

  1. eLn1r0

    Die strPrinterShare sind bei mir leer,

    bekomme immer folgende Fehler: 0x80070709 & 0x80020009

    Kannst du mir da weiterhelfen?

Schreibe eine Antwort zu eLn1r0Antwort abbrechen

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.

Neue BeiträgeOft gelesene BeiträgeNeueste KommentareBlog abonnieren

Gib Deine E-Mail-Adresse an, um diesen Blog zu abonnieren und Benachrichtigungen über neue Beiträge via E-Mail zu erhalten.