method of kernel-copy floppy
This commit is contained in:
parent
cc7e048040
commit
fc865832f6
|
@ -0,0 +1,50 @@
|
||||||
|
# $Id: Makefile.inc,v 1.1 1996/06/17 04:14:18 oki Exp $
|
||||||
|
|
||||||
|
# TOP is assumed to be defined by Makefile including this one.
|
||||||
|
|
||||||
|
CBIN= kcbin
|
||||||
|
COMMONDIR= ${TOP}/kc-common
|
||||||
|
|
||||||
|
MOUNT_POINT?= /mnt
|
||||||
|
VND?= vnd0
|
||||||
|
VND_DEV= /dev/${VND}c
|
||||||
|
VND_RDEV= /dev/r${VND}c
|
||||||
|
IMAGE?= xxx-${REV}.fs
|
||||||
|
MDEC= ${DESTDIR}/usr/mdec
|
||||||
|
|
||||||
|
LISTS= ${COMMONDIR}/list ${.CURDIR}/list
|
||||||
|
CRUNCHCONF= ${COMMONDIR}/${CBIN}.conf
|
||||||
|
MTREE= ${COMMONDIR}/mtree.conf
|
||||||
|
|
||||||
|
all: ${CBIN}
|
||||||
|
dd if=/dev/zero of=${IMAGE} bs=100k count=12
|
||||||
|
vnconfig -v -c ${VND_DEV} ${IMAGE}
|
||||||
|
dd if=${MDEC}/fdboot of=${VND_RDEV} conv=sync
|
||||||
|
newfs -O -m 0 -o space -i 6144 -c 80 ${VND_RDEV} floppy5
|
||||||
|
mount ${VND_DEV} ${MOUNT_POINT}
|
||||||
|
mtree -def ${MTREE} -p ${MOUNT_POINT}/ -u
|
||||||
|
TOPDIR=${TOP} CURDIR=${.CURDIR} OBJDIR=${.OBJDIR} \
|
||||||
|
TARGDIR=${MOUNT_POINT} sh ${TOP}/runlist.sh ${LISTS}
|
||||||
|
@echo ""
|
||||||
|
@df -i ${MOUNT_POINT}
|
||||||
|
@echo ""
|
||||||
|
umount ${MOUNT_POINT}
|
||||||
|
vnconfig -u ${VND_DEV}
|
||||||
|
cat /*bin/* > /dev/null
|
||||||
|
|
||||||
|
unconfig:
|
||||||
|
-umount -f ${MOUNT_POINT}
|
||||||
|
-vnconfig -u ${VND_DEV}
|
||||||
|
-/bin/rm -f ${IMAGE}
|
||||||
|
|
||||||
|
${CBIN}.mk ${CBIN}.cache ${CBIN}.c: ${CRUNCHCONF}
|
||||||
|
crunchgen -D ${TOP}/../../.. -L ${DESTDIR}/usr/lib ${CRUNCHCONF}
|
||||||
|
|
||||||
|
${CBIN}: ${CBIN}.mk ${CBIN}.cache ${CBIN}.c
|
||||||
|
make -f ${CBIN}.mk all
|
||||||
|
|
||||||
|
clean cleandir:
|
||||||
|
/bin/rm -f core ${IMAGE} ${CBIN} ${CBIN}.mk ${CBIN}.cache *.o *.lo *.c
|
||||||
|
|
||||||
|
.include <bsd.obj.mk>
|
||||||
|
.include <bsd.subdir.mk>
|
|
@ -0,0 +1,113 @@
|
||||||
|
# $Id: copy_kernel.sh,v 1.1 1996/06/17 04:14:19 oki Exp $
|
||||||
|
#
|
||||||
|
# Kernel copy script
|
||||||
|
|
||||||
|
DEFAULT_PARTITON=sd0a
|
||||||
|
MOUNT_POINT=/mnt
|
||||||
|
KERNEL_NAME=/netbsd
|
||||||
|
#TEST=testfn
|
||||||
|
|
||||||
|
testfn() {
|
||||||
|
echo $*
|
||||||
|
sleep 5
|
||||||
|
}
|
||||||
|
|
||||||
|
cancel() {
|
||||||
|
echo ""
|
||||||
|
echo "Copy cancelled."
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
umountfs() {
|
||||||
|
echo "Unmounting filesystem; please wait."
|
||||||
|
trap 2 3
|
||||||
|
${TEST} umount ${MOUNT_POINT}
|
||||||
|
case $? in
|
||||||
|
0)
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "Warning: Unmount of ${MOUNT_POINT} failed."
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
warning() {
|
||||||
|
echo ""
|
||||||
|
echo "Copy failed or was interrupted."
|
||||||
|
echo "Warning: Copied kernel my be corrupted!"
|
||||||
|
}
|
||||||
|
|
||||||
|
trap "cancel;" 2 3
|
||||||
|
echo "NetBSD kernel copy program"
|
||||||
|
echo ""
|
||||||
|
echo "Default answers are displayed in brackets. You may hit Control-C"
|
||||||
|
echo "at any time to cancel this operation (though if you hit Control-C at"
|
||||||
|
echo "a prompt, you need to hit return for it to be noticed)."
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
echo "What disk partition should the kernel be installed on?"
|
||||||
|
echo "(For example, \"sd0a\", \"wd0a\", etc.)"
|
||||||
|
echo ""
|
||||||
|
echo -n "Partition? [${DEFAULT_PARTITON}] "
|
||||||
|
read diskpart
|
||||||
|
if [ "X${diskpart}" = "X" ]; then
|
||||||
|
diskpart=${DEFAULT_PARTITON}
|
||||||
|
fi
|
||||||
|
rawdiskpart="r${diskpart}"
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
echo -n "Are you sure you want to copy a new kernel to ${diskpart}? [n] "
|
||||||
|
read reply
|
||||||
|
case ${reply} in
|
||||||
|
y*|Y*)
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
cancel
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
echo "Checking ${diskpart} partition; please wait."
|
||||||
|
${TEST} fsck -p "/dev/${rawdiskpart}"
|
||||||
|
case $? in
|
||||||
|
0)
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "File system check failed or aborted!"
|
||||||
|
cancel
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
echo "Mounting /dev/${diskpart} on ${MOUNT_POINT}."
|
||||||
|
trap "echo ''; umountfs; cancel;" 2 3
|
||||||
|
${TEST} mount "/dev/${diskpart}" ${MOUNT_POINT}
|
||||||
|
case $? in
|
||||||
|
0)
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "Mount failed!"
|
||||||
|
cancel
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
echo "Copying kernel to ${MOUNT_POINT}."
|
||||||
|
trap "warning; umountfs; cancel;" 2 3
|
||||||
|
${TEST} cp ${KERNEL_NAME} ${MOUNT_POINT}
|
||||||
|
case $? in
|
||||||
|
0)
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
warning
|
||||||
|
umountfs
|
||||||
|
cancel
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
umountfs
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
echo "Copy completed."
|
||||||
|
echo ""
|
||||||
|
echo "Use \"halt\" to halt the system, then (when the system is halted)"
|
||||||
|
echo "eject the floppy disk and hit any key to reboot from the hard disk."
|
||||||
|
exit 0
|
|
@ -0,0 +1,13 @@
|
||||||
|
# $Id: dot.profile,v 1.1 1996/06/17 04:14:19 oki Exp $
|
||||||
|
|
||||||
|
PATH=/sbin:/bin:/
|
||||||
|
export PATH
|
||||||
|
|
||||||
|
if [ "X${DONEPROFILE}" = "X" ]; then
|
||||||
|
DONEPROFILE=YES
|
||||||
|
|
||||||
|
echo -n "Enter 'copy_kernel' at the prompt to copy a kernel to your "
|
||||||
|
echo "hard disk,"
|
||||||
|
echo "'reboot' to reboot the system, or 'halt' to halt the system."
|
||||||
|
echo ""
|
||||||
|
fi
|
|
@ -0,0 +1,16 @@
|
||||||
|
#
|
||||||
|
# kcbin.conf - unified binary for the kc floppy
|
||||||
|
# $Id: kcbin.conf,v 1.1 1996/06/17 04:14:20 oki Exp $
|
||||||
|
#
|
||||||
|
|
||||||
|
srcdirs bin sbin
|
||||||
|
|
||||||
|
progs cp dd disklabel fsck_ffs init mount mount_ffs reboot sh test umount
|
||||||
|
|
||||||
|
ln fsck_ffs fsck
|
||||||
|
ln test [
|
||||||
|
ln mount_ffs ffs
|
||||||
|
ln reboot halt
|
||||||
|
ln sh -sh # init invokes the shell this way
|
||||||
|
|
||||||
|
libs -ledit -lutil -ltermcap -lcrypt -ll
|
|
@ -0,0 +1,32 @@
|
||||||
|
# $Id: list,v 1.1 1996/06/17 04:14:21 oki Exp $
|
||||||
|
|
||||||
|
# copy the crunched binary, link to it, and kill it
|
||||||
|
COPY ${OBJDIR}/kcbin kcbin
|
||||||
|
LINK kcbin bin/cp
|
||||||
|
LINK kcbin bin/dd
|
||||||
|
LINK kcbin bin/sh
|
||||||
|
LINK kcbin bin/test
|
||||||
|
LINK kcbin bin/[
|
||||||
|
LINK kcbin sbin/disklabel
|
||||||
|
LINK kcbin sbin/fsck
|
||||||
|
LINK kcbin sbin/fsck_ffs
|
||||||
|
LINK kcbin sbin/halt
|
||||||
|
LINK kcbin sbin/init
|
||||||
|
LINK kcbin sbin/mount
|
||||||
|
LINK kcbin sbin/mount_ffs
|
||||||
|
LINK kcbin sbin/reboot
|
||||||
|
LINK kcbin sbin/umount
|
||||||
|
SPECIAL /bin/rm kcbin
|
||||||
|
|
||||||
|
# copy the MAKEDEV script and make some devices
|
||||||
|
COPY ${CURDIR}/../../../../etc/etc.x68k/MAKEDEV dev/MAKEDEV
|
||||||
|
SPECIAL cd dev; sh MAKEDEV floppy
|
||||||
|
SPECIAL /bin/rm dev/MAKEDEV
|
||||||
|
|
||||||
|
# we need the contents of /usr/mdec
|
||||||
|
COPYDIR ${DESTDIR}/usr/mdec usr/mdec
|
||||||
|
|
||||||
|
# copy the common kc-floppy tools
|
||||||
|
COPY ${TOPDIR}/kc-common/dot.profile .profile
|
||||||
|
COPY ${TOPDIR}/kc-common/copy_kernel.sh copy_kernel
|
||||||
|
SPECIAL chmod 755 copy_kernel
|
|
@ -0,0 +1,36 @@
|
||||||
|
# $Id: mtree.conf,v 1.1 1996/06/17 04:14:22 oki Exp $
|
||||||
|
|
||||||
|
/set type=dir uname=root gname=wheel mode=0755
|
||||||
|
# .
|
||||||
|
.
|
||||||
|
|
||||||
|
# ./bin
|
||||||
|
bin
|
||||||
|
# ./bin
|
||||||
|
..
|
||||||
|
|
||||||
|
# ./dev
|
||||||
|
dev
|
||||||
|
# ./dev
|
||||||
|
..
|
||||||
|
|
||||||
|
#./mnt
|
||||||
|
mnt
|
||||||
|
# ./mnt
|
||||||
|
..
|
||||||
|
|
||||||
|
# ./sbin
|
||||||
|
sbin
|
||||||
|
# ./sbin
|
||||||
|
..
|
||||||
|
|
||||||
|
# ./usr
|
||||||
|
usr
|
||||||
|
|
||||||
|
# ./usr/mdec
|
||||||
|
mdec
|
||||||
|
# ./usr/mdec
|
||||||
|
..
|
||||||
|
|
||||||
|
# ./usr
|
||||||
|
..
|
|
@ -0,0 +1,8 @@
|
||||||
|
# $Id: Makefile,v 1.1 1996/06/17 04:14:15 oki Exp $
|
||||||
|
|
||||||
|
TOP= ${.CURDIR}/..
|
||||||
|
|
||||||
|
.include "${TOP}/Makefile.inc"
|
||||||
|
IMAGE= kc${REV}.fs
|
||||||
|
|
||||||
|
.include "${TOP}/kc-common/Makefile.inc"
|
|
@ -0,0 +1,4 @@
|
||||||
|
# $Id: list,v 1.1 1996/06/17 04:14:16 oki Exp $
|
||||||
|
|
||||||
|
# copy the kernel
|
||||||
|
COPY ${CURDIR}/../../../../sys/arch/x68k/compile/GENERIC/netbsd netbsd
|
Loading…
Reference in New Issue