Stockage: Les commandes powershell de référence

Voici un référentiel sur le stockage concernant Windows Server 2012 😉

STOCKAGE

Pour tous savoir, lancez gcm –module Storage

Disque Physique

[powershell]

Get-PhysicalDisk # lister tous les disques

Get-PhysicalDisk | Sort Size -Descending # lister tous les disques par décroissance

Get-StoragePool -IsPrimordial $false | Get-PhysicalDisk # lister les disques associés à un pool

[/powershell]

Les pools

[powershell]

Get-StoragePool # lister les pools de stockage

$pDisks= Get-PhysicalDisk $s=Get-StorageSubSystem New-StoragePool -FriendlyName « Monpool » -PhysicalDisks $pDisks[0] , $pDisks[1] -StorageSubSystemFriendlyName $s.FriendlyName # créer un nouveau pool « Monpool » composé de 2 disques

[/powershell]

Disques virtuels

[powershell]

New-VirtualDisk -FriendlyName « VD1 » -StoragePoolFriendlyName « Pool1 » -Size 100GB -ResiliencySettingName « Mirror » -ProvisioningType Thin # créer un disque virtuel de 100 Go en miroir et Thin Provisonné

New-VirtualDisk -FriendlyName « VD1 » -StoragePoolFriendlyName « Pool1 » -ResiliencySettingName « Parity » -UseMaximumSize # créer un disque virtuel le plus gros possible en parité

Remove-VirtualDisk -FriendlyName « VD1 » # supprimer un disque virtuel

[/powershell]

Volumes

[powershell]

Get-VirtualDisk -FriendlyName « VD1 » | get-disk | Initialize-Disk -PartitionStyle « MBR » # initialiser un disque en MBR

Get-VirtualDisk -FriendlyName « VD1 » | get-disk | New-Partition -Size 500GB -DriveLetter P # créer une partition de 500 Go avec la lettre P

Format-Volume -DriveLetter P -FileSystem NTFS -NewFileSystemLabel « Données” # formater le disque P avec le label Données

Format-Volume -DriveLetter Z -FileSystem ReFS -Confirm:$false # formater Z en ReFS sans confirmation

[/powershell]

Partages

Pour tous savoir, lancez gcm –module SMBShare

Partage SMB

[powershell]

Get-smbshare # lister tous les partages

New-SmbShare -Name « Partage1 » -Path « D:\partage1 » -FullAccess « e-novatic\cgeorgeot » # créer un partage « Partage1 » sur d:\partage1 avec un accès total pour e-novatic\cgeorgeot

Remove-SmbShare -Name « partage1 » # supprimer le partage « partage1 »

[/powershell]

Server SMB

[powershell]

Get-SmbClientConfiguration # obtenir la configuration cliente SMB

Get-SmbServerConfiguration # obtenir la configuration server SMB

[/powershell]

Deduplication

Pour tous savoir, lancez gcm –module Deduplication

Volume

[powershell]

Get-DedupVolume # lister les volumes dédupliqués

Enable-DedupVolume P: # activer la déduplication sur P

Set-DedupVolume P: -ExcludeFileType « txt », « log » -MinimumFileAgeDays 10 # configurer la déduplication sur P en excluant les fichiers txt et log avec un age de 10 jours

Get-DedupStatus P: # obtenir le status

[/powershell]

Planification

[powershell]

Get-DedupSchedule # obtenir le status

Set-DedupSchedule ThroughputOptimization-2 -Type Optimization -Start « 8:00 AM » -Days « Sunday », »Friday » # créer une tâche d’optimisation à 08h tous les vendredi et dimanche

[/powershell]

Jobs

[powershell]

Start-DedupJob P: -Type Optimization # démarrer un job d’optimisation

Get-DedupJob # obtenir les jobs en cours

[/powershell]

iSCSI Target

Pour tous savoir, lancez gcm –module iSCSITarget

Disque iSCSI virtuel

[powershell]

Get-IscsiVirtualDisk # lister les disques iSCSI

New-IscsiVirtualDisk -Path « c:\stockage\VM1.vhd » -size 400GB # créer un disque iSCSI de 400 Go

Remove-IscsiVirtualDisk –Path « c:\stockage\VM1.vhd » # supprimer un disque iSCSI

[/powershell]

Serveur CIBLE

[powershell]

New-IscsiServerTarget -TargetName « VMDisques » # créer une cible VMDisques

Set-IscsiServerTarget -TargetName « VMDisques » -initiatorId « IQN: iqn.2009-05.local.e-novatic:hv-1.e-novatic.local », »DNSNAME:hv-2.e-novatic.local » # association (unmask) des initiateurs à la cible VMdisques

Get-iscsiTarget # liste toutes les cibles

Remove-IscsiServerTarget –TargetName « VMdisques » # supprimer une cible

[/powershell]

Mapping

[powershell]

Add-IscsiVirtualDiskTargetMapping -Path « c:\stockage\DC.vhd » -TargetName VMDisques # mapper un disque à une cible

Get-IscsiServerTarget | where {$_.Status -eq « Connected »} | fl LunMappings # lister les LUNs connectées

[/powershell]

Initiateur ISCSI

Pour tous savoir, lancez gcm –module iSCSI

[powershell]

$Target=New-iSCSITargetPortal -TargetPortalAddress “192.168.0.1” # découverte du portail à l’adresse 192.168.0.1

$Portal = Get-iSCSITargetPortal # détail d’un portail

Connect-iSCSITarget -NodeAddress $Target.NodeAddress # connexion à un portail

Get-IscsiSession | where IsConnected -eq $true # lister les sessions actives

Register-IscsiSession -SessionIdentifier (Get-IscsiSession)[1].SessionIdentifier # faire d’une connexion iSCSI en persistente

[/powershell]

Pour tout savoir sur les cmdlets Windows Server 2012, rendez-vous ici.