SYSTEMD-TPM2-SWTPM.SERVICE(8)

πŸ“¦
version 262.1 Β· 3 versions
, in arch rolling

πŸ’– systemd-tpm2-swtpm.service β€” bestie's guide to a lil fake TPM πŸ’–

okay so this is the man page for systemd-tpm2-swtpm.service (and the binary it runs, systemd-tpm2-swtpm), and no cap it's giving "we ran out of real TPM so we made one in software" energy. let's get into it ✨


🌸 NAME 🌸

systemd-tpm2-swtpm.service, systemd-tpm2-swtpm β€” provide a fallback software TPM 🫢


✨ SYNOPSIS ✨

systemd-tpm2-swtpm.service
/usr/lib/systemd/systemd-tpm2-swtpm

πŸ¦‹ DESCRIPTION πŸ¦‹

so like. systemd-tpm2-swtpm.service hands you a fallback software TPM, and it's literally made for environments where you don't have a discrete TPM or a firmware TPM (aka a "hardware TPM"). that's the whole vibe. πŸ‘‘

it gets pulled into the boot process by systemd-tpm2-generator(8) in exactly two situations: a hardware TPM is not available, and the system is configured to provide a software TPM in that case. both boxes need ticking, bestie.

⚠️ okay important, real talk: a software TPM provides only very weak security properties compared to a hardware TPM. so it should only ever be used as a fallback mechanism β€” like, if a hardware TPM genuinely isn't available but you still want TPM semantics. that's the only time. periodt. πŸ™ˆ

this service ultimately wraps swtpm(8), so that's the little guy doing the actual work underneath. πŸ’…

if the boot secret /.extra/boot-secret (in the initrd) or /run/systemd/stub/boot-secret (on the host) is available, then the software TPM NVRAM storage gets encrypted with this key. cute, right? see systemd-stub(7) for the details. πŸ”

the TPM NVRAM storage lives on the EFI System Partition, because it has to be accessible during very early boot-up β€” specifically before the root file system is decrypted and mounted. so yeah, early. like, earlier than you'd think. 🌈


πŸŽ€ SEE ALSO πŸŽ€

systemd(1), systemd-tpm2-generator(8), swtpm(8), systemd-stub(7)


and that's the whole page, bestie!! this was systemd 262.1, mwah πŸ’– go forth and only use your software TPM as a fallback, i'm literally begging 🫢✨🌸

πŸ“¦ where this page comes from
  • arch rolling: systemd 262.1-1 Β· LGPL-2.1-or-later AND CC0-1.0 AND GPL-2.0-or-later AND MIT-0
  • πŸ’– girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms