前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >删除系统 Python 引发的惨案

删除系统 Python 引发的惨案

作者头像
咸鱼学Python
发布2019-12-24 15:30:35
3.3K0
发布2019-12-24 15:30:35
举报
文章被收录于专栏:咸鱼学Python咸鱼学Python

作者:fanzhenyu

原文:http://fanzhenyu.cn/

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

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

惨案

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

代码语言:javascript
复制
# 卸载 python3.5$ sudo apt-get remove python3.5

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

代码语言:javascript
复制
# 卸载 python3.5 及其依赖$ sudo apt-get remove --auto-remove python3.5# 清除 python3.5$ sudo apt-get purge python3.5

or

代码语言:javascript
复制
$ sudo apt-get purge --auto-remove python3.5

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

代码语言:javascript
复制
# 删除链接sudo rm /usr/bin/python3

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

于是,查找解决方案:

代码语言:javascript
复制
# 切换到命令行模式ctrl+alt+t# 失败,再次尝试ctrl+alt+F1# 成功$ sudo apt install -f# 重新安装桌面$ sudo apt-get-f install ubuntu-minimal ubuntu-standard ubuntu-desktop# 重启$ sudo reboot

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

代码语言:javascript
复制
$ 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+ 以上版本的正确姿势:

代码语言:javascript
复制
# 从官网下载对应版本的源码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+ 版本指定不同的链接名:

代码语言:javascript
复制
# 添加 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

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

代码语言:javascript
复制
$ python37 -V$ pip3 -V
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-12-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 咸鱼学Python 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 惨案
  • 正确安装 Python 3.6+
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档