[devel] [Sysadmins] I: control для cgi-bin скриптов.

Aleksey Avdeev =?iso-8859-1?q?solo_=CE=C1_solin=2Espb=2Eru?=
Сб Авг 30 01:48:43 MSD 2008


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. Выполняю остальные действия

-- 

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

----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : signature.asc
Тип     : application/pgp-signature
Размер  : 556 байтов
Описание: OpenPGP digital signature
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20080830/4e399133/attachment-0002.bin>


Подробная информация о списке рассылки Devel