elogind-255.5

Introduksjon til elogind

elogind er systemd prosjektets "logind", trukket ut til være en frittstående nisse. Den integreres med Linux-PAM-1.6.1 å spore alle brukerne som er logget på et system, og om de logges på grafisk, på konsollen eller eksternt. Elogind avslører denne informasjonen via standard org.freedesktop.login1 D-Bus grensesnitt, og også gjennom filsystemet ved å bruke systemd sin standard /run/systemd mal.

Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.

Pakkeinformasjon

elogind Avhengigheter

Anbefalt

Valgfri

lxml-5.3.0, zsh-5.9, Valgrind-3.23.0 (nødvendig for tester), audit-userspace, bash-completion, kexec, og SELinux

Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/Logind

Kjernekonfigurasjon

Aktiver følgende alternativer i kjernekonfigurasjonen og kompiler kjerne på nytt om nødvendig:

File systems --->
  [*] Inotify support for userspace                               [INOTIFY_USER]
  Pseudo filesystems --->
    [*] Tmpfs virtual memory file system support (former shm fs)         [TMPFS]
    [*]   Tmpfs POSIX Access Control Lists                     [TMPFS_POSIX_ACL]

I tillegg trenger noen tester brukerområdets kryptografiske kjerne API, som er aktivert med:

-*- Cryptographic API --->                                              [CRYPTO]
  Crypto core or helper --->
    <*/M> Userspace cryptographic algorithm configuration          [CRYPTO_USER]
  Userspace interface --->
    <*/M> Hash algorithms                                 [CRYPTO_USER_API_HASH]

Installasjon av elogind

Installer elogind ved å kjøre følgende kommandoer:

mkdir build &&
cd    build &&

meson setup ..                               \
      --prefix=/usr                          \
      --buildtype=release                    \
      -D man=auto                            \
      -D docdir=/usr/share/doc/elogind-255.5 \
      -D cgroup-controller=elogind           \
      -D dev-kvm-mode=0660                   \
      -D dbuspolicydir=/etc/dbus-1/system.d &&
ninja

For å teste resultatene, utsted: ninja test. Noen få tester blir hoppet over hvis ikke kjøres med root privilegier. Tre tester, test-login, dbus-docs-fresh, og check-version-history, er kjent for å mislykkes.

Nå, som root bruker:

ninja install                                           &&
ln -sfv  libelogind.pc /usr/lib/pkgconfig/libsystemd.pc &&
ln -sfvn elogind /usr/include/systemd

Parameterforklaringer

-D docdir=/usr/share/doc/elogind-255.5: Dette er nødvendig for å installere dokumentasjon i en versjonert mappe.

-D cgroup-controller=elogind: Denne bryteren er nødvendig for å bygge denne pakken når kjernen ikke er bygget med CONFIG_CGROUPS aktivert. Noter at elogind strengt tatt trenger en kjerne med CONFIG_CGROUPS aktivert under kjøring, men denne bryteren vil tillate å bygge pakken først.

-D dbuspolicydir=/etc/dbus-1/system.d: Denne bryteren angir plasseringen av D-Bus retningslinje mappen.

-D dev-kvm-mode=0660: LFS udev-regelen setter modus for /dev/kvm til 0660. Dette alternativet sikrer elogind udev reglene er i samsvar med LFS konfigurasjonen.

-D man=auto: Standardverdien for denne bryteren er false. Sette den til auto tillater å bygge og installere manualsidene hvis de anbefalte avhengigheter er installert.

-D html=auto: Standardverdien for denne bryteren er false. Sette den til auto tillater å bygge og installere html dokumentasjonen hvis de anbefalte avhengigheter er installert.

-D default-kill-user-processes=false: Avgjør om prosessene til en bruker skal drepes når brukeren logger ut. Standard er true, men dette beseirer den tradisjonelle bruken av screen eller tmux. Dette kan også endres i konfigurasjonsfilen (se nedenfor).

ln -s ...: Disse kommandoene installerer symbolkoblinger slik at programvarepakker kan finne det systemd kompatible biblioteket og deklarasjonene.

Konfigurere elogind

Konfigurasjonsfil

/etc/elogind/logind.conf

Konfigurasjonsinformasjon

Den installerte filen /etc/elogind/logind.conf inneholder alle mulige alternativer med standardinnstillingene, kommentert ut. Det kan være lurt å deaktivere automatisk drepende brukerprosesser når brukeren logger ut, ved å kjøre, som root bruker:

sed -e '/\[Login\]/a KillUserProcesses=no' \
    -i /etc/elogind/logind.conf

Hver bruker må registrere en brukerøkt med Linux-PAM ved pålogging. /etc/pam.d/system-session filen må endres og en ny fil må opprettes for elogind å fungere riktig. Kjør følgende kommandoer som root bruker:

cat >> /etc/pam.d/system-session << "EOF" &&
# Begin elogind addition

session  required    pam_loginuid.so
session  optional    pam_elogind.so

# End elogind addition
EOF
cat > /etc/pam.d/elogind-user << "EOF"
# Begin /etc/pam.d/elogind-user

account  required    pam_access.so
account  include     system-account

session  required    pam_env.so
session  required    pam_limits.so
session  required    pam_unix.so
session  required    pam_loginuid.so
session  optional    pam_keyinit.so force revoke
session  optional    pam_elogind.so

auth     required    pam_deny.so
password required    pam_deny.so

# End /etc/pam.d/elogind-user
EOF
[Note]

Note

Etter ferdigstillelse av elogind, du bør sjekke at den fungerer som den skal. Sørg først for at dbus kjører. Det kan være lettest å gjøre dette ved å starte systemet på nytt. Etter å ha logget på igjen, kjør kommandoen loginctl. Resultatet bør indikere at en ØKT og et SETE har blitt opprettet.

Innhold

Installerte Programmer: busctl, elogind-inhibit, og loginctl
Installert Bibliotek: libelogind.so
Installerte Mapper: /usr/lib/elogind, /etc/elogind, /usr/include/elogind, og /usr/share/doc/elogind-255.5

Korte Beskrivelser

busctl

brukes til å introspisere og overvåke D-Bus bussen

elogind-inhibit

brukes til å kjøre et program med avstenging, hvilemodus eller inaktiv inhibitor lock tatt

loginctl

brukes til å introspisere og kontrollere tilstanden til elogind påloggingsbehandler

libelogind.so

er det viktigste elogind verktøybiblioteket