すべてのプロダクト
Search
ドキュメントセンター

Elastic Compute Service:Linuxインスタンスでデータを復元する

最終更新日:Aug 29, 2024

ディスクをトラブルシューティングすると、データディスクパーティションが失われる可能性があります。 このトピックでは、Linuxインスタンスでデータディスクパーティションが失われる問題と、その問題を解決する方法について説明します。 このトピックでは、ディスク使用の一般的な間違いと、ディスクを使用するためのベストプラクティスについても説明します。

前提条件

背景情報

Linuxインスタンスでは、次のいずれかのツールを使用して、データディスク上のデータを復元できます。
  • fdisk: Linuxでデフォルトで提供されているディスクのパーティショニング用のツール。
  • testdisk: Linuxでディスクパーティションまたはデータを復元するために使用されるツール。 デフォルトでは、このツールはLinuxでは提供されません。 ご自身でインストールする必要があります。 たとえば、yum install -y testdiskコマンドを実行して、CentOSにtestdiskをインストールできます。
  • partprobe: デフォルトでLinuxで提供されるツール。 このツールは、システムを再起動することなく、カーネルがパーティションを再読み込みできるようにするために使用されます。

変更方法

Linuxインスタンスを再起動すると、データディスクのパーティションとデータが失われる可能性があります。 これは、インスタンスの起動時に /etc/fstabファイルでパーティションが自動的にマウントされるように設定しなかったためです。 この場合、データディスクパーティションを手動でマウントできます。 データディスクパーティションを手動でマウントしたときにパーティションテーブルが失われたことを示すエラーメッセージが表示された場合は、次のいずれかの方法を使用してパーティションまたはデータを復元できます。

fdisk を使用したパーティションの復元

通常、データディスクをパーティション分割する場合、デフォルト値はパーティションの開始セクタと終了セクタに適用されます。 データディスク上のパーティションを復元するには、fdiskコマンドを実行してデータディスク上のパーティションを再作成します。 詳細については、「Linuxインスタンスのサイズが2 TiBを超えないデータディスクの初期化」をご参照ください。 Restore partitions by using fdisk

上記の操作でパーティションを復元できない場合は、testdiskを使用してパーティションを復元できます。

testdisk を使用したパーティションの復元

この例では、ディスクデバイス名 /dev/xvdbが使用されます。 testdiskを使用して /dev/xvdbディスク上のパーティションを復元するには、次の手順を実行します。

  1. testdisk /dev/xvdbコマンドを実行します。 データディスクのデバイス名が異なる場合は、/dev/xvdbをデータディスクの実際のデバイス名に置き換えます。 次に、[続行] (デフォルト値) を選択し、Enterキーを押します。
    Run the testdisk /dev/xvdb command
  2. スキャンするパーティションテーブルの種類を選択します。 通常、デフォルト値Intelが選択されます。 データディスクでGUIDパーティションテーブル (GPT) 形式を使用している場合は、[EFI GPT] を選択します。
    Scan the partition table type for scanning
  3. 分析を選択し、Enterキーを押します。
    Select Analyse
  4. パーティション情報が表示されない場合は、クイック検索を選択してEnterキーを押します。
    Select Quick Search
    次の図に示すように、コマンド出力にパーティション情報が表示されます。 Command output
  5. パーティションを選択してEnterキーを押します。
  6. [書き込み] を選択してパーティションを保存します。
    説明 予想されるパーティションがリストされていない場合は、[Deeper Search] を選択して検索を続行します。
    Select Write
  7. Yキーを押してパーティションを保存します。
    Press the Y key
  8. partprobe /dev/xvdbコマンドを実行して、パーティションテーブルを更新します。 データディスクのデバイス名が異なる場合は、/dev/xvdbをデータディスクの実際のデバイス名に置き換えます。
  9. パーティションを再度マウントし、データディスクのデータを表示します。
    Mount the partition again

testdisk を使用したデータを復元

場合によっては、testdiskを使用してディスクパーティションをスキャンできますが、パーティションを保存できない場合があります。 このような場合は、データを直接復元できます。 以下の手順を実行します。

  1. testdiskを使用してディスクパーティションをスキャンします。 詳細については、このトピックの「testdiskを使用してパーティションを復元する」セクションの手順1から手順4を参照してください。
  2. Pキーを押してファイルを一覧表示します。
    コマンドの出力を次の図に示します。 Press the P key
  3. 復元するファイルを選択し、Cキーを押します。
  4. 宛先ディレクトリを選択します。 この例では、ファイルは /homeディレクトリに復元されます。
    Select the destination directory
    もしコピー完了! 次の図に示すように、1 ok、0 failedが表示され、ファイルがコピーされます。 The file is copied
  5. /homeディレクトリに切り替えて、ファイルが復元されているかどうかを確認します。
    次の図に示すように、ファイルが /homeディレクトリに表示されている場合、ファイルは復元されます。 The file is restored

よくある間違いとベストプラクティス

データはユーザーの中核資産です。 多数のユーザーがWebサイトを構築し、Elastic Compute Service (ECS) インスタンス上に自己管理型MySQL、MongoDB、またはRedisデータベースを作成します。 データ損失はビジネスに大きなリスクを引き起こす可能性があります。 このセクションでは、データセキュリティにおける一般的な間違いとベストプラクティスについて説明します。

  • よくある間違い

    Alibaba Cloudの基盤となるストレージは、3重のテクノロジーに基づいています。 したがって、一部のユーザは、オペレーティングシステムにデータ損失のリスクが存在しないと考える。 これは誤解です。 下層に格納されたデータの3つのコピーは、データディスクの物理層保護を提供します。 ただし、ディスクの使用中にウイルス感染、誤ったデータ削除、ファイルシステムの損傷などのエラーが発生した場合でも、データが失われる可能性があります。 データのセキュリティを確保するには、スナップショットや地理的冗長性などのテクノロジを使用する必要があります。 3つのコピーの詳細については、「Triplicate storage」をご参照ください。

  • ベストプラクティス

    データディスクパーティションの復元とデータ復元は、データ損失に対処するために使用できますが、期待どおりにデータを復元できない場合があります。 ベストプラクティスに従って、データの自動スナップショットまたは手動スナップショットを作成し、さまざまなバックアップ方法を使用してデータのセキュリティを最大化することをお勧めします。

    • 自動スナップショットポリシーの適用

      自動スナップショットポリシーをシステムディスクまたはデータディスクに適用して、ディスクの自動スナップショットを作成できます。 システムディスクが交換された場合、インスタンスの有効期限が切れた場合、またはディスクが手動でリリースされた場合、関連付けられた自動スナップショットがリリースされる可能性があります。

      ディスクの自動スナップショットをディスクとともにリリースする場合は、ECSコンソールの [ディスクのプロパティの変更] ダイアログボックスで [ディスクのリリース中に自動スナップショットを削除] を選択します。 ディスクのリリース時に自動スナップショットを保持する場合は、このオプションをオフにします。

      詳細については、「スナップショットに関するFAQ」および「自動スナップショットポリシーの作成」をご参照ください。

    • 手動スナップショットの作成
      次の操作など、ディスクに対して重要な操作やリスクの高い操作を実行する前に、ディスクのスナップショットを手動で作成します。
      • カーネルを更新します。
      • アプリケーションのアップグレードまたは変更。
      • ディスク上のデータを復元します。

      ディスクを復元する前に、ディスクのスナップショットを作成する必要があります。 スナップショットの作成後、他の操作を実行できます。

    • OSSバックアップ、オフラインバックアップ、および地理的冗長性

      OSSバックアップ、オフラインバックアップ、または地理的冗長性を使用して、重要なデータをバックアップできます。