Systemd-254
Introduksjon til systemd
Mens systemd ble installert under
byggingen av LFS, er det mange funksjoner levert av pakken som ikke
ble inkludert i den første installasjonen fordi Linux-PAM var ennå ikke installert.
systemd pakken må bli bygd om
igjen for å gi en fungerende systemd-logind service, som gir
mange tilleggsfunksjoner for avhengige pakker.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en
LFS 12.0 plattform.
Pakkeinformasjon
systemd Avhengigheter
Anbefalt
Note
Linux-PAM-1.5.3 er strengt tatt ikke
nødvendig for å bygge systemd,
men hovedgrunnen til å gjenoppbygge systemd i BLFS (den er allerede bygd i LFS
uansett) er for systemd-logind nissen og
pam_systemd.so
PAM modulen.
Linux-PAM-1.5.3 er nødvendig for dem. Alle
pakker i BLFS boken med en avhengighet av systemd forventer at den er bygget med
Linux-PAM-1.5.3.
Linux-PAM-1.5.3 og Polkit-123
(kjøretid)
Valgfri
btrfs-progs-6.3.3, cURL-8.2.1,
cryptsetup-2.4.3, git-2.41.0, GnuTLS-3.8.1,
iptables-1.8.9, libgcrypt-1.10.2,
libidn2-2.3.4, libpwquality-1.4.5, libseccomp-2.5.4,
libxkbcommon-1.5.0, make-ca-1.12,
p11-kit-0.25.0, pcre2-10.42, qemu-8.1.0,
qrencode-4.1.1, rsync-3.2.7,
sphinx-7.1.2, Valgrind-3.21.0,
zsh-5.9 (for zsh fullføringer), AppArmor, audit-userspace,
bash-completion,
jekyll, kexec-tools,
libbpf, libdw, libfido2,
libmicrohttpd,
lz4,
pyelftools, quota-tools,
rpm, SELinux,
systemtap, tpm2-tss og
Xen
Valgfri (for å gjenoppbygge manualsidene)
docbook-xml-4.5, docbook-xsl-nons-1.79.2, libxslt-1.1.38, og lxml-4.9.3 (å
bygge indeksen over systemd manualsidene)
Installasjon av systemd
Fjern to unødvendige grupper, render
og sgx
,
fra standard udev regler:
sed -i -e 's/GROUP="render"/GROUP="video"/' \
-e 's/GROUP="sgx", //' rules.d/50-udev-default.rules.in
Gjenoppbygg systemd ved å kjøre
følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-Ddefault-dnssec=no \
-Dfirstboot=false \
-Dinstall-tests=false \
-Dldconfig=false \
-Dman=auto \
-Dsysusers=false \
-Drpmmacrosdir=no \
-Dhomed=false \
-Duserdb=false \
-Dmode=release \
-Dpam=true \
-Dpamconfdir=/etc/pam.d \
-Ddev-kvm-mode=0660 \
-Ddocdir=/usr/share/doc/systemd-254 &&
ninja
Note
For de beste testresultatene, sørg for at du kjører testpakken
fra et system som startes opp av det samme systemd versjonen du bygger om.
For å teste resultatene, utsted: ninja test. Testene navngitt
test-stat-util
og test-netlink
er kjent for å mislykkes hvis noen
kjernefunksjoner ikke er aktivert. Hvis testpakken kjøres som
root
bruker, noen andre tester kan
mislykkes fordi de er avhengige av ulike kjerne
konfigurasjonsalternativer.
Nå, som root
bruker:
ninja install
Parameterforklaringer
--buildtype=release
:
Spesifiser en byggetype egnet for stabile utgivelser av pakken, som
standard kan produsere uoptimaliserte binærfiler.
-Dpamconfdir=/etc/pam.d
:
Tvinger PAM filene til å installeres i /etc/pam.d i stedet for
/usr/lib/pam.d.
-Duserdb=false
: Fjerner en
nisse som ikke gjør noe under en BLFS konfigurasjon. Hvis du ønsker
å aktivere userdbd nissen,
erstatte "false" med "true" i mesonkommandoen ovenfor.
-Dhomed=false
: Fjerner en
nisse som ikke gjør noe under en BLFS konfigurasjon, spesielt ved å
bruke kontoer opprettet med useradd. For å aktivere systemd-homed,
sørg først for at du har cryptsetup-2.4.3 og libpwquality-1.4.5 installert, og endre
deretter "false" til "true" i mesonkommandoen ovenfor.
Konfigurere systemd
/etc/pam.d/system-session
filen må
endres og en ny fil må opprettes for at systemd-logind skal fungere
riktig. Kjør følgende kommandoer som root
bruker:
grep 'pam_systemd' /etc/pam.d/system-session ||
cat >> /etc/pam.d/system-session << "EOF"
# Begin Systemd addition
session required pam_loginuid.so
session optional pam_systemd.so
# End Systemd addition
EOF
cat > /etc/pam.d/systemd-user << "EOF"
# Begin /etc/pam.d/systemd-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_systemd.so
auth required pam_deny.so
password required pam_deny.so
# End /etc/pam.d/systemd-user
EOF
Warning
Hvis du oppgraderer fra en tidligere versjon av systemd og en
initrd brukes til systemoppstart, bør du generere en ny initrd
før omstart av systemet.
Innhold
En liste over installerte filer, sammen med deres korte
beskrivelser finner du på
../../../../lfs/view/12.0-systemd/chapter08/systemd.html#contents-systemd.
Listet nedenfor er de nylig installerte programmene sammen med
korte beskrivelser.
Installerte Programmer:
homectl (valgfri), systemd-cryptenroll
(hvis cryptsetup-2.4.3 er installert), og
userdbctl (valgfri)
Korte Beskrivelser
homectl
|
er et verktøy for å opprette, fjerne, endre eller
inspisere en hjemmemappe styrt av systemd-homed; merk at
det er ubrukelig for de klassiske UNIX brukere og
hjemmemapper som vi bruker i LFS/BLFS-boken
|
systemd-cryptenroll
|
Brukes til å registrere eller fjerne et system fra full
diskkryptering, samt angi og spørre om private nøkler og
gjenopprettingsnøkler
|
userdbctl
|
inspiserer brukere, grupper og gruppemedlemskap
|
pam_systemd.so
|
er en PAM modul som brukes til å registrere brukerøkter
med systemd
påloggingsbehandler, systemd-logind
|