Автор Тема: Добавление файла *.sh в атозагрузку  (Прочитано 4559 раз)

Оффлайн sevo44

  • Участник
  • *
  • Сообщений: 248
Как добавить такой файл автозагрузку на сервере?
Calculate Linux включён в реестр российского ПО.
При просьбе помочь фраза "почитай документацию" или "погугли" звучит как посыл на три буквы!

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 361
  • Учиться .... Телепатами не рождаются, ими ....
Re: Добавление файла *.sh в атозагрузку
« Ответ #1 : 11.02.2016 12:59:14 »
Или оформить как демон, или вызвать из  /etc/rc.d/rc.local

Оффлайн sevo44

  • Участник
  • *
  • Сообщений: 248
Re: Добавление файла *.sh в атозагрузку
« Ответ #2 : 11.02.2016 13:08:10 »
Или оформить как демон, или вызвать из  /etc/rc.d/rc.local

А что лучше? В чем разница?
Calculate Linux включён в реестр российского ПО.
При просьбе помочь фраза "почитай документацию" или "погугли" звучит как посыл на три буквы!

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 361
  • Учиться .... Телепатами не рождаются, ими ....
Re: Добавление файла *.sh в атозагрузку
« Ответ #3 : 11.02.2016 13:11:04 »
Ну - демон вы можете всегда остановить, перезапустить, и т.п., а rc.local работает только при старте системы. Ну и да - он отрабатывает до старта графики.

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 361
  • Учиться .... Телепатами не рождаются, ими ....
Re: Добавление файла *.sh в атозагрузку
« Ответ #4 : 11.02.2016 13:13:39 »
А старт  сервиса (в systemd) можно привязать к старту какого-то передыдущего сервиса - скакзать, что-бы ваш скрипт отработал после него.
rc.local нельзя так настроить, он запускается в конце всех демонов, перед стартом графики.

Оффлайн sevo44

  • Участник
  • *
  • Сообщений: 248
Re: Добавление файла *.sh в атозагрузку
« Ответ #5 : 11.02.2016 20:21:56 »
Ну - демон вы можете всегда остановить, перезапустить
Тогда точно демон

Куда как что прописать?
Calculate Linux включён в реестр российского ПО.
При просьбе помочь фраза "почитай документацию" или "погугли" звучит как посыл на три буквы!

Оффлайн berkut_174

  • Мастер
  • ***
  • Сообщений: 7 152
Сноси Винду, переходи на Линукс ! :)

Оффлайн sevo44

  • Участник
  • *
  • Сообщений: 248
Re: Добавление файла *.sh в атозагрузку
« Ответ #7 : 11.02.2016 21:20:46 »
https://www.altlinux.org/Запуск_скрипта_как_сервис
Пока для меня это сложно... я так понял что просто тупо положить туда тот скрипт что мне надо запустить я не могу....
надо написать другой чтобы его запустить...
с этим туго пока

вот есть у меня скрипт который лежит в папке

var/subsonic/subsonic.sh

вот его мне и надо запустить
« Последнее редактирование: 11.02.2016 21:22:21 от sevo44 »
Calculate Linux включён в реестр российского ПО.
При просьбе помочь фраза "почитай документацию" или "погугли" звучит как посыл на три буквы!

Оффлайн sevo44

  • Участник
  • *
  • Сообщений: 248
Re: Добавление файла *.sh в атозагрузку
« Ответ #8 : 12.02.2016 20:00:40 »
Пробую самый простой вариант который я понял
===============================

Надо создать файл (если есть то дописать строку)

# mcedit /etc/rc.d/rc.local
Там написать перед exit 0 путь до скрипта который надо запустить

#!/bin/sh -e
#Здесь вставляем строку с указанием вашего скрипта.
/var/subsonic/subsonic.sh
exit 0

Reboot ....

Не запустилось....

Делаем файл исполняемым

chmod +x /etc/rc.d/rc.local
Reboot ...

РАБОТАЕТ!
Calculate Linux включён в реестр российского ПО.
При просьбе помочь фраза "почитай документацию" или "погугли" звучит как посыл на три буквы!

Оффлайн sevo44

  • Участник
  • *
  • Сообщений: 248
Re: Добавление файла *.sh в атозагрузку
« Ответ #9 : 12.02.2016 20:32:37 »
Упс... не работает

Запускается но музыка не играет....
Calculate Linux включён в реестр российского ПО.
При просьбе помочь фраза "почитай документацию" или "погугли" звучит как посыл на три буквы!

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 361
  • Учиться .... Телепатами не рождаются, ими ....
Re: Добавление файла *.sh в атозагрузку
« Ответ #10 : 12.02.2016 20:35:59 »
Скорей всего связано с тем, что "звук ещё не включился". Возможно, вам надо запускать при входе пользователя в систему.

Оффлайн sevo44

  • Участник
  • *
  • Сообщений: 248
Re: Добавление файла *.sh в атозагрузку
« Ответ #11 : 12.02.2016 21:04:15 »
Скорей всего связано с тем, что "звук ещё не включился". Возможно, вам надо запускать при входе пользователя в систему.

Хм... в htop всё одинаково показывает что при автоматическом запуске что в ручную...
но если автоматом то доступ есть но вот при попытке запуска файла тишина ....

И как мне его запускать?
Calculate Linux включён в реестр российского ПО.
При просьбе помочь фраза "почитай документацию" или "погугли" звучит как посыл на три буквы!

Оффлайн sevo44

  • Участник
  • *
  • Сообщений: 248
Re: Добавление файла *.sh в атозагрузку
« Ответ #12 : 12.02.2016 21:21:15 »
Вообщем простой вариант не прокатил... придется делать демоном...
Calculate Linux включён в реестр российского ПО.
При просьбе помочь фраза "почитай документацию" или "погугли" звучит как посыл на три буквы!

Оффлайн sevo44

  • Участник
  • *
  • Сообщений: 248
Re: Добавление файла *.sh в атозагрузку
« Ответ #13 : 12.02.2016 21:54:01 »
       # !/bin/sh
       # chkconfig: - 98 02                       
       # description:  vtiger_con_asterisk
       # processname: crm
       # Source function library.
       if [ -f /etc/init.d/functions ] ; then
         . /etc/init.d/functions
       elif [ -f /etc/rc.d/init.d/functions ] ; then
         . /etc/rc.d/init.d/functions
       else
         exit 0
       fi
       KIND="НАЗВАНИЕ ВАШЕГО СЕРВИСА"
       start() {
               echo -n $"Starting $KIND services: "
               daemon /var/www/html/vtigercrm/cron/modules/PBXManager/AsteriskClient.php &
               
               echo
       }
       stop() {
               echo -n $"Shutting down $KIND services: "
               killall AsteriskClient.php &
               killproc crm
               echo
       }
       restart() {
                   echo -n $"Restarting $KIND services: "
                      killall AsteriskClient.php &
                      killproc crm
                      daemon /var/www/html/vtigercrm/cron/modules/PBXManager/AsteriskClient.php &
                  echo
       }
       case "$1" in
         start)
                 start
               ;;
         stop)
                 stop
               ;;
         restart)
                 restart
               ;;
         *)
               echo $"Usage: $0 {start|stop|restart}"
               exit 1
       esac
       exit $?

попробовал на таком скрипте как предлогали

но при попытке запустиь выдает
[root@server-p7 init.d]# service crm start
Starting subsonic services:
/etc/init.d/crm: line 46: exit: too many arguments
[root@server-p7 init.d]#       

В чем ошибка?
Calculate Linux включён в реестр российского ПО.
При просьбе помочь фраза "почитай документацию" или "погугли" звучит как посыл на три буквы!

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 361
  • Учиться .... Телепатами не рождаются, ими ....
Re: Добавление файла *.sh в атозагрузку
« Ответ #14 : 12.02.2016 22:01:38 »
А 46-я строка - это какая?