shell 脚本安装nginx

[root@admin ~]# cat ngin.sh
#!/bin/bash  
  
# 定义一个函数来获取计算机的基本信息  
computer () {  
    echo -e "主机名:\c"           # 打印主机名,并且不换行(-e 允许转义字符,\c 不换行)  
    hostname                      # 获取并打印主机名  
  
    echo -e "ipv4地址:\c"  
    ifconfig | grep inet | head -n 1 | awk -F " " '{print$2}'  # 提取IPv4地址  
  
    echo -e "操作系统版本:\c"  
    hostnamectl  | grep -i system | cut -d " " -f4-            # 提取操作系统版本信息  
  
    echo -e "内核版本:\c"  
    hostnamectl  | grep -i kernel | cut -d ":" -f2-            # 提取内核版本信息  
  
    echo -e "cpu型号:\c"  
    lscpu | grep -i 型号名称:| cut -d " " -f2- | tr -s " "    # 提取CPU型号信息并去除多余空格  
  
    echo -e "内存还剩:\c"  
    free -m | grep -i ^mem | awk -F " " '{print$4}'            # 提取剩余内存大小(MB)  
  
    echo -e "硬盘大小:\c"  
    lsblk -o NAME,SIZE  | grep ^nvme0n1 | awk -F " " '{print$2}' # 提取名为nvme0n1的硬盘大小  
}  
  
# 定义一个函数来安装nginx  
nginx () {  
    echo "-----------------------------------------------"  
  
    # 检查网络连接  
    ping -c 2 www.baidu.com &> /dev/null  
    if [ $? -ne 0 ];then  
        echo "网络连接失败"  
        exit 1;  
    fi  
  
    echo "-----------------准备安装nginx源码包和相关依赖包-------------"  
  
    # 安装依赖包  
    yum -y install gcc make gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel &> /dev/null  
  
    # 定义nginx的下载链接  
    i=https://nginx.org/download/nginx-1.26.0.tar.gz  
  
    # 下载nginx源码包  
    wget $i &>/dev/null  
    if [ $? -ne 0 ];then  
        echo "--------------下载出错,尝试再次下载-----------------"  
        rm -rf ./nginx-1.26.0.tar.gz &> /dev/null  # 如果下载失败,删除之前的文件  
        wget $i                                   # 尝试重新下载  
    else  
        echo "---------------nginx下载完成-------------------"  
    fi  
  
   
    tar -xf ${i/*download\/} -C /usr/local/ &> /dev/null  # 这里可能不会正确工作,建议使用固定的文件名  
  
    # 添加nginx用户  
    useradd -s /sbin/nologin nginx &> /dev/null  
  
    # 检查nginx源码目录是否存在,并编译安装  
    if [ -d /usr/local/nginx-1.26.0 ];then  
        cd /usr/local/nginx-1.26.0 && \  
        ./configure  --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_ssl_module &> /dev/null && \  
        make &>/dev/null && \  
        make install &>/dev/null  
    else  
        echo "------------没有nginx目录---------------"  
        exit 1;  
    fi  
  
    # 检查nginx是否安装成功  
    if [ $? -eq 0 ];then  
        echo "------------nginx安装完成--------------"  
    fi  
} 
nginx_start () { 
systemctl stop firewalld.service 
setenforce 0
/usr/local/nginx/sbin/nginx
if [ $? -eq 0 ];then
        echo "------------nginx启动成功-----------------"
fi
 ss -anltp| grep nginx
} 
computer  
nginx
nginx_start

  • 6
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值