Работа с S3 через s3cmd

Подключение

Получить значения ACCESS_KEY и SECRET_KEY, сохранить их в одноимённых переменных.

Выполнить следующие команды:

set -u
S3HOST=s3.msk-1.ngcloud.ru
echo -e "\n\n\n\n\n\n\n\n\nn\ny\n\n" | s3cmd --configure
sed -e "/^access_key/s/=.*/= $ACCESS_KEY/" ~/.s3cfg -i
sed -e "/^secret_key/s/=.*/= $SECRET_KEY/" ~/.s3cfg -i
sed -e "/^host_base/s/=.*/= $S3HOST/" ~/.s3cfg -i
sed -e "/^host_bucket/s/=.*/= $S3HOST/" ~/.s3cfg -i  
sed -e "/^bucket_location/d" ~/.s3cfg -i    
sed -e "/^use_https/s/=.*/= True/" ~/.s3cfg -i

Создание бакета в хранилище COLD

set -u
BUCKET_NAME=testbucketcold
s3cmd mb s3://$BUCKET_NAME --bucket-location=:COLD

Создание бакета в хранилище HOT

set -u
BUCKET_NAME=testbuckethot
s3cmd mb s3://$BUCKET_NAME

Добавление объекта в бакет с наследованием политики

set -u
BUCKET_NAME=testbucketcold
OBJECT_NAME= #optional
LOCAL_FILE=/home/test.iso
s3cmd put "$LOCAL_FILE" s3://$BUCKET_NAME/$OBJECT_NAME

Остальные операции

s3cmd  --help