Программирование на sh, быть может немного про альтернативные языки
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
-
fragpit
- рядовой
- Сообщения: 43
- Зарегистрирован: 2009-11-08 11:53:08
Непрочитанное сообщение
fragpit » 2009-11-08 12:05:55
Здравствуйте! Приведенный ниже скрипт отлично отрабатывается если его запустить из bash, но если запускать по cron, то apache, по команде "apachectl graceful", не пересоздает логи. Почему так может быть?
Код: Выделить всё
#!/usr/local/bin/bash
#количество дней которые хранится архив логов
a=30
#очистка старых логов
for ((i=a; i<50; i++))
do
rm -rf /var/log/www/old/site/access.log.`date -v -"$i"d +%d.%m.%y`.gz
done
#перемещение текущих логов в папку для старых
mv /var/log/www/site-access_log /var/log/www/old/site/access.log.`date +%d.%m.%y`
mv /var/log/www/site-error_log /var/log/www/old/site/error.log.`date +%d.%m.%y`
sleep 10
#рестарт Apache во время которого он создает новые логи
apachectl graceful
sleep 100
#архивация старых логов
gzip /var/log/www/old/site/error.log.`date +%d.%m.%y` /var/log/www/old/site/access.log.`date +%d.%m.%y`
#отправка уведомления на почту
echo "`date` Логи Apache успешно отротейтились" | mail -s "Apache Logrotate `date +%d.%m.%y`" webmaster@site.ru
fragpit
-
Хостинг HostFood.ru
-
Хостинг HostFood.ru
Тарифы на хостинг в России, от 12 рублей:
https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.:
https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах:
https://www.host-food.ru/domains/
-
reLax
- лейтенант
- Сообщения: 638
- Зарегистрирован: 2007-04-08 5:50:16
Непрочитанное сообщение
reLax » 2009-11-08 12:15:23
$PATH
Код: Выделить всё
# crontab -l | grep PATH
# cat /etc/crontab | grep PATH
PATH=/etc:/bin:/sbin:/usr/bin:/usr/sbin
# which apachectl
/usr/local/sbin/apachectl
Ясно ? )))
reLax