trying this again, attached is a patch for dbootstrap's documentation regarding installation of the bootloader on NewWorld PowerMacs. there is a couple things that need to also be added to the root floppy for this to work/be accurate: /dev/nvram /sbin/nvsetenv (from powerpc-utils_1.1.3-2_powerpc.deb) /usr/sbin/ofpath (from yaboot_0.9-0.29_powerpc.deb) also /boot/yaboot (or /usr/lib/yaboot/yaboot) must remain on the root image. (2.2.16 boot floppies have it in /boot) please CC any replies as i am not subscribed to debian-boot atm. -- Ethan Benson http://www.alaska.net/~erbenson/
Index: dbootstrap.sgml =================================================================== RCS file: /cvs/debian-boot/boot-floppies/documentation/en/dbootstrap.sgml,v retrieving revision 1.44 diff -u -r1.44 dbootstrap.sgml --- dbootstrap.sgml 2000/10/25 17:10:58 1.44 +++ dbootstrap.sgml 2000/11/19 12:02:26 @@ -734,10 +734,14 @@ <p> To setup <prgn>yaboot</prgn> you need to know the following: <enumlist> - <item>The OpenFirmware device path to the disk on which you installed - &debian;. If you are installing onto the standard internal IDE hard - disk then this device path will be simply `hd:'. - + <item>The OpenFirmware device path to the disk on which you + installed &debian;. If you are installing onto the standard + internal IDE hard disk then this device path will be simply `hd:'. + You can find the OpenFirmware device path to your disk by running + the command <example>ofpath /dev/sda</example> where + <file>/dev/sda</file> is the device you installed on (not the + partition) + <item>The device node of your bootstrap partition (that you created when partitioning the disk), e.g. <file>/dev/hda2</file>. @@ -751,7 +755,7 @@ IDE hard disk, in which case your OpenFirmware device path is `hd:' <example> -mkofboot --boot /dev/hda2 -m /target/etc/ofboot.b --root /dev/hda3 --partition 3 +mkofboot --boot /dev/hda2 -m /target/usr/lib/yaboot/ofboot --root /dev/hda3 --partition 3 </example> where "/dev/hda2" is the bootstrap partition, "/dev/hda3" is your root @@ -763,37 +767,37 @@ following steps: <enumlist> - <item>Edit <file>/etc/ofboot.b</file> replacing `hd' in the line - `boot hd:\\yaboot' with the full OpenFirmware path to your disk with - the partition number of your bootstrap partition after the `:'. - For example: - -<example> -boot /pci@80000000/pci-bridge@d/ADPT,2930CU@2/@1:2,\\yaboot -</example> - - where the number "1" is the SCSI ID of the disk, and the number "2" is - the partition number of your bootstrap partition. See the - <url id="&url-powerpc-yaboot-faq;" name="yaboot FAQ"> for information on - finding the OpenFirmware device paths. + <item>add "--device <var>path</var>" to the <prgn>mkofboot</prgn> + command above. Use ofpath to find the correct device path, For example: - <item>add "--device <var>ofpath</var>" to the <prgn>mkofboot</prgn> - command above. For example: - <example> -mkofboot --boot /dev/sda2 -m /target/etc/ofboot.b --root /dev/sda3 \ - --partition 3 --device /pci@80000000/pci-bridge@d/ADPT,2930CU@2/@1: + ofpath /dev/sda + /pci@80000000/pci-bridge@d/ADPT,2930CU@2/@1: + mkofboot --boot /dev/sda2 -m /target/usr/lib/yaboot/ofboot --root /dev/sda3 --partition 3 \ + --device /pci@80000000/pci-bridge@d/ADPT,2930CU@2/@1: + </example> + or a simpler method: + <example> + mkofboot --boot /dev/sda2 -m /target/usr/lib/yaboot/ofboot --root /dev/sda3 --partition 3 \ + --device `ofpath /dev/sda` </example> </enumlist> <p> -Your disk should now be bootable. On G4 machines and iBooks, you can +Your disk should now be bootable. OpenFirmware's settings should also +be set to boot &debian, see the ybin documentation for info on setting +up a boot menu if desired. On G4 machines and iBooks, you can hold down the option key and get a graphical screen with a button for -each bootable OS, &debian; will be a button with a penguin icon. For -older machines you should reset OpenFirmware to default values by -holding down the `command option p r' keys while cold booting. +each bootable OS, &debian; will be a button with a penguin icon. + +If mkofboot fails to set the OpenFirmware boot-device variable you +should reset OpenFirmware to its default configuration. To do this +hold down the "command option p r" keys while cold booting the +machine. + Reseting OpenFirmware on G3 or G4 hardware will cause it to boot -&debian; by default. (If you have a SCSI disk this may not work and you -will have to enter OpenFirmware and set the boot device yourself). +&debian; by default. (If you have a SCSI disk this may not work and +you will have to enter OpenFirmware and set the boot-device variable, +ybin normally does this automatically). <p> After you have booted successfully for the first time you will need to create a permanent <file>/etc/yaboot.conf</file> file. This is the default @@ -807,9 +811,15 @@ boot=unconfigured device=hd: timeout=20 -install=/boot/yaboot -magicboot=/boot/ofboot.b +install=/usr/lib/yaboot/yaboot +magicboot=/usr/lib/yaboot/ofboot +## Comment out if you have a newworld compatible nvsetenv (ybin can +## likely detect the incompatible version) when commented out ybin +## will update the boot-device variable in OpenFirmware to the +## bootstrap partition. +nonvram + image=/vmlinux label=Linux root=/dev/hda3 @@ -822,6 +832,9 @@ --boot switch to <prgn>mkofboot</prgn> earlier. This is your bootstrap partition. + <item>Comment out the `nonvram' line so ybin will ensure OpenFirmware is + configured to boot from the bootstrap partition. + <item>Change the `device=' line if you have SCSI disks or if otherwise needed. @@ -829,22 +842,34 @@ --root switch to <prgn>mkofboot</prgn>. This is your root partition. </enumlist> <p> -Edit or replace <file>/etc/ofboot.b</file> to suit your system. The -default version will work if you are using the internal IDE hard disk, -otherwise edit it as you did when installing the system. If you are dual -booting with MacOS you may want to replace it with one of the files from -<file>/usr/share/doc/yaboot/examples/</file>, such as -<file>menu_ofboot.b</file> that will allow you to hold down the spacebar -key to boot the alternate OS. For more information, see the README files -located there. +If you need to dual boot MacOS, simply add the line +<example>macos=/dev/hda12</example> to <file>/etc/yaboot.conf</file>. +If you also wish to boot MacOSX add the line +<example>macosx=/dev/hda13</example> to <file>/etc/yaboot.conf</file>. +You can have one or both (or niether) of these options at the same +time. When either macos= or macosx= is defined a real menu of choices +will be displayed at boot, if no choice is made after 10 seconds +Debian will be booted by default. If you wish to change the default +OS add the line <example>defaultos=macos</example> or +<example>defaultos=macosx<example> to <file>/etc/yaboot.conf<file>. +The timeout to booting the default OS can be changed by adding +<example>delay=5</example> where <example>5</example> is the number of +seconds you want the menu to wait for a choice. <p> Run the <prgn>ybin</prgn> command, which will update the bootstrap partition with the current <file>/etc/yaboot.conf</file> configuration -and <file>/etc/ofboot.b</file> first stage loader. Use the <prgn>ybin</prgn> -command any time you make changes to <file>/etc/yaboot.conf</file> or -<file>ofboot.b</file> files. Also, run it every time the +and <file>/usr/lib/yaboot/ofboot</file> first stage loader. Use the +<prgn>ybin</prgn> command any time you make changes to +<file>/etc/yaboot.conf</file>. Also, run it every time the <package>yaboot</package> package is upgraded so the upgraded <prgn>yaboot</prgn> binary will be activated. + <p> +IMPORTANT: Unlike previous versions of the yaboot package, +/usr/lib/yaboot/ofboot (formally /boot/ofboot.b) should NOT be edited, +it is automatically configured based on configuration options in +<file>/etc/yaboot.conf</file>. <pgrn>ybin</prgn> will use the +<prgn>ofpath</prgn> utility to find out the correct OpenFirmware +device paths to be encoded into the ofboot.b first stage loader. ]]> <![ %arm [ <![ %FIXME [ <p><em>FIXME: about the boot manager?</em> ]]> ]]>
Attachment:
pgpDQ9x6Jc6pz.pgp
Description: PGP signature