您的位置:首页 > 运维架构 > Linux

Centos6.3服务器环境的搭建

2012-10-16 21:59 375 查看
服务器环境的安装简略的步骤;备忘。可以写一个脚本,这对安装多台服务器是非常有必要的。省时省力。

1、更新epel源
#rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-7.noarch.rpm #rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
#yum install yum-priorities
#yum update
#yum upgrade


2、关闭selinux
修改/etc/selinux/config
将SELINUX=enforcing修改为SELINUX=disabled
#setenforce 0

3、修改ssh配置
修改/etc/ssh/sshd_config
禁用root用户登录: #PermitRootLogin yes修改为PermitRootLogin no
加快ssh登录:#UseDNS yes 修改为UseDNS no
重启:service sshd restart
iptables 2233端口开启
#service iptables restart

4、修改系统时间
#yum -y install ntp
#ntpdate ntp.fudan.edu.cn
#cp -f /usr/share/zoneinfo/Asia/Shanghai /etc/localtime


5、基础服务
#yum install wget gcc gcc-c++ make openssl-devel openssh-clients


Nginx一般是配置了2个附加模块的:pcre和ngx_cache_purge,前者用来支持正则表达式解析,后者用来支持缓存动态请求。pcre需要先安装

6、安装pcre

#wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.31.tar.gz #tar -zxvf pcre-8.31.tar.gz
#cd pcre-8.31
#./configure --prefix=/usr/local/pcre-8.31
#make && make install


7、安装cache_purge

#wget http://labs.frickle.com/files/ngx_cache_purge-1.6.tar.gz #tar -zxvf ngx_cache_purge-1.6.tar.gz

8、nginx安装
使用 /usr/local/nginx/sbin/nginx -V 可以查看配置参数,这点在基于一个已有nginx给另外一台服务器安装是很有用的。

#groupadd nginx
#useradd -g nginx nginx
#wget http://nginx.org/download/nginx-1.2.4.tar.gz #tar -zxvf nginx-1.2.4.tar.gz
#cd nginx-1.2.4
#./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module --with-pcre=pcre解压的目录路径 --with-http_ssl_module --add-module=前面第七步解压的路径
#make && make install
#/usr/local/nginx/sbin/nginx

增加启动脚本然后开启iptables 80端口

vi /etc/sysconfig/iptables 增加
#-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
重启服务
#service iptables restart


9、安装php-fpm、mysql等

#rpm --import http://rpms.famillecollet.com/RPM-GPG-KEY-remi #yum install yum-priorities
#vi /etc/yum.repos.d/ remi.repo

插入下面内容

[remi]
name=Les RPM de remi pour Enterprise Linux $releasever - $basearch
#baseurl=http://rpms.famillecollet.com/enterprise/$releasever/remi/$basearch/
mirrorlist=http://rpms.famillecollet.com/enterprise/$releasever/remi/mirror
enabled=1
priority=10
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi
failovermethod=priority

保存,然后
#yum install php mysql mysql-server php-mysql php-gd php-xml php-mbstring php-ldap php-pear php-mcrypt php-xmlrpc php-devel mysql-connector-odbc mysql-devel libdbi-dbd-mysql

#chkconfig nginx on
#chkconfig mysqld on
#chkconfig php-fpm on
#service nginx start
#service mysqld start

设置mysql root密码

# mysql
> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('123456')


10、安装jdk7+tomcat7
/article/7414386.html
11、安装snmp

#yum install -y net-snmp net-snmp-utils
配置就不详细列出了
#chkconfig snmpd on
#service snmpd restart


12、添加数据库备份脚本
/data/backup/mysql_backup.sh

#!/bin/bash
#功能说明:本功能用于备份整个数据库

PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin
export PATH

dbuser='root'
dbpasswd='123456'

#time
backtime=`date +%Y%m%d%H%M%S`
#log path
logpath='/data/backup/all/'
#datapath
datapath='/data/backup/all/'

echo ‘"备份时间为${backtime} 开始" >> ${logpath}/mysqllog.log

source=`mysqldump -u ${dbuser} -p${dbpasswd} --all-databases > ${logpath}/${backtime}.sql` 2>> ${logpath}/mysqllog.log;

if [ "$?" == 0 ];then
cd $datapath
tar jcf ${backtime}.tar.bz2 ${backtime}.sql > /dev/null
rm -f ${datapath}/${backtime}.sql

echo "数据库表 ${dbname} 备份成功!!" >> ${logpath}/mysqllog.log
else
echo "数据库表 ${dbname} 备份失败!!" >> ${logpath}/mysqllog.log
fi


#!/bin/bash
#用于备份单个或几个数据库
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin
export PATH

dbuser='root'

dbpasswd='123456'

dbname='mysql'

backtime=`date +%Y%m%d%H%M%S`

logpath='/data/backup/one/'

datapath='/data/backup/one/'

echo ‘"备份时间为${backtime},备份数据库表 ${dbname} 开始" >> ${logpath}/mysqllog.log

for table in $dbname; do
source=`mysqldump -u ${dbuser} -p${dbpasswd} ${table}> ${logpath}/${backtime}.sql` 2>> ${logpath}/mysqllog.log;

if [ "$?" == 0 ];then
cd $datapath

tar jcf ${table}${backtime}.tar.bz2 ${backtime}.sql > /dev/null

rm -f ${datapath}/${backtime}.sql

echo "数据库表 ${dbname} 备份成功!!" >> ${logpath}/mysqllog.log
else

echo "数据库表 ${dbname} 备份失败!!" >> ${logpath}/mysqllog.log
fi

done


13、nginx日志分割脚本

#!/bin/bash
# This script run at 00:00

# The Nginx logs path
logs_path="/var/log/nginx/"
time_dir=$(date -d "yesterday" +"%Y")/$(date -d "yesterday" +"%m")
fulltime=$(date -d "yesterday" +"%Y%m%d")

declare -a items
items[0]=nginxstatus
items[1]=access
items[2]=error

for item in ${items[@]}
do
mkdir -p ${logs_path}${item}/${time_dir}/
mv ${logs_path}${item}.log ${logs_path}${item}/${time_dir}/${item}_${fulltime}.log
done
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: