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('安装成功')

    坚持这种真诚,那么总归能遇到良人。
  • 相关阅读:
    AngularJS Insert Update Delete Using PHP MySQL
    Simple task manager application using AngularJS PHP MySQL
    AngularJS MySQL and Bootstrap Shopping List Tutorial
    Starting out with Node.js and AngularJS
    AngularJS CRUD Example with PHP, MySQL and Material Design
    How to install KVM on Fedora 22
    Fake_AP模式下的Easy-Creds浅析
    河南公务员写古文辞职信
    AI
    政协委员:最大愿望是让小学生步行上学
  • 原文地址:https://www.cnblogs.com/jiaxiaozia/p/12196499.html
Copyright © 2011-2022 走看看