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

Object Storage Service:create-symlink

最終更新日:May 06, 2024

シンボリックリンクはWindowsのショートカットに似ており、Object Storage Service (OSS) 内のオブジェクトにすばやくアクセスできます。 create-symlinkコマンドを実行して、OSS内のオブジェクトを指すシンボリックリンクを作成できます。

使用上の注意

  • シンボリックリンクを作成するには、oss:PutObject権限が必要です。 詳細については、「RAMユーザーへのカスタムポリシーのアタッチ」をご参照ください。

  • このトピックでは、64ビットLinuxシステムで動作するサンプルコマンドラインを提供します。 他のシステムのために、取り替えて下さい./ossutil64対応するバイナリ名を持つコマンドで 詳細は、「ossutilコマンドリファレンス」をご参照ください。

    コマンド構文

    . /ossutil64 create-symlink cloud_url target_object
    [-- encoding-type <value>]
    [-- payer <value>] 

    次の表に、構文のパラメーターとオプションを示します。

    パラメータ /オプション

    説明

    cloud_url

    作成するシンボリックリンクのフルパス。

    target_object

    シンボリックリンクが指すオブジェクトのフルパス。 シンボリックリンクとシンボリックリンクが指すオブジェクトは、同じバケット内にある必要があります。

    -- encoding-type

    cloud_urlおよびtarget_objectで指定されたオブジェクト名のエンコードに使用されるメソッド。 有効値: url このオプションを指定しない場合、名前はエンコードされません。

    -- 支払人

    トラフィックとリクエスト料金の支払人。 指定したパスのリソースにアクセスするリクエスタにトラフィックとリクエスト料金を支払う場合は、このパラメーターをrequesterに設定します。

    create-symlinkコマンドを実行してシンボリックリンクを作成すると、シンボリックリンクが指すオブジェクトが存在するかどうかはチェックされません。 オブジェクトが存在する場合、作成されたシンボリックリンクはオブジェクトを指します。 オブジェクトが存在しない場合、作成されたシンボリックリンクは何も指しません。 シンボリックリンクが指すオブジェクトが存在するかどうかを判断するには、lsコマンドを実行してバケット内のすべてのオブジェクトを照会します。

    次の例は、既存のオブジェクトを指すシンボリックリンクを作成する方法を示しています。

    重要

    作成するシンボリックリンクの名前がバケット内の既存のシンボリックリンクの名前と同じである場合、既存のシンボリックリンクは上書きされます。

    • examplebucketバケットのルートディレクトリにtest.jpgという名前のシンボリックリンクを作成し、バケットのルートディレクトリにあるexampleobject.jpgオブジェクトへのシンボリックリンクをポイントします。

      ./ossutil64 create-symlink oss:// examplebucket/test.jpg oss:// examplebucket/exampleobject.jpg
    • examplebucketバケットのdestfolderディレクトリにexample.jpgという名前のシンボリックリンクを作成し、バケットのルートディレクトリにあるtest.jpgオブジェクトへのシンボリックリンクをポイントします。 コマンドの実行時に発生するすべての料金がリクエスタによって支払われるように指定します。

      ./ossutil64 create-symlink oss:// examplebucket/destfolder/example.jpg oss:// examplebucket/test.jpg -- 支払人リクエスタ
    • 次のサンプル出力は、オブジェクトのシンボリックリンクが作成されていることを示しています。

      0.106744経過

      シンボリックリンクの作成後、read-symlinkまたはstatコマンドを実行して、ETag値や最終更新時刻などのシンボリックリンクに関する情報を照会できます。

    一般的なオプション

    ossutilを使用して別のリージョンにあるバケットに切り替える場合は、コマンドに -eオプションを追加して、指定したバケットがあるリージョンのエンドポイントを指定します。 ossutilを使用して別のAlibaba Cloudアカウントに属するバケットに切り替える場合、コマンドに -iオプションを追加して、指定されたアカウントのAccessKey IDを指定し、コマンドに -kオプションを追加して、指定されたアカウントのAccessKey secretを指定します。

    たとえば、次のコマンドを実行して、中国 (上海) リージョンにあり、別のAlibaba Cloudアカウントが所有するtestbucketバケット内のexampleobject.pngオブジェクトにtestobject.pngという名前のシンボリックリンクを作成できます。

    ./ossutil64 create-symlink oss:// testbucket/testobject.png oss:// testbucket/exampleobject.png -e oss-cn-shanghai.aliyuncs.com -i LTAI4Fw2NbDUCV8zYUzA **** -k 67DLVBkH7EamOjy2W5RVAHUY9H ****

    共通オプションの詳細については、「共通オプション」をご参照ください。