Windows Netzlaufwerk mit der PowerShell verbinden

Grundlegendes zum Verbinden eines Netzlaufwerks per PowerShell

Eine Standardaufgabe ist natürlich das Verbinden von Netzlaufwerken. Sei es man verwendet einen Domänencontroller, indem man Benutzerprofile verbinden muss oder man hat eine NAS wie die Synology* auf welchem sämtliche Verzeichnisse freigegeben liegen.

Grundsätzlich handelt es sich um Freigaben, welche direkt in den Windows Explorer eingebunden werden sollen. Damit erscheinen Sie im Wesentlichen ähnlich wie eine Festplatte. Hat man mit der Eingabeaufforderung noch das beliebte Tool net use verwendet, so bietet die Windows PowerShell neue Befehle (Cmdlets) mit vielen Optionen an.

Da aber die cmd von der Windows PowerShell langfristig abgelöst wird, stellte sich mir die Frage, wie man Laufwerke mit der PowerShell einbinden kann. Genau das möchte ich euch in diesem Artikel beschreiben.

Es gibt dabei mithilfe der Windows PowerShell verschiedene Möglichkeiten, wobei die gängigste und einfachste Variante die folgende ist.

Videoanleitung zum Einbinden von Netzlaufwerken

Das Netzlaufwerk mithilfe des Cmdlets SMBShare verbinden

Das Cmdlet für das Verbinden eines Netzlaufwerks hat den Namen SMB-Mapping und stammt aus dem PowerShell Modul SMBShare.

Alle PowerShell Befehle eines Moduls anzeigen

Bereits erwähnt wurde, dass das Modul den Namen SMBShare trägt. Dieses Modul beinhaltet eine Vielzahl an verschiedenen Befehlen. Anzeigt, bekommt man Sie am besten über die folgende Befehlsangabe:

Get-Command -Module SMBShare

Im Übrigen gilt dies auch für sämtliche anderen Module in der Windows Powershell.

Nötige Parameter für das Netzlaufwerk

Für die Einbindung der Freigabe werden jetzt die folgenden Parameter benötigt, welche man dem Cmdlet übergeben muss:

  • Lokaler Pfad
  • Freigabe Pfad
  • Optional: Dauerhaft einbinden (JA/Nein)
  • Optional: Passwort und Benutzername

Nachdem man mit obigem Befehl sich alle möglichen Cmdlets vom Modul SMBShare angesehen hat, wird man auf das Kommando New-SMBMapping gestoßen sein. Um jetzt mehr Informationen zu einem einzelnen Cmdlet zu erhalten, sollte man die Windows Powershell Hilfe in Anspruch nehmen.

Get-Help New-SMBMapping -detailed

Wenn keine ausführliche Hilfe angezeigt wird, so muss diese noch heruntergeladen werden. Auch das lässt sich über die Windows PowerShell einfach erledigen. Voraussetzung ist natürlich eine Internetverbindung.

Update-Help

Nachdem man jetzt über das Cmdlet komplett bescheid weiß, kann man das Laufwerk einbinden. Die komplette Befehlsyntax hierfür lautet wie folgt:

New-SMBMapping -Localpath 'z:' -Remotepath \\172.16.1.1\Freigabe -persistent $true

Selbstverständlich müssen diese Befehle im Windows PowerShell Terminal mit administrativen Rechten ausgeführt werden. Anstatt der IPv4-Adresse kann natürlich ebenso der Computername verwendet werden.

Windows PowerShell - Netzlaufwerk per New-SmbMapping einbinden
Windows PowerShell Netzlaufwerk per New SmbMapping einbinden

Sollte alles klappen, so ist das Laufwerk bzw. die Netzwerkfreigabe in das Windows System eingebunden. Prüfen kann man das am einfachsten, indem man auf das Verzeichnis wechselt.

Set-Location z:

Das Netzlaufwerk mithilfe des Cmdlets von New-PSDrive verbinden

Um mit der PowerShell Netzlaufwerke einbinden zu können, benötigt man erst mal das richtige Cmdlet. Nach einigem Suchen bin ich auf das Cmdlet New-PSDrive gestoßen, mit welchem genau das Problem gelöst werden kann. Diese Variante ist allerdings etwas älter. Besser geeignet ist die Vorgehensweise weiter oben.

Sehr hilfreich ist für ein Cmdlet natürlich immer die Hilfe. Am besten erreicht man die wie folgt. Mit der Option „-detailed“ erhält man auch noch einige Beispiele, was für die Anwendung des Befehls sehr nützlich ist.

get-help new-psdrive -detailed

Im folgenden Beispiel verbinde ich die Netzwerkfreigabe „tausch“ von meiner Synology Diskstation* mit der IPv4-Adresse 192.168.178.105 auf das Laufwerk T. Dabei soll die Freigabe dauerhaft eingebunden werden.

New-PSDrive -Name t -Root \\192.168.178.105\tmp-tausch -Persist -PSProvider FileSystem
Netzlaufwerk mit der Windows PowerShell einbinden!
Netzlaufwerk mit der Windows PowerShell einbinden!

Wie ersichtlich, sind hier einige Parameter nötig. Die Wesentlichen möchte ich kurz erläutern.

  • Name: hier gibt man den Netzlaufwerksbuchstaben an, unter dem das Laufwerk erreichbar sein soll.
  • root definiert den Speicherort. Hier könnte man u. a. auch die Registry angeben.
  • Persist: Das Laufwerk soll dauerhaft eingebunden werden
  • PSProvider: Für Netzwerkfreigaben benötigt man hier „Filesystem“
  • credential: Hier könnte man zusätzlich einen Benutzer angeben, welcher die Recht innehat

PowerShell Netzlaufwerke anzeigen

Sofern nun die Laufwerke eingebunden sind, kann man sich diese natürlich auch auflisten lassen. Hierzu nimmt man das Cmdlet Get-PSDrive. Schön ersichtlich sind die einzelnen Provider. So gibt es auch Certificate oder Registry.

Alle Netzlaufwerk mit der Windows PowerShell auflisten!
Alle Netzlaufwerk mit der Windows PowerShell auflisten!

In der Regel wird man die Befehle in ein Script packen, was beim Anmelden des Benutzers oder beim Starten des PC ausgeführt werden kann.

Damit das ganze funktioniert und ein PowerShell script auch ausgeführt werden darf, muss die Richtlinie (also die Ausführungsrichtlinie) richtig gesetzt sein. Sehr einfach geht das folgendermaßen.

Set-ExecutionPolicy RemoteSigned

Ausführlich habe ich das Ganze im Artikel: In Windows PowerShell Ausführungsrichtlinie setzen beschrieben. Dort findet man auch noch weiter mögliche Richtlinien.

Netzlaufwerk wird im Explorer nicht angezeigt

Nachdem verbinden des Netzlaufwerks per PowerShell, kann es jetzt sein, dass das Laufwerk zwar über das PowerShell Terminal oder der Windows Eingabeaufforderung erreichbar ist, aber nicht im Windows Datei Explorer sichtbar. Dieses Problem tritt leider häufig auf.

Abhilfe hierfür schafft in der Regel ein kompletter Neustart des Betriebssystems oder aber auch das Beenden des Explorers über den Task-Manager und ein anschließendes Starten des Explorer wieder.

Fazit und Ausblick

Eigentlich geht das Einbinden von Netzlaufwerken mit der Windows PowerShell sehr einfach. Man muss nur das richtige Cmdlet finden. Ansonsten funktionierte es prinzipiell genauso wie mit der cmd. Das nötige Cmdlet heißt dabei New-PSDrive oder man verwendet die neue Methode aus dem Modul SMBShare.

Langfristig wird man, denke ich, Netzlaufwerke nur noch mit der PowerShell einbinden. Verwendet ihr bereits die Windows PowerShell? Wenn du mehr über die Windows PowerShell lernen möchtest, so findest du auch immer hervorragende und ausführliche Kurse auf Udemy. Zu empfehlen sind die Kurse von Patrick Grünauer: Der Einsteigerkurse ist dabei folgender: Automatisierung mit PowerShell (1/3): Grundlagen.*

Das könnte dich auch interessieren

Mehr PowerShell gibt es in folgender Literatur

Dieser Artikel beinhaltet Partner-Links. Durch einen Klick darauf ge­lan­gt ihr direkt zum Anbieter. Solltet ihr euch dort für einen Kauf entscheiden, erhält IT-Learner eine kleine Provision. Der Preis ändert sich für euch nicht. Danke für eure Unterstützung! Letzte Aktualisierung am 9.11.2023

73718c95ce9041a78156d14178a2e2b5

Steigere dein Wissen

Kostenlose Befehlsreferenzen und E-Books herunterladen

Mehr Informationen zu den kostenlosen Materialien.


Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Nach oben scrollen