LinuCレベル2 システムの保守と運用管理 問36
システムの保守と運用管理/バックアップとリストアGNU tarで/dataの完全バックアップを取り、次回以降はそれ以降に追加・変更されたファイルだけを別のアーカイブへ保存する増分バックアップを行いたい。適切な指定はどれか。
当サイトのオリジナル問題(LinuCレベル2の出題範囲「システムの保守と運用管理」に対応。実際の試験問題ではありません)
- Atar --update --verbose -f full.tar /data
- Btar --compare --verbose -f full.tar /data
- Ctar --append --verbose -f full.tar /data
- Dtar -cvf level1.tar -g data.snar /data
正解:D
解説
GNU tarの-g(--listed-incremental)は、指定したスナップショットファイルにファイルの状態を記録し、次回はそこからの変更分だけをアーカイブする増分バックアップの機能です。スナップショットファイルが無い状態で実行すると完全バックアップ(レベル0)になり、同じファイルを指定して再び実行すると、それ以降の変更分だけが新しいアーカイブに入ります。リストア時は、完全バックアップから順にすべての増分を、tar -xf level0.tar -g /dev/null のように-gを付けて展開します(-gを付けると、バックアップ時に存在しなかったファイルも削除されて元の状態に戻ります)。
選択肢ごとの解説
- A誤り。--update(-u)は、既存のアーカイブ内のものより新しいファイルを同じアーカイブの末尾へ追加するもので、別のアーカイブに増分を分けるものではありません。
- B誤り。--compare(-d、--diffとも書く)は、アーカイブの内容とファイルシステムの違いを比較して表示するものです。
- C誤り。--append(-r)は、指定したファイルを既存のアーカイブの末尾へ追加するもので、変更の有無は判定しません。
- D正しい。-gでスナップショットファイルを指定すると、前回からの変更分だけをアーカイブできます。