• ベストアンサー

cronでftp自動転送を行いたい

ftpで自動ログイン+ファイル転送するシェルを作成して、これをcronで 実行したのですが、ftpが実行されません。()シェル単体で実行すると、転送されます) 何が原因でしょうか?宜しくお願いいたします。 【環境】 FedoraCore5 【シェル(ftp.csh)の内容】 ftp -n xxx.xxx.xxx.xxx << _EOD user xxx xxx ascii put xxxxxxxx quit _EOD 【cron設定】 05 6 * * * root /share/ftp.csh

質問者が選んだベストアンサー

  • ベストアンサー
  • notnot
  • ベストアンサー率47% (4900/10358)
回答No.4

なるほど。ftpコマンド自体は実行はされていると言うことですね。 成功にせよ失敗にせよftpの出力があるはずなので、やはりroot宛にメールが来ているはずですけど。そこに何か出ていると思います。 >rootからのメールとは何でしょうか?どこで確認できるのですか? メールの読み方がわからないと言うことですね。メールがどこに入るかは設定によって違います。 rootのHOMEの下にMaildirがあればそこに。無ければ/var/spool/mail/root にあります。この場合は mail コマンドで読めます。

indigo45kk
質問者

補足

詳細な情報ありがとうございます。  /root にmboxファイル があったので、viで開き、ftpで検索しましたが、それらしき情報は確認できませんでした。  /var/spool/mail/rootも存在しました。 しかし更新日時が7/17以降更新されておらず、mailコマンドで内容を見ましたが、やはりそれらしき情報は確認できませんでした。 システム的におかしな状態になっているのでしょうか?しかし気になっているのは、質問の現象だけで、他の運用は問題なくできています。 (追加質問:/var/spool/mail/root は削除してもよいのでしょうか? )

その他の回答 (3)

  • notnot
  • ベストアンサー率47% (4900/10358)
回答No.3

>cronの設定は、/etc/crontabに直接書きました。 書いた後、crondを再起動ないしリロードしましたか? >他の設定は問題なく動いています。 これはどういう意味ですか?/etc/crontab に複数書いて他の行は実行されているという意味?それならcron設定は大丈夫ですね。 >rootからのメールとは何でしょうか?どこで確認できるのですか? crontabに登録された処理がエラーになったらメールが来ます。この場合はroot宛ですね。 あとは、/var/log/cron がその時刻に何が出てるかとか。

indigo45kk
質問者

補足

・crondを再起動しました。 ・/etc/crontab に書いてある別の行の指令は、正しく実行されています。 ・/var/log/cron には、他の指令のlogと同じように出力されています。 Jul 23 16:20:01 localhost crond[19143]: (root) CMD (/share/ftp.csh) エラーではないと思います。

  • notnot
  • ベストアンサー率47% (4900/10358)
回答No.2

cron設定とは具体的にどうやって設定したのですか? rootからcronコマンド失敗のメールは来ていますか?来ているならその内容は?来ていないとするとcron設定がおかしいです。

indigo45kk
質問者

補足

ありがとうございます。 cronの設定は、/etc/crontabに直接書きました。 他の設定は問題なく動いています。 rootからのメールとは何でしょうか?どこで確認できるのですか? よろしくお願いいたします。

  • mendokusa
  • ベストアンサー率13% (359/2726)
回答No.1

ftpの在り処を調べてフルパスで書けばいいんじゃないでしょうか。 /bin/ftp -n xxx.xxx.xxx.xxx << _EOD など。

indigo45kk
質問者

お礼

ありがとうございます。フルパスで指定しましたがだめでした。 usr/bin/ftp -n xxx.xxx.xxx.xxx << _EOD

関連するQ&A