0


ubuntu22.04升级ubuntu24.04的一些问题记录

文章主要用于对ubuntu22.04升级到ubuntu24.04后的一些问题记录。

升级过程中,一些配置文件我全都选择的

替换

为新的配置文件(怕配置有修改导致故障),意味着原来的配置修改没有了。

ubuntu22.04使用的是

GNOME42

,而ubuntu24.04使用的是

GNOME46

➜  ~ uname -a
Linux hcsci-ThinkPad-E15-Gen-4 6.8.0-44-generic #44-Ubuntu SMP PREEMPT_DYNAMIC Tue Aug 13 13:35:26 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux

1.windows11远程登录问题

远程设置

再重新设置一下

密码和密钥

中的登录密码:

在这里插入图片描述

详细步骤参考Windows远程登录Ubuntu22.04方式记录。

在Windows中,

Win+R

后输入

mstsc

,输入ubuntu的

IP地址

,点击

连接

,输入ubuntu系统桌面共享设置中

登录详情

内的

用户名

密码

即可。

参考文章:ubuntu24.04设置远程桌面

2.笔记本关盖后休眠问题

之前ubuntu22.04时,使用的

优化

软件来禁用休眠。

更新到ubuntu24.04后,该功能没有了。所以只能手动修改配置文件。

1.设置

息屏

从不


在这里插入图片描述
编辑

/etc/systemd/logind.conf

sudovim /etc/systemd/logind.conf

在这里插入图片描述

  • 新增行HandleLidSwitch=ignore
  • 或者修改#HandleLidSwitch=suspend行,取消注释,改suspendignore

选择其中一种就可以。

注销

重启

生效。

参考文章:ubuntu 24.04 系统优化,解决笔记本电脑合盖后休眠、desktop/桌面文件夹内的文件无法显示在桌面上的问题

3.dotnet8.0

系统升级后,

sudo apt autoremove

命令将之前的dotnet给自动卸载了。

参考如何在 Ubuntu 24.04 上安装 .NET 8.0 ? 重装。

备份一下步骤:

# 确保你的系统是最新sudoapt update
sudoapt upgrade -y

# 安装.NET需要的额外的软件sudoaptinstall -y apt-transport-https ca-certificates gnupg

# 添加 Microsoft 包存储库wget https://packages.microsoft.com/config/ubuntu/24.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb

# 安装下载的包sudo dpkg -i packages-microsoft-prod.deb

# 再次更新包索引sudoapt update

# 安装 .NET SDKsudoaptinstall -y dotnet-sdk-8.0

# 验证安装的版本
dotnet --version

验证结果:

➜  ~ dotnet --version     
8.0.108

4.弃用fcitx

起因是设置不知为何闪退,且闪退的时机不定,点击设置左侧菜单项概率闪退。

终端运行

gnome-control-center

报错

段错误

使用命令

journalctl -xe

查看日志:

9月 12 14:24:15 hcsci-ThinkPad-E15-Gen-4 systemd[2546]: Started app-gnome-org.gnome.Settings-24571.scope - Application launched by gnome-shell.
░░ Subject: UNIT 单元已结束启动
░░ Defined-By: systemd
░░ Support: http://www.ubuntu.com/support  
░░ 
░░ UNIT 单元已结束启动。
░░ 
░░ 启动结果为“done”。
9月 12 14:24:16 hcsci-ThinkPad-E15-Gen-4 gnome-control-c[24571]: No IM module matching GTK_IM_MODULE=fcitx found
9月 12 14:24:16 hcsci-ThinkPad-E15-Gen-4 gnome-shell[2900]: Window manager warning: Buggy client sent a _NET_ACTIVE_WINDOW message with a timestamp of 0 for 0x6400004
9月 12 14:24:16 hcsci-ThinkPad-E15-Gen-4 gnome-shell[2900]: Can't update stage views actor unnamed [MetaWindowActorX11] is on because it needs an allocation.
9月 12 14:24:16 hcsci-ThinkPad-E15-Gen-4 gnome-shell[2900]: Can't update stage views actor unnamed [MetaSurfaceActorX11] is on because it needs an allocation.
9月 12 14:24:16 hcsci-ThinkPad-E15-Gen-4 kernel: gnome-control-c[24571]: segfault at 0 ip 00005c059cefc9fb sp 00007ffc2f280240 error 4 in gnome-control-center[5c059cec5000+141000] likely on>
9月 12 14:24:16 hcsci-ThinkPad-E15-Gen-4 kernel: Code: 0f 1e fa 8b 47 20 85 c0 74 05 c3 0f 1f 40 00 55 48 89 e5 53 48 89 fb 48 83 ec 08 48 8b 7f 70 e8 6b 2a fd ff 48 8b 7b 40 89 c6 <48> 8b >

重装设置和桌面不行

sudoapt-getinstall gnome-control-center
sudoapt-getinstall ubuntu-desktop

根据报错

No IM module matching GTK_IM_MODULE=fcitx found

,检查

fcitx --version

没问题,设置

export GTK_IM_MODULE=fcitx

也不行。

最后解决办法简单点,直接弃用

搜狗输入法

,不用

fcitx

了,直接改为

iBus

步骤

  1. 在设置里修改输入法为iBus,点击应用到整个系统,重启(注意取消fcitx开机启动)。在这里插入图片描述
  2. 最后添加智能拼音输入法在这里插入图片描述完成设置后,点了很多次都没闪退,那就暂时认为没问题了吧。

遗留问题:远程连接时点击显示器会崩溃,但笔记本点击不会。

5.clash沙箱配置

启动

clash

时报错:

➜  Clash ./cfw
[123587:0914/104755.642606:FATAL:setuid_sandbox_host.cc(157)] The SUID sandbox helper binary was found, but is not configured correctly. Rather than run without sandboxing I'm aborting now. You need to make sure that /home/hcsci/Apps/Clash/chrome-sandbox is owned by root and has mode 4755.
[1]123587 trace trap(core dumped)  ./cfw

在Linux系统上,当尝试运行基于Electron框架的应用程序时,因为应用程序需要使用SUID沙箱(sandbox),但是沙箱没有被正确配置。

错误信息指出需要确保/home/hcsci/Apps/Clash/chrome-sandbox这个文件的所有者是

root

,并且具有

4755

的权限模式。

在这里插入图片描述

解决办法:(注意

chrome-sandbox

的路径)

  1. 改变文件的所有者为root
sudochown root /home/hcsci/Apps/Clash/chrome-sandbox
  1. 改变文件的权限模式为4755
sudochmod4755 /home/hcsci/Apps/Clash/chrome-sandbox

6.PostgreSQL模板排序规则版本不匹配

当前系统版本,由Ubuntu22.04编译

➜  ~ psql --version                                        
psql (PostgreSQL) 16.4 (Ubuntu 16.4-1.pgdg22.04+1)

创建数据库

CREATE DATABASE ar02;

报错如下,表明在创建数据库时遇到了

collation version mismatch

错误,操作系统的字符排序规则(collation)的版本与 template1 数据库使用的排序规则版本不匹配。

postgres.public> CREATE DATABASE ar02
[2024-10-10 14:05:48] [XX000] 错误: template database "template1" has a collation version mismatch
[2024-10-10 14:05:48] 详细:The template database was created using collation version 2.35, but the operating system provides version 2.39.
[2024-10-10 14:05:48] 建议:Rebuild all objects in the template database that use the default collation and run ALTER DATABASE template1 REFRESH COLLATION VERSION, or build PostgreSQL with the right library version.

会话连接到默认数据库

postgres

时也提示版本错误:

[2024-10-10 14:03:00] 已连接
[2024-10-10 14:03:00] [01000] database "postgres" has a collation version mismatch
➜  ~ psql -U postgres -h localhost
用户 postgres 的口令:
警告:  database "postgres" has a collation version mismatch
描述:  The database was created using collation version 2.35, but the operating system provides version 2.39.
提示:  Rebuild all objects in this database that use the default collation and run ALTER DATABASE postgres REFRESH COLLATION VERSION, or build PostgreSQL with the right library version.
psql (16.4 (Ubuntu 16.4-1.pgdg22.04+1))
SSL connection (protocol: TLSv1.3, cipher: TLS_AES_256_GCM_SHA384, compression: 关闭)
输入 "help" 来获取帮助信息.

postgres=# 

咨询万能的

ChatGPT

,给出解决方法如下:

  1. 刷新排序版本

使用

 ALTER DATABASE

命令刷新模板数据库的排序规则版本:

ALTERDATABASE template1 REFRESH COLLATION VERSION;

这样可以更新

template1

数据库的排序规则版本,使其与系统当前的版本匹配。

  1. 重建受影响的对象

如果有依赖于旧排序规则的对象,可以选择重建这些对象。或者,您可以使用以下命令刷新排序规则版本:

sudo -u postgres psql -c 'REINDEX DATABASE template1;'
  1. 升级PostgreSQL 库

如果问题依旧,可能需要重建 PostgreSQL 来链接到新版本的库。通过包管理器升级 PostgreSQL:

sudoapt-get update 
sudoapt-getinstall --only-upgrade postgresql 
  1. 刷新数据库的排序规则版本
➜  ~ psql -U postgres -h localhost
用户 postgres 的口令:
警告:  database "postgres" has a collation version mismatch
描述:  The database was created using collation version 2.35, but the operating system provides version 2.39.
提示:  Rebuild all objects in this database that use the default collation and run ALTER DATABASE postgres REFRESH COLLATION VERSION, or build PostgreSQL with the right library version.
psql (16.4(Ubuntu 16.4-1.pgdg22.04+1))
SSL connection (protocol: TLSv1.3, cipher: TLS_AES_256_GCM_SHA384, compression: 关闭)
输入 "help" 来获取帮助信息.
postgres=# ALTER DATABASE postgres REFRESH COLLATION VERSION;
注意:  将版本从2.35更改为2.39
ALTER DATABASE
postgres=# \c template1;
警告:  database "template1" has a collation version mismatch
描述:  The database was created using collation version 2.35, but the operating system provides version 2.39.
提示:  Rebuild all objects in this database that use the default collation and run ALTER DATABASE template1 REFRESH COLLATION VERSION, or build PostgreSQL with the right library version.
SSL connection (protocol: TLSv1.3, cipher: TLS_AES_256_GCM_SHA384, compression: 关闭)
您现在已经连接到数据库 "template1",用户 "postgres".template1=# ALTER DATABASE template1 REFRESH COLLATION VERSION;
注意:  将版本从2.35更改为2.39
ALTER DATABASE

重新执行创建数据库

CREATE DATABASE ar02;
postgres.public> CREATE DATABASE ar02
[2024-10-10 14:54:49] 在 66 ms 内完成

成功!!!就不继续测试了。

后续发现:

  • 如果Ubuntu22.04时安装的是14或15,即16以下的,升级系统时会安装16,不会有问题;
  • 但如果开始就是16,升级后就存在该问题。

如果怕会有其他库版本不匹配的问题,可以卸载重装PostgreSQL最好。

我偷懒等后续再有版本问题再重装。

标签: ubuntu

本文转载自: https://blog.csdn.net/m0_46918768/article/details/142169835
版权归原作者 m0_2640961343 所有, 如有侵权,请联系我们删除。

“ubuntu22.04升级ubuntu24.04的一些问题记录”的评论:

还没有评论