Почему эта работа crontab не работает

У меня есть задание cron, которое выполняется каждую минуту в ящике Ubuntu 12.04

$sudo crontab -e * * * * * mylogin /pathto/file.sh > /log/filelog 

Если я запустил file.sh , скрипт bash выполняет некоторые действия и runs эхо- file.sh :

 $ ./file.sh runs 

Если я проверяю журнал вкладки cron, это показывает, что задание выполняется:

 Jul 10 12:41:01 localhost CRON[1811]: (root) CMD (mylogin /pathto/file.sh > /log/filelog) Jul 10 12:41:01 localhost CRON[1810]: (CRON) info (No MTA installed, discarding output) Jul 10 12:42:01 localhost CRON[1813]: (root) CMD (mylogin /pathto/file.sh > /log/filelog) 

Однако сценарий не запущен. Это не делает работу, а не runs эхо- /log/filelog на /log/filelog .

 $cat /log/filelog #shows nothing 

Какие еще шаги я могу предпринять, чтобы отладить эту проблему?

  • Cronjob запускается каждые 30 минут
  • Почему crontab -e отличается от менее / etc / crontab?
  • Почему эта прокомментированная строка строки crontab выполнена?
  • Значение записи «* * / 1 * * *» cron?
  • Команда crontab rtcwake не работает
  • Как я могу подать сигнал на задание cron, чтобы пропустить прогоны?
  • Как я могу запускать работу Cron каждые 5 дней
  • Cronjob (ы) для нескольких пользователей
  • One Solution collect form web for “Почему эта работа crontab не работает”

    Указание имени пользователя, такого как mylogin , для файла /etc/crontab . С вашей командой sudo crontab -e вы фактически редактируете /var/spool/cron/crontabs/root и вы не должны указывать имя пользователя в таком файле, только в /etc/crontab .

    Если вам нужно запустить команду как пользователь mylogin вы должны поместить строку в /etc/crontab (и отредактировать это с правами root ) или просто поместить ее в mylogin пользователя mylogin .

    От man 5 crontab :

     EXAMPLE SYSTEM CRON FILE The following lists the content of a regular system-wide crontab file. Unlinke a user's crontab, this file has the username field, as used by /etc/crontab. 
    Linux и Unix - лучшая ОС в мире.