elogind-255.17

Introduksjon til elogind

elogind er systemd prosjektets «innlogging», utviklet for å være en frittstående daemon. Den integreres med Linux-PAM-1.7.1 å spore alle brukerne som er logget inn på et system, og om de er logget inn grafisk, på konsollen eller eksternt. Elogin eksponerer denne informasjonen via standard org.freedesktop.login1 D-Bus grensesnittet, og også gjennom filsystemet ved hjelp av systemds standard /run/systemd oppsett.

elogind Avhengigheter

Anbefalt

Kjernekonfigurasjon

Aktiver følgende alternativer i kjernekonfigurasjonen og kompiler kjernen 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]

Installasjon av elogind

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

mkdir build &&
cd    build &&

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

Nå, som root bruker:

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

lib32 Installasjon av elogind

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

rm -rf * &&
CC="gcc -m32" CXX="g++ -m32"                 \
PKG_CONFIG_PATH="/usr/lib32/pkgconfig"       \
meson setup ..                               \
      --prefix=/usr                          \
      --libdir=/usr/lib32                    \
      --buildtype=release                    \
      -D cgroup-controller=elogind           \
      -D dev-kvm-mode=0660                   \
      -D dbuspolicydir=/etc/dbus-1/system.d &&
ninja

Nå, som root bruker:

DESTDIR=$PWD/DESTDIR ninja install                       &&
cp -vR DESTDIR/usr/lib32/* /usr/lib32                    &&
rm -rf DESTDIR                                           &&
ln -sfv libelogind.pc /usr/lib32/pkgconfig/libsystemd.pc &&
ldconfig

Parameterforklaringer

[Notat]

Notat

Undersøk meson_options.txt eller meson.options for en fullstendig liste over alternativer.

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

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

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

-D dev-kvm-mode=0660: LFS udev regelen angir modusen til /dev/kvm til 0660. Dette alternativet sikrer at elogind udev reglene er konsistente med LFS konfigurasjonen.

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

ln -s ...: Disse kommandoene installerer symbollenker 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 standardverdiene, kommentert ut. Du kan ønske å deaktivere automatisk avslutning av 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 ved hjelp av Linux-PAM ved innlogging. /etc/pam.d/system-session filen må endres, og en ny fil må opprettes for at elogind for at den skal 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
[Notat]

Notat

Fortsett nå til du kommer til D-Bus-1.16.2, installer den, og følg konfigurasjonsinstruksjonene på den siden for å se om elogind fungerer som den skal.

Innhold

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

Korte Beskrivelser

busctl

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

elogind-inhibit

brukes til å kjøre et program med en avstengnings, hvile eller inaktiv funksjon inhibitorlås aktivert

loginctl

brukes til å introspektere og kontrollere tilstanden til elogind påloggingsadministratoren.

libelogind

er det viktigste elogind verktøybiblioteket