Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

我的Free BSD5.4架设WEB系统笔记(apache2+php+mysql+zend+eaccelerator+pureftpd)

[复制链接]
rendian 发表于 2006-2-17 09:45:46 | 显示全部楼层 |阅读模式
说明:我原来使用win2003系统(PIII-1000+512M SD+40GHDD),现在改用Free BSD 5.4 stable (服务器版)。速度提升了40%!强烈建议自己有服务器的朋友使用BSD 建立自己WEB 系统,除非你需要ASP

本文有详细的安装设置过程,是我个人笔记的保留!按照下面的步骤一定可以实现(即使你不会)。

FreeBSD5.4+APACHE2.0.55+PHP4.4.2+MYSQL4.0.26+PHPMYADMIN2.7+ZEND2.62+eaccelerator(速度提升50%,不得不装)

要玩好freebsd这种unix类操作系统,我觉得首先需要有下面两个基本能力,否则的确会非常艰难。
1. 良好的英文能力。freebsd虽然也有图形界面(GUI),但如果是做服务器,更多是靠命令行(如同msdos)操作,在我这里web server的例子里,几乎是纯命令行作业。所以英文能力是很重要的。
2. unix基础。基本的unix指令要知道,比如 ls、pwd、cp、man、rm、mkdir、rmdir 等。尤其要知道 man 命令的作用。还要知道当屏幕显示过多内容的时候,需要用到scroll lock和more指令。下面简单举例说明几个指令的用法。
ls (列目录,类似于msdos的dir)
ls | more (列目录,使用管道和more命令分屏显示过多的内容)
cp abc abc_bak (文件的拷贝,类似于msdos的copy)
cp -R abc abc_bak(目录的拷贝)
rm -R abc/* (子目录abc下的所有文件及子目录删除,类似于msdos的del,但允许加-R选项针对子目录操作)
man ls (查ls命令的详细说明)
mv abc ../abc_bak (移动并改名abc为父目录下的abc_bak,abc可以为文件也可以为子目录)
3. 有一本freebsd handbook,纸版的当然好,电子版的也不错:

http://www.freebsd.org.cn/snap/doc/zh_CN.GB2312/books/handbook/

1.首先,选择Standard安装,这也是推荐的安装模式。还有一种mini安装,安装出来的系统是最小的,运行效率最高,但是可能你会面临更多的调整。
2.硬盘分区及unix分区配额分配
我作为初学者,选择了standard模式安装,随后进入了FREEBSD的fdisk程序界面,和msdos的fdisk很像,但屏幕下方的提示更多更友好。如果你有两块或更多的硬盘,那么fdisk会先问你需要在那个硬盘上做分区。由于我是做服务器,不存在双系统等问题,所以用上下箭头选择已有的分区并按d键全部删除这些已有的分区使其成为空盘,再按a自动分配为一个大分区,最后按q退出fdisk,就这么简单地分好了一个硬盘的区。
然后sysinstall会提示你的服务器是否需要使用BootMgr,如果你不需要多重引导,那么可以选Standard,我在这个地方选择的是BootMgr——允许多重引导。
随后使用Disklabel创建unix分区并分配分区空间。该画面和fdisk有些类似,你可以用上下方向键选择需要的分区,然后屏幕下方的提示按键并按照自己的要求划分分区。我在这里采用了默认的方法:选a自动划分,选q退出。

特别提示:mysql安装默认会安装到/var分区,如果你不想改变mysql的默认安装,那么你在这里应该把自动划分出来的/var分区调整一下,调整的更大些。/var分区默认只有256M,稍微大的数据库就不够用了。我在下面的mysql安装中没有使用默认的安装分区/var,而是改到了/usr分区,所以我在这里不需要改动任何分区的大小。
下面是我的分区(512M内存,40G硬盘):
/512M
swap 2048M
/var 1024M (mysql 的默认在这里)
/tmp 2048M
/usr  10240M
/home 其他全部(WEB数据就在这里,含FTP用户数据)


3.安装过程的提示选择
分区及配额完成后,随后就会出现软件包选择画面,你可以选择Developer或者是其他什么模式。作为web服务器,我觉得选Developer好些,不过我当时不太明白,什么也没选,直接选了EXIT。其实没选也不要紧,后面还有机会。
随后的画面是提示你从什么介质安装,我们这里当然是自己烧好的ISO光盘了——选CD/DVD,机器都没起来,别的介质其实也选不成。
选了介质之后,画面提示:
User Confirmation Requested
Last Chance! Are you SURE you want to continue the installation?
当你确定后,之前的分区设置即将生效,硬盘中的原有东西将会被删除,并且开始安装初始的内核系统。
初始内核的安装是很快的(10分钟),而且具有多数流行硬件,我用的FB5.4很顺利认出了所有硬件。
随后开始安装后的设置,首先会提问你是否采取PPP/SLIP的模式连通网络,如果不是可以选NO,我是ADSL的DHCP模式上网,所以选NO。如果你是拨号模式,根据提示操作吧。
随后是要求你输入你上网的网卡的TCP/IP设置。如果是DHCP,把网线接好,机器会自动获取设置。如果是静态IP,你可以根据自己的机器情况设置IP、掩码、网关、DNS等。
随后机器会提问以下问题:

是否设置机器为网关GATEWAY——NO(我们是web server,不是网关)
是否设置机器为inetd超级服务器——YES(暂时使用FTP,后来我们可以改用pureftpd)
然后提示编辑:inetd.conf 文件,把第一行#ftp前的#去掉。
是否设置为NFS SERVER/CLIENT——NO(我们不是这个用途)
是否设置为anonymous FTP——NO(我们不需要这种用途)
是否需要设置sshd——YES(我们将通过这种较为安全模式远程控制服务器)
选择时区——按照提示选择即可,会提示你北京时间缩写是"CST"
是否需要LINUX兼容性——YES(或许我会为服务器安装一些LINUX软件,例如CS SERVER )
是否需要设置system console——默认的挺好,刚开始的学的就不必改了。
是否需要配置鼠标——NO(我看不出来作为一个托管在电信的webserver有什么必要配置鼠标)
是否需要添加用户——添加一个吧,根据提示添加即可,用户组写成wheel,以便你可以用这个用户远程登录服务器后su到root进行管理。添加完这个用户之后,会问你要root的密码,输入即可。如果不添加用户,会直接让你设置root的密码。
其实,这些安装后设置,只要英文良好,按照提示做,不会有什么问题的。

安装后,可以进入/stand/sysinstall的configure进行最终的Packages和Distributions选择。
Packages是已经编译好的二进制包,可以直接运行。默认标准安装完之后,作为Web Server,我看了一下也就需要 net下的cvsup(在线升级用)和 archivers 下的unzip(某些zip包可能会用到)这两个包。选中后执行安装,就会把它们装到系统里。
随后进入Distributions 里安装代码。强烈建议各位一定要把 src 代码全部选中(不过至少要选择:src 全部和ports)。好处。另一个就是ports,不用说,也是要全装的。我在这里,就是选择了src和ports。选中后执行安装,就会把它们安装到系统里了。

至此,一个初始的FREEBSD5.4就装完了。虽然看着多,实际上也就30分钟时间。如果你是第一次装FD,这个时候还是不要着急进行后面的操作,可以先看看手册,熟悉熟悉FREEBSD。

下面关于:ADSL 和 源码升级的介绍!
1. 在ee /etc/rc.conf 中加入:

network_interfaces="bge0 lo0" (bge0 是我的1000M卡,如果不知道,请用ifconfig 查看)
gateway_enable="YES"
ppp_enable="YES"
ppp_mode="ddial"
ppp_nat="YES"
ppp_profile="adsl"

2. 在 ee /etc/resolv.conf 中加入:
domain  xpdd.net (我的米)
nameserver      202.102.192.68
nameserver      202.102.199.68 (DNS,全国通用)

3.在 ee /etc/ppp/ppp.conf 中的内容替换为:

default:
set log phase tun command (前面有空格)
enable dns(前面有空格)
adsl:
set device PPPoE:bge0(选择网卡)(前面有空格)
set speed sync                   (前面有空格)
set mru 1492                    (前面有空格)
set mtu 1492                   (前面有空格)
set dial                            (前面有空格)
set login                          (前面有空格)
add default HISADDR        (前面有空格)

set authname 帐号        (前面有空格)
set authkey    密码       (前面有空格)

然后启动ADSL :
ppp -background adsl
提示为:
Working in background mode
Using interface: tun0
PPP enabled
表示OK。

用ifconfig 看公网地址:inet 220.179.XX.XX--> 220.179.XXX.XX netmask
这时候: ping www.sohu.com 成功了。


2. 系统安装完后的第一步,是进行CVSUP,立刻同步你的src源代码和ports代码。关于cvsup的详细内容,请看FREEBSD手册的cvsup部分,此处我只介绍在本例中的过程。由于cvsup需要互联网环境,所以需要接好你的网线了。进入下列目录:
#cd /usr/src/share/examples/cvsup
里面是几个cvsup的supfile例子。我们可以直接修改这些例子为我们所用。首先编辑standard-supfile,这个文件是升级内核源代码的例子文件。我个人喜欢用ee编辑文件(因为有使用提示,且使用习惯接近windows下的),输入下面的指令:
#ee standard-supfile  (正式版)
#ee stable-supfile (安全稳定版)推荐
能看见里面东西很多,但都不用改,它默认指定是升级所有的系统源代码——这是有好处的。我们只需要修改一个地方,下翻页找到下面这行:
*default host=CHANGE_THIS.FreeBSD.org
改成指定的freebsd官方cvsup服务器即可:
*default host=cvsup.FreeBSD.org
或更快的国内freebsd cvsup服务器:
*default host=cvsup.cn.FreeBSD.org (推荐,速度快)
*default host=cvsup.FreeBSDChina.org
退出并保存,运行下面的指令开始cvsup在线升级代码:
#cvsup standard-supfile (正式版)
#cvsup stable-supfile(安全稳定版)推荐
然后
#cvsup -g -L 2 stable-supfile

系统源代码升级,我的ADSL大概用30分钟左右即可完成。

#cvsup ports-supfile
然后
#cvsup -g -L 2 stable-supfile
这个升级过程大约也要30分钟左右。至此,所有的代码升级完毕。

3. MAKE WORLD和定制内核。
关于MAKE WORLD的详细内容,也应该详细翻阅手册相关部分,下面继续介绍本例中的情况。上面的升级完成后,首先需要重新编译系统(MAKE WORLD)。由于我们的系统是刚装的,干净的,所以没有那么多难题。进入:
#cd /usr/src
#make buildworld  编译
会开始一个30分钟左右的编译过程,如果编译没有什么问题,继续:
#make installworld  安装
即可更新系统为最新版,随后就可以重启机器了。

下来,我们需要定制内核。定制内核的必要性我想就不必我说了,各位也应该好好看看手册相关部分。
具体操作,进入下面的目录:
#cd /usr/src/sys/i386/conf
能看到一个名为GENERIC的文件。把这个文件拷贝一个副本,例如名为dd,这个副本将是你将来内核的配置文件。
#cp GENERIC dd
#ee dd
用ee编辑SAMPLEKERN这个文件,按照上面提到的那个帖子编辑,根据你自己的硬件情况、软件需求编辑,保存后开始编译内核。由于我们CVSUP过了,所以用手册上提到的“新”方法编译。
#cd /usr/src
make buildkernel KERNCONF=dd
这个编译过程大概要20分钟,编译完先不要着急install,先备份一下旧内核,以免有意外。
#cd /boot
#cp -R kernel kernel.old
随后安装内核:
#make installkernel KERNCONF=dd
安装好之后,可以重启了。
我的内核

  1. #
  2. # GENERIC -- Generic kernel configuration file for FreeBSD/i386
  3. #
  4. # For more information on this file, please read the handbook section on
  5. # Kernel Configuration Files:
  6. #
  7. #    http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig-config.html
  8. #
  9. # The handbook is also available locally in /usr/share/doc/handbook
  10. # if you've installed the doc distribution, otherwise always see the
  11. # FreeBSD World Wide Web server (http://www.FreeBSD.org/) for the
  12. # latest information.
  13. #
  14. # An exhaustive list of options and more detailed explanations of the
  15. # device lines is also present in the ../../conf/NOTES and NOTES files.
  16. # If you are in doubt as to the purpose or necessity of a line, check first
  17. # in NOTES.
  18. #
  19. # $FreeBSD: src/sys/i386/conf/GENERIC,v 1.413.2.13 2005/04/02 16:37:58 scottl Exp $

  20. machine                i386
  21. #cpu                I486_CPU
  22. #cpu                I586_CPU
  23. cpu                I686_CPU
  24. ident                dd

  25. # To statically compile in device wiring instead of /boot/device.hints
  26. #hints                "GENERIC.hints"                # Default places to look for devices.

  27. options         SCHED_ULE                # 4BSD scheduler
  28. options         INET                        # InterNETworking
  29. #options         INET6                        # IPv6 communications protocols
  30. options         FFS                        # Berkeley Fast Filesystem
  31. options         SOFTUPDATES                # Enable FFS soft updates support
  32. options         UFS_ACL                        # Support for access control lists
  33. options         UFS_DIRHASH                # Improve performance on big directories
  34. #options         MD_ROOT                        # MD is a potential root device
  35. #options         NFSCLIENT                # Network Filesystem Client
  36. #options         NFSSERVER                # Network Filesystem Server
  37. #options         NFS_ROOT                # NFS usable as /, requires NFSCLIENT
  38. #options         MSDOSFS                        # MSDOS Filesystem
  39. #options         CD9660                        # ISO 9660 Filesystem
  40. options         PROCFS                        # Process filesystem (requires PSEUDOFS)
  41. options         PSEUDOFS                # Pseudo-filesystem framework
  42. options         GEOM_GPT                # GUID Partition Tables.
  43. options         COMPAT_43                # Compatible with BSD 4.3 [KEEP THIS!]
  44. options         COMPAT_FREEBSD4                # Compatible with FreeBSD4
  45. options         SCSI_DELAY=15000        # Delay (in ms) before probing SCSI
  46. #options         KTRACE                        # ktrace(1) support
  47. options         SYSVSHM                        # SYSV-style shared memory
  48. options         SYSVMSG                        # SYSV-style message queues
  49. options         SYSVSEM                        # SYSV-style semaphores
  50. options         _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions
  51. options         KBD_INSTALL_CDEV        # install a CDEV entry in /dev
  52. #options         AHC_REG_PRETTY_PRINT        # Print register bitfields in debug
  53.                                         # output.  Adds ~128k to driver.
  54. #options         AHD_REG_PRETTY_PRINT        # Print register bitfields in debug
  55.                                         # output.  Adds ~215k to driver.
  56. options         ADAPTIVE_GIANT                # Giant mutex is adaptive.

  57. device                apic                        # I/O APIC

  58. # Bus support.  Do not remove isa, even if you have no isa slots
  59. device                isa
  60. device                eisa
  61. device                pci

  62. # Floppy drives
  63. #device                fdc

  64. # ATA and ATAPI devices
  65. device                ata
  66. device                atadisk                # ATA disk drives
  67. device                ataraid                # ATA RAID drives
  68. device                atapicd                # ATAPI CDROM drives
  69. #device                atapifd                # ATAPI floppy drives
  70. #device                atapist                # ATAPI tape drives
  71. #options         ATA_STATIC_ID        # Static device numbering

  72. # SCSI Controllers
  73. #device                ahb                # EISA AHA1742 family
  74. #device                ahc                # AHA2940 and onboard AIC7xxx devices
  75. #device                ahd                # AHA39320/29320 and onboard AIC79xx devices
  76. #device                amd                # AMD 53C974 (Tekram DC-390(T))
  77. #device                isp                # Qlogic family
  78. #device                mpt                # LSI-Logic MPT-Fusion
  79. #device                ncr                # NCR/Symbios Logic
  80. #device                sym                # NCR/Symbios Logic (newer chipsets + those of `ncr')
  81. #device                trm                # Tekram DC395U/UW/F DC315U adapters

  82. #device                adv                # Advansys SCSI adapters
  83. #device                adw                # Advansys wide SCSI adapters
  84. #device                aha                # Adaptec 154x SCSI adapters
  85. #device                aic                # Adaptec 15[012]x SCSI adapters, AIC-6[23]60.
  86. #device                bt                # Buslogic/Mylex MultiMaster SCSI adapters

  87. #device                ncv                # NCR 53C500
  88. #device                nsp                # Workbit Ninja SCSI-3
  89. #device                stg                # TMC 18C30/18C50

  90. # SCSI peripherals
  91. #device                scbus                # SCSI bus (required for SCSI)
  92. #device                ch                # SCSI media changers
  93. #device                da                # Direct Access (disks)
  94. #device                sa                # Sequential Access (tape etc)
  95. #device                cd                # CD
  96. #device                pass                # Passthrough device (direct SCSI access)
  97. #device                ses                # SCSI Environmental Services (and SAF-TE)

  98. # RAID controllers interfaced to the SCSI subsystem
  99. #device                amr                # AMI MegaRAID
  100. #device                arcmsr                # Areca SATA II RAID
  101. #device                asr                # DPT SmartRAID V, VI and Adaptec SCSI RAID
  102. #device                ciss                # Compaq Smart RAID 5*
  103. #device                dpt                # DPT Smartcache III, IV - See NOTES for options
  104. #device                hptmv                # Highpoint RocketRAID 182x
  105. #device                iir                # Intel Integrated RAID
  106. #device                ips                # IBM (Adaptec) ServeRAID
  107. #device                mly                # Mylex AcceleRAID/eXtremeRAID
  108. #device                twa                # 3ware 9000 series PATA/SATA RAID

  109. # RAID controllers
  110. #device                aac                # Adaptec FSA RAID
  111. #device                aacp                # SCSI passthrough for aac (requires CAM)
  112. #device                ida                # Compaq Smart RAID
  113. #device                mlx                # Mylex DAC960 family
  114. #device                pst                # Promise Supertrak SX6000
  115. #device                twe                # 3ware ATA RAID

  116. # atkbdc0 controls both the keyboard and the PS/2 mouse
  117. device                atkbdc                # AT keyboard controller
  118. device                atkbd                # AT keyboard
  119. device                psm                # PS/2 mouse

  120. device                vga                # VGA video card driver

  121. device                splash                # Splash screen and screen saver support

  122. # syscons is the default console driver, resembling an SCO console
  123. device                sc

  124. # Enable this for the pcvt (VT220 compatible) console driver
  125. #device                vt
  126. #options         XSERVER                # support for X server on a vt console
  127. #options         FAT_CURSOR        # start with block cursor

  128. device                agp                # support several AGP chipsets

  129. # Floating point support - do not disable.
  130. device                npx

  131. # Power management support (see NOTES for more options)
  132. #device                apm
  133. # Add suspend/resume support for the i8254.
  134. device                pmtimer

  135. # PCCARD (PCMCIA) support
  136. # PCMCIA and cardbus bridge support
  137. #device                cbb                # cardbus (yenta) bridge
  138. #device                pccard                # PC Card (16-bit) bus
  139. #device                cardbus                # CardBus (32-bit) bus

  140. # Serial (COM) ports
  141. device                sio                # 8250, 16[45]50 based serial ports

  142. # Parallel port
  143. device                ppc
  144. device                ppbus                # Parallel port bus (required)
  145. device                lpt                # Printer
  146. device                plip                # TCP/IP over parallel
  147. device                ppi                # Parallel port interface device
  148. #device                vpo                # Requires scbus and da

  149. # If you've got a "dumb" serial or parallel PCI card that is
  150. # supported by the puc(4) glue driver, uncomment the following
  151. # line to enable it (connects to the sio and/or ppc drivers):
  152. #device         puc

  153. # PCI Ethernet NICs.
  154. #device                de                # DEC/Intel DC21x4x (``Tulip'')
  155. #device                em                # Intel PRO/1000 adapter Gigabit Ethernet Card
  156. #device                ixgb                # Intel PRO/10GbE Ethernet Card
  157. #device                txp                # 3Com 3cR990 (``Typhoon'')
  158. #device                vx                # 3Com 3c590, 3c595 (``Vortex'')

  159. # PCI Ethernet NICs that use the common MII bus controller code.
  160. # NOTE: Be sure to keep the 'device miibus' line in order to use these NICs!
  161. device                miibus                # MII bus support
  162. #device                bfe                # Broadcom BCM440x 10/100 Ethernet
  163. device                bge                # Broadcom BCM570xx Gigabit Ethernet
  164. #device                dc                # DEC/Intel 21143 and various workalikes
  165. #device                fxp                # Intel EtherExpress PRO/100B (82557, 82558)
  166. #device                lge                # Level 1 LXT1001 gigabit ethernet
  167. #device                nge                # NatSemi DP83820 gigabit ethernet
  168. #device                pcn                # AMD Am79C97x PCI 10/100 (precedence over 'lnc')
  169. #device                re                # RealTek 8139C+/8169/8169S/8110S
  170. #device                rl                # RealTek 8129/8139
  171. #device                sf                # Adaptec AIC-6915 (``Starfire'')
  172. #device                sis                # Silicon Integrated Systems SiS 900/SiS 7016
  173. #device                sk                # SysKonnect SK-984x & SK-982x gigabit Ethernet
  174. #device                ste                # Sundance ST201 (D-Link DFE-550TX)
  175. #device                ti                # Alteon Networks Tigon I/II gigabit Ethernet
  176. #device                tl                # Texas Instruments ThunderLAN
  177. #device                tx                # SMC EtherPower II (83c170 ``EPIC'')
  178. #device                vge                # VIA VT612x gigabit ethernet
  179. #device                vr                # VIA Rhine, Rhine II
  180. #device                wb                # Winbond W89C840F
  181. device                xl                # 3Com 3c90x (``Boomerang'', ``Cyclone'')

  182. # ISA Ethernet NICs.  pccard NICs included.
  183. device                cs                # Crystal Semiconductor CS89x0 NIC
  184. # 'device ed' requires 'device miibus'
  185. #device                ed                # NE[12]000, SMC Ultra, 3c503, DS8390 cards
  186. #device                ex                # Intel EtherExpress Pro/10 and Pro/10+
  187. #device                ep                # Etherlink III based cards
  188. #device                fe                # Fujitsu MB8696x based cards
  189. #device                ie                # EtherExpress 8/16, 3C507, StarLAN 10 etc.
  190. #device                lnc                # NE2100, NE32-VL Lance Ethernet cards
  191. #device                sn                # SMC's 9000 series of Ethernet chips
  192. #device                xe                # Xircom pccard Ethernet

  193. # ISA devices that use the old ISA shims
  194. #device                le

  195. # Wireless NIC cards
  196. #device                wlan                # 802.11 support
  197. #device                an                # Aironet 4500/4800 802.11 wireless NICs.
  198. #device                awi                # BayStack 660 and others
  199. #device                wi                # WaveLAN/Intersil/Symbol 802.11 wireless NICs.
  200. #device                wl                # Older non 802.11 Wavelan wireless NIC.

  201. # Pseudo devices.
  202. device                loop                # Network loopback
  203. device                mem                # Memory and kernel memory devices
  204. device                io                # I/O device
  205. device                random                # Entropy device
  206. device                ether                # Ethernet support
  207. device                sl                # Kernel SLIP
  208. device                ppp                # Kernel PPP
  209. device                tun                # Packet tunnel.
  210. device                pty                # Pseudo-ttys (telnet etc)
  211. device                md                # Memory "disks"
  212. device                gif                # IPv6 and IPv4 tunneling
  213. device                faith                # IPv6-to-IPv4 relaying (translation)

  214. # The `bpf' device enables the Berkeley Packet Filter.
  215. # Be aware of the administrative consequences of enabling this!
  216. # Note that 'bpf' is required for DHCP.
  217. device                bpf                # Berkeley packet filter

  218. # USB support
  219. #device                uhci                # UHCI PCI->USB interface
  220. #device                ohci                # OHCI PCI->USB interface
  221. #device                ehci                # EHCI PCI->USB interface (USB 2.0)
  222. #device                usb                # USB Bus (required)
  223. #device                udbp                # USB Double Bulk Pipe devices
  224. #device                ugen                # Generic
  225. #device                uhid                # "Human Interface Devices"
  226. #device                ukbd                # Keyboard
  227. #device                ulpt                # Printer
  228. #device                umass                # Disks/Mass storage - Requires scbus and da
  229. #device                ums                # Mouse
  230. #device                urio                # Diamond Rio 500 MP3 player
  231. #device                uscanner        # Scanners
  232. # USB Ethernet, requires mii
  233. #device                aue                # ADMtek USB Ethernet
  234. #device                axe                # ASIX Electronics USB Ethernet
  235. #device                cdce                # Generic USB over Ethernet
  236. #device                cue                # CATC USB Ethernet
  237. #device                kue                # Kawasaki LSI USB Ethernet
  238. #device                rue                # RealTek RTL8150 USB Ethernet

  239. # FireWire support
  240. #device                firewire        # FireWire bus code
  241. #device                sbp                # SCSI over FireWire (Requires scbus and da)
  242. #device                fwe                # Ethernet over FireWire (non-standard!)
  243. # Fw by rendian
复制代码

[ 本帖最后由 rendian 于 2006-2-17 10:07 编辑 ]
 楼主| rendian 发表于 2006-2-17 09:46:02 | 显示全部楼层

回复 #1 rendian 的帖子

接着写!系统已经装好了,并且更新到最新稳定、安全版了。下面装MYSQL 、APACHE2、PHP4.4.2、ZEND、EA加速器。

安装软件前,建议先
#ee /etc/make.conf
在文件里添加下面这行:
MASTER_SITE_OVERRIDE=ftp://ftp.freebsdchina.org/pub/FreeBSD/ports/distfiles/${DIST_SUBDIR}
指定ports软件首先从国内下载。否则所有软件从国外下载,有时候速度实在是不行。
A. MYSQL 4.4.2的安装
我选择了MYSQL4.4.2下面根据本例中的情况,进行具体说明。前面说了,mysql默认数据库放在/var分区里,如果你的数据库很大,那么你需要在前面分区的时候把/var分区分到足够大。ldconfig老大建议要4G。如果你和我一样想把数据库放到/usr分区,那么:
#mkdir /usr/db
先在/usr建立一个数据库目录,然后
#cd /usr/ports/databases/mysql40-server
#make install clean
开始下载并开始安装数据库。编译安装完之后,重启机器可以启动mysqld守护进程,可以
#mysql
如果能够见到
mysql>;
然后退出来把ROOT的密码改为“123” 或自己需要的密码。
安装完后产生启动脚本在 /usr/local/etc/rc.d/mysql-server.sh

你可以运行以下命令,看Mysql服务是否已经启动。

# ls | grep mysql
如果有返回信息,就表示Mysql已经启动了,如果没有启动,运行以下命令。

/usr/local/etc/rc.d/mysql-server.sh start

如果你要停止Mysql服务。

/usr/local/etc/rc.d/mysql-server.sh stop

确认服务启动后,我们来测试数据库运行是否正常:
(注:默认情况下Mysql的用户是root,密码为空,所以请立即登录Mysql修改root用户的密码)
mysql
出现下面内容表示运行正常。

Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 16 to server version: 4.0.18
Type 'help;' or '\h' for help. Type '\c' to clear the buffer. ee
mysql>
输入exit退出Mysql。

为Mysql的root用户设置一个口令123456

mysqladmin -u root password "123456"

/usr/local/bin/mysqladmin -u root password "123456"

mysql -uroot -p

/usr/local/share/mysql下有好几个配置示例文件,选择一个适合的拷贝到 /etc/my.cnf
>> my-small.cnf # <= 64M
>> my-medium.cnf # 32M - 64M
>> my-large.cnf # memory = 512M
>> my-huge.cnf # 1G-2G
>> my-innodb-heavy-4G.cnf # 4GB

按照这个规则选择一个合适的文件,比如:
cp my-huge.cnf /etc/my.cnf
ee /etc/my.cnf
在[mysqld]下面加入
bind-address = 127.0.0.1 //安全起见,只允许本机连接数据库
max_connections = 65535 //最大连接数
max_user_connections = 65535 //最大用户连接数,这个设定可以省略
/usr/local/etc/rc.d/mysql-server.sh start //使用脚本启动mysql服务
/usr/local/bin/mysqld_safe & //也可以直接使用这个指令启动mysql服务
另外,如果你需要使用mysqlhotcopy快速备份工具,还需要安装/usr/ports/databases/mysql40-scripts

mysql备份脚本
#!/bin/sh
#This is a ShellScript For Auto MYSQL DB Backup
#Powered by surain
#2005-01-23

#Setting start
DBName=bbs
DBUser=root
DBPasswd=yourpassword
BackupPath=/bak/bakup/db/
TmpPath=/bak/tmp/
LogFile=/bak/surain/admintools/bakupdb.log
#Setting End

Time=$(date +%Y%m%d-%H%M%S)
NewFile="$BackupPath"xshbbs_sqldb_$Time.tar.gz
DumpFile="$TmpPath"xshbbs_sqldb_$Time
rm -rf $DumpFile
mkdir $DumpFile
/usr/local/bin/mysqlhotcopy -u $DBUser -p $DBPasswd $DBName $DumpFile >> $LogFile 2>&1
tar -czv -f $NewFile $DumpFile >> $LogFile
echo "[$NewFile]Backup Success!" >> $LogFile
rm -rf $DumpFile
echo "+-------------------------------------------" >> $LogFile




B. APACHE2.0.55的安装
同样的,由ports装apache,也不会有什么困难:
#cd /usr/ports/www/apache20
#make
#make install
完毕。就这么简单。编译中间可能会提问相关软件gettext的安装选项,全选上吧。编译时可能会提示安装新版textproc/expat2错误,原因是机器里已经有旧版的expat2。只需删除旧版重新安装新版expat2即可:
#cd /usr/ports/textproc/expat2
#make deinstall
#make install
#cd /usr/ports/www/apache2
/usr/local/bin/apachectl start
编辑httpd.conf 的内容:
ee /usr/local/etc/apache2/httpd.conf
#make install [如果使用:mod-php4的话clean暂时不要加上]

来是来安装php4.4.2。进入下面目录
cd /usr/ports/lang/php4
make install clean
然后进入下面目录:
cd /usr/ports/lang/php4-extensions
make install clean
中间会提示你选择编译配置选项。mysql已经默认选上了,下来把GD和openssl也选上吧。其他的选项我也不知道有什么用,就没选了。这样php4.4.2就安装完成了, 然后设置apache2.0.55的php访问能力。
编辑:
ee /usr/local/etc/apache2/httpd.conf 文件,然后在274行(LoadModule php4_module        libexec/apache2/libphp4.so)下面加入:
#php support
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
随后设置网站默认启动页允许为index.php。同样在httpd.conf里编辑,不必退出。找到
DirectoryIndex index.html index.html.var
添加index.php进去,为:
DirectoryIndex index.htm index.html index.php
另外,一个访问量较大的网站,apache默认的150连接肯定是不行的。
具体操作如下。寻找:
<IfModule prefork.c>;
找到这段之后,按照上述帖子的推荐值修改为:
<IfModule prefork.c>;
StartServers 10
MinSpareServers 10
MaxSpareServers 15
ServerLimit 2000
MaxClients 1500 (这个要大于256,ServerLimit 2000这个参数必须同时有)
MaxRequestsPerChild 10000
</IfModule>;

至此,httpd.conf的设置完成。可以保存退出了。
工作还没有完,给php设置ini。如果没什么特殊要求,可以直接使用默认推荐的php.ini。
#cd /usr/local/etc
#cp php.ini-recommeded php.ini

此时,重启机器,http方式访问这台服务器,例如http://192.168.0.1,就能看到apache2的页面了。

此时,可以用ee在服务器默认的web目录里写一个简单的php测试页面,例如
#ee /usr/local/www/data/index.php
文件里面只有这么一行代码:
<? phpinfo(); ?>;
此时再访问http://192.168.0.1,就可以看到本机的php页面信息了。


然后装ZEND ,通过FTP 传到服务器中,根据提示安装即可!./install.sh

最后装eaccelerator加速器:
cd /usr/ports/www/eaccelerator
make isntall clean

然后编辑:ee /usr/local/etc/php.ini

下面[zend]下面加:zend_extension="/usr/local/lib/php/20020429/eaccelerator.so"

然后:
mkdir /tmp/eaccelerator
chown www /tmp/eaccelerator
chmod 0700 /tmp/eaccelerator
即可!

[ 本帖最后由 rendian 于 2006-2-19 11:58 编辑 ]
回复

使用道具 举报

 楼主| rendian 发表于 2006-2-17 09:46:19 | 显示全部楼层

回复 #2 rendian 的帖子

本帖主要介绍:动态米的使用,推荐:www.3322.org 支持HTTP协议,不要安装任何客户端,不占任何内存!爽。

我本来一直使用: www.comexe.cn 的UNIX 客户端,发现在后台运行几天以后,系统慢如牛。发现残生了大量的PIPCLIENT 进程。

下面介绍如何使用:3322.org 的二级米。

cd /root
编辑:DDNS。SH
ee ddns.sh内容!
加入:
#!/bin/sh
fetch "http://user:password@members.3322.org/dyndns/update?system=dyndns&hostname=abc.3322.org&wildcard=OFF"

上面必须同一行,共2行。
保存退出!
然后:
chmod 744 ddns.sh
然后再:

然后输入crontab -e  (修改cron的命令)
VI 编辑器

内容是下面的2行,目的是5分钟更新一次IP。
MAILTO=""
*/5 * * * * /root/ddns.sh

注意*号之间有空格。然后保存推出 !!wq
*********************************
用ee去编辑/var/cron/tabs/root
加入:
MAILTO=""
*/5 * * * * /root/ddns.sh


输入:/roor/ddns.sh

然后保存退出。
*********************************

红色的等同上面的。主要考虑某些人不会VI 编辑器的使用。
用下面的命令查看结果:
crontab -l

如果返回的是:
MAILTO=""
*/5 * * * * /root/ddns.sh

说明,正常了!呵呵。。。。。恭喜你。

[ 本帖最后由 rendian 于 2006-2-19 18:15 编辑 ]
回复

使用道具 举报

qq12300 发表于 2006-2-17 10:14:01 | 显示全部楼层
好东西,文章写的好值得参考
回复

使用道具 举报

yvips809 发表于 2006-2-17 11:46:57 | 显示全部楼层
对FREEBSD不了解

这种系统有桌面系统吗?

如果有,好用吗?

可以完成个人操作系统的大多任务吗?
回复

使用道具 举报

花开不败 发表于 2006-2-17 11:50:00 | 显示全部楼层
建议加精~~
值得学习~~
回复

使用道具 举报

 楼主| rendian 发表于 2006-2-17 15:34:32 | 显示全部楼层

回复 #6 花开不败 的帖子

推荐:freeBSD5.4
回复

使用道具 举报

 楼主| rendian 发表于 2006-6-29 14:44:32 | 显示全部楼层
ddddd
回复

使用道具 举报

 楼主| rendian 发表于 2006-10-16 17:06:32 | 显示全部楼层
bbs.xpdd.net 系统管理员。
回复

使用道具 举报

netviper 发表于 2006-11-1 22:20:27 | 显示全部楼层
好东西啊,肯定顶
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-11-19 23:17 , Processed in 0.031104 second(s), 4 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表