Chinaunix首页 | 论坛 | 博客
  • 博客访问: 485857
  • 博文数量: 100
  • 博客积分: 7010
  • 博客等级: 少将
  • 技术积分: 995
  • 用 户 组: 普通用户
  • 注册时间: 2005-04-22 15:44
文章分类

全部博文(100)

文章存档

2006年(90)

2005年(10)

我的朋友

分类:

2006-02-09 14:50:04

近来看见很多人问mysql怎么不能启动,装php有错误等等,也因为看见一些帖子还是按照6年前在linux安装软件的方法来在freebsd下面安装软件,所以写了本贴。这个贴子的目的就是让你快速的安装上一个apache+mysql+php+zendoptimizer+pure-ftpd的环境,另外也为了正确引导被一些不是很标准的安装方法所误导的初学者。这个帖子暂时不涉及内核配置、系统调优,并且只涉及基本部分的软件配置。关于内核和系统调整请参见Handbook。

本贴以#开头的是在命令行下输入的命令,请原样输入。文件配置里面#开头的是注释。在看文章之前要求你最起码了解一点点的*nix基础知识和ee的使用

环境为Freebsd 6-stable。6-release一样适用,5.4也适用,5.4以下如果没什么特别需求就升级到6吧,个人认为不要相信那些什么4.x是最好的这种鬼话,除非你的application只能跑在4.x。

另外,安装的时候请最小安装,ports和src以及任何package都不要装。装完之后要确定你的网络是畅通的。

以下步骤请step by step

首先做一些准备工作
#cd
#ee .cshrc
找个顺眼的地方添加

CODE:
setenv PACKAGESITE ftp://ftp6.jp.freebsd.org/pub/FreeBSD/ports/i386/packages-6-stable/Latest/
(哪个快用哪个)
#source .cshrc
#ee /etc/make.conf (这个文件可能在你的系统里不存在,不过别担心,等会保存的时候他就存在了)
添加

CODE:
MASTER_SITE_OVERRIDE?= ${MASTER_SITE_BACKUP}
MASTER_SITE_BACKUP?=ftp://ftp2.freebsd.org/pub/FreeBSD/ports/distfiles/${DIST_SUBDIR}/
ok,正文开始

CODE:
#pkg_add -r cvsup-without-gui
#pkg_add -r portupgrade
#rehash
#cp /usr/share/examples/cvsup/ports-supfile ~
别忘了编辑这个文件,把里面的cvs服务器改为最快的
#cvsup -g -L 2 ~/ports-supfile
#ee /usr/local/etc/pkgtools.conf
找到

CODE:
MAKE_ARGS = {
}
改为

CODE:
MAKE_ARGS = {
        'www/apache22' => 'WITHOUT_WWW=yes',
        'lang/php4' => 'WITH_APACHE=yes',
        'databases/mysql41-server' => 'BUILD_OPTIMIZED=yes',

  }
下面开始安装

CODE:
#cd /usr/ports/www/apache22 (或者/usr/ports/www/apache2。前者是2.2.x,后者是2.0.x)
#make install clean
#cd /usr/ports/databases/mysql41-server
#make BUILD_OPTIMIZED=yes install clean
#cd /usr/ports/lang/php4
#make WITH_APACHE=yes install clean
#cd /usr/ports/lang/php4-extensions
#make install clean  (之后选择你要装的extensions,按ok)
#cd /usr/ports/ftp/pure-ftpd
#make install clean  (之后如果不知道选什么就直接ok)
上述步骤如果出错,请仔细看提示动脑想一想,不会英文的找本字典,实在不知道怎么回事就从错误信息里面选取一段你认为比较有代表性的文字放到google搜索一下。不过即使有问题,也基本都是网络问题。

如果这一切都成功了,那么下面,下面,请继续仔细照做

#mkdir -p /home/data/mysql (路径随便,就是你的数据库文件想放的地方。后文中的路径别忘了一起更改)
#chown mysql:mysql /home/data/mysql
#cp /usr/local/share/mysql/my-large.cnf /etc/my.cnf
(my.cnf内容根据mysql文档自己更改,建议 skip-networking)
#ln -s /etc/my.cnf /home/data/mysql/my.cnf
(避免出现什么问题,因为有时候会配置成到mysql的data_dir搜索my.cnf)
#ee /etc/libmap.conf
添加

CODE:
[mysqld]
libpthread.so.2         libthr.so.2
libpthread.so           libthr.so
(用xu大大的libthr跑起mysql来真爽)

#ee /etc/rc.conf
添加

CODE:
mysql_dbdir="/home/data/mysql"
mysql_enable="YES"
apache22_enable="YES"  #如果你刚才装的是apache2,那这里就 apache2_enable="YES"
pureftpd_enable="YES"
然后
#/usr/local/etc/rc.d/mysql-server.sh start
(这里不用先install_db,因为这个步骤在mysql_server.sh里面自动完成)
ok,mysql启动了

#ee /etc/hosts
按照例子把机器名和你的ip写入,例如

QUOTE:
127.0.0.1   myserver.myhost.com
#ee /usr/local/etc/apache22/httpd.conf
把 ServerName 参照你刚才写入hosts的内容,改为 myserver.myhost.com
其他配置自行参阅apache22 manual
#/usr/local/etc/rc.d/apache22.sh start
ok,如果你的配置文件没有错误,apache22应该启动了

下面简单建一个pure-ftpd的用户,这里直接用pure-db,mysql认证自己找找资料
#pure-pw useradd 用户名 -u 用户身份 -g 用户组 -D 登陆目录 -m
例如jestery用户用www身份登陆,登录之后的homt是/home/data/www,那就
#pure-pw useradd jestery -u www -g www -D /home/data/www -m
#/usr/local/etc/rc.d/pure-ftpd.sh start

全文完,就这么简单。以后有时间慢慢完善此文
2006/01/22
阅读(821) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~