---
title: Crontab
date: 2009-02-03T10:00
tags: [ai, php, server, tech]
---

понедельник, 8 января 2007 г. в 12:04:09

[Cron](http://en.wikipedia.org/wiki/Cron) или crontab - UNIX демон, периодически вызывающий некоторую комманду. Обычно доступ к его настройкам поставляется на хостингах в контрольной панели, либо через прямой доступ по ssh. 

По умолчанию демон должен работать, но если нет - можно запустить вручную

`service crond start`

Вот несколько комманд для редактирования файла

`crontab -e nano /etc/cron.d/sitename`

Cron хранит таблицу настроек вида

|   |   |   |   |   |   |
|---|---|---|---|---|---|
|минута|час|день|месяц|день недели|комманда|

Благодаря этой программе можно разрабатывать эффективные приложения на php практически с неограниченным временем исполнения, благодаря постоянному вызову этого файла. Вызывать можно либо через UNIX утилиту wget, либо напрямую из php:

```
#В случае ошибок, будет присылаться письмо
MAILTO="artkurapov@gmail.com"

#сохраняет каждую минуту в пустоту.. не очень красиво. local кстати тут для мака 
* * * * * /usr/local/bin/wget -q -O /dev/null http://example.com/auto.php

#вот теперь даже сохранять не надо ничего.. 
* * * * * /usr/bin/wget --spider -q http://example.com/auto.php

* * * * * root cd /var/www/sitename/ && php -d max_execution_time=0 index.php some_argument_as_function
```

### Вариации

Если у нас маленький сайт/домашняя страница, где надёжность не настолько важна как в банковских системах, то можно использовать публичный ресурс [WebCron.org](http://www.webcron.org/)

Если система - десктоп с Windows, то можно использовать удобно прячущуюся в tray, программку [nnCron](http://nncron.ru/) .

## Related

- [Мини-шпаргалка по Unix](/ru/blog/tech/server/mini-shpargalka-po-unix/)
- [Basic auth с помошью .htaccess](/ru/blog/tech/server/basic-auth-s-pomoshyu-htaccess/)
- [Crontab](/ru/blog/tech/server/vagrant/)
