141 lines
4.2 KiB
Bash
141 lines
4.2 KiB
Bash
#!/bin/sh -
|
|
# $NetBSD: maketape,v 1.4 1994/10/26 21:09:31 cgd Exp $
|
|
#
|
|
# Copyright (c) 1992, 1993
|
|
# The Regents of the University of California. All rights reserved.
|
|
#
|
|
# Redistribution and use in source and binary forms, with or without
|
|
# modification, are permitted provided that the following conditions
|
|
# are met:
|
|
# 1. Redistributions of source code must retain the above copyright
|
|
# notice, this list of conditions and the following disclaimer.
|
|
# 2. Redistributions in binary form must reproduce the above copyright
|
|
# notice, this list of conditions and the following disclaimer in the
|
|
# documentation and/or other materials provided with the distribution.
|
|
# 3. All advertising materials mentioning features or use of this software
|
|
# must display the following acknowledgement:
|
|
# This product includes software developed by the University of
|
|
# California, Berkeley and its contributors.
|
|
# 4. Neither the name of the University nor the names of its contributors
|
|
# may be used to endorse or promote products derived from this software
|
|
# without specific prior written permission.
|
|
#
|
|
# THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
|
|
# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
|
# ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
|
|
# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
|
# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
|
# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
|
# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
|
# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
|
# SUCH DAMAGE.
|
|
#
|
|
# @(#)maketape 8.1 (Berkeley) 6/10/93
|
|
#
|
|
|
|
# maketape [ 6250 | 1600 [ tapename [ remotetapemachine ] ] ]
|
|
miniroot=ra1b
|
|
nbsd=ra1a
|
|
nbsdusr=/mnt/usr/DISTUSR
|
|
tape=/dev/rmt20
|
|
type=6250
|
|
block=40
|
|
tflag=cbf
|
|
bprog="/usr/local/20b 20480"
|
|
|
|
if [ $# -gt 0 ]; then
|
|
type=$1;
|
|
fi
|
|
|
|
if [ $# -gt 1 ]; then
|
|
tape=$2;
|
|
fi
|
|
|
|
tartape=$tape
|
|
if [ $# -gt 2 ]; then
|
|
remote=$3;
|
|
tartape='-';
|
|
fi
|
|
|
|
rsh $remote mt -t ${tape} rew
|
|
date
|
|
#umount /dev/$nbsdusr
|
|
umount /dev/$nbsd
|
|
mount -r /dev/$nbsd /nbsd
|
|
#mount -r /dev/$nbsdusr /nbsd/usr
|
|
cd /nbsd
|
|
sync
|
|
|
|
if [ $type = '1600a' ]
|
|
then
|
|
type=1600
|
|
fi
|
|
|
|
cd /nbsd/sys/vaxdist/tp
|
|
tp cmf /tmp/tape.$$ boot copy format
|
|
cd /nbsd/sys/mdec
|
|
echo "Build 1st level boot block file"
|
|
cat tsboot htboot tmboot mtboot utboot noboot noboot /tmp/tape.$$ | \
|
|
rsh $remote dd of=${tape} obs=512 conv=sync
|
|
|
|
echo "Add image of mini-root file system"
|
|
eval dd if=/dev/r${miniroot} count=205 bs=20b conv=sync ${remote+"| rsh"} \
|
|
${remote-"of=$tape"} ${remote+'/usr/local/20b ">" $tape'}
|
|
|
|
echo "Add full dump of real file system"
|
|
/sbin/${remote+r}dump 0f $remote${remote+:}${tape} /dev/r${nbsd}
|
|
|
|
echo "Add tar image of /usr"
|
|
cd ${nbsdusr}
|
|
tar ${tflag} ${block} ${tartape} bin contrib games include lib libdata \
|
|
libexec local mdec obj old sbin share | rsh $remote ${bprog} ">" $tape
|
|
|
|
if [ ${type} != '6250' ]
|
|
then
|
|
echo "Done, rewinding first tape"
|
|
rsh $remote mt -t ${tape} rew &
|
|
echo "Mount second tape and hit return when ready"
|
|
echo "(or type name of next tape drive)"
|
|
read x
|
|
if [ "$x" != "" ]
|
|
then tape=$x
|
|
fi
|
|
fi
|
|
|
|
: tape2:
|
|
echo "Add user source code"
|
|
FILES="Makefile bin etc games include kerberosIV lib libexec old \
|
|
pgrm sbin share usr.bin usr.sbin"
|
|
cd /nbsd/usr/src
|
|
tar ${tflag} ${block} ${tartape} ${FILES} | rsh $remote ${bprog} ">" $tape
|
|
|
|
if [ ${type} != '6250' ]
|
|
then
|
|
echo "Done, rewinding second tape"
|
|
$remote mt -t ${tape} rew &
|
|
echo "Mount third tape and hit return when ready"
|
|
echo "(or type name of next tape drive)"
|
|
read x
|
|
if [ "$x" != "" ]
|
|
then tape=$x
|
|
fi
|
|
fi
|
|
|
|
: tape3:
|
|
echo "Add tar image of system sources"
|
|
cd /nbsd/usr/src/sys
|
|
tar ${tflag} ${block} ${tartape} . | rsh $remote ${bprog} ">" $tape
|
|
|
|
echo "Add user contributed software"
|
|
# standard (always uncompressed) directories:
|
|
FILES="Makefile Makefile.inc ansi bib emacs emacs-18.55.tar.Z jove kermit \
|
|
mh.tar.Z patch rcs vmsprep"
|
|
cd /nbsd/usr/src/contrib
|
|
tar ${tflag} ${block} ${tartape} ${FILES} | rsh $remote ${bprog} ">" $tape
|
|
|
|
|
|
echo "Done, rewinding tape"
|
|
rsh $remote mt -t ${tape} rew &
|