- ベストアンサー
差分ファイルの抽出
初心者のServer管理者です。Solaris 9(sparc)でCシェルを使用しております。単純に1日毎の差分ファイルを抽出するコマンドか、実行可能なシェルがあればご教授願えないでしょうか。又、毎日、夜の3:00にシェルを起動させてたいと考えておりますが、これを実行するには、どのファイルをどのようにしたら良いか検討もつきません。冗長かは、disk suitを使用してミラーで行うつもりです。稼動しているServerが一台だけなので、他のサーバーにFTPしたりその他特別なことは、いたしません。宜しくお願いします。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
-mtime 1 と指定すれば,24時間以内に更新されたファイルが対象になりますが.
その他の回答 (4)
- a-saitoh
- ベストアンサー率30% (524/1722)
変更があったファイルだけバックアップするのは ufsdumpかGNU tarか,あるいはcpioあたりになります. たとえば, find . -mtime -1 -cpio とか. 厳密に1日ごとにしたい(バックアップが進行中に更新されたファイルが確実に翌日バックアップされる)には,もうちょっと工夫が要りますが.
お礼
再度、書き込みありがとうございます。
補足
cpioは、試したのですが、ただバックアップを取るだけでしたら、問題ありませんでした。やはり、1日毎の差分ファイルの抽出が難しいです。シェルを作成しないと やはり不可能でしょうか。何か良い策がありましたら、知恵をお貸しください。宜しくお願いします。
- syea
- ベストアンサー率50% (6/12)
差分に関しては#1さんのdiffコマンド、指定時間にシェルを起動させるにはcrontabコマンドにてcronを修正すれば出来ます。 それぞれの使用方法はmanコマンドで確認してください。
お礼
ありがとうございます
- a-saitoh
- ベストアンサー率30% (524/1722)
何をしたいのか,もっと明確に書いてください. 「差分ファイル抽出」ってなんですか? 変化があったファイルを探すのか,ファイルを二つ比べて違いを見つけるのか,わかりません. なお,定時処理はcronを使います.詳しくは man cron. 自力で調べるのも給料のうちです.
お礼
ありがとうございます
diffコマンドではだめですか? たとえばaaaa.txt があったとして、1日前のファイルが aaaa.txt.old となっているとします。差分ファイルは、 --- diff aaaa.txt.old aaaa.txt --- で取り出せます。diffはディレクトリ単位でも行えます。 そもそも、どうして差分ファイルが必要なのでしょうか。 履歴管理が必要なのでしたら、CVSなどのバージョン管理システムを使ったほうがいいと思うのですが。
お礼
ありがとうございます
補足
お世話になっております。そもそも、変更のあったファイルだけを抽出してバックアップを取りたいというのが 本来の目的です。分かりずらくてすみませんでした。
お礼
ありがとうございます。これで大丈夫だと思います。 又、機会があれば、宜しくお願いします。