fix pid file location

This commit is contained in:
badaix 2017-03-04 13:18:08 +01:00
parent 833a1957fc
commit cc69707fe1
3 changed files with 8 additions and 2 deletions

View file

@ -7,7 +7,7 @@ Requires=network-online.target
EnvironmentFile=-/etc/default/snapclient EnvironmentFile=-/etc/default/snapclient
Type=forking Type=forking
ExecStart=/usr/bin/snapclient -d --user snapclient:audio $SNAPCLIENT_OPTS ExecStart=/usr/bin/snapclient -d --user snapclient:audio $SNAPCLIENT_OPTS
PIDFile=/var/run/snapclient.pid PIDFile=/var/run/snapclient/pid
Restart=always Restart=always
[Install] [Install]

View file

@ -80,6 +80,12 @@ void daemonize(const std::string& user, const std::string& group, const std::str
#endif #endif
} }
if (chown(pidfile.c_str(), user_uid, user_gid) == -1)
{
/// Couldn't open lock file
throw SnapException("Could not chown PID lock file \"" + pidfile + "\"");
}
/// set gid /// set gid
if (user_gid != (gid_t)-1 && user_gid != getgid() && setgid(user_gid) == -1) if (user_gid != (gid_t)-1 && user_gid != getgid() && setgid(user_gid) == -1)
throw SnapException("Failed to set group " + cpt::to_string((int)user_gid)); throw SnapException("Failed to set group " + cpt::to_string((int)user_gid));

View file

@ -7,7 +7,7 @@ Requires=network-online.target
EnvironmentFile=-/etc/default/snapserver EnvironmentFile=-/etc/default/snapserver
Type=forking Type=forking
ExecStart=/usr/bin/snapserver -d --user snapserver:snapserver $SNAPSERVER_OPTS ExecStart=/usr/bin/snapserver -d --user snapserver:snapserver $SNAPSERVER_OPTS
PIDFile=/var/run/snapserver.pid PIDFile=/var/run/snapserver/pid
Restart=always Restart=always
[Install] [Install]