zoukankan      html  css  js  c++  java
  • linux(05) 编译安装py3

    一.编译安装python3

    https://www.cnblogs.com/pyyu/p/9015317.html

    1.下载python3的源码

    cd /opt

    yum install wget -y 安装wget命令

    wget https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tgz

    注意:

    1.安装python3之前,环境依赖解决
    通过yum安装工具包,自动处理依赖关系,每个软件包通过空格分割
    提前安装好这些软件包,日后就不会出现很多坑 得保证这些依赖工具包,正确安装

    先下载依赖包

    yum install gcc patch libffi-devel python-devel  zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel -y

    2.解压缩源码包


        下载好python3源码包之后
        Python-3.6.2.tgz
        解压缩、
        tar命令可以解压缩 tgz格式
        tar -xvf  Python-3.6.2.tgz

    3.切换源码包目录


        cd Python-3.6.2

    4.编译且安装


        1.释放编译文件makefile,这makefile就是用来编译且安装的
            ./configure --prefix=/opt/python36/
                --prefix  指定软件的安装路径
        2.  开始编译python3
            make
        3.编译且安装  (只有在这一步,才会生成/opt/python36)
            make install
        4.配置python3.6的环境变量
            1.配置软连接(注意,这个和PATH配置,二选一)
                ln -s 目标文件  软连接文件
                ln -s  /opt/python36/bin/python3.6    /usr/bin/python3
                此时还没有pip
                ln -s  /opt/python36/bin/pip3   /usr/bin/pip3

    或       2.配置path环境变量 (二选一即可)
                 echo $PATH查看环境变量
                   /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
                  #这个变量赋值操作,只是临时生效,需要写入到文件,永久生效,需要进入环境变量在后面添加

                  PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/opt/python36/bin

    #linux有一个全局个人配置文件
            编辑这个文件,在最底行写入PATH
            vim /etc/profile  #进入profile文件写入
            写入

    读一下这个/etc/profile 使得生效 #读取文件才生效
            source /etc/profile

    5.测试linux安装一个django,
            pip3 install django 

    6.创建django项目
            django-admin startproject mysite
    7.创建django的APP应用
            django-admin startapp   app01

    8.编写视图函数,测试一个index视图
        
    9.注意修改settings.py的allow_hosts,windows方可访问linux的django项目  

    10.最后执行命令

    python manage.py runserver 0.0.0.0:8000

    启动

    yum工具

    yum install nginx -y

    如果你用yum命令,提示yum进程被锁定,无法使用

    解决办法:

    ps -ef|grep yum 进程,这是说 有另一个进程也在用yum yum只能有一个进程使用

    吞吐量

    django 600

    flask 1000+

    tornado 异步非阻塞的框架 1800+

    sanic 2800+ uvloop事件驱动 用在游戏接口领域

    go

    net/http web服务器 6W+

     

     

    python的虚拟环境 virtualenv

    1.需求在linux服务器上,既可以有django2.0环境,也能运行django1.11.11环境 思路: 1.django2.0想要运行,我们得准备python解释器+pip3软件包管理 2.还想运行django1.11.11 python解释器+pip3

    • 在编译安装一个python3.6???????

      • pip3安装的模块,都放在/opt/python36/lib/python3.6/site-packages

    virtualenv 就是一个虚拟解释器 就是基于物理环境下的python解释器,虚拟/分身 出的 多个解释器

    venv1 django2.0

    venv2 django1.1

    venv3 flask

    venv4 requestsscrapy

     

    安装virtualevn  #作用,在一台虚拟机上创建出许多个版本环境目录

    1.下载virtualenv工具

    通过物理环境的pip工具安装

    pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple virtualenv

    安装完成后你的linux就多了一个virtualenv命令

    2.创建虚拟环境venv1 venv2

    virtualenv --no-site-packages --python=python3 s15venv1

    调用虚拟环境的命令

    --no-site-packages 这是构建干净,隔离的模块的参数

    --python=python3 这个参数是指定虚拟环境以哪一个物理解释器为基础的

    最后一个是虚拟环境的名字 会创建这么一个文件夹

    3.进入虚拟环境目录,激活虚拟环境

    找到你的虚拟环境目录bin地下的activate文件

    source myenv/s15venv1/bin/activate

    - 激活虚拟环境,原理就是修改了PATH变量,path是有顺序执行的

    echo $PATH 检查环境变量

    which python3

    which pip3 检查虚拟环境是否正常

    4.测试安装2个虚拟环境,venv1,venv2,并且运行2个django不同版本的项目

    5.退出虚拟换的命令 deactivate

     

    保证本地开发环境和线上一致性的操作

    解决方案:

    1.通过命令保证环境的一致性,导出当前的环境中所有的包,及各个版本的简单列表,

    可以使用 “pip list”在不产生requirements文件的情况下, 查看已安装包的列表。

    2.上传至服务器后,在服务器下创建virtualenv,在venv中导入项目所需的模块依赖

    pip3 install -r requirements.txt

     

    虚拟环境管理工具virtualenvwrapper

    #作用:由于virtualenv创建的虚拟环境目录容易忘记,就引入virtualenvwrapper

    1.安装这个命令,必须得在物理解释器地下,注意!! pip3 install virtualenvwrapper

    注意这里path的配置,需要将物理解释器的python,放在path最前面

    echo $PATH 这里保持配置和我一样,将python3放在最前面

    [root@localhost ~]# echo $PATH /opt/python36/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/root/bin

    2.修改环境变量,每次开机就加载这个virtualenvwrapper工具

    vim ~/.bashrc   #vim编辑用户家目录下的.bashrc文件,这个文件是用户在登录的时候,就读取这个文件
    #export 是读取shell命令的作用
    #这些变量根据你自己的绝对路径环境修改
    export WORKON_HOME=~/Envs   #设置virtualenv的统一管理目录
    export VIRTUALENVWRAPPER_VIRTUALENV_ARGS='--no-site-packages'   #添加virtualenvwrapper的参数,生成干净隔绝的环境
    export VIRTUALENVWRAPPER_PYTHON=/opt/python347/bin/python3     #指定python解释器
    source /opt/python34/bin/virtualenvwrapper.sh #执行virtualenvwrapper安装脚本

    3.重新登录会话,使得这个配置生效

    4.此时正确的话 virtualenvwrapper工具已经可以使用

    提供了哪些命令?

     

    mkvirtualenv 虚拟环境名 #自动下载虚拟环境,且激活虚拟环境

    workon 虚拟环境名 #激活虚拟环境

    deactivate 退出虚拟环境

    rmvirtualenv 删除虚拟环境

    cdvirtualenv 进入当前已激活的虚拟环境所在的目录

    cdsitepackages 进入当前激活的虚拟环境的,python包的目录

  • 相关阅读:
    最大流
    CF Round #634
    CF Round #633
    Sunday
    Pikachu——RCE(远程系统命令、代码执行)
    Pikachu——SQL Inject
    Pikachu——CSRF(跨站请求伪造)
    Pikachu——XSS(反射型,存储型,DOM型,盲打,过滤,htmlspecialchars(),href输出,js输出)
    Pikachu暴力破解——token防爆破?
    Pikachu暴力破解——验证码绕过(on client)
  • 原文地址:https://www.cnblogs.com/zhangqing979797/p/10192695.html
Copyright © 2011-2022 走看看