More minimization (now 15.9 MB)
[febootstrap.git] / febootstrap-minimize.pod
1 =head1 NAME
2
3 febootstrap-minimize - Minimize an febootstrap image
4
5 =head1 SYNOPSIS
6
7  febootstrap-minimize [--options] DIR
8
9 =head1 DESCRIPTION
10
11 I<febootstrap-minimize> minimizes an L<febootstrap(8)>-created
12 filesystem.  This means that unneeded files and cruft are removed from
13 the image.
14
15 If no options are given, the default is to minimize the image as much
16 as possible.  This means, for example, that locales are removed so the
17 image will only be usable in US-English, there will be no
18 documentation or manual pages, and the image will only work in a UTC
19 timezone.
20
21 Note that image minimization involves deleting files that have been
22 installed by RPM.  Thus after minimization, it is no longer guaranteed
23 that RPM will function correctly on the image.  You should only do
24 this as a final step for "throwaway" appliances that do not need to be
25 modified or upgraded in future.
26
27 =head1 OPTIONS
28
29 =over 4
30
31 =item B<--all>
32
33 Perform all minimization operations, to produce the smallest possible
34 image.  Note in particular that locales are discarded.
35
36 You can perform all minimization operations I<except> X, Y and Z by
37 doing:
38
39  febootstrap-minimize --all --keep-X --keep-Y --keep-Z ...
40
41 (C<--all> can be omitted since it is the default).
42
43 =item B<--none>
44
45 Start with no minimization operations.  You can specify I<only>
46 minimization operations X, Y and Z like this:
47
48  febootstrap-minimize --none --drop-X --drop-Y --drop-Z ...
49
50 =item B<--keep-locales>
51
52 =item B<--drop-locales>
53
54 Keep or drop locale support.
55
56 =item B<--keep-docs>
57
58 =item B<--drop-docs>
59
60 Keep or drop documentation, man pages and info files.
61
62 =item B<--keep-cracklib>
63
64 =item B<--drop-cracklib>
65
66 Keep or drop cracklib libraries.
67
68 =item B<--keep-i18n>
69
70 =item B<--drop-i18n>
71
72 Keep or drop C</usr/share/i18n>.
73
74 =item B<--keep-zoneinfo>
75
76 =item B<--drop-zoneinfo>
77
78 Keep or drop all timezones (except UTC which is never deleted).
79
80 =item B<--keep-rpmdb>
81
82 =item B<--drop-rpmdb>
83
84 Keep or drop the RPM package database.  Obviously RPM will be
85 completely non-functional if you drop this.
86
87 =item B<--keep-yum-cache>
88
89 =item B<--drop-yum-cache>
90
91 Keep or drop the yum cache.  Note that L<febootstrap(8)> has already
92 deleted this directory unless you ran it with the C<--no-clean>
93 option.
94
95 =item B<--keep-services>
96
97 =item B<--drop-services>
98
99 Keep or drop the C</etc/services> file.  If dropped, this file is
100 replaced with a very minimal one which just lists the most common
101 services.  For less common services you will have to refer to them by
102 port number instead of name.
103
104 =item B<--keep-sln>
105
106 =item B<--drop-sln>
107
108 Keep or drop C</sbin/sln> (statically linked C<ln>).  This is not
109 really required in minimal appliances.
110
111 =item B<--keep-ldconfig>
112
113 =item B<--drop-ldconfig>
114
115 Keep or drop C</sbin/ldconfig>, C</etc/ld.so.cache> and
116 C</var/cache/ldconfig> (the dynamic linking cache).  This is not
117 needed.  Dynamic linking during program execution will be marginally
118 slower.
119
120 =back
121
122 =head1 SEE ALSO
123
124 L<febootstrap(8)>.
125
126 =head1 AUTHORS
127
128 Richard W.M. Jones <rjones @ redhat . com>
129
130 =head1 COPYRIGHT
131
132 (C) Copyright 2009 Red Hat Inc.,
133 L<http://et.redhat.com/~rjones/febootstrap>.
134
135 This program is free software; you can redistribute it and/or modify
136 it under the terms of the GNU General Public License as published by
137 the Free Software Foundation; either version 2 of the License, or
138 (at your option) any later version.
139
140 This program is distributed in the hope that it will be useful,
141 but WITHOUT ANY WARRANTY; without even the implied warranty of
142 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
143 GNU General Public License for more details.
144
145 You should have received a copy of the GNU General Public License
146 along with this program; if not, write to the Free Software
147 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.