分类:
2007-07-09 13:43:07
前言:
本文的阅读对象是为已经有 Apache、MySQL 和 php 基本的操作经验的人员编写。主要讲求正确和快速安装。 致于,Apache、MySQL 和 php详细设定、修改方面和软件测试,在这里不会详谈。 设定、测试与启动 Apache2 Solaris 10 已经内置安装了 Apache 2.xx,只需要做一些设定便可以使用。 1. 首先用 Root 了登入文字模式系统 ( Console Mode ) 2. 复制 /etc/apache2/httpd.conf-example 到 /etc/apache2/httpd.conf # cp /etc/apache2/httpd.conf-example /etc/apache2/httpd.conf 3. 编辑 /etc/apache2/httpd.conf · 设定你所需要的 ServerName 服务器名称,预设为 127.0.0.1 · 在 ServerAdmin 设定正确的 E-mail 地址 4. 使用以下指令启动 Apache # svcadm enable apache2 然后,试一试从新启动 Solaris ,看一看 Apache 能不自动启动。基本网页文件位置为 /var/apache2/htdocs 。 设定、测试与启动 MySQL Solaris 10 已经内置安装了 MySQL。安装者必须要用 Root 身份登入系统。以下的安装步骤可以在 /usr/sfw/src/mysql/Docs 目录中找到。 1. 用 root 身份 login 到 Console mode 中,并且进行数据库的事前准备。 2. 建立 mysql user 和 group ,并且更改数据目录的群组。 3. 预设 MySQL 设定文件位置为 /var/mysql/my.cnf 4. 复制 MySQL 设定文件到预设位置 5. 手动启动 mysql 6. 设定 MySQL 的 root user密码 ( 下文中的 new-password 为你想要的密码,你可以自行更改为你喜欢的密码。因为安全理由,切密不要使用 new-password 为你的密码,一定要更改 ) 7. 测试 MySQL Server 8. 设定 Solaris Server 在启动和关机时,自动运行和停止MySQL Server。 9. 然后,试一试从新启动 Solaris ,看一看 MySQL 能不自动启动。预设 MySQL 设定文件位置为 /var/mysql/my.cnf 。 下载与设定 PHP 1. 用 root 身份 login 到 Console mode 中。 2. 检查清楚 PATH 是否包含 /opt/csw/bin 和 /usr/sfw/bin,如果没有,请自行加上。 root:~#PATH=:/opt/csw/bin:/usr/sfw/bin:/usr/sbin:/usr/bin:/usr/openwin/bin:/usr/dt/bin:/usr/ccs/bin root:/# echo $PATH 3. 安装 pkg-get pkgadd -d
(这个更方便) 4. 检查是否安装好 pkg-get 和 wget的位置 5. 安装完整的 wget 软件 6. 移除旧版本的 wget 7. 检查wget新的位置是否正确 8. 检查 GNU Autoconf 的版本是否为 2.59 或以上 9. 检查 GNU automake 的版本是否为 10. 检查 GNU sed version 的版本是否为 11. 检查 gcc 的版本是否为 12. 检查 GNU Make 的版本是否为 3.80 或以上 13. 检查 flex version 的版本是否为 14. 检查 GNU Bison 的版本是否为 1.875 或以上 15. 检查 GNU M4 的版本是否为 16. 检查 Perl 的版本是否为 5.8 或以上 17. 检查 GNU zip 的版本是否为 18. 检查 GNU tar 的版本是否为 1.14 或以上 19. 安装 libxml2 版本 20. 如果系统中没有这个档案 /etc/apache2/httpd.conf § 设定你所需要的 ServerName 服务器名称,预设为 127.0.0.1 § 在 ServerAdmin 设定正确的 E-mail 地址 21. 下载最新版本的 ( ) (试一试这种方法./configure --with-apxs2=/usr/apache2/bin/apxs --with-mysql=/usr/sfw/ --enable-dbase --with-config-file-path=/etc/apache2 --with-png --with-jpeg --with-gd --enable-gd-native-ttf --with-ttf --with-freetype-dir --with-zlib --enable-mbstring) 这个方法好,成功:(./configure --with-apxs2=/usr/apache2/bin/apxs --with-mysql=/usr/sfw/ --enable-dbase --with-config-file-path=/etc/apache2 --with-png-dir --with-jpeg-dir --with-gd --enable-gd-native-ttf --with-ttf --with-freetype-dir=/usr/sfw --with-zlib --enable-mbstring
# /usr/sfw/bin/mysql_install_db
Preparing db table
Preparing host table
Preparing user table
Preparing func table
Preparing tables_priv table
Preparing columns_priv table
Installing all prepared tables
060118 21:24:03 /usr/sfw/sbin/mysqld: Shutdown Complete
# groupadd mysql
# useradd -g mysql mysql
# chgrp -R mysql /var/mysql
# chmod -R 770 /var/mysql
# installf SUNWmysqlr /var/mysql d 770 root mysql
# cp /usr/sfw/share/mysql/my-medium.cnf /var/mysql/my.cnf
# /usr/sfw/sbin/mysqld_safe --user=mysql &
# cd /usr/sfw/bin
# ./mysqladmin -u root password 'new-password'
# ./mysqladmin -u root -h `hostname` password 'new-password'
# ./mysqlshow -p
Enter password: new-password
+-----------+
| Databases |
+-----------+
| mysql |
| test |
+-----------+
# ./mysql -u root -p
Enter password: new-password
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3 to server version:
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> show databases;
+-----------+
| Databases |
+-----------+
| mysql |
| test |
+-----------+
2 rows in set (0.00 sec)
mysql> quit;
Bye
# ln /etc/sfw/mysql/mysql.server /etc/rc3.d/S99mysql
# ln /etc/sfw/mysql/mysql.server /etc/rc0.d/K00mysql
# ln /etc/sfw/mysql/mysql.server /etc/rc1.d/K00mysql
# ln /etc/sfw/mysql/mysql.server /etc/rc2.d/K00mysql
# ln /etc/sfw/mysql/mysql.server /etc/rcS.d/K00mysql
# bash
# export PS1='\u:\w#'
root:~#export PATH
/opt/csw/bin:/usr/sfw/bin:/usr/sbin:/usr/bin:/usr/openwin/bin:/usr/dt/bin:/usr/ccs/bin
root:/# mkdir /usr/local/src
root:/# cd /usr/local/src
root:/usr/local/src# wget
root:/usr/local/src# cp pkg_get.pkg ..
root:/usr/local/src# pkgadd -d pkg_get.pkg all
You may use and copy this software without charge, as you see fit.
The software is copyright (C) Philip Brown, Nov 2002
Dont forget to update /opt/csw/etc/pkg-get.conf with your nearest archive site.
The selected base directory must exist before installation
is attempted.
Do you want this directory created now [y,n,?,q] y
Using as the package base directory.
## Processing package information.
## Processing system information.
2 package pathnames are already properly installed.
## Verifying disk space requirements.
## Checking for conflicts with packages already installed.
## Checking for setuid/setgid programs.
This package contains scripts which will be executed with super-user
permission during the process of installing this package.
Do you want to continue with the installation of
Installing pkg_get - CSW version of automated package download tool as
## Installing part 1 of 1.
/opt/csw/bin/pkg-get
/opt/csw/etc/pkg-get.conf.csw
/opt/csw/share/man/man
/var/pkg-get/admin-fullauto
[ verifying class
## Executing postinstall script.
Installing /opt/csw/etc/pkg-get.conf.csw to pkg-get.conf
Installation of
root:/usr/local/src# cd /
root:/#
root:/# which pkg-get
/opt/csw/bin/pkg-get
root:/# which wget
/usr/sfw/bin/wget
root:/# pkg-get -i wget
注意:将会出现大量文字,不用担心,只要完成安装就可以。
root:/# cd /usr/sfw/bin
root:/usr/sfw/bin# mv wget wget.orig
root:/usr/sfw/bin# exit
# bash
# export PS1='\u:\w#'
root:/#
root:/# which wget
/opt/csw/bin/wget
root:/# which autoconf && autoconf --version | head -2
/opt/csw/bin/autoconf
autoconf (GNU Autoconf) 2.59
Written by David J. MacKenzie and Akim Demaille.
如果不是为 2.59 或以上版本或根本没有这个程序,执行以下指令:
root:/# pkg-get -i autoconf
root:/# which automake && automake --version | head -2
/opt/csw/bin/automake
automake (GNU automake) 1.8.3
Written by Tom Tromey
root:/# pkg-get -i automake
root:/# which gsed && gsed --version | head -2
/opt/csw/bin/gsed
GNU sed version 4.1.4
Copyright (C) 2003 Free Software Foundation, Inc.
如果不是为 4.1.4 或以上版本或根本没有这个程序,执行以下指令:
root:/# pkg-get -i gsed
root:/# which gcc && gcc --version | head -2
/usr/sfw/bin/gcc
gcc (GCC) 3.4.3 (csl-sol210-3_4-branch+sol_rpath)
Copyright (C) 2004 Free Software Foundation, Inc.
如果不是为 3.4.3 或以上版本或根本没有这个程序,执行以下指令:
root:/# pkg-get -i gcc
root:/# which gmake && gmake --version | head -2
/usr/sfw/bin/gmake
GNU Make 3.80
Copyright (C) 2002 Free Software Foundation, Inc.
如果不是为 3.80 或以上版本或根本没有这个程序,执行以下指令:
root:/# pkg-get -i gmake
root:/# which flex && flex --version | head -2
/usr/sfw/bin/flex
flex version 2.5.4
如果不是为 2.5.4 或以上版本或根本没有这个程序,执行以下指令:
root:/# pkg-get -i flex
root:/# which bison && bison --version | head -2
/usr/sfw/bin/bison
bison (GNU Bison) 1.875
Written by Robert Corbett and Richard Stallman.
如果不是为 1.875 或以上版本或根本没有这个程序,执行以下指令:
root:/# pkg-get -i bison
root:/# which gm4 && gm4 --version | head -2
/opt/csw/bin/gm4
GNU M4 1.4.3
Written by Rene' Seindal.
如果不是为 1.4.3 或以上版本或根本没有这个程序,执行以下指令:
root:/# pkg-get -i gm4
root:/# which perl && perl -v | head -2
/usr/bin/perl
This is perl, v
如果不是为 5.8 或以上版本或根本没有这个程序,执行以下指令:
root:/# pkg-get -i perl
root:/# which gunzip && gunzip -V | head -2
/usr/bin/gunzip
gunzip 1.3.3-patch.1
(
如果不是为 1.3.3 或以上版本或根本没有这个程序,执行以下指令:
root:/# pkg-get -i gunzip
root:/# which gtar && gtar --version | head -2
/usr/sfw/bin/gtar
tar (GNU tar) 1.14
Copyright (C) 2004 Free Software Foundation, Inc.
如果不是为 1.14 或以上版本或根本没有这个程序,执行以下指令:
root:/# pkg-get -i gtar
在安装 libxml2 之前有一点要特别注意,这程序不可以安装在需要 mount 的 Driver 上。
因为,在启动 Solaris 时,当执行自动启动 Apache/php 时需要直接使用 libxml2,但这个时候,mount Driver 是还未启动的。
很多时候,都有习惯把 /usr/local 放在 mount driver 上。如果你也有这个习惯,请特别注意,不要把 libxml2 安装在 /usr/local 上。
否则,当 Solaris 从启后, Apache/php 便不能自动启动,只能人手启动了。
在正常情况下,安装 libxml2,安装程序的预设安装路径为 /usr/local, 这个安装路径是可以更改的。
以下例子,将会把 libxml2 安装在 /usr/slocal 上。
root:/# cd /usr/local/src
root:/usr/local/src# wget ftp://xmlsoft.org/libxml2/libxml2-2.6.23.tar.gz
...
root:/usr/local/src# mkdir /usr/slocal
root:/usr/local/src# cp libxml2-2.6.23.tar.gz /usr/slocal/
root:/usr/local/src# cd /usr/slocal
root:/usr/slocal# gunzip -cd libxml2-2.6.23.tar.gz | gtar xvpf -
...
root:/usr/slocal# cd libxml2-2.6.23
root:/usr/slocal/libxml2-2.6.23# ./configure --prefix=/usr/slocal
...
root:/usr/slocal/libxml2-2.6.23# gmake
...
root:/usr/slocal/libxml2-2.6.23# gmake install
root:/# cp /etc/apache2/httpd.conf-example /etc/apache2/httpd.conf编辑 /etc/apache2/httpd.conf
root:/# cd /usr/local/src
root:/usr/local/src# wget
...
root:/usr/local/src# cp php-5.1.2.tar.gz ..
root:/usr/local/src# cd ..
root:/usr/local# gunzip -cd php-5.1.2.tar.gz | gtar xvpf -
...
root:/usr/local# cd php-5.1.2
root:/usr/local/php-5.1.2# ./configure --with-apxs2=/usr/apache2/bin/apxs \
--with-mysql=/usr/sfw/ --enable-dbase --with-libxml-dir=/usr/slocal \
--with-config-file-path=/etc/apache2 --with-gd-dir=/opt/csw/bin \
--with-jpeg-dir=/usr/lib --with-png-dir=/usr/lib --with-zlib --enable-mbstring
)
...
root:/usr/local/php-5.1.2# gmake