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