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

相关推荐
陈奕昆2 分钟前
n8n实战营Day2:复杂逻辑控制·HTTP请求+条件分支节点实操
网络·人工智能·python·网络协议·n8n
Aerelin8 分钟前
爬虫playwright中的等待机制
前端·爬虫·python
云计算-Security13 分钟前
基于 Kickstart 的 Linux OS CICD 部署(webhook)
运维·自动化·jenkins
虾..14 分钟前
Linux 进程等待
linux·运维·服务器
稚辉君.MCA_P8_Java24 分钟前
DeepSeek Java 多线程打印的19种实现方法
java·linux·jvm·后端·架构
卡比巴拉—林29 分钟前
Python print()函数详讲
开发语言·python
Han.miracle36 分钟前
JavaEE-- 网络编程 http请求报头
运维·服务器·网络·网络协议·计算机网络·http
奶思图米球37 分钟前
Python多环境管理
开发语言·python
Aerelin40 分钟前
iframe讲解(爬虫playwright的特殊应用)
前端·爬虫·python·html
量化Mike1 小时前
【python报错】解决卸载Python时报错问题:No Python installation was detected
开发语言·python