CentOS 5.4安装笔记
2011-07-04 14:05
495 查看
1,关于编码
编辑/etc/sysconfig/i18n
原始:
LANG="en_US.UTF-8"
SYSFONT="latarcyrheb-sun16"
LANG=”zh_CN.UTF-8″ 中文
LANG=”en_US.UTF-8″ 英文
中文乱码是由于语言包没有安装的问题
安装fonts即可解决
rpm -ivh /media/CentOS_5.4_Final/CentOS/fonts-chinese-3.02-12.el5.noarch.rpm
rpm -ivh /media/CentOS_5.4_Final/CentOS/fonts-ISO8859-2-75dpi-1.0-17.1.noarch.rpm
2,关闭ipv6
由于CentOS默认是开启ipv6模块的,我发现在CentOS里开启ipv6模块使DNS解析的时间增加了很多,特别是在yum时,还有多一样服务就会多一点不安全的因素,不需要是要永远禁用的(通用的安全法则:服务器对处提供的服务越少越安全)。网上最多说的禁用ipv6的方法如下:
1. #vim /etc/modprobe.conf,在其中加入如下两行:
alias net-pf-10 off
alias ipv6 off
2. #vim /etc/sysconfig/network文件,确认其中含有如下行:
NETWORKING_IPV6=no
3. 重启系统
#reboot
经过上面几步,理论上应该是关闭了ipv6,查看方法如下:
1. #ifconfig -a
如果出现sit0这一项,说明还是没有成功禁用ipv6
2. #lsmod | grep ipv6
如果出现:ipv6 xfrm_nalgo两行,说明没有成功禁用ipv6。
5.4及其以上版本的CentOS系统利用如上方法禁用ipv6是不对的,应该如下方法禁用ipv6:
可以修改下面两个文件以阻止IPv6内核模块的加载:
/etc/modprobe.conf – 内核模块配置文件
/etc/sysconfig/network – 网络配置文件
1. # vim /etc/modprobe.conf
在其中加入下面这一行,
install ipv6 /bin/true
保存并退出。
2. # vim /etc/sysconfig/network
在其中加入下面配置项:
NETWORKING_IPV6=no
IPV6INIT=no
保存并退出文件,重启网络与服务器:
# service network restart
# reboot
如果想检查当前IPv6是否已禁用,可以使用下列命令:
# lsmod | grep ipv6
# ifconfig -a
注:以上方法在CentOS5.5验证通过,同样适用于RHEL和Fedora。
3,ifconfig等命令在/sbin/下,无法运行时使用绝对路径+命令
安装nginx+PHP5.3.6+fastCGI
1, #yum update
运行完发现我的CentOS由5.4升为了5.6 ^o^
2, #yum -y install ntp vim-enhanced gcc gcc-c++ flex bison autoconf automake glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel libtool* zlib-devel libxml2-devel libjpeg-devel libpng-devel libtiff-devel fontconfig-devel freetype-devel libXpm-devel gettext-devel curl curl-devel pam-devel e2fsprogs-devel krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers
3,需要的包
pcre-8.12.zip
nginx-1.0.0.tar.gz
libiconv-1.13.tar.gz
libmcrypt-2.5.8.tar.gz
mcrypt-2.6.8.tar.gz
mhash-0.9.9.9.tar.bz2
php-5.3.6.tar.bz2
从php5.3.3开始php-fpm就集成到php中了^o^
4,安装
#cd /usr/local/src
#unzip pcre-8.12.zip
#cd pcre-8.12
#./configure && make && make install
#tar zxvf nginx-1.0.0.tar.gz
#cd nginx--1.0.0
./configure \
"--user=$用户" \
"--group=$组" \
"--prefix=/usr/local/nginx/" \
"--with-http_stub_status_module" \
"--with-http_ssl_module" \
"--with-md5=/usr/lib" \
"--with-sha1=/usr/lib"
make
make install
2.4.1.1 libiconv-1.13
#tar zxvf libiconv-1.13.tar.gz
#cd libiconv-1.13
#./configure --prefix=/usr && make && make install
2.4.1.2 libmcrypt-2.5.8
#tar zxvf libmcrypt-2.5.8.tar.gz
#cd libmcrypt-2.5.8/
#./configure --prefix=/usr && make && make install
#echo "/usr/lib" >> /etc/ld.so.conf
#ldconfig
#cd libltdl/
#./configure --enable-ltdl-install
#make && make install
2.4.1.3 mhash-0.9.9.9
#tar jxvf mhash-0.9.9.9.tar.bz2
#cd mhash-0.9.9.9
#./configure --prefix=/usr && make && make install
#ldconfig
2.4.1.4 mcrypt-2.6.8
#tar zxvf mcrypt-2.6.8.tar.gz
#cd mcrypt-2.6.8
#./configure --prefix=/usr && make&& make install
#安装CMake(MySQL 5.5不再使用configure配置, 改用CMake)
tar xzf cmake-2.8.4.tar.gz
cd cmake-2.8.4
./bootstrap
make
make install
cd ..
#配置安装MySQL
tar xzf mysql-5.5.13.tar.gz
cd mysql-5.5.13
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data
make
make install
#进入MySQL安装目录,并安装默认数据库
cd /usr/local/mysql/
./scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --skip-name-resolve
#复制配置文件
cp ./support_files/my-medium.cnf /etc/my.cnf
cp ./bin/mysql /usr/local/bin/mysql
#添加MySQL用户组并设定目录权限
groupadd mysql
useradd -g mysql -d /sbin/nologin mysql
chown -R mysql .
#启动MySQL服务器
./support_files/mysql.server start
#修改MySQL密码
/usr/local/mysql/bin/mysqladmin -u root -h 127.0.0.1 password '123456'
#配置MySQL开机启动
echo -e '# MySQL\n/usr/local/mysql/support-files/mysql.server start' >> /etc/rc.local
安装php
./configure \
"--prefix=/usr/local/php" \
"--enable-fpm" \
"--with-config-file-path=/usr/local/php/etc" \
"--with-mysql=/usr/local/mysql" \
"--with-mysqli=/usr/local/mysql/bin/mysql_config" \
"--with-pdo-mysql=/usr/local/mysql" \
"--with-iconv-dir" \
"--with-freetype-dir" \
"--with-jpeg-dir" \
"--with-png-dir" \
"--with-gd" \
"--with-zlib" \
"--with-libxml-dir" \
"--with-curl" \
"--with-curlwrappers" \
"--with-openssl" \
"--with-mhash" \
"--with-xmlrpc" \
"--with-mcrypt" \
"--with-ldap" \
"--with-ldap-sasl" \
"--enable-xml" \
"--disable-rpath" \
"--enable-safe-mode" \
"--enable-bcmath" \
"--enable-shmop" \
"--enable-sysvsem" \
"--enable-inline-optimization" \
"--enable-mbregex" \
"--enable-mbstring" \
"--enable-gd-native-ttf" \
"--enable-ftp" \
"--enable-pcntl" \
"--enable-sockets" \
"--enable-zip" \
"--disable-debug" \
"--disable-ipv6"
make ZEND_EXTRA_LIBS='-liconv'
make install
cp php.ini-production /usr/local/php/etc/php.ini
Notice: Following unknown configure options were used:
–enable-fastcgi
–enable-force-cgi-redirect
–enable-discard-path
php 5.3.X 发现在默认状态下,已经开始支持 fastcgi了,不用再费劲再写配置参数了,如果写了,会提示如上错误信息
PHP扩展:
memcache: http://pecl.php.net/package/memcache http://pecl.php.net/get/memcache-2.2.6.tgz
tar zxvf memcache-2.2.6.tgz
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make
make install
结果:
Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/
APC:
$wget http://pecl.php.net/get/APC-3.1.6.tgz $tar xvzf APC-3.1.6.tgz
$cd APC-3.1.6
$/usr/local/php/bin/phpize
$./configure --enable-apc --enable-apc-mmap --with-php-config=/usr/local/php/bin/php-config
$make
$make install
然后我们再编辑php.ini文件进行配置,请把下面的代码加入到php.ini中即可:
extension = apc.so
[APC]
apc.enabled = 1
apc.shm_segments = 1
apc.shm_size = 128M
apc.optimization = 1
apc.num_files_hint = 0
apc.ttl = 0
apc.gc_ttl = 3600
apc.cache_by_default = on
这样重启apache就会在phpinfo()信息中显示。
安装包目录中有一个apc.php的文件。是一个小后台,进行统计监测。
注:APC不适合用于频繁写的场合
关键的部分是php-fpm和nginx的配置文件的配置。
优化以及很多操作都是在配置文件中完成的。
(fastcgi_param SCRIPT_FILENAME /srv/www/public_html$fastcgi_script_name;)
优化linux连接数
echo 'ulimit -HSn 65536' >> /etc/profile
echo 'ulimit -HSn 65536' >> /etc/rc.local
source /etc/profile
启动php-fpm
/usr/local/php/sbin/php-fpm
可以使用
/usr/local/php/sbin/php-fpm -t 进行配置文件测试
/usr/local/php/sbin/php-fpm -h 查看帮助
关闭php-fpm
cat /usr/local/php/var/run/php-fpm.pid 得到进程号
kill -QUIT 进程号
平滑重启
kill -HUP $pid
另一种方式:
php-fpm的启动:
cp -f (php -5.3.x-source-dir)/sapi/fpm/init.d.
a634
php-fpm /etc/init.d/php-fpm
chmod 755 /etc/init.d/php-fpm
/etc/init.d/php-fpm start
/sbin/chkconfig --add php-fpm (添加到开机服务列表)
/sbin/chkconfig php-fpm on
php-fpm的启动、停止和重启:
/etc/init.d/php-fpm start
/etc/init.d/php-fpm stop
/etc/init.d/php-fpm reload
php5.3.6的版本中
这个php-fpm 不再支持 php-fpm 补丁具有的 /usr/local/php/sbin/php-fpm (start|stop|reload)等命令,需要使用信号控制:
SIGINT, SIGTERM 立刻终止
SIGQUIT 平滑终止
SIGUSR1 重新打开日志文件
SIGUSR2 平滑重载所有worker进程并重新载入配置和二进制模块
示例:
php-fpm 关闭:
kill -SIGINT `cat /usr/local/php/var/run/php-fpm.pid`
php-fpm 重启:
kill -SIGUSR2 `cat /usr/local/php/var/run/php-fpm.pid`
其次配置文件不再使用的xml 格式,改为了INI,但是配置参数几乎和以前一样,可参照xml格式的格式配置。
启动nginx
/usr/local/nginx/sbin/nginx
同样可以使用-t -h参数
关闭
cat /usr/local/nginx/logs/nginx.pid
kill -QUIT $pid
平滑重启
kill -HUP $pid
编辑/etc/sysconfig/i18n
原始:
LANG="en_US.UTF-8"
SYSFONT="latarcyrheb-sun16"
LANG=”zh_CN.UTF-8″ 中文
LANG=”en_US.UTF-8″ 英文
中文乱码是由于语言包没有安装的问题
安装fonts即可解决
rpm -ivh /media/CentOS_5.4_Final/CentOS/fonts-chinese-3.02-12.el5.noarch.rpm
rpm -ivh /media/CentOS_5.4_Final/CentOS/fonts-ISO8859-2-75dpi-1.0-17.1.noarch.rpm
2,关闭ipv6
由于CentOS默认是开启ipv6模块的,我发现在CentOS里开启ipv6模块使DNS解析的时间增加了很多,特别是在yum时,还有多一样服务就会多一点不安全的因素,不需要是要永远禁用的(通用的安全法则:服务器对处提供的服务越少越安全)。网上最多说的禁用ipv6的方法如下:
1. #vim /etc/modprobe.conf,在其中加入如下两行:
alias net-pf-10 off
alias ipv6 off
2. #vim /etc/sysconfig/network文件,确认其中含有如下行:
NETWORKING_IPV6=no
3. 重启系统
#reboot
经过上面几步,理论上应该是关闭了ipv6,查看方法如下:
1. #ifconfig -a
如果出现sit0这一项,说明还是没有成功禁用ipv6
2. #lsmod | grep ipv6
如果出现:ipv6 xfrm_nalgo两行,说明没有成功禁用ipv6。
5.4及其以上版本的CentOS系统利用如上方法禁用ipv6是不对的,应该如下方法禁用ipv6:
可以修改下面两个文件以阻止IPv6内核模块的加载:
/etc/modprobe.conf – 内核模块配置文件
/etc/sysconfig/network – 网络配置文件
1. # vim /etc/modprobe.conf
在其中加入下面这一行,
install ipv6 /bin/true
保存并退出。
2. # vim /etc/sysconfig/network
在其中加入下面配置项:
NETWORKING_IPV6=no
IPV6INIT=no
保存并退出文件,重启网络与服务器:
# service network restart
# reboot
如果想检查当前IPv6是否已禁用,可以使用下列命令:
# lsmod | grep ipv6
# ifconfig -a
注:以上方法在CentOS5.5验证通过,同样适用于RHEL和Fedora。
3,ifconfig等命令在/sbin/下,无法运行时使用绝对路径+命令
安装nginx+PHP5.3.6+fastCGI
1, #yum update
运行完发现我的CentOS由5.4升为了5.6 ^o^
2, #yum -y install ntp vim-enhanced gcc gcc-c++ flex bison autoconf automake glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel libtool* zlib-devel libxml2-devel libjpeg-devel libpng-devel libtiff-devel fontconfig-devel freetype-devel libXpm-devel gettext-devel curl curl-devel pam-devel e2fsprogs-devel krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers
3,需要的包
pcre-8.12.zip
nginx-1.0.0.tar.gz
libiconv-1.13.tar.gz
libmcrypt-2.5.8.tar.gz
mcrypt-2.6.8.tar.gz
mhash-0.9.9.9.tar.bz2
php-5.3.6.tar.bz2
从php5.3.3开始php-fpm就集成到php中了^o^
4,安装
#cd /usr/local/src
#unzip pcre-8.12.zip
#cd pcre-8.12
#./configure && make && make install
#tar zxvf nginx-1.0.0.tar.gz
#cd nginx--1.0.0
./configure \
"--user=$用户" \
"--group=$组" \
"--prefix=/usr/local/nginx/" \
"--with-http_stub_status_module" \
"--with-http_ssl_module" \
"--with-md5=/usr/lib" \
"--with-sha1=/usr/lib"
make
make install
2.4.1.1 libiconv-1.13
#tar zxvf libiconv-1.13.tar.gz
#cd libiconv-1.13
#./configure --prefix=/usr && make && make install
2.4.1.2 libmcrypt-2.5.8
#tar zxvf libmcrypt-2.5.8.tar.gz
#cd libmcrypt-2.5.8/
#./configure --prefix=/usr && make && make install
#echo "/usr/lib" >> /etc/ld.so.conf
#ldconfig
#cd libltdl/
#./configure --enable-ltdl-install
#make && make install
2.4.1.3 mhash-0.9.9.9
#tar jxvf mhash-0.9.9.9.tar.bz2
#cd mhash-0.9.9.9
#./configure --prefix=/usr && make && make install
#ldconfig
2.4.1.4 mcrypt-2.6.8
#tar zxvf mcrypt-2.6.8.tar.gz
#cd mcrypt-2.6.8
#./configure --prefix=/usr && make&& make install
#安装CMake(MySQL 5.5不再使用configure配置, 改用CMake)
tar xzf cmake-2.8.4.tar.gz
cd cmake-2.8.4
./bootstrap
make
make install
cd ..
#配置安装MySQL
tar xzf mysql-5.5.13.tar.gz
cd mysql-5.5.13
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data
make
make install
#进入MySQL安装目录,并安装默认数据库
cd /usr/local/mysql/
./scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --skip-name-resolve
#复制配置文件
cp ./support_files/my-medium.cnf /etc/my.cnf
cp ./bin/mysql /usr/local/bin/mysql
#添加MySQL用户组并设定目录权限
groupadd mysql
useradd -g mysql -d /sbin/nologin mysql
chown -R mysql .
#启动MySQL服务器
./support_files/mysql.server start
#修改MySQL密码
/usr/local/mysql/bin/mysqladmin -u root -h 127.0.0.1 password '123456'
#配置MySQL开机启动
echo -e '# MySQL\n/usr/local/mysql/support-files/mysql.server start' >> /etc/rc.local
安装php
./configure \
"--prefix=/usr/local/php" \
"--enable-fpm" \
"--with-config-file-path=/usr/local/php/etc" \
"--with-mysql=/usr/local/mysql" \
"--with-mysqli=/usr/local/mysql/bin/mysql_config" \
"--with-pdo-mysql=/usr/local/mysql" \
"--with-iconv-dir" \
"--with-freetype-dir" \
"--with-jpeg-dir" \
"--with-png-dir" \
"--with-gd" \
"--with-zlib" \
"--with-libxml-dir" \
"--with-curl" \
"--with-curlwrappers" \
"--with-openssl" \
"--with-mhash" \
"--with-xmlrpc" \
"--with-mcrypt" \
"--with-ldap" \
"--with-ldap-sasl" \
"--enable-xml" \
"--disable-rpath" \
"--enable-safe-mode" \
"--enable-bcmath" \
"--enable-shmop" \
"--enable-sysvsem" \
"--enable-inline-optimization" \
"--enable-mbregex" \
"--enable-mbstring" \
"--enable-gd-native-ttf" \
"--enable-ftp" \
"--enable-pcntl" \
"--enable-sockets" \
"--enable-zip" \
"--disable-debug" \
"--disable-ipv6"
make ZEND_EXTRA_LIBS='-liconv'
make install
cp php.ini-production /usr/local/php/etc/php.ini
Notice: Following unknown configure options were used:
–enable-fastcgi
–enable-force-cgi-redirect
–enable-discard-path
php 5.3.X 发现在默认状态下,已经开始支持 fastcgi了,不用再费劲再写配置参数了,如果写了,会提示如上错误信息
PHP扩展:
memcache: http://pecl.php.net/package/memcache http://pecl.php.net/get/memcache-2.2.6.tgz
tar zxvf memcache-2.2.6.tgz
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make
make install
结果:
Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/
APC:
$wget http://pecl.php.net/get/APC-3.1.6.tgz $tar xvzf APC-3.1.6.tgz
$cd APC-3.1.6
$/usr/local/php/bin/phpize
$./configure --enable-apc --enable-apc-mmap --with-php-config=/usr/local/php/bin/php-config
$make
$make install
然后我们再编辑php.ini文件进行配置,请把下面的代码加入到php.ini中即可:
extension = apc.so
[APC]
apc.enabled = 1
apc.shm_segments = 1
apc.shm_size = 128M
apc.optimization = 1
apc.num_files_hint = 0
apc.ttl = 0
apc.gc_ttl = 3600
apc.cache_by_default = on
这样重启apache就会在phpinfo()信息中显示。
安装包目录中有一个apc.php的文件。是一个小后台,进行统计监测。
注:APC不适合用于频繁写的场合
关键的部分是php-fpm和nginx的配置文件的配置。
优化以及很多操作都是在配置文件中完成的。
(fastcgi_param SCRIPT_FILENAME /srv/www/public_html$fastcgi_script_name;)
优化linux连接数
echo 'ulimit -HSn 65536' >> /etc/profile
echo 'ulimit -HSn 65536' >> /etc/rc.local
source /etc/profile
启动php-fpm
/usr/local/php/sbin/php-fpm
可以使用
/usr/local/php/sbin/php-fpm -t 进行配置文件测试
/usr/local/php/sbin/php-fpm -h 查看帮助
关闭php-fpm
cat /usr/local/php/var/run/php-fpm.pid 得到进程号
kill -QUIT 进程号
平滑重启
kill -HUP $pid
另一种方式:
php-fpm的启动:
cp -f (php -5.3.x-source-dir)/sapi/fpm/init.d.
a634
php-fpm /etc/init.d/php-fpm
chmod 755 /etc/init.d/php-fpm
/etc/init.d/php-fpm start
/sbin/chkconfig --add php-fpm (添加到开机服务列表)
/sbin/chkconfig php-fpm on
php-fpm的启动、停止和重启:
/etc/init.d/php-fpm start
/etc/init.d/php-fpm stop
/etc/init.d/php-fpm reload
php5.3.6的版本中
这个php-fpm 不再支持 php-fpm 补丁具有的 /usr/local/php/sbin/php-fpm (start|stop|reload)等命令,需要使用信号控制:
SIGINT, SIGTERM 立刻终止
SIGQUIT 平滑终止
SIGUSR1 重新打开日志文件
SIGUSR2 平滑重载所有worker进程并重新载入配置和二进制模块
示例:
php-fpm 关闭:
kill -SIGINT `cat /usr/local/php/var/run/php-fpm.pid`
php-fpm 重启:
kill -SIGUSR2 `cat /usr/local/php/var/run/php-fpm.pid`
其次配置文件不再使用的xml 格式,改为了INI,但是配置参数几乎和以前一样,可参照xml格式的格式配置。
启动nginx
/usr/local/nginx/sbin/nginx
同样可以使用-t -h参数
关闭
cat /usr/local/nginx/logs/nginx.pid
kill -QUIT $pid
平滑重启
kill -HUP $pid
相关文章推荐
- centOS5.4 apache+mysql+php+gd2+Zend搭建影视服务器安装笔记
- centos5.4上安装kamailio-3.1.4笔记 测试通过
- CentOS 5.4 x86_64上安装simspark笔记
- centos5.4+asterisk1.8+freepbx2.8 安装笔记
- centos5.4裁剪笔记(1)-安装到虚拟机
- CentOS 5.4 x86_64 编译安装 MySQL 完全笔记
- centos5.4+asterisk1.8+freepbx2.8 安装笔记
- Linux学习笔记----CentOS 在什么情况下,进入图形界面安装模式 ??
- openvas在centos下用yum安装笔记
- Linux学习笔记:CentOS安装MySQL
- CentOS5.4安装BCM4312无线网卡驱动
- linux(centos)下编译安装php性能测试工具xhprof笔记
- centos5.4裁剪笔记(5)-测试用硬盘引导镜像
- centos5.6下php5.4最新版的安装
- CentOS5.4 tornado安装、部署
- cacti编译安装 (centos 5.4环境)
- Win7下手动安装apache2.2、php5.4笔记
- centos5.4安装convirt管理虚拟机
- CentOS6.4环境下编译安装Bandwidthd和Postgrsql心得笔记
- Linux学习笔记 --- Centos下安装cx_Oracle