* Applied patch for #145318.

* Updated README.sbm.
This commit is contained in:
Raphaël Hertzog 2002-05-04 13:25:03 +00:00
parent 286feec0eb
commit ca93745a86
5 changed files with 158 additions and 19 deletions

View File

@ -894,9 +894,10 @@ bin-image: ok bin-md5list $(OUT)
$(MKISOFS) $(MKISOFS_OPTS) -V "$$volid" \
-o $(OUT)/$(CODENAME)-$(ARCH)-$(CD).raw $$opts CD$(CD); \
if [ -f $(BASEDIR)/tools/boot/$(CODENAME)/post-boot-$(ARCH) ]; then \
$(BASEDIR)/tools/boot/$(CODENAME)/post-boot-$(ARCH) $$n $$dir \
$(OUT)/$(CODENAME)-$(ARCH)-$$n.raw; \
$(BASEDIR)/tools/boot/$(CODENAME)/post-boot-$(ARCH) $(CD) $(BDIR)/CD$(CD) \
$(OUT)/$(CODENAME)-$(ARCH)-$(CD).raw; \
fi
src-image: ok src-md5list $(OUT)
@echo "Generating the source iso image n°$(CD) ..."
@test -n "$(CD)" || (echo "Give me a CD=<num> parameter !" && false)

View File

@ -10,3 +10,34 @@ Manager floppy image by using the sbm.bin disk image. You can create this
floppy with rawrite (under DOS) or with dd (under Linux). Now you can
boot on this floppy disk and it will detect your CDROM and let you boot
on it bypassing any BIOS limitation.
What is SBM ?
Smart Boot Manager or briefly SmartBtmgr (SBM), is an OS independent
Boot Manager - a program that is loaded by the bios before any
operating system and allows you to choose which operating system to
boot.
SBM is included in Debian in two ways, the package bmconf allows us to
install and configure an old version of SBM and sbm wich is the latest
version of SBM with an installer.
What's the use of SBM on the CD then ?
SBM includes an IDE driver that allows us to boot the cds even on
machines with a BIOS that wouldn't support booting from CD, provided our
CDROM is an IDE one, that is, so you can make a SBM floppy and boot from
it and then tell it to boot from your CDROM.
Also, there are some cases where the BIOS would allow booting from the CD
but isolinux fails to boot from there, in this case you can either boot
using a CD other than the first, as the others don't use isolinux, or you
can make a SBM floppy and boot from this floppy and then tell SBM to boot
your CDROM.
How do you make a SBM floppy ?
If you have SBM installed on a box you can run sbminst. Otherwise you can
put the sbm.bin floppy image that we provide with our cds onto a floppy
just like you would do with a rescue image.

7
debian/changelog vendored
View File

@ -1,8 +1,13 @@
debian-cd (2.2.15) unstable; urgency=low
* UNRELEASED.
* Apply patch for mipsel boot support. Closes: #145318
Thanks to Karsten Merker.
* Updated README.sbm with more info provided by Santiago
Marcia Mantinan.
* Reordered some woody task files. Thanks to Philip Charles.
-- Raphael Hertzog <hertzog@debian.org> Sun, 28 Apr 2002 16:04:24 +0200
-- Raphael Hertzog <hertzog@debian.org> Sat, 4 May 2002 15:20:57 +0200
debian-cd (2.2.14) unstable; urgency=high

View File

@ -1,11 +1,53 @@
#!/bin/sh
#!/bin/bash
#
# boot-mipsel - (C) 2002 by Karsten Merker <merker@debian.org>
#
# You may copy, modify and distribute this under the terms of the GNU
# General Public License as published by the Free Software Foundation;
# either version 2 of the License, or (at your option) any later version.
#
# Using this script on any architecture other than mipsel requires
# having binutils-multiarch installed, as it uses objcopy (a part
# of binutils) which is platform dependent. The binutils-multiarch
# package contains an objcopy which is capable of dealing with other
# arches' binary formats.
#
# $1 is the CD number
# $2 is the temporary CD build dir
# Mipsel doesn't have bootable CD support yet.
. $BASEDIR/tools/boot/$CODENAME/common.sh
N=$1
CDROOT=$2
# Strip NONUS part of disk number
# NN will be 1...N so it can be used as an index
#
# This file must however exist so that debian-cd doesn't complain about
# lack of "bootable" support.
#
# -- Raphaël Hertzog
NN=`echo $N | sed -e 's/_NONUS//'`
cd $CDROOT/..
:> $1.mkisofs_opts
KTYPE[1]="r3k-kn02"
KTYPE[2]="r4k-kn04"
KTYPE[3]=""
KTYPE[4]=""
KTYPE[5]=""
KTYPE[6]=""
KTYPE[7]=""
KTYPE[8]=""
# Only disks 1 and 2 bootable
if [ $NN != 1 -a $NN != 2 ]; then
exit 0
fi
install_languages $CDROOT
mkdir -p $CDROOT/cdboot
objcopy -O binary CD1/dists/$CODENAME/main/disks-$ARCH/current/tftpimage-${KTYPE[$NN]} $CDROOT/cdboot/tftpimage-${KTYPE[$NN]}.raw
exit 0

View File

@ -0,0 +1,60 @@
#!/bin/bash
#
# post-boot-mipsel - (C) 2002 by Karsten Merker <merker@debian.org>
#
# Do post-image-building tasks for mipsel, to make CDs bootable.
#
# You may copy, modify and distribute this under the terms of the GNU
# General Public License as published by the Free Software Foundation;
# either version 2 of the License, or (at your option) any later version.
#
# Using this script on any architecture other than mipsel requires
# having binutils-multiarch installed, as it uses objdump (a part
# of binutils) which is platform dependent. The binutils-multiarch
# package contains an objdump which is capable of dealing with other
# arches' binary formats.
#
# $1 is the CD number
# $2 is the temporary CD build dir
# $3 is the image file
set -e
N=$1
CDROOT=$2
CDIMAGE=$3
echo "post-boot-mipsel called"
echo "pwd=${PWD}, N=$N, CDROOT=${CDROOT}, CDIMAGE=${CDIMAGE}"
# Strip NONUS part of disk number
# NN will be 1...N so it can be used as an index
#
NN=`echo $N | sed -e 's/_NONUS//'`
cd $CDROOT/..
# Only disks 1 and 2 bootable
if [ $NN != 1 -a $NN != 2 ]; then
exit 0
fi
KTYPE[1]="r3k-kn02"
KTYPE[2]="r4k-kn04"
KTYPE[3]=""
KTYPE[4]=""
KTYPE[5]=""
KTYPE[6]=""
KTYPE[7]=""
KTYPE[8]=""
mkdir -p /tmp/debian-cd-loop.$$
mount -o ro,loop ${CDIMAGE} /tmp/debian-cd-loop.$$
KERNEL_ENTRY=`objdump -f CD1/dists/$CODENAME/main/disks-$ARCH/current/tftpimage-${KTYPE[$NN]} | grep "start address" | cut -f 3 -d " "`
echo "kernel_entry=$KERNEL_ENTRY"
mkdecbootcd /tmp/debian-cd-loop.$$/cdboot/tftpimage-${KTYPE[$NN]}.raw ${CDIMAGE} $KERNEL_ENTRY
umount /tmp/debian-cd-loop.$$
rmdir /tmp/debian-cd-loop.$$
exit 0