FreeBSD5安装后的优化

来源:岁月联盟 编辑:zhu 时间:2008-01-19
FreeBSD5安装后的优化内容简介:【FreeBSD教程】一、安装 (sysinstall) 1、Distribution中,仅选择minimal后,选择Customization。添加man,出现问题时可以查看命令参数;添加src,之后cvsup可以加快速度,不必读取重复的文件。 2、Users中,添加用户后   【FreeBSD教程】一、安装(sysinstall)

  1、Distribution中,仅选择minimal后,选择Customization。添加man,出现问题时可以查看命令参数;添加src,之后cvsup可以加快速度,不必读取重复的文件。

  2、Users中,添加用户后,把用户路径中的/home/abc改为/usr/abc。因为/usr的容量大。或者还可以通过增大/home的容量,不过比较麻烦。然后,要把shell改为csh,为了使用方便(也为了本文第七部分的设置)。

  二、编译优化(make.conf)

  注重:要屏蔽某个boolean选项,并不是标记no或false!而是整行删掉!

  1、编译器选项
CPUTYPE=athlon-xp##本人使用AthlonXP 2500 ,不同的CPU请参考man make.confCFLAGS = -mfpmath=sse -mmmx -msse -m3dnow -maccumulate-outgoing-args -minline-all-stringops##不建议使用O2、O3、Os的优化,因为不是全部应用程序 可以稳定工作于O2、O3、Os。况且最多仅获得7%的额外性能。## CFLAGS的默认为"-O1 -pipe",不需要覆盖,所以使用 =。## 不建议使用-f...系列优化,因为不是全部应用程序可以对此稳定工作。## -mfpmath=sse:PentiumIII兼容的CPU可以打开-mfpmath=sse来代替传统i387的浮点运算,加快速度。## -mfpmath=pni: Pentium4Prescott兼容的CPU可以打开-mfpmath=pni来代替传统i387的浮点运算,加快速度。## -mmmx:打开mmx指令来增加代码性能。适用于PentiumMMX兼容CPU。## -msse:打开sse指令来增加代码性能。适用于PentiumIII兼容CPU。## -msse2:打开sse2指令来增加代码性能。适用于Pentium4兼容CPU。## -mpni:打开pni指令来增加代码性能。适用于Pentium4Prescott兼容CPU。## -m3dnow:打开3DNow!指令来增加代码性能。适用于K6、Athlon兼容CPU。## -maccumulate-outgoing-args -minline-all-stringops通过减少某些动作来实现加速,经作者实验,比较稳定。CXXFLAGS = -fmemoize-lookups -fsave-memoized## make.conf提到的C  代码优化。2、系统编译选项KERNCONF=(FILENAME)## 内核配置文件名,将(FILENAME)更改为自己的内核文件名。NOINET6=true## 尽量不使用用IPV6协议。NOATM=true## 尽量不使用ATM,本选项仅适用于非ADSL用户。NO_SENDMAIL=true## 尽量不使用SENDMAIL。NOGAMES=true## 不安装所有游戏NO_I4B=true## 尽量不使用ISDN For BSD。NO_IPFILTER=true## 尽量不使用IP Filter。BATCH=yes## 安静编译,编译时跳过所有提问。适用于某些隔夜一次性编译程序的用户。3、X-Window编译选项XFREE86_VERSION=4## 尽量使用4.3版本的X-WindowWITH_SETUID_LUIT=yes## 不使用本项的话,运行xterm会出现luit错误的问题.WITH_GTK2=yes## 尽量使用GTK2为gtk应用程序的运行库USE_MMX_ASM=yes## 编译Xfree86时,尽量使用MMX代码,仅适用于PentiumMMX兼容CPU.USE_3DNOW_ASM=yes## 编译Xfree86时,尽量使用3DNOW代码,仅适用于K6、Athlon兼容CPU.WITHOUT_KDE_MENUS=yes## 使用GNOME时,不添加KDE程序在菜单上。4、多媒体编码选项WITH_CDPARANOIA=yesWITH_AALIB=yesWITH_ESOUND=yesWITH_FAAD=yesWITH_FLAC=yesWITH_FREETYPE=yesWITH_GDKPIXBUF=yesWITH_GSM=yesWITH_HERMES=yesWITH_JPEG=yesWITH_LADSPA=yesWITH_LAME=yesWITH_LIBA52=yesWITH_LIBAUDIOFILE=yesWITH_LIBCACA=yesWITH_LIBFAME=yesWITH_LIBMIKMOD=yesWITH_LIBMPEG2=yesWITH_LIBMUSICBRAINZ=yesWITH_LIBSHOUT=yesWITH_LIBSIDPLAY=yesWITH_LIBSNDFILE=yesWITH_LIBTHEORA=yesWITH_MAD=yesWITH_NAS=yesWITH_PANGO=yesWITH_PNG=yesWITH_SDL=yesWITH_SMOOTHWAVE=yesWITH_SPEEX=yesWITH_SWFDEC=yesWITH_VORBIS=yesWITH_VORBISIDEC=yesWITH_XINE=yesWITH_XVID=yes## 以上所有多媒体选项仅在应用程序支持时打开。4、应用程序编译选项WANT_HUGE_STACK_SIZE=yes## 为Python代码的应用程序提供巨大的Stack。WITH_GDM=yes## 为某些窗口治理器提供GDM链接。WITHOUT_MAILNEWS=yes## 取消Mozilla的邮件新闻功能,加快编译时间。WITHOUT_COMPOSER=yes## 取消Mozilla的网页编辑功能,加快编译时间。WITHOUT_LDAP=yes## 取消Mozilla的LDAP功能,加快编译时间。WITHOUT_CHATZILLA=yes## 取消Mozilla的IRC聊天功能,加快编译时间。WITHOUT_XMLTERM=yes## 取消Mozilla的XML终端功能,加快编译时间。#WITH_RTC=yes## 为某些应用程序提供实时时钟支持,但可能会造成某些多媒体程序不稳定。WITH_GLX=yes## 为某些应用程序提供GLX加速绘图支持。WITH_TTF_BYTECODE_ENABLED=yes## 为某些应用程序提供双字节支持。WITH_OPTIMIZED_CFLAGS=yesWITH_OPTIMIZED_CXXFLAGS=yesWITH_OPTIMIZE=yes## 尽量使用更高级编译优化三、内核优化(make kernel)options PQ_HUGECACHE## 为1024k二级缓存的CPU提供支持options PQ_LARGECACHE## 为512k二级缓存的CPU提供支持options PQ_MEDIUMCACHE## 为256k二级缓存的CPU提供支持options PQ_SMALLCACHE## 为128k二级缓存的CPU提供支持options CPU_ATHLON_SSE_HACKoptions CPU_ENABLE_SSE## 为Athlon系列CPU提供SSE支持options CPU_SUSP_HLT## 打开CPU空闲节能。options CPU_UPGRADE_HW_CACHEoptions CPU_WT_ALLOCoptions NO_MEMORY_HOLE## AMD系列CPU优化##某些显卡可以打开DRM支持来加快显示速度,请参考/usr/src/sys/conf/NOTES和/usr/src/sys/i386/conf/NOTES,本文省略。四、启动优化(loader.conf)autoboot_delay="2"## 设置启动等待时间为2秒。hw.ata.atapi_dma=1## 打开ATA33以上接口的硬盘的DMA传输,加快存取速度。kern.ipc.maxsockets="16384"## 增大线程间套接数量net.inet.tcp.tcbhashsize="2048"## 增大TCP控制块数量beastie_disable="YES"## 关闭小恶魔图像启动菜单五、系统首选项(rc.conf)background_dhclient="YES"## 不等待DHCP执行完毕,加快启动速度。keyrate="fast"## 最大化键盘速率sendmail_enable="NONE"sendmail_submit_enable="NO"sendmail_outbound_enable="NO"sendmail_msp_queue_enable="NO"## 关闭SENDMAILclear_tmp_enable="YES"## 按时清除/var/tmp文件tcp_extensions="YES"## 扩展TCP六、系统资源优化(sysctl.conf)security.bsd.see_other_uids=0## 不答应用户看到所有系统进程kern.ipc.maxsockbuf=8388608## 线程套接字缓冲区kern.ipc.shm_use_phys=1## 仅为线程提供物理内存支持,需要256兆以上内存。kern.ipc.shmmax=67108864## 线程可使用的最大共享内存kern.ipc.shmall=32768## 最大线程数量kern.coredump=0## 程序崩溃时不记录net.local.stream.sendspace=65536net.local.stream.recvspace=65536## 本地数据流接收和发送空间net.local.dgram.maxdgram=16384## 本地数据包最大数量net.local.dgram.recvspace=65536## 本地数据包接收空间net.inet.tcp.rfc1644=1net.inet.tcp.rfc3042=1net.inet.tcp.rfc3390=1## 某些加快网络性能的协议,请参考RFC文章。net.inet.tcp.mssdflt=1460## 数据包数据段大小,ADSL为1452。net.inet.tcp.sendspace=65536net.inet.tcp.recvspace=1048576## 网络数据接收和发送空间net.inet.tcp.inflight_enable=1## 为网络数据连接时提供缓冲net.inet.tcp.minmss=1460## 数据包数据段最小值,ADSL为1452。net.inet.raw.maxdgram=65536## 本地数据最大数量net.inet.raw.recvspace=65536## 本地数据流接收空间七、环境设置(.cshrc)alias ls ls -GF## 彩色化lssetenv EDITOR ee## 默认编辑器为eesetenv PAGER less## 默认分页器为less,比more要方便。set nobeepset prompt = '%n@%/%# 'set filecset autolist##非凡注重最后一行。八、编译的缓存(ccache)CCACHE是为程序编译提供缓存,通过减少重复代码编译次数,加快编译时间。安装过程:sucd /usr/ports/devel/ccache/make install cleancd /usr/mkdir ccachecd /usr/sbinln -s /usr/local/bin/ccache gccln -s /usr/local/bin/ccache ccln -s /usr/local/bin/ccache c  ln -s /usr/local/bin/ccache g  ln -s /usr/local/bin/ccache cppecho "setenv CCACHE_DIR /usr/ccache" >> /root/.cshrcrehashexit最后可以通过运行ccache -s来观看当前编译状况。好了,现在就可以cvsup系统代码和ports tree了。

图片内容