For anyone wondering, the systemd option exists because the utmp file format uses 32-bit time stamps on 32-bit machines, so commands like who will report incorrect times on such machines. If systemd is available, then it will just ask systemd for a list of active user sessions and when they started, since systemd already tracks that information as part of its process-supervision duties. No need to look at potentially-incorrect utmp files then.
I can hear the conspiracy theories already.
For anyone wondering, the systemd option exists because the
utmp
file format uses 32-bit time stamps on 32-bit machines, so commands likewho
will report incorrect times on such machines. If systemd is available, then it will just ask systemd for a list of active user sessions and when they started, since systemd already tracks that information as part of its process-supervision duties. No need to look at potentially-incorrectutmp
files then.