Keyring crashing--troubleshooting help, please

Two weeks ago I upgraded this desktop system to Debian 12 with GNOME Shell 43 and gnome-keyring 42.1. Since then keyring daemon crashes and I’ve been unable to find any assistance on either the debian-user ML or on the Debian Reddit.

A security update required a system restart earlier this evening so I did so and upon logging into Shell I opened GNOME Terminal with two tabs, one with the output from journalctl and the other with putput from ps. I did nothing else with the computer. After an hour keyring daemon crashed and restarted. Which it restarts it apparently loses access to the login credentials as access to the keyring file is lost. After some period of time the daemon will shutdown entirely. I have found that stored SSH credentials are accessible until the first daemon is restarted.

Here is the output from journalctl:

-- Boot b7c27a0a572d423b9863b464efe8eaf8 --
Aug 27 19:35:08 merlin gnome-keyring-daemon[3618]: GNOME_KEYRING_CONTROL=/run/user/1000/keyring
Aug 27 19:35:08 merlin gnome-keyring-daemon[3618]: The PKCS#11 component was already initialized
Aug 27 19:35:08 merlin gnome-keyring-daemon[3777]: discover_other_daemon: 1
Aug 27 19:35:08 merlin gnome-keyring-pkcs11.desktop[3777]: discover_other_daemon: 1GNOME_KEYRING_CONTROL=/run/user/1000/keyring
Aug 27 19:35:08 merlin gnome-keyring-d[3618]: The PKCS#11 component was already initialized
Aug 27 19:35:08 merlin gnome-keyring-daemon[3618]: The Secret Service was already initialized
Aug 27 19:35:08 merlin gnome-keyring-d[3618]: The Secret Service was already initialized
Aug 27 20:35:11 merlin gnome-keyring-daemon[8737]: GNOME_KEYRING_CONTROL=/run/user/1000/keyring
Aug 27 20:35:11 merlin gnome-keyring-daemon[8737]: couldn't set environment variable in session: GDBus.Error:org.gnome.SessionManager.NotInInitialization: Setenv interface is only available during the DisplayServer and Initialization phase
Aug 27 20:35:11 merlin gnome-keyring-d[8737]: couldn't set environment variable in session: GDBus.Error:org.gnome.SessionManager.NotInInitialization: Setenv interface is only available during the DisplayServer and Initialization phase
Aug 27 20:35:11 merlin gnome-keyring-daemon[8737]: The Secret Service was already initialized
Aug 27 20:35:11 merlin gnome-keyring-d[8737]: The Secret Service was already initialized
Aug 27 20:35:11 merlin gnome-keyring-daemon[8736]: discover_other_daemon: 1
Aug 27 20:35:11 merlin org.freedesktop.secrets[8736]: GNOME_KEYRING_CONTROL=/run/user/1000/keyring
Aug 27 21:00:01 merlin org.freedesktop.secrets[8736]: discover_other_daemon: 1

Immediately upon login I ran the following ps command in another terminal tab:

$ ps ax -u nate | grep "agent\|keyring"
   3618 ?        SLsl   0:00 /usr/bin/gnome-keyring-daemon --foreground --components=pkcs11,secrets --control-directory=/run/user/1000/keyring
   3746 ?        Ssl    0:00 /usr/libexec/gcr-ssh-agent /run/user/1000/gcr
   3750 ?        Ss     0:00 ssh-agent -D -a /run/user/1000/openssh_agent
   5519 pts/0    S+     0:00 journalctl --user /usr/bin/gnome-keyring-daemon -f

and after the first restart:

$ ps ax -u nate | grep "agent\|keyring"
   3746 ?        Ssl    0:00 /usr/libexec/gcr-ssh-agent /run/user/1000/gcr
   3750 ?        Ss     0:00 ssh-agent -D -a /run/user/1000/openssh_agent
   5519 pts/0    S+     0:00 journalctl --user /usr/bin/gnome-keyring-daemon -f
   8876 pts/1    S+     0:00 grep --color=auto agent\|keyring

As can be seen, by the time I checked the computer, PID 3618 had been terminated. Sometimes I had seen a restarted version but perhaps this second instance had crashed by the time I checked this evening which was about an hour and 45 minutes after I initially logged into Shell.

I have a laptop also running Debian 12 that I upgraded last month that is running identical versions of the GNOME packages with no keyring issue.

I tried moving the $HOME/.local/share/keyings directory out of the way while logged out of the GNOME session to allow it to be recreated and still the crashes occurred. I moved the old contents back as chromium apparently accesses the keyring file directly and I have too many things stored in it by chromium to lose it!

All help is greatly appreciated.

There are 2 issues here.

  1. g-k-d crashing
  2. g-k-d not restoring to it’s state before crash ( via PAM verification )

You can raise both issues at https://gitlab.gnome.org/GNOME/gnome-keyring/-/issues/

Thanks. Issue #135 opened.

This topic was automatically closed 45 days after the last reply. New replies are no longer allowed.