Автор Тема: Запуск приложения systemd  (Прочитано 3646 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн makarenko

  • Новичок форума
  • Topic Author
  • Сообщений: 6
Запуск приложения systemd
« : 15 Январь 2016, 09:58:44 »
Добрый день.
Есть raspberry pi с установленной системой Raspbian.
Так же имеется скрипт  который ожидает ввод символов с клавиатуры и проверят их в базе.
Необходимо чтобы скрипт запускалось после старта устройства и после входа в систему.
Как я вижу решение задачи.
1. необходимо осуществить автоматический вход в систему. (РЕШЕНО)
2. необходимо запустить скрипт.

У меня вопрос по второму пункту. До обновления системы (конкретно systemd) я запуск скрипта делал через rc.local.
Как осуществить запуск скрипта после полной загрузки системы?

Заранее спасибо.
 

Оффлайн lumberjack

  • Местный житель
  • ***
  • Сообщений: 230
Re: Запуск приложения systemd
« Ответ #1 : 15 Январь 2016, 10:13:47 »
« Последнее редактирование: 15 Январь 2016, 10:57:34 от lumberjack »
 

Yrii

  • Гость
Re: Запуск приложения systemd
« Ответ #2 : 15 Январь 2016, 10:16:17 »
так и с systemd можно использовать всё так же rc.local (у меня на одном компе так и сделано - все нормально отрабатывает)
 

Оффлайн makarenko

  • Новичок форума
  • Topic Author
  • Сообщений: 6
Re: Запуск приложения systemd
« Ответ #3 : 15 Январь 2016, 10:45:16 »
Спасибо за мануал прочитаю еще раз.
Вот с rc.local не все так просто. как я понимаю rc.local реализован как сервис и он запускается до запуска последнего сервиса (т.е. не последним) и как следствие в мой скрипт начинает работать до того как загрузились все сервисы.
 

Оффлайн ferum

  • Ветеран
  • *****
  • Сообщений: 3698
Re: Запуск приложения systemd
« Ответ #4 : 15 Январь 2016, 12:01:11 »
Хотя запуск через rc.local это костыльное решение, отсрочить  запуск вашего сервиса не составляет труда, достаточно перед командой на исполнение вписать строку sleep  с указанием времени отсрочки в секундах.
Русские дебианщики против цифрового слабоумия !
 

Оффлайн makarenko

  • Новичок форума
  • Topic Author
  • Сообщений: 6
Re: Запуск приложения systemd
« Ответ #5 : 15 Январь 2016, 13:12:54 »
ferum, Спасибо за ответ. Sleep не устанавливает загрузка сервиса он просто его приостанавливает и стопорит оставшиеся сервисы. Пробовал просто перезапустить сервис rc-local он отрабатывает не корректно. такое ощущение, что нельзя запустить скрипт через сервис и ожидать ввода символов, а то основная задача.  :(
 

Оффлайн lumberjack

  • Местный житель
  • ***
  • Сообщений: 230
Re: Запуск приложения systemd
« Ответ #6 : 15 Январь 2016, 13:27:13 »
а почему именно rc-local? почему нельзя сервисом отдельным прогу запихать-то? а там уже и ожидание выставить, раз уж надо
 

Оффлайн makarenko

  • Новичок форума
  • Topic Author
  • Сообщений: 6
Re: Запуск приложения systemd
« Ответ #7 : 15 Январь 2016, 14:31:23 »
lumberjack, а какие еще варианты?
 

Оффлайн vic5710

  • Местный житель
  • ***
  • Сообщений: 452
Re: Запуск приложения systemd
« Ответ #8 : 15 Январь 2016, 18:15:58 »
можно в .bash_profile запуск сделать. будет выполняться после логина
 

Оффлайн ferum

  • Ветеран
  • *****
  • Сообщений: 3698
Re: Запуск приложения systemd
« Ответ #9 : 15 Январь 2016, 18:24:54 »
В общем наверное надо писать юнит для запуска вашего скрипта, а для этого надо как минимум знать его название, расположение и время старта ( после чего он должен стартовать)а так же к каой группе приложений или сервисов он относится.
Русские дебианщики против цифрового слабоумия !
 

Оффлайн lumberjack

  • Местный житель
  • ***
  • Сообщений: 230
Re: Запуск приложения systemd
« Ответ #10 : 17 Январь 2016, 10:40:29 »
makarenko, да с любого сервиса берешь как банальный пример.
к примеру, у меня от юзера запускается сервис mpd
[Unit]
Description=Music Player Daemon
After=network.target sound.target

[Service]
ExecStart=/usr/bin/mpd --no-daemon

# allow MPD to use real-time priority 50
LimitRTPRIO=50
LimitRTTIME=infinity

[Install]
WantedBy=default.target
как видишь, ничего сложного.
подобным образом хоть виртуалку запускаешь, хоть ssh или несколько яндекс.дисков... да что угодно...
« Последнее редактирование: 17 Январь 2016, 10:43:33 от lumberjack »
 

Оффлайн makarenko

  • Новичок форума
  • Topic Author
  • Сообщений: 6
Re: Запуск приложения systemd
« Ответ #11 : 17 Январь 2016, 13:36:39 »
lumberjack, Спасибо за ответ. Завтра попробую создать отдельный сервис.

Cообщение объединено 18 Январь 2016, 13:29:10
Всем добрый день.
В общем попробовал создать. Делал так
1. создал для примера файл bash.service
[Unit]
Description=test
After=network.target

[Service]

ExecStart=/bin/bash '/usr/python/eticket/start.sh'
# allow MPD to use real-time priority 50
LimitRTPRIO=50
LimitRTTIME=infinity

[Install]
WantedBy=default.target
2. обновил список systemctl daemon-reload
3. запустил systemctl start bash.service
4. проверил статус systemctl status bash.service
● bash.service - MyBashScript
   Loaded: loaded (/etc/systemd/system/bash.service; enabled)
   Active: inactive (dead) since Пн 2016-01-18 10:16:00 UTC; 2s ago
  Process: 1214 ExecStart=/bin/bash /usr/python/eticket/start.sh (code=exited, status=0/SUCCESS)
 Main PID: 1214 (code=exited, status=0/SUCCESS)

янв 18 10:15:59 raspberrypi systemd[1]: Started MyBashScript.


start.sh выглядит так
#!/bin/bash
read B
echo $B



как я понимаю теперь при запуски системы у меня должен запустить данный сервис и ожидать ввода символов с клавиатуры.
Но у меня этого не происходит.
Как я понял у меня процесс запустился в фоне.

« Последнее редактирование: 18 Январь 2016, 13:29:10 от makarenko »
 

Оффлайн makarenko

  • Новичок форума
  • Topic Author
  • Сообщений: 6
Re: Запуск приложения systemd
« Ответ #12 : 18 Январь 2016, 16:25:44 »
В общем решил задачу самым простым способом :( и самым кривым
В файле /etc/profile прописал запуск процесса. И как следствие автологин не нужен.
Всем спасибо кто откликнулся :)

Тему можно закрывать.
 

Теги: systemd 
 

Настройка cron на запуск скрипта для обновления карты сайта

Автор xamen

Ответов: 2
Просмотров: 2002
Последний ответ 26 Апрель 2013, 22:13:58
от xamen
Запуск wowza на vps

Автор maxick

Ответов: 0
Просмотров: 1074
Последний ответ 11 Февраль 2016, 10:14:20
от maxick
запуск службы до авторизации пользователя

Автор os_a

Ответов: 5
Просмотров: 2222
Последний ответ 12 Декабрь 2014, 13:21:55
от vic5710
Запуск сайта на сервере

Автор sky

Ответов: 3
Просмотров: 2110
Последний ответ 29 Ноябрь 2013, 19:15:38
от sandaksatru
запуск uwsgi при старте

Автор serrrgggeee

Ответов: 0
Просмотров: 1408
Последний ответ 24 Сентябрь 2015, 12:05:53
от serrrgggeee