parent
286feec0eb
commit
ca93745a86
9
Makefile
9
Makefile
|
@ -893,10 +893,11 @@ bin-image: ok bin-md5list $(OUT)
|
||||||
volid=`cat $(CD).volid`; rm -f $(OUT)/$(CODENAME)-$(ARCH)-$(CD).raw; \
|
volid=`cat $(CD).volid`; rm -f $(OUT)/$(CODENAME)-$(ARCH)-$(CD).raw; \
|
||||||
$(MKISOFS) $(MKISOFS_OPTS) -V "$$volid" \
|
$(MKISOFS) $(MKISOFS_OPTS) -V "$$volid" \
|
||||||
-o $(OUT)/$(CODENAME)-$(ARCH)-$(CD).raw $$opts CD$(CD); \
|
-o $(OUT)/$(CODENAME)-$(ARCH)-$(CD).raw $$opts CD$(CD); \
|
||||||
if [ -f $(BASEDIR)/tools/boot/$(CODENAME)/post-boot-$(ARCH) ]; then \
|
if [ -f $(BASEDIR)/tools/boot/$(CODENAME)/post-boot-$(ARCH) ]; then \
|
||||||
$(BASEDIR)/tools/boot/$(CODENAME)/post-boot-$(ARCH) $$n $$dir \
|
$(BASEDIR)/tools/boot/$(CODENAME)/post-boot-$(ARCH) $(CD) $(BDIR)/CD$(CD) \
|
||||||
$(OUT)/$(CODENAME)-$(ARCH)-$$n.raw; \
|
$(OUT)/$(CODENAME)-$(ARCH)-$(CD).raw; \
|
||||||
fi
|
fi
|
||||||
|
|
||||||
src-image: ok src-md5list $(OUT)
|
src-image: ok src-md5list $(OUT)
|
||||||
@echo "Generating the source iso image n°$(CD) ..."
|
@echo "Generating the source iso image n°$(CD) ..."
|
||||||
@test -n "$(CD)" || (echo "Give me a CD=<num> parameter !" && false)
|
@test -n "$(CD)" || (echo "Give me a CD=<num> parameter !" && false)
|
||||||
|
|
|
@ -1,12 +1,43 @@
|
||||||
About the Smart Boot Manager image
|
About the Smart Boot Manager image
|
||||||
----------------------------------
|
----------------------------------
|
||||||
|
|
||||||
The file `sbm.bin' that is available in this directory may be useful
|
The file `sbm.bin' that is available in this directory may be useful
|
||||||
to you if you are not able to directly boot the first CD because your
|
to you if you are not able to directly boot the first CD because your
|
||||||
BIOS may be too old and may not support ISOLINUX.
|
BIOS may be too old and may not support ISOLINUX.
|
||||||
|
|
||||||
|
Then, instead of booting on the CD directly, you create a Smart Boot
|
||||||
|
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.
|
||||||
|
|
||||||
Then, instead of booting on the CD directly, you create a Smart Boot
|
|
||||||
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.
|
|
||||||
|
|
|
@ -1,8 +1,13 @@
|
||||||
debian-cd (2.2.15) unstable; urgency=low
|
debian-cd (2.2.15) unstable; urgency=low
|
||||||
|
|
||||||
* UNRELEASED.
|
* 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
|
debian-cd (2.2.14) unstable; urgency=high
|
||||||
|
|
||||||
|
|
|
@ -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
|
NN=`echo $N | sed -e 's/_NONUS//'`
|
||||||
# lack of "bootable" support.
|
|
||||||
#
|
cd $CDROOT/..
|
||||||
# -- Raphaël Hertzog
|
|
||||||
|
:> $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
|
exit 0
|
||||||
|
|
||||||
|
|
|
@ -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
|
Loading…
Reference in New Issue