Open spuder opened 8 years ago
The clean-winsxs step will attempt to remove directories and logs
@( "$env:localappdata\Nuget", "$env:localappdata\temp\*", "$env:windir\logs", "$env:windir\panther", "$env:windir\temp\*", "$env:windir\winsxs\manifestcache" ) | % { if(Test-Path $_) { Write-Host "Removing $_" try { Takeown /d Y /R /f $_ Icacls $_ /GRANT:r administrators:F /T /c /q 2>&1 | Out-Null Remove-Item $_ -Recurse -Force | Out-Null } catch { $global:error.RemoveAt(0) } } }
I find that many of the directories fail to be emptied because of these errors:
Remove-Item : Cannot remove item C:\Windows\logs\CBS: The directory is not empty.
vmware-iso: SUCCESS: The file (or folder): "C:\Windows\winsxs\manifestcache\b3507e8d4a1eae00_blobs.bin" now owned by user "VAGRANT-3JOB2HR\vagrant". vmware-iso: + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ vmware-iso: + CategoryInfo : WriteError: (CBS.log:FileInfo) [Remove-Item], IO vmware-iso: Exception vmware-iso: + FullyQualifiedErrorId : RemoveFileSystemItemIOError,Microsoft.PowerShell vmware-iso: .Commands.RemoveItemCommand vmware-iso: Remove-Item : Cannot remove item C:\Windows\logs\CBS: The directory is not vmware-iso: empty. vmware-iso: At C:\Windows\Temp\script.ps1:21 char:15 vmware-iso: + Remove-Item $_ -Recurse -Force | Out-Null vmware-iso: + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ vmware-iso: + CategoryInfo : WriteError: (CBS:DirectoryInfo) [Remove-Item], I vmware-iso: OException vmware-iso: + FullyQualifiedErrorId : RemoveFileSystemItemIOError,Microsoft.PowerShell vmware-iso: .Commands.RemoveItemCommand vmware-iso: Remove-Item : Cannot remove item C:\Windows\logs: The directory is not empty. vmware-iso: At C:\Windows\Temp\script.ps1:21 char:15 vmware-iso: + Remove-Item $_ -Recurse -Force | Out-Null vmware-iso: + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ vmware-iso: + CategoryInfo : WriteError: (C:\Windows\logs:DirectoryInfo) [Rem vmware-iso: ove-Item], IOException vmware-iso: + FullyQualifiedErrorId : RemoveFileSystemItemIOError,Microsoft.PowerShell vmware-iso: .Commands.RemoveItemCommand vmware-iso: Remove-Item : Cannot remove item C:\Windows\winsxs\manifestcache: The vmware-iso: directory is not empty. vmware-iso: At C:\Windows\Temp\script.ps1:21 char:15 vmware-iso: + Remove-Item $_ -Recurse -Force | Out-Null vmware-iso: + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ vmware-iso: + CategoryInfo : WriteError: (C:\Windows\winsxs\manifestcache:Dir vmware-iso: ectoryInfo) [Remove-Item], IOException vmware-iso: + FullyQualifiedErrorId : RemoveFileSystemItemIOError,Microsoft.PowerShell vmware-iso: .Commands.RemoveItemCommand
I suspect that this is because of the known problems with Remove-Item -Recurse discussed in this stack overflow
http://serverfault.com/a/199994/169180
The clean-winsxs step will attempt to remove directories and logs
I find that many of the directories fail to be emptied because of these errors:
I suspect that this is because of the known problems with Remove-Item -Recurse discussed in this stack overflow
http://serverfault.com/a/199994/169180