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

相关推荐
疯狂吧小飞牛1 小时前
GPG基础指令
linux·服务器·网络
吴佳浩1 小时前
GPU 编号进阶:CUDA\_VISIBLE\_DEVICES、多进程与容器化陷阱
人工智能·pytorch·python
C++ 老炮儿的技术栈1 小时前
volatile使用场景
linux·服务器·c语言·开发语言·c++
全栈凯哥1 小时前
18.Python中的导入类完全指南
python
sunwenjian8862 小时前
Java进阶——IO 流
java·开发语言·python
guts3502 小时前
图像篡改数据集下载:COVERAGE、CASIA
python·数据集
todoitbo2 小时前
用虚拟局域网打通 Win/Mac/Linux 三端:跨设备协作的实用方案
linux·运维·macos
源远流长jerry2 小时前
RDMA 基本操作类型详解:从双端通信到单端直访
linux·网络·tcp/ip·ip
森林猿2 小时前
java-modbus-读取-modbus4j
java·网络·python
2401_879693873 小时前
将Python Web应用部署到服务器(Docker + Nginx)
jvm·数据库·python