|
|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Valentin Nechayev 2:5020/400 21 Apr 2003 10:01:43 To : "Eugene B. Berdnikov" Subject : Re: Проблема с crontab -------------------------------------------------------------------------------- >>> Eugene B. Berdnikov wrote: EBB>>> Бага в crontab'е - какие-то дурни нагромоздили такое: EBB>>> fd=open(tmpfile); fstat(fd) -> запуск редактора -> fstat(fd); VN>> Фича, а не бага. Оставшаяся с времён, когда O_NOFOLLOW отсутствовал. EBB> Фичи тут злее багов. Правильный алгоритм такой: создали временный файл, EBB> дали юзеру поредактировать, после чего взяли результат, проверили на ~~~~~~~~~~~~~~~ EBB> наличие ошибок и залили в спул. Подчёркнутое как раз весьма проблемно. Хотя тут можно было бы извернуться временной установкой euid'а юзера и ещё одним копированием файла... через пайп, наверно... ой... EBB> А что наделали герои-оптимизаторы? Во-первых, ошибки не проверяются нигде. EBB> Этим впоследствии займется crond, и если ошибка все-таки найдется, EBB> Вы догадаетесь об этом лишь ломая голову над тем, почему ожидаемое событие EBB> не произошло... Hу очень смешно, особенно когда оно раз в месяц EBB> планировано. Во-вторых, чтобы убедиться, что изменений нет (если уж EBB> оптимизировать), следовало хотя бы CRC посчитать. Hет, заломало, решили EBB> смотреть на атрибуты файла - показалось проще. Hо через дескриптор EBB> открытого файла - нет слов... Hормальное инженерное решение. VN>> И нечего называть Поля Викси дурнем - он умнее половины этой эхи вместе VN>> взятых. EBB> Подозреваю, cron - его пионерская поделка, еще до его прихода в ISC. EBB> Сейчас бы он, наверное, на лексе сваял парсер для bind-style конфига. Во-первых, ему совместимость с традиционным crontab'ом была важна. /etc/crontab вообще не отличается (ну, разве что реакцией на '%'). Per-user файлы - одним полем. -netch- --- ifmail v.2.15dev5 * Origin: Dark side of coredump (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/7368d918c987.html, оценка из 5, голосов 10
|