.png)
背景 私は、サーバーのセットアップに関しては、まだ初心者だと思っています。したがって、この質問に答える際には、できるだけ詳しい回答をお願いします。
環境 私は Raspberry Pi 4 で LEMP サーバーを実行しています。これは、電子メール サーバーとしても Web サーバーとしても完全に機能します。
問題 私はまだ初心者なので、ミスをしがちです。そのため、これまで何度も、あるいは今後も、何を間違って設定したのか、どのように修正したらよいのかを認識せずに(または思い出さずに)誤って何かまたは複数のものを誤って設定してしまうことがあります。そのため、Raspberry Pi (arm) 上の Ubuntu サーバーに適したローカル バックアップ ソリューションを探しています。バックアップ ソリューションに必要な内容の詳細は次のとおりです...
望ましい解決策 このような場合、2つの異なるタイプのバックアップドライブを2つ用意することが最も望ましいようです。自動バックアップソリューション:
増分バックアップ- 最初のバックアップドライブは、理想的にはコマンドラインのみとまったく同じように動作する必要があります。Mac OS の Time Machine唯一の違いは、Mac OSのTime Machineのようにユーザーディレクトリのみではなく、すべてのファイル(ルートディレクトリを含む)の増分バックアップを作成することです。これにより、すべてのサーバーアプリケーション(PHP、Nginx、Postfix、Wordpressなど)と、ルート、/var、/etc、その他の重要なルートユーザーディレクトリの下にインストールされた設定がバックアップされ、復元可能になります。以前の日付に戻す必要があります。もう1つの要件は、バックアップツールが適切な権限を維持し、完全に復元する簡単な方法以前の日付からすべてのファイルをサーバーにアップロードします。
クローンバックアップ- 2台目のドライブには、MacOSのアプリケーションと同様に機能するコマンドラインバックアップソリューションが必要です。ApplePi-ベイカーこれは、Linux ドライブのクローンを作成します。まず、余分なスペースがあるすべてのパーティションを縮小し、次に「.iso」形式のクローンを作成します。このクローンは、USB ドライブに直接 DD し、元のドライブの正確なコピーとして Linux を起動できます。Ubuntu Server では、同様の機能を備えたソリューションが必要です。ただし、実行中のサーバーのドライブをクローンできるソリューションが必要です。理想的には、2 番目のドライブを使用して、元のサーバーの正確なローカル クローン (ISO 形式) を作成します。そうすれば、増分バックアップからの復元以外に何か重大な問題が発生した場合は、ISO イメージを新しいドライブに DD して起動するだけで、簡単に元の状態に戻すことができます。繰り返しますが、これらのクローンの形式は、適切なディスク イメージとして「.ISO」形式にし、各パーティションのすべての余分なスペースを縮小して空き領域をなくし、クローンされた ISO ファイルをできるだけ小さくする必要があります。
質問
- 上記の 2 つの望ましいソリューションを実現するために、cron ジョブとして実行できるツールやコマンドを推奨していただけますか?
- さらに、重大な災害や管理上の誤った構成が発生した場合に、Ubuntu 20.04 LEMP サーバーを完全にバックアップするための他の適切なソリューションをお勧めしますか?
助けやアドバイスをいただければ幸いです。この問題に対する適切な Linux ソリューションを見つけるのに非常に困っています。
答え1
私はRaspberry Piに特化したソリューションを見つけましたが、実行中のUbuntuシステムの完全なISOバックアップを実行するためのbashスクリプトを使用するため、どのOSにも適用できる可能性があります。Raspberry Piの完全なバックアップソリューションが必要な場合は、次の私のチュートリアルに従ってください。https://danran.rocks/2022/09/how-to-make-a-live-backup-of-your-raspberry-pi-ubuntu-raspberry-pi-os-server-to-create-live-bootable-iso-images-on-an-external-drive/
簡単に言うと、https://forums.raspberrypi.com/viewtopic.php?t=332000image-utils.zip
フォーラムからファイルをダウンロードしてください。その中には/usr/local/bin/
、sudo ユーザーの crontab で自動的に実行できる bash スクリプトが含まれています。これらは、Ubuntu 20.04 サーバーで実行中の Raspberry Pi 4 を外部ディスクにバックアップするときに最適に機能します。実行中の Ubuntu システムの完全に起動可能な ISO ファイルを作成し、ハード ディスクに保存します。災害が発生した場合は、etcher を使用して保存した ISO をディスクに書き込み、サーバーを復元した状態で起動できます。
これらは単なるスクリプトなので、Raspberry Pi 以外の (ARM 以外の) デバイスでも問題なく動作すると思います。アーキテクチャは重要ではないと思います。
編集: これらは、Raspberry Pi OS と Ubuntu Server が使用するカスタム ブート パーティションを考慮しているため、Raspberry Pi 以外のデバイスでは動作しない可能性があります。そのパーティションはマスター ブート レコードであり、UEFI と互換性がないため、x86 システムでこれらのスクリプトを使用すると問題が発生する可能性があります。最悪の場合、スクリプトのコードを変更して、ブート パーティションを MBR パーティションではなく EFI パーティションに調整してみてください。