sudo を cron などからバッチ処理で使用しようとすると 次のようなエラーが発生することがあります。
sudo: sorry, you must have a tty to run sudo
「端末から実行しないとダメ」と言ってるのですが どうしても cron で実行したい場合は、 sudo の設定ファイル /etc/sudoers の Defaults requiretty パラメータを修正します。
/etc/sudoers は visudo で編集します。
# visudo
【変更前】 Defaults requiretty 【変更前】 Defaults !requiretty
特定のユーザのみ許可したい場合は次のように設定します。
Defaults:hogehoge !requiretty
これで、ユーザ hogehoge は 端末なしで sudo できます。