×

Использование консольного клиента для s3

 
MinIO Client
Выполнение операций с хранилищами, ключами и бакетами можно выполнять только в Панели Управления S3 хранилище На локальном клиенте можно выполнять операции с файлами в бакетах: загружать файлы в бакет, удалять файлы в бакете и т.д.
 
Ниже рассмотрим выполнение операций с использованием MinIO Client.  Это  инструмент командной строки, который предоставляет современную альтернативу командам UNIX, таким как ls, cat, cp, mirror и diff, с поддержкой как файловых систем, так и облачных сервисов хранения данных, совместимых с Amazon S3. Официальная документация https://min.io/docs/minio/linux/reference/minio-mc.html Загрузить MiniOI Client для Windows можно по ссылке https://dl.min.io/client/mc/release/windows-amd64/mc.exe
 
ПРЕДВАРИТЕЛЬНЫЕ УСЛОВИЯ
 
Сначала необходимо создать в Панели Управления S3 хранилище, ключи доступа и бакет. В примере будем использовать следующие значения.
URL https://storage.cloupard.uz
 
ACCESS_KEY 9BRRTA3A30ZH********
 
SECRET_KEY pKcRmZEXsKW6ltauf7v1o06CMN0ym+mv********
 
Команда mc alias используется для управления алиасами (псевдонимами), которые позволяют удобно подключать и управлять несколькими хранилищами. Позволяет создавать, просматривать, редактировать и удалять алиасы — короткие имена для конфигурации подключений к различным хранилищам. Это упрощает работу с несколькими серверами или бакетами, избавляя от необходимости постоянно вводить длинные URL или параметры подключения.
 
ОСНОВНЫЕ ОПЕРАЦИИ С АЛИАСАМИ
 
1. Создание нового алиаса.
mc alias set <имя_алиаса> <URL> [access-key] [secret-key]
Пример:
>mc alias set s3test https://storage.cloupard.uz 9BRRTA3A30ZHZ******** pKcRmZEXsKW6ltauf7v1o06CMNym+mv********
 
<имя_алиаса>— произвольное имя для подключения;
<URL>— адрес сервера;
access-key и secret-key — учетные данные: ключ доступа и секретный ключ хранилища.
 
2. Просмотр существующих алиасов.
Команда просмотра существующих алиасов:
mc alias list
Это покажет список всех сохраненных алиасов с их URL и учетными данными.
Пример:
1 >mc alias list
2 s3test
3 URL       : https://storage.cloupard.uz
4 AccessKey : 9BRRTA3A30ZH********
5 SecretKey : pKcRmZEXsKW6ltauf7v1o06CMN0ym+mv********
6 API       : s3v4
7 Path      : auto
8 Src       : C:\Users\playl\mc\config.json
 
3. Удаление алиаса.
Команда удаления алиаса:
mc alias remove <имя_алиаса>
Removed `s3cloudsy` successfully.
 
Удаляет указанный алиас из конфигурации.
>mc alias remove s3test
Removed `s3test` successfully.
 
4. Обновление алиаса.
Команда для изменения параметров алиаса.
>mc alias set <имя_алиаса> <New URL> [new access-key] [new secret-key]
Пример:
>mc alias set myminio https://storage.cloupard.uz NR8NVORE4X9O******** PjY+bVBteHML+5t3qb0dNKtlbcTBAmjx********
 
ОСНОВНЫЕ КОМАНДЫ ДЛЯ РАБОТЫ С ФАЙЛАМИ
 
1. Загрузка файлов.
Загрузка файла в бакет.
mc cp <локальный_путь_к_файлу> <алиас>/<имя_бакета>/<путь_в_бакете>
 
Примеры:
Загрузка файла в каталог:
>mc cp C:\Documents\file.txt s3test/bucket/folder/
 
Загрузка файла в корень бакета:
>mc cp C:\Documents\file.txt s3test/bucket/
 
Загрузка папки (рекурсивно):
>mc cp --recursive C:\Documents s3test/bucket/
 
2. Список файлов.
Просмотр файлов в бакете.
mc ls <алиас>/<имя_бакета>/<путь_в_бакете>
 
Примеры:
Просмотре содержимого бакета:
>mc ls s3test/bucket
 
Просмотр содержимого каталога:
>mc ls s3test/bucket/folder
 
3. Метадата объекта.
Просмотр метадаты объектов.
mc stat <объект>
 
Примеры:
Информация об объекте хранилище:
>mc stat s3test
Name      : bucket/
Type      : folder
 
Name      : bucket2/
Type      : folder
 
Информация об объекте бакет:
>mc stat s3test/bucket
Name      : bucket
Date      : 2025-07-01 14:13:29 +04
Size      : N/A
Type      : folder
 
Properties:
  Versioning: Un-versioned
  Location: us-east-1
  Anonymous: Enabled
  ILM: Disabled
 
Usage:
      Total size: 0 B
   Objects count: 0
  Versions count: 0
 
Информация об объекта в корне бакета:
>mc stat s3test/bucket/
Name      : file.txt
Date      : 2025-07-01 14:03:58 +04
Size      : 3 B
ETag      : 202cb962ac59075b964b07152d234b70
Type      : file
Metadata  :
  Content-Type: text/plain
 
Name      : folder/
Date      : 2025-07-01 14:13:44 +04
Type      : folder
 
Информация о файле:
>mc stat s3test/bucket/file.txt
Name      : file.txt
Date      : 2025-07-01 14:03:58 +04
Size      : 3 B
ETag      : 202cb962ac59075b964b07152d234b70
Type      : file
Metadata  :
  Content-Type: text/plain
 
4. Синхронизация объектов из между бакетами в хранилище.
Синхронизировать объекты в бакетах или каталогах:
mc mirror <алиас>/<имя_бакета_источника>/<путь_в_бакете> <алиас>/<имя_бакета_назначения>/<путь_в_бакете>
 
Примеры:
Синхронизировать объекты в bucket с объектами в bucket2 (если синхронизируемый объект уже есть в каталоге назначения, то объект не будет перезаписан):
>mc mirror s3test/bucket s3test/bucket2
 
Синхронизировать объекты в bucket с объектами в bucket2 (если синхронизируемый объект уже есть в каталоге назначения, то объект будет перезаписан):
>mc mirror s3test/bucket s3test/bucket2 --owerride
 
Если в каталоге назначения есть объект, которого нет в каталоге источнике, такой объект будет удалён:
>mc mirror s3test/bucket s3test/bucket2 --remove
 
5. Удаление файлов.
Команда удаляет объекты в бакете.
>mc rm <алиас>/<имя_бакета>/<объект>
 
Примеры:
Удалить файл:
>mc rm s3test/bucket/folder/file.txt
 
Удалить каталог со всем содержимым:
>mc rm --recursive s3test/bucket/folder
 
Удалить всё содержимое бакета:
>mc rm --recursive s3test/bucket