UPDATE-EXIM4DEFAULTS(8)

πŸ“¦ version 4.96, in debian bookworm, ubuntu jammy

πŸŽ€ UPDATE-EXIM4DEFAULTS πŸŽ€

okay bestie, so this one is update-exim4defaults β€” it's the little helper that lives in your System Manager's Manual and handles the Exim daemon's default file. She's giving "glue script that other packages depend on" and honestly? iconic behavior.


✨ NAME ✨

update-exim4defaults β€” manage the exim4 daemon default file. that's it, that's the job, and she does it flawlessly πŸ’…


🌸 SYNOPSIS 🌸

update-exim4defaults [ --qflags flags ] [ --queuerunner
combined|queueonly|separate|ppp|no|nodaemon ] [ --queuetime time ] [
--commonoptions options ] [ --queuerunneroptions options ] [
--smtplisteneroptions options ] [ --remove-common options ] [
--remove-queue options ] [ --remove-smtp options ] [ --force|-f ] [
--help|-h ] [ --init ]

πŸ’– DESCRIPTION πŸ’–

so update-exim4defaults lets you set the run parameters for the Exim daemon inside /etc/default/exim4. lowkey its whole main character purpose is interacting with other packages that enhance Exim β€” think virus-scanners and friends β€” because those packages need to change the way the exim daemon gets started, and they need a polite, official way to do it instead of just raw-editing your config like a menace πŸ™ˆ


πŸ‘‘ OPTIONS πŸ‘‘

  • --help, -h β€” prints a short usage instruction and dips. that's all, she's brief πŸ’«
  • --qflags flags β€” sets qflags, which are the special flags handed to exim directly right after the -q. peek at exim(8) if you want the full lore.
  • --queuerunner combined|queueonly|separate|ppp|no|nodaemon β€” the big vibe question: how should this whole thing run? okay so your choices are:
    • combined β€” one single daemon that listens on the smtp port for incoming connections and runs the queue at regular intervals.
    • separate β€” two separate daemons, one listening on the smtp port and the other running the queue.
    • ppp β€” the queue only gets run by /etc/ppp/ip-up.d/exim4.
    • no β€” don't run the queue at all, like, say, if you'd rather handle it with cron yourself (respect).
    • queueonly β€” only start a queuerunner.
    • nodaemon β€” no daemon at all. nothing. silence. ghost mode πŸ‘»
  • --queuetime time β€” how often do we run the queue? this gets passed to Exim as the option -q<qflags>time, so for example -q30m or -qq1h.
  • --commonoptions options β€” options that get passed to both the queue-running instance and the listening instance of Exim. shared custody 🫢
  • --queuerunneroptions options β€” options passed only to the instance of Exim that runs the queue.
  • --smtplisteneroptions options β€” options passed only to the instance of Exim listening on the SMTP port.
  • --force, -f β€” without this, update-exim4defaults will exit with an error if at least one of --queuetime, --commonoptions, --queuerunneroptions or --smtplisteneroptions is used and the corresponding value in /etc/default/exim4 is already set to a nonempty value. so like, she's checking if you're about to clobber something that already exists. --force is you saying "yes bestie, I know, overwrite it anyway" πŸ’€
  • --remove-common option β€” try to remove the given option from COMMONOPTIONS.
  • --remove-queue option β€” try to remove the given option from QUEUERUNNEROPTIONS.
  • --remove-smtp option β€” try to remove the given option from SMTPLISTENEROPTIONS.
okay important, no skipping: the --remove-commands cannot be used at the same time as any of --commonoptions, --queuerunneroptions or --smtplisteneroptions. and the --remove-commands will additionally strip whitespace off the beginning and the end of the option, and swap multiple spaces out for a single one. tidy queen ✨
  • --init β€” create a default /etc/default/exim4 file and exit immediately. unless --force was also specified, update-exim4defaults exits (successfully!) without doing anything at all if /etc/default/exim4 already exists. and heads up: all other options are ignored when you use this one. πŸ™ˆ

πŸ¦‹ EXIT STATUS πŸ¦‹

  • 0 β€” the change was successful, or literally nothing needed to be done. we love a chill outcome.
  • 1 β€” generic error: wrong options, unreadable configuration file, etc. the classic.
  • 2 β€” QUEUEINTERVAL was already set.
  • 4 β€” COMMONOPTIONS was already set.
  • 8 β€” QUEUERUNNEROPTIONS was already set.
  • 16 β€” SMTPLISTENEROPTIONS was already set.
  • 32 β€” QFLAGS was already set.
  • 64 β€” --remove-something failed, i.e. the value of the option was not changed. 😭

and here's the math part: exit codes 2 to 32 get summed up if more than one unsuccessful option was given. so yes, you can absolutely receive a cursed little number that is the sum of several disappointments. no cap.


🌈 FILES 🌈

  • /etc/default/exim4 β€” the configuration file. the whole point. the moment.
  • /etc/init.d/exim4 β€” the Exim init-script.
  • /etc/ppp/ip-up.d/exim4 β€” the queuerunner in this file also uses COMMONOPTIONS and QUEUERUNNEROPTIONS, and it does not run if QUEUERUNNER=no.

πŸ’€ BUGS πŸ’€

okay so the page itself is spilling the tea: this manual page needs a major re-work. if somebody knows better groff than us and has more experience writing manual pages, any patches would be greatly appreciated. (not me volunteering, but also… πŸ‘€)


🌟 SEE ALSO 🌟

exim(8), /usr/share/doc/exim4-base/


πŸ’œ AUTHOR πŸ’œ

Andreas Metzler <ametzler at downhill.at.eu.org>


and that's the whole thing, bestie 🫢 this was the EXIM4 page, dated March 26, 2003, and yes she's still out here doing update-exim4defaults(8) duties. slay, periodt πŸ’…βœ¨

πŸ“¦ where this page comes from