バックアップスクリプトはcronジョブで実行されていますが、バックアップは作成されません。

バックアップスクリプトはcronジョブで実行されていますが、バックアップは作成されません。

コマンドラインからバックアップスクリプトを手動で実行すると、正常に動作します。問題のバックアップは作成されませんでした。 crontabログで午前2時に実行されているバックアップエントリを表示できます/home/sgaddis/copy-production-db.sh

Dec 23 01:01:01 mapehr anacron[11921]: Anacron started on 2019-12-23
Dec 23 01:01:01 mapehr anacron[11921]: Normal exit (0 jobs run)
Dec 23 01:01:01 mapehr run-parts(/etc/cron.hourly)[11923]: finished 0anacron
Dec 23 02:00:01 mapehr CROND[14869]: (sgaddis) CMD (sgaddis /bin/bash /home/sgaddis/copy-production-db.sh)
Dec 23 02:01:01 mapehr CROND[14934]: (root) CMD (run-parts /etc/cron.hourly)
Dec 23 02:01:01 mapehr run-parts(/etc/cron.hourly)[14934]: starting 0anacron
Dec 23 02:01:01 mapehr anacron[14943]: Anacron started on 2019-12-23

ところで確認してみると/home/sgaddis/backupバックアップがなかったんですよ。

私はデフォルト/バックアップフォルダなので、権限の問題ではないはずです。私のアカウントには、スクリプトを手動で実行するのと同じように、バックアップをダンプする権限が必要です。またどこで手がかりを探すべきですか?

私は行きましたhttps://linux4one.com/how-to-set-up-cron-job-on-centos-7/cronjobを作成するときに私が逃したものがあることを確認してください。

サイトを検索しましたが、同様の問題が見つかりませんでした。 cronjob が保留中または実行中ではありません。私が見つけた最も近いもの

  https://stackoverflow.com/questions/44723154/using-cronjob-to-automatically-backup-mysql-files, 

しかし、前の記事で述べたように、コマンドラインでスクリプトを実行していましたが、うまくいったので、上記の投稿には私の質問に対する答えはありません。

このサイトを検索中

私が投稿したのと同様の問題は発生しません。同様の投稿を知っているなら、私の投稿に非推奨よりも指摘してください。

正確なルートはこれです

0 2 * * * root /bin/bash /home/sgaddis/copy-production-db.sh

==更新==

今日のログファイルのコマンドは次のとおりです。

 mapehr CROND[21076]: (sgaddis) CMD (/bin/bash /home/sgaddis/copy-production-db.sh)

今私のユーザーアカウントを使用してクローンの仕事を始めましょう。

私のユーザーアカウントにcronジョブを実行する権限がない可能性があります。

ベストアンサー1

こんにちは、コミュニティへようこそ!

一見すると、チュートリアルとして使用するページにはを使用するように指示されていますが、後でcrontab -ecronエントリにユーザー名を入力する必要があることがわかります。このcrontabツールを使用すると、ツールを介して呼び出されたcrontabはとにかくユーザーコンテキストで実行されるため、cronエントリにユーザー名は必要ありません。構成に使用された正確な行を指定すると、この問題を正しく修正できます。

しかし、これはcronエントリの問題かもしれません。 cronエントリがある場合は、ユーザー名を削除し、タイミング設定と手動で使用した正確なコマンドのみを次のように指定します。

0 0 * * * your-command /path/to/script.sh

おすすめ記事