Monday, 25 April 2016

Add ESET antivirus ISO with persistent updates to E2B (revised!)

NOTE: There was a problem with this procedure as ESET didn't seem to actually use the updated definitions. This was fixed by adding the lines in red to the .mnu file below which I had left out accidentally and also using a copy of the persistent ext3 from a working eset Rescue flash disk!

For a different method using a .imgPTN file, please see the  next post!


E2B can boot the ESET System Rescue ISO easily, but each time you have to download the latest updates which can take a while.

The current ESET disk eset-sysrescue. does not support UEFI booting, but here is how to MBR-boot with persistence for updates, direct from the .iso file:


You will need a working, ESET SysRescue flash drive.

1. Copy the eset-sysrescue. file to the \_ISO\ANTIVIRUS\MNU folder (or any standard menu folder at the 3rd level down - e.g. \_ISO\MAINMENU\FRED)

2.  Run RMPrepUSB and select the ESET flash drive and run Drive-File - Filename= C:\eset - Start=P3 - Length=P3 - File position = 0. This makes an image of the entire 200MB P3 partition which contains the ext3 filesystem and any new update files.

3. Make a .mnu file as below using Notepad, and copy it to the same folder as the .iso file.

NEW VERSION! Note lines in red!


# Place this .mnu file and the ISO in either \_ISO\MainMenu\MNU or \_ISO\ANTIVIRUS\MNU
# This menu will work even on an NTFS USB boot drive
# IMPORTANT: you MUST run WinContig (Ctrl+F2) before booting E2B.

iftitle [if exist $HOME$/eset-sysrescue.] Eset PERSISTENT\n Boot using .mnu file with persistence
set ISO=$HOME$/eset-sysrescue.
set PER=/eset

uuid () > nul
set UUID=%?%

if exist CD echo WARNING: Cannot use partnew command! && pause && configfile (bd)/menu.lst
if "%E2BDEV%"=="" set E2BDEV=hd0 && pause E2BDEV forced to hd0!
#enable parttype output
debug 1
# make empty table entry in 3rd position in ptn table
parttype (%E2BDEV%,2) | set check=
debug off
set check=%check:~-5,4%
if "%check%"=="0x00" partnew (%E2BDEV%,2) 0 0 0
if not "%check%"=="0x00" echo $[0x0c]WARNING: PTN TABLE 3 IS ALREADY IN USE - PERSISTENCE WILL NOT WORK! && pause
debug 1
if not exist %PER% echo $[0x0c]WARNING: %PER% file not found! && pause
errorcheck off
if "%check%"=="0x00" partnew (%E2BDEV%,2) 0x0 %PER%
errorcheck on
#map ptn 4 to ISO
partnew (%E2BDEV%,3) 0x0 %ISO%
map %ISO% (0xff)
map --hook
root (0xff)
# to allow grub4dos access, set partition type
parttype (hd0,2) 0x83
# We need a lib folder with updates, or updates will not work!
if not exist (hd0,2)/lib/em000_32.dat echo -e $[0106]WARNING: %PER% does not contain updates! && pause
# reset ptn type as not neeed for linux and prevent E2B complaining after reboot!
parttype (hd0,2) 0x0
kernel /casper/vmlinuz boot=casper live-media=/dev/disk/by-uuid/%UUID% persistent quiet splash --
initrd /casper/initrd.lz

You should now have on your E2B USB drive:
\_ISO\ANTIVIRUS\MNU\eset.mnu    (any name will do!)

4. Boot to E2B - Antivirus Menu and select the  new Eset PERSISTENT menu

5. At the ESET desktop, first accept the Licence Agreement by selecting the two options and clicking 'I accept'

Now, any updates you make will be persistent.

The .mnu file will be added to the \_ISO\docs\Sample mnu Files\Linux folder in the next version of E2B.