一个客户端一键安装环境和服务的shell脚本
#!/bin/bash
basepath=$(cd `dirname $0`; pwd)
SHELL_DIR="${basepath}/shell"
PACKAGE_DIR="${basepath}/package"
##############################install rpm##########################
#关闭不必要的软件并禁止开机启动
systemctl stop firewalld
systemctl disable firewalld
#关闭selinux
setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
#开启转发
if [ `grep -v '^\s*#' /etc/sysctl.conf |grep -c 'net.ipv4.ip_forward\s\+=\s\+1'` -eq 0 ];then
echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf
sysctl -p
fi
echo "start install RPMs"
rpm -ivh $PACKAGE_DIR/autossh-1.4e-1.el7.x86_64.rpm
rpm -ivh $PACKAGE_DIR/net-tools-2.0-0.17.20131004git.el7.x86_64.rpm
rpm -ivh $PACKAGE_DIR/sysstat-10.1.5-7.el7.x86_64.rpm
rpm -ivh $PACKAGE_DIR/traceroute-2.0.19-5.el7.x86_64.rpm
rpm -ivh $PACKAGE_DIR/telnet-0.17-59.el7.x86_64.rpm
rpm -ivh $PACKAGE_DIR/tcpdump-4.5.1-3.el7.x86_64.rpm
rpm -ivh $PACKAGE_DIR/lrzsz-0.12.20-36.el7.x86_64.rpm
rpm -ivh $PACKAGE_DIR/iptables-services-1.4.21-16.el7.x86_64.rpm
rpm -ivh $PACKAGE_DIR/ntpdate-4.2.6p5-22.el7.centos.x86_64.rpm
yum install -y nfs-utils rpcbind
#校准系统时间
ntpdate "time1.aliyun.com"
#ssh登陆时不提示yes/no
echo 'StrictHostKeyChecking no' > /root/.ssh/config
#清空iptables,并保存
iptables -F
iptables -F -t nat
iptables-save > /etc/sysconfig/iptables
systemctl enable iptables
echo "success!"
##############################Deploy process01########################
echo "start deploy process01"
process01_DIR="/data/website"
if [ ! -e $process01_DIR ];then
mkdir -p $process01_DIR
fi
rm -rf $process01_DIR/*
cp -r $basepath/package/process01-beta $process01_DIR
cp -r $basepath/package/process02Anal $process01_DIR
chmod +x $process01_DIR/*
if [ ! -e /data/socket/ ];then
mkdir -p /data/socket/
fi
rm -rf /data/socket/*
cp -r $basepath/package/jiankong_start.sh /data/socket/
chmod +x /data/socket/jiankong_start.sh
cat $basepath/package/rc.local > /etc/rc.local
chmod +x /etc/rc.d/rc.local
process01pid=`ps aux|grep process01|grep -v "grep"|awk '{print $2}'`
if [ "$process01pid" ];then
kill -9 $process01pid
echo "old process01 is killed"
fi
process02pid=`ps aux|grep process02Anal|grep -v "grep"|awk '{print $2}'`
if [ "$process02pid" ];then
kill -9 $process02pid
echo "old process02Anal is killed"
fi
jiankongpid=`ps aux|grep jiankong|grep -v "grep"|awk '{print $2}'`
if [ "$jiankongpid" ];then
kill -9 $jiankongpid
echo "jiankong process is killed"
fi
nohup /data/socket/jiankong_start.sh &
if [ $? -ne 0 ]; then
echo "new jiankong process starting failed"
exit 1
fi
sleep 5
process01pid=`ps aux|grep process01|grep -v "grep"|awk '{print $2}'`
if [ "$process01pid" ];then
echo "success! process01 is running now"
fi
process02pid=`ps aux|grep process02Anal|grep -v "grep"|awk '{print $2}'`
if [ "$process02pid" ];then
echo "success ! process02Anal is running now"
fi
rm -rf /data/socket/public/
cp -r $basepath/package/public /data/socket/
chmod +x /data/socket/public/*
##############################Deploy nfs########################
echo "start deploy nfs-server"
cat $basepath/package/exports > /etc/exports
systemctl restart rpcbind
systemctl enable rpcbind
systemctl restart nfs
systemctl enable nfs
rm -rf /root/wendang/
cp -r $basepath/package/wendang /root/
cd /root/wendang/
chmod 777 Private/
chmod +x Program/
chmod +x Program/*
rpcbindpid=`ps aux|grep rpcbind|grep -v "grep"|awk '{print $2}'`
if [ "$rpcbindpid" ];then
echo "success ! rpcbind is running now"
fi
nfspid=`ps aux|grep nfs|grep -v "grep"|awk '{print $2}'`
if [ "$nfspid" ];then
echo "success ! nfs-server is running now"
fi
一个客户端一键安装环境和服务的shell脚本的更多相关文章
- socket小程序写一个客户端,实现给服务端发送hello World字符串,将客户端发送的数据变成大写后返回
写一个客户端,实现给服务端发送hello World字符串,将客户端发送的数据变成大写后返回 本机id是192.168.xx.xy 服务端 import socket soc = socket.soc ...
- 一个统计 CPU 内存 硬盘 使用率的shell脚本
一个统计 CPU 内存 硬盘 使用率的shell脚本,供大家学习参考 #!/bin/bash #This script is use for describle CPU Hard Memery Uti ...
- Dubbo入门到精通学习笔记(二):Dubbo管理控制台、使用Maven构建Dubbo的jar包、在Linux上部署Dubbo privider服务(shell脚本)、部署consumer服务
文章目录 Dubbo管理控制台 1.Dubbo管理控制台的主要作用: 2.管理控制台主要包含: 3.管理控制台版本: 安装 Dubbo 管理控制台 使用Maven构建Dubbo服务的可执行jar包 D ...
- telnet登录路由器启动服务的shell脚本
因为在测试中经常要telnet登录到路由器中去配置环境启动路由器,每次都输入一遍命令太麻烦了,想着写一个shell脚本实现自动登录.配置环境.启动服务的过程. 脚本实现是使用expect来实现的,所以 ...
- 监测NGINX服务的shell脚本
Nginx 虽然处理并发量比 apache 确实要强点,但它这种 php-cgi 模式不是太稳定,这点网上也有朋友总结了,我在实现项目中也感受到了. 偶尔会出现以下情况的:php-cgi 进程突然消失 ...
- 监控Nginx服务的Shell脚本
Nginx 虽然处理并发量比 apache 确实要强点,但它这种 php-cgi 模式不是太稳定,这点网上也有朋友总结了,我在实现项目中也感受到了. 我们一台支付机,偶尔会出现以下情况的:php-cg ...
- 自己主动下载源代码_并编译_打包_部署_重新启动服务的Shell脚本
这里面Shell的各个操作含义,可參考我三年前的这篇文章:http://blog.csdn.net/jadyer/article/details/7960802 #!/bin/sh APP_NAME= ...
- 一个简单的同步集群的shell脚本
编写一个xsync文件 然后放在/usr/local/bin 目录下面 xsync文件如下: #!/bin/bash #1 获取输入参数个数,如果没有参数,直接退出 pcount=$# if((pco ...
- 一个导出redis有序集合sorted-sets的shell脚本
通过keys匹配需要导出的有序集合名称,这些集合命名格式为:*_010_09/Dec/2015 依次通过zscan导出有序集合中的数据,并分别保存 #/bin/shzset_pattern=”*_01 ...
随机推荐
- php ueditor 后台配置项返回格式出错,上传功能将不能正常使用!
解决常见的有两种 1,可能是时区设置问题,有系统区分大小写. date_default_timezone_set("Asia/chongqing");改为 date_default ...
- Mysql执行计划说明
Mysql执行计划翻译: 官网原文请见http://dev.mysql.com/doc/refman/5.6/en/explain-output.html:5.6 EXPLAIN语句提供有关SELEC ...
- Java数据持久层框架 MyBatis之背景知识一
对于MyBatis的学习而言,最好去MyBatis的官方文档:http://www.mybatis.org/mybatis-3/zh/index.html 对于语言的学习而言,马上上手去编程,多多练习 ...
- postgres的initdb解析——从一次插件升级失败说起
我们公司基于postgres开发了一款数据库产品,不用说我们对OSS的源码做了改动,并且也集成和自己编写了一些插件.因此,当postgresql和相关插件升级时,我们也需要将升级反应到自己的产品中去, ...
- js 获取url链接的任意参数
<script> //先获取 当前的url链接 var url = location.href; //把url 链接切割为数组 var arr = url.split("&quo ...
- 查看 Apache并发请求数及其TCP连接状态【转】
查看 Apache并发请求数及其TCP连接状态 (2011-06-27 15:08:36) 服务器上的一些统计数据: 1)统计80端口连接数netstat -nat|grep -i "80& ...
- 非线性规划带约束-scipy.optimize.minimize
# coding=utf-8 from scipy import optimize import numpy as np def get(args): a, b, c, d, e, f, g, h = ...
- 【视频编解码·学习笔记】5. NAL Unit 结构分析
在上篇笔记中通过一个小程序,可以提取NAL Unit所包含的的字节数据.H.264码流中的每一个NAL Unit的作用并不是相同的,而是根据不同的类型起不同的作用.下面将对NAL Unit中的数据进行 ...
- shell获取字符串长度
方法1: 使用wc -L命令 wc -L可以获取到当前行的长度,因此对于单独行的字符串可以用这个简单的方法获取,另外wc -l则是获取当前字符串内容的行数. 代码如下: echo "abc& ...
- 反向代理和HTTP重定向
1.什么是正向代理(前向代理)? 在NAT技术(Network Address Translation)出现之前,所有主机无法直接与外网相连,要想上网,需要连接到一台能够访问外网的Web服务器,再通过 ...