linux下面升级 Python版本并修改yum属性信息
2020-12-13 04:47
标签:plugin 元数据 pos 用法 通配 duplicate ons main tar -xvf 最近需要在linux下使用python,故需要升级一下python版本,上网查询了一下相关资料,更新了一下linux下面的python环境,记录如下: linux下面升级 Python版本并修改yum属性信息 首先linux下查询python版本 [root@test30 chengshaoling]# python -V Python 2.7.5 1.最新版本python下载安装 下载新版本的python python主站相关地址: https://www.python.org/downloads/source/ https://www.python.org/downloads/release/python-2712/ https://www.python.org/ftp/python/2.7.12/Python-2.7.12.tgz [root@test30 makePython]# wget https://www.python.org/downloads/release/python-373/Python-3.7.3.tgz #下载的不完整,又手动网页下载,上传到Linux系统的 解压缩 以及编译 [root@test30 makePython]# tar -xvf Python-2.7.12.tgz [root@test30 makePython]# cd Python-2.7.12 [root@test30 Python-2.7.12]# ./configure --prefix=/usr/local/python27 #我运行了 ./configure 后又运行了./configure --prefix=/usr/local/python37 [root@test30 Python-2.7.12]# make [root@test30 Python-2.7.12]# make install 再次查看python版本,系统展现版本未更新 [root@test30 Python-2.7.12]# python -V Python 2.7.5 2. python多版本共存解决 下面来解决这个问题 把原来的python重命名成python_old,注意不要删除 [root@test30 Python-2.7.12]# mv /usr/bin/python /usr/bin/python_old [root@test30 Python-2.7.12]# ln -s /usr/local/python37/bin/python3 /usr/bin/python 再查看一下版本 [root@test30 Python-2.7.12]#python -V Python 3.7.3 成功更新python版本 3.解决yum的python版本问题 还有最后一个问题要解决,因为yum是使用的python2.7.5的版本,所以 还需要修改一下yum的python版本(利用前面重命名的python_old文件夹的内容) [root@test30 Python-2.7.12]# yum There was a problem importing one of the Python modules required to run yum. The error leading to this problem was: No module named yum Please 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: 2.7.12 (default, Nov 29 2016, 11:07:49) [GCC 4.4.7 20120313 (Red Hat 4.4.7-17)] If you cannot solve this problem yourself, please go to the yum faq at: http://yum.baseurl.org/wiki/Faq 修改yum文件中配置的python程序位置: [root@test30 Python-2.7.12]# cd /usr/bin/ [root@test30 bin]# vi yum #!/usr/bin/python_old #修改此处为原始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: %s Please 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: %s If 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 yummain yummain.user_main(sys.argv[1:], exit_code=True) except KeyboardInterrupt, e: print >> sys.stderr, "\n\nExiting on user cancel." sys.exit(1) ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ "yum" 32L, 805C 验证 yum 是否重新可以使用 [root@test30 bin]# yum 已加载插件:fastestmirror 你需要给出命令 Usage: yum [options] COMMAND List of Commands: check Check for problems in the rpmdb check-update 检查是否有软件包更新 clean 删除缓存的数据 deplist 列出软件包的依赖关系 distribution-synchronization Synchronize installed packages to the latest available versions downgrade downgrade a package erase 从系统中移除一个或多个软件包 groupinfo 显示组的详细信息 groupinstall 向系统中安装一组软件包 grouplist 列出可安装的组 groupremove 从系统中移除一组软件包 help 显示用法信息 history Display, or use, the transaction history info 显示关于软件包或组的详细信息 install 向系统中安装一个或多个软件包 list 列出一个或一组软件包 load-transaction load a saved transaction from filename makecache 创建元数据缓存 provides 查找提供指定内容的软件包 reinstall 覆盖安装一个包 repolist 显示已配置的仓库 resolvedep 判断哪个包提供了指定的依赖 search 在软件包详细信息中搜索指定字符串 shell 运行交互式的 yum 外壳 update 更新系统中的一个或多个软件包 upgrade 更新软件包同时考虑软件包取代关系 version Display a version for the machine and/or available repos. Options: -h, --help show this help message and exit -t, --tolerant 容忍错误 -C, --cacheonly run entirely from system cache, don‘t update cache -c [config file], --config=[config file] 配置文件路径 -R [minutes], --randomwait=[minutes] 命令最长等待时间 -d [debug level], --debuglevel=[debug level] 调试输出级别 --showduplicates 在 list/search 命令下,显示仓库里重复的条目。 -e [error level], --errorlevel=[error level] 错误输出级别 --rpmverbosity=[debug level name] debugging output level for rpm -q, --quiet 安静的操作 -v, --verbose verbose operation -y, --assumeyes 回答所有的问题为是 --assumeno answer no for all questions --version 显示 Yum 版本信息并退出 --installroot=[path] 设置目标根目录 --enablerepo=[repo] 启用一个或多个仓库(支持通配符) --disablerepo=[repo] 禁用一个或多个仓库(支持通配符) -x [package], --exclude=[package] 用全名或通配符排除软件包 --disableexcludes=[repo] 禁止从主配置,从仓库或者从任何位置排除 --obsoletes 升级时考虑软件包取代关系 --noplugins 禁用 Yum 插件 --nogpgcheck 禁用 gpg 签名检测 --disableplugin=[plugin] 禁用指定名称的插件 --enableplugin=[plugin] enable plugins by name --skip-broken 跳过有依赖问题的软件包 --color=COLOR 配置是否使用颜色 --releasever=RELEASEVER set value of $releasever in yum config and repo files --downloadonly don‘t update, just download --downloaddir=DLDIR specifies an alternate directory to store packages --setopt=SETOPTS set arbitrary config and repo options 插件选项: 至此,python升级完成 参考:http://blog.sina.com.cn/s/blog_53f023270102vdvo.html 参考:https://blog.csdn.net/jiangshan35/article/details/69568271 参考:https://www.cnblogs.com/eleganthua/p/9406968.html 总结:python 升级;默认调用改为升级后的Python;但是,yum不能配套使用升级后的Python,yum 改为默认路径为老的Python包路径; linux下面升级 Python版本并修改yum属性信息 标签:plugin 元数据 pos 用法 通配 duplicate ons main tar -xvf 原文地址:https://www.cnblogs.com/Formulate0303/p/11121562.html
文章标题:linux下面升级 Python版本并修改yum属性信息
文章链接:http://soscw.com/essay/29978.html