[Bug 1944711] Re: restarting systemd-logind loses all existing sessions

Dan Streetman 1944711 at bugs.launchpad.net
Thu Sep 23 11:37:02 UTC 2021


** Changed in: systemd (Ubuntu)
       Status: New => Fix Released

** Description changed:

  [impact]
  
  restarting the systemd-logind service loses all existing sessions
  
  [test case]
  
  ubuntu at test-f:~$ loginctl list-sessions
- SESSION  UID USER   SEAT TTY  
-    3789 1000 ubuntu      pts/0
+ SESSION  UID USER   SEAT TTY
+    3789 1000 ubuntu      pts/0
  
  1 sessions listed.
  ubuntu at test-f:~$ journalctl -b -u systemd-logind
  -- Logs begin at Thu 2021-09-23 11:11:57 UTC, end at Thu 2021-09-23 11:22:55 UTC. --
  Sep 23 11:22:51 test-f systemd[1]: Starting Login Service...
  Sep 23 11:22:51 test-f systemd-logind[198]: New seat seat0.
  Sep 23 11:22:51 test-f systemd[1]: Started Login Service.
  Sep 23 11:22:52 test-f systemd-logind[198]: New session 3789 of user ubuntu.
  ubuntu at test-f:~$ sudo systemctl restart systemd-logind
  ubuntu at test-f:~$ journalctl -b -u systemd-logind
  -- Logs begin at Thu 2021-09-23 11:11:57 UTC, end at Thu 2021-09-23 11:23:07 UTC. --
  Sep 23 11:22:51 test-f systemd[1]: Starting Login Service...
  Sep 23 11:22:51 test-f systemd-logind[198]: New seat seat0.
  Sep 23 11:22:51 test-f systemd[1]: Started Login Service.
  Sep 23 11:22:52 test-f systemd-logind[198]: New session 3789 of user ubuntu.
  Sep 23 11:23:07 test-f systemd[1]: Stopping Login Service...
  Sep 23 11:23:07 test-f systemd[1]: systemd-logind.service: Succeeded.
  Sep 23 11:23:07 test-f systemd[1]: Stopped Login Service.
  Sep 23 11:23:07 test-f systemd[1]: Starting Login Service...
  Sep 23 11:23:07 test-f systemd-logind[469]: Failed to add user by file name 1000, ignoring: Invalid argument
  Sep 23 11:23:07 test-f systemd-logind[469]: User enumeration failed: Invalid argument
  Sep 23 11:23:07 test-f systemd-logind[469]: User of session 3789 not known.
  Sep 23 11:23:07 test-f systemd-logind[469]: Session enumeration failed: No such file or directory
  Sep 23 11:23:07 test-f systemd-logind[469]: New seat seat0.
  Sep 23 11:23:07 test-f systemd[1]: Started Login Service.
  ubuntu at test-f:~$ loginctl list-sessions
  No sessions.
  
  [regression potential]
  
  any regression would likely occur during a systemd-logind restart,
  likely causing a loss of current login sessions.
  
  [scope]
  
- this is needed in f and earlier
+ this is needed only in f
  
  this is fixed upstream by commit
  ac4e03d45bcf4ad2e570cabdb218e9bac003cc80 which is included in v246, so
  this is fixed in h and later already.
+ 
+ in b, the function used to parse the /run/systemd/users/* files allows
+ either usernames or uids, so this bug does not exist there

** Changed in: systemd (Ubuntu Focal)
     Assignee: (unassigned) => Dan Streetman (ddstreet)

** Changed in: systemd (Ubuntu Focal)
   Importance: Undecided => High

** Changed in: systemd (Ubuntu Focal)
       Status: New => In Progress

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to systemd in Ubuntu.
https://bugs.launchpad.net/bugs/1944711

Title:
  restarting systemd-logind loses all existing sessions

Status in systemd package in Ubuntu:
  Fix Released
Status in systemd source package in Focal:
  In Progress

Bug description:
  [impact]

  restarting the systemd-logind service loses all existing sessions

  [test case]

  ubuntu at test-f:~$ loginctl list-sessions
  SESSION  UID USER   SEAT TTY
     3789 1000 ubuntu      pts/0

  1 sessions listed.
  ubuntu at test-f:~$ journalctl -b -u systemd-logind
  -- Logs begin at Thu 2021-09-23 11:11:57 UTC, end at Thu 2021-09-23 11:22:55 UTC. --
  Sep 23 11:22:51 test-f systemd[1]: Starting Login Service...
  Sep 23 11:22:51 test-f systemd-logind[198]: New seat seat0.
  Sep 23 11:22:51 test-f systemd[1]: Started Login Service.
  Sep 23 11:22:52 test-f systemd-logind[198]: New session 3789 of user ubuntu.
  ubuntu at test-f:~$ sudo systemctl restart systemd-logind
  ubuntu at test-f:~$ journalctl -b -u systemd-logind
  -- Logs begin at Thu 2021-09-23 11:11:57 UTC, end at Thu 2021-09-23 11:23:07 UTC. --
  Sep 23 11:22:51 test-f systemd[1]: Starting Login Service...
  Sep 23 11:22:51 test-f systemd-logind[198]: New seat seat0.
  Sep 23 11:22:51 test-f systemd[1]: Started Login Service.
  Sep 23 11:22:52 test-f systemd-logind[198]: New session 3789 of user ubuntu.
  Sep 23 11:23:07 test-f systemd[1]: Stopping Login Service...
  Sep 23 11:23:07 test-f systemd[1]: systemd-logind.service: Succeeded.
  Sep 23 11:23:07 test-f systemd[1]: Stopped Login Service.
  Sep 23 11:23:07 test-f systemd[1]: Starting Login Service...
  Sep 23 11:23:07 test-f systemd-logind[469]: Failed to add user by file name 1000, ignoring: Invalid argument
  Sep 23 11:23:07 test-f systemd-logind[469]: User enumeration failed: Invalid argument
  Sep 23 11:23:07 test-f systemd-logind[469]: User of session 3789 not known.
  Sep 23 11:23:07 test-f systemd-logind[469]: Session enumeration failed: No such file or directory
  Sep 23 11:23:07 test-f systemd-logind[469]: New seat seat0.
  Sep 23 11:23:07 test-f systemd[1]: Started Login Service.
  ubuntu at test-f:~$ loginctl list-sessions
  No sessions.

  [regression potential]

  any regression would likely occur during a systemd-logind restart,
  likely causing a loss of current login sessions.

  [scope]

  this is needed only in f

  this is fixed upstream by commit
  ac4e03d45bcf4ad2e570cabdb218e9bac003cc80 which is included in v246, so
  this is fixed in h and later already.

  in b, the function used to parse the /run/systemd/users/* files allows
  either usernames or uids, so this bug does not exist there

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1944711/+subscriptions




More information about the foundations-bugs mailing list