Re: Native systemd services.
On Sat, Mar 08, 2025 at 20:04:16 -0700, peter@easthope.ca wrote:
> # ls -1 /lib/systemd/system/stunnel*
> /lib/systemd/system/stunnel@.service
> /lib/systemd/system/stunnel.target
>
> What is stunnel@.service, rather than stunnel.service?
systemd.service(5):
SERVICE TEMPLATES
It is possible for systemd services to take a single argument via the
"service@argument.service" syntax. Such services are called
"instantiated" services, while the unit definition without the argument
parameter is called a "template". An example could be a dhcpcd@.service
service template which takes a network interface as a parameter to form
an instantiated service. Within the service file, this parameter or
"instance name" can be accessed with %-specifiers. See systemd.unit(5)
for details.
systemd.unit(5):
As mentioned above, a unit may be instantiated from a template file.
This allows creation of multiple units from a single configuration
file. If systemd looks for a unit configuration file, it will first
search for the literal unit name in the file system. If that yields no
success and the unit name contains an "@" character, systemd will look
for a unit template that shares the same name but with the instance
string (i.e. the part between the "@" character and the suffix)
removed. Example: if a service getty@tty3.service is requested and no
file by that name is found, systemd will look for getty@.service and
instantiate a service from that configuration file if it is found.
Reply to: