Системной службе не удается запустить приложение rails 6 на raspbian с ошибкой 127, 126 или 203
Бета-приложение Rails 6, запущенное на Raspbian stretch, обычно загружается либо из cli с помощью типичной команды rails s, либо, если скрипт создается в корневом каталоге pi, а затем cd в правильный каталог приложения и загружает приложение. Если попытка запуска приложения осуществляется через Systemd, продолжайте получать повторяющиеся ошибки 127, 126 или 203 в зависимости от формата файла.service Systemd.
При исследовании этой проблемы пробовали эти учебники:
https://mikewilliamson.wordpress.com/2015/08/26/running-a-rails-app-with-systemd-and-liking-it/
https://medium.com/@ssscripting/basic-setup-of-rails-with-systemd-46ee067ec8d7
https://medium.com/@SatoshiTahara/autoload-puma-with-systemd-and-rbenv-ead7fa3fa593
https://www.crstin.com/en/rails-systemd/
http://rustamagasanov.com/blog/2017/02/24/systemd-example-for-a-simple-ruby-daemon-supervision/
и некоторые другие сообщения типа SO по теме:
https://superuser.com/questions/1237298/running-ruby-on-rails-as-systemd
Исправление сбоя службы systemd 203/EXEC (такого файла или каталога нет)
https://www.raspberrypi.org/forums/viewtopic.php?t=203359
текущий код файла.service:
[Unit]
Description=evr server boot
After=network.target
[Service]
Type=simple
User=pi
WorkingDirectory=/home/pi/evr
Environment=PATH=/bin:/usr/bin
ExecStart=/bin/bash -l 'rails s -b 192.168.1.66'
Restart=always
[Install]
WantedBy=multi-user.target
и текущая ошибка при запуске этой службы systemd:
pi@raspberrypi:~ $ sudo systemctl status evrserver
● evrserver.service - evr server boot
Loaded: loaded (/etc/systemd/system/evrserver.service; enabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Tue 2019-04-02 15:58:54 BST; 55s ago
Process: 540 ExecStart=/bin/bash -l rails s -b 192.168.1.66 (code=exited, status=127)
Main PID: 540 (code=exited, status=127)
Apr 02 15:58:53 raspberrypi systemd[1]: evrserver.service: Unit entered failed state.
Apr 02 15:58:53 raspberrypi systemd[1]: evrserver.service: Failed with result 'exit-code'.
Apr 02 15:58:54 raspberrypi systemd[1]: evrserver.service: Service hold-off time over, scheduling restart.
Apr 02 15:58:54 raspberrypi systemd[1]: Stopped evr server boot.
Apr 02 15:58:54 raspberrypi systemd[1]: evrserver.service: Start request repeated too quickly.
Apr 02 15:58:54 raspberrypi systemd[1]: Failed to start evr server boot.
Apr 02 15:58:54 raspberrypi systemd[1]: evrserver.service: Unit entered failed state.
Apr 02 15:58:54 raspberrypi systemd[1]: evrserver.service: Failed with result 'exit-code'.
С опцией -l, переданной в строке Exec, ожидалось, что она запустится без ошибок и приложение rails загрузится. Любое направление здесь ценится.