在/usr/lib/systemd/system目录下包含了各种unit文件,有service后缀的服务unit,有target后缀的开机级别unit等,这里介绍关于service后缀的文件。因为systemd在开机要想执行自启动,都是通过这些*.service 的unit控制的,服务又分为系统服务(system)和用户服务(user)。

    image.png
    vim /usr/lib/systemd/system/nginx.service
    [Unit]
    Description=The nginx HTTP and reverse proxy server
    After=network-online.target remote-fs.target nss-lookup.target
    Wants=network-online.target

    [Service]
    Type=forking
    PIDFile=/app/nginx/logs/nginx.pid
    ExecStartPre=/usr/bin/rm -f /app/nginx/logs/nginx.pid
    ExecStartPre=/app/nginx/sbin/nginx -t
    ExecStart=/app/nginx/sbin/nginx -c /app/nginx/conf/nginx.conf
    ExecReload=/app/nginx/sbin/nginx -s reload
    ExecStop=/app/nginx/sbin/nginx -s stop
    KillSignal=SIGQUIT
    TimeoutStopSec=5
    KillMode=process
    PrivateTmp=true

    [Install]
    WantedBy=multi-user.target

    systemctl daemon-reload