I have added an Easy2Boot mnu list (as a zip file) to the Easy2Boot Tutorial #72.
Note that I have tested persistence more, it seems to corrupt the casper-rw file (at least using my USB 3.0 Verbatim 16GB stick, booting on an Asus EeePC 904HA)
Posted 22 January 2013 - 08:40 PM
I have added an Easy2Boot mnu list (as a zip file) to the Easy2Boot Tutorial #72.
Note that I have tested persistence more, it seems to corrupt the casper-rw file (at least using my USB 3.0 Verbatim 16GB stick, booting on an Asus EeePC 904HA)
Posted 22 January 2013 - 11:05 PM
Hi Steve
Excellent tutorial, thank you. The persistence issue is fixed on both the 32 and 64 bit editions, but apparently only for changes of zero size. If you try to update the distribution packages you get a "no space left on device" error, specifically:
"unable to make backup link of ´./usr/share/perl/5.14.2/pod/packages.pod´ before installing new version: no space left on device"
I gather that might be an issue related to the static ISO file, which it can´t modify, possibly needing symbolic links to the ISO directory from the casper-rw, but only a guess. Although the ideal would be to have on the USB an updatable distribution, your solution at least helps with modifying some files, like wi-fi configuration, etc., which is useful. If you can think of a way to fix the "no space on the device issue", it would be icing on the cake.
Another issue I noticed is that the PC´s partitions and the USB drive are visible but can´t be mounted; only the Linux Mint file system is mounted. No idea why that would be, as that worked fine with Proteus.
Here is another, question, if you have an easy solution, as I wasted enough of your time already: can the Hiren´s CD method you described on tutorial 36 (i.e. decompressing the CD to a HBCD directory, etc) be done with permanence, to allow installing & uninstalling programs without the HBCD Configurator utility, for which there are absolutely no helpful tutorials on the web?
As far as your question on the Symantec disc, on QEMU after loading the windows files you get a BSOD, maybe because the CD was for a 64 bit PC and QEMU does not support that. On the laptop the error was 0xc0000017, that "changes have been made to your system, bla bla bla, please install the installation disc to repair", which should have been a clue...
Cheers and good health,
Posted 22 January 2013 - 11:14 PM
Hi again
Just saw your latest post. Yes, something is rotten in the state of Denmark with the persistance issue, I noticed it too. After the first reboot, you get a series of "node deletion errors" on all subsequent reboots or shutdowns. On the last test run I made before giving you these updates, it also had a problem mounting the /tmp directory and crashed.
OK, so maybe not quite there yet, but it does seem close.
Posted 23 January 2013 - 12:18 AM
If you extract the files from the ISO and do a flat file boot (see ammended tutorial) - then persistence works!
May be an issue with linux unmounting the USB volume (as it is not the boot volume cos 0xff was the boot volume?) before it has finished updating the ext2 file and therefore getting corruption???
Posted 23 January 2013 - 03:21 PM
Good afternoon, Steve
I tested your latest update and it does fix the corrupt casper-rw issue, congratulations. The issue of upgradability remains, as the system still reports "no space left on the device" when trying to upgrade the packages, but that might not be fixable and maybe the same problem with making Hiren´s CD work with permanence. I´ll check periodically to see if you come up with a solution, as you seem to know this stuff very well. For now, I might just do a real install of Linux Mint on an USB, pending a more elegant solution from you, and the easy2boot system is surely elegant.
Until then, I wish you the best and hope to hear from you soon.
George
Posted 23 January 2013 - 03:26 PM
OK - you could always try Tut 22...?
Posted 23 January 2013 - 07:34 PM
Steve, Tutorial 22 might be just what I was looking for except for the permanence. I did a test run and no lack of space errors when updating...and was lightening fast! But, the menu.lst file as given in the tutorial does not give you permanence. So, after a successful update of Mint, with the subsequent reboot it reverts to the base "out of the box" ISO system. Any thoughts on what to add to the Menu.lst file to get permanence?
The only change I made to the menu.lst file is in bold below
title LinuxMint 14 LiveCD\n * Booting mapped ISO file from an "ISO partition" *
map --unhook
map --unmap=0:0xff
find --set-root --ignore-floppies /casper/filesystem.squashfs
map --heads=0 --sectors-per-track=0 ()+1 (0xff)
map --hook
chainloader (0xff)
Man, we are getting so close I can almost taste it!
Posted 23 January 2013 - 07:50 PM
Try replacing the last line with
set P=persistent persistent-path=/mint/mint64 kernel /casper/vmlinuz file=/cdrom/preseed/mint.seed boot=casper %P% quiet splash -- initrd /casper/initrd.lz
edit the persistent-path as required.
The only thing is that it may expect to find the mint64 ext2 file within the boot volume (which is inside the iso ptn!).
You could try pathing it - e.g. =/dev/sdb1/mint/mint64 ????? Assuming that the USB disk will be sdb when Mint boots.
Posted 24 January 2013 - 12:35 AM
Good evening, Steve
Well, the addition you suggest didn´t work. I tried both the persistence-path=/ and the =/dev/sdb2/ options, omitting the/mint/mint64 part as the RMPrepUSB "file to USB" created file structure didn´t have those directories. Still no persistence of any sort.
Thinking that I might be crawling up the wrong tree, as the type of persistence I am looking for would need the filesystem.squashfs file to decompress, delete the old packages, incorporate the new updated packages and recompress itself to make the updates permanent, which is likely not possible via any grub code, I then tried a modification on Tutorial 22, doing a real installation into the second partition instead of a “file to USB” extraction of the ISO, and this worked great, with complete permanence. BUT, the installation overwrites the boot sector and subsequently partition 1 can only be used for storage and not as a Grub4DOS partition. Not good.
I then tried reinstalling Grub4DOS with RMPrepUSB on the first partition, which of course writes over the Mint install boot info, thinking I might reference that second partition with the same Menu.lst of Tutorial 22. Wrong. Didn´t work that way. You get a lengthy message about wrong number of sectors found and expected, that it can´t find /dev/sdb2, and the boot fails. Any thoughts on what Menu.lst code would find the second partition correctly and boot the installation inside the partition?
Starting to feel like Don Quijote here, chasing dreams...
Edited by george.loureiro, 24 January 2013 - 12:37 AM.
Posted 24 January 2013 - 02:13 AM
For you to have a fully updateable OS rather than a live cd with persistence, you need to fully install it to a partition.
From the grub4dos console, can you try
ls (hd0,1)/
If there is a bootloader installed on the PBR, maybe you can boot it using
root (hd0,1) || rootnoverify (hd0,1)
chainloader ()+1
If not, look for boot files on the hd0,1 partition - what bootloader does it use (grub, isolinux)???
Maybe you can chainload to that
e.g.
chainloader (hd0,1)/boot/isolinux/isolinux.bin
Posted 26 January 2013 - 12:42 PM
Hi Steve
I tried the below and it boots to a grub prompt, where it stops.
root (hd0,1) || rootnoverify (hd0,1)
chainloader ()+1
I am trying the other suggestion (i.e. chainloader (hd0,1)/boot/isolinux/isolinux.bin) but I don know what grub file to reference. There is a grub folder under the boot directory and there is also a "grub.d" folder under the etc directory. Any thoughts on how to get this to boot?
George
Posted 26 January 2013 - 12:52 PM
Can you list the files in the boot\grub folder - any end in .lst or .cfg ? What is in them?
Posted 26 January 2013 - 04:45 PM
here is the content of the cfg:
#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#
### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; then
set have_grubenv=true
load_env
fi
set default="0"
if [ x"${feature_menuentry_id}" = xy ]; then
menuentry_id_option="--id"
else
menuentry_id_option=""
fi
export menuentry_id_option
if [ "${prev_saved_entry}" ]; then
set saved_entry="${prev_saved_entry}"
save_env saved_entry
set prev_saved_entry=
save_env prev_saved_entry
set boot_once=true
fi
function savedefault {
if [ -z "${boot_once}" ]; then
saved_entry="${chosen}"
save_env saved_entry
fi
}
function recordfail {
set recordfail=1
if [ -n "${have_grubenv}" ]; then if [ -z "${boot_once}" ]; then save_env recordfail; fi; fi
}
function load_video {
if [ x$feature_all_video_module = xy ]; then
insmod all_video
else
insmod efi_gop
insmod efi_uga
insmod ieee1275_fb
insmod vbe
insmod vga
insmod video_bochs
insmod video_cirrus
fi
}
if [ x$feature_default_font_path = xy ] ; then
font=unicode
else
insmod part_msdos
insmod ext2
set root='hd1,msdos5'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd1,msdos5 --hint-efi=hd1,msdos5 --hint-baremetal=ahci1,msdos5 b92ca6c8-ff91-4c8b-8617-9cf6bd874dd5
else
search --no-floppy --fs-uuid --set=root b92ca6c8-ff91-4c8b-8617-9cf6bd874dd5
fi
font="/usr/share/grub/unicode.pf2"
fi
if loadfont $font ; then
set gfxmode=auto
load_video
insmod gfxterm
set locale_dir=$prefix/locale
set lang=en_US
insmod gettext
fi
terminal_output gfxterm
if [ "${recordfail}" = 1 ]; then
set timeout=-1
else
set timeout=10
fi
### END /etc/grub.d/00_header ###
### BEGIN /etc/grub.d/05_debian_theme ###
set menu_color_normal=white/black
set menu_color_highlight=black/light-gray
### END /etc/grub.d/05_debian_theme ###
### BEGIN /etc/grub.d/06_mint_theme ###
set menu_color_normal=white/black
set menu_color_highlight=white/light-gray
### END /etc/grub.d/06_mint_theme ###
### BEGIN /etc/grub.d/10_linux ###
function gfxmode {
set gfxpayload="$1"
if [ "$1" = "keep" ]; then
set vt_handoff=vt.handoff=7
else
set vt_handoff=
fi
}
if [ ${recordfail} != 1 ]; then
if [ -e ${prefix}/gfxblacklist.txt ]; then
if hwmatch ${prefix}/gfxblacklist.txt 3; then
if [ ${match} = 0 ]; then
set linux_gfx_mode=keep
else
set linux_gfx_mode=text
fi
else
set linux_gfx_mode=text
fi
else
set linux_gfx_mode=keep
fi
else
set linux_gfx_mode=text
fi
export linux_gfx_mode
if [ "$linux_gfx_mode" != "text" ]; then load_video; fi
menuentry 'Linux Mint 14 Cinnamon 64-bit, 3.5.0-17-generic (/dev/sdb5)' --class linuxmint --class gnu-linux --class gnu --class os {
recordfail
gfxmode $linux_gfx_mode
insmod gzio
insmod part_msdos
insmod ext2
set root='hd1,msdos5'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd1,msdos5 --hint-efi=hd1,msdos5 --hint-baremetal=ahci1,msdos5 b92ca6c8-ff91-4c8b-8617-9cf6bd874dd5
else
search --no-floppy --fs-uuid --set=root b92ca6c8-ff91-4c8b-8617-9cf6bd874dd5
fi
linux /boot/vmlinuz-3.5.0-17-generic root=UUID=b92ca6c8-ff91-4c8b-8617-9cf6bd874dd5 ro quiet splash $vt_handoff
initrd /boot/initrd.img-3.5.0-17-generic
}
menuentry 'Linux Mint 14 Cinnamon 64-bit, 3.5.0-17-generic (/dev/sdb5) -- recovery mode' --class linuxmint --class gnu-linux --class gnu --class os {
recordfail
insmod gzio
insmod part_msdos
insmod ext2
set root='hd1,msdos5'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd1,msdos5 --hint-efi=hd1,msdos5 --hint-baremetal=ahci1,msdos5 b92ca6c8-ff91-4c8b-8617-9cf6bd874dd5
else
search --no-floppy --fs-uuid --set=root b92ca6c8-ff91-4c8b-8617-9cf6bd874dd5
fi
echo 'Loading Linux 3.5.0-17-generic ...'
linux /boot/vmlinuz-3.5.0-17-generic root=UUID=b92ca6c8-ff91-4c8b-8617-9cf6bd874dd5 ro recovery nomodeset
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-3.5.0-17-generic
}
### END /etc/grub.d/10_linux ###
### BEGIN /etc/grub.d/10_lupin ###
### END /etc/grub.d/10_lupin ###
### BEGIN /etc/grub.d/20_linux_xen ###
### END /etc/grub.d/20_linux_xen ###
### BEGIN /etc/grub.d/20_memtest86+ ###
menuentry "Memory test (memtest86+)" {
insmod part_msdos
insmod ext2
set root='hd1,msdos5'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd1,msdos5 --hint-efi=hd1,msdos5 --hint-baremetal=ahci1,msdos5 b92ca6c8-ff91-4c8b-8617-9cf6bd874dd5
else
search --no-floppy --fs-uuid --set=root b92ca6c8-ff91-4c8b-8617-9cf6bd874dd5
fi
linux16 /boot/memtest86+.bin
}
menuentry "Memory test (memtest86+, serial console 115200)" {
insmod part_msdos
insmod ext2
set root='hd1,msdos5'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd1,msdos5 --hint-efi=hd1,msdos5 --hint-baremetal=ahci1,msdos5 b92ca6c8-ff91-4c8b-8617-9cf6bd874dd5
else
search --no-floppy --fs-uuid --set=root b92ca6c8-ff91-4c8b-8617-9cf6bd874dd5
fi
linux16 /boot/memtest86+.bin console=ttyS0,115200n8
}
### END /etc/grub.d/20_memtest86+ ###
### BEGIN /etc/grub.d/30_os-prober ###
menuentry 'Windows 7 (loader) (on /dev/sda1)' --class windows --class os $menuentry_id_option 'osprober-chain-0618630E3BEB00F2' {
insmod part_msdos
insmod ntfs
set root='hd0,msdos1'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 0618630E3BEB00F2
else
search --no-floppy --fs-uuid --set=root 0618630E3BEB00F2
fi
chainloader +1
}
### END /etc/grub.d/30_os-prober ###
### BEGIN /etc/grub.d/30_uefi-firmware ###
### END /etc/grub.d/30_uefi-firmware ###
### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###
### BEGIN /etc/grub.d/41_custom ###
if [ -f ${config_directory}/custom.cfg ]; then
source ${config_directory}/custom.cfg
elif [ -z "${config_directory}" -a -f $prefix/custom.cfg ]; then
source $prefix/custom.cfg;
fi
### END /etc/grub.d/41_custom ###
Posted 19 February 2013 - 12:06 AM
Complete newbie to mutiboot; know almost nothing about Linux. Think Easy2Boot was targeted for folks just like me. Was pretty easy to follow tutorial and ceate an Easy2Boot flashdrive with 4 tools. Only feedback that I might offer is that now since many ISOs seem to be AutoLinux and don't need a mnu, it would have been less confusing for me if the AutoLinux section of Part I had been shown before the YImf example. Spent a lot of time looking for mnus that weren't needed.
Now I'd like to add a Windows 7 64-bit Repair disk ISO, but don't know where to put it, if it needs a mnu, or even if it's possible.
Diane
Posted 19 February 2013 - 12:33 AM
Follow the tutorial 43 using a different flash drive until you have it working how you want. Note that it uses \menu.lst.
When you have it working, copy \menu.lst to your Easy2Boot flash drive and rename it Windows.lst and put it in the \grub folder.
Edit the \grub\USER.mnu and add this text to the bottom
title Load Windows menu configfile /grub/Windows.lst
Now copy all the files from your Windows flash drive to the Easy2Boot flash drive.
Note that Tutorial 43 tells you to put the Windows ISOs in \ISO (not \_ISO).
Thanks for the feedback on the tutorial.
Posted 11 March 2013 - 12:09 AM
I had a "Boot to first HD" on my home brew USB multiboot stick that I easily converted for use with Easy2Boot. I mainly use it when using KONBOOT to boot to the Windows installtion after running it. No .ISO file is needed, just this .MNU file.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~`
:: Easy2Boot .mnu file for booting to first HD
:: See Tutorial #72 at www.rmprepusb.com for details
:: No actual .ISO file is needed, just this .mnu file
:: FirstHD.mnu (\_ISO\Utility\FirstHD.mnu)
iftitle [if exist %MFOLDER%/Utility/FirstHD.mnu] Boot to first HD\nBoot to the first HD
map (hd0) (hd1)
map (hd1) (hd0)
map --hook
chainloader (hd0)+1
rootnoverify (hd0)
Posted 11 March 2013 - 03:03 PM
I have revamped Easy2Boot - This version is a BETA and has not been fully tested.
Once made (install onto fresh USB FLASH drive and then install grub4dos using latest RMPrepUSB), the following Optional files can be added:
In addition, if you have clonezilla, acronis rescue, Kasperksy, UBCD etc. ISO files - just copy these and any other LiveCD ISOs you fancy into the \_ISO\AUTOISO folder.
Make sure to run WinContig to make the ISOs contiguous (use RMPrepUSB - Ctrl+F2).
Feedback welcome - I have not tested
Posted 11 March 2013 - 08:16 PM
I have revamped Easy2Boot - This version is a BETA and has not been fully tested.
Again, I really appreciate the effort you are making on this. It is one sweet tool I hope I'm not offending with my requests.
I really like the AUTO (now AUTOISO) folder moved up a level it seems much more logical there.
The menu seems to be a bit confusing now with all the Windows install stuff packed on it. I think the Windows installation menus should be a SUBmenu off the first and not have all it's entries on the first menu. I use my USB drives mainly to boot to a Windows PE or Linux distro or run a util, to install Windows from it would be a distant third use for me and perhaps a lot of other users. It's interesting but they all should hide in a submenu names Windows Installation with the "old" Easy2Boot as the primary menu.
While I'm making suggestions, perhaps a new sub folder in the _ISO folder named TOP where everything in it would appear on the main Easy2Boot menu and all else would appear in a submenus below it, e.g. Linux under a Linux menu, FREEDOS under a FREEDOS submenu, Utilities under a UTILITY sub, etc.. The same way the AUTO menu appears as a submenu. I find myself booting to Windows PE about 90% of the time so to have it appear on the first menu would be helpful. I do it now by putting the ISO and MNU file for it in the FREEDOS folder which puts it's stuff first.
Glad to see the inclusion of my FirstHDD.mnu file, I am happy to contribute even in this tiny way.
Posted 11 March 2013 - 08:29 PM
OK, thanks for feedback. I will take it onboard.
I put XP in main menu because you need to boot to it twice and go through the menus twice - it would now be even further away with another menu to go through.
I will think about it some more....
Posted 12 March 2013 - 11:49 PM
New version here
The main problem with the first menu (actually most menus) is that the order of the menu items depends on the order that the files were copied to the USB drive.
This is very difficult to change!
If you really want to define the order of entries in the first main menu, you will have to hard code them into the \grub\main.mnu file.
Posted 13 March 2013 - 12:03 AM
New version here
The main problem with the first menu (actually most menus) is that the order of the menu items depends on the order that the files were copied to the USB drive.
This is very difficult to change!
If you really want to define the order of entries in the first main menu, you will have to hard code them into the \grub\main.mnu file.
Am I missing something? I can't find the link to the new version.
Posted 13 March 2013 - 01:42 AM
Now we're cooking! I think it's great with the option to put stuff on the main menu.
Only a few suggestions (you're eventually going to hate me!)
Maybe clean up a few things:
* Put the AUTOISO back under the _ISO folder
* Put the MAINMENU under the GRUB folder
* If possible put the firadisk and winvblock under one folder, like maybe named Util.
* Is it possible to put the ISO that we want on the MAINMENU to the TOP above the other stuff?
* Add one more entry under the reboot entry on the main menu - HALT
* Is there some sort of variable that can be used inside the .MNU files that we create that can return the name of the .MNU file itself?
That way it can be used instead of keep repeating the .ISO name? Similar ISO's with similar needs in a .MNU file could just be done
by simply copying one.MNU file and renameing it to the same as the .ISO and viola! You're done, no need to even edit it.
Again, thanks for the cool work. This is really cool. I've showed one person already and he was VERY impressed.
Edited by Rootman, 13 March 2013 - 01:44 AM.
Posted 13 March 2013 - 01:56 AM
* Put the AUTOISO back under the _ISO folder
the reason it is taken out of _ISO is so that the batch file for easy2boot does not have to search that menu - this takes time and is inefficient
* Put the MAINMENU under the GRUB folder
why? isn't it more obvious under the root?
* If possible put the firadisk and winvblock under one folder, like maybe named Util.
Best kept separate as one is for XP and the other for Vista+ - if I update other tutorials I want to keep it easy to update this one too and so keep same structure or could lead to mistakes and/or much extra editing each time they are updated.
* Is it possible to put the ISO that we want on the MAINMENU to the TOP above the other stuff?
yes - I can swap them over
* Add one more entry under the reboot entry on the main menu - HALT
I will add it in - why is it useful to hang the system rather than ctrl-alt-del or switch off?
* Is there some sort of variable that can be used inside the .MNU files that we create that can return the name of the .MNU file itself?
That way it can be used instead of keep repeating the .ISO name? Similar ISO's with similar needs in a .MNU file could just be done
by simply copying one.MNU file and renameing it to the same as the .ISO and viola! You're done, no need to even edit it.
I don't understand what you mean? The name of the mnu file can be anything (e.g. fred.mnu) it has no correlation with the payload file.
You don't need mnu files for most ISOs anyway???? Can you explain more what you mean...
Off for zzzzzzz.. now so will catch up in 8hrs!
0 members, 2 guests, 0 anonymous users