LDP/LDP/retired/LFS/chapter09/theend.xml

62 lines
3.0 KiB
XML

<sect1 id="ch09-theend">
<title>The End</title>
<?dbhtml filename="theend.html" dir="chapter09"?>
<para>Well done! You have finished installing your LFS system. It may have
been a long process, but we hope it was worth it. We wish you a lot of fun
with your new shiny custom built Linux system.</para>
<para>Now would be a good time to strip all debug symbols from
the binaries on your LFS system. If you are not a programmer and don't plan
on debugging your software, then you will be happy to know that you can
reclaim a few tens of megs by removing debug symbols. This process causes
no inconvenience other than not being able to debug the software fully
anymore, which is not an issue if you don't know how to debug.</para>
<para>Disclaimer: 98% of the people who use the command mentioned below don't
experience any problems. But do make a backup of your LFS system before
you run this command. There's a slight chance it may backfire on you and
render your system unusable (mostly by destroying your kernel modules
and dynamic &amp; shared libraries). This is caused more often by typos
than by a problem with the command used.</para>
<para>Having said that, the --strip-debug option we use to strip is quite
harmless under normal circumstances. It doesn't strip anything vital from
the files. It also is quite safe to use --strip-all on regular programs
(don't use that on libraries - they will be destroyed), but it's not as
safe, and the space you gain is not all that much. But if you're tight on
disk space every little bit helps, so decide for yourself. Please refer to
the strip man page for other strip options you can use. The general idea
is to not run strip on libraries (other than --strip-debug), just to be
on the safe side.</para>
<para>If you are planning to go ahead and perform the strip, special care is
needed to ensure you're not running any binaries that are about to be stripped
-- including the active bash shell. Therefore you'll need to exit the chroot
environment and reenter it using a modified chroot command:</para>
<screen><userinput>logout
chroot $LFS /tools/bin/env -i \
&nbsp;&nbsp;&nbsp;&nbsp;HOME=/root TERM=$TERM PS1='\u:\w\$ ' \
&nbsp;&nbsp;&nbsp;&nbsp;PATH=/bin:/usr/bin:/sbin:/usr/sbin \
&nbsp;&nbsp;&nbsp;&nbsp;/tools/bin/bash --login</userinput></screen>
<para>Now run the following command:</para>
<screen><userinput>/tools/bin/find /{,usr/,usr/local/}{bin,sbin,lib} -type f \
&nbsp;&nbsp;&nbsp;-exec /tools/bin/strip --strip-debug '{}' ';'</userinput></screen>
<para>Quite a number of files will be reported as having their file format not
recognized. Most of these are scripts instead of binaries. These warnings can
be safely ignored.</para>
<para>It may be a good idea to create an <filename>/etc/lfs-release</filename>
file. By having this file it is very easy for you (and for us if you are going
to ask for help with something at some point) to find out which LFS version
you have installed on your system. Create this file by running:</para>
<screen><userinput>echo &version; &gt; /etc/lfs-release</userinput></screen>
</sect1>