linux(centOS7,mini),python环境的搭建

今天想试一试python在linux下的工作,在vmware中安装了centOS7版本的linux,先前装过一个带GUI的,但是感觉在虚拟机理跑的太慢,干脆直接装一个最精简的mini版,试一下ifconfig,vim啥的全部commend not found。得了,从头来吧!

1.安装ifconfig等指令 yum 

2.安装vim:

输入 rpm -qa|grep vim 命令,如果 vim 已经正确安裝,会返回下面的三行代码:

1 root@server1 [~]# rpm -qa|grep vim
2 vim-enhanced-7.0.109-7.el5
3 vim-minimal-7.0.109-7.el5
4 vim-common-7.0.109-7.el5

如果少了其中的某一条,比如 vim-enhanced 的,就用命令 yum -y install vim-enhanced 来安裝:

yum -y install vim-enhanced
vim-common,就用命令 yum -y install vim-common来安裝:
yum -y install vim-common

3.安装wget等指令

yum -y install wget

yum -y install zlib*(安装python3时候必用!)

4.安装python3

4.1  在/usr/bin文件下用ls python*查看所有python文件

[root@localhost bin]# cd /usr/bin
[root@localhost bin]# ls python*
python  python2  python2.7  python.bak
[root@localhost bin]# 

此处的python已经是我安装后的,python.bak即为原有的python2的备份文件

我们把python2的引导文件做个备份

[root@localhost bin]# rm python python.bak

4.2然后下载新版python的安装包(懒得在上官网查了,有一个3.6的链接直接拿来用的!)下载包应该在/usr/local文件夹下新建个文件夹

[root@localhost local]# cd /usr/local
[root@localhost local]# mkdir python3

进入后用wget指令下载

[root@localhost local]# cd python3/
[root@localhost python3]# wget https://www.python.org/ftp/python/3.6.3/Python-3.6.3.tgz

下载过程有进度条显示,如果卡滞可敲回车键刷新。

下载完成后用tar对安装包解压缩

[root@localhost python3]# tar python-3.6.3.tgz

4.3解压完成后进入文件夹

[root@localhost python3]# cd Python-3.6.3/
[root@localhost Python-3.6.3]#  ./configure --prefix=/usr/local/python3Dir

(执行完这句命令之后,不要切换到别的目录,不然会非常懵逼,因为执行完之后如果去/usr/local/下面的看的话是没有python3Dir目录的)稍微解释上面这句命令,这句话的大致目的就是把python的安装目录指定一下,这样的话,里面的一些bin目录、lib目录就都会存放在这个目录下面。如果不指定这个安装目录的话,最后python的安装文件将分散到linux的默认目录,不在一块。我们指定安装目录,以后卸载的话直接删除目录就可以干净卸载了。

 4.4准备安装

还在该文件夹下运行

[root@localhost Python-3.6.3]# make

在一大段代码弹出后,运行

[root@localhost Python-3.6.3]# make install

然后出现什么什么success的字样,就说明安装完成了。

4.5连接

[root@localhost Python-3.6.3]# cd /usr/bin
[root@localhost bin]# ln -s /usr/local/Python3Dir/bin/python3 /usr/bin/python

建立软链接后,用ll查看是否完成

[root@localhost bin]# ll python*
lrwxrwxrwx. 1 root root   33 12月 31 00:23 python -> /usr/local/Python3Dir/bin/python3
lrwxrwxrwx. 1 root root    9 12月 30 18:16 python2 -> python2.7
-rwxr-xr-x. 1 root root 7216 10月 31 07:46 python2.7
lrwxrwxrwx. 1 root root    7 12月 30 18:16 python.bak -> python2

python已经连接成功,可以查看新版本了!

[root@localhost bin]# python -V
Python 3.6.3

5 出现问题:

1在安装wget的时候,一直提示 no such file or dictionary,原因是把要安装python3的时候把原有的python备份了一下(文件名改成了python.bak),但新版本还没装,一直无法安装,把文件名改回来就好了

2在安装过程中出现一次zlib 的error,查了一下是没有安装这个

2在建立软链接的时候,一定要注意字符的大小写,新建软链接后无法启动python,用ll查看时发现有一个路径字母写成小写的了,用rm指令删除后(rm python)重新建立软链接。

6 待改进措施:

原有的yum是基于python2编写的,但我们把python指向了新版的python3,在后期使用yum时可能会出现些bug,建议把yum使用原有的python2版本

[root@localhost bin]# vi /bin/yum
#!/usr/bin/python
import sys
try:import yum
except ImportError:print >> sys.stderr, """\
There was a problem importing one of the Python modules
required to run yum. The error leading to this problem was:%sPlease install a package which provides this module, or
verify that the module is installed correctly.It's possible that the above module doesn't match the
current version of Python, which is:
%sIf you cannot solve this problem yourself, please go to
the yum faq at:http://yum.baseurl.org/wiki/Faq""" % (sys.exc_value, sys.version)sys.exit(1)sys.path.insert(0, '/usr/share/yum-cli')
try:import yummainyummain.user_main(sys.argv[1:], exit_code=True)
except KeyboardInterrupt, e:print >> sys.stderr, "\n\nExiting on user cancel."sys.exit(1)

将#!/usr/bin/python 后边加上2.7,保存退出即可

转载于:https://www.cnblogs.com/yinsedeyinse/p/10201117.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/570000.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

VO,BO,PO,DO,DTO的区别

面对这个图,让我们先从承上启下的DTO开始入手 DTO(Data Transfer Object)数据传输对象 这个传输通常指的前后端之间的传输 DTO是一个比较特殊的对象,他有两种存在形式: 在后端,他的存在形式是java对象&…

Windows下pip 离线包安装

pip在线安装十分方便,有时候某些服务器并没有直接联网,需要下载好安装包上传到服务器上进行安装,不经常用,还是有点小麻烦的。 安装Python之后,将下载好的安装包包放在Python安装的根目录下使用pip install packagenam…

mysql维护

1.通过 show engine innodb status命令来查看这些线程的状态: mysql>show engine innodb status\G *************************** 1. row ***************************Type: InnoDBName: #####################################################################…

VMware设置及linux静态ip设置

1. VMWARE虚拟机NAT模式上网设置 1.1. VM虚拟机设置 1.1.1. 虚拟机全局设置 启动虚拟机选择【虚拟网络编辑器】 如果需要管理员权限点【更改设置】,没有提示这忽略这一步 选择NAT模式,更改下面的子网IP,改成你需要的任何一个子网网段&…

InnoDB内存优化

1.InnoDB缓存机制 InnoDB用一块内存区做IO缓存池,该缓存池不仅用来缓存InnoDB的索引块,而且也用来缓存InnoDB的数据块,这一点与MyISAM不同。 在内部,InnoDB缓存池逻辑上由 free list、flush list和LRU list组成。顾名…

问题 L: 超超的中等意思

问题 L: 超超的中等意思 时间限制: 1 Sec 内存限制: 128 MB提交: 366 解决: 27[提交] [状态] [命题人:jsu_admin]题目描述 已知p,q,k和一个难搞得多项式(pxqy)^k。想知道在给定a和b的值下计算多项式展开后x^a*y^b得系数s。输入 多组输入,每组数据一行输入p,q,k,a,…

改善带有 order by子句或group子句SQL的性能

如果通过 show global status 看到 sort_merge_passes 的值很大,可以考虑通过调整参数sort_buffer_size的值来增大排序缓存区,以改善带有 order by子句或group子句SQL的性能。 对于无法通过索引进行连接操作的查询,可以尝试通过增大&#xf…

springboot系列十五、springboot集成PageHelper

一、介绍 项目中经常会遇到分页,PageHelper为我们解决了这个问题。本质上实现了Mybatis的拦截器,作了分页处理。 二、配置PageHelper 1、引入依赖 pagehelper-spring-boot-starter对了pagehelper做了封装,减少 了配置文件,只需要在…

SELinux 引起的 Docker 启动失败

问题描述 Linux OS 版本 CentOS Linux release 7.2.1511 (Core) 启动Docker service docker start 启动失败信息 原因分析 Error starting daemon: SELinux is not supported with the overlay2 graph driver on this kernel. Either boot into a newer kernel or disabl...nab…

第十一章 Helm-kubernetes的包管理器(上)

Helm - K8s的包管理器 11.1 Why Helm K8s能够很好的组织和编排容器,但它缺少一个更高层次的应用打包工具,Helm就是干这个的。 比如对于一个MySQL服务,K8s需要部署如下对象: (1)Service,让外界能…

C# - JSON详解

C# - JSON详解 转载于:https://www.cnblogs.com/macT/p/10214396.html

弗尤博客(十一)之搜索博文

在首页中右侧在textbox输入值,单击搜索Botton 跳转到 找一找 页面 其中textbox文本值传递过去并且显示在控件中,搜索结果也一起显示(datalist)转载于:https://www.cnblogs.com/frankybpx/p/10214409.html

史上最全的前端开发面试题(含详细答案)

本文由我收集网络 自己平时面试的 或者面试别人时的一些前端面试题,初学者阅后也要用心钻研其中的原理,重要知识需要系统学习、透彻学习,形成自己的知识链。万不可投机取巧,切勿临时抱佛脚只求面试侥幸混过关. 知识最重要的是学习…

MySQL之IFNULL()、ISNULL、NULLIF用法

MySQL之IFNULL()、ISNULL、NULLIF用法 IFNULL语法说明 IFNULL(expr1,expr2) 如果 expr1 不是 NULL,IFNULL() 返回 expr1,否则它返回 expr2。 IFNULL()返回一个数字或字符串值,取决于它被使用的上下文环境。 举个栗子: 1 mysql…

postgresql模糊匹配正则表达式性能问题

postgresql 模糊匹配 目前建议使用like,~~,不建议使用正则表达式, 目前有性能问题https://yq.aliyun.com/articles/405097正则表达式效率比较低下:操作符 ~~ 等效于 LIKE, 而 ~~* 对应 ILIKE。 还有 !~~ 和 !~~* 操作符 分别代表 …

数据库的原理,一篇文章搞定(一)

https://blog.csdn.net/zhangcanyan/article/details/51439012 一提到关系型数据库,我禁不住想:有些东西被忽视了。关系型数据库无处不在,而且种类繁多,从小巧实用的 SQLite 到强大的 Teradata 。但很少有文章讲解数据库是如何工作…

配置MySQL的环境变量

配置MySQL的环境变量 1.现在安装MySQL ——–下载最新版MySQL软件,将MySQL安装到系统目录中,记录当前安装目录; 如安装mysql到D:\wamp\mysql目录下 2.打开win7系统——右击计算机——单击属性-弹出win7系统页面 3.高级系统设置-环境变…

通过mysqldump备份数据库

使用mysqldump命令备份 mysqldump命令的作用是备份MySQL数据库。是将数据库中的数据备份成一个文本文件。表的结构和表中的数据将存储在生成的文本文件中。mysqldump命令的工作原理很简单。它先查出需要备份的表的结构,再在文本文件中生成一个CREATE语句。然后&…

ThinkPHP-保存生成的二维码

通过TP框架引入Qrcode插件,然后调用插件生成二维码,并保存1.引入qrcode插件: 2.功能页面-生成二维码按钮: 3.生成二维码-代码: 4.后台代码-通过vendor方法引入: //下载生成的二维码-引用方法1 pu…

工厂方法 Factory Method

背景:有一个应用框架,它可以向用户显示多个文档。在这个框架中,两个主要的抽象是类Application和Document.这两个类都是抽象的。客户必须通过它们的子类来做与举替应用相关的实现。 分析:因为被实例化的特定Document子类是与特定应…