
Linuxでファイルのバックアップを取るため
backup.shというシェルスクリプトを組み、コマンドから実行する場合問題ないことを
確認しています。ところがcronに設定し自動実行すると内容が実行されておりません。
/var/log/cronを確認したところ時間通り実行されているというログは残っています。
/var/spool/cron/にrootというファイルを作成し
00 23 * * * /BACKUP/backup.shを実行させたいのです。
なぜ、手動の場合は問題がないのにcronで設定すると問題が生じるのでしょう?
もし、お分かりの方は教えてください。
OSはRed Hat Linux release 8.0 (Psyche)です。
A 回答 (4件)
- 最新から表示
- 回答順に表示
No.4
- 回答日時:
再度。
。Interplayです。>/var/spool/cron/にrootというファイルを作成し
まず/etc/cron.d/配下ですよね?
っということとその下のrootのファイルにも実行権付いてますか?こちらにも実行権が必要です。
>00 23 * * * /BACKUP/backup.sh
ちなみにこれだと実行ユーザの指定がないので駄目です。
00 23 * * * root /BACKUP/backup.sh
とすればroot権限でシェルは実行されます。
出来ればエラーの標準出力への吐き出しを捨てる為に
00 23 * * * root /BACKUP/backup.sh >> /dev/null
などとしておくと良いです。
基本的にはcrontabコマンドで設定する事が標準ですが、わたしもcron情報をパッケージングして何かを配布する時にはこの方法の方がインストール漏れが無く確実に感じます。
No.3
- 回答日時:
>var/log/cronを確認したところ時間通り実行されているというログは残っています。
っと言う事なのでcrondは認識していると思われます。
>/var/spool/cron/にrootというファイルを作成し
>00 23 * * * /BACKUP/backup.shを実行させたいのです。
っと言う事なので /BACKUP/backup.sh のファイル属性を確認しましょう。
ひょっとして手動実行って
$ sh /BACKUP/backup.sh
とかってやってます?
ファイル属性「-rwxr-xr-x」って具合に実行可能ファイルの「x」は実行させたいユーザで付いてますか?
又、ファイル内では最初の行に実行させたいシェルをしてしていますか?
例)
#!/bin/sh
:
:
ありがとうございます。
属性については755を設定しており問題ないと思います。
エラーメールがroot宛てに届いているのですが
それを見ても原因がわかりません。
もう一度見直しみます。

No.2
- 回答日時:
まず原則として・・
cronの設定を/var下にあるファイルに直接書き込んで、というのは、あまりお薦めじゃありません。(システムによってディレクトリが変わるので)No1の方もおっしゃってますが、crontab -eで書きましょう。
本題・・
cronから起動された場合、カレントディレクトリは、そのユーザのホームになります。則ち、rootのcronは、rootのホームで起動されます。なので、カレントディレクトリを意識していないと、動かないことがあり得ます。
また(私も完全には理解してないのですが)、おそらくシェルの関係で、普段はシェルのrcファイルで設定してある環境変数が、cronで起動された時は設定されていなかったりもします。ためしに、当該スクリプトにでenvで、環境変数一覧をどこかに保存してみるといいです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
「管理者権限付きで実行」の挙動
-
Thunderbird 振り分けされなく...
-
ADのDC移行の手順を教えてください
-
JP1で月末以外で毎週月曜日のジ...
-
winsock2を使って2台のPCでデー...
-
PhotoStageスライドショーソフ...
-
DIGコマンドでstatusがREFUSED...
-
プロセスについて
-
weblogic9.2をWINDOWSサービス...
-
Tera Termでのコマンド流し込み...
-
NetBTエラーとbrowserエラーが多発
-
【Ciscoコマンド】interface As...
-
C:\\Documents and Settingsが...
-
ブラウザにIPアドレスを直打ち...
-
フォルダのサムネイル画像
-
撮影後、SDカードに作成される...
-
excel VBA 特定の文字列を含む...
-
ブックマークしたことは、サイ...
-
excel VBA 部分一致の名前をパ...
-
コマンドでネットワーク上の全...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Thunderbird 振り分けされなく...
-
xcopyバッチを管理者として実行...
-
エクセルで定期的(30分おき)...
-
JP1で月末以外で毎週月曜日のジ...
-
2010でShiftキーを使っても自動...
-
MODE関数を文字でできる関数は...
-
Teratermで、条件分岐させたい
-
SSDのTrimって毎日実行していい...
-
VBAのタイマー
-
ポリシーでコンピュータの構成...
-
ADのDC移行の手順を教えてください
-
bat 処理の中止
-
batファイルの実行が1行目のみ...
-
ログオフ状態でパソコンをシャ...
-
グループポリシーでログオンス...
-
WindowsServer2003の、SMB1.0を...
-
Windows10 pathが通らない
-
ポリシーによる自動ログオフ
-
Teratermマクロ動作について
-
GIGABYTE ユーティリティについて
おすすめ情報