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

Object Storage Service:sync (ローカルファイルを OSS に同期)

最終更新日:Jun 13, 2026

sync コマンドは、ローカルファイルを OSS に同期します。

注意事項

  • ローカルファイルを OSS に同期するには、oss:PutObject、oss:ListObjects、および oss:DeleteObject 権限が必要です。詳細については、「Resource Access Management (RAM) ユーザーにカスタムアクセスポリシーを付与する」をご参照ください。

  • sync コマンドと cp コマンドの違い

    • sync コマンドを使用してデータを OSS に同期する場合、ossutil は送信先に存在しソースに存在しないファイルを削除する --delete オプションをサポートしており、今回の操作で同期されたファイルのみを保持します。cp コマンドは --delete オプションをサポートしていません。

    • sync コマンドはコピー前にソースと送信先の両方をスキャンします。cp コマンドはソースをスキャンしながら同時にファイルをコピーします。

    • デフォルトでは、sync は最大 200 万件のソースファイルをサポートし、上限は 500 万件です。cp コマンドにはソースファイル数の制限はありません。

  • -u, --update オプションを使用すると、ターゲットファイルの有無にかかわらず、各ファイルに対して少なくとも 1 回の HEAD リクエストが送信され比較が行われます。変更されるファイルが少ないシナリオでは、多くの非効率なリクエストが発生し、パフォーマンスが低下したり、追加のリクエスト課金が発生したりする可能性があります。このオプションを使用する前に、実際のビジネス要件を慎重に評価し、不要なリソース消費を回避してください。

コマンド構文

ossutil sync file_url cloud_url

パラメーター

タイプ

説明

file_url

string

同期するローカルフォルダのパス。例:Linux システムパス /localfolder/、Windows システムパス D:\localfolder\

cloud_url

string

OSS フォルダパス。形式:oss://bucketname/path/。例:oss://examplebucket/exampledir/。指定された cloud_url がスラッシュ (/) で終わっていない場合、ossutil は自動的にスラッシュを追加します。

--acl

string

オブジェクトのアクセス権限。有効値:

  • private:非公開。

  • public-read:公開読み取り。

  • public-read-write:公開読み書き。

  • default:バケットから継承。

--backup-dir

string

バックアップファイル用ディレクトリ。

--bigfile-threshold

int

大規模ファイルのマルチパートアップロード、ダウンロード、またはコピーを有効にするしきい値(デフォルト値:104857600)。

--cache-control

string

Web ブラウザーによるオブジェクトのダウンロード時のキャッシュ動作を指定します。

--checkpoint-dir

string

再開可能な転送のチェックポイントデータ用ディレクトリ(デフォルト値:.ossutil_checkpoint/)。

--checksum

/

サイズまたはチェックサム(利用可能な場合)が送信先と異なるソースファイルのみをコピーします。オブジェクト間コピー操作でのみ適用されます。

--content-disposition

string

オブジェクトの表示方法を指定します。

--content-encoding

string

オブジェクトのエンコーディング方式を宣言します。

--content-type

string

オブジェクトのコンテンツタイプ。

--copy-props

string

ソースオブジェクトからコピーするプロパティを決定します。有効値:

  • none

  • metadata

  • default

--delete

/

送信先に存在しソースに存在しないファイルを削除します。

-d, --dirs

/

サブディレクトリ内のすべてのファイルを再帰的にリストすることなく、現在のディレクトリ内のファイルとサブディレクトリをリストします。

--encoding-type

string

入力オブジェクト名またはファイル名のエンコーディング方式。有効値:url。

--end-with

string

アルファベット順で指定値以前または一致するオブジェクトを返します。

--exclude

stringArray

パスまたはファイル名に対する除外ルール。

--exclude-from

stringArray

ルールファイルから除外ルールを読み込みます。

--expires

string

キャッシュされたコンテンツの絶対有効期限を指定します。

--files-from

stringArray

ファイルからソースファイル名のリストを読み込み、空行またはコメント行を無視します。

--files-from-raw

stringArray

ファイルからソースファイル名のリストを読み込みます。

--filter

stringArray

パスまたはファイル名に対するフィルタリングルール。

--filter-from

stringArray

ルールファイルからフィルタリングルールを読み込みます。

-f, --force

/

確認のプロンプトを表示せずに強制的に操作を実行します。

--include

stringArray

パスまたはファイル名に対する包含ルール。

--include-from

stringArray

ルールファイルから包含ルールを読み込みます。

-j, --job

int

複数ファイル操作時の同時タスク数(デフォルト値:3)。

--list-objects

/

ListObjects API を使用してオブジェクトをリストします。

--min-age

Duration

指定された時間間隔より前に変更されたファイルのみを転送します。デフォルト単位は秒です。h(時間)などの接尾辞を使用できます。例:1h は 1 時間を意味します。

説明

--min-age 1h は、1 時間以上前に変更されたファイルのみを転送します。

--max-age

Duration

指定された時間間隔以内に変更されたファイルのみを転送します。デフォルト単位は秒です。h(時間)などの接尾辞を使用できます。例:1h は 1 時間を意味します。

説明

--max-age 1h は、過去 1 時間以内に変更されたファイルのみを転送します。

--min-mtime

Time

指定時刻以降に変更されたファイルのみを転送します。時刻形式:協定世界時 (UTC)。例:2006-01-02T15:04:05。

説明

--min-mtime "2006-01-02T15:04:05" は、2006 年 1 月 2 日 15:04:05 以降に変更されたファイルのみを転送します。

--max-mtime

Time

指定時刻以前に変更されたファイルのみを転送します。時刻形式:協定世界時 (UTC)。例:2006-01-02T15:04:05。

--max-size

SizeSuffix

転送するファイルの最大サイズを制限します。デフォルト単位はバイトです。接尾辞 B|K|M|G|T|P を使用できます(1K (KiB) = 1024B)。

--max-sync-num

int

同期するファイルまたはオブジェクトの最大数(デフォルト値:2000000)。最大許容値:5000000。

--metadata

strings

key=value 形式でオブジェクトのユーザー定義メタデータを指定します。

--metadata-directive

string

送信先オブジェクトのメタデータ設定方法を指定します。有効値:

  • COPY

  • REPLACE

--metadata-exclude

stringArray

オブジェクトのメタデータに対する除外ルール。

--metadata-filter

stringArray

オブジェクトのメタデータに対するフィルタリングルール。

--metadata-filter-from

stringArray

ルールファイルからオブジェクトのメタデータフィルタリングルールを読み込みます。

--metadata-include

stringArray

オブジェクトのメタデータに対する包含ルール。

--min-size

SizeSuffix

転送するファイルの最小サイズを制限します。デフォルト単位はバイトです。接尾辞 B|K|M|G|T|P を使用できます(1K (KiB) = 1024B)。

--no-progress

/

進行状況バーを表示しません。

--page-size

int

バッチ操作中に 1 ページあたりにリストされるオブジェクトの最大数(デフォルト値:1000)。有効範囲:1 ~ 1000。

--parallel

int

単一ファイルに対する内部操作の同時タスク数。

--part-size

SizeSuffix

マルチパート操作時のパーツサイズ。デフォルトでは、ossutil がファイルサイズに基づいて適切なパーツサイズを計算します。有効範囲:100 KiB ~ 5 GiB。

-r, --recursive

/

再帰的に操作を実行します。このオプションを指定すると、コマンドはバケット内のすべての一致するオブジェクトに対して操作を行います。指定しない場合は、指定パスにあるオブジェクトに対してのみ操作を行います。

--request-payer

string

リクエストの支払い方法。バケットがリクエスト元支払いモードを使用している場合にこのパラメーターを設定します。有効値:requester。

--size-only

/

サイズが送信先と異なるソースファイルのみをコピーします。

--start-after

string

アルファベット順で指定値より後(指定値を含まない)のオブジェクトを返します。

--storage-class

string

オブジェクトのストレージクラス。有効値:

  • Standard:標準ストレージ。

  • IA:低頻度アクセス (IA) ストレージクラス。

  • Archive:アーカイブストレージ。

  • ColdArchive:コールドアーカイブストレージ。

  • DeepColdArchive:ディープコールドアーカイブストレージ。

--tagging

strings

key=value 形式でオブジェクトのタグを指定します。

--tagging-directive

string

送信先オブジェクトのタグ設定方法を指定します。有効値:

  • COPY

  • REPLACE

-u, --update

/

送信先にすでに存在し、かつソースファイルよりも新しい更新時刻を持つファイルをスキップします。

説明

送信先にすでにファイルが存在していても、その更新時刻がソースファイルよりも古い場合は、ファイルが更新されます。

--ignore-existing

/

送信先にすでに存在するファイルをスキップします。

説明

ossutil 2.3.0 以降では、--job--parallel--bigfile-threshold--part-size、および --write-buffer-size オプションを設定ファイルを通じて構成できます。設定ファイル内の対応するプロファイルセクションに key=value 形式で追記する(例:job=10)か、ossutil config set を使用して書き込むことができます。コマンドラインオプションは設定ファイルの設定よりも優先されます。

説明

詳細については、「コマンドラインオプション」をご参照ください。

使用例

  • ローカルの localfolder フォルダを OSS に同期します。

    ossutil sync D:/localfolder/ oss://examplebucket/destfolder/
  • ローカルの localfolder フォルダから .txt ファイルを OSS に同期します。

    ossutil sync D:/localfolder/ oss://examplebucket/destfolder/ --include "*.txt"
  • ローカルの localfolder フォルダから .txt ファイル以外を OSS に同期します。

    ossutil sync D:/localfolder/ oss://examplebucket/destfolder/ --exclude "*.txt"
  • ローカルフォルダを OSS に同期し、OSS の宛先パスにローカルに存在しないファイルを削除します。

    --delete オプションを追加して、送信先に存在しソースに存在しないファイルを削除し、今回の操作で同期されたファイルのみを保持します。

    ossutil sync D:/localfolder/ oss://examplebucket/destfolder/ --delete