Не может добавить сценарий к init.d

Какой длины часть строки?

Плохо ли это, зависит, что делает Ваш сервер. Для реле SMTP сервера JAVA-приложения или сервера MySQL DBMS рабочие таблицы exclusvely innoDB это не проблема. Для большого количества других приложений это будет иметь страшный эффект на производительность. Вы не сказали, для чего используется поле.

2
19.09.2013, 21:39
3 ответа

Сначала необходимо скопировать сценарий в пуле сценариев:

/etc/init.d/

Linux имеет ряд dircetory, которые содержат ряд ссылки на этот пул в различном runlevels:

/etc/rc0.d # for runlevel 0 for trun off system in all of dirstos
/etc/rc1.d # runlevel 1, for single user in all distros
/etc/rc2.d # runlevel 2 , default runlevel for debian-base dirstros
/etc/rc3.d # runlevel 3, in redhat-base systems, using for everything without graphical mode
/etc/rc4.d # runlevel 4,reserved by system
/etc/rc5.d  #runlevel 5 , in  Redhat base , defualt runlevel
/etc/rc6.d  # for runlevel 6 for reboot system in all of distros

необходимо работать:

ln -s /etc/init.d/YOUR_SCRIPT /etc/rcNUMBER.d/{S OR K}NUMYOUR_SCRIPT

такой как:

ln -s /etc/init.d/apache2 /etc/rc2.d/S99apache2

S OR K : S statrt, K: Kill
NUM before script: priority of run, if you have two scrip such S10squid amd S99apache, At first squid will be run then apache. 

update-rc.d по сравнению с chkconfig :

update-rc.d работы в Debian-base системы и chkconfig работы в redhat-base системы.

1
27.01.2020, 22:23
  • 1
    Se мое отредактированное сообщение. Это теперь установлено в rc0..., rc6. Но это все еще не запускается когда перезагрузки машины. –  u123 19.09.2013, 21:46

Вы связываетесь со сценарием в rc3.d каталог, который является каталогом для сервисов, запущенных в runlevel 3. Значение по умолчанию runlevel в Ubuntu является 2 IIRC. Таким образом, можно хотеть изменить вторую строку на:

sudo ln -snf ../init.d/gerrit.sh /etc/rc2.d/S90gerrit

Конечно, возможно, что сервер был настроен для запуска в другом runlevel. Узнайте текущий runlevel с

who -r
0
27.01.2020, 22:23
  • 1
    Видит отредактированное сообщение, его установленный в на всех уровнях выполнения. –  u123 19.09.2013, 21:54

в первую очередь, попытайтесь запустить свой скрипт вручную как корень (никакая потребность перезагрузить систему):

 /etc/init.d/gerrit start

если это работает, и там сервис все еще не запускается во время начальной загрузки, проблема могла бы состоять в том, что при попытке выполнить сценарий, переменная ПУТИ не могла бы быть тем, что Вы ожидаете. попробуйте установку PATH к нормальным значениям по умолчанию в рамках Вашего сценария (gerrit.sh)

например.

#!/bin/bash
PATH=/sbin:/usr/sbin:/bin:/usr/bin

#...
0
27.01.2020, 22:23

Теги

Похожие вопросы