zoukankan      html  css  js  c++  java
  • python脚本实现自动安装nginx

    本文python脚本实现自动化安装是源码安装。实现任意版本安装,默认版本是1.13.11,也可以更改默认版本,手动配置安装目录。

    环境:Ubuntu16.04,python3以上版本,Ubuntu自带python3.5.

    下面是完整的代码实现:

    #导入 os,sys模块

    import os,sys

    #检查用户是否是root

    if os.getuid() != 0:

        print("当前用户不是root,请以root身份执行脚本")

        sys.exit(1)

    # 版本号的选择

    # http://nginx.org/download/nginx-1.13.11.tar.gz

    def_var = '1.13.11'

    var = input('请输入版本(默认{}):'.format(def_var))

    var = var or def_var

    # 安装目录的配置

    def_path = '/usr/local/nginx'

    path = input('请输入安装目录(默认{}):'.format(def_path))

    path = path or def_path

    # 如果存在同名文件先删除

    if os.path.exists('nginx-{}.tar.gz'.format(var)):

        os.remove('nginx-{}.tar.gz'.format(var))

    # 下载源码包

    url = 'http://nginx.org/download/nginx-{}.tar.gz'

    cmd = 'wget ' + url.format(var)

    res = os.system(cmd)

    if res != 0:

        print('下载失败')

        sys.exit(1)

    # 解压

    cmd = 'tar -zxf nginx-{}.tar.gz'.format(var)

    if os.system(cmd) != 0:

        print('解压失败')

        sys.exit(1)

    # 安装依赖

    cmd = 'apt install -y gcc make libpcre3-dev zlib1g-dev openssl libssl-dev'

    if os.system(cmd) != 0:

        print('安装依赖失败')

        sys.exit(1)

    # 配置

    cmd='cd nginx-{} && ./configure --prefix=/usr/local/nginx --with-http_ssl_module'.format(var)

    if os.system(cmd) != 0:

        print('配置失败')

        sys.exit(1)

    # 编译

    cmd='cd nginx-{} && make && make install'.format(var)

    if os.system(cmd) != 0:

        print('编译失败')

        sys.exit(1)

    print('安装成功')

    坚持这种真诚,那么总归能遇到良人。
  • 相关阅读:
    mysql同步 小问题
    通过 XtraBackup 实现不停机不锁表搭建主从同步
    grep -A -B选项详解和mysqlbinlog
    MySQL存储过程中的3种循环
    mysql利用存储过程批量插入数据
    React routerV4 笔记
    数据结构算法基础定义
    网站性能优化
    去重除了indexOf的其他方法(使用对象Key的方法)及统计重复次数
    立即执行函数的两种写法及闭包
  • 原文地址:https://www.cnblogs.com/jiaxiaozia/p/12196499.html
Copyright © 2011-2022 走看看