Laufwerksbelegung über PowerShell auslesen
5. August 2016
Das Skript durchläuft die Organisationseinheit in einer AD Umgebung mit dem Namen Server. Ermittelt alle Laufwerke eines Systems und prüft die Speicherbelegung auf größer 25%. Die Daten werden farblich ausgegeben.
# Ldap Server auslesen
$servers = Get-ADComputer -LDAPFilter "(operatingsystem=*Server*)"# Server durchlaufen
foreach ($server in $servers){
Write-Host "$server.name" -ForegroundColor Green
# Erreichbarkeit des Systems prüfen
if ((Test-Connection -ComputerName $server.Name -Quiet)){
# Laufwerke auslesen
$laufwerke = Get-Wmiobject Win32_logicaldisk -computer $server.Name | Select-Object deviceid,size,freespace,DriveType
foreach ($laufwerk in $laufwerke)
{
# lokale Laufwerke
if($laufwerk.DriveType -eq 3){
# Freie Speicher in %
$free = [Math]::Floor([decimal]($laufwerk.Freespace) / ($laufwerk.Size / 100))
# Freie Speicher in GB
$freeSpace = [Math]::Floor([decimal]($laufwerk.freespace/1GB))
# Kennzeichnung bei Speicher unter 25 %
if($free -le 25 ){
Write-Host $laufwerk.DeviceID " $free% frei ($FreeSpace GB)" -ForegroundColor Red
}
else{
Write-Host $laufwerk.DeviceID " $free% frei ($FreeSpace GB)" -ForegroundColor Yellow
}
}
}
}
else{
Write-Host "Keine Verbindung" -ForegroundColor Red
}
Write-Host "---------------------"
}
Ausgabebeispiel:
CN=DC01,OU=Domain Controllers,DC=…,DC=…,DC=de.name
C: 72% frei (43 GB)
———————–
CN=CA01,OU=Server,DC=…,DC=…,DC=de.name
C: 71% frei (42 GB)
———————–
CN=SC03,OU=Server,DC=…,DC=…,DC=de.name
Keine Verbindung
———————–
CN=DB03,OU=Server,DC=…,DC=…,DC=de.name
C: 39% frei (23 GB)
F: 84% frei (84 GB)
G: 87% frei (69 GB)
———————–
CN=BUILD02,OU=RDP,OU=Server,DC=…,DC=…,DC=de.name
C: 17% frei (11 GB)
D: 33% frei (26 GB)
———————–
…
C: 72% frei (43 GB)
———————–
CN=CA01,OU=Server,DC=…,DC=…,DC=de.name
C: 71% frei (42 GB)
———————–
CN=SC03,OU=Server,DC=…,DC=…,DC=de.name
Keine Verbindung
———————–
CN=DB03,OU=Server,DC=…,DC=…,DC=de.name
C: 39% frei (23 GB)
F: 84% frei (84 GB)
G: 87% frei (69 GB)
———————–
CN=BUILD02,OU=RDP,OU=Server,DC=…,DC=…,DC=de.name
C: 17% frei (11 GB)
D: 33% frei (26 GB)
———————–
…
Das könnte dich auch interessieren
TFS Reportfehler – Fehler bei der Berichtsverarbeitung
7. Oktober 2016
Fehlermeldung von Visual Studio HTTP 404 Not found
7. September 2016