• 締切済み

cronでバックアップ

centファイルサーバーA からWindowsServerファイルサーバーへ バックアップを取る際に cronを使ってシェルスクリプトを書いてバックアップをすればいいというところまでは調べましたが、 シェルスクリプトの中に記述するコマンドは何を使用したらいいでしょうか? 最初に全てのファイルをバックアップ、その後毎日1回差分バックアップを計画しています。 またグループでアクセス制御をしているディレクトリもあります。 選択肢が多すぎて、どれが比較的シンプルでスマートなやり方なのかの手がかりにしたいと 思っております。 よろしくお願いします

みんなの回答

回答No.2

お互いにどうやってマウントしてるのか/してないのか、シェルでリモートにログインできるのかとかによりますが、 >最初に全てのファイルをバックアップ、その後毎日1回差分バックアップを計画しています という要件だけから考えるとdumpでしょうね。 日曜日にレベル0でフルダンプ。 月曜からは前日の差分ダンプとか、日曜のフルダンプからの差分とかで取れます。 いずれにしても、復旧のリハーサルをしっかり行うと同時に、手順書を整備しておくのは必須です。

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

rsyncがいいのでは? 差分コピーなのでコピー後はフルバックアップ状態 ネットワーク経由のtarが使えるならそれでもいいですが

関連するQ&A

  • cronジョブ

    cronの実行時間は、/var/spool/corn/ユーザ のファイルで 時間が記述されているので、実行される時間はわかるのですが、 cronで、ある1つのシェルスクリプトが起動した時間から終了までかかった時間を知りたいのです。 (timeコマンド、メール送信による判断は無しでお願いします。) linuxのどこかのログファイルに、cronのシェル1つ1つのジョブの終了時間が記述されている ファイルはないでしょうか?(可能であれば、実行時間もわかるとよいのですが。) ご教授お願いします。

  • cron と FTPでバックアップ

    Turbolinux8serverを使っています。 シェルを組んでFTPサーバーにファイルをバックアップさせています。シェル単体で動かすと問題なくファイルのバックアップできるのですが、cronスケジューラーで動かすとバックアップできません。 ちなみにバックアップさせるファイルは15Gと膨大で、小さいファイル(数kbite)だとシェル単体でもcronで起動させても問題なく動きます。 cronで起動するとFTPの転送ファイル容量の制限が掛かるのでしょうか? ちなみにシェルは set `date +%Y%m%d` echo $1 cd /home/httpd/ tar cvf /backup/$1.tgz Doc ftp -i -v -n 192.168.1.1 <<END user username password cd /backup/ lcd /backup/ put $1.tgz quit END 同様の症状等で解決策をご存知の方アドバイスお願いします。

  • cronを使用したファイルバックアップについて困っています

    まだ、Linux OSに完全に慣れていなく皆様方のお知恵をお借りしたいと思っております。 現在、レンタルサーバー内にある、ディレクトリ/httpdocs/以下にある全ファイル(html,php,cgi,gif,jpg,swf…など)を、オフィス内にあるファイルサーバに定期的にバックアップ(全ファイルの取得)をしていこうと思っています。 このディレクトリの合計サイズは約200MBです。 本来であれば、rsync + sshで、あらかじめキーを交換しておく方法がベストだと思いますが、レンタルサーバ側がSSHを受け付けてくれません。(月々別途のお金を払うと使用できるのですが…) ちなみに、公開鍵を作成しscpコマンドも試してみたのですが、駄目でした。 今後、考えられる手段としてcron + ftpで行っていくのがベストな方法なのでしょうか。 また、参考になるシェルスクリプトなどございましたらご教授お願い致します。 ■ファイルサーバ システム概要 OS:Fedora Core 5 HDD:250GB Memory:1GB ■レンタルサーバ OS:RedHat Linux 2.6.9

  • Linuxのcronとrc.localでの制御について

    こんばんは、皆さん。 先頭行が#!/usr/bin/perlから始まる簡単なPerlスクリプトを書き、 実行権を777にし、/etc/rc.localとrootのcronに記述しました。 記述した内容が間違っていないと仮定した場合、動作しますか? 質問の仕方がよくないと思いますが、つまり、cronや/etc/rc.localは シェルスクリプトでないと制御できないのでしょうか? 実際に試してみましたが、シェルならうまくいくのですが、 Perlを起動できていないようです。 どうすればcronや/etc/rc.localでPerlを扱えるのでしょうか? よろしくお願いします。

  • cronの挙動について

    cronの挙動について教えてください。 現在user「AAA」のcronにシェルスクリプトを登録しています。 コンソールから登録してあるスクリプトが正常に起動できることは確認できております。 しかしcron経由でコマンドが実行できない状態(/var/log/cronにコマンドを実行した履歴は残っています)でした。 色々試したところ、スクリプトの先頭で.bashrc(user「AAA」のもの)をsourceコマンドで実行するようにしたところ、cronからも起動できるようになりました。 (.bashrcには、スクリプト実行に必要な環境変数やパスの設定がされています) そこで質問なのですが、 (1) cronでコマンドを実行する場合、.bashrcは明示的に実行しなければいけないのでしょうか。 cronで実行される場合、ログインした状態と同じ環境で実行されるとばかり思っていたため、見落としていたのですが・・・。 以上、よろしくお願いいたします。

  • cronでバックアップsh

    現在、hetemlというレンタルサーバでバックアップ用のシェルをcron登録しているのですが、 権限エラーが出てしまいます。何の権限エラーなのか解らないのですが、 どなたかご存知ないでしょうか? [エラーメッセージ] /bin/sh: /home/sites/heteml/users/xxx/db_bakkup.sh: Permission denied [シェル] #!/bin/sh # ---------- 設定 ---------- # バックアップ元のデータベース db_host=xx db_name=xx db_user=xx db_pass=xx # バックアップ先のディレクトリ・ファイル bk_file=/xx/bak.sql # ---------- ファイル名を設定 ---------- # ファイル名を設定 file_temp=$bk_file.sql # ---------- バックアップ処理 ---------- # バックアップ先のディレクトリに移動 cd $bk_dir if [ $? != 0 ]; then echo "Backup directory does not exist." exit 1 fi # データベースをダンプ mysqldump -h$db_host $db_name -u$db_name -p$db_pass --opt > $bk_file if [ $? != 0 -o ! -e $file_temp ]; then echo "Cannot dump database." exit 1 fi exit 0 ------------------------------------ 有識者の方、ご教授お願い致します。

  • cron バリュードメインサーバー

    シェルスクリプト未経験者です。サーバーでcronを使おうと勉強しています。1日に一回30から1を引くcronを作りたいです。 普通にphpとsql文で書いているものは成功している(リロードしたらサーバーのdayカラムから1を引かれる)(dayカラムには初期値で30を入れています)のですが、パスなどを設定をしていてもcronとして動きません。 シェルスクリプトでかかないといけないのでしょうか? 以下の画像は使っているサーバーの注意書です。

  • cronとrc.localへの記述内容について

    こんばんは、皆さん。 先頭行が#!/usr/bin/perlから始まる簡単なPerlスクリプトを書き、 実行権を777にし、/etc/rc.localとrootのcronに記述しました。 記述した内容が間違っていないと仮定した場合、動作しますか? 質問の仕方がよくないと思いますが、つまり、cronや/etc/rc.localは シェルスクリプトでないと制御できないのでしょうか? 実際に試してみましたが、シェルならうまくいくのですが、 Perlを起動できていないようです。 すべてフルパスで指定しているのでパスの問題ではないようです。 実行権もフルアクセスにしてみたので関係ないと思います。 どうすればcronや/etc/rc.localでPerlを扱えるのでしょうか? cronや/etc/rc.local、Perlスクリプトのサンプルを例として 挙げていただけると助かります。 一般的にPerlスクリプトは実行できないのでしょうか? もし実行できなければ、その理由も知りたいです。 よろしくお願いします。

  • cronでシェルスクリプトが実行されない

    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)です。

  • ttlマクロによるディレクトリ配下の取得

    シェルスクリプトで、apacheのhtmlディレクトリを取得しバックアップを作成しております。 シェルスクリプトは、ユーザshコマンドによる実行です。(cronでは動かしておりません。) 保存先:/home/test/html_backup/配下 保存ファイル名:yyyymmdd.tar.gz(yyyymmddシェルスクリプト実行日となる。) よって、/home/test/html_backup/ディレクトリ配下にある複数のバックアップ全てを、 マクロによるscp転送で取得したいと考えています。 同名ファイルが存在する場合は、常に上書きでかまいません。 サーバに接続後、下記コマンドを実行しようと思いました。 wait '$' scprecv '/home/test/html_backup/*' scprecv '*' 'c:\temp' としましたが、うまくマクロが動きません。 sendlnでファイル転送ができることはわかりましたか、 今回やろうとしていることは、複数のバックアップファイルがあるため 自動でsendlnでは難しいと思っております。 どのようにttlを書けば バックアップファイルを全部取得できるのでしょうか。 ご教授お願いいたします。