On Wed, Mar 15, 2023 at 09:32:40PM +0300, Reco wrote:
> On Thu, Mar 16, 2023 at 02:20:39AM +0800, cor...@free.fr wrote:
> > I have put these statement in @reboot crontab for auto startup.
> > 
> > @reboot mkdir -p /var/run/xxx && chown -R www-data:www-data /var/run/xxx
> 
> I'd use systemd-tmpfiles(8) for that.
> Just because you probably want that directory to exist before your
> webserver starts up and not in the arbitrary point in the future.
> 
> Something like this should do it for you:
> 
> cat > /etc/tmpfiles.d/xxx.conf << EOF
> d /run/xxx 0755 www-data www-data
> EOF

Or, if this is needed as part of the web server's service, add a
RuntimeDirectory= directive to the web server's unit file.

systemd.exec(5):

                Use
           RuntimeDirectory= (see below) in order to assign a writable runtime
           directory to a service, owned by the dynamic user/group and removed
           automatically when the unit is terminated.

        Directory               Below path for system units
        RuntimeDirectory=       /run/

           In case of RuntimeDirectory= the innermost subdirectories are
           removed when the unit is stopped. It is possible to preserve the
           specified directories in this case if RuntimeDirectoryPreserve= is
           configured to restart or yes (see below).

And so on.

Reply via email to