install.md revision 1.1.1.1.18.1
1# $NetBSD: install.md,v 1.1.1.1.18.1 2009/01/15 22:22:07 bouyer Exp $ 2# 3# 4# Copyright (c) 1996 The NetBSD Foundation, Inc. 5# All rights reserved. 6# 7# This code is derived from software contributed to The NetBSD Foundation 8# by Jason R. Thorpe. 9# 10# Redistribution and use in source and binary forms, with or without 11# modification, are permitted provided that the following conditions 12# are met: 13# 1. Redistributions of source code must retain the above copyright 14# notice, this list of conditions and the following disclaimer. 15# 2. Redistributions in binary form must reproduce the above copyright 16# notice, this list of conditions and the following disclaimer in the 17# documentation and/or other materials provided with the distribution. 18# 3. All advertising materials mentioning features or use of this software 19# must display the following acknowledgement: 20# This product includes software developed by the NetBSD 21# Foundation, Inc. and its contributors. 22# 4. Neither the name of The NetBSD Foundation nor the names of its 23# contributors may be used to endorse or promote products derived 24# from this software without specific prior written permission. 25# 26# THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 27# ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 28# TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 29# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 30# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 31# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 32# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 33# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 34# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 35# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 36# POSSIBILITY OF SUCH DAMAGE. 37# 38 39# 40# machine dependent section of installation/upgrade script. 41# 42 43VERSION= # filled in automatically (see list) 44export VERSION 45 46md_set_term() { 47 if [ ! -z "$TERM" ]; then 48 return 49 fi 50 echo -n "Specify terminal type [vt220]: " 51 getresp "vt220" 52 TERM="$resp" 53 export TERM 54} 55 56md_makerootwritable() { 57 # Mount root rw for convenience of the tester ;-) 58 if [ ! -e /tmp/.root_writable ]; then 59 rootdev=/dev/$(sysctl -n kern.root_device)$(sysctl -n kern.root_partition | sed y/0123456789/abcdefghij/) 60 mount -t ffs -u $rootdev / > /dev/null 2>&1 61 cp /dev/null /tmp/.root_writable 62 fi 63} 64 65md_get_diskdevs() { 66 # return available disk devices 67 sysctl -n hw.disknames | sed 'y/ /\n/' | sed -n '/^[sw]d[0-9]/p' \ 68 | sort -u 69} 70 71md_prep_disklabel() 72{ 73 # $1 is the root disk 74 # Note that the first part of this function is just a *very* verbose 75 # version of md_label_disk(). 76 77 cat << \__md_prep_disklabel_1 78You now have to prepare your root disk for the installation of NetBSD. This 79is further referred to as 'labeling' a disk. 80 81First you get the chance to edit or create an AHDI compatible partitioning on 82the installation disk. Note that NetBSD can do without AHDI partitions, 83check the documentation. 84If you want to use an AHDI compatible partitioning, you have to assign some 85partitions to NetBSD before NetBSD is able to use the disk. Change the 'id' 86of all partitions you want to use for NetBSD filesystems to 'NBD'. Change 87the 'id' of the partition you wish to use for swap to 'SWP'. 88 89Hit the <return> key when you have read this... 90__md_prep_disklabel_1 91 getresp "" 92 ahdilabel /dev/r${1}c 93 94 # display example 95 cat << \__md_prep_disklabel_3 96Here is an example of what the partition information will look like once 97you have entered the disklabel editor. Disk partition sizes and offsets 98are in sector (most likely 512 bytes) units. 99 100[Example] 101partition start (c/t/s) nblks (c/t/s) type 102 103 a (root) 0 (0/00/00) 31392 (109/00/00) 4.2BSD 104 b (swap) 31392 (109/00/00) 73440 (255/00/00) swap 105 c (disk) 0 (0/00/00) 1070496 (3717/00/00) unused 106 d (user) 104832 (364/00/00) 30528 (106/00/00) 4.2BSD 107 e (user) 135360 (470/00/00) 40896 (142/00/00) 4.2BSD 108 f (user) 176256 (612/00/00) 92160 (320/00/00) 4.2BSD 109 g (user) 268416 (932/00/00) 802080 (2785/00/00) 4.2BSD 110 111[End of example] 112 113Hit the <return> key when you have read this... 114 115__md_prep_disklabel_3 116 getresp "" 117 edlabel /dev/r${1}c 118 119 cat << \__md_prep_disklabel_4 120 121You will now be given the opportunity to place disklabels on any additional 122disks on your system. 123__md_prep_disklabel_4 124 125 _DKDEVS=`rmel ${1} ${_DKDEVS}` 126 resp="X" # force at least one iteration 127 while [ "X$resp" != X"done" ]; do 128 labelmoredisks 129 done 130} 131 132md_labeldisk() { 133 edahdi /dev/r${1}c < /dev/null > /dev/null 2>&1 134 [ $? -eq 0 ] && edahdi /dev/r${1}c 135 edlabel /dev/r${1}c 136} 137 138md_welcome_banner() { 139 echo "" 140 echo "Welcome to the NetBSD/atari ${VERSION} preparation program." 141 cat << \__welcome_banner_1 142 143This program is designed to partition your disk in preparation of the 144NetBSD installation. At this stage, the only thing you _must_ setup 145is a swap partition. If you wish, the remaining partitioning work might 146be delayed until the actual installation. 147 148As with anything which modifies your disk's contents, this 149program can cause SIGNIFICANT data loss, and you are advised 150to make sure your data is backed up before beginning the 151preparation process. 152 153Default answers are displayed in brackets after the questions. 154You can hit Control-C at any time to quit, but if you do so at a 155prompt, you may have to hit return. 156__welcome_banner_1 157} 158 159md_not_going_to_install() { 160 cat << \__not_going_to_install_1 161 162OK, then. Enter `halt' at the prompt to halt the machine. Once the 163machine has halted, power-cycle the system to load new boot code. 164 165Note: If you wish to have another try. Just type '^D' at the prompt. After 166 a moment, the program will restart itself. 167 168__not_going_to_install_1 169} 170 171md_congrats() { 172 cat << __congratulations_1 173 174CONGRATULATIONS! You have successfully partitioned your disks! 175Now you can use file2swap.ttp to transfer the install.fs to your 176swap partition and continue the installation. 177Enter halt at the command prompt. Once the system has halted, reset the 178machine and re-boot it. 179 180Note: If you wish to have another try. Just type '^D' at the prompt. After 181 a moment, the installer will restart itself. 182 183__congratulations_1 184} 185