Maak je klaar om te leren hoe je betere DFS PowerShell-scripts kunt schrijven met behulp van de kennis die je in deze tutorial opdoet. In deze post leer je alles over het beheren van DFS-links in PowerShell!
Deze blogpost heeft een bijbehorende video gemaakt door TechSnips-bijdrager, Scott Hurst. Voel je vrij om te kijken of, als je de voorkeur geeft aan tekst, verder te lezen!
Mijn Laatste Video’s
Distributed File System (DFS) Links verminderen de complexiteit van het werken met netwerkbestandshares. DFS Links stellen gebruikers en applicaties in staat om een virtuele padnaam te gebruiken om verbinding te maken met gedeelde mappen. Je kunt DFS links maken met PowerShell.
Of je nu Active Directory beheert of een andere DFS-product, het schrijven van DFS PowerShell-scripts helpt je om eventuele problemen aan te pakken.
Dit virtuele namespace stelt beheerders in staat om gedeelde mappen te presenteren die zich op verschillende servers bevinden, of zelfs de locatie van een gedeelde map te wijzigen, volledig transparant voor de gebruikers van die map.
Gebruikers hoeven geen bladwijzers bij te werken en applicaties hoeven niet te worden bijgewerkt met nieuwe paden wanneer bestandsservers veranderen.
DFS Voordelen
Voor gebruikers is de toegang tot netwerksharemappen vereenvoudigd tot een <namespace>\Mapnaam-indeling, waardoor de complexiteit van mappen op externe servers wordt verminderd.
Voor applicaties hoeven hardcoded paden naar bronnen op het netwerk niet te worden gewijzigd vanwege een verandering in het netwerkpad. Een eenvoudige update naar de DFS link en de applicatie blijft toegang hebben tot de bronnen op hun nieuwe locatie.
Vereisten voor de DFS Serverrol
- Actieve Directory
- Bestands- en opslagservices geïnstalleerd op een Windows Server
- Windows Server (Semi-Annual Channel)
- Windows Server 2016
- Windows Server 2012 R2
- Windows Server 2012
- Windows Server 2008 R2 Datacenter/Enterprise
Vereisten
- Een beheerdersaccount met de juiste machtigingen
- RSAT-tools met de geïnstalleerde ‘File Services Tools – DFS Management Tools’
Aan de slag met uw DSC PowerShell-scripts
Ten eerste moet u RSAT downloaden en installeren. Vervolgens moet u alle benodigde Windows-functies installeren. Dit installeert de DFS Management GUI, de DFS Namespaces module voor Windows PowerShell om DFS links te maken en te beheren met PowerShell, en opdrachtregelhulpprogramma’s, maar het installeert geen DFS-services op de server.
Veelvoorkomende DFS-opdrachten
U kunt namespaces beheren met behulp van de DFS Management GUI, de DFS Namespace (DFSN) cmdlets in PowerShell, de DfsUtil commando’s, of scripts die WMI aanroepen.
Enkele veelvoorkomende PowerShell-opdrachten zijn:
Get-DfsnRoot
– Ontdek alle DFS-naamruimten in het huidige domein – Wordt vaak gebruikt om beschikbare naamruimten in het huidige domein te controlerenNew-DfsnFolder
– Maak een nieuwe DFS-mapnaam
– Wordt vaak gebruikt om een nieuwe DFS-map te maken in een naamruimteNew-DfsnFolderTarget
– Wijs pad(en) toe aan een DFS-mapnaam
– Wordt vaak gebruikt om één of meer netwerkmap-paden toe te wijzen aan een DFS-mapRemove-DfsnFolderTarget
– Verwijdert een pad uit een DFS-map maar verwijdert de DFS-map niet
– Wordt vaak gebruikt om één of meer netwerkmap-paden uit een DFS-map te verwijderenRemove-DfsnFolder
– Verwijdert een map en al zijn paden
– Wordt vaak gebruikt om een DFS-map uit een naamruimte te verwijderen
Het vinden van DFS-naamruimten
We beginnen met het krijgen van een idee van alle online en beschikbare naamruimten in het huidige domein met behulp van de Get-DfsnRoot
cmdlet.
Dit toont aan dat er twee naamruimten zijn die Online
zijn in dit domein.

Het vinden van DFS-mappen
Met behulp van het Get-DfsnFolder
commando kunnen we de DFS mappen in elke naamruimte weergeven.
Uit deze output kunnen we zien dat in de AppRoot-naamruimte er geen DFS map is met de naam PowerShell.

Het maken van DFS Link-mappen voor DSC PowerShell-scripts.
In dit voorbeeld hebben we een gerepliceerde map genaamd PowerShell op onze drie bestandsservers: FileServer01, FileServer02 en Datacenter.
Het doel is om deze gerepliceerde map te delen met onze beheerders via één pad.
Om dit te doen, zullen we een nieuwe DFS koppeling map aanmaken in de AppRoot naamruimte genaamd PowerShell met behulp van New-DfsnFolder
en het verwijzen naar de bestandsshare van de datacenterserver. We zullen de DFS map status instellen op Online en de Doelpad status instellen op Online.
In de DFS-beheerinterface kunnen we zien dat de PowerShell DFS map niet bestaat.


Laten we nu Windows Verkenner uitvoeren vanuit een PowerShell-console en bevestigen dat deze niet bestaat.
Als de map niet bestaat, wordt de uitvoer Pad niet gevonden. Klaar om door te gaan in groene tekst in het terminalvenster geschreven, zoals u hieronder kunt zien.
Uit de uitvoer zien we dat de map is aangemaakt, de Verwijzingsprioriteit Klasse
is ingesteld op Globaal-Hoog
en de Status
is Online
.

De GUI bevestigt ook wat PowerShell ons heeft verteld.

en ons pad is nu beschikbaar in Windows Verkenner.

Het aanmaken van DFS-mapdoelen
Nu we succesvol de Powershell DFS map hebben aangemaakt in de namespace, voeg een extra mapdoelpad toe en stel dat pad in als Online met behulp van New-DfsnFolderTarget
. DFS PowerShell-scripts stellen u in staat om een willekeurig aantal componenten toe te voegen.
Tot nu toe hebben we twee van onze drie serverpaden toegevoegd en online gezet. Voor ons laatste map-pad willen we het pad toevoegen maar niet beschikbaar maken voor gebruikers. Laten we dus een mapdoelpad toevoegen aan onze PowerShell DFS map en deze keer de DFS-oudermapstatus instellen op offline, we zullen opnieuw gebruikmaken van New-DfsnFolderTarget
.

Je kunt zien dat het pad van FileServer01 en Datacenter momenteel Online
is en de status van FileServer02 is ingesteld op Offline
.

DFS-mapdoelpaden instellen op Offline of Online.
We kunnen ook wijzigen welke servers de Online en Offline hosts zijn, en zelfs welke server de primaire host van het bestandspad zal zijn met behulp van Set-DfsnFolderTarget
.
Zoals u hieronder kunt zien:
- Het pad van FileServer01 is veranderd naar
Offline
- De
ReferralPriorityClass
van de server Datacenter is veranderd vanglobal-high
naarsitecost-normal
- Het pad van FileServer02 heeft zijn status veranderd naar
Online
- De
ReferralPriorityClass
van FileServer02 is veranderd naarglobal-high

DFS-mapdoelpaden verwijderen met PowerShell
I try to vaccinate my code against the fat finger flu as much as possible. Here we will try to install a safety net before removing one of the folders by making sure that it is offline before deleting it.
Dag FileServer01 map!

Voor degenen die de optie van een vangnet willen overslaan, kunnen we u ook tegemoet komen, dappere zielen.
We hebben afscheid genomen van de FileServer02-map.

DFS-mappen verwijderen
Het is een lange en kronkelige weg geweest, maar de tijd voor onze DFS link is gekomen. We kunnen de PowerShell-map en DFS link verwijderen met behulp van de Remove-DfsnFolder
cmdlet.

A quick double-check of the DFS Management GUI shows our DFS link is no more.

Samenvatting
Dat is alles! Je hebt een kronkelige weg van DFS en PowerShell kung fu afgelegd. Hopelijk heb je nu wat codefragmenten verzameld om je te helpen betere PowerShell DFS-scripts te bouwen!
Source:
https://adamtheautomator.com/dfs-powershell-scripts/