在尝试更新/升级到 Bookworm 时遇到这个问题,让我对 Linux 的完整性有了一些思考,因为发行版/存储库不断增加,因此库可能足够多样化,从而给简单用户带来严重问题。
/usr/libexec/gvfsd-trash: symbol lookup error: /usr/libexec/gvfsd-trash: undefined symbol: g_unix_mount_point_at
- 我的源列表中有不同的存储库,以及一些旧的存储库,例如 Ubuntu、debian 和它们的许多旧版本。
- 我不知道我不能混合它们(我选择了强制选项并覆盖文件)
- 通过删除较旧的软件包和 ubuntu 存储库,通过执行“sudo apt upgrade”,很多之前不可用的软件包已经可以安装(!!!)。为什么?
- 这在我的系统中造成了 glibc、gvfs、systemd 严重冲突,并且很多
undefined symbols
- 请注意,我几乎删除了所有文件
/usr/local
和/usr/libexec
文件夹。然后重新安装了几乎所有内容sudo apt install --reinstall package
。这修复了许多未定义的错误,但没有修复关机时的 gvfs 未定义错误和 libsystemd-252.so。
因此,我的想法是:
- 为什么 Linux 不禁止甚至不检测您有冲突的存储库?
- 我认为 Linux 在“类似版本”之间具有很好的互联互通性。
- 我认为库“包含”每个相关存储库的所有内容,并且每种风格只需选择要调用的“函数”。
- 为什么不存在
sudo apt install --fix-upgrade debian-bookworm
?
我的问题:
- Linux 如何检测要安装特定库的哪个版本?
- 这不应该遵循“主要”风格吗?我知道可能存在自制风格或优化,但从用户的角度来看呢?
- 因此,就我的情况而言,debian 开发人员告诉我“祝你好运,解决 irq 通道中的混乱问题”。但是,他们给了我一些有用的信息。
- 那么,就我而言,是什么决定了安装此“gvfs 版本”会产生这些未定义的符号?
- 为什么 Linux 不打印消息“您有这些未针对 Bookworm 测试的库?”或“您有这些比 Bookworm 版本高 / 低的库?”或
sudo apt --fix-libraries for bookworm?
我已经在一个非常新的系统中安装了 bookworm 和所有商品。我想将几乎整个 /usr/ 文件夹复制到旧机器中。这样可以吗?