Upload
colderboy17
View
2.995
Download
0
Embed Size (px)
DESCRIPTION
linux安装以及LAMP 环境安装详细
Citation preview
LAMP平台搭建入门
目录Linux安装.................................................................................................................................3
系统参数配置调整............................................................................................................19
AMP环境安装........................................................................................................................25
Apache安装.......................................................................................................................25
MySQL安装........................................................................................................................32
支持包安装........................................................................................................................37
PHP安装.............................................................................................................................42
Zend安装...........................................................................................................................47
UpDate by 4/10/2023
鉴于公司大量应用基于 LAMP平台运行,本文档对 LAMP平台的搭建,从 Linux的安装开始进行详细的介绍。首先请准备好你要 Linux系统光盘及应用软件包。本文环环境所需软件包如下:
CentOS 5.6 x86-64
httpd-2.2.22.tar.gz
php-5.2.17.tar.bz2
mysql-5.1.50.tar.gz
以下软件包根据需求进行取舍,本文只安装了前 6项libxml2-2.6.27.tar.gz
jpegsrc.v6b.tar.gz
libpng-1.2.16.tar.gz
freetype-2.1.10.tar.gz
freetds-0.82.tar.gz
gd-2.0.33.tar.gz
libmcrypt-2.5.3.tar.gz
zlib-1.2.5.tar.gz
Linux安装
首选将你的 Linux光盘插入光驱,并选择光盘启动,本文以 CentOS 5.6 X86-64位系统为例:
直接回车进行图形安装模式,输入“linux text”回车进入文件安装模式,在文本模式下安装速度会快一些。这里我们选择图形模式,直接回车。
选择 skip跳过光盘检查。
等待完成硬件扫描及加载基础驱动,上图显示正在对显卡进行相应操作。
引导介面出来了,直接进行下一步吧。Next...........
选择安装引导介面显示语言,这里选择的显示语言也会成为系统的默认显示语言。可根据自己的需求和能力进行相应选择。这里我们选择简体中文。
键盘布局默认
因为我的硬盘是全新的,还未进行过分区,所以出现如上提示,不理会,选是
这里可以对安装系统的分区进行选择。请根据需求进行选择。我在这里选择建议自定义的分区结构
出现了我的硬盘及硬盘信息。
创建分区。/boot分区一般分 200M足已。根(/)分区一般 20G左右即可,具体大小可视使用要求而定。
分区原则:swap一般为内存的 2倍大小,内存 8-16G之间 swap分区 16G即可,内存大于16G,swap分区与内存一般大即可。这只是一般习惯,可根据应用灵活调整,适合应用环境就好。
剩余空间按应用需求创建相应分区。也可以选不分配,安装完系统再做处理。下一步
下一步
设置引导密码可使系统更安全,防止单用户登陆模式。根据情况选择是否使用。
这里配置 IP地址的。也可以安装完成系统再配置。我已经准备好 IP地址了,所以现在配置。
Prefix(Netmask)设置子网掩码,24(255.255.255.0)。无 IPv6环境可禁用 IPv6功能。
主机名请跟据应用及公司相关规定设置,也可在安装完成后更改。配置DNS。
时区选“亚洲/上海”或“亚洲/重庆”。取消“系统时钟使用 UTC(S)”前面的勾选状态。如果启用了“系统时钟使用 UTC(S)”选项,系统 BIOS时间将使用协调世界时,又称世界统一时间,世界标准时间,国际协调时间。“亚洲/上海”属于+8时区,“UTC”属于 0时区。
输入根(ROOT)密码。
选择现在定制,去掉我们不需要的包,添加我们所需要的包。以下未加展示说明的包一般不需要安装。
不使用图形界面时不选
选择“开发工具”、“开发库”、“老的软件开发”,其它不选。
选择“老的网络服务器”,有一些网络工具,有时会用到。
选择“基本”、“管理工具”、“系统工具”、“老的软件支持”。“系统工具”项目需要注意一点,我们需要到可选的软件包里添加“Sysstat”包,如下图:
“Sysstat”很好用的系统监视工具。
因为本文一开始便选择了中文,所以“中文支持”会自动被选中。如果你开始时选择了英文或其它语言请到这里手动添加“中文支持”。在国内,不支持中文是不行滴。
正在安装。。。。。。
重新启动后继续配置。
由于我们没有安装图形介面,所以这里启动了文本的配置,我们可以在这里配置时区、防火墙、网络、键盘布置等等。对于新安装完成的系统,一定要注意以下配置
打开 Firewall Configuretion项目。关闭防火墙(Disabled),关闭 SELinux(Disbaled)。如果不做以上配置,在后期安装应用里你出遇到一些莫名其妙的问题。
至此,Linux安装完成,下一步要对 Linux的运行参数进行一些调整,针对 AMP运行环境对 Linux系统进行优化。
系统参数配置调整
首先对 SSH及 SSH工具进行简单的介绍。SSH 为 Secure Shell 的缩写,由 IETF 的网络工作小组(Network Working Group)所制定;SSH 为建立在应用层和传输层基础上的安全协议。SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。常用的客户端工具有:PuTTy、SecureCRT(收费)等等。本文主要使用了 PuTTy。
填写要连接到的主机 IP地址及端口号(默认 22)。
输入 Linux系统用户名。本文用的 root。Root帐户权限过大,正试环境中建议创建一个普通帐户管理使用。
输入 root账户的密码后出现如上画红线地方的一行。说明最近一次 root帐户登陆发生于2012年 4月 6日 10:22:51从 IP192.168.xxx.xxx发起。
如上图红线处,执行下面四条代码,解除 linux 限制打开文件数,第二、三条是一条。echo "session required /lib64/security/pam_limits.so" >> /etc/pam.d/login
echo "* soft nofile 51200
* hard nofile 51200" >> /etc/security/limits.conf
echo '16' > /sys/block/sda/queue/read_ahead_kb
echo '512' > /sys/block/sda/queue/nr_requests
让 linux 记录每次执行用户 时间 ip
使用Vi编辑/etc/profile。在最后加入以下代码:PROMPT_COMMAND='{ date "+%Y-%m-%d %T ##### USER:$USER IP:$SSH_CLIENT PS:
$SSH_TTY #### $(history 1 | { read x cmd; echo "$cmd"; })"; } >> /var/log/`date +'%Y%m'`.log'
删除 Init3模式下的所有用户启动服务。rm -rf /etc/rc3.d/*
使用 ls命令检查Ls /etc/rc3.d/
些时千万不要重新启动系统。
执行下面代码,添加必须的服务启动:
chkconfig --add sysstat
chkconfig --add syslog
chkconfig --add rsync
chkconfig --add crond
chkconfig --add xinetd
chkconfig --add irqbalance
chkconfig --add cpuspeed
chkconfig --add sshd
chkconfig --add mdmonitor
chkconfig --add network
chkconfig --level 3 syslog on
chkconfig --level 3 crond on
chkconfig --level 3 xinetd on
chkconfig --level 3 irqbalance on
chkconfig --level 3 cpuspeed on
chkconfig --level 3 sshd on
chkconfig --level 3 sysstat on
chkconfig --level 3 mdmonitor on
chkconfig --level 3 network on
chkconfig --level 3 cpuspeed on
chkconfig --level 3 mdmonitor on
chkconfig --level 3 mcstrans on
chkconfig --level 3 mdmonitor on
chkconfig --level 3 messagebus on
chkconfig --level 3 rawdevices on
chkconfig --level 3 readahead_early on
chkconfig --level 3 restorecond on
chkconfig --level 3 rpcgssd on
chkconfig --level 3 rpcidmapd on
AMP环境安装
Apache安装
首先把开始准备的软件包上传到主机上。
添加Apache启动所需账户。useradd -s /sbin/nologin apache
用 tar解压 httpd软件包。tar -zxvf httpd-2.2.22.tar.gz
解压完成。
配置编译./configure --prefix=/usr/local/apache --datadir=/www --enable-rewrite --enable-cgi --enable-so --
enable-cache --enable-mime-magic --enable-mem-cache --enable-modules=so --enable-mods-
shared=all --enable-cache --enable-disk-cache --with-mpm=prefork
红色字体部分换成你自己的目录地址
正在进行编译前的检查工作。如:GCC、相关库文件。
如上,检查完成,可以编译了。make
make install
安装完成了。下面进行相关启动配置
echo "PATH=$PATH:/usr/local/apache/bin" >> /etc/profile 把Apache程序目录加入系统 PATH
source /etc/profile 强制加载系统配置apachectl start 启动Apache
用浏览器测试出现 It works!。说明Apache安装成功。
下面把Apache安装到服务里吧。
使用 vi编辑 /usr/local/apache/bin/apachectlvi /usr/local/apache/bin/apachectl
如下面红框处,插入如下内容:# chkconfig: - 85 15
# description: Apache is a World Wide Web server. It is used to serve
# HTML files and CGI.
保存退出。编辑 httpd.conf文件,注意以下红色字体部分。vi /usr/local/apsche/conf/httpd.confUser apache
Group apache
DocumentRoot "/www"
<Directory />
Options FollowSymLinks
AllowOverride all
Order deny,allow
Deny from all
</Directory>
<Directory "/www">
Options FollowSymLinks
AllowOverride all
Order allow,deny
Allow from all
</Directory>
DirectoryIndex index.php index.html index.html.var
<FilesMatch "^\.ht">
Order allow,deny
Allow from all
Satisfy All
</FilesMatch>
启用以下配置Include conf/extra/httpd-mpm.conf
Include conf/extra/httpd-autoindex.conf
Include conf/extra/httpd-languages.conf
Include conf/extra/httpd-info.conf
Include conf/extra/httpd-manual.conf
Include conf/extra/httpd-dav.conf
Include conf/extra/httpd-default.conf
cp /usr/local/apache/bin/apachectl /etc/rc.d/init.d/httpd 将 apachectl复制到系统启动并改名为httpd
chmod +x /etc/rc.d/init.d/httpd 给 httpd添加执行权限chkconfig --add httpd 添加为系统服务chkconfig --level 345 httpd on 设置启动级别
MySQL安装
添加mysql用户useradd -s /sbin/nologin mysql
tar -zxvf mysql-5.1.50.tar.gz
配置编译参数autoreconf --force --install
./configure --prefix=/mysql --with-plugins=innobase,partition,csv,myisam,innodb_plugin,heap --
enable-local-infile --with-embedded-server --with-client-ldflags=-all-static --with-big-tables --
with-mysqld-ldflags=-all-static --with-mysqld-user=mysql --enable-assembler --with-extra-
charsets=all --with-unix-socket-path=/tmp/mysql.sock
如果只安装客户端执行下面的代码./configure --prefix=/mysql --without-server --with-client-ldflags=-all-static --enable-local-infile
--with-big-tables --with-mysqld-ldflags=-all-static --with-mysqld-user=mysql --enable-assembler
--with-extra-charsets=all --with-unix-socket-path=/tmp/mysql.sock
配置完成,编译。make
make install
安装完成。
执行echo "/mysql/lib/mysql" >> /etc/ld.so.conf
/sbin/ldconfig
ln -s /mysql/lib/mysql /usr/lib64/mysql
ln -s /mysql/include/mysql /usr/include/mysql
#echo " /mysql/lib/mysql" >> /etc/ld.so.conf && ldconfig -v | grep libmysqlclient
/mysql/bin/mysql_install_db --user=mysql
安装启动服务cp support-files/mysql.server /etc/rc.d/init.d/mysqld
chmod +x /etc/rc.d/init.d/mysqld
echo "PATH=$PATH:/mysql/bin" >> /etc/profile && source /etc/profile
chkconfig --add mysqld
chkconfig --level 345 mysqld on
cp support-files/my-huge.cnf /etc/my.cnf #拷贝 配置文件 chown -R mysql.mysql /mysql/
支持包安装
libxml2-2.6.27.tar.gz
jpegsrc.v6b.tar.gz 注意,Jpeg包安装有些不同libpng-1.2.16.tar.gz
freetype-2.1.10.tar.gz
freetds-0.82.tar.gz
gd-2.0.33.tar.gz
按图中操作即可。
建议上图中的目录结构
复制文件到 /usr/local/jpeg6/jpeg-6b/
PHP安装
解压,配置编译参数,这个有点长。
./configure --prefix=/usr/local/php \
--with-apxs2=/usr/local/apache/bin/apxs \
--with-mssql=/usr/local/freetds \
--with-jpeg-dir=/usr/local/jpeg6 \
--with-freetype-dir=/usr/local/freetype \
--with-libxml-dir=/usr/local/libxml \
--with-png-dir=/usr/local/libpng \
--with-gd=/usr/local/gd \
--with-mysql=/mysql \
--enable-gd-native-ttf \
--enable-magic-quotes \
--enable-gd-jis-conv \
--enable-calendar \
--with-gettext \
--with-zlib \
--with-gdbm \
--enable-mod-charset \
--enable-mbstring \
--with-curl \
--enable-sockets \
--disable-ipv6 \
--enable-pcntl \
--enable-bcmath \
--enable-fastcgi
注意地址,要与你前面安装的实际地址一致。
出现上面说明配置完成了,可以 编译了。make & make install
创建测试页echo ‘<?php phpinfo(); ?>’ > /www/htdocs/php.php
重启Httpd服务。看到如下页面说明你的 PHP安装成功了。
编辑 php.ini。注意以下几条。vi /usr/local/php/bin/php.inioutput_buffering = On
zlib.output_compression = On
expose_php = Off
max_execution_time = 600
max_input_time = 600
display_errors = Off
register_globals = On
post_max_size = 64M
magic_quotes_gpc = off
extension_dir = "/usr/local/php/modules/"
upload_max_filesize = 32M
default_socket_timeout = 600
extension=pgsql.so
extension=xmlrpc.so
extension=mysqli.so
session.auto_start = 1
zend_extension=/usr/local/zend/ZendOptimizer.so ; 以下是安装 Zend过程
Zend安装
mkdir /usr/local/zend
tar -zxf ZendOptimizer-3.3.9-linux-glibc23-x86_64.tar.gz
cp 5_2_x_comp/ZendOptimizer.so /usr/local/zend/
复制与 PHP版本对应的 Zend到/usr/local/zend