解决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也行。

相关推荐
Uncertainty!!几秒前
claude code在pycharm中的安装使用
ide·python·pycharm·claude code
覆东流3 分钟前
第7天:Python小项目
开发语言·后端·python
空管电小二4 分钟前
【低压断路器的选择性配合】低压配电“安全后盾“:后备保护到底是什么?
运维·经验分享·安全·学习方法
a1117766 分钟前
Boxer 论文复刻(需要下载的文件都已放到压缩包)
python·开源·cv
不吃肥肉的傲寒7 分钟前
Graphify安装与结合claude code使用指南
java·python·ai编程·图搜索
djjdjdjdjjdj12 分钟前
golang如何编写SSL证书到期检测工具_golang SSL证书到期检测工具编写总结
jvm·数据库·python
ch3nyuyu15 分钟前
IO缓冲区
linux·服务器
axinawang17 分钟前
第2课: 与世界打招呼(输出)
python
2301_8135995517 分钟前
HTML5中Canvas局部刷新区域重绘的算法优化
jvm·数据库·python
m0_6028577618 分钟前
mysql如何防止用户通过子查询窃取权限_MySQL安全参数设置
jvm·数据库·python