linux shell每天一阅 -- 安装nginx以及apache
当然这个博客原代码是转载大神的。。。
自动安装Nginx脚本,采用case方式,选择方式,也可以根据实际需求改成自己想要的脚本mynginx.sh
- #!/bin/sh
- ###nginx install shell
- ###wugk 2012-07-14
- ###PATH DEFINE
- SOFT_PATH=/data/soft/
- NGINX_FILE=nginx-1.2.0.tar.gz
- DOWN_PATH=http://nginx.org/download/
- if[ $UID -ne 0 ];then
- echo This script must use administrator or root user ,please exit!
- sleep 2
- exit 0
- fi
- if[ ! -d $SOFT_PATH ];then
- mkdir -p $SOFT_PATH
- fi
- download ()
- {
- cd $SOFT_PATH ;wget $DOWN_PATH/$NGINX_FILE
- }
- install ()
- {
- yum install pcre-devel -y
- cd $SOFT_PATH ;tar xzf $NGINX_FILE ;cd nginx-1.2.0/ &&./configure –prefix=/usr/local/nginx/ –with-http_stub_status_module –with-http_ssl_module
- [ $? -eq 0 ]&&make &&make install #[ ]条件判断用的可以
- }
- start ()
- {
- lsof -i :80[ $? -ne 0 ]&&/usr/local/nginx/sbin/nginx #lsof -i :80 //显示所有打开80端口的进程
- }
- stop ()
- {
- ps -ef |grep nginx |grep -v grep |awk ‘{print $2}’|xargs kill -9 #本文最nice的一个就是用了xargs这个命令,将上一个命令的输出作为下一个命令的参数
- }
- exit ()
- {
- echo $? ;exit
- }
- ###case menu #####
- case $1 in
- download )
- download
- ;;
- install )
- install
- ;;
- start )
- start
- ;;
- stop )
- stop
- ;;
- * )
- echo “USAGE:$0 {download or install or start or stop}”
- exit
- esac
脚本执行:
./mynginx.sh download
./mynginx.sh install
./mynginx.sh start
./mynginx.sh stop
下文为apache shell脚本: 1 #!/bin/sh 2
#by z.jason --
#using install apache if [ $UID -ne ]; then
echo " you must are root or administrator,please exit ! "
sleep
exit
fi yum_download ()
{
wget http://mirrors.163.com/.help/CentOS6-Base-163.repo # update yum
} install ()
{
yum -y install httpd
} start ()
{
lsof -i : if [ $? -ne ];then service httpd start else echo "apache is running !" fi
#当然可以一句写成 lsof -i :80;[ $? -ne 0 ]&&service httpd start||echo "apache is running ! "就是如果lsof没有输出就会返回1,也就是失败的意思。
} stop ()
{ ps -ef |grep httpd |grep -v grep |awk ‘{print $}’|xargs kill -
#service httpd stop
} restart ()
{
servcie httpd restart
} case $ in
yum_download )
yum_download
;; install )
install
;; start )
start
;; stop )
stop
;; restart )
restart
;; * )
echo "please input yum_download or install or start or stop or restart"
esac
脚本执行:
./myapache.sh yum_download
./myapache.sh install
./myapache.sh start
./myapache.sh stop
其实两个代码的区别还是有的,前者使用源码安装,而后者使用yum安装,个人比较喜欢用yum,因为yum简单而且不用去处理软件的依赖关系。
linux shell每天一阅 -- 安装nginx以及apache的更多相关文章
- 在Linux和Windows系统上安装Nginx服务器的教程
在Linux和Windows系统上安装Nginx服务器的教程 1.在CentOS系统上安装Nginx 在 CentOS6 版本的 EPEL 源中,已经加入了 nginx 的 rpm 包,不过此 RP ...
- linux软件管理之------编译安装nginx服务器并手动编写自动化运行脚本
红帽系列的 linux软件管理分为三类:1. rpm 安装软件.2. yum 安装软件.3. 源码包编译安装.前面两种会在相关专题给出详细讲解.源码包的编译安装是非常关键的,我们知道linux的相关版 ...
- linux入门常用指令2.安装nginx
下载nginx包 nginx-1.10.3.tar.gz 解压 [root@localhost src]# tar -zxvf nginx-1.10.3.tar.gz [root@localhost ...
- Linux和Windows环境下安装Nginx
Nginx的安装 windows环境下安装Nginx 安装 Nginx 的下载地址如下: http://nginx.org/en/download.html 选择时尽量选择 Stable 稳定版本,点 ...
- Linux系统 - 源码编译安装Nginx
什么是Nginx? Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器,在高连接并发的情况下N ...
- Linux的CentOS上如何安装nginx
1. 安装nginx前,首先要装好gcc和g++环境: 2. 在centOS上装nginx,需要PCRE.zlib和ssl的支持,出ssl外其他都需要从其官网上下载好,上传至服务器: 3. 接着将上传 ...
- Linux RHEL7(CentOS7源) 安装 Nginx
安装步骤 1.添加 Nginx 源地址 CentOS7 默认没有提供 Nginx 的源,但 Nginx 自己提供了 sudo rpm -Uvh http://nginx.org/packages/ce ...
- linux服务基础之编译安装nginx
nginx源码下载地址: http://nginx.org/download/nginx-1.16.0.tar.gz //根据需要下载其他版本 1. 下载nginx # wget http://ngi ...
- shell基础之编译安装nginx
本节新学知识:if 判断语句 1 #!/bin/bash 2 #检查环境 3 SESTATE=`getenforce` 4 if [ $SESTATE != "Disabled" ...
随机推荐
- Python归纳 | WSGI协议
1.WSGI介绍 1.1什么是WSGI 1.2怎么实现WSGI 2.由Django框架分析WSGI 3.实际环境使用的wsgi服务器 4.WSGI服务器比较
- sencha touch 手势识别左右滑动
sencha touch 中添加手势识别非常简单,就是监听 dom 元素的 move 事件: 1. 为你的 view 注册 swipe 事件 // 为当前 view 注册手势滑动事件 Ext.get( ...
- C#中的不可空类型转为可空类型
默认下,C#只有两种类型: 1. 可空类型:(是指可为null) 大部分的对象, 如: Dog dog = null; 2. 不可空类型: 基本值类型,布尔类型等,如: int a = 0 ;//正确 ...
- JAVA源码之JDK(二)——Integer、Long、Double
这篇文章继续java.lang包下的源码学习,笔者也是找了几个比较常用的来阅读.下面针对Integer.Long.Double这样的基本类型的封装类,记录一些比较经典.常用的方法的学习心得,如toSt ...
- step7: 输出到json文件
调用scrapy自身的Exporter输出 编辑pipeline文件 import json from scrapy.exporters import JsonItemExporter #引入Expo ...
- Golang教程:接口
什么是接口 在面向对象语言中,接口一般被定义为 :接口定义了一个对象的行为.它仅仅指定了一个对象应该做什么.具体怎么做(实现细节)是由对象决定的. 在 Go 中,一个接口定义为若干方法的签名.当一个类 ...
- python-入门教程(操作mysql数据库)
pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb几乎相同.但目前pymysql支持python3.x,而MySQLdb不支持3.x版本. 本文测试python版本:3.6. ...
- 在ASP.NET CORE中启用favicon.ico
在静态页面中添加网站标志只需在<head>标签中添加<link rel="shortcut icon" href="favicon.ico" ...
- C++Array类模板编写笔记
C++Array类模板 函数模板和类模板都属于泛型技术,利用函数模板和类模板来创建一个具有通用功能的函数和类,以支持多种不同的形参,从而进一步简化重载函数的函数体设计. 声明方法:template&l ...
- 前端标注软件-pxcook像素大厨使用心得
我们在日常开发过程中,设计师给提供的UI图,经常需要标注尺寸,有时候设计师难免会遗漏标注,这样就会大大的增加我们的沟通成本,因此,使用一款好用的标注软件就尤为重要,我推荐这款标注软件---pxcook ...