Почему эта работа 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 

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

  • Как запустить команду, как если бы она вызывается из cron
  • Как выполнить команду в cronjob для отображения вывода в терминале
  • Является ли перезапуск cron или crond необходимым после каждого добавления или изменения нового расписания?
  • Выполняется ли задание, запланированное в crontab, даже когда я выхожу из системы?
  • crontab не запускает один скрипт
  • crontab "0/15" минут + "11-15" час поля: когда это заканчивается?
  • В crontab @reboot работает, но не работает
  • crontab -e не работает
  • 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 - лучшая ОС в мире.