ALT Linux Team development discussions
 help / color / mirror / Atom feed
* [devel] I: control для cgi-bin скриптов.
@ 2008-08-27  6:57 Aleksey Avdeev
  2008-08-27  7:04 ` Slava Semushin
  2008-08-28 20:20 ` [devel] [Sysadmins] " Michael Shigorin
  0 siblings, 2 replies; 9+ messages in thread
From: Aleksey Avdeev @ 2008-08-27  6:57 UTC (permalink / raw)
  To: ALT Linux Team development discussions; +Cc: ALT Linux sysadmin discuss

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

Здравствуйте, уважаемые.

   Я собираюсь делать управление cgi-bin скриптами через control (иначе 
-- слабо представляю как плавный переезд в бранчах сделать).

   Состояния, которые будет поддерживать каждый /var/ww/cgi-bin/<имя> 
(по крайней мере из тех, что идут с apache*):

file_root_noexec
file_root_exec
file_webmaster_noexec
file_webmaster_exec
symlink_root_noexec
symlink_root_exec
symlink_webmaster_noexec
symlink_webmaster_exec

   Где части имени состояния говорят о том, что /var/ww/cgi-bin/<имя>:

file_* -- файл;

symlink_* -- сммлинк на некий /usr/share/<прилажение>/**/<имя>;

*_root_* -- принадлежит root;

*_webmaster_* -- принадлежит группе %webserver_webmaster;

*_noexec -- не исполняемый;

*_exec -- исполняемый;

   Для облегчения процесса пакет webserver-cgi-bin-control будет 
содержать подключаемый /etc/control.d/webserver-cgi-bin-functions (см. 
<http://git.altlinux.org/people/solo/packages/?p=webserver-cgi-bin-control.git;a=commit;h=37bf249b532bfbb33d0d6fa892831bc7b0a501d1>) 
с реализацией переключения данных состояний. (Исходные данные задаются в 
виде переменных.)

PS: Будет весьма хорошо, если кто нибудь из знающих английский сообщения 
отредактирует: translate.google.ru хорошо, но...

PPS: Кроспост.

-- 

С уважением. Алексей.



[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 552 bytes --]

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

* Re: [devel] I: control для cgi-bin скриптов.
  2008-08-27  6:57 [devel] I: control для cgi-bin скриптов Aleksey Avdeev
@ 2008-08-27  7:04 ` Slava Semushin
  2008-08-27  7:09   ` Aleksey Avdeev
  2008-08-28 20:20 ` [devel] [Sysadmins] " Michael Shigorin
  1 sibling, 1 reply; 9+ messages in thread
From: Slava Semushin @ 2008-08-27  7:04 UTC (permalink / raw)
  To: ALT Linux Team development discussions

27 августа 2008 г. 13:57 пользователь Aleksey Avdeev <solo /
solin.spb.ru> написал:
[...]
><http://git.altlinux.org/people/solo/packages/?p=webserver-cgi-bin-control.git;a=commit;h=37bf249b532bfbb33d0d6fa892831bc7b0a501d1>)
> с реализацией переключения данных состояний. (Исходные данные задаются в
> виде переменных.)

У вас 5 раз используется конструкция cmd || exec 1, похоже что опечатка?


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

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

* Re: [devel] I: control для cgi-bin скриптов.
  2008-08-27  7:04 ` Slava Semushin
@ 2008-08-27  7:09   ` Aleksey Avdeev
  0 siblings, 0 replies; 9+ messages in thread
From: Aleksey Avdeev @ 2008-08-27  7:09 UTC (permalink / raw)
  To: ALT Linux Team development discussions

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

Slava Semushin пишет:
> 27 августа 2008 г. 13:57 пользователь Aleksey Avdeev <solo /
> solin.spb.ru> написал:
> [...]
>> <http://git.altlinux.org/people/solo/packages/?p=webserver-cgi-bin-control.git;a=commit;h=37bf249b532bfbb33d0d6fa892831bc7b0a501d1>)
>> с реализацией переключения данных состояний. (Исходные данные задаются в
>> виде переменных.)
> 
> У вас 5 раз используется конструкция cmd || exec 1, похоже что опечатка?

   Спасибо, поправил (см. 
<http://git.altlinux.org/people/solo/packages/?p=webserver-cgi-bin-control.git;a=commit;h=98d286a07f4b81f0f478d44758b219ac67c46852>).

-- 

С уважением. Алексей.



[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 552 bytes --]

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

* Re: [devel] [Sysadmins] I: control для cgi-bin скриптов.
  2008-08-27  6:57 [devel] I: control для cgi-bin скриптов Aleksey Avdeev
  2008-08-27  7:04 ` Slava Semushin
@ 2008-08-28 20:20 ` Michael Shigorin
  2008-08-28 21:44   ` Aleksey Avdeev
  1 sibling, 1 reply; 9+ messages in thread
From: Michael Shigorin @ 2008-08-28 20:20 UTC (permalink / raw)
  To: ALT Linux Team development discussions

On Wed, Aug 27, 2008 at 10:57:05AM +0400, Aleksey Avdeev wrote:
> file_root_noexec
> symlink_root_noexec

Есть ли смысл их различать?

См. тж. ls -L и chown -h:

pad:~> touch 1
pad:~> ln -s 1 2
pad:~> l 1 2
-rw-r--r-- 1 mike mike 0 Aug 28 23:19 1
lrwxrwxrwx 1 mike mike 1 Aug 28 23:19 2 -> 1
pad:~> sudo chown -h root:root 2
pad:~> l 1 2                    
-rw-r--r-- 1 mike mike 0 Aug 28 23:19 1
lrwxrwxrwx 1 root root 1 Aug 28 23:19 2 -> 1
pad:~> sudo chown -h root:root 1
pad:~> l 1 2                    
-rw-r--r-- 1 root root 0 Aug 28 23:19 1
lrwxrwxrwx 1 root root 1 Aug 28 23:19 2 -> 1
pad:~> ls -lL 2
-rw-r--r-- 1 root root 0 Aug 28 23:19 2

-- 
 ---- WBR, Michael Shigorin <mike@altlinux.ru>
  ------ Linux.Kiev http://www.linux.kiev.ua/


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

* Re: [devel] [Sysadmins] I: control для cgi-bin скриптов.
  2008-08-28 20:20 ` [devel] [Sysadmins] " Michael Shigorin
@ 2008-08-28 21:44   ` Aleksey Avdeev
  2008-08-28 22:10     ` Michael Shigorin
  0 siblings, 1 reply; 9+ messages in thread
From: Aleksey Avdeev @ 2008-08-28 21:44 UTC (permalink / raw)
  To: ALT Linux Team development discussions

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

Michael Shigorin пишет:
> On Wed, Aug 27, 2008 at 10:57:05AM +0400, Aleksey Avdeev wrote:
>> file_root_noexec
>> symlink_root_noexec
> 
> Есть ли смысл их различать?

   Основной смысл в различии file_* и symlink_*:

1) гарантировать не замещение файла симлинком при обновлении (боле того: 
при смене состояний в рамках file_* сам /var/www/cgi-bin/<файл> не 
меняется);

2) обеспечить чтобы файл лежащий в /usr/share/<name>/ всегда был root:root

3) реализовать замену файла симлинком (при file_* -> symlink_*) и 
симлинка копией оригинала (при symlink_* -> file_*)

   Это мне позволит:

1. Сохранить оригинальный /var/www/cgi-bin/<файл> при обновлении.

2. Обеспечить корректное обновление файлов в /usr/share/<name>/, 
одновременно запретив их редактирование webmaster`у (если это нужно, то 
после перехода в file_webmaster_* файл /var/www/cgi-bin/ в его полном 
распоряжении: система его менять не будет).

-- 

С уважением. Алексей.



[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 552 bytes --]

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

* Re: [devel] [Sysadmins] I: control для cgi-bin скриптов.
  2008-08-28 21:44   ` Aleksey Avdeev
@ 2008-08-28 22:10     ` Michael Shigorin
  2008-08-28 23:07       ` Aleksey Avdeev
  0 siblings, 1 reply; 9+ messages in thread
From: Michael Shigorin @ 2008-08-28 22:10 UTC (permalink / raw)
  To: ALT Linux Team development discussions

On Fri, Aug 29, 2008 at 01:44:53AM +0400, Aleksey Avdeev wrote:
> >>file_root_noexec
> >>symlink_root_noexec
> >Есть ли смысл их различать?
> Основной смысл в различии file_* и symlink_*:

Для control?

-- 
 ---- WBR, Michael Shigorin <mike@altlinux.ru>
  ------ Linux.Kiev http://www.linux.kiev.ua/


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

* Re: [devel] [Sysadmins] I: control для cgi-bin скриптов.
  2008-08-28 22:10     ` Michael Shigorin
@ 2008-08-28 23:07       ` Aleksey Avdeev
  2008-08-29 10:38         ` Michael Shigorin
  0 siblings, 1 reply; 9+ messages in thread
From: Aleksey Avdeev @ 2008-08-28 23:07 UTC (permalink / raw)
  To: ALT Linux Team development discussions

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

Michael Shigorin пишет:
> On Fri, Aug 29, 2008 at 01:44:53AM +0400, Aleksey Avdeev wrote:
>>>> file_root_noexec
>>>> symlink_root_noexec
>>> Есть ли смысл их различать?
>> Основной смысл в различии file_* и symlink_*:
> 
> Для control?

   Да. Т. к. /var/www/cgi-bin/<файл> может быть как файлом, так и 
симлинком. И управляется это -- именно через control.

-- 

С уважением. Алексей.



[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 552 bytes --]

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

* Re: [devel] [Sysadmins] I: control для cgi-bin скриптов.
  2008-08-28 23:07       ` Aleksey Avdeev
@ 2008-08-29 10:38         ` Michael Shigorin
  2008-08-29 21:48           ` Aleksey Avdeev
  0 siblings, 1 reply; 9+ messages in thread
From: Michael Shigorin @ 2008-08-29 10:38 UTC (permalink / raw)
  To: ALT Linux Team development discussions

On Fri, Aug 29, 2008 at 03:07:18AM +0400, Aleksey Avdeev wrote:
> >>>>file_root_noexec
> >>>>symlink_root_noexec
> >>>Есть ли смысл их различать?
> >>Основной смысл в различии file_* и symlink_*:
> >Для control?
> Да. Т. к. /var/www/cgi-bin/<файл> может быть как файлом, так и
> симлинком. И управляется это -- именно через control.

Можешь пояснить, как ты скриптом взаимопревращаешь файлы
и симлинки, или лучше смотреть в git и думать?

-- 
 ---- WBR, Michael Shigorin <mike@altlinux.ru>
  ------ Linux.Kiev http://www.linux.kiev.ua/


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

* Re: [devel] [Sysadmins] I: control для cgi-bin скриптов.
  2008-08-29 10:38         ` Michael Shigorin
@ 2008-08-29 21:48           ` Aleksey Avdeev
  0 siblings, 0 replies; 9+ messages in thread
From: Aleksey Avdeev @ 2008-08-29 21:48 UTC (permalink / raw)
  To: ALT Linux Team development discussions

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

Michael Shigorin пишет:
> On Fri, Aug 29, 2008 at 03:07:18AM +0400, Aleksey Avdeev wrote:
> 
>>>>>>file_root_noexec
>>>>>>symlink_root_noexec
>>>>>
>>>>>Есть ли смысл их различать?
>>>>
>>>>Основной смысл в различии file_* и symlink_*:
>>>
>>>Для control?
>>
>>Да. Т. к. /var/www/cgi-bin/<файл> может быть как файлом, так и
>>симлинком. И управляется это -- именно через control.
> 
> 
> Можешь пояснить, как ты скриптом взаимопревращаешь файлы
> и симлинки, или лучше смотреть в git и думать?

  Лучше смотреть в git и думать: Там довольно развесистое дерево if`ов
получилось...

  Если в краце, то:

1. Смотрю, что нам надо получить в результате операции (case по имени
требуемого состояния);

2. Проверяю совпадает ли тип файла с нужным (if [ -L <файл> ])

3. Если совпадает:

3.а) и это симлинк

3.а.1) проверяю указывает ли симлинк на эталон;

3.а.2) если нет -- перехожу к 4.б

3.б) перехожу к 5.

4. Если не совпадает, то:

4.а) нужен файл вместо симлинка:

4.а.1) убиваю симлинк;

4.а.2) cp -a <эталон> <файл>

4.б) нужен симлинк вместо файла (или правильный симлинк вместо текущего):

4.б.1) ln -sf <эталон> <симлинк>

5. Выполняю остальные действия

-- 

С уважением. Алексей.


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 556 bytes --]

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

end of thread, other threads:[~2008-08-29 21:48 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-08-27  6:57 [devel] I: control для cgi-bin скриптов Aleksey Avdeev
2008-08-27  7:04 ` Slava Semushin
2008-08-27  7:09   ` Aleksey Avdeev
2008-08-28 20:20 ` [devel] [Sysadmins] " Michael Shigorin
2008-08-28 21:44   ` Aleksey Avdeev
2008-08-28 22:10     ` Michael Shigorin
2008-08-28 23:07       ` Aleksey Avdeev
2008-08-29 10:38         ` Michael Shigorin
2008-08-29 21:48           ` Aleksey Avdeev

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