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

Elastic Compute Service:Linux ECS インスタンスのシステムディスクにあるビジネスデータをデータディスクに保存する方法

最終更新日:Dec 19, 2025

Elastic Compute Service (ECS) インスタンスのシステムディスクが、増え続けるビジネスデータによって過負荷状態になっており、特定のディレクトリに保存されているビジネスデータをデータディスクに移行してシステムディスクの負荷を軽減したい場合は、このトピックで説明する操作を実行できます。このトピックでは、特定のディレクトリに保存されているビジネスデータをデータディスクに転送し、その後のビジネスデータをそのディレクトリに書き込む際にデータディスクを使用する方法について説明します。

警告

このトピックの操作にはデータ移行が伴い、業務システムの正常な運用に影響を与える可能性があります。システムディスクのサイズを変更して、ディスクの負荷を軽減することを推奨します。詳細については、「ステップ 1:ディスクのサイズを変更してディスク容量を拡張する」をご参照ください。

前提条件

  • システムディスクの使用率が 100% 未満であること。

    重要

    このトピックの操作は、システムディスクの使用率が 100% 未満の場合にのみ実行できます。ECS インスタンスにログインし、df -h コマンドを実行して、ルートパーティションの使用率が 100% に達しているかどうかを確認してください。ルートパーティションの使用率が 100% に達している場合は、問題をトラブルシューティングする必要があります。詳細については、「Linux インスタンスの「no space left」問題の解決」をご参照ください。

  • システムディスク上のビジネスデータを保存するデータディスクが、以下の要件を満たしていること:

    • データディスクが [使用中] (In_use) 状態であること。

    • データディスクが初期化済みであり、かつディスクのファイルシステムがマウントされていないこと。データディスクの初期化方法については、「Linux インスタンス上のデータディスクの初期化」をご参照ください。

以下の例では、Alibaba Cloud Linux 3.2104 環境で、/userdata ディレクトリに保存されているビジネスデータを /dev/vdb1 パーティションに転送します。実際の操作では、/userdata をビジネスデータを転送したいディレクトリ名に、/dev/vdb1 を転送先のパーティション名またはデバイス名に置き換えてください。

ワークフロー

image

操作手順

ステップ 1:システムディスクデータのバックアップ

誤操作によるデータ損失を防ぐため、システムディスクのスナップショットを作成してディスクデータをバックアップすることを推奨します。詳細については、「手動でのスナップショットの作成」をご参照ください。

説明

スナップショットは有料です。スナップショットの課金の詳細については、「スナップショット」をご参照ください。

ステップ 2:ビジネスデータのデータディスクへのコピー

  1. 次のコマンドを実行して、/temporary という名前のファイルディレクトリを作成し、データディスクパーティションをそのディレクトリにマウントします。/dev/vdb1 を実際のパーティション名に置き換えてください。

    sudo mkdir /temporary
    sudo mount /dev/vdb1 /temporary
  2. /userdata ディレクトリのデータを、データディスクパーティションがマウントされている /temporary ディレクトリにバックアップします。/userdata を、データをバックアップしたい実際のディレクトリ名に置き換えてください。

    sudo cp -rv /userdata/. /temporary

    rsync ツールをインストールしてファイルをコピーし、コピーの進捗状況を確認することもできます。

    sudo yum install -y rsync
    rsync --progress /userdata/* /temporary

ステップ 3:データディスクのマウントポイント設定

  1. ステップ 2 が完了したら、次のコマンドを実行して、/temporary ディレクトリにマウントされているファイルシステムをアンマウントします。

    sudo umount /temporary
  2. 次のコマンドを実行して、/userdata ディレクトリの名前を /userdata_bak に変更します。このディレクトリは、データ移行の例外に備えた短期的なバックアップとして使用します。

    sudo mv /userdata /userdata_bak
    警告

    このステップでは、元のビジネスデータ保存ディレクトリの名前が変更されるため、業務システムでエラーが報告されたり、短期的なデータ損失が発生したりする可能性があります。データ移行が業務に与えるリスクを評価し、オフピーク時にデータ移行操作を実行することを推奨します。

  3. 次のコマンドを実行して、/temporary ディレクトリの名前を /userdata に変更します。/userdata を、ビジネスデータが保存されている実際のディレクトリ名に置き換えてください。

    sudo mv /temporary /userdata
  4. /dev/vdb1 データディスクパーティションを /userdata ディレクトリにマウントします。/dev/vdb1 を実際のパーティション名に、/userdata を実際のディレクトリ名に置き換えてください。

    sudo mount /dev/vdb1 /userdata
  5. df -Th コマンドを実行して、データディスクパーティションがディレクトリにマウントされているかどうかを確認します。次の図は、/dev/vdb1 パーティションが /userdata ディレクトリにマウントされていることを示しています。截屏2025-01-22 10

ステップ 4:業務システムの動作確認

  1. 業務システムを直ちに再起動し、正常に動作するか確認することを推奨します。

    問題が発生した場合は、以下のいずれかのソリューションを使用して業務システムを復元します。

    • ソリューション 1:ステップ 3 と同様の操作を実行します。

      1. /userdata ディレクトリにマウントされているファイルシステムをアンマウントします。

      2. /userdata ディレクトリの名前を /temporary に変更します。

      3. /userdata_bak ディレクトリの名前を /userdata に戻します。

      4. 業務システムを再起動します。

    • ソリューション 2:システムディスクのスナップショットを使用して、スナップショットが作成された時点の状態にディスクをロールバックします。詳細については、「スナップショットを使用したディスクのロールバック」をご参照ください。

  2. 業務システムが正常に動作することを確認した後、/userdata_bak ディレクトリを削除します。