LINUX.ORG.RU

Cron и www


0

0

Приветствую.

Задача: Сделать так, чтобы расписание одного из cron - заданий (время запуска и параметры) были доступны для просмотра на web страничке, позже нужно будет добавить возможность изменения времени выполнения со странички (но не исполняемого файла и параметров!).

Как лучше, и безопаснее это сделать (для начала первую часть)?

Задание в принципе можно пускать от любого юзера (вызывается mpg123).

Cпасибо.

~$ cat 1.pl

#!/usr/bin/perl
open(CRON, "grep petr /etc/crontab|") || die "Файл не найден!";
while(<CRON>)
{
print;
}
close(CRON);

Вопрос: как добавить в этот скрипт функционал, который на баше описывается так: awk '{print $1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12}'

Т.е., из строки, которую выдает скрипт 1.pl, нужно вырезать несколько первых слов.

Спасибо.

Mousehouse
() автор топика

Даешь CGI!

anonymous
()
Ответ на: комментарий от Mousehouse

А чем сам баш не устраивает?

Вместо авка можно использовать cut (1):

$ echo a b c d | cut -d' ' -f 2,3
$ b c

Я бы разделил на 2 файла:
 - основной скрипт
 - враппер (echo "Content-type: text/plain"; echo; ./main-script $@)

И через веб обращался бы только к врапперу.

anonymous
()
Ответ на: комментарий от Mousehouse

> А как в него писать из web

Ну, в man'е ведь написано: crontab <file> установит новое содержимое из <file>. "crontab -" читает из stdin, т.е. сначала "crontab -l", убираешь/добавляешь строчки, потом скармливаешь в "crontab -".

watashiwa_daredeska ★★★★
()
Ответ на: комментарий от watashiwa_daredeska

Только одна проблема - апач же пускается под своим юзером, и править файл не дает, т.к. не рут.

Как здесь выйти из положения, не проделывая брешь в безопасности? Прописать нужное в кронтаб апачевского юзера и дать ему право пользоваться кроном?


ЗЫ Аналогично - как вывести на страничку содержимое системных логов, не давая апачу доступ к ним на чтение? Или если дать ему права на чтение, это будет большая брешь? Как лучше сделать?

Спасибо.

Mousehouse
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.