发布时间 : 星期六 文章FreeBSD 6.1 入门级Web服务器配置手记更新完毕开始阅读bdddcdda50e2524de5187ec6
FreeBSD 6.1 入门级Web服务器配置手记
关于FreeBSD的介绍,我这里就不写了,大家可以自己找找,有很多
如果你是高手的话,请多多批评指正,因为本人毕竟只研究了3个星期左右,难免出现纰漏 本文的目的,是记录我自己的研究过程,仅作参考,千万不要完全照搬 最好的教程是:http://doc.code365.net/Manual/FreeBSD_HandBook/ 如果大家真心要驾驭FreeBSD,一定要看!
最后,致那些像我一样如果对FreeBSD感兴趣的新手:
一定要有耐心!坚持不下去的时候多想想当年学习Windows的情况^_^说实话,FreeBSD的界面不友好,别说Windwos跟Mac,可能连Linux都不如-_-!不过,在它桀骜不驯的外表下,是一颗强健稳定的心,需要用耐心去征服——并且这也是值得的!
本文阅读说明
QUOTE: (这样的表示在命令行下的输入和执行)
CODE: (这样表示的是选项)
这样表示的是文件内容(如果原文件没有,本文有,请新增;如果原文件有,本文没有,则保持不变;如果原文件有,本文也有,请按照范例修改;如果原文件跟本文都没有,自己看着办吧^_^) 好了,按步骤开始!
一、安装系统
这部分比较简单
出现启动菜单时,按2(禁用acpi启动,服务器不用电源管理) 选择国家->China 选择键盘布局->USA ISO 出现安装菜单,选择Standard
提示需要对硬盘分区,回车,出现分区表,比较简便的方法是按a(使用整个硬盘),分区完成后,按q退出(磁盘分区请参考:http://doc.code365.net/Manual/FreeBSD_HandBook/install-steps.html和http://doc.code365.net/Manual/FreeBSD_HandBook/configtuning-initial.html)
提示选择启动方式->Standard(服务器用的是单系统,所以不需要启动管理器Bootmgr)
提示需要划分lable,回车,出现磁盘编辑画面,比较简便的是按a(自动划分),完成后,按q退出出现安装选项,选择Minimal(最小化安装)
选择安装媒体,当然是CD/DVD,出现提示,再次确认。2-3分钟后安装完成,出现提示,回车确认 提示是否配置网络->Yes
出现菜单,选择接入公网的网卡/接口
提示是否配置ipv6->No
提示是否通过DHCP配置(根据自己情况选择)
出现网络配置界面,依次检查/填好各选项,确认(如果自定义的网络设置,会提示是否立即应用,确认即可) 提示是否将本机作为网关->No 提示是否配置inetd->No
提示是否启用SSH连接(远程控制)->Yes 提示是否应用匿名的FTP->No 提示是否将本机作为NFS服务器->No 提示是否将本机作为NFS客户端->No 提示是否配置系统控制台->No 提示是否设定时区/时间->Yes 提示是否与UTC同步->No 选择区域->Asia 选择国家->China 选择时区->1 出现提示,回车确认
提示是否启用Linux二进制兼容->No(可以兼容90%以上的Linux程序,不过服务器用不上) 提示配置鼠标->No
提示是否永远禁用ACPI->Yes(服务器无需电源管理) 提示是否浏览软件包->No
提示是否增加用户->Yes(在这里配置将来的远程访问用户) 出现菜单,选择User
填好Login ID ,Member groups = wheel , Password后确认(提示:FreeBSD默认情况下只允许wheel用户组成员远程登录,需要修改关键配置时可以su到root,这是“”洋葱式“安全机制的体现) 退出编辑用户菜单
提示配置root密码,回车确认 输入2次密码
提示是否编辑其它选项->No
退出安装菜单 出现提示->Yes
第一次启动时,会提示生成远程访问密钥,回车确认
二、系统更新和优化
同步系统时间
QUOTE:
# ntpdate clepsydra.dec.com 安装cvsup
QUOTE:
# pkg_add –r cvsup-without-gui ; rehash
选择需要更新的内容(如果不在乎更新时间的话可以跳过)
可以有选择地更新系统源码和ports树,参考http://doc.code365.net/Manual/FreeBSD_HandBook/cvsup.html
关于release跟stable的选择:从字面上理解,stable是稳定版之意,并且好多人认为stable是做服务器的最佳选择。不过官方称stabel只不过是current的一个分支,并不推荐用于生产服务器,生产级服务器应选择release(正式发行)版本http://doc.code365.net/Manual/FreeBSD_HandBook/current-stable.html QUOTE:
# ee /usr/share/examples/cvsup/standard-supfile # ee /usr/share/examples/cvsup/ports-supfile 更新系统源码跟ports树
根据自己网络情况选择速度最快的cvsup镜像站点,官方列表http://doc.code365.net/Manual/FreeBSD_HandBook/cvsup.html
QUOTE:
# cvsup -L 2 -h cvsup3.tw.freebsd.org /usr/share/examples/cvsup/standard-supfile ; rehash ;
# cvsup –L 2 –h cvsup3.tw.freebsd.org /usr/share/examples/cvsup/ports-supfile ; rehash
编译内核 QUOTE:
# dmesg | more #获得当前设备资源列表 # cd /usr/src/sys/i386/conf # cp GENERIC MYKERNEL # ee MYKERNEL
# 具体选项请参考http://doc.code365.net/Manual/FreeBSD_HandBook/kernelconfig-config.html
其中需要注意的是 CODE:
ident MYKERNEL #内核标记名称 options QUOTA #启用磁盘配额 QUOTE:
# cd /usr/src
# make -j4 buildworld ; rehash ; make –j4 buildkernel KERNCONF=MYKERNEL ; rehash ; make –j4 installkernel KERNCONF=MYKERNEL ; reboot QUOTE:
# cd /usr/src
# mergemaster –p ; make –j4 installworld ; mergemaster ; reboot (出现提示,回车继续,或输入i安装) QUOTE:
#cd /usr/obj
#chflags -R noschg * #rm -rf * 网络优化
QUOTE:
# ee /etc/sysctl.conf
CODE:
net.inet.ip.check_interface=1 net.inet.tcp.blackhole=2 net.inet.udp.blackhole=1
net.inet.tcp.recvspace=65535 net.inet.tcp.sendspace=65535 kern.ipc.somaxconn=32768 kern.ipc.maxsockbuf=2097152 net.inet.ip.redirect=0
net.inet.icmp.icmplim=100
net.inet.tcp.always_keepalive=1 net.inet.tcp.delayed_ack=1
net.inet.udp.maxdgram=65535
net.local.stream.sendspace=65535 net.local.stream.recvspace=65535 kern.maxfiles=65536
kern.maxfilesperproc=65536 net.inet.udp.checksum=1 net.inet.tcp.msl=7500
net.inet.tcp.syncookies=1 net.inet.icmp.bmcastecho=0 net.inet.icmp.maskrepl=0 kern.securelevel=0 QUOTE:
# ee /boot/loader.conf
CODE:
kern.maxdsiz=\kern.ipc.maxsockets=\kern.ipc.nmbclusters=\kern.ipc.nmbufs=\kern.ipc.nsfbufs=\
net.inet.tcp.tcbhashsize=\