Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Powershell Script zur Migration auf einen neuen Druckserver (Printserver-Migration)

Mitglied: rzlbrnft

rzlbrnft (Level 2) - Jetzt verbinden

06.05.2014 um 14:57 Uhr, 5627 Aufrufe

Wir sind gerade bei der Umstellung auf Server 2012 und haben mittlerweile alle XP Kisten aus unserem Netzwerk entfernt.
Da alle Server neue Namen bekommen stellte sich mir die Aufgabe eine Lösung zu finden um den jeweiligen Druckserver Namen möglichst einfach zu ändern.
Da viele User aufgrund von wechselnden Standorten individuelle Einstellungen nutzen verwenden wir keine per GPO bereitgestellten Drucker.

Wir hatten bereits einige Male VBScript verwendet, funktionierte manchmal gut manchmal nicht so, daher haben wir es jetzt mal mit Powershell versucht.
Heraus kam ein relativ einfaches übersichtliches Script was mit Parametern aus einer Batch heraus aufgerufen werden kann.
Vielleicht nützt es ja jemandem etwas der sowas sucht.

Hier das Script.

01.
# Script changeprinters.ps1 by finzlbrother aka rzlbrnft 
02.
$ErrorActionPreference = "SilentlyContinue" 
03.
 
04.
# Read print server from the arguments 
05.
$OldPrintserver = $args[0]  
06.
$NewPrintserver = $args[1]  
07.
 
08.
# Script ends here if no arguments present 
09.
if($OldPrintserver -and $NewPrintserver) 
10.
{  
11.
	# Read all existing printers on the old server 
12.
	$Printers = Get-WMIObject Win32_Printer -Filter "Name LIKE '%$OldPrintserver%' "  
13.
 
14.
	# Create empty array for list of old printers 
15.
	$oldPrinters = @()  
16.
 
17.
	if($Printers)  
18.
	{  
19.
		  # Define network object 
20.
		  $global:net = new-Object -com WScript.Network  
21.
 
22.
		  # Path to new printer connection is generated and connected, if printer is default the new printer is also set to default 
23.
		  foreach ($Printer in $Printers)  
24.
		  {  
25.
 
26.
			$newPrinter = "\\" + $NewPrintserver + "\" + $Printer.Sharename 
27.
 
28.
			$global:net.AddWindowsPrinterConnection($newPrinter)  
29.
			if ($Printer.Default) {	$global:net.SetDefaultPrinter($newPrinter) }  
30.
			 
31.
			$newPrinter = ""  
32.
			$oldPrinters += $Printer.Name 
33.
 
34.
		  }  
35.
 
36.
		  #Old printers are deleted 
37.
		  foreach ($oldPrinter in $oldPrinters) 
38.
39.
			$global:net.RemovePrinterConnection($oldPrinter)  
40.
41.
	}  
42.
}
Dieses Script kann man jetzt als *.ps1 im Netlogon Ordner ablegen.
Aus einer Batchdatei heraus wird das Script folgendermaßen aufgerufen:

01.
powershell Set-ExecutionPolicy RemoteSigned 
02.
powershell "\\domain.local\NETLOGON\PS\changeprinters.ps1 druckserver1 druckserver2"
druckserver1 wäre hier der alte Server, druckserver2 der neue.
Voraussetzung ist, das der Druckername auf beiden Servern gleich bleibt und sowohl Treiber für 32bit als auch für 64bit Systeme vorhanden sind.

Auf Windows 7 ist das ausführen von unsignierten Scripts per default deaktiviert.
Macht hier natürlich wenig Sinn, heißt es muss entweder per Powershell die Policy auf RemoteSigned gesetzt werden oder in der GPO unter "Computerverwaltung\Administrative Vorlagen\Windows-Komponenten\Windows PowerShell" das Skripting für alle aktiviert werden. Wenn man mehr mit Powershell machen will macht der Weg über die GPO mehr Sinn.
Ähnliche Inhalte
Vmware

VMware - V2V Migration von unabhängigen Clustern

Erfahrungsbericht von Holle1991Vmware2 Kommentare

Hallo zusammen, vielleicht stand schon mal jemand von Euch vor der Aufgabe, eine Virtuelle Maschine im Live Betrieb aus ...

Xenserver

Tipp gegen BSOD nach Xen V2P-Migration von Windows

Tipp von DerWoWussteXenserver

Moin. Kleiner Tipp zu einem doch sehr speziellen Problem: Wir haben hier 2 verschiedene Win8.1-Systeme zu Testzwecken "devirtualisiert", also ...

Windows Server

Umstellung SHA 1 auf SHA 2 - Migration der CA von CSP auf KSP

Tipp von BadgerWindows Server

Prinzipiell sollten diesen Punkt ja die meisten schon erledigt haben bzw. gibt es ja schon viele Anleitungen dafür im ...

Hyper-V

Einfaches Powershell Script zum Backup aller HyperV virtuellen Maschinen auf NAS Freigabe

Anleitung von rzlbrnftHyper-V

Die NAS die wir benutzen kann keine Computerkonten in die Schreibberechtigung für eine Freigabe aufnehmen. Da Export-VM immer mit ...

Neue Wissensbeiträge
Humor (lol)
IoT-Gefahr: Smartes Aquarium leckt!
Information von Lochkartenstanzer vor 8 StundenHumor (lol)3 Kommentare

Moin, Die IoT-Manie hat weitere Opfer gefunden. Ein Casino-Leck durch ein smartes Aquarium: Allerdings haben sie kein Wasser, sondern ...

Router & Routing

Alte Fritzbox 7270 mit VPN und SIP-Telefonie hinter O2 Homebox 6641 als "Modem"

Erfahrungsbericht von the-buccaneer vor 17 StundenRouter & Routing3 Kommentare

Nun war es soweit: Auch O2 hat mich mit VOIP zwangsbeglückt. Heute am Privatanschluss, in 2 Wochen ist das ...

Sicherheit

Ungepatchte Remote Code Execution-Lücke in LG NAS

Information von kgborn vor 1 TagSicherheit

Nutzt wer LG NAS-Einheiten? In den NAS-Einheiten der LG Network Storage-Einheiten gibt es eine sehr unschöne Schwachstelle, die einen ...

Windows Update

Neue Version KB4099950 NIC Einstellungen gehen verloren

Information von sabines vor 1 TagWindows Update2 Kommentare

Es ist eine neue Version des KB4099950 verfügbar, die das Problem mit den verlorenen Netzwerkeinstellungen lösen soll. Das Datum ...

Heiß diskutierte Inhalte
Sicherheit
Verbindliche Zustellung per E-Mail?
Frage von ahussainSicherheit17 Kommentare

Hallo allerseits, ein Kunde von mir nutzt intensiv Fax. Hauptgrund: zusammen mit einer Empfangsbestätigung ist eine verbindliche Zustellung gewährleistet. ...

Sonstige Systeme
Wie Normenkataloge im Unternehmen bereit stellen?
Frage von MuzzepuckelSonstige Systeme14 Kommentare

Hallo Kollegen, ich lese schon lange hier mit, nun mein ersrer Beitrag, bzw. Frage. :-) Wir benötigen für unsere ...

SAN, NAS, DAS
Entscheidung SAN Dell oder HP
Frage von VincorSAN, NAS, DAS13 Kommentare

Hallo, wir wollen uns für unsere Hyper V Umgebung eine neue SAN Anschaffen. Es laufen 30 VM's darunter, DC; ...

Windows Installation
Kleines Büro - wie PCs einrichten? Domaincontroller sinnvoll?
Frage von Jonas42Windows Installation12 Kommentare

Hallo zusammen, ich überlege derzeit mal wieder, ob ich unsere IT ändern sollte. Es handelt sich um ein Ingenieurbüro ...