Что я всегда делаю, так это использую PHP в режиме cli. Мне кажется более эффективным.
сначала настройте запись cron как:
*/5 * * * * /usr/bin/php /var/www/html/cronnedscript.php
Файл cronnedscript.php должен быть помещен в корневую папку www.
затем отредактируйте cronnedscript.php с помощью:
<?php
$_GET["/mycontroller/index"] = null;
require "index.php";
?>
где mycrontroller - контроллер CI, который вы хотите запустить.
если вы хотите, чтобы контроллер запускался только crond, в отличие от публичных запросов www, добавьте следующую строку в контроллер и в cronnedscript.php:
if (isset($_SERVER['REMOTE_ADDR'])) die('Permission denied');