LINUX.ORG.RU

systemd & python

 


0

1
[Unit]
Description=Python daemon
After=syslog.target
After=network.target

[Service]
Type=simple
User=user
Group=user
ExecStart=/bin/bash /home/user/test.py

[Install]
WantedBy=multi-user.target

cat syslog | grep python

Apr 15 00:32:54 e3 systemd[21231]: pythonmap.service: Failed at step EXEC spawning /home/user/test.py: Exec format error
Apr 15 00:32:54 e3 systemd[1]: pythonmap.service: Main process exited, code=exited, status=203/EXEC
Apr 15 00:32:54 e3 systemd[1]: pythonmap.service: Unit entered failed state.
Apr 15 00:32:54 e3 systemd[1]: pythonmap.service: Failed with result 'exit-code'
Что не так?


systemd

cat syslog

systemctl status pythonmap.service
r3lgar ★★★★★
()

/home/user/test.py

Пускать от юзера (systemctl --user start pythonmap.service), или не класть скриптоту в хомяк.

r3lgar ★★★★★
()
Ответ на: комментарий от alex_the_v

Наверняка там есть шебанг, так что вообще не нужно ни bash, ни python. Лишь бы быдло как минимум r-x.

r3lgar ★★★★★
()

/bin/bash /home/user/test.py

5 баллов.

Шебанг, chmod +x и запускай сам файл.

intelfx ★★★★★
()
Последнее исправление: intelfx (всего исправлений: 1)
Ответ на: комментарий от gelius

тебе уже сказали, проследи чтобы был правильный шебанг (#!/usr/bin/env python, возможно стоит указать какой именно питон, python2 или python3) и что скрипт имеет права на исполнение (обычно 755) и /usr/bin/python можно вообще убрать, пиши просто ExecStart=/home/user/test.py

eternal_sorrow ★★★★★
()
Последнее исправление: eternal_sorrow (всего исправлений: 1)

Для того, чтобы лог было видно в журнале ещё нужно PYTHONUNBUFFERED=1 вроде как выставить.

Но это не точно.

EXL ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.