Steve's blog about RMPrepUSB, Easy2Boot and USB booting and sometimes other stuff too!
Visit www.rmprepusb.com for over 140 Tutorials on USB booting or www.easy2boot.xyz for a unique USB multiboot solution.
If you have added your own \boot\grubfm\startup_menu.txt file, you can check for an expiry date. This would force the user to update their USB drive. Here is an example of how to test dates.
Check expiry date
You can add the lines below to check that an expiry date has
not been met or exceeded. Change the value of LOWERDATE and UPPERDATE as required to
set a valid range.
The code gets the current date in YYYYMMDD format into sdate.
The regexp command is used to get the first 8 characters only.
It then compares that dates and reboots the system if the
expiry date has been met or if the date is before or equal to the LOWERDATE.
The LOWERDATE
test helps to prevent the user from cheating by setting the RTC (Real Time
Clock) to an earlier date.
This may be of use if you want to force the user to update
the USB boot drive after a specific date (.e.g. example = expires Feb 01 -
valid for any day in January).
# check date - reset if UPPERDATE (YYYYMMDD) is equal to or smaller than current date set LOWERDATE=20201231 set UPPERDATE=20210201 unset now;date -s now;regexp -s sdate '(........)' "$now" # display RTC date and time in human form (optional) date -m if [ "${sdate}" -le "${LOWERDATE}" ]; then echo "ERROR: INCORRECT RTC DATE - rebooting..."; sleep 5; reset -w; fi if [ "${sdate}" -ge "${UPPERDATE}" ]; then echo "ERROR: THIS SOFTWARE HAS EXPIRED ($sdate >= $UPPERDATE) - rebooting..."; sleep 5; reset -w; fi
E2B has a slightly revised version of the new Launcher Windows app.
agFM uses the latest version of grubfm (last one for this year). I have now added the F1-F6, F10 and Ctrl+F menu icons into the default grubfm menu theme too.
Has anyone tried the new Launcher app? Please provide feedback...
Happy New Year to all - and let's hope 2021 is better than 2020!
Download from the Alternate Downloads areas as usual (see side panel for links).
a1ive has improved the menu system and the F1 button can now display hardware information under grub2.
You can also boot to Ventoy and AIOBoot and PXE boot if you have them present on the USB drive.
Unfortunately, if you have added a your own grub2 theme to the agFM partition, you will have to modify it so that it works correctly with the new grubfm\agFM version. Details of how to modify an existing theme are included in the latest version of eBook #4 v1.19Beta which has been updated for agFM v1.69. You can get the updated version for free by using the link that was emailed to you when you first purchased it.
The E2B eBook 4 covers how to add different themes and configure your own startup menu (updated specifically for agFM v1.69 and later only).
I have also updated five different agFM themes which should work with the new agFM v1.69 - see here.
Under some (as yet unknown) conditions, running chkdsk c: /f may damage your Windows filesytem and cause BSODs! See here for a report for Windows 10 20H2 update KB4592438.
This version has a new version of the 'E2B Launcher.exe' 32-bit Windows application which you can find in the\_ISO\docs\E2B Utilities\Launcher folder.
I have also added a 'Desktop E2B Launcher.cmd' file into the folder. You can copy this file to your Windows Desktop so that you can quickly run E2B Launcher from any E2B USB drive that is connected to your system. Each E2B USB drive must contain the new Launcher folder or else it won't be detected.
2.07c adds an extra link in the 'Tools' tab which copies the 'Desktop E2B Launcher.cmd' file to the Desktop for you.
This version has a new Beta version of an 'E2B Launcher.exe' 32-bit Windows application which you can find in the \_ISO\docs\E2B Utilities\Launcher folder.
Version 1.66 and 1.67 had a bug when booting Legacy Linux and other non-windows ISOs using the .isodef, isomap and .isomem options in agFM. This was due to a1ive changing his code and removing the MAP file from his file structure!
Use the \e2b\Update agFM batch file to update to the new version.
I was asked today for a grub2 menu which would protect the E2B USB drive from being cloned onto another drive.
The lines below can be added into your startup_menu.txt file.
It checks the total drive capacity of your E2B USB drive - if it is not as expected, then it displays a graphics file (candle in this case) and then prompts you to enter a password (3 chances). If the user does not know the password, then it loads a 'guest' menu, but it could just as easily shutdown or reboot the PC.
You can display any graphics file you like (.png, .jpg, .bpm) and you can change the messages, etc. as you wish.
I have just updated eBook #4. You can get the update for free by using the link in your original Payhip email that you received when you first purchased the eBook.
I also found an old bug in the .isopersist code in agFM, so I have now updated agFM to v1.67 today. The problem was that the *-rw persistence file would only work if it was in the root of the USB drive. Now it can be in either the root or the same folder as the Linux ISO.
Easy2Boot and agFM can boot WinPE-based ISOs easily, however many of these ISOs require access to files on the 'DVD' drive once they have booted to WinPE.
Since these files are inside the ISO file on the USB drive, these extra utilities cannot be found by the miniWindows environment and you may find some Desktop and StartMenu items missing!
E2B and agFM can make this work however by using that fact that most WinPE's are built using WinBuilderwhich typically contain this extra startup code. When a WinPE made by WinBuilder boots, it looks for a volume containing a .ini file in the root (e.g. \WIN10PESE.ini) which specifies the path of an ISO file. WinPE will then find that ISO file and auto-mount it as a virtual DVD drive so that WinPE can now access the files within the ISO.
WIN10PESE.ini
[IsoInfo] IsoName=/_ISO/MAINMENU/Win10XPE_x64.ISO
E2B and agFM will modify these .ini files before booting the ISO (that is one reason why a write-enabled USB drive is required). The ISO filename should not contain spaces because some versions of WinBuilder cannot cope with spaces in filenames.
However, this only works if the WinPE contains this special WinBuilder startup code which looks for the special WinBuilder .ini file.
E2B and agFM also modify the \AutoUnattend.xml file in the root of the E2B USB drive - this file is automatically run if the ISO is a Windows Install ISO (but it is not usually run by WinPE ISOs).
c't Emergency ISO
Unfortunately, some WinPE ISOs do not contain this special startup code (e.g. c't Emergency Windows 2021). There are a number of ways around this:
F3 now also shows winre.wim Boot to Windows Recovery entries if a Recovery folder is present.
F10 hotkey will reload agFM without rebooting
Search hotkey is changed from Ctrl+Shift+F which did not work in MBR\Legacy mode to Ctrl+F
New Ctrl-F search function searches current level and one folder down only. User can search for any extension or use a hotkey. e.g. Ctrl+F P will list all .imgPTN* files in current directory and level below current directory.
F5 now uses grubfm built-in code (/boot/grubfm/f5.sh no longer used).
Bugfix for dd command where -c exceeds 63555.
Ability to use Ctrl+F as menu hotkey (but not all Ctrl+ letters can be used!).
The menuentry command now supports --help_msg option which can display help text in a themed menu (but is buggy, so I recommend you don't use it in your menus!).
The e2b.sh and map.sh files now use map -f to map as the first device when in efi mode.
Add_Ventoy.cmd changed to work with latest e2b for Ventoy 1.0.29.zip download.
Update_to_latest_Ventoy_version.cmd file will now automatically add 'Ventoy for Easy2Boot' to the USB drive. The current E2B version of 'Ventoy for E2B' will be downloaded from the E2B server.
Latest grubfm build (2020-12-01).
/e2b/loadfm file added.
/ventoy/Sample Ventoy config files folder added (contains sample files which user can add to ptn1). Copy to \ventoy folder on ptn1 will allow you to boot agFM or E2B from the Ventoy menu
SAMPLE_slack theme fm.txt updated for Ctrl+F text display on menu.
SAMPLE_slack theme fm.txt now supports timeout countdown so it can be used for startup menu with F1-F6 icons and timeout counter
Improved SAMPLE_startup_menu.txt - now can have more than 10 entries and define a different icon and hotkey for each menu entry.
Now when a user runs Make_E2B.exe, they will be asked if they want to add agFM and Ventoy to partition 2. Both will be fetched from the E2B server. Currently Ventoy is the special 'Ventoy for Easy2Boot' v1.0.29 which is not blocked to run on an E2B USB drive.
agFM Beta10 adds a new F10 hotkey function (new hidden feature).
If you press F10 in a grubfm menu, then it will completely reload grub2.
You may find this useful if you run an ISO or some other payload file and grubfm loses the gfxmenu system and just displays a black-and-white text menu. If you then press F10 then the whole agFM boot file will be reloaded thus saving you having to reboot. Since some servers can take 5 minutes to reboot, you might find this useful.
The actual code is compiled within agFM (in global.sh), but if you are interested, you can add a menuentry to your own menu system as shown below:
Please test latest version 1.66 Beta7 as I hope to make it the new release version in a day or so.
See OneDrive - Latest Betas folder for the download.
Please don't just wait for it to be released before trying it. It is easy to test it by simply extracting the files to the 2nd partition. If you want to go back to the old v1.65 then simply click on \e2b\Update agFM\Download and update agFM_v2.cmd.
Todays version in 'Latest Betas' will automatically download and add 'Ventoy for Easy2boot' when you double-click the \e2b\Update agFM\Update_to_latest_Ventoy_version.cmd file.
The current version is Ventoy v1.0.29 but is slightly modified to run on E2B.
See the Ventoy page on the E2B site for details and a suggested ventoy.json file...
If you often need to gain access to a customers Windows account (local or online account) or MAC OS account but don't know the account password, then Kon-Boot is the quickest and simplest way to gain access (MBR or UEFI).
Today you can get 25% off KonBoot by using this link,
Kon-Boot can now work on larger USB drives as well as small USB Flash drives, so you can install Kon-Boot onto any USB drive and then add E2B to the same drive. More details here.
P.S. Black Friday Samsung 860 500GB SSD #ad on offer at Amazon for 47% off (over 60% off 2TB version!). If your laptop does not have an SSD hard drive, this will be the best saving you've ever made as you won't have to buy a new laptop for another few years at least! Why not give them as Christmas present and help your family upgrade their own laptops over the Christmas holidays?
Hurry! 128GB SanDisk Extreme Pro (#ad) USB 3 Flash drive for only £30 !!! One of the fastest flash drives you can get - ideal for E2B!
Note: This is the superfast PRO version, not the slow, budget GO version (which is not recommended!).
I do not intend to continually patch and recompile Ventoy every few days so that it can be added to E2B, however if you want to know how I made my own version, I have written up some notes here.
My knowledge of C is limited and I am not very experienced with Linux, so please correct me if any of the instructions are wrong or maybe inaccurate!
I have also slightly modified the wallpaper in my new version of Ventoy_1.0.29_windows.zip now to make it obvious that it is not the official Ventoy version - can you tell?
Drag-and-drop the zip file onto the \e2b\Update e2b\Add_Ventoy.cmd file.
After installing it using that .cmd file, you will need to download the v1.0.29 patched version of core.img from here and overwrite the \ventoy\core.img file with this new version - otherwise MBR-booting will be blocked.
I have not changed its appearance, so please don't report any problems to the Ventoy forum unless you can reproduce the same issue on a genuine Ventoy USB drive!
The MBR version appears to say 'Unofficial Ventoy' but the UEFI version does not display that text message.
This version is temporary and for Beta testing only. I do not intend to maintain a forked version of Ventoy for E2B.
LongPanda (the developer of Ventoy) has changed Ventoy so that it will only work on MBR-partitioned disks if that disk was prepared using the official Ventoy tools. The second partition must be exactly 65536 sectors long now.
Recently, I received some special error reports, which finally proved to be the cause of the non-standard Ventoy environment. Especially use Ventoy in a single partition environment. Although Ventoy displays Unofficial's label information, users will not care and will still think it is a Ventoy problem.
Ventoy has been an overall design from the beginning, and has not considered integration into other bootloader or partition environments.
Ventoy's verification and subsequent development of new features will not consider this non-standard usage.
Therefore, I decided to prohibit the use of Ventoy in a non-standard environment and no longer accept requests for deregulation.
Of course, this is just the default behavior of Ventoy. Ventoy is still 100% open source. If you want to apply Ventoy in your own environment, you can fork a branch and modify the source code implementation.
This means that v1.0.28 (and all future versions?) will not run from an E2B drive.
If you would like to be able to continue to add Ventoy to E2B, please feel free to contact LongPanda and request that he changes his mind!
For now you need to use 1.0.27 (see here for details).
For the changes in Ventoy which check the partitions for validity - see the new code here (starting line 509).
If you wish, you can run the newer versions of Ventoy using MBR-booting only by using an older version of core.img, however UEFI-booting to Ventoy will still be blocked.
Footnote (2021): I have now recompiled Ventoy as 'Ventoy for Easy2Boot' with the restrictive code removed. Also, you can easily convert an E2B USB drive into an official Ventoy USB drive (original unmodified Ventoy) by making three different image files of 'official' Ventoy from the latest build of Ventoy and 'switching' one of them into Partition 2 (uses Ventoy grub2 boot code too).
The old v2.06 Make_E2B_USB_Drive.cmd had a typo in the URL to get the LatestVersion.txt file from the server. This caused a 3-5 second delay and the latest version was not displayed. v2.06A fixes this issue. Since it is a minor issue, this version is still called 2.06.
MAKE_E2B_USB_DRIVE should now be v4.40 in E2B 2.06A.
Well, the UK is in Covid Lockdown for a month so I am reading lots of autobiographies which I buy second-hand from Amazon. I am interested in reading about the life of entrepreneurs (e.g. some of the stars in 'Dragons Den', Alan Sugar, etc.), scientists (e.g. Richard Feynman) and engineers (e.g. 'Woz') - amongst many others.
If I had my way, all high-schools should have these types of books on the English Lit. curriculum. They are so inspiring and are much more valuable to any young person than 'Catcher in the Rye' or Shakespeare ever could be. They teach you about real life, proper work ethics and how to take calculated chances when necessary. If you know anyone who is stuck in a 9-5 job and is always moaning about it - then why not give them a good autobiography for Xmas!
It has always been my philosophy in life to do my very best in any job I find myself in. I can remember working as a fruit picker at the age of 16 one summer (piecework!) and cycling 3 miles to the orchards at 6.30am each morning, working all day and cycling home completely exhausted at 6 pm, so tired I could hardly move - BUT I picked just as many apples\pears\plums as the 'professional' itinerant workers did and after a few weeks I was promoted to a group 'supervisor'.
I was talking to a young boy the other day and he was complaining about having to do very menial tasks around the office where he had just started a temporary job. He had the attitude that it was beneath him - he was not doing a very thorough job and so was getting moaned at by his boss. I pointed out that if HE was an employer and he had one employee like him and another employee that always did the same job perfectly (or even improved on the end result), which one would he pick to promote? Why would he promote someone who could not even do simple tasks well? Equally, if one of his staff constantly showed that they had good organisational skills, clever ideas, always on time, polite, well presented, worked late and never complained - wouldn't he feel that he had to promote them or else risk losing a valuable asset?
At the moment, I am half-way through Richard Branson's very large autobiography 'Losing my virginity' (#Amazon ad link) and am very much enjoying it, having lived through those times (the late 60s onwards) as a teenager/young man. The person who said 'If you can remember the ’60s, you really weren’t there' was probably right - especially if you were a student! I am certainly surprised Richard Branson can remember it all after reading about his recreational experiences in the book (or perhaps he made a few of the things up just to fill in the gaps!).
Richard Branson was apparently hopeless at school and severely dyslexic (especially with maths). He hardly had two O-levels to rub together but he worked hard, told lots of (small) lies to get started in business, took calculated risks and looked after his staff as best he could.
I am just at the part in his autobiography where Branson states that the initial instrument list that Mike Oldfield requested for recording his album (now known as 'Tubular Bells'), actually included tubular bells. However, in the YT video (below), Mike Oldfield implies that their inclusion was serendipitous - he happened to see them being removed from Virgin's Manor recording studio by the previous band and spontaneously asked for them to be taken back inside because he could probably make use of them.. but maybe your take is different...
Our USA cousins may only recognise Tubular Bells as the music that was in 'The Exorcist', but in my day you had to immediately go out and buy the Tubular Bells LP within a week of it's release or you just weren't cool! Every teenager had the Tubular Bells LP cover in his bedroom.
Of course, after watching this YT video, it has now prompted me to listen to the whole Tubular Bells LP again - and it's still great!
P.S. If you can recommend any good autobiographies - please let me know.
Update Add_Ventoy.cmd, MAKE_E2B_USB_DRIVE.cmd, UPDATE_E2B_DRIVE.cmd (if more than one E2B drive is connected, the agFM files could be added to the wrong drive partition 2). Change download URLs.
Update UtilMan password .cmd files to also change magnify.exe and use new account name of ADMIN9.
Update Add_Ventoy.cmd to warn if core.img is not present.
Arfan noticed that the F3 Boot Menu was not working properly in agFM v1.64. Please use the latest v1.65 to fix it. You can update by running the update agFM .cmd file in the \e2b folder on partition 2 as usual.
In a recent E2B chat session, a user wanted to use an E2B USB drive to contain lots of special disk images. These images contained multiple partitions. Some of these images used multiple GPT partitions. For instance multiple Mac OS X installers, full multiple-partition Windows To Go with BitLocker, full Linux OS with swap and encrypted data partitions.etc.
Unfortunately, such a scenario is not feasible when using Easy2Boot (at least not easily!) - however, the user did own an IODD DVD emulator, so I suggested using it's VHD feature.
He did not realise that it could be used in this way!
The IODD Mini
The IODD Mini #ad SSD CD\DVD drive emulator is a solid-state version of the IODD 2531 and 2541 (see previous blog article here).
You can see from the picture below that it is approx 9cm x 4cm in size and will easily fit in a pocket.
As you may know, these Zalman and IODD 'DVD' emulators can load ISO files and then the USB device will appear as a USB DVD drive.
They can also load a VHD file and then it will appear to a computer as a 'USB disk' - so you can boot to a VHD containing a fully install Windows OS.
However, he did not realise that you could simply create an 'empty' VHD and then select that on his IODD device - thus the USB drive will appear as an unformatted USB drive.
He can then partition and format it as he wishes, install an OS to the USB 'drive', etc.
Thus it is possible for his IODD to contain multiple disk images of different multiple-partition Windows OS's, Linux OS's with swap partitions, Mac OS X, Mac Installer, Hackintosh Installers, DOS Flash images, etc. and they can be MBR or GPT partitions.
He can even mount more than one VHD as a disk device, so the second VHD could contain common programs, drivers, data, etc. which he can easily access after booting from the first VHD. You can even boot from one VHD and install to another VHD.
The IODD Mini VHD file can be configured to appear as a Removable 'Flash' drive or a 'Fixed Disk' HDD - just use either a .RMD extension or a .VHD file extension. If required, you can also write-protect the virtual disk too.
In case you missed it, today is the last day of the Amazon Prime sale.
If you read my earlier blog posts, you will know that I have recently subscribed to Readly and cancelled all my paper magazine subscriptions. Yesterday, I noticed that the Amazon Fire HD's are now on sale with massive reductions, so I just received my new Fire HD 10 (#ad) this morning - installed Google Play and Chrome - and logged into Readly.com. Wow! Very nice display and it works as an Amazon Echo Show too - bargain!.
agFM v1.63 just has a very small change to the \boot\grubfm\SAMPLE_startup_menu.txt example menu file. The small change will cause all .pf2 font files that are present in your theme folder to be automatically loaded.
#SET STYLE (change section below if required) #mymenu=0 standard agFM theme #mymenu=1 using $mytheme as theme (rename folder \boot\grubfm\themes\sample_slack to slack) NO SPACES - DO NOT USE sample_slack folder as it will be changed on update #mymenu=2 User wallpaper, no theme (change USER MENU CONFIG section below) #mymenu=3 Text mode - most compatible and quickest - use if keyboard issues (English only) - see section 3 below set mymenu=0 #if mymenu=1 then mytheme specifies the theme folder to be used set mytheme="slack"
######## MYMENU=1 - USERS GRUB2 THEME ######## if [ "${mymenu}" = "1" ] ; then # Load fonts - if your theme uses special fonts (not unicode) this loads ALL font files # The .pf2 font files should be inside the theme folder for font in (${user})/boot/grubfm/themes/${mytheme}/*.pf2; do loadfont ${font} ; done # You can use the lsfonts command to list the currently loaded fonts
# Rename \boot\grubfm\themes\sample_slack folder to slack then edit background.png to add your own wallpaper # uncomment 'menu_pixmap_style' in each .txt file to add a grey box behind the menu text export theme_std="(${user})/boot/grubfm/themes/${mytheme}/theme.txt"; export theme_fm="(${user})/boot/grubfm/themes/${mytheme}/fm.txt"; export theme_info="(${user})/boot/grubfm/themes/${mytheme}/info.txt"; export theme_help="(${user})/boot/grubfm/themes/${mytheme}/help.txt"; export theme=$theme_std # themes must not contain spaces if ! [ -f "$theme" ] ; then echo "ERROR: Can't find $theme" ; read ; fi fi ####################################
This means that if you use your own grub2 theme and it contains .pf2 font files, then they will be automatically loaded.