User Tools

Site Tools


планирование_выполнения_заданий

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
планирование_выполнения_заданий [2009/03/11 12:06]
val created
планирование_выполнения_заданий [2011/02/21 17:39]
val removed
Line 1: Line 1:
 ====== Планирование выполнения заданий ====== ====== Планирование выполнения заданий ======
  
-Сервис cron +===== Примеры периодических задач =====
-[gX:~] # crontab -e +
-* * * * * echo "Hello from cron" > /dev/ttyp1+
  
-[gX:​~] ​crontab -l +==== Ротация файлов регистрации ==== 
-*/* * * * echo "Hello from cron" ​/dev/ttyp1+<​code>​ 
 +cat /​etc/​newsyslog.conf 
 +</​code><​code>​ 
 +... 
 +/​var/​log/​clamd.log ​                     600  7     ​10 ​      J 
 +/var/​log/​httpd-access.log ​              ​644 ​ 10    1000     JC    /​var/​run/​httpd.pid 30 
 +/​var/​log/​httpd-error.log ​               644  10    1000     JC    /​var/​run/​httpd.pid 30 
 +/​var/​log/​httpd-ssl_request.log ​         644  10    1000     JC    /​var/​run/​httpd.pid 30 
 +</​code><​code>​ 
 +# cat logger.sh 
 +</​code><​code>​ 
 +while : 
 +do 
 +  logger -t clamd -p local7.info ​"Message 1" 
 +  logger -t clamd -p local7.info "​Message 2" 
 +done 
 +</code><​code>​ 
 +# sh logger.sh 
 +... 
 +<​Ctrl>​-C
  
-[gX:​~] ​crontab ​-r +tail -f /​var/​log/​clamd.log 
-remove crontab for root? y +... 
-Скрипты periodic +<​Ctrl>​-C
-[gX:~] # periodic daily+
  
-[gX:​~] ​more /​var/​mail/​root+newsyslog
  
-[gX:​~] ​rm /var/mail/root+ls -l /var/log/clamd.log* 
 +</​code>​
  
-[gX:​~] ​grep df /etc/​defaults/​periodic.conf+==== Обновление системы ==== 
 +<​code>​ 
 +freebsd-update fetch 
 +</code>
  
-[gX:​~] ​cat /​etc/​periodic.conf ​ +==== Обновление дерева портов ==== 
-daily_status_disks_df_flags="​-h -t ufs"+<​code>​ 
 +portsnap fetch 
 +</​code>​
  
-ИЛИ+==== Резервное копирование файлов конфигурации ==== 
 +<​code>​ 
 +# cat backup.sh 
 +#!/bin/sh 
 +echo Backup conf 
 +cd /; /​usr/​bin/​tar -cjf - etc/ usr/​local/​etc/​ var/​named/​etc/​namedb | ssh userX@isp "cat > backup.`date '​+%Y%m%d'​`.tbz"​ 
 +</​code>​ 
 +или попроще:​ 
 +<​code>​ 
 +# cat backup.sh 
 +#!/bin/sh 
 +echo Backup conf 
 +cd /; /​usr/​bin/​tar -cjf - etc/ usr/​local/​etc/​ | rsh -l userX isp "cat > backup.tbz"​
  
-[gX:​~] ​pkg_add ​/usr/ports/packages/​All/​portaudit.tbz+chmod +x backup.sh 
 +</code> 
 +===== Сервис cron ===== 
 +<​code>​ 
 +# cat /etc/crontab 
 +...
  
-[gX:​~] ​ls /​usr/​local/​etc/​periodic/​security+crontab -e
  
-[gX:​~] ​periodic daily+crontab -l 
 +0 0 * * * /​usr/​sbin/​freebsd-update cron 
 +0 0 * * * /​usr/​sbin/​portsnap cron 
 +0 0 * * * /​root/​backup.sh
  
-[gX:~] # more /​var/​mail/​root 
  
-Планирование заданий (программа at) +crontab -l -u root 
-[gX:​~] ​echo "echo Hello from at > /​dev/​ttyp1"​ | at now + 3 minutes +...
-Job 1 will be executed using /bin/sh+
  
-[gX:​~] ​echo "echo Hello from at > /​dev/​ttyp1"​ | at 18:40 +crontab -r 
-Job 2 will be executed using /bin/sh+</code>
  
-[gX:~] # echo "rm –rf /*" | at 18:40 10/26/10 +===== Система periodic =====
-Job 3 will be executed using /bin/sh+
  
-[gX:~] # atq +==== Использование ====
-Date                            Owner           ​Queue ​  ​Job#​ +
-Tue Oct 25 19:27:00 UTC 2005    root            c       1 +
-Wed Oct 26 18:40:00 UTC 2005    root            c       2 +
-Wed Oct 26 18:40:00 UTC 2006    root            c       3+
  
-[gX:​~] ​atrm 3+<​code>​ 
 +periodic daily
  
-[gX:​~] ​at -c 2 +more /​var/​mail/​root
-...+
  
 +# rm /​var/​mail/​root
 +</​code>​
  
 +==== Настройка ====
 +<​code>​
 +# grep df /​etc/​defaults/​periodic.conf
 +
 +# cat /​etc/​periodic.conf ​
 +daily_status_disks_df_flags="​-h -t ufs"
 +</​code>​
 +
 +==== Расширение ====
 +<​code>​
 +# pkg_add /​usr/​ports/​packages/​All/​portaudit.tbz
 +
 +# ls /​usr/​local/​etc/​periodic/​security
 +
 +# cp backup.sh /​usr/​local/​etc/​periodic/​daily/​
 +
 +# periodic daily
 +
 +# more /​var/​mail/​root
 +</​code>​
 +
 +
 +===== Система atrun =====
 +<​code>​
 +# echo "/​bin/​date > /​dev/​console"​ | at now + 3 minutes
 +
 +# echo "/​bin/​date > /​dev/​console"​ | at 18:40
 +
 +# echo "rm –rf /*" | at 23:59 12/31/2015
 +
 +# atq
 +
 +# atrm 3
 +
 +# at -c 2
 +...
 +</​code>​