сrontab и скрипт
-
- Интересующийся
- Сообщения: 59
- Зарегистрирован: 28 сен 2005, 14:36
- Откуда: Киев
- Контактная информация:
сrontab и скрипт
Здравствуйте. Помогите пожалуйста разобраться.
Задача запускать sarg по скрипту в определенное время каждый день.
Есть скрипт, есть файл crontab, в котором указано время запуска sarg.
А куда необходимо поместить скрипт? Наверно, в cron.daily? Но как правильно прописать путь в crontab к исполняемому скрипту?
Заранее спасибо.
Задача запускать sarg по скрипту в определенное время каждый день.
Есть скрипт, есть файл crontab, в котором указано время запуска sarg.
А куда необходимо поместить скрипт? Наверно, в cron.daily? Но как правильно прописать путь в crontab к исполняемому скрипту?
Заранее спасибо.
-
- Интересующийся
- Сообщения: 59
- Зарегистрирован: 28 сен 2005, 14:36
- Откуда: Киев
- Контактная информация:
То есть его можно поместить в любой файл, а в crontab указать к нему полный путь? Так с этим ясно. А зачем же тогда эти папки cron.daily,
cron.monthly и т.д. , если не для скриптов?
И еще вопросик, как отключить формирование отчетов сквидом access.log.1 ,access.log.2 и т.д.
Чтобы был один общий файл access.log А то сарг не видит статистику за прошедшие дни.
cron.monthly и т.д. , если не для скриптов?
И еще вопросик, как отключить формирование отчетов сквидом access.log.1 ,access.log.2 и т.д.
Чтобы был один общий файл access.log А то сарг не видит статистику за прошедшие дни.
- kae
- Неотъемлемая часть форума
- Сообщения: 318
- Зарегистрирован: 26 янв 2003, 03:53
- Откуда: Дзержинск, РБ.
- Контактная информация:
У меня так:
в файл /etc/logrotate.d правим
/var/log/squid/access.log {
weekly
rotate 5
copytruncate
compress
notifempty
missingok
prerotate
/root/bin/squidlogs || /bin/true
endscript
}
файл /root/bin/squidlogs у меня такой:
#!/bin/bash
cat /var/log/squid/access.log | /usr/local/bin/calamaris | mail -s 'Squid, calamaris' root
cat /var/log/squid/access.log | /root/bin/squidsites | mail -s 'Squid sites' root
/usr/sbin/sarg | mail -s 'SARG' root
exit 0
Ненужное выбросить.
в файл /etc/logrotate.d правим
/var/log/squid/access.log {
weekly
rotate 5
copytruncate
compress
notifempty
missingok
prerotate
/root/bin/squidlogs || /bin/true
endscript
}
файл /root/bin/squidlogs у меня такой:
#!/bin/bash
cat /var/log/squid/access.log | /usr/local/bin/calamaris | mail -s 'Squid, calamaris' root
cat /var/log/squid/access.log | /root/bin/squidsites | mail -s 'Squid sites' root
/usr/sbin/sarg | mail -s 'SARG' root
exit 0
Ненужное выбросить.
Будем же учиться хорошо мыслить — вот основной принцип морали
— Паскаль
— Паскаль
-
- Интересующийся
- Сообщения: 59
- Зарегистрирован: 28 сен 2005, 14:36
- Откуда: Киев
- Контактная информация:
У меня файл squid в logrotate.d
такой.
#
# Logrotate fragment for squid.
#
#/var/log/squid/*.log {
# daily
# compress
# delaycompress
# rotate 2
# missingok
# nocreate
# sharedscripts
# prerotate
# test ! -x /usr/sbin/sarg-maint || /usr/sbin/sarg-maint
# endscript
# postrotate
# test ! -e /var/run/squid.pid || /usr/sbin/squid -k rotate
# endscript
Я все закоментировал и думаю теперь логи сквида будут в одном экземпляре.
Только я так и не понял полностью на счет crontaba.
Зачем папки cron.daily,
cron.monthly и т.д. , если не для скриптов? Если скрипты можно положить где угодно и прописать к ним путь.
такой.
#
# Logrotate fragment for squid.
#
#/var/log/squid/*.log {
# daily
# compress
# delaycompress
# rotate 2
# missingok
# nocreate
# sharedscripts
# prerotate
# test ! -x /usr/sbin/sarg-maint || /usr/sbin/sarg-maint
# endscript
# postrotate
# test ! -e /var/run/squid.pid || /usr/sbin/squid -k rotate
# endscript
Я все закоментировал и думаю теперь логи сквида будут в одном экземпляре.
Только я так и не понял полностью на счет crontaba.
Зачем папки cron.daily,
cron.monthly и т.д. , если не для скриптов? Если скрипты можно положить где угодно и прописать к ним путь.
- Speccyfan
- Неотъемлемая часть форума
- Сообщения: 540
- Зарегистрирован: 18 дек 2004, 15:15
- Откуда: Polotsk
- Контактная информация:
Не думаю что это правильно, в таком случае лог-файл будет рости до бесконечности, а ты е каждый раз еще генерить отчет будешь, в общем через некоторое время получиться тормоз.
У меня сделано так, лог файл (access.log) ведется за сутки, но архивы храняться месяц, на всяк случай:
[root@gateway logrotate.d]# cat /etc/logrotate.d/squid
/var/log/squid/access.log {
daily
rotate 30
copytruncate
compress
notifempty
missingok
}
/var/log/squid/cache.log {
weekly
rotate 5
copytruncate
compress
notifempty
missingok
}
/var/log/squid/store.log {
weekly
rotate 5
copytruncate
compress
notifempty
missingok
postrotate
/usr/sbin/squid -k rotate
endscript
}
а в 00.05 я запускаю sarg из крона так:
05 00 * * * sarg
В результате ещедневынй отчет, вроде удобно.
У меня сделано так, лог файл (access.log) ведется за сутки, но архивы храняться месяц, на всяк случай:
[root@gateway logrotate.d]# cat /etc/logrotate.d/squid
/var/log/squid/access.log {
daily
rotate 30
copytruncate
compress
notifempty
missingok
}
/var/log/squid/cache.log {
weekly
rotate 5
copytruncate
compress
notifempty
missingok
}
/var/log/squid/store.log {
weekly
rotate 5
copytruncate
compress
notifempty
missingok
postrotate
/usr/sbin/squid -k rotate
endscript
}
а в 00.05 я запускаю sarg из крона так:
05 00 * * * sarg
В результате ещедневынй отчет, вроде удобно.
Best Regards, Yury Konovalov aka Speccyfan (2:453/53)
Registered Linux User #379588
Registered Linux User #379588
-
- Интересующийся
- Сообщения: 59
- Зарегистрирован: 28 сен 2005, 14:36
- Откуда: Киев
- Контактная информация:
Если access.log ведеться за сутки, то как же считать статистику за месяц?
Я хотел бы, что бы новый access начинался после того, как sarg подсчитает статистику за прошлый месяц ( в ночь изменения месяца), а старый после этого уходил в access.log.1
Но как это сделать, моих малых знаний пока не хватает.
Я хотел бы, что бы новый access начинался после того, как sarg подсчитает статистику за прошлый месяц ( в ночь изменения месяца), а старый после этого уходил в access.log.1
Но как это сделать, моих малых знаний пока не хватает.