Traditionally, Unix daemons will reload their configuration upon
receiving SIGHUP and terminate gracefully upon receiving SIGTERM.
Unbound follows this tradition, but in addition, it treats SIGINT
(Ctrl-C when not daemonized) and SIGQUIT (Ctrl-\ when not daemonized) as
equivalent to SIGTERM. The man page documents SIGQUIT as the correct
way to terminate Unbound.
Setting aside the question of wheter intercepting SIGQUIT is a good idea
(I don't think it is, but it's probably too late to change it), this
state of affairs seems to confuse users. Consider this FreeBSD bug
report from a user who claims that Unbound terminates cleanly when it
receives SIGQUIT, but not when it receives SIGTERM:
Traditionally, Unix daemons will reload their configuration upon
receiving SIGHUP and terminate gracefully upon receiving SIGTERM.
Unbound follows this tradition, but in addition, it treats SIGINT
(Ctrl-C when not daemonized) and SIGQUIT (Ctrl-\ when not
daemonized) as equivalent to SIGTERM. The man page documents
SIGQUIT as the correct way to terminate Unbound.
The initial man page was completely wrong, it seems. I did not know
the difference between SIGQUIT and SIGTERM when I wrote it.
Setting aside the question of wheter intercepting SIGQUIT is a good
idea (I don't think it is, but it's probably too late to change
it), this state of affairs seems to confuse users. Consider this
FreeBSD bug report from a user who claims that Unbound terminates
cleanly when it receives SIGQUIT, but not when it receives
SIGTERM: