自分のサーバー上の別のLinuxサーバーから生成されたbackup.tgz
ファイルから復元するにはどうすればよいですか?次のコマンドを試してみました。
tar xvpfz backup.tgz -C /
上記のコマンドは機能しましたが、既存のシステムファイルを置き換えたため、私のLinuxサーバーが正しく機能しなくなりました。
問題が発生することなく復元するにはどうすればよいですか?
--skip-old-files
コマンドを使用して、既存のファイルを上書きしないようにtar
に指示できます。
2つのサーバー間でソフトウェアのバージョンが異なる場合でも、バックアップファイルで問題が発生する可能性があります。一部のデータファイル構造の変更が発生し、動作が停止する場合があります。
より洗練されたバックアッププロセスを開発する必要があります。
特に指定がない限り、tarユーティリティは現在のディレクトリ内の元のツリーにファイルを抽出するため、たとえば/ home/antonio/recoveryにいて、コマンドを発行します
tar xvpfz backup.tgz
ファイルは/home/antonio/recovery...
に復元されます
-Cオプションを使用する場合、これはtarにディレクトリを変更し、そこにルート化されたツリーにファイルを抽出するように指示します。
tar xvpfz backup.tgz -C /tmp
tarに/ tmpに変更し、ファイルを/tmp/...
に抽出するように指示します。
ヒント:ファイルやディレクトリだけを復元するのではなく、.
次のコマンドを使用して、バックアップの内容を表示します。
tar -tzf backup.tgz | grep toys.db(またはあなたが探しているもの)
そして、次のようなものを返すと仮定します:./ home/myname/play/toys.db
復元するには、次のようにします。tar-xvpzf backup.tgz -C/tmp ./home/myname/play/toys.db