PowerShell: Netzlaufwerk verbinden mit New-PSDrive
Netzlaufwerke sind im Unternehmensumfeld nicht mehr wegzudenken. Mit diesen Laufwerken werden oft Speicherorte von Windows Fileservern angebunden, welche Abteilungslaufwerke oder Home-Laufwerke abbilden. Doch auch Privatanwender können Netz-Laufwerke verwenden, wenn beispielsweise ein Synology NAS im Einsatz ist. Doch hierzu können nicht nur GPOs verwendet werden, sondern auch Windows PowerShell zum Verbinden von Laufwerken. In PowerShell gibt es den Befehl New-PSDrive um ein Netzlaufwerk verbinden zu können.
In PowerShell mit New-PSDrive ein Netzlaufwerk verbinden
Mit dem PowerShell Befehl New-PSDrive kann man ganz einfach ein Netzlaufwerk unter Windows verbinden. Hier ist es übrigens egal ob Windows 10 oder Windows 7, der Befehl funktioniert immer.
Der Grundbefehl zum Anbinden eines Laufwerks mit dem Laufwerksbuchstaben “S” lautet wie folgt:
New-PSDrive -Name "S" -PSProvider "FileSystem" -Persist -Root "\\YOURSERVER\SHARE"
New-PSDrive Parameter
Natürlich gibt es zum Laufwerk anbinden mit New-PSDrive einige Parameter die in PowerShell benutzt werden können. Ist das Laufwerk nur temporär, oder benötigt man spezielle Anmeldeinformationen? All diese Parameter kann man definieren um ein Netzlaufwerk verbinden zu lassen.
-Confirm
Fordert eine Bestätigung auf, bevor der Befehl abgesetzt wird.
-Credential
Gibt einen Benutzer-Namen und Passwort an, um ein Laufwerk zu verbinden. (Beispiel unten)
-Description
Es kann eine Beschreibung des Laufwerks hinterlegt werden.
-Name
Gibt den Namen des Laufwerks an. Für temporäre Laufwerke kann ein String hinterlegt werden, für bestehende Laufwerke muss ein freier Buchstabe angegeben werden.
-PSProvider
Legt die Art des Laufwerks fest. In der Regel wird ein Laufwerk verbunden, hier gilt als Wert FileSystem
. Es kann aber auch die Registry mit Registry
verbunden werden.
-Persist
Gibt an, ob es sich um ein beständiges Netzlaufwerk handelt. Wenn ja, muss der PSProvider “FileSystem” sein und der Root Parameter ein UNC-Pfad angeben. Außerdem werden bei Name Laufwerksbuchstaben angegeben, keine Strings.
-Root
Gibt die Quelle an, welche als Laufwerk angebunden werden soll. Es können UNS-Pfade (“\\server\share”), lokale Pfade (“C:\Windows”) oder Registry Pfade (HKLM:\Software\Microsoft) verwendet werden.
Weitere Parameter bei Microsoft: https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.management/new-psdrive?view=powershell-7
Beispiele zum Netzlaufwerk Anbinden
Es gibt mit diesen Parametern von New-PSDrive natürlich verschiedene Anwendungsfälle um Netzlaufwerke anbinden zu können. Wir wollen zur besseren Verständlichkeit ein paar PowerShell Beispiele geben.
Erstellt ein temporäres Laufwerk, angebunden wird ein Netzwerk-Share
New-PSDrive -Name "TempShare" -PSProvider "FileSystem" -Root "\\your-server\share"
Erstellt ein temporäres Laufwerk, angebunden wird ein lokaler Pfad
$parameters = @{ Name = "Downloads" PSProvider = "FileSystem" Root = "C:\Users\YOURUSER\Downloads" Description = "Meine lokalen Downloads." } New-PSDrive @parameters
Erstellt ein temporäres Laufwerk, angebunden wird die lokale Registry
New-PSDrive -Name "Reg-Microsoft" -PSProvider "Registry" -Root "HKLM:\Software\Microsoft"
Ein Netzlaufwerk wird FEST mit dem Buchstaben “S” angebunden, aber es werden spezielle Anmelde-Informationen verwendet.
$pass = "YourPassword1!" | ConvertTo-SecureString -AsPlainText -Force $Cred = New-Object System.Management.Automation.PsCredential('user@domain',$pass) New-PSDrive -name S -Root "\\your-server\share" -Credential $cred -PSProvider "FileSystem"
Somit sollte dem Anbinden der Laufwerke mit Hilfe eines PowerShell Scripts nichts mehr im Wege stehen. 🙂