Trimming down FreeBSD

View: New views
2 Messages — Rating Filter:   Alert me  

Trimming down FreeBSD

by Rajkumar S-3 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi,

I am testing with NanoBSD with configuration appended at end of this
mail. Currently the image is about 68M. When I checked there are about
11M in /usr/include, and another 11M in /usr/share/. in that 2.5M
/usr/share/groff_font, 1.5M    /usr/share/examples etc could be
trimmed. Which options needs to be given to remove these directories
from the build? Does't NO_TOOLCHAIN take care of /usr/include ?


with regards,

raj

My current build configs are:

NANO_NAME=custom
NANO_SRC=/usr/src
NANO_KERNEL=MYCONF
NANO_IMAGES=2

CONF_BUILD='
'

CONF_INSTALL='
'

CONF_WORLD='
NO_ATM=YES
NO_BIND=YES
NO_BIND_DNSSEC=YES
NO_BIND_ETC=YES
NO_BIND_LIBS_LWRES=YES
NO_BIND_MTREE=YES
NO_BIND_NAMED=YES
NO_BIND_UTILS=YES
NO_BLUETOOTH=YES
NO_CVS=YES
NO_DICT=YES
NO_FORTRAN=YES
NO_GAMES=YES
NO_GCOV=YES
NO_GDB=YES
NO_GPIB=YES
NO_HESIOD_LIBC=YES
NO_HTML=YES
NO_I4B=YES
NO_INFO=YES
NO_IPFILTER=YES
NO_KERBEROS=YES
NO_KLDLOAD=YES
NO_LPR=YES
NO_MAILWRAPPER=YES
NO_MAN=YES
NO_MODULES=YES
NO_NIS=YES
NO_OBJC=YES
NO_P1003_1B=YES
NO_PAM=YES
NO_PROFILE=YES
NO_TOOLCHAIN=YES
NO_USB=YES
NO_VINUM=YES
NO_SENDMAIL=YES
NO_SHAREDOCS=YES
NO_RESCUE=YES
IPFIREWALL_DEFAULT_TO_ACCEPT=yes
IP6FIREWALL_DEFAULT_TO_ACCEPT=yes
'

FlashDevice SanDisk 1G

cust_nobeastie() (
    touch ${NANO_WORLDDIR}/boot/loader.conf
    echo "beastie_disable=\"YES\"" >> ${NANO_WORLDDIR}/boot/loader.conf
)

customize_cmd cust_comconsole
customize_cmd cust_install_files
customize_cmd cust_allow_ssh_root
customize_cmd cust_nobeastie
_______________________________________________
freebsd-small@... mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-small
To unsubscribe, send any mail to "freebsd-small-unsubscribe@..."

Re: Trimming down FreeBSD

by Eugene Grosbein :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Mon, Jun 09, 2008 at 04:32:08PM +0530, Rajkumar S wrote:

> I am testing with NanoBSD with configuration appended at end of this
> mail. Currently the image is about 68M. When I checked there are about
> 11M in /usr/include, and another 11M in /usr/share/. in that 2.5M
> /usr/share/groff_font, 1.5M    /usr/share/examples etc could be
> trimmed. Which options needs to be given to remove these directories
> from the build? Does't NO_TOOLCHAIN take care of /usr/include ?

Just make another custom script or function that removes
what you do not need. I use following commands to trim both
base system and files installed with packages by scripts called earlier.
Thus, NanoBSD plus 12 installed packages occupied 48Mb only.

cd "$NANO_WORLDDIR"

rm -rf  usr/include/* usr/lib/*.a \
        usr/share/examples/* \
        usr/share/misc/pcvtfonts/* usr/share/syscons/fonts/* \
        usr/share/syscons/keymaps/* usr/share/info/* \
        usr/local/etc/joe/doc/* usr/local/etc/joe/*.dist \
        usr/local/include/* usr/local/info/* usr/local/lib/*.a \
        usr/local/man/* \
        usr/local/share/aclocal/* usr/local/share/doc/* \
        usr/local/share/examples/* usr/local/share/info/* \
        usr/local/share/mc/syntax/* usr/local/share/mc/mc.hlp.*

# prevent Midnight Commander (installed via package) from complaining
touch usr/local/share/mc/syntax/Syntax

# Remove all locale data except of Russian that I use
find usr/local/share/locale -maxdepth 1 | fgrep -v ru | xargs rm -rf

# replace binary /usr/sbin/nologin with small shell script
# that runs under 'sh -p' and says 'This account is currently not available'
ln -f -s /usr/local/nologin usr/sbin/nologin

# remove largest binaries I never use
cd usr/bin
rm -f openssl vi ex view nvi nex nview make makeinfo info vacation
cd ../sbin
rm -f iasl acpidb hostapd amd wpa_supplicant
# EOF

Eugene Grosbein
_______________________________________________
freebsd-small@... mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-small
To unsubscribe, send any mail to "freebsd-small-unsubscribe@..."