Podman #3 - Rootful vs Rootless Cheat Sheet

September 21, 2025

So far we’ve looked at running containers with Podman as root and as a regular user. The concepts are the same, but the commands and file locations differ. Here’s a quick cheat sheet to keep things straight.

Quadlet File Location

  • Rootful: /etc/containers/systemd/
  • Rootless: ~/.config/containers/systemd/

systemctl Reload

  • Rootful: sudo systemctl daemon-reload
  • Rootless: systemctl --user daemon-reload

Service File Location

  • Rootful: /etc/containers/systemd/<name>.service
  • Rootless: /run/user/$UID/systemd/generator/<name>.service

Start the Container

  • Rootful: sudo systemctl start alpine.service
  • Rootless: systemctl --user start alpine.service

Enable at Boot

  • Rootful: sudo systemctl enable alpine.service
  • Rootless: systemctl --user enable alpine.service
    (also requires sudo loginctl enable-linger $UID)

Targets

  • Rootful: multi-user.target
  • Rootless: default.target

Generators

  • Rootful: /usr/lib/systemd/system-generators/podman-quadlet -dryrun
  • Rootless: /usr/lib/systemd/user-generators/podman-user-generator -dryrun

Summary

Rootful Podman behaves almost exactly like Docker in terms of how systemd manages services. Rootless Podman adds an extra layer of isolation (and complexity), but with the right commands and paths, it works just as smoothly. This cheat sheet should help you switch between modes without second guessing.