Skip to main content

Script to Compress WinSXS

Compress WinSXS:

A Script to compress WinSXS folder resided in Windows directory.

if you are concern about the growing size of WinSXS folder taking so much of space then you can use this powershell script to reduce the size by compressing WinSXS folder data.
This script is very usefull in the case when you need to compress WinSXS folder in large number of Servers/Desktops environment.

#——————————————–
# Script to compress WinSXS folder
try {
$winDir = “$($env:windir)”
$winSxSDir = “$winDir\WinSxS”
$aclPath = “$winDir\WinSxS.acl”
$serviceMSI = “msiserver”
$serviceTI = “TrustedInstaller”

Stop-Service $serviceMSI
Stop-Service $serviceTI

Set-Service -Name $serviceMSI -StartupType Disabled
Set-Service -Name $serviceTI -StartupType Disabled

icacls.exe $winSxSDir /save $aclPath /t

takeown /f $winSxSDir /r

icacls $winSxSDir /grant “$($env:USERDOMAIN)\$($env:USERNAME)”:”(F)” /t

compact /s:$winSxSDir /c /a /i *

icacls $winSxSDir /setowner “NT SERVICE\TrustedInstaller” /t

icacls $winDir /restore $aclPath

Set-Service -Name $serviceMSI -StartupType Automatic
Set-Service -Name $serviceTI -StartupType Automatic
}
catch {
Write-Host -ForegroundColor Red $Error[0]
}
#——————————————–

Note: Please note if server/desktop services (Msiserver & TrustedInstaller) are already stopped and in disabled state then this script will modify both services to automatic state.


Please find the script below you can also download the script from here.

https://www.dropbox.com/s/ojvavujuxpwt20m/Compress%20Winsxs.Bat?dl=0



Thanks for Reading my Blog

Enjoy Maddi

Comments

karteek varma said…
sc query msiserver
sc query TrustedInstaller

sc stop msiserver
sc stop TrustedInstaller

sc config msiserver start= disabled
sc config TrustedInstaller start= disabled

icacls "%WINDIR%\WinSxS" /save "%WINDIR%\WinSxS.acl" /t

takeown /f "%WINDIR%\WinSxS" /r

icacls "%WINDIR%\WinSxS" /grant "%USERDOMAIN%\%USERNAME%":(F) /t

compact /s:"%WINDIR%\WinSxS" /c /a /i *

icacls "%WINDIR%\WinSxS" /setowner "NT SERVICE\TrustedInstaller" /t

icacls "%WINDIR%" /restore "%WINDIR%\WinSxS.acl"
del "%WINDIR%\WinSxS.acl"

sc config msiserver start= demand
sc config TrustedInstaller start= demand

sc start msiserver
sc start TrustedInstaller

Popular posts from this blog

  PowerShell DSC log amount issue on operating system drive Overview Problem Impact Microsoft Ticket (Workaround) solution References Overview When using PowerShell DSC on a configured system in some (seldom) cases it can lead to log amount issues in a specific folder. The following folder grows (over time) so several GB size holding hundreds and thousands of JSON log files as visible in the following screenshot: Also sometimes it looks like this: Problem The problem is (but must not be) related to DSC configuration issues as far as it could be analyzed. The log folder „Configuration Status“ is filled with sometimes up to 7 Megabyte sized JSON files. This log folder (based on our analysis) is used for sending reports to report server but is not cleaned up automatically. Impact Some PowerShell DSC managed systems need extensive disk space due to log directory grown to 40 Gigabyte plus. This causes an alert in disk space / availability monitoring and could in some cases lead to non w...

Vm backup failling with snapshot error (156)An error occurred while saving the snapshot: Failed to quiesce the virtual machine.

  Hi Everyone, I am here back with another issue. If anyone is getting error taking backup snapshot of a virtual machine and getting the below error. Vm backup failling with snapshot error (156)An error occurred while saving the snapshot: Failed to quiesce the virtual machine. Apr 28, 2021 2:22:55 AM - Critical bpbrm (pid=15849) from client XXXXX: FTL - vSphere_freeze: Snapshot task for virtual machine XXX-YYY (/vmmor/vm-341) failed, 0 retries remaining, error type: 263, error message: An error occurred while saving the snapshot: Failed to quiesce the virtual machine.. Apr 28, 2021 2:23:08 AM - Critical bpbrm (pid=15849) from client XXXX: FTL - vfm_freeze: method: VMware_v2, type: FIM, function:...

How To Resolve VSS Writer Errors Without Rebooting (VShadow)

Background This article describes how to resolve VSS Writer errors without rebooting Windows. Here are the scenarios in which you'd want to use these instructions: Scenario 1: Failed VSS Writers. There are instances when backups are failing due to an agent's VSS writers being in a failed state, but it is impossible or not desirable to restart the server until at least after business hours. Scenario 2: VSS Writers Not Started There may also be a writer that is not running and needs to be. Running the command  - " vssadmin list writers"  will only show a list of writers that are currently started Scenario 3: Using VShadow for Windows Server 2003 or XP VSS is available in the Volume Shadow Copy Service 7.2 SDK, which you can download from the Windows Download Center . Troubleshooting Troubleshooting Scenario 1: Failed VSS writers Find the failed VSS writers and their associated services, and restart them: 1) Run Command Prompt as Administrator (...