Initial import from FreeBSD RELENG_4:
[dragonfly.git] / release / picobsd / doc / src / installflp.html
1 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
2 <!-- $FreeBSD: src/release/picobsd/doc/src/installflp.html,v 1.1 1999/10/08 05:20:06 dwhite Exp $ -->
3 <html>
4   <head>
5     <title>Configuring the PicoBSD install floppy</title>
6   </head>
7
8   <body>
9     <h1>Configuring the PicoBSD install floppy</h1>
10
11     <p>The PicoBSD Install Floppy is engineered to be flexible since every
12     site has their own needs for an automated install solution.  The
13     base package contains tools and frameworks for further
14     customization.  </p>
15
16     <h2>Generating an Install Image</h2>
17     
18     <p>Central to the design of the install floppy is a tarball image of
19     the operating system.  The install floppy downloads and extracts
20     the image from a master server. </p> 
21
22     <p>To generate the install image:</p>
23
24     <ol>
25         <li>Install and configure a machine as it should be
26         installed.  
27         <ul> 
28           <li><em>Make the template machine as close to the target
29             machines as possible.</em>  System-specific files such as
30             <tt>/etc/fstab</tt> can cause problems if they are
31             specific to a particular disk setup, such as multiple SCSI 
32             disks in the template vs. single IDE disks in the target.
33           <li><em>Try to keep the template as small as practical.</em>
34             The more packages you install on the template, the larger
35             the image becomes.    
36         </ul>
37       <li>Use tar to create the image.  This shell script is useful
38         for automating the process.
39         <blockquote><pre>
40 #!/bin/sh
41 TARBALL="/fbsdimage.tgz"
42 GZIP="-9"
43
44 tar -cpvzf ${TARBALL} --totals --exclude '/proc/*' --exclude '/var/tmp/*' \
45     --exclude '/var/log/*' --exclude '/tmp/*' --exclude '/fbsdimage.tgz' /
46           </pre></blockquote>
47         <ul>
48           <li>Use the '--exclude' argument to remove files from the
49             image. 
50           <li>Don't forget to exclude the image itself or your tarball 
51             will be much larger than it should.
52           <li>The <b>GZIP</b> environment variable sets arguments to the
53             gzip command called by tar's z option.
54         </ul>
55       <li>Copy the image file to your load server into a public FTP
56         directory.
57     </ol>
58             
59     <h2>Configuring the Install Floppy</h2>
60     
61     <p>Once the install floppy has been built using the PicoBSD build
62       script, mount the floppy and modify the install
63       script, <tt>/floppy/etc/doinstall</tt>.   <tt>doinstall</tt> is
64       called from rc on startup to install the disk image and perform
65       whatever other setup tasks are necessary.  The script can set
66       network parameters, configure applications, select kernels, or
67       whatever else a shell script can do. A handful of useful
68       utilities is included on the disk to ease automated installation.</p>
69
70     <p>At minumum, set the URL to the FTP server holding the disk
71       image. If you wish, uncomment and modify to taste any of the
72       code blocks provided.</p>
73
74     <p>By default, the install floppy:</p>
75     <ul>
76       <li>Creates one large FreeBSD slice on the first IDE disk (wd0).
77       <li>Creates a 256MB swap partition and the rest for a large
78         root partition.
79       <li>Formats the large partition using <tt>newfs</tt> with
80         default parameters. '
81       <li>Downloads the image via FTP and feeds it directly into
82         <tt>cpio</tt> for extraction.
83     </ul>
84     
85     <P>To modify the disk formatting parameters, modify the
86       <tt>/floppy/etc/prepdisk</tt> script.  <tt>prepdisk</tt> is a
87       simple awk script that feeds directly into <tt>disklabel</tt>.
88       Simply edit the generated partition table to taste.</P>
89       
90     
91
92     <hr>
93     <address><a href="mailto:dwhite@freebsd.org">Doug White</a></address>
94 <!-- Created: Thu Oct  7 21:42:17 PDT 1999 -->
95 <!-- hhmts start -->
96 Last modified: Thu Oct  7 22:18:22 PDT 1999
97 <!-- hhmts end -->
98   </body>
99 </html>