elogind-252.9

Introduksjon til elogind

elogind er systemd prosjektets "logind", trukket ut til være en frittstående nisse. Den integreres med Linux-PAM-1.6.0 å 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.1 plattform.

Pakkeinformasjon

elogind Avhengigheter

Anbefalt

Valgfri

lxml-4.9.4, zsh-5.9, Valgrind-3.22.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                   \
      -Dman=auto                            \
      -Ddocdir=/usr/share/doc/elogind-252.9 \
      -Dcgroup-controller=elogind           \
      -Ddev-kvm-mode=0660                   \
      -Ddbuspolicydir=/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. To tester navngitt test-fs-util og test-id128 krever /etc/machine-id symbolkobling, så de vil mislykkes hvis denne symbolkoblingen ikke opprettes etter instruksjonen i dbus-1.14.10 ennå.

Nå, som root bruker:

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

Parameterforklaringer

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

-Dcgroup-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.

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

-Ddev-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.

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

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

-Ddefault-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-252.9

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