Code-Beispiel

Dateisystemfreigabe anlegen (ohne Berechtigungen)

Ein Beispiel zum Einsatz der Klasse System.System.IO aus der .NET-Klassenbibliothek.

Autor: Dr. Holger Schwichtenberg

Beschreibung

Das Anlegen einer Freigabe ist eine aufwendigere Angelegenheit – zumindest dann, wenn man auch die Zugriffsrechteliste setzen will. Leider kann man hier nicht auf die .NET-Klassen für die Berechtigungsvergabe zurückgreifen, sondern muss entsprechende WMI-Klassen verwenden.

Dies ist ein Script, bei dem die Berechtigungen nicht explizit gesetzt werden. Die Freigabe erhält dadurch die Standardrechte (Vollzugriff für jedermann). Zum Anlegen der Freigabe wird die statische Methode Create() der Klasse Win32_Share aufgerufen. Für AccessMask wird dabei $null übergeben. Das Script prüft beim Start, ob es die Freigabe schon gibt, und löscht diese gegebenenfalls, damit eine Neuanlage möglich ist.

Programmcodebeispiele PowerShell-Pipeline

##########################################

New-Share (without Permissions)

(C) Dr. Holger Schwichtenberg

##########################################

Parameters

$Computer = "."
$ShareName = "Kunden"
$Pfad = "g:\Daten\Kunden"
$Comment = "Alle unsere Kundenkorrespondenz"

before

"Vorher:"
Get-WmiObject Win32_Share -Filter "Name='$ShareName'"

get-WmiObject Win32Share -Filter "Name='$ShareName'" | foreach-object { $.Delete() }

Win32_Share

$MC = [WMIClass] "ROOT\CIMV2:Win32_Share"
$Access = $Null
$R = $mc.Create($pfad, $Sharename, 0, 10, $Description, "", $Access)

if ( $R.ReturnValue -ne 0) { Write-Error "Fehler beim Anlegen: "+ $R.ReturnValue; Exit}
"Freigabe wurde angelegt!"

after

"Nachher:"
get-WmiObject Win32_Share -Filter "Name='$ShareName'"

 

Querverweise

 Liste aller Codebeispiele  Definition '.NET Framework Class Library'  Verfügbarkeit der Klasse 'System.System.IO'  Übersicht über den FCL-Namensraum 'System'  PowerShell Community Portal

Buchtipp

Buchcover PowerShell 7 und Windows PowerShell 5 – das Praxishandbuch (5. Auflage Oktober 2022 (9. Auflage Gesamtreihe)) PowerShell 7 und Windows PowerShell 5 – das Praxishandbuch
Autor(en): Dr. Holger Schwichtenberg
Erschienen 2022
Umfang: 1426 Seiten
ISBN: 3446472967

Beratung & Support

Schulungen zu diesem Thema

 Microsoft SharePoint-Administration mit der Windows PowerShell
 Microsoft Exchange Server-Administration mit der Windows PowerShell / Microsoft Exchange Management Shell
 HyperV und/oder VMWare verwalten mit der Windows PowerShell
 Testing mit Windows PowerShell
 Netzwerkverwaltung mit der Windows PowerShell
 Verwaltung von Benutzern und Gruppen des „Active Directory“ mit der PowerShell
 Windows Server-Administration mit der Windows PowerShell, insbesondere Active Directory-Administration
 PowerShell-Scripting: Skripte schreiben mit der Windows PowerShell
 Citrix verwalten mit der PowerShell
 Windows PowerShell 5.1/PowerShell 7.0 für Softwareentwickler
 System Center verwalten mit der Windows PowerShell
 .NET und COM nutzen in der Windows PowerShell
 Windows PowerShell 5.0/5.1 für Umsteiger von Version 4.0
 Windows PowerShell 5.1/PowerShell 7.0 für System- und Netzwerkadministratoren
 Microsoft SQL Server-Administration mit der Windows PowerShell
 Grundlagen der PowerShell-Konsole
 Arbeiten mit PowerShell-Laufwerken
 Windows PowerShell 5.1/PowerShell 7.0 für System- und Netzwerkadministratoren (4-Tages-Agenda des öffentlichen Seminars)
 Microsoft Azure-Cloud-Dienste verwalten mit der Windows PowerShell
 Remoting, Jobs und Workflows mit der Windows PowerShell
 NetApp verwalten mit der PowerShell
 Windows PowerShell 4.0 für Umsteiger von Version 3.0
 Formatierung und Reporting mit der PowerShell
 Active Directory-Administration mit der Windows PowerShell
 Scripting-Grundlagenwissen
 Microsoft SQL Server 2008 - Die Neuerungen gegenüber SQL Server 2005 (Update-Schulung)
 Active Directory für Administratoren
 .NET-Überblick für .NET-Einsteiger und .NET-Entscheider (wahlweise für das klassische .NET Framework und/oder das moderne .NET)
 Microsoft Teams
 Microsoft SharePoint im Überblick
 Anfrage für eine individuelle Schulung zum Thema PowerShell  Gesamter Schulungsthemenkatalog