这个案例告诉我们,千万不要动系统自带的 Python,Win系统除外

文 | fanzhenyu 出处 | http://fanzhenyu.cn/

由于无知,卸载 Ubuntu 自带的 python3 引发惨案,谨记,深刻反思。

惨案

由于实验需要使用 Python3.6 以上版本,于是决定卸载 Python3.5。

# 卸载 python3.5

$ sudo apt-getremove python3.5

没用,终端输入 python3 还是可以使用。于是,网上查找卸载python3.5的方法:

# 卸载 python3.5 及其依赖

$ sudo apt-getremove --auto-remove python3.5

# 清除 python3.5

$ sudo apt-getpurge python3.5

or

$ sudo apt-getpurge --auto-remove python3.5

接下来,终端输入 python3 依然还是可以使用。

# 删除链接

sudo rm /usr/bin/python3

然后,突然发现侧边菜单栏变灰,感觉不对劲,重启。然后,侧边菜单栏不见了,右键连打开终端的选项都没有了。

于是,查找解决方案:

# 切换到命令行模式

ctrl+alt+t

# 失败,再次尝试

ctrl+alt+F1

# 成功

$ sudo apt install -f

# 重新安装桌面

$ sudo apt-get-f install ubuntu-minimal ubuntu-standard ubuntu-desktop

# 重启

$ sudo reboot

重启后,菜单栏又出现了。但是,终端依然没有。可以在 xterm 或者 中尝试安装:

$ sudo apt install gnome-terminal

但是,一般是不起作用的,还是打不开。由于系统中很多软件都是依赖 python3,所以卸载了 python3 导致了系统崩溃。即使安装了 python3.6+ 并设置了 python3 的软连接,依然不行。

可以尝试重装 python3.5,然后设置 python3 软连接。也可以尝试以下方法:

  • https://blog.csdn.net/tao_627/article/details/91042809

  • https://blog.csdn.net/qs521/article/details/98945938

惨案发生后,即使菜单栏回来了,终端或许也能打开了,但是使用 apt 安装软件一直报 dpkg 的错误,找了很多方法也没有解决,所以还是决定重新装系统了。

正确安装 Python 3.6+

正确的方式就是不要轻易删除 python3 及其依赖。特别是不要删除依赖。在 Ubuntu16.04 中修改 python3 指向 3.6+ 版本以后,某些软件会无法使用,比如终端,需要使用上面连接的方法进行相应的处理。

这里编程派更推荐的方案是通过 pyenv 安装 3.6+版本。

安装 Python3.6+ 以上版本的正确姿势:

# 从官网下载对应版本的源码

https://www.python.org/downloads/source/

# 解压

$ tar -zxvf xxxxx

$ cd xxxx

# 创建安装目录

$ sudo mkdir -p /usr/local/python3

# 配置、编译、安装

$ ./configure --preifx=/usr/local/python3 --enable-optimizations

$ make

$ sudo make install

安装以后,不修改 python3 的指向,可以为 python3.6+ 版本指定不同的链接名:

# 添加 python37 的软链接

$ ln -s /usr/local/python3/bin/python3.7/usr/bin/python37

# 添加 pip3 的软链接(这样pip3就是python3.7专用的,也可以起名为 pip37,不影响python3.5的pip3)

$ ln -s /usr/local/python3/bin/pip3.7/usr/bin/pip3

检测版本,查看是否成功:

$ python37 -V

$ pip3 -V

重新安装系统、软件、搭建实验环境,真的是心累啊。谨记,以后不要随便卸载系统自带软件,特别是不要相信某些博客写的彻底清除xxx及其依赖的操作。

回复下方「关键词」,获取优质资源

回复关键词「 pybook03」,立即获取主页君与小伙伴一起翻译的《Think Python 2e》电子版

回复关键词「入门资料」,立即获取主页君整理的 10 本 Python 入门书的电子版

回复关键词「m」,立即获取Python精选优质文章合集

回复关键词「book 数字」,将数字替换成 0 及以上数字,有惊喜好礼哦~

题图:pexels,CC0 授权。

python卸载_删除系统 Python 引发的惨案相关推荐

  1. python卸载_手把手教Python环境安装

    Anaconda集成环境 Python3.7 如果是linux环境包括MacOs,系统环境中会默认安装python2.7. 尽量量不不要卸载linux环境中的默认python环境,直接安装Python ...

  2. python卸载_如何为Python程序制作Windows安装包?

    我们使用Python可以编写很多提高工作和学习效率的小工具,在编写完之后,如果我们想将其分享给更多的人使用,那么最便捷的方法就是将其打包为可执行程序. 在Windows环境下,我们使用Pyinstal ...

  3. 基于python的网上商城系统 python数码商城系统

    基于python的网上商城系统 python数码商城系统 源码获取:https://www.bilibili.com/video/BV1Ne4y1g7dC/ 需要完成的功能主要如下: 一.前台功能模块 ...

  4. python卸载_技术 | Python 包安装和卸载的几种方式

    黑马程序员 微信号:heiniu526 传智播客旗下互联网资讯,学习资源免费分享平台 同学对于python包的安装卸载和简单管理操作并熟练,通过简单介绍集中常用的包管理的方式,让其能够在需要安装第三方 ...

  5. python 切片_全面解读Python高级特性切片

    大家好,欢迎来到Crossin的编程教室! 众所周知,我们可以通过索引值(或称下标)来查找序列类型(如字符串.列表.元组-)中的单个元素,那么,如果要获取一个索引区间的元素该怎么办呢? 切片(slic ...

  6. 学习python课程_想学习Python吗? 这是我们的免费4小时互动课程

    学习python课程 Python is a popular, versatile and easy-to-learn language. It's the go-to language for AI ...

  7. 2018年python薪资_最好的Python:2017和2018年至今我最喜欢的文章集

    2018年python薪资 我打算发布此收藏集 (My intention with publishing this collection) Last year I only used Medium ...

  8. python股市_如何使用python和破折号创建仪表板来主导股市

    python股市 始终关注大局 (Keep Your Eyes on the Big Picture) I've been fascinated with the stock market since ...

  9. 简单几段python代码_如何用python跑一段鸿蒙最简单代码?

    首先,鸿蒙并不支持python,HarmonyOS代码开发支持多语言,包括Java.XML(Extensible Markup Language).C/C++ . JS(JavaScript).CSS ...

最新文章

  1. ad中电容用什么封装_干货 | 为什么单相电机要用电容,三相电机不需要电容?...
  2. win10 安装cuda黑屏解决
  3. Linux脚本自动安装软件,一个快速自动安装Apache及其相关软件的Shell脚本
  4. 提交请求最基础的3种方式以及可以发送请求的7个位置
  5. c++控制台下输出sin函数图形
  6. springboot 启动分析【难点】——如何自动扫描 @SpringBootApplication||如何加载自动配置类 @EnableAutoConfiguration||如何加载前端控制器
  7. optee中User TA的加载/验签和运行
  8. 【精华总结】全文4000字、20个案例详解Pandas当中的数据统计分析与排序
  9. DevExpress v17.2新版亮点—WinForms篇(四)
  10. 二叉树查找最大最小值c语言,用C语言实现二叉排序树查找小于关键字key的最大节点的函数...
  11. 用bbp公式计算pi_家用配电箱里设计几个回路合适?用这个公式,计算起来很方便...
  12. 兵马未动粮草先行,关于乐视模式的思考
  13. Flex JSP with HttpService
  14. 微服务架构学习笔记(一):gRPC Spring Boot Starter 2.2.0 发布,及使用步骤
  15. Maven下载和安装
  16. PayPal支付开发
  17. 【教3妹学算法-每日3题(2)】分割字符串的最大得分
  18. 手机APP支付--整合银联支付控件
  19. 杜一楠的反躬自省与24券的墓志铭
  20. 前端html网站的发布过程

热门文章

  1. html 下拉到一定位置,浏览器向下滚动到一定位置继续滚动时,侧边导航固定在页面顶部,再滚动到一定位置时页面再向下滚动侧边导航不再固定。这种效果怎么实现呢...
  2. mysql not in报错_mysql从5.7升级到8.0查询报错Expression #2 of SELECT list is not in GROUP BY...
  3. Java this关键字详解
  4. 四万字让你精通SQL数据库操作
  5. 【OpenCV 例程200篇】31. 图像金字塔(cv2.pyrDown)
  6. 三星s2 硬刷Android 8,三星T710(GALAXY Tab S2 8.0)一键救砖教程,轻松刷回官方系统...
  7. 请领导批阅文件怎么说_请领导吃饭,不要对外说,职场员工为何如此保密?
  8. linux 编译字符设备驱动错误,linux字符设备驱动框架及编写流程
  9. 后盾网php多少钱_商标转让做公证花多少钱-购店网
  10. django class类即视图类添加装饰器的几种方法