How can I boot an iso with grub4dos?

Using applications, configuring, problems
Message
Author
nooby
Posts: 10369
Joined: Sun 29 Jun 2008, 19:05
Location: SwedenEurope

#46 Post by nooby »

rcrsn51 wrote:Although the instructions here are for USB drives, they should also work with a hard drive partition, provided that it is contiguous. So you would need a clean FAT32 partition, then copy the ISO's into it.

However, this method will not work with Puppy ISO's.
You know such things much better than me so
that is why I am skeptical to if it help the OP at all.

Maybe a new thread will better so many more can find out about
what Easy2Boot really can do. I would want to boot a lot of isos
that now only boot from ext2 and using grub2 so if that could be done
using E2B that would be cool.

Have you really booed Puppy on NTFS using only iso
and using the E2B and on the internal HT What code?
I use Google Search on Puppy Forum
not an ideal solution though

User avatar
rcrsn51
Posts: 13096
Joined: Tue 05 Sep 2006, 13:50
Location: Stratford, Ontario

#47 Post by rcrsn51 »

nooby wrote:
rcrsn51 wrote:Although the instructions here are for USB drives, they should also work with a hard drive partition, provided that it is contiguous. So you would need a clean FAT32 partition, then copy the ISO's into it.

However, this method will not work with Puppy ISO's.
Since I made that statement last week, there have been some new developments regarding booting Puppy off ISOs. So I have updated this.

But my procedures still do not work with NTFS.

nooby
Posts: 10369
Joined: Sun 29 Jun 2008, 19:05
Location: SwedenEurope

#48 Post by nooby »

thanks I got into this dreaded Error 60 the file need to be
contiguous and I have no wine so does not puppy has
some program or a trick that can make a file contiguous
on fat32 if one move it to and fro or something?
I use Google Search on Puppy Forum
not an ideal solution though

User avatar
rcrsn51
Posts: 13096
Joined: Tue 05 Sep 2006, 13:50
Location: Stratford, Ontario

#49 Post by rcrsn51 »

@nooby: I tested ISObooter from here on a fresh NTFS-formatted flash drive and it worked with both Slacko and Xubuntu. So it should work on a hard drive, assuming that there are no issues with discontiguity..

If you want to look more at this, please post a message here.
Last edited by rcrsn51 on Sun 10 Feb 2013, 04:43, edited 1 time in total.

nooby
Posts: 10369
Joined: Sun 29 Jun 2008, 19:05
Location: SwedenEurope

#50 Post by nooby »

Here is what I remember but I fail to get what Puppyluvr writes

http://www.murga-linux.com/puppy/viewto ... 041#510041

The "Copy to/ Copy back" method does a perfect defrag.
So what am I supposed to do?
I use Google Search on Puppy Forum
not an ideal solution though

der-schutzhund
Posts: 1045
Joined: Mon 26 Nov 2007, 22:07
Location: Blomberg / Germany

#51 Post by der-schutzhund »

Hello to all!
First a brief explanation of "the protection dog":
My hobby is working with dogs. I train dogs for security. Not for the police action but for sporting events!

What about the participation here shows this threat has raised an interesting question: How can be booted Puppyisos of different stores, formats?
Since my English is not really good, I must say that now I'm a little confused about the various solutions, approaches, and options Listing however. Maybe we can create a summary if everything works so far?
For me, it would be important that the iso can be booted even if it was pushed by a modified version! Since I work with have the Lazy sfs be found!

@nooby,

i tested it and it works sometimes!
Actually it is a nice solution but I could not understand why an iso worked sometimes and sometimes not if I copied it again in auto. Even though I previously all isos and put it back in did not copy all ran. It would be important for my application that I write about the same isos sometimes with a modified version! Meanwhile, I have resigned myself that it's probably not possible to boot puppyisos sure if they are overwritten several times with modified versions. Even if that would work would have started the so-Lazy-iso still find LP2_ .. sfs. That did not work even with a different approach since the start of the Isos a new virtual disk has been created in the budget were not the sfs.

regards

Wolfgang

nooby
Posts: 10369
Joined: Sun 29 Jun 2008, 19:05
Location: SwedenEurope

#52 Post by nooby »

Wolfgang,

seems they need the contiguous for to work and when one
load a new version the nit corrupt? That is why people suggest
ext2 or ext3 so it works better. I have gone over to the one that
rcrsn51 do based on the Scooby way to set it up
and if one format it each time one do a change then it seems to work
I use Google Search on Puppy Forum
not an ideal solution though

der-schutzhund
Posts: 1045
Joined: Mon 26 Nov 2007, 22:07
Location: Blomberg / Germany

#53 Post by der-schutzhund »

do you know if Windows programs in wine under ext2 work just as well as under FAT32 or NTFS?
Perhaps you should then not be limited to grub4dos but describe each combination is a safe solution?
It would be important, as I said, iso that can be overridden and sfs be found!
For example, the possible combinations (if it works):
- USB flash drive, Fat32, grub4dos
- USB flash drive, Fat32, Grub2
- USB flash drive, NTFS, grub4dos
- USB flash drive, NTFS, Grub2
- USB flash drive, ext2, grub4dos
- USB flash drive, ext2, Grub2

- HD, FAT32, grub4dos
- HD, FAT32, Grub2
- HD, NTFS, grub4dos
- HD, NTFS, Grub2
- HD, ext2, grub4dos
- HD ext2, Grub2

etc.

regards

Wolfgang

nooby
Posts: 10369
Joined: Sun 29 Jun 2008, 19:05
Location: SwedenEurope

#54 Post by nooby »

Hopefully rcrsn51 and others good at such can help you decide
which combinations works best. I am only a curious user
I know almost nothing sorry.
I use Google Search on Puppy Forum
not an ideal solution though

JMX
Posts: 23
Joined: Mon 29 Dec 2008, 06:06

#55 Post by JMX »

I have successfully used rcrsn51's excellent streamlined procedure to boot iso files on my Asus EEE SDHC card.

Here is how I have been able to boot directly to .iso files on my internal harddrive.

First, no changes were needed to my existing grub4dos installation. (I had previously installed grub4dos by creating a bootable DOS partition with its appropriate config.sys file). This way, nothing is ever written to the MBR.

I then created a folder on partition 2 of my harddrive (sda2) and named it "isos", and then I put all of the desired .iso files into that folder.

Then, for testing, (before running the isobooter script) I simply added this entry to my already existing menu.lst:

title wary-5.4.90 ISObooter
partnew (hd0,3) 0x00 (hd0,1)/isos/wary-5.4.90.iso
map --heads=0 --sectors-per-track=0 (hd0,1)/isos/wary-5.4.90.iso (0xff)
map --hook
root (0xff)
kernel /vmlinuz pmedia=ataflash pfix=fsck
initrd /initrd.gz

It worked. And the creation of the save file on the harddrive worked exactly as expected. By default, the save file goes at the root (or in a folder) on the partition of the device that grub4dos does its initial bootup (in my example, grub4dos is initially booted on sda2 which is (hd0,1)).

I then simply edit the path statements in the isobooter file (which in this example is located at the root of sda2) to create a new accessible file named isomenu.lst to harmonize with my overall mapping.

It is no longer necessary to extract any iso files!

If the bootup harddrive has no more that 3 primary partitions on it, and if the iso files are not fragmented, then the "partnew" feature of grub4dos can do its magic.

cinclus_cinclus
Posts: 68
Joined: Sun 22 Feb 2009, 10:00

possible device-position for being used by "partnew"

#56 Post by cinclus_cinclus »

There are situations were the fourth of the four possible positions for primary partitions is already in use (e.g. after removing a primary partition) - though another one is free for being used by the partnew command .
JMX wrote: ...
First, no changes were needed to my existing grub4dos installation. (I had previously installed grub4dos by creating a bootable DOS partition with its appropriate config.sys file). This way, nothing is ever written to the MBR.

I then created a folder on partition 2 of my harddrive (sda2) and named it "isos", and then I put all of the desired .iso files into that folder.

Then, for testing, (before running the isobooter script) I simply added this entry to my already existing menu.lst:

title wary-5.4.90 ISObooter
partnew (hd0,3) 0x00 (hd0,1)/isos/wary-5.4.90.iso
map --heads=0 --sectors-per-track=0 (hd0,1)/isos/wary-5.4.90.iso (0xff)
map --hook
root (0xff)
kernel /vmlinuz pmedia=ataflash pfix=fsck
initrd /initrd.gz
...
If the bootup harddrive has no more that 3 primary partitions on it, and if the iso files are not fragmented, then the "partnew" feature of grub4dos can do its magic.
"partnew (hd0,3)" implies - as by the requirements of rcrsn51 - that (hd0,3) really is the unused fourth primary partition. But this requirement is only sufficient for using the partnew command. Necessary and sufficient is the requirement that partnew uses any unused primary-device-position!


Example:

Code: Select all

# fdisk -l /dev/sdb
Disk /dev/sdb: 250.1 GB, 250059350016 bytes
255 heads, 63 sectors/track, 30401 cylinders, total 488397168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xa59f6637

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1   *        2048    31455231    15726592    7  HPFS/NTFS/exFAT
/dev/sdb2        31455270    67135634    17840182+   b  W95 FAT32
/dev/sdb4        67153918   488388607   210617345    f  W95 Ext'd (LBA)
/dev/sdb5        67153920    71307263     2076672   82  Linux swap
/dev/sdb6        71309312    92266495    10478592   83  Linux
/dev/sdb7        92268544   113240063    10485760   83  Linux
/dev/sdb8       113256448   134227967    10485760   83  Linux
/dev/sdb9       134230016   174346239    20058112   83  Linux
/dev/sdb10      174353508   199511234    12578863+  83  Linux
/dev/sdb11      199516160   224681983    12582912   83  Linux
/dev/sdb12      224685153   256140359    15727603+  83  Linux
/dev/sdb13      256140423   319050899    31455238+   7  HPFS/NTFS/exFAT
/dev/sdb14      319053824   327442431     4194304   83  Linux
/dev/sdb15      327452958   369382544    20964793+   7  HPFS/NTFS/exFAT
/dev/sdb16      369385472   411328511    20971520   83  Linux
Here (hd1,2) (=/dev/sdb3) would be the only unused position that could be used by partnew.

Comment:
/dev/sdb4 cannot be moved to /dev/sdb3 by the fdisk command: "fix partition order".

User avatar
earl
Posts: 32
Joined: Fri 21 Mar 2008, 00:37
Location: Halifax, Vermont, USA

#57 Post by earl »

Scooby wrote:The principle of this solution is the same as I present in

HOWTO create easy multi-boot USB Puppy from Linux
HOWTO create easy multi-boot USB Puppy from Windows


Observe! This solution requires, as stated in links above, the ISO file to be unfragmented on disk. If you downloaded rmprepusb you got wincontig also.
Go to /Program Files/RMPrepUSB/WINCONTIG and click on wincontig.exe. Then add folder /ISOS and execute a defragment action.
If I remember correctly this can be done with Shift+F2 when RMPrepUSB is started.

I tested around a little. Note I have my Grub4Dos bootrecord on USB and not on HD.
@rcrsn51 and Scooby,

Very elegant, I have been trying to use various methods and isobooter is by far the best. I write this on lighthouse distro, on a USB drive with 20 other distro's... again nicily done!!

Earl

nooby
Posts: 10369
Joined: Sun 29 Jun 2008, 19:05
Location: SwedenEurope

#58 Post by nooby »

I really like Isobooter so I feel grateful
that you worked out how to set it up
and that you shared that with us rsrcn51.

Much appreciated.

Scooby maybe your way is good too
but I where not intelligent enough to get it.

My bad most likely others support you so no big deal.
I use Google Search on Puppy Forum
not an ideal solution though

User avatar
session
Posts: 89
Joined: Mon 07 Feb 2011, 23:11
Location: Valley of the Sun

Booting Debian with Grub4Dos

#59 Post by session »

I'm running a full install of puppy on a hard drive with a single ext2 partition.

Code: Select all

title Precise Puppy 5.7.1 Retro
  uuid 557f5f5b-a96f-4dc3-92e9-1276733a5d23
  kernel /boot/vmlinuz root=/dev/sda1 ro
Using grub4dos, it's easy to try out different puppies frugally:

Code: Select all

title Frugal Puppy
  kernel /frugal/vmlinuz psubdir=frugal pmedia=atahd
  initrd /frugal/initrd.gz
It took trial-and-error, but Ubuntu live-cd variants can be booted with grub4dos similarly:

Code: Select all

title Frugal Ubuntu
  kernel /frugal-ubuntu/vmlinuz boot=casper iso-scan/filename=/frugal-ubuntu/frugal-ubuntu.iso
  initrd /frugal-ubuntu/initrd.lz
...as long as vmlinuz and initrd are extracted from the .iso and correctly pointed to in menu.lst

Debian is different. This is the closest config I've gotten toward successfully starting Linux Mint Debian Edition:

Code: Select all

title Frugal Debian
  kernel /frugal-debian/vmlinuz boot=live findiso=/frugal-debian/frugal-debian.iso
  initrd /frugal-debian/initrd.lz
which results in "unable to open /dev/sda" messages when trying to access the live medium. So the question is... Using grub4dos, can I boot a Debian-based distribution from the hard drive... without needing an extra fat32 partition?
[color=green]Primary[/color] - Intel Pentium 4 2.40GHz, 571MB RAM, ATI Radeon 7000. Linux Mint 17 Qiana installed.
[color=blue]Secondary[/color] - Pentium 3 533MHz, 385MB RAM, ATI Rage 128 Pro ULTRA TF. Precise Puppy 5.7.1 Retro full install.

gcmartin

Can a contiguous ISO be discovered prior to boot?

#60 Post by gcmartin »

"File NOT contiguous" This is a known, possibly "well-known" problem in use of the ISO booting.
... This solution requires, as stated in links above, the ISO file to be unfragmented on disk. If you downloaded rmprepusb you got wincontig also.
Go to /Program Files/RMPrepUSB/WINCONTIG and click on wincontig.exe. Then add folder /ISOS and execute a defragment action.
If I remember correctly this can be done with Shift+F2 when RMPrepUSB is started. ...
This excerpt re-iterates this problem and offers a Windows approach which intends to resolve the contiguous needs of the boot process.

Question
  • Is there a Puppy utility, anywhere, which can "flag" a disjointed ISO file on USB/HDD?
  • Is there an equivalent of "defragment" for ISO folder-files which exist which can reduce the contiguous errs at boot?
  • Can the Windows utiliity mentioned be run in Wine resulting in resolved ISO layouts on disc?
  • Can the Windows utility be reverse engineered for Puppy 'native" use?
  • Is there a Linux way of writing the /ISO folder's contents where all ISO within will be written thru the I/O subsystem with the subsystem properly handling the ISO writes to USB/HDD?
  • Lastly, is any of this documented anywhere?
The idea, here, is whether there is a way to tell if the ISO is properly conditioned prior to any time-eating boot attempts and analysis.

Thanks in advance

User avatar
session
Posts: 89
Joined: Mon 07 Feb 2011, 23:11
Location: Valley of the Sun

#61 Post by session »

I wrote:Using grub4dos, can I boot a Debian-based distribution from the hard drive (extracted from iso or not)...
This will do it, with filesytem.squashfs, initrd.lz, and vmlinuz in the live media path:

Code: Select all

title LMDE extracted
  kernel /frugal-debian/vmlinuz boot=live config live-media-path=/frugal-debian
  initrd /frugal-debian/initrd.lz
...if and only if you also place the hidden .disk folder from the iso to the top level of the hard drive.
[color=green]Primary[/color] - Intel Pentium 4 2.40GHz, 571MB RAM, ATI Radeon 7000. Linux Mint 17 Qiana installed.
[color=blue]Secondary[/color] - Pentium 3 533MHz, 385MB RAM, ATI Rage 128 Pro ULTRA TF. Precise Puppy 5.7.1 Retro full install.

mcewanw
Posts: 3169
Joined: Thu 16 Aug 2007, 10:48
Contact:

frugal install of lubuntu livecd on ntfs hd using grub4dos

#62 Post by mcewanw »

session wrote: It took trial-and-error, but Ubuntu live-cd variants can be booted with grub4dos similarly:

Code: Select all

title Frugal Ubuntu
  kernel /frugal-ubuntu/vmlinuz boot=casper iso-scan/filename=/frugal-ubuntu/frugal-ubuntu.iso
  initrd /frugal-ubuntu/initrd.lz
...as long as vmlinuz and initrd are extracted from the .iso and correctly pointed to in menu.lst
That worked fine, thanks. I have my lubuntu iso on the third partition of my ntfs formatted hd, so successfully using your formula with:

Code: Select all

title Frugal Lubuntu
  kernel (hd0,2)/frugal-ubuntu/vmlinuz boot=casper iso-scan/filename=/frugal-ubuntu/lubuntu-13.10-desktop-i386.iso
  initrd (hd0,2)/frugal-ubuntu/initrd.lz
  boot
I guess the above will work with wattOS too: http://www.planetwatt.com/
github mcewanw

mcewanw
Posts: 3169
Joined: Thu 16 Aug 2007, 10:48
Contact:

Can't get persistence to work with casper-rw file on hd

#63 Post by mcewanw »

I have a problem with above lubuntu iso booting method though: I can't get persistence to work when casper-rw file is stored on an ntfs formatted hard drive partition. If I create the file casper-rw and place it in /dev/sda3 (the ntfs hard drive partition where I have live lubuntu) it doesn't get detected at boot time. i.e. no persistence even though i have the word "persistent" at the end of the menu.lst kernel line. I've tried storing it in /dev/sda1 (which is also ntfs) but not recognised there either.

I do get persistence if I move the casper-rw file onto a usb drive however... But I don't want that - rather, I want persistence when casper-rw file is on same harddrive partition the lubuntu iso is stored. Apparently, casper-rw isn't being recognised at boot time when I store it on the harddrive partition.

Anyone know how to do get the harddrive stored casper-rw recognised so that persistence will work? Really a question for lubuntu forums I suppose, though it otherwise fits this thread and might be relevant to save files generally.

EDIT: Seems that casper-rw has to be on an ext... or fat partition not ntfs so that it is visible during boot according to my interpretation of:

https://help.ubuntu.com/community/LiveCD/Persistence.
The file must be named casper-rw and must be on the root of a partition. This partition can be any type that can be mounted automatically (e.g. vfat or ext3)
That would explain why it worked when I put casper-rw on a usb flash stick...

That is a pity... I want it on the ntfs hard drive...

EDIT: Of course, I could avoid having to copy vmlinuz etc out of the iso by using map commands and so on aka Easy2boot or Isoloader as described here:
http://www.rmprepusb.com/tutorials/72-- ... o-maintain.
http://murga-linux.com/puppy/viewtopic. ... 458#682458.
http://www.murga-linux.com/puppy/viewto ... =122987820.
Actually, I think a similar partnew/map technique might allow casper-rw to be found on hd but I've still to try this using empty partition table entry. I will report back if I ever manage.
Last edited by mcewanw on Sat 21 Dec 2013, 03:06, edited 1 time in total.
github mcewanw

gcmartin

#64 Post by gcmartin »


mcewanw
Posts: 3169
Joined: Thu 16 Aug 2007, 10:48
Contact:

getting casper-rw file recognised on ntfs hd

#65 Post by mcewanw »

gcmartin wrote:Hope this helps
Sorry, I didn't see what that website had to do with iso booting with grub4dos - though I just had a quick glance at it.

I have however elsewhere found the method to use a lubuntu casper-rw file on ntfs, though I haven't tried it yet (too risky till my 2 year old is sleeping; have to use grub4dos partnew command with care because it writes to the partition table). Needs an empty partition table entry to point at the casper-rw file. My netbook has the first three partitions already occupied, all ntfs partitions and Win 7, so I want to make a back up of the boot sector/mbr stuff before trying this:

http://www.rmprepusb.com/tutorials/ubuntu
PLEASE NOTE: Many linux versions (including Ubuntu) will not automatically mount a persistent filesystem if it is a file on an NTFS filesystem (i.e. if your casper-rw is file on an NTFS USB drive then it won't work!)

However, there is a way around this.

First create your casper-rw file as explained in Step 5 - you MUST create the Ext2 file as casper-rw as this also sets the volume name of the filesystem to casper-rw.
Next rename the casper-rw file to a suitable name (e.g. Ubuntu1204-rw) - this step is optional but it avoids any other linux you have trying to use casper-rw - you can thus have many linux ISOs that all try to use 'casper-rw' on the same USB boot drive.
Ensure that the fle is contiguous (run RMPrepUSB - Ctrl+F2 on the drive)
Now add an extra line to the beginning of your grub4dos menu as a line just under the title line, as follows:

partnew (hd0,3) 0x0 //ubuntu1204-rw


IMPORTANT: This will wipe the 4th partition entry of your boot disk! Make sure that the 4th partition table is empty (use RMPrepUSB - Drive Info - 0 to check).
github mcewanw

Post Reply