eliminated disk checking errors

This commit is contained in:
Wyatt J. Miller 2021-07-05 18:03:25 -04:00
parent 217bec9d9f
commit 3cef681bbc

View File

@ -22,20 +22,49 @@ Function Write-Log{
Add-Content $logFile -value $logstring Add-Content $logFile -value $logstring
} }
# function to scan the disk whether we have to use a drive letter
# (i.e. C:, D:, etc) or a filesystem label (i.e. Windows, etc.)
Function Scan-Disk{
Param ([string]$volume_identifier)
$result=Repair-Volume -DriveLetter $i.DriveLetter -Scan
if ($result.value -gt 0) {
Repair-Volume -DriveLetter $i.DriveLetter -Scan -OfflineScanAndFix
$requireReboot = $true
} else {
Write-Output "$($i.FileSystemLabel): Drive is OK!"
Write-Log "Date: $($now), Drive Letter: $($i.DriveLetter), Volume Name: $($i.FileSystemLabel), Result: $($result), $($computerName)"
}
}
Write-Output "Checking disks for $($computerName)" Write-Output "Checking disks for $($computerName)"
foreach ($i in $volumes) { foreach ($i in $volumes) {
if ($i.FileSystemLabel -eq "") { if ($i.FileSystemLabel -eq $null) {
Write-Output ""
} else {
$result=Repair-Volume -DriveLetter $i.DriveLetter -Scan $result=Repair-Volume -DriveLetter $i.DriveLetter -Scan
if ($result.value -gt 0) { if ($result.value -gt 0) {
Repair-Volume -DriveLetter $i.DriveLetter -Scan -OfflineScanAndFix Repair-Volume -DriveLetter $i.DriveLetter -Scan -OfflineScanAndFix
$requireReboot = $true $requireReboot = $true
} else {
Write-Output "$($i.DriveLetter): Drive is OK!"
Write-Log "Date: $($now), Drive Letter: $($i.DriveLetter), Result: $($result), $($computerName)"
}
} else {
if ($i.DriveLetter -eq $null) {
Write-Output "Volume is not identifiable! Skipping..."
continue
}
$result=Repair-Volume -FileSystemLabel $i.FileSystemLabel -Scan
if ($result.value -gt 0) {
Repair-Volume -FileSystemLabel $i.FileSystemLabel -Scan -OfflineScanAndFix
$requireReboot = $true
} else { } else {
Write-Output "$($i.FileSystemLabel): Drive is OK!" Write-Output "$($i.FileSystemLabel): Drive is OK!"
Write-Log "Date: $($now), Drive Letter: $($i.DriveLetter), Volume Name: $($i.FileSystemLabel), Result: $($result), $($computerName)" Write-Log "Date: $($now), Volume Name: $($i.FileSystemLabel), Result: $($result), $($computerName)"
} }
} }
} }