Supermin appliance.
[febootstrap.git] / febootstrap-supermin-helper.pod
1 =head1 NAME
2
3 febootstrap-supermin-helper - Reconstruct initramfs from supermin appliance.
4
5 =head1 SYNOPSIS
6
7  febootstrap-supermin-helper supermin.img hostfiles.txt kernel initrd
8
9 =head1 DESCRIPTION
10
11 I<febootstrap-supermin-helper> reconstructs a bootable kernel and
12 initramfs from a supermin appliance.  First you should be familiar
13 with L<febootstrap(8)>, L<febootstrap-to-initramfs(8)> and
14 L<febootstrap-to-supermin(8)>.
15
16 =head1 PARAMETERS
17
18 Of the four parameters, the first two are I<input> files, and the last
19 two are I<output> files.
20
21 C<supermin.img> and C<hostfiles.txt> are the input files which
22 describe the supermin appliance.
23
24 C<kernel> and C<initrd> are the temporary output files that this
25 script produces.  These output files are meant to be used just for
26 booting the appliance, and should be deleted straight afterwards.
27
28 =head1 OPTIONS
29
30 =over 4
31
32 =item B<--kmods file>
33
34 If this option is specified, then C<file> should be a list of
35 wildcards matching kernel module names, eg:
36
37  virtio*.ko
38  scsi*.ko
39  piix.ko
40
41 In this case, only kernel modules matching those wildcards will be
42 included in the output appliance.  Note: You must resolve any
43 dependencies yourself as this does not pull in dependent modules
44 automatically.
45
46 If this option is not specified, then every kernel module from the
47 host will be included.  This is safer, but can produce rather large
48 appliances which need a lot more memory to boot.
49
50 =back
51
52 =head1 SPEED
53
54 In libguestfs, on a mid-range Intel-based PC, we reconstruct the
55 initramfs using this script in around 1/5th of a second (assuming a
56 "hot cache" - it's rather slower when run the first time on a cold
57 cache).
58
59 Some tips to improve performance:
60
61 =over 4
62
63 =item *
64
65 Use a kernel module whitelist (the C<--kmods> option), and only
66 list the kernel modules you really need.
67
68 =item *
69
70 Minimize the appliance, removing as much extraneous junk as possible.
71
72 As well as using L<febootstrap-minimize(8)> it is worth checking for
73 anything that is not necessary for your particular application and
74 removing it by hand.
75
76 =back
77
78 =head1 SEE ALSO
79
80 L<febootstrap(8)>,
81 L<febootstrap-to-initramfs(8)>,
82 L<febootstrap-to-supermin(8)>.
83
84 =head1 AUTHORS
85
86 Richard W.M. Jones <rjones @ redhat . com>
87
88 =head1 COPYRIGHT
89
90 (C) Copyright 2009 Red Hat Inc.,
91 L<http://et.redhat.com/~rjones/febootstrap>.
92
93 This program is free software; you can redistribute it and/or modify
94 it under the terms of the GNU General Public License as published by
95 the Free Software Foundation; either version 2 of the License, or
96 (at your option) any later version.
97
98 This program is distributed in the hope that it will be useful,
99 but WITHOUT ANY WARRANTY; without even the implied warranty of
100 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
101 GNU General Public License for more details.
102
103 You should have received a copy of the GNU General Public License
104 along with this program; if not, write to the Free Software
105 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.