Автор Тема: Автозагрузка служб и программ. Как убрать или добавить в автозагрузку? Запуск по расписанию.  (Прочитано 55139 раз)

Оффлайн dubrsl

  • alt linux team
  • ***
  • Сообщений: 238
Есть программа, которая должна стартовать автоматически при переходе на нужный runlevel, например на 3. Также хочеться чтобы это был сервис, которым можно было бы управлять при помощи chkconfig. Как это сделать?

Стырить init-скрипт от какой-то софтинки и подогнать его под свои нужды.
Тырить не хорошо  :D
Есть специальная заготовка стандартная - /etc/init.d/template
Копируйте её и пилите.
Чтобы этот ваш сервис видел chkconfig, делайте chkconfig --add имя_инит_скрипта
WBR,
Slava

Drool

  • Гость
1. Тырить не хорошо  :D
2. Есть специальная заготовка стандартная - /etc/init.d/template
Копируйте её и пилите.
4. Чтобы этот ваш сервис видел chkconfig, делайте chkconfig --add имя_инит_скрипта

1. А у нас открытые системы ;) Так что init-скрипты тоже :) Я для своих ddclient и ichatsrvd честно тырил.
2. Ее может оказаться пилить сложнее, чем простой наглядный готовый скрипт.
3. А я так не делал. Я ложил init-скрипт в /etc/rc.d/init.d/ и сразу мог делать service bla-bla start/stop и chkconfig bla-bla on/off.

Оффлайн dubrsl

  • alt linux team
  • ***
  • Сообщений: 238
2. Есть специальная заготовка стандартная - /etc/init.d/template
Копируйте её и пилите.
4. Чтобы этот ваш сервис видел chkconfig, делайте chkconfig --add имя_инит_скрипта

2. Ее может оказаться пилить сложнее, чем простой наглядный готовый скрипт.
Если прога написана правильно, то нет. А используя чей-то уже изрядно обпиленый скрипт вы рискуете получить чужие баги. Да и начинать лучше с правильного эталона. (хотя соглашусь, что эталон давно нужно исправлять, т.к. репокоп будет ругаться что lsb init header missing)
Цитировать
3. А я так не делал. Я ложил init-скрипт в /etc/rc.d/init.d/ и сразу мог делать service bla-bla start/stop и chkconfig bla-bla on/off.
Ага. тоже работает.

# cp /etc/init.d/ntpd /etc/init.d/ntpd2
# chkconfig --list | grep ntpd
ntpd            0:выкл  1:выкл  2:выкл  3:выкл  4:выкл  5:выкл  6:выкл
# chkconfig ntpd2 on
# chkconfig --list | grep ntpd
ntpd            0:выкл  1:выкл  2:выкл  3:выкл  4:выкл  5:выкл  6:выкл
ntpd2           0:выкл  1:выкл  2:вкл   3:вкл   4:вкл   5:вкл   6:выкл

WBR,
Slava

Оффлайн Eric

  • Участник
  • *
  • Сообщений: 137
автозагрузка сервисов
« Ответ #33 : 08.07.2009 11:22:48 »
Уважаемые Гуру подскажите как добавить в автозагрузки сервисы mysqld и httpd2
и вообще любые другие приложения?
буду очень благодарен

З.Ы. и если не трудно можно сылку на какой нить электронный учебник по баш скриптам?
« Последнее редактирование: 08.07.2009 11:24:30 от Eric »

kda

  • Гость
Re: автозагрузка сервисов
« Ответ #34 : 08.07.2009 11:31:58 »
Уважаемые Гуру подскажите как добавить в автозагрузки сервисы mysqld и httpd2

Выполните из под суперпользователя (получив его права по комманде "su -"):
chkconfig [сервис] on.

Или Альтераторе ищите раздел "Системные службы".

З.Ы. и если не трудно можно сылку на какой нить электронный учебник по баш скриптам?

http://www.opennet.ru/docs/RUS/bash_scripting_guide/index.html

Оффлайн Eric

  • Участник
  • *
  • Сообщений: 137
Re: автозагрузка сервисов
« Ответ #35 : 09.07.2009 10:09:14 »
спасибо попробую,
а нет ли книги электронной, просто распечатать хотел, не люблю долго читать на мониторе

Drool

  • Гость
Re: автозагрузка сервисов
« Ответ #36 : 09.07.2009 10:35:02 »
Не совсем электронная книга, но тем не менее:
http://fly.osdn.org.ua/~drool/Unix_shell.html

Оффлайн Eric

  • Участник
  • *
  • Сообщений: 137
Re: автозагрузка сервисов
« Ответ #37 : 09.07.2009 10:37:02 »
Не совсем электронная книга, но тем не менее:
http://fly.osdn.org.ua/~drool/Unix_shell.html
вообще спасибо огромное:)))
будет что на досуге почитать

Оффлайн mad_max

  • Участник
  • *
  • Сообщений: 352
Re: автозагрузка сервисов
« Ответ #38 : 09.07.2009 17:42:03 »
Уважаемые Гуру подскажите как добавить в автозагрузки сервисы mysqld и httpd2
и вообще любые другие приложения?
буду очень благодарен

З.Ы. и если не трудно можно сылку на какой нить электронный учебник по баш скриптам?

Для начала смотрим в каких ранлевелах запускаются нужные вам службы (от рута - <su ->):
# chkconfig --list

Находите нужные и задаётем им необходимые уровни запуска, если они не заданы:
# chkconfig --level необходимые _уровни имя_вашей_службы on
пример:
# chkconfig --level 345 mysqld on

После запускаете службу, либо перезапускаете, если она уже запущена:
# service mysqld start

Оффлайн testoi

  • Участник
  • *
  • Сообщений: 92
  • ALT Lite 4.0.3
Как оттянуть mount используя at?
« Ответ #39 : 05.08.2009 17:27:46 »
Бывает так, что после входа не успевает делаться mount через автозапуск.
Есть мысли насчет at, но как это реализовать я не понимаю. То есть отсрочить mount на 1-2 минуты.
Помогите, пожалуйста, если знаете как.

Сделано так:
В sudoers файле

# Cmnd alias specification
Cmnd_Alias MOUNT=/bin/mount *
Cmnd_Alias UMOUNT=/bin/umount *

# User privilege specification
root ALL=(ALL) ALL
user11 ALL=(root) NOPASSWD: MOUNT, UMOUNT

В автозапуске пользователя user11 написано
sudo mount -t cifs -o username=user11 ...
Как можно немного оттянуть mount используя at?
Большое вам спасибо.
« Последнее редактирование: 05.08.2009 17:33:44 от testoi »

Alexei_VM

  • Гость
Re: Как оттянуть mount используя at?
« Ответ #40 : 05.08.2009 17:41:06 »
Как можно немного оттянуть mount используя at?

Зачем at? Почему не использовать sleep?

Оффлайн testoi

  • Участник
  • *
  • Сообщений: 92
  • ALT Lite 4.0.3
Re: Как оттянуть mount используя at?
« Ответ #41 : 05.08.2009 17:43:01 »
2 Alexei_VM
Спасибо, вы опять пришли на помощь!  ;)
А как это сделать?

Оффлайн jedi63

  • Участник
  • *
  • Сообщений: 43
Re: Как оттянуть mount используя at?
« Ответ #42 : 05.08.2009 17:54:27 »
2 Alexei_VM
Спасибо, вы опять пришли на помощь!  ;)
А как это сделать?


sleep 120 && echo 123
выведет 123 через 120 секунд, вместо echo введи mount с нужными параметрами, за место 120 поставь нужное время :)

Оффлайн testoi

  • Участник
  • *
  • Сообщений: 92
  • ALT Lite 4.0.3
Re: Как оттянуть mount используя at?
« Ответ #43 : 06.08.2009 10:12:46 »
Большое спасибо, все получилось!

sleep 5 && sudo mount -t cifs -o username=user11,domain=workgroup,password=pass11,iocharset=utf8,noperm //127.0.0.1/folder /home/user11/Desktop/folder
« Последнее редактирование: 06.08.2009 10:16:13 от testoi »

Оффлайн testoi

  • Участник
  • *
  • Сообщений: 92
  • ALT Lite 4.0.3
Re: Как оттянуть mount используя at?
« Ответ #44 : 07.08.2009 10:55:43 »
Прошу прощения, но мне снова нужна ваша помощь.
Если вводить эту команду в терминале, то все отлично работает. О чем я и написал выше.
Не работает тогда, когда я эту же строку пишу в автозапуске.

Может есть возможность как-то еще это сделать?

Подойдет даже такое экзотическое решение, если это возможно сделать автоматом:
Запустить терминал [желательно свернутый], сделать в нем
sleep 5 && sudo mount -t cifs -o username=user11,domain=workgroup,password=pass11,iocharset=utf8,noperm //127.0.0.1/folder /home/user11/Desktop/folderзакрыть терминал.

Но как такое совершить через автозапуск — ума не приложу.
Большое спасибо.