最終更新日: 2025年8月28日
目次
バケット操作
バケットの作成
mb
コマンド(「make bucket」の略)を使用して新しいバケットを作成します。
$ s3cmd mb s3://my-bucket-name
注意
オブジェクトストレージはフラットな名前空間を使用し、ディレクトリを持ちません。オブジェクトのパスでディレクトリのように見えるものは、実際にはオブジェクト名の一部です。グラフィカルインターフェースは、ユーザーにとってより馴染みのあるディレクトリ体験を模倣するために、存在しない各要素に対して空のファイルを作成します。コマンドラインからは、空のファイルを作成する必要はありません。代わりに、ファイルを配置したいパスを put
コマンドの一部として入力します。
バケット一覧の表示
$ s3cmd ls
バケット内のオブジェクト一覧表示
$ s3cmd ls s3://my-bucket-name
バケットの削除
空のバケットを削除するには:
$ s3cmd rb s3://my-bucket-name
バケットとその中身をすべて削除するには:
$ s3cmd rb s3://my-bucket-name --recursive
バケット内ファイルの削除予約
1日経過後にバケット内のファイルを削除するには:
$ s3cmd expire --expiry-days=1 --expiry-prefix= s3://my-bucket-name
オブジェクト操作
ファイルのアップロード
単一ファイルをアップロードするには:
$ s3cmd put local-file.txt s3://my-bucket-name/
ファイルを新しい名前でアップロードするには:
$ s3cmd put local-file.txt s3://my-bucket-name/remote-file.txt
ディレクトリ内のすべてのファイルを再帰的にアップロードするには:
$ s3cmd put local-directory/ s3://my-bucket-name/ --recursive
ファイルのダウンロード
単一ファイルをダウンロードするには:
$ s3cmd get s3://my-bucket-name/remote-file.txt local-file.txt
バケット内のすべてのファイルをダウンロードするには:
$ s3cmd get s3://my-bucket-name/ local-directory/ --recursive
ファイルの削除
単一ファイルを削除するには:
$ s3cmd del s3://my-bucket-name/remote-file.txt
複数のファイルを削除するには:
$ s3cmd del s3://my-bucket-name/ --recursive --force
ファイル情報の表示
ファイルの詳細情報を表示するには:
$ s3cmd info s3://my-bucket-name/remote-file.txt
同期操作
ローカルからバケットへの同期
ローカルディレクトリをバケットに同期するには:
$ s3cmd sync local-directory/ s3://my-bucket-name/
バケットからローカルへの同期
バケットをローカルディレクトリに同期するには:
$ s3cmd sync s3://my-bucket-name/ local-directory/
権限設定
ファイルを公開する
ファイルをHTTPS経由で公開するには:
$ s3cmd setacl s3://my-bucket-name/remote-file.txt --acl-public
メモ
URLは下記となります。
https://{ConoHaのS3エンドポイント}/{テナントID}:{バケット名}/{ファイル名}
ファイルを非公開にする
ファイルを非公開にするには:
$ s3cmd setacl s3://my-bucket-name/remote-file.txt --acl-private
一時的にファイルを公開する
一時的に1時間の間のみファイルをHTTPS経由で公開するには:
$ s3cmd signurl s3://my-bucket-name/remote-file.txt +3600
メモ
URLはコマンド実行後にレスポンスされます。
高度な使用方法
マルチパートアップロード
大きなファイルのマルチパートアップロードのチャンクサイズを変更するには:
$ s3cmd put large-file.zip s3://my-bucket-name/ --multipart-chunk-size-mb=50
進行状況の表示
アップロード/ダウンロードの進行状況を表示するには:
$ s3cmd put large-file.txt s3://my-bucket-name/ --progress
設定ファイルの指定
デフォルト以外の設定ファイルを使用するには:
$ s3cmd ls -c /path/to/custom/config
トラブルシューティング
よくある問題と解決方法
接続エラー
ERROR: S3 error: 403 (AccessDenied)
解決方法: アクセスキーとシークレットキーが正しく設定されているか確認してください。
エンドポイントエラー
ERROR: S3 error: [Errno -2] Name or service not known
解決方法: エンドポイントの設定を確認してください。ConoHaの正しいS3エンドポイントが設定されていることを確認してください。
SSL/TLS エラー
解決方法: 設定ファイルで
use_https = True
が設定されていることを確認してください。ConoHaのS3互換APIはHTTPS接続を推奨します。
デバッグモード
詳細なデバッグ情報を表示するには:
$ s3cmd ls --debug
設定の確認
現在の設定を確認するには:
$ s3cmd --dump-config
ConoHa S3サービスの状態確認
ConoHaのS3互換サービスが正常に動作しているか確認するには:
$ curl -I https://[ConoHaのS3エンドポイント]
外部リンク
項目 | URL |
---|---|
s3cmd | https://s3tools.org/s3cmd |