Создал юзера jasttest. В его домашнюю папку /home/jasttest/www/ положил два файла:
# main.py
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello World!'
if __name__ == '__main__':
app.run()
И
# webserver.sh
#!/bin/bash
HOME=/home/jasttest
VENVDIR=$HOME/env/bin
BINDIR=$HOME/www
cd $BINDIR
source $VENVDIR/activate
/home/jasttest/env/bin/gunicorn -b localhost:8001 main:app
И в папку /usr/lib/systemd/system положил от рута файл:
[Unit]
Description=W2 Web App gunicorn
After=network.target
[Service]
Type=simple
User=jasttest
Group=jasttest
ExecStart=/home/jasttest/www/webserver.sh
[Install]
WantedBy=multi-user.target
И все отлично работает.
Демон запускается. На 8001 порту отвечает.
Делаю все один в один, но юзер на этот раз не jasttest, а 217.
И нифига не работает.
systemctl status gunicorn.service
? gunicorn.service - Web App gunicorn
Loaded: loaded (/usr/lib/systemd/system/gunicorn.service; enabled; vendor preset: disabled)
Active: failed (Result: exit-code) since Sun 2016-01-24 12:04:35 MSK; 9s ago
Process: 3347 ExecStart=/home/217/www/webserver.sh (code=exited, status=217/USER)
Main PID: 3347 (code=exited, status=217/USER)
Jan 24 12:04:35 new217.localdomain systemd[1]: Started Web App gunicorn.
Jan 24 12:04:35 new217.localdomain systemd[1]: Starting Web App gunicorn...
Jan 24 12:04:35 new217.localdomain systemd[1]: gunicorn.service: main process exited, code=exited, status=217/USER
Jan 24 12:04:35 new217.localdomain systemd[1]: Unit gunicorn.service entered failed state.
Jan 24 12:04:35 new217.localdomain systemd[1]: gunicorn.service failed.
[root@new217 system]#
[root@new217 system]#
[root@new217 system]#
[root@new217 system]# journalctl -xn
-- Logs begin at Sun 2016-01-24 10:27:06 MSK, end at Sun 2016-01-24 12:04:35 MSK. --
Jan 24 12:01:01 new217.localdomain run-parts(/etc/cron.hourly)[3331]: starting 0yum-hourly.cron
Jan 24 12:01:01 new217.localdomain run-parts(/etc/cron.hourly)[3335]: finished 0yum-hourly.cron
Jan 24 12:04:35 new217.localdomain polkitd[634]: Registered Authentication Agent for unix-process:3342:585028 (system bus name :1.59 [/usr/bin/pkttyagent --notify-fd 5 --fallback], object p
Jan 24 12:04:35 new217.localdomain systemd[1]: Started Web App gunicorn.
-- Subject: Unit gunicorn.service has finished start-up
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit gunicorn.service has finished starting up.
--
-- The start-up result is done.
Jan 24 12:04:35 new217.localdomain systemd[1]: Starting Web App gunicorn...
-- Subject: Unit gunicorn.service has begun start-up
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit gunicorn.service has begun starting up.
Jan 24 12:04:35 new217.localdomain systemd[3347]: Failed at step USER spawning /home/217/www/webserver.sh: No such process
-- Subject: Process /home/217/www/webserver.sh could not be executed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- The process /home/217/www/webserver.sh could not be executed and failed.
--
-- The error number returned by this process is 3.
Jan 24 12:04:35 new217.localdomain systemd[1]: gunicorn.service: main process exited, code=exited, status=217/USER
Jan 24 12:04:35 new217.localdomain systemd[1]: Unit gunicorn.service entered failed state.
Jan 24 12:04:35 new217.localdomain systemd[1]: gunicorn.service failed.
Jan 24 12:04:35 new217.localdomain polkitd[634]: Unregistered Authentication Agent for unix-process:3342:585028 (system bus name :1.59, object path /org/freedesktop/PolicyKit1/Authenticatio
[root@new217 system]#
Что это за прикол такой связанный с именем юзера?