由于智能卡设置不可用,GNOME 更新总是导致中断

由于智能卡设置不可用,GNOME 更新总是导致中断

因此,当您使用 Yubikeys 或智能卡时,这是一个令人头疼的问题,但要禁用 GUI 中的智能卡支持,您必须将其从会话环境中删除。

不幸的是,这会带来一些麻烦,因为即使你按照这个问题的答案,软件包更新有时会覆盖/usr/share/gnome-session/sessions/gnome-login.session/usr/share/gnome-session/sessions/ubuntu.session撤消这些更改。今天这个问题困扰了我很久,我花了将近一个半小时才调试好这个问题,并在我的 22.04 系统上恢复到可用状态。

我的作为一个疯狂的高级用户,解决方案是创建一个之前需要的 SystemD 单元graphical.target,并在启动过程中强制删除org.gnome.SettingsDaemon.Smartcard两个文件中的引用作为永久修复,但我想知道是否有办法覆盖会议在启动过程中提到,所以我不更改某些更新期间被覆盖的文件。

系统从哪里获得什么的定义会议文件使用sessions,我是否可以覆盖它,以便加载风俗 .session文件始终永远不会包含我需要删除的行,从而不必采用我的“高级用户”方法?

答案1

我从 IRC 获得了一个我认为可行的答案,它涉及使用dpkg-divert

本质上,dpkg-divert可以保存本地规则,这样当特定文件将被包覆盖时,我可以告诉它将文件存储在其他地方。

为此...

sudo dpkg-divert --divert /usr/share/gnome-session/sessions/gnome-login.session.dist --rename /usr/share/gnome-session/sessions/gnome-login.session

... 是给我使用的命令。它将/usr/share/gnome-session/sessions/gnome-login.session写入重定向到/usr/share/gnome-session/sessions/gnome-login.session.dist,从而保留我的登录会话设置,这样我的系统就不会崩溃。

从那里,我只需复制一份gnome-login.session.distgnome-login.session系统将不再覆盖我想要在每次更新中保持相同的文件,而它将继续保留gnome-login.session我的更改(理论上)。

感谢 IRC 聊天提供的解决方案!

相关内容