ALT Linux Team development discussions
 help / color / mirror / Atom feed
* [devel] Покритикуйте init-скрипт
@ 2007-10-31 10:22 Slava Semushin
  2007-10-31 10:27 ` Avramenko Andrew
                   ` (2 more replies)
  0 siblings, 3 replies; 14+ messages in thread
From: Slava Semushin @ 2007-10-31 10:22 UTC (permalink / raw)
  To: ALT Devel discussion list

[-- Attachment #1: Type: text/plain, Size: 435 bytes --]

Здравствуйте!

В аттаче init-скрипт для OSSEC. Прошу знающих людей посмотреть и
высказать замечания/предложения. После хочу добиться добавления этого
init-скрипта в апстрим...


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

-- 
+ Slava Semushin | slava.semushin @ gmail.com
+ ALT Linux Team | php-coder @ altlinux.ru

[-- Attachment #2: ossec-hids-alt.init --]
[-- Type: application/octet-stream, Size: 2201 bytes --]

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [devel] Покритикуйте init-скрипт
  2007-10-31 10:22 [devel] Покритикуйте init-скрипт Slava Semushin
@ 2007-10-31 10:27 ` Avramenko Andrew
  2007-10-31 10:50   ` Slava Semushin
  2007-10-31 11:08 ` Alexey I. Froloff
  2007-11-01 12:26 ` Dmitry V. Levin
  2 siblings, 1 reply; 14+ messages in thread
From: Avramenko Andrew @ 2007-10-31 10:27 UTC (permalink / raw)
  To: ALT Linux Team development discussions

Сильно не вчитывался, но не понравился кусок:

else
	exit 1
fi

Лично я предпочитаю когда скрипт ругнется из-за чего вышел. Это обычно 
сильно облегчает процесс отладки.


--
С уважением,
Андрей


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [devel] Покритикуйте init-скрипт
  2007-10-31 10:27 ` Avramenko Andrew
@ 2007-10-31 10:50   ` Slava Semushin
  2007-10-31 11:16     ` Avramenko Andrew
  2007-11-01 10:46     ` Vladimir V. Kamarzin
  0 siblings, 2 replies; 14+ messages in thread
From: Slava Semushin @ 2007-10-31 10:50 UTC (permalink / raw)
  To: ALT Linux Team development discussions

31.10.07, Avramenko Andrew<liksx / mail.ru> написал(а):
> Сильно не вчитывался, но не понравился кусок:
>
> else
>         exit 1
> fi

Мда.. даже и не знаю что туда написать. Я думал, что-нить выдать, но
этот случай по идее не должен случиться. Это типа assert() такой.
Потому что в файле /etc/ossec-init.conf всегда содержится определение
переменной TYPE и оно может принимать только три известных значения.

Можно написать такое: "Error: wrong installation type in /etc/ossec-init.conf!"

Так лучше?

> Лично я предпочитаю когда скрипт ругнется из-за чего вышел. Это обычно
> сильно облегчает процесс отладки.

Ага, оно конечно круто.. :)

Я когда этот инитскрипт отлаживал столкнулся с проблемой: инит скрипт
тихо отрабатывал ничег не делая. И только sh -x и RTFS помогли понять,
что путь к демону должен быть абсолютным, иначе ф-ция start_daemon не
сможет его запустить. При этом сама ф-ция никакой ошибки не вывела...


-- 
+ Slava Semushin | slava.semushin @ gmail.com
+ ALT Linux Team | php-coder @ altlinux.ru

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [devel] Покритикуйте init-скрипт
  2007-10-31 10:22 [devel] Покритикуйте init-скрипт Slava Semushin
  2007-10-31 10:27 ` Avramenko Andrew
@ 2007-10-31 11:08 ` Alexey I. Froloff
  2007-11-01 12:26 ` Dmitry V. Levin
  2 siblings, 0 replies; 14+ messages in thread
From: Alexey I. Froloff @ 2007-10-31 11:08 UTC (permalink / raw)
  To: ALT Devel discussion list

[-- Attachment #1: Type: text/plain, Size: 430 bytes --]

* Slava Semushin <slava.semushin@> [071031 13:23]:
> В аттаче init-скрипт для OSSEC. Прошу знающих людей посмотреть и
> высказать замечания/предложения. После хочу добиться добавления этого
> init-скрипта в апстрим...
Запусти его под /bin/ash.

-- 
Regards, Alexey I. Froloff
AIF5-RIPN, AIF5-RIPE
-------------------------------------------
  Inform-Mobil, Ltd. System Administrator
       http://www.inform-mobil.ru/

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [devel] Покритикуйте init-скрипт
  2007-10-31 10:50   ` Slava Semushin
@ 2007-10-31 11:16     ` Avramenko Andrew
  2007-11-01 10:46     ` Vladimir V. Kamarzin
  1 sibling, 0 replies; 14+ messages in thread
From: Avramenko Andrew @ 2007-10-31 11:16 UTC (permalink / raw)
  To: ALT Linux Team development discussions

Slava Semushin пишет:
> 31.10.07, Avramenko Andrew<liksx / mail.ru> написал(а):
>> Сильно не вчитывался, но не понравился кусок:
>>
>> else
>>         exit 1
>> fi
> 
> Мда.. даже и не знаю что туда написать. Я думал, что-нить выдать, но
> этот случай по идее не должен случиться. Это типа assert() такой.
> Потому что в файле /etc/ossec-init.conf всегда содержится определение
> переменной TYPE и оно может принимать только три известных значения.
> 
> Можно написать такое: "Error: wrong installation type in /etc/ossec-init.conf!"
Вполне пойдет.



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [devel] Покритикуйте init-скрипт
  2007-10-31 10:50   ` Slava Semushin
  2007-10-31 11:16     ` Avramenko Andrew
@ 2007-11-01 10:46     ` Vladimir V. Kamarzin
  2007-11-01 11:02       ` Slava Semushin
  1 sibling, 1 reply; 14+ messages in thread
From: Vladimir V. Kamarzin @ 2007-11-01 10:46 UTC (permalink / raw)
  To: ALT Linux Team development discussions

>>>>> On 31 Oct 2007 at 15:50 "SS" == Slava Semushin writes:

 SS> Я когда этот инитскрипт отлаживал столкнулся с проблемой: инит скрипт
 SS> тихо отрабатывал ничег не делая. И только sh -x и RTFS помогли понять,
 SS> что путь к демону должен быть абсолютным, иначе ф-ция start_daemon не
 SS> сможет его запустить.

Это не так.

-- 
vvk


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [devel] Покритикуйте init-скрипт
  2007-11-01 10:46     ` Vladimir V. Kamarzin
@ 2007-11-01 11:02       ` Slava Semushin
  2007-11-01 12:14         ` Dmitry V. Levin
  0 siblings, 1 reply; 14+ messages in thread
From: Slava Semushin @ 2007-11-01 11:02 UTC (permalink / raw)
  To: ALT Linux Team development discussions

01.11.07, Vladimir V. Kamarzin<vvk / altlinux.ru> написал(а):
> >>>>> On 31 Oct 2007 at 15:50 "SS" == Slava Semushin writes:
>
>  SS> Я когда этот инитскрипт отлаживал столкнулся с проблемой: инит скрипт
>  SS> тихо отрабатывал ничег не делая. И только sh -x и RTFS помогли понять,
>  SS> что путь к демону должен быть абсолютным, иначе ф-ция start_daemon не
>  SS> сможет его запустить.
>
> Это не так.

Заразился от wrar@'а говорить однострочниками? :) Объясни, почему не
так. Я буквально недавно на это наступал.

Вот код (/etc/init.d/functions из service-0.5.14-alt1):

 95 start_daemon()
 96 {
 [skip]
 169 # We need the absolute pathname.
170     if [ -z "$1" ]; then
171         msg_usage "start_daemon [options]... {program}..."
172         return 1
173     fi
174     WHICH="$(absolute "$1")" || return 1
175     [ -n "$CMDNAME" ] &&
176         BASENAME="$(basename "$CMDNAME")" ||
177         BASENAME="$(basename "$1")" || return 1
178     shift

Где-то здесь у меня и вылетало по-тихому...


-- 
+ Slava Semushin | slava.semushin @ gmail.com
+ ALT Linux Team | php-coder @ altlinux.ru

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [devel] Покритикуйте init-скрипт
  2007-11-01 11:02       ` Slava Semushin
@ 2007-11-01 12:14         ` Dmitry V. Levin
  2007-11-01 12:19           ` Slava Semushin
  0 siblings, 1 reply; 14+ messages in thread
From: Dmitry V. Levin @ 2007-11-01 12:14 UTC (permalink / raw)
  To: ALT Linux Team development discussions

[-- Attachment #1: Type: text/plain, Size: 1107 bytes --]

On Thu, Nov 01, 2007 at 05:02:55PM +0600, Slava Semushin wrote:
> 01.11.07, Vladimir V. Kamarzin<vvk / altlinux.ru> написал(а):
> > >>>>> On 31 Oct 2007 at 15:50 "SS" == Slava Semushin writes:
> >
> >  SS> Я когда этот инитскрипт отлаживал столкнулся с проблемой: инит скрипт
> >  SS> тихо отрабатывал ничег не делая. И только sh -x и RTFS помогли понять,
> >  SS> что путь к демону должен быть абсолютным, иначе ф-ция start_daemon не
> >  SS> сможет его запустить.
> >
> > Это не так.
> 
> Заразился от wrar@'а говорить однострочниками? :) Объясни, почему не
> так. Я буквально недавно на это наступал.
> 
> Вот код (/etc/init.d/functions из service-0.5.14-alt1):
> 
>  95 start_daemon()
>  96 {
>  [skip]
>  169 # We need the absolute pathname.
> 170     if [ -z "$1" ]; then
> 171         msg_usage "start_daemon [options]... {program}..."
> 172         return 1
> 173     fi
> 174     WHICH="$(absolute "$1")" || return 1

Если $1 нет в $PATH (который обычно определён в том же
/etc/init.d/functions), то случится return 1.

Обычно $1 находится в этом $PATH.


-- 
ldv

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [devel] Покритикуйте init-скрипт
  2007-11-01 12:14         ` Dmitry V. Levin
@ 2007-11-01 12:19           ` Slava Semushin
  2007-11-01 12:28             ` Dmitry V. Levin
  0 siblings, 1 reply; 14+ messages in thread
From: Slava Semushin @ 2007-11-01 12:19 UTC (permalink / raw)
  To: ALT Linux Team development discussions

01.11.07, Dmitry V. Levin<ldv / altlinux.org> написал(а):
[...]
> Если $1 нет в $PATH (который обычно определён в том же
> /etc/init.d/functions), то случится return 1.
>
> Обычно $1 находится в этом $PATH.

Да, у меня сервисы находятся в /usr/lib/ossec/bin, которого не было в $PATH.

Т.е. лучше добавить этот путь в $PATH или же вызывать с полным путём?

Вообще, есть где-нибудь дока на эту тему или нет?


-- 
+ Slava Semushin | slava.semushin @ gmail.com
+ ALT Linux Team | php-coder @ altlinux.ru

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [devel] Покритикуйте init-скрипт
  2007-10-31 10:22 [devel] Покритикуйте init-скрипт Slava Semushin
  2007-10-31 10:27 ` Avramenko Andrew
  2007-10-31 11:08 ` Alexey I. Froloff
@ 2007-11-01 12:26 ` Dmitry V. Levin
  2 siblings, 0 replies; 14+ messages in thread
From: Dmitry V. Levin @ 2007-11-01 12:26 UTC (permalink / raw)
  To: ALT Devel discussion list

[-- Attachment #1: Type: text/plain, Size: 1094 bytes --]

Hi,

On Wed, Oct 31, 2007 at 04:22:35PM +0600, Slava Semushin wrote:
> В аттаче init-скрипт для OSSEC. Прошу знающих людей посмотреть и
> высказать замечания/предложения.
> init-скрипта в апстрим...
[...]
> #!/bin/sh

В скрипте используются массивы.  Если очень не хочется написать
#!/bin/bash, то может стоит хотя бы оставить комментарий.
Впрочем, скрипт и так содержит достаточно alt-специфики.

[...]
> SourceIfNotEmpty /etc/ossec-init.conf

Видимо в этом файле определена загадочная переменная DIRECTORY.
Я бы добавил строчку
DIRECTORY=
непосредственно перед включением этого файла.

[...]
> if [ "$TYPE" = "local" ]; then
> 	start_order="1 2 3 4 6 7"
> 	stop_order="7 4 6 3 1 2"
> 
> elif [ "$TYPE" = "server" ]; then
> 	start_order="1 2 3 4 5 6 7"
> 	stop_order="7 4 5 6 3 1 2"
> 
> elif [ "$TYPE" = "agent" ]; then
> 	start_order="2 0 4 6"
> 	stop_order="4 6 0 2"
> 
> else
> 	exit 1
> fi

Пожалуйста, откройте для себя case.

[...]
> 	check
> 	[ $RETVAL -eq 0 ] || return

Здесь и далее проще было бы написать
check || return


-- 
ldv

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [devel] Покритикуйте init-скрипт
  2007-11-01 12:19           ` Slava Semushin
@ 2007-11-01 12:28             ` Dmitry V. Levin
  2007-11-01 12:36               ` Slava Semushin
  2007-11-02 10:17               ` Slava Semushin
  0 siblings, 2 replies; 14+ messages in thread
From: Dmitry V. Levin @ 2007-11-01 12:28 UTC (permalink / raw)
  To: ALT Linux Team development discussions

[-- Attachment #1: Type: text/plain, Size: 615 bytes --]

On Thu, Nov 01, 2007 at 06:19:40PM +0600, Slava Semushin wrote:
> 01.11.07, Dmitry V. Levin<ldv / altlinux.org> написал(а):
> [...]
> > Если $1 нет в $PATH (который обычно определён в том же
> > /etc/init.d/functions), то случится return 1.
> >
> > Обычно $1 находится в этом $PATH.
> 
> Да, у меня сервисы находятся в /usr/lib/ossec/bin, которого не было в $PATH.
> 
> Т.е. лучше добавить этот путь в $PATH или же вызывать с полным путём?

Можно добавить путь в хвост $PATH, можно оставить в нынешнем виде.

> Вообще, есть где-нибудь дока на эту тему или нет?

На какую именно тему?


-- 
ldv

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [devel] Покритикуйте init-скрипт
  2007-11-01 12:28             ` Dmitry V. Levin
@ 2007-11-01 12:36               ` Slava Semushin
  2007-11-01 13:46                 ` Dmitry V. Levin
  2007-11-02 10:17               ` Slava Semushin
  1 sibling, 1 reply; 14+ messages in thread
From: Slava Semushin @ 2007-11-01 12:36 UTC (permalink / raw)
  To: ALT Linux Team development discussions

01.11.07, Dmitry V. Levin<ldv / altlinux.org> написал(а):
[...]
> > Вообще, есть где-нибудь дока на эту тему или нет?
>
> На какую именно тему?

На тему написания init-скриптов вообще и с использованием ALT Linux
специфики, в частности.


-- 
+ Slava Semushin | slava.semushin @ gmail.com
+ ALT Linux Team | php-coder @ altlinux.ru

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [devel] Покритикуйте init-скрипт
  2007-11-01 12:36               ` Slava Semushin
@ 2007-11-01 13:46                 ` Dmitry V. Levin
  0 siblings, 0 replies; 14+ messages in thread
From: Dmitry V. Levin @ 2007-11-01 13:46 UTC (permalink / raw)
  To: ALT Linux Team development discussions

[-- Attachment #1: Type: text/plain, Size: 414 bytes --]

On Thu, Nov 01, 2007 at 06:36:43PM +0600, Slava Semushin wrote:
> 01.11.07, Dmitry V. Levin<ldv / altlinux.org> написал(а):
> [...]
> > > Вообще, есть где-нибудь дока на эту тему или нет?
> >
> > На какую именно тему?
> 
> На тему написания init-скриптов вообще и с использованием ALT Linux
> специфики, в частности.

Есть шаблон, /etc/init.d/template; документация ждёт своего создателя.


-- 
ldv

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [devel] Покритикуйте init-скрипт
  2007-11-01 12:28             ` Dmitry V. Levin
  2007-11-01 12:36               ` Slava Semushin
@ 2007-11-02 10:17               ` Slava Semushin
  1 sibling, 0 replies; 14+ messages in thread
From: Slava Semushin @ 2007-11-02 10:17 UTC (permalink / raw)
  To: ALT Linux Team development discussions

[-- Attachment #1: Type: text/plain, Size: 483 bytes --]

01.11.07, Dmitry V. Levin<ldv / altlinux.org> написал(а):
[...]
> Можно добавить путь в хвост $PATH, можно оставить в нынешнем виде.

Решил добавить. Вот только не знаю нужен export PATH или и просто PATH= хватит?


Новая версия init-скрипта во вложении.

-- 
+ Slava Semushin | slava.semushin @ gmail.com
+ ALT Linux Team | php-coder @ altlinux.ru

[-- Attachment #2: ossec-hids-alt.init --]
[-- Type: application/octet-stream, Size: 2345 bytes --]

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2007-11-02 10:17 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-10-31 10:22 [devel] Покритикуйте init-скрипт Slava Semushin
2007-10-31 10:27 ` Avramenko Andrew
2007-10-31 10:50   ` Slava Semushin
2007-10-31 11:16     ` Avramenko Andrew
2007-11-01 10:46     ` Vladimir V. Kamarzin
2007-11-01 11:02       ` Slava Semushin
2007-11-01 12:14         ` Dmitry V. Levin
2007-11-01 12:19           ` Slava Semushin
2007-11-01 12:28             ` Dmitry V. Levin
2007-11-01 12:36               ` Slava Semushin
2007-11-01 13:46                 ` Dmitry V. Levin
2007-11-02 10:17               ` Slava Semushin
2007-10-31 11:08 ` Alexey I. Froloff
2007-11-01 12:26 ` Dmitry V. Levin

ALT Linux Team development discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
		devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
	public-inbox-index devel

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git