Comparision of --compact compression formats

Comments, questions, bug reports, etc.
bliblubli
Posts: 88
Joined: Thu Dec 31, 2015 10:45 am

Re: Comparision of --compact compression formats

Post by bliblubli »

In my experience, wim mounting doesn't require any space. I mounted a 10GB wim on a drive with 2Gb left and it worked. But I didn't try to access them, so it may be the reason why it worked.
For the compact extraction, so there is no way to make it a file or folder attribute that can be inherited from the parents like NTFS compression?
bliblubli
Posts: 88
Joined: Thu Dec 31, 2015 10:45 am

Re: Comparision of --compact compression formats

Post by bliblubli »

I tried to add the driver. After copying the wof.sys (couldn't find a wofadk.sys) and adding the registry , I get an error that it is not signed and will be ignored. What do I do wrong? Is this wof.sys driver something else?
JFX
Posts: 40
Joined: Tue Aug 18, 2015 3:59 pm

Re: Comparision of --compact compression formats

Post by JFX »

Well, you should use wofadk,sys not the WOF driver of windows 8.1 / windows 10.

Anyway, there is an update (KB3033929) for Windows 7 to let it understand the new signing of the driver.
misty
Posts: 12
Joined: Tue Aug 18, 2015 10:23 am

Re: Comparision of --compact compression formats

Post by misty »

synchronicity wrote:Thanks for doing these tests. I've included the file list in wimlib-1.8.3-BETA2, and it now knows to force XPRESS4K compression on all files in the list. Therefore, it should now be possible to apply a full Windows image in "compact mode" using XPRESS8K, XPRESS16K, or LZX compression, with no changes to the default WimBootCompress.ini file, and have Windows successfully boot. Feel free to test this if you have a chance.
synchronicity wrote:Thanks for the suggestions. I've added the three additional patterns and also made the fallback be "uncompressed" rather than XPRESS4K if the image does not appear to be Windows 10 (or later). I haven't yet had time to fully test the changes but feel free to try them out in wimlib-1.8.3-BETA3.
Hi Eric,

Apologies for the long delay in testing this feature - work and family commitments have been keeping me busy. I can confirm successful applications of Windows 7 (SP1) and Windows 8.1 (Update 1) in --compact mode (XPRESS4K, XPRESS8K, XPRESS16K and LZX compression formats all tested for Windows 8 - XPRESS4K, XPRESS8K, XPRESS16K all tested for Windows 7).

Windows 10 was used in all tests when applying relevant .wim's in --compact mode.

All Operating Systems were 64-bit - laptop running in UEFI mode. System set up to multiboot Windows 7/8.1/10.

Source files (Windows 7 and 8.1) had wofadk.sys driver and registry settings applied.

WimBootCompress.ini was not added (in the case of Windows 7) or edited (in the case of Windows 8) - the file list built in to wimlib was used.

Some results for Windows 7 (Used space displayed when checking properties of the systemdrive) -
* 18.0 GB (no compression used)
* 14.0 GB (XPRESS4K)
* 13.7 GB (XPRESS8K)
* 13.5 GB (XPRESS16K)
Note that the Pagefile was set to a fixed size of 8 GB and accounts for much of the used space reported above. This was a working system (with Office 2010 and some other programs installed) that was imaged using wimlib and reapplied in --compact mode after the drive was formated.

Some results for Windows 8.1 (Used space displayed when checking properties of the systemdrive) -
* 20.0 GB (no compression used)
* 15.8 GB (XPRESS4K)
* 15.4 GB (XPRESS8K)
* 15.2 GB (XPRESS16K)
* 14.5 GB (LZX)
Note that the Pagefile was set to a fixed size of 8 GB and accounts for much of the used space reported above. This was a working system (with Office 2010 and some other programs installed) that was imaged using wimlib and reapplied in --compact mode after the drive was formated.

Great work - as ever.

Regards,

Misty

P.s. I used wimlib version 1.10.0 in the above tests.
misty
Posts: 12
Joined: Tue Aug 18, 2015 10:23 am

Re: Comparision of --compact compression formats

Post by misty »

Below is a batch file I use to copy wofadk.sys and apply the relevant registry settings to an offline system. Path (to wofadk.sys) and TARGET might need editing.

Batch will automate the following -
* load the target systems SYSTEM registry hive as _SYSTEM (default path of \Windows\system32\config\system assumed)
* apply wofadk.sys registry settings to _SYSTEM
* unmount _SYSTEM
* copy wofadk.sys to target (\Windows\System32\drivers)

Code: Select all

@echo off
SET TARGET=F:

cls
echo This batch will add registry settings for wofadk.sys
echo and will copy the file to the drive %TARGET%
echo.
pause

cls
echo Loading registry Hive -
echo.
reg.exe load HKLM\_SYSTEM %TARGET%\Windows\system32\config\system
echo.
echo.
echo.

echo Adding WofAdk registry settings - 
echo.
reg.exe add HKLM\_SYSTEM\ControlSet001\services\WofAdk /v Discription /t REG_SZ /d "WofAdk Mini-Filter Driver" /f
reg.exe add HKLM\_SYSTEM\ControlSet001\services\WofAdk /v DisplayName /t REG_SZ /d "WofAdk" /f
reg.exe add HKLM\_SYSTEM\ControlSet001\services\WofAdk /v ErrorControl /t REG_DWORD /d 1 /f
reg.exe add HKLM\_SYSTEM\ControlSet001\services\WofAdk /v Group /t REG_SZ /d "FSFilter Compression" /f
reg.exe add HKLM\_SYSTEM\ControlSet001\services\WofAdk /v Start /t REG_DWORD /d 0 /f
reg.exe add HKLM\_SYSTEM\ControlSet001\services\WofAdk /v SupportedFeatures /t REG_DWORD /d 3 /f
reg.exe add HKLM\_SYSTEM\ControlSet001\services\WofAdk /v Type /t REG_DWORD /d 2 /f
reg.exe add HKLM\_SYSTEM\ControlSet001\services\WofAdk /v DebugFlags /t REG_DWORD /d 0 /f
reg.exe add HKLM\_SYSTEM\ControlSet001\services\WofAdk /v AutoAttach /t REG_DWORD /d 1 /f
reg.exe add HKLM\_SYSTEM\ControlSet001\services\WofAdk /v Tag /t REG_DWORD /d 2 /f
reg.exe add HKLM\_SYSTEM\ControlSet001\services\WofAdk /v DependOnService /t REG_MULTI_SZ /d FltMgr /f
reg.exe add HKLM\_SYSTEM\ControlSet001\services\WofAdk /v ImagePath /t REG_EXPAND_SZ /d \SystemRoot\System32\drivers\wofadk.sys /f
reg.exe add "HKLM\_SYSTEM\ControlSet001\services\WofAdk\Instances" /v DefaultInstance /t REG_SZ /d "WofAdk Instance" /f
reg.exe add "HKLM\_SYSTEM\ControlSet001\services\WofAdk\Instances\WofAdk Instance" /v Altitude /t REG_SZ /d 40730 /f
reg.exe add "HKLM\_SYSTEM\ControlSet001\services\WofAdk\Instances\WofAdk Instance" /v Flags /t REG_DWORD /d 0 /f
echo.
echo.
echo.

echo Unloading registry Hive -
echo.
reg.exe unload HKLM\_SYSTEM
echo.
echo.
echo.

echo Copying wofadk.sys 
echo.
copy %~dp0wofadk.sys %TARGET%\Windows\System32\drivers
echo.
echo.
echo.
pause
Post Reply