Linux From Scratch: Version 5.1-pre1
Prev | Chapter 9. The End | Next

# The End

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.

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.

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 & shared libraries). This is caused more often by typos than by a problem with the command used.

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.

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:

    logout
    chroot $LFS /tools/bin/env -i \
        HOME=/root TERM=$TERM PS1='\u:\w\$ ' \
        PATH=/bin:/usr/bin:/sbin:/usr/sbin \
        /tools/bin/bash --login

Now run the following command:

    /tools/bin/find /{,usr/,usr/local/}{bin,sbin,lib} -type f \
       -exec /tools/bin/strip --strip-debug '{}' ';'

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.

It may be a good idea to create an `/etc/lfs-release` 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:

    echo 5.1-pre1 > /etc/lfs-release

Prev | Home | Next
The End | Up | Get Counted