1*84af23d2SCraig Andrews# It's not recommended to modify this file in-place, because it will be
2*84af23d2SCraig Andrews# overwritten during upgrades.  If you want to customize, the best
3*84af23d2SCraig Andrews# way is to create a file "/etc/systemd/system/httpd.service",
4*84af23d2SCraig Andrews# containing
5*84af23d2SCraig Andrews#   .include /lib/systemd/system/memcached.service
6*84af23d2SCraig Andrews#   ...make your changes here...
7*84af23d2SCraig Andrews# See https://www.freedesktop.org/software/systemd/man/systemd.service.html
8*84af23d2SCraig Andrews# for detailed information about available options.
9*84af23d2SCraig Andrews
10c460f0e1SMiklos Vajna[Unit]
11c460f0e1SMiklos VajnaDescription=memcached daemon
12c460f0e1SMiklos VajnaAfter=network.target
13c460f0e1SMiklos Vajna
14c460f0e1SMiklos Vajna[Service]
15c460f0e1SMiklos VajnaEnvironmentFile=/etc/sysconfig/memcached
16c460f0e1SMiklos VajnaExecStart=/usr/bin/memcached -p ${PORT} -u ${USER} -m ${CACHESIZE} -c ${MAXCONN} $OPTIONS
17c460f0e1SMiklos Vajna
18*84af23d2SCraig Andrews# Set up a new file system namespace and mounts private /tmp and /var/tmp directories
19*84af23d2SCraig Andrews# so this service cannot access the global directories and other processes cannot
20*84af23d2SCraig Andrews# access this service's directories.
216b52e019SCraig AndrewsPrivateTmp=true
22*84af23d2SCraig Andrews
23*84af23d2SCraig Andrews# Mounts the /usr, /boot, and /etc directories read-only for processes invoked by this unit.
246b52e019SCraig AndrewsProtectSystem=full
25*84af23d2SCraig Andrews
26*84af23d2SCraig Andrews# Ensures that the service process and all its children can never gain new privileges
276b52e019SCraig AndrewsNoNewPrivileges=true
28*84af23d2SCraig Andrews
29*84af23d2SCraig Andrews# Sets up a new /dev namespace for the executed processes and only adds API pseudo devices
30*84af23d2SCraig Andrews# such as /dev/null, /dev/zero or /dev/random (as well as the pseudo TTY subsystem) to it,
31*84af23d2SCraig Andrews# but no physical devices such as /dev/sda.
326b52e019SCraig AndrewsPrivateDevices=true
336b52e019SCraig Andrews
346b52e019SCraig Andrews# Required for dropping privileges and running as a different user
356b52e019SCraig AndrewsCapabilityBoundingSet=CAP_SETGID CAP_SETUID
366b52e019SCraig Andrews
37c460f0e1SMiklos Vajna[Install]
38c460f0e1SMiklos VajnaWantedBy=multi-user.target
39