解决ubuntu22.04 gnome-terminal 无法启动的问题

22.04下面默认的python 版本是3.10. 如果你安装了3.8或其它版本,尽量不要去ln -s python3.8 python3修改默认python3版本,不然Terminal会打不开。猜测Terminal可能用到了python的_gi这个库。

可以在xterm或putty远程连上,输入 sudo gnome-terminal

显示如下:

bash 复制代码
sudo gnome-terminal
Traceback (most recent call last):
  File "/usr/bin/gnome-terminal", line 9, in <module>
    from gi.repository import GLib, Gio
  File "/usr/lib/python3/dist-packages/gi/__init__.py", line 40, in <module>
    from . import _gi
ImportError: cannot import name '_gi' from partially initialized module 'gi' (most likely due to a circular import) (/usr/lib/python3/dist-packages/gi/__init__.py)

虽然不知道_gi库是干什么的,但是版本不匹配,当然会有问题。

bash 复制代码
sudo vim /usr/bin/gnome-terminal

编辑可看到第一行内容是

bash 复制代码
#!/usr/bin/python3

所以说,轻易不要乱改默认的python3版本。

你要么把python指向3.8,要么就用python3.8来跑你的程序。

补充一下:

如果你实在需要把python3指向python3.8,那么你可以修改/usr/bin/gnome-terminal的第一行,把python3改为python3.10也行。

相关推荐
小章UPUP几秒前
自部署 LaTeX/Markdown 写作平台
linux
2301_764150561 分钟前
如何在 Laravel Excel 导入时校验并阻止重复列值
jvm·数据库·python
telllong1 分钟前
Python异步编程从入门到不懵:asyncio实战踩坑指南
开发语言·python
像一只黄油飞3 分钟前
第二章-01-字面量
笔记·python·学习·零基础
2401_871696523 分钟前
PHP源码对主板M.2插槽数量有要求吗_扩展性规划建议【方法】
jvm·数据库·python
qq_189807033 分钟前
防止SQL注入的运维实践_实时清理数据库缓存与历史记录
jvm·数据库·python
weixin_458580124 分钟前
MongoDB广告点击追踪如何建模_点击事件聚合与去重记录
jvm·数据库·python
justjinji5 分钟前
CSS如何实现垂直居中对齐_CSS Grid容器内的完美居中方案
jvm·数据库·python
Shorasul5 分钟前
Golang map怎么判断key存在_Golang map键值判断教程【通俗】
jvm·数据库·python
2301_815279527 分钟前
Golang go mod tidy怎么清理依赖_Golang依赖清理教程【核心】
jvm·数据库·python