3.3.4 ファイルのクローニング

Exascaleクローンは、ファイルのシンプロビジョニングされたポイントインタイム・コピーで、読取り/書込み可能です。クローンのソース・ファイルは、通常ファイル、スナップショット、別のクローンのいずれかです。Exascaleでは、リダイレクト・オンライト手法を使用して、非常に迅速かつ領域効率よくクローンを作成および保守します。

ファイルまたはファイル・グループをクローニングするには、ESCLI clonefileコマンドを使用します。

同じ操作で作成されるすべてのクローンはポイントインタイム一貫性があり、クローン操作におけるすべてのファイルは同じボールト内にある必要があります。

  • 単一のファイルをクローニングするには、clonefileコマンドを使用して、ソース・ファイルとクローンの宛先を指定します。次に例を示します:
    @> clonefile @my-vault-name/my-file-name @my-vault-name/my-clone-file

    前述の例では、クローン(@my-vault-name/my-clone-file)は元のファイル(@my-vault-name/my-file-name)と同じ場所に作成されます。次の例では、クローンは@my-vault-name/clonesの下に作成されます。

    @> clonefile @my-vault-name/my-file-name @my-vault-name/clones/my-other-clone-file
  • ファイル・グループをクローニングするには、clonefileコマンドを使用して、ワイルドカード文字(*)を含めてソース・ファイルとクローンの宛先を指定します。次に例を示します:
    @> clonefile @my-vault-name/my-files* @my-vault-name/my-clone-files*

    前述の例では、クローンは元のファイルと同じ場所に作成されます。次の例では、クローンは別の場所に作成されます。

    @> clonefile @my-vault-name/my-files* @my-vault-name/more-clones/more-clone-files*
  • 複数のファイルまたはファイル・グループをクローニングするには、clonefileコマンドを使用して、複数のソースと宛先のペアを指定します。次に例を示します:
    @> clonefile @my-vault-name/file1 @my-vault-name/file1-clone @my-vault-name/my-files* @my-vault-name/my-clone-files*

    前述の例では、個々のファイル(@my-vault-name/file1)とファイル・グループ(@my-vault-name/my-files*)が同じ操作でクローニングされ、クローン(@my-vault-name/file1-cloneおよび@my-vault-name/my-clone-files*)は元のファイルと同じ場所に作成されます。

    次の例では、クローンは複数の異なる場所に作成されます。

    @> clonefile @my-vault-name/file1 @my-vault-name/location1/file1-clone @my-vault-name/my-files* @my-vault-name/location2/my-clone-files*

    複数のソースと宛先のペアを指定すると、ソース・ファイルの指定は順番に考慮され、最初の一致のみが使用されます。

    たとえば、次のコマンドでは、@my-vault-name/a*に一致するファイルのクローンは@my-vault-name/clone/aの下に作成され、他のファイルのクローンは@my-vault-name/clone/otherの下に作成されます。

    @> clonefile @my-vault-name/a* @my-vault-name/clone/a/a* @my-vault-name/* @my-vault-name/clone/other/*

    ただし、次のコマンドでは、すべてのファイルが@my-vault-name/*と一致するため、クローンはすべて@my-vault-name/clone/otherの下に作成されます。したがって、この場合、2番目の引数のペアは使用されません。

    @> clonefile @my-vault-name/* @my-vault-name/clone/other/* @my-vault-name/a* @my-vault-name/clone/a/a*
  • 他のファイルを除外しながらファイルをクローニングするには、次の除外方法のいずれかを指定してclonefileコマンドを使用します:
    • --excludeオプションを使用すると、クローン操作から除外されるファイルを指定できます。

      たとえば、次のコマンドでは、@my-vault-name/a*または@my-vault-name/b*に一致するファイルを除き、@my-vault-name内のファイルをクローニングします:

      @> clonefile @my-vault-name/* @my-vault-name/clone/* --exclude @my-vault-name/a* --exclude @my-vault-name/b*
    • クローンの宛先値としてNULL (空の)文字列を指定すると、対応するソース・ファイルに対してクローンは作成されません。NULLの宛先および対応するソースは、他のすべてのソースと宛先のペアとともに順番に考慮され、最初の一致のみが使用されます。

      たとえば、次のコマンドでも、@my-vault-name/a*または@my-vault-name/b*に一致するファイルを除き、@my-vault-name内のファイルをクローニングします

      @> clonefile @my-vault-name/a* "" @my-vault-name/b* "" @my-vault-name/* @my-vault-name/clone/*
作成後、クローンは、他のファイルに使用されているのと同じコマンドおよび手順を使用して管理されます。たとえば、クローンを削除するには、rmfileコマンドを使用する必要があります。