[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