Puppy Linux Discussion Forum Forum Index Puppy Linux Discussion Forum
Puppy HOME page : puppylinux.com
"THE" alternative forum : puppylinux.info
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

The time now is Sat 25 Oct 2014, 15:58
All times are UTC - 4
 Forum index » House Training » HOWTO ( Solutions )
HOWTO: Multi-Booting between Puppy, DSL and, Windows
Moderators: Flash, Ian, JohnMurga
Post_new_topic   Reply_to_topic View_previous_topic :: View_next_topic
Page 1 of 1 Posts_count  
Author Message
mcewanw

Joined: 16 Aug 2007
Posts: 2346
Location: New Zealand

PostPosted: Thu 16 Aug 2007, 07:00    Post_subject:  HOWTO: Multi-Booting between Puppy, DSL and, Windows
Sub_title: NEW: puppy301 additions. Using grub for dos on FAT32 or NTFS
 

HOWTO: Multi-Booting between Puppy, DSL and, Windows on FAT32 or NTFS using Grub for Dos
[EDIT mar 2009: see also this more recent thread post: http://www.murga-linux.com/puppy/viewtopic.php?p=288485#288485]

NEW: Modified to include manual frugal install of puppy30x (refer to note 15 below, "If you want to multi-boot from different versions of puppy").

Author: William McEwan. Revised 30oct2007.

WARNING: the following method replaces your existing Master Boot Record (MBR) bootloader with the grub_for_dos provided one. USE AT YOUR OWN RISK.

Read EVERYTHING below carefully before trying any of it!

Note that you don't need any version of Microsoft Windows installed for dual-booting between puppy and DSL, but grub for dos can find W98/W2000/WinXP (with a suitably edited menu.lst file) if any of these are also installed (on the same or on different drives and partitions). On one computer this method has been tested on, the underlying filesystem was FAT32, and on a different test computer the underlying filesystem was NTFS. Note that NTFS support is considered experimental under Linux, however, so it is possible there might be problems in that case. (Indeed, ICPUG has since pointed out, in the following post, that a DSL frugal install to NTFS fails during bootup Sad A frugal puppy installation installed to the same NTFS partition as Microsoft Windows, on the other hand, appears to work fine. Alternatively, all three can boot happily from a shared FAT32 partition).

The following steps worked for me:

1. From Puppy livecd, Boot up Puppy to run wholly in ram (i.e. if not the first boot, use boot option: puppy pfix=ram).
2. mount partition /dev/hda1. i.e. do that from the "drives" icon, or enter in a console:
mount -t vfat /dev/hda1 /mnt/hda1
3. Make sure your puppy cd is mounted (or click on the downloaded puppy iso so that that is mounted) and copy the following files to /dev/hda1:
pup_217.sfs; zdrv_217.sfs; vmlinuz; initrd.gz
4. Now umount and eject the puppy cd, insert and mount the DSL install cd, and copy the following two DSL directories from the DSL cd to /dev/hda1: boot and KNOPPIX. Note that you can omit this step if you don't want to dual boot with DSL.
5. Now make a directory called grub4dos for the bootloader files.
i.e. mkdir /mnt/hda1/grub4dos
6. Download Grub for DOS from: http://sarovar.org/projects/grub4dos/
(I used version grub4dos-0.4.3pre2 but version http://downloads.sourceforge.net/grub4dos/grub_for_dos-0.4.2.zip would
probably work too).
7. Extract the downloaded grub_for_dos archived files into the grub4dos directory you made (i.e. uncompress the archive there).
8. Having done the above, copy the program grldr to /mnt/hda1 (i.e. to the top directory of the filesystem where your operating systems are installed). Note that if any or all of the operating systems are installed on different partitions you must place a copy of grldr on the top directory of each of these partitions.
9. Copy the grub_for_dos boot menu text file menu.lst to /mnt/hda1 (i.e. the top directory of the partition)

NOW DO THE FOLLOWING AT YOUR OWN RISK

10. You are going to replace your existing Master Boot Record with the one provided by grub for dos... It would thus be a good idea to back up your old MBR. For example you can make a copy of your existing MBR when running Puppy Linux using the command: cd; dd if=/dev/hda of=existing.mbr bs=512 count=1
You can then restore the old MBR from that saved copy, if you need to, by using the command: cd; dd if=existing.mbr of=/dev/hda bs=512 count=1
11. Open a console in puppy and enter:
cd /mnt/hda1/grub4dos
./bootlace.com /dev/hda
The above command overwrites your existing /dev/hda drive MBR bootloader program with the grub4dos one (yes, bootlace.com can be run under linux!...Smile. It doesn't, however, overwrite your existing partition tables! Smile. YOUR RISK THOUGH!
12. Now edit menu.lst to tell the new MBR bootloader where the puppy kernel and initrd files are (and the DSL ones if using that, and the Microsoft windows ones if you insist on having that option too... I simply modified the grub4dos provided menu.lst file to include the following. Let me know if it can be improved or if I've missed anything:
-------------------
# This is a sample menu.lst file. You should make some changes to it.
# The old install method of booting via the stage-files has been removed.
# Please install GRLDR boot strap code to MBR with the bootlace.com
# utility under DOS/Win9x or Linux.

color black/cyan yellow/cyan
timeout 30
default /default

title Puppy
kernel (hd0,4)/vmlinuz root=/dev/ram0
initrd (hd0,4)/initrd.gz
boot

title DSL
kernel (hd0,4)/boot/isolinux/linux24 ramdisk_size=100000 toram nodhcp
initrd (hd0,4)/boot/isolinux/minirt24.gz exec
./boot/isolinux/isolinux.bin

title find and load NTLDR of Windows NT/2K/XP
fallback 1
find --set-root /ntldr
chainloader /ntldr
savedefault --wait=2

title find and load CMLDR of Windows NT/2K/XP
fallback 2
find --set-root /cmldr
chainloader /cmldr
savedefault --wait=2

title find and load IO.SYS of Windows 9x/Me
fallback 3
find --set-root /io.sys
chainloader /io.sys
savedefault --wait=2
---------------------------------
13. That's all! Reboot, and you should be presented with a grub4dos boot manager menu in which you can select Puppy, DSL, or various flavours of Microsoft Windows from your /dev/hda1 partition.

14. Want to use different partitions?

The above steps assumed that you want to do a frugal install of puppy onto a /dev/hda1 partition, which also contains (though it doesn't need to) a frugal install of Damn Small Linux and an existing installation of Microsoft Windows. You could use different partitions for any or all of these operating systems if you wish and the grub_for_dos bootloader can find them. To do that you simply need to edit your grub_for_dos menu.lst file to point to the appropriate partitions where each OS is installed, and place a copy of the program grldr in the top directory of each of these partitions. For example, you might have windows 2000 on a /dev/hda1 NTFS partition (which is referred to as hd0,1 in grub_for_dos notation, a puppy frugal install on /dev/hda2 (i.e. hd0,1), and a DSL frugal install on /dev/hdb4 (i.e. hd1,3 in grub_for_dos notation).

15. If you want to multi-boot from different versions of puppy, with frugal installs of each held in separate directories you might find the following two links useful:
a. http://murga-linux.com/puppy/viewtopic.php?t=19967&start=30
(especially the posts added to that thread by tazoc)
b. http://puppylinux.org/wikka/BootParms
(which lists extra parameters you can pass to grub for different versions of puppy, should you need them)

As an example, here is an extract from a grub_for_dos menu.lst file for multi-booting between four different versions of puppy installed on the same FAT32 partition. This example assumes the frugal installs are all stored on /dev/hda5 and with their kernels and initial ramdisk images placed in version-specific directories (e.g. puppy version 2.17 vmlinuz and initrd.gz have been placed in directory /puppy217 of partition /dev/hda5). [Note: If you are instead storing everything on the typical Window's C: drive, that is, /dev/hda1, simply replace all references to hd0,4 below to hd0,0].

Except for the case of Puppy 3.01, all the *.sfs files, such as pup_217.sfs and zdrv_217.sfs (as well as usr_cram.fs for puppy109CE) were placed in the top directory of /dev/hda5 (i.e. directory / of hd0,4). However, to get Puppy 3.01 working, vmlinuz, initrd.gz, pup_301.sfs, and zdr_301.sfs were all put in /puppy301.

The parameter psubdir, available with puppy versions 2.16 and above, allowed puppy217's pup_save.2fs to be placed in /puppy217 (though, as in the menu.lst extract below, you should miss out the leading slash when entering psubdir=puppy217). In a similar manner puppy301, using psubdir=puppy301 allowed its pup_save file to be placed in /puppy301. The other persistent save files (such as puppy109CE's pup001) were stored in the top directory of /dev/hda5:

title Puppy301
kernel (hd0,4)/puppy30x/vmlinuz PMEDIA=idehd psubdir=puppy301
initrd (hd0,4)/puppy301/initrd.gz
boot

title Puppy217
kernel (hd0,4)/puppy217/vmlinuz root=/dev/ram0 psubdir=puppy217
initrd (hd0,4)/puppy217/initrd.gz
boot

title puppy109CE
kernel (hd0,4)/puppy109CE/vmlinuz root=/dev/ram0 PMEDIA=idehd PHOME=hda5 PFILE=pup001-none-262144
initrd (hd0,4)/puppy109CE/image.gz
boot

title MurgasMeanPuppy
kernel (hd0,4)/MurgasMeanPuppy/vmlinuz root=/dev/ram0 PMEDIA=idehd
initrd (hd0,4)/MurgasMeanPuppy/initrd.gz
boot


Notes and additional links:

1. don't confuse grldr with grldr.mbr, they are different. You don't need to worry about the latter file, however, bootlace.com sorts all that out by itself.

2. If you want to dual-boot between puppy and Microsoft Windows, but don't want to overwrite your existing MBR boot loader program, check out ICPUG's Lin'N'WinNewB PROJECT pages at: http://www.icpug.org.uk/national/linnwin/contents.htm
Amongst other things ICPUG's pages show how you can boot puppy via Window's own boot loader program.

Edited_times_total
Back to top
View user's profile Send_private_message Visit_website 
ICPUG

Joined: 24 Jul 2005
Posts: 1290
Location: UK

PostPosted: Thu 16 Aug 2007, 07:54    Post_subject:  

William,

Have you tested this when DSL is placed on an NTFS partition? (Not just Windows).

I tried to do that in using my technique of using grldr only (not messing with the MBR) and it failed. It worked quite happily on a FAT32 partition.

I know that Knoppix will not boot this way when located on an NTFS partition until a special version of the minirt.gz file (supplied by Rymbeke in the Knoppix forum) is used.

As DSL is based on Knoppix I took my failure with DSL on NTFS to be because I had not tweaked the minirt24.gz and I did not know how to.

If you tell me you have got DSL to boot when it is frugally installed to an NTFS partition then I must think again.

ICPUG
Back to top
View user's profile Send_private_message 
alienjeff


Joined: 08 Jul 2006
Posts: 2291
Location: Winsted, CT - USA

PostPosted: Thu 16 Aug 2007, 08:21    Post_subject:  

Are we dual or tri-booting here? Wink
_________________
hangout: ##b0rked on irc.freenode.net
diversion: http://alienjeff.net - visit The Fringe
quote: "The foundation of authority is based upon the consent of the people." - Thomas Hooker

Back to top
View user's profile Send_private_message 
mcewanw

Joined: 16 Aug 2007
Posts: 2346
Location: New Zealand

PostPosted: Thu 16 Aug 2007, 08:46    Post_subject: Tri-booting on FAT32, Dual-booting on NTFS  

Sorry ICPUG, I missed that.
It all works fine when Puppy frugal, DSL frugal, and Microsoft WIndows (XP) are all installed on the same FAT32 partition.
It seems to work fine with Puppy frugal and Microsoft Windows are both installed on the same NTFS partition Smile Haven't tested that for long though.
But... When Puppy frugal, DSL frugal and Microsoft Windows are all installed on the same NTFS partition, and I try to boot DSL, it gets as far as the DSL splash screen. Then, right after it says, "Scanning for USB devices . . . Done", it fails with message:
"Can't find KNOPPIX filesystem, sorry. Dropping you to a very limited shell. Press reset button to quit".
Back to top
View user's profile Send_private_message Visit_website 
HairyWill


Joined: 26 May 2006
Posts: 2949
Location: Southampton, UK

PostPosted: Thu 16 Aug 2007, 09:30    Post_subject:  

This spurred me on to give DSL another go.

DSL booting off NTFS fails for me too. This isn't really very surprising as when booting off a different partition with DSL I am only able to mount NTFS read-only.

DSL automatically loaded the firewire modules and ACPI modules to show my laptops (thinkpad x30) battery status with torsmo.
It didn't cope with the ipw2200 wireless card though. I don't think that the module is in the iso.

_________________
Will
contribute: community website, screenshots, puplets, wiki, rss
Back to top
View user's profile Send_private_message 
ICPUG

Joined: 24 Jul 2005
Posts: 1290
Location: UK

PostPosted: Sat 18 Aug 2007, 10:44    Post_subject:  

Thanks guys for confirming my experience of trying DSL from NTFS.

I did actually ask Ruymbeke about what he changed in the Knoppix minirt.gz so that I might consider doing something for DSL. He told me to open it up and compare some files with the original - which was not what I wanted to hear. I don't like re-inventing the wheel! I prefer Puppy to DSL (better choice of apps in particular) so could not justify spending the time on such an exercise.

ICPUG
Back to top
View user's profile Send_private_message 
mcewanw

Joined: 16 Aug 2007
Posts: 2346
Location: New Zealand

PostPosted: Sun 19 Aug 2007, 04:04    Post_subject: I tried to patch DSL minirt24.gz but failed...  

Hello ICPUG

Following your earlier message, I actually tried yesterday to duplicate ruymbeke's work, but for DSL. Alas, I couldn't get it to work. Maybe I missed something or maybe the DSL boot kernel doesn't have the right support built into it. I also wish ruymbeke would take this on if he can. It amazes me that his earlier patch for knoppix was done years ago (based, I believe, on a working patch provided with the japanese knoppix version of the time). If only ruymbeke could have documented the main things needed to get it to work. The knoppix linuxrc script is pretty complex, but I'm sure the bits needed to get it running on ntfs is actually relatively minimal. It isn't good to have to rely on someone's patches - and until someone else understands how it all works the DSL community is suffering I'd say. Thank goodness, Puppy can boot from ntfs anyway!

I'm hoping ruymbeke will check out what I did and get back to me.

>>>
My post to knoppix forum thread yesterday:
http://www.knoppix.net/forum/viewtopic.php?t=11796&postdays=0&postorder=asc&start=540&sid=ba471f2b4e10a6615674f7cfe638a83c

Hello ruymbeke

Great to be able to boot Knoppix from ntfs with your patched minirt.gz. However it is also frustrating that noone seems to have produced a similar thing for the very popular Knoppix-derived Damn Small Linux. I've spent hours today trying to do just that... unsuccessfully Sad
First I ungzipped your minirt52.gz, loop mounted the result, and looked at linuxrc.
Then I did the same with DSL's minirt24.gz and used diff to see the differences.
Based on the side by side diff window I tried copying and pasting what seemed like the relevant parts over from your patched linuxrc to the DSL one. In particular I copied over your versions of the functions: mount_it(); boot_from(); boot_from2(); copy_to(); and loadmodule(). I also copied the line: loadmodule fuse ... and appended ntfs to the BUILTIN_FS line. Finally I reassembled everything into a new minirt24.gz.
But, as I say, it didn't boot - still couldn't find KNOPPIX whatever...
I even tried making a second version by also copying over the modules directory out of your patched minirt...
I didn't manually include any ntfs.o anywhere, so no manual insmod. Fact is, there wasn't any ntfs.o in the modules directory. Is that why this method doesn't work with DSL - is ntfs support compiled into KNOPPIX's kernel but not into DSL's kernel do you think? Or is the lengthy procedure I outlined above simply no good!

I really think it would be great if you could possibly do the same job for DSL you did for Knoppix - perhaps it would be easy for you to do since the linuxrc is very similar inside DSL to the Knoppix one?!
Back to top
View user's profile Send_private_message Visit_website 
mcewanw

Joined: 16 Aug 2007
Posts: 2346
Location: New Zealand

PostPosted: Fri 24 Aug 2007, 02:11    Post_subject: added some new information and some useful links  

added some new information and some useful links today Aug 24.
Hope that additional info makes the howto more useful to you!
Back to top
View user's profile Send_private_message Visit_website 
ICPUG

Joined: 24 Jul 2005
Posts: 1290
Location: UK

PostPosted: Tue 28 Aug 2007, 20:08    Post_subject:  

William

Thanks for the link back to the Lin'N'WinNewb project. I think you have covered most of the bases with the additions.

Just to comment on Ruymbeke's lack of documentation for his method. It is not only the DSL community that suffers. Should he become indisposed it would knock the Knoppix community as well.

As others have said on this forum, you cannot criticise people when they give their time for free. However, there comes a time when only doing what floats your own boat can sometimes be to the detriment of the community as a whole. It's a tricky problem.

ICPUG
Back to top
View user's profile Send_private_message 
mcewanw

Joined: 16 Aug 2007
Posts: 2346
Location: New Zealand

PostPosted: Tue 28 Aug 2007, 22:54    Post_subject: knoppix etc  

Yes, Ruymbeke has done a useful piece of work providing his patched minirt.gz's for knoppix (though I believe the japanese knoppix community did it first). It certainly is painful though, and almost unbelievable after all these years, that the patches haven't somehow been fed back into the main knoppix distribution (and thus, for example, into knoppix derived distributions such as DSL). Either the wheel will have to be reinvented, or hopefully Ruymbeke will find time someday to produce a more universal patch so that anyone can understand the process and apply it themselves. Or if he could document the critical parts of the process - I can't imagine it is actually all that complex - but having to try and extract the information from the whole convoluted patched knoppix script is quite daunting, for someone of my limited skills anyway. A simple list of the key critical steps would be great! Ruymbeke has clearly given alot of his free time very usefully already, so it is hard and/or awkward to ask for more; I'm sure he has his own busy life and priorities. In the meantime, I just hope someone with far more skill than I, in working with such configuration scripts, will stumble upon this ntfs-related problem and take it on board to ensure that the required patches feed into the official knoppix distribution scripts. It's great that Ruymbeke continues to make his patches available, and I thank him for that, but speaking for myself, I'm unlikely to adopt them in any permanent system as long as they are unofficial patches. Pity, but I'm sure someone will sort it all out one day?! Smile
Back to top
View user's profile Send_private_message Visit_website 
mcewanw

Joined: 16 Aug 2007
Posts: 2346
Location: New Zealand

PostPosted: Mon 29 Oct 2007, 05:58    Post_subject: Now modified to include manual frugal install of puppy30x
Sub_title: But... if multibooting bet. Puppy and Windows, best to refer to ICPUG's page
 

NEW: Now slightly modified to include manual frugal install of puppy30x (refer to note 15 "If you want to multi-boot from different versions of puppy" for the brief details).

If you are multibooting with Windows, however, I still recommend ICPUG's LinNwin instructions as a safer method since it doesn't alter your existing Master Boot Record.

(On the other hand, if your system doesn't include an installation of any Microsoft OS (and not even DOS) then the method in my howto is a good alternative; it's the only method I personally ever use, even for a couple of systems multibooting between Windows, DSL, and various versions of Puppy).
Back to top
View user's profile Send_private_message Visit_website 
tlcstat

Joined: 28 Oct 2007
Posts: 82
Location: SW Virginia mountains

PostPosted: Fri 02 Nov 2007, 10:20    Post_subject: Hard drive ext3 partition won't completely boot.
Sub_title: stops at executing personal config script /etc/rc.d/rc.local
 

Greetings,
I have been booting from a Fat32 drive with Wakepup on a XP machine.
I wanted a full HD install so I created a EXT3 partition and a Linux Swap partition and did a full install using Puppy Universal Installer. I put the grub installer in my MBR.
Windows XP boots fine from Grub and I can still boot the Fat32 Puppy with my Wakepup CD so I have full access to the EXT3 installation if I need to edit the boot config.
Problem. When I try to boot the Full Install on EXT3 my boot stalls at "executing personal config script /etc/rc.d/rc.local" .

This is a copy of my menu.lst in /boot/grub
title Windows (on /dev/hda2)
rootnoverify (hd0,0)
makeactive
chainloader +1
boot
# Other bootable partition config ends
# Linux bootable partition config begins
title Linux (on /dev/hda3)
root (hd0,2)
kernel /boot/vmlinuz root=/dev/hda3
boot

The file /etc/rc.d/rc.local is called from the file /etc/rc.d/rc.local0
This is a copy of the rc.local file that is called up.from rc.local0.

#this file called from rc.local0
#you can edit this file
#When firewall is installed, will append lines to this file...
modprobe evdev
After this the boot stops at a bash prompt "#".

Any solution would be appreciated.
Thanks
tlcstat
Back to top
View user's profile Send_private_message AIM 
tlcstat

Joined: 28 Oct 2007
Posts: 82
Location: SW Virginia mountains

PostPosted: Fri 02 Nov 2007, 10:51    Post_subject: Well I fixed it myself
Sub_title: Better luck next time
 

Greetings,
Well I fixed it myself already! When I got back to the bash prompt I typed XWIN and it set up the display drivers and the desktop came up. I had already copied over my pupsave file so when I rebooted it read my save file and my whole setup that I copied from the Fat32 partition came up. This is the just great.
Thanks anyway
tlcstat
Back to top
View user's profile Send_private_message AIM 
mcewanw

Joined: 16 Aug 2007
Posts: 2346
Location: New Zealand

PostPosted: Fri 02 Nov 2007, 21:03    Post_subject:  

Glad you got it all going. I was just logging in to check that. Since your system booted as far as rc.local, I didn't think there was any issue with grub. I'm only familiar with frugal installs to ntfs though, so I was going to suggest you try posting on a different thread since no one had come forwards to help you. Anyway, the matter is now satisfactorily closed. Good work!
Back to top
View user's profile Send_private_message Visit_website 
Display_posts:   Sort by:   
Page 1 of 1 Posts_count  
Post_new_topic   Reply_to_topic View_previous_topic :: View_next_topic
 Forum index » House Training » HOWTO ( Solutions )
Jump to:  

Rules_post_cannot
Rules_reply_cannot
Rules_edit_cannot
Rules_delete_cannot
Rules_vote_cannot
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2005 phpBB Group
[ Time: 0.1128s ][ Queries: 12 (0.0045s) ][ GZIP on ]