Yandex Cloud
Поиск
Связаться с намиПопробовать бесплатно
  • Истории успеха
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
  • Marketplace
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Искусственный интеллект
    • Безопасность
    • Инструменты DevOps
    • Бессерверные вычисления
    • Управление ресурсами
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Калькулятор цен
    • Тарифы
    • Акции и free tier
  • Истории успеха
  • Документация
  • Блог
Проект Яндекса
© 2026 ООО «Яндекс.Облако»
Практические руководства
    • Все руководства
      • Обзор
      • Резервное копирование в Object Storage с помощью aws s3 sync
      • Резервное копирование в Object Storage с помощью rclone
      • Резервное копирование в Object Storage с помощью GeeseFS
      • Резервное копирование в Object Storage с помощью MSP360 Backup (CloudBerry Desktop Backup)
      • Резервное копирование в Object Storage с помощью Duplicati
      • Резервное копирование в Object Storage с помощью Bacula
      • Резервное копирование в Object Storage с помощью Veritas Backup Exec
      • Резервное копирование в Object Storage с помощью Veeam Backup
      • Резервное копирование ВМ с помощью Хайстекс Акура
      • Резервное копирование кластера Managed Service for Kubernetes в Object Storage
    • Миграция в Yandex Cloud с помощью Хайстекс Акура
    • Защита от сбоев с помощью Хайстекс Акура
    • Настройка SFTP-сервера на Centos 7
    • Развертывание параллельной файловой системы GlusterFS в высокодоступном режиме
    • Развертывание параллельной файловой системы GlusterFS в высокопроизводительном режиме
    • Репликация логов в Object Storage с помощью Data Streams
    • Репликация логов в Object Storage с помощью Fluent Bit
    • Использование Object Storage в Yandex Data Processing
    • Подключить сервер BareMetal к Cloud Backup

В этой статье:

  • Перед началом работы
  • Необходимые платные ресурсы
  • Создайте бакет
  • Создайте сервисный аккаунт
  • Создайте статический ключ доступа
  • Установите AWS CLI
  • Синхронизируйте локальный каталог с бакетом
  • Ручная синхронизация
  • Автоматическая синхронизация
  • Как удалить созданные ресурсы
  1. Хранение и восстановление данных
  2. Резервное копирование в Object Storage
  3. Резервное копирование в Object Storage с помощью aws s3 sync

Резервное копирование в Yandex Object Storage с помощью AWS S3 Sync

Статья создана
Yandex Cloud
Улучшена
mmerihsesh
Обновлена 29 декабря 2025 г.
  • Перед началом работы
    • Необходимые платные ресурсы
  • Создайте бакет
  • Создайте сервисный аккаунт
  • Создайте статический ключ доступа
  • Установите AWS CLI
  • Синхронизируйте локальный каталог с бакетом
    • Ручная синхронизация
    • Автоматическая синхронизация
  • Как удалить созданные ресурсы

В этом практическом руководстве вы настроите резервное копирование файлов из локальной системы в облачное хранилище Yandex Object Storage с помощью AWS S3 Sync.

AWS S3 Sync — стандартная команда AWS CLI для синхронизации содержимого между локальным каталогом и бакетом. Это простой и надежный способ резервного копирования файлов в облачное объектное хранилище с поддержкой протокола S3.

Особенности использования AWS S3 Sync:

  • Не требуется дополнительное программное обеспечение, кроме AWS CLI.
  • Поддерживается на Linux, Windows и macOS.
  • Простая настройка, работа напрямую с S3 API.
  • Легкая автоматизация с помощью планировщика задач или скриптов.

Чтобы настроить резервное копирование с помощью AWS S3 Sync:

  1. Подготовьте облако к работе.
  2. Создайте бакет.
  3. Создайте сервисный аккаунт.
  4. Создайте статический ключ доступа.
  5. Установите AWS CLI.
  6. Синхронизируйте локальный каталог с бакетом.

Если созданные ресурсы вам больше не нужны, удалите их.

Перед началом работыПеред началом работы

Зарегистрируйтесь в Yandex Cloud и создайте платежный аккаунт:

  1. Перейдите в консоль управления, затем войдите в Yandex Cloud или зарегистрируйтесь.
  2. На странице Yandex Cloud Billing убедитесь, что у вас подключен платежный аккаунт, и он находится в статусе ACTIVE или TRIAL_ACTIVE. Если платежного аккаунта нет, создайте его и привяжите к нему облако.

Если у вас есть активный платежный аккаунт, вы можете создать или выбрать каталог, в котором будет работать ваша инфраструктура, на странице облака.

Подробнее об облаках и каталогах.

Необходимые платные ресурсыНеобходимые платные ресурсы

В стоимость поддержки бакета входит плата за хранение данных в бакете и операции с ними (см. тарифы Yandex Object Storage).

Создайте бакетСоздайте бакет

Примечание

Чтобы защитить резервные копии от случайного удаления файлов, включите версионирование S3-бакета. В этом случае удаленные или перезаписанные файлы будут сохраняться в виде предыдущих версий, которые можно восстановить при необходимости. Подробнее о версионировании S3-бакетов можно прочитать в документации.

Без версионирования восстановить удаленные из S3 файлы невозможно, даже если они раньше копировались.

Консоль управления
AWS CLI
API
  1. В консоли управления перейдите в нужный каталог.
  2. Выберите сервис Object Storage.
  3. Нажмите Создать бакет.
  4. Укажите имя бакета в соответствии с правилами именования.
  5. В полях Чтение объектов, Чтение списка объектов и Чтение настроек выберите С авторизацией.
  6. Нажмите Создать бакет.
  1. Если у вас еще нет AWS CLI, установите и сконфигурируйте его.

  2. Создайте бакет, указав имя бакета в соответствии с правилами именования:

    aws --endpoint-url=https://storage.yandexcloud.net \
      s3 mb s3://<имя_бакета>
    

    Результат:

    make_bucket: backup-bucket
    

Воспользуйтесь методом REST API create для ресурса Bucket, вызовом gRPC API BucketService/Create или методом S3 API create.

Создайте сервисный аккаунтСоздайте сервисный аккаунт

Создайте сервисный аккаунт, от имени которого будет выполняться резервное копирование.

Консоль управления
CLI
API
  1. В консоли управления выберите сервис Identity and Access Management.
  2. Нажмите Создать сервисный аккаунт.
  3. В поле Имя укажите sa-backup-to-s3.
  4. Нажмите Добавить роль и выберите роль storage.editor.
  5. Нажмите Создать.

Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.

По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name или --folder-id.

  1. Создайте сервисный аккаунт:

    yc iam service-account create --name sa-backup-to-s3 \
      --folder-name <имя_каталога>
    

    Результат:

    id: ajeab0cnib1p********
    folder_id: b0g12ga82bcv********
    created_at: "2025-10-03T09:44:35.989446Z"
    name: sa-backup-to-s3
    
  2. Назначьте сервисному аккаунту роль storage.editor на каталог:

    yc resource-manager folder add-access-binding <имя_каталога> \
      --service-account-name sa-backup-to-s3 \
      --role storage.editor \
      --folder-name <имя_каталога>
    

    Результат:

    effective_deltas:
      - action: ADD
        access_binding:
          role_id: storage.editor
          subject:
            id: ajeab0cnib1p********
            type: serviceAccount
    
  1. Создайте сервисный аккаунт sa-backup-to-s3. Для этого воспользуйтесь методом REST API create для ресурса ServiceAccount или вызовом gRPC API ServiceAccountService/Create.
  2. Назначьте сервисному аккаунту в текущем каталоге роль storage.editor. Для этого воспользуйтесь методом REST API setAccessBindings для ресурса Folder или вызовом gRPC API FolderService/SetAccessBindings.

Примечание

Чтобы работать с объектами в зашифрованном бакете, у пользователя или сервисного аккаунта вместе с ролью storage.configurer должны быть следующие роли на ключ шифрования:

  • kms.keys.encrypter — для чтения ключа, шифрования и загрузки объектов;
  • kms.keys.decrypter — для чтения ключа, расшифровки и скачивания объектов;
  • kms.keys.encrypterDecrypter — включает разрешения, предоставляемые ролями kms.keys.encrypter и kms.keys.decrypter.

Подробнее см. Сервисные роли Yandex Key Management Service.

Создайте статический ключ доступаСоздайте статический ключ доступа

Консоль управления
CLI
API
  1. В консоли управления выберите сервис Identity and Access Management.

  2. На панели слева выберите Сервисные аккаунты.

  3. Выберите сервисный аккаунт sa-backup-to-s3.

  4. На панели сверху нажмите Создать новый ключ и выберите Создать статический ключ доступа.

  5. Задайте описание ключа и нажмите Создать.

  6. Сохраните полученные идентификатор и секретный ключ — они понадобятся позднее при монтировании бакета.

    Внимание

    После закрытия диалога значение ключа будет недоступно.

  1. Выполните команду:

    yc iam access-key create \
      --service-account-name sa-backup-to-s3
    

    Где --service-account-name — имя сервисного аккаунта, для которого создается ключ.

    Результат:

    access_key:
      id: aje726ab18go********
      service_account_id: ajecikmc374i********
      created_at: "2024-11-28T14:16:44.936656476Z"
      key_id: YCAJEOmgIxyYa54LY********
    secret: YCMiEYFqczmjJQ2XCHMOenrp1s1-yva1********
    
  2. Сохраните идентификатор (key_id) и секретный ключ (secret) — они понадобятся позднее при монтировании бакета.

Чтобы создать ключ доступа, воспользуйтесь методом REST API create для ресурса AccessKey или вызовом gRPC API AccessKeyService/Create.

Сохраните идентификатор (key_id) и секретный ключ (secret) — они понадобятся позднее при монтировании бакета.

Установите AWS CLIУстановите AWS CLI

Если у вас еще нет интерфейса командной строки AWS CLI, установите и сконфигурируйте его.

Синхронизируйте локальный каталог с бакетомСинхронизируйте локальный каталог с бакетом

Чтобы завершить настройку резервного копирования, настройте ручную или автоматическую синхронизацию локального каталога с бакетом.

Ручная синхронизацияРучная синхронизация

Linux
Windows

Для разовой синхронизации выполните команду:

aws s3 sync <путь_к_локальному_каталогу> s3://<имя_бакета> \
--endpoint-url=https://storage.yandexcloud.net \
--delete

Где:

  • --endpoint-url — эндпоинт Object Storage.
  • --delete — флаг для удаления файлов из бакета при их удалении из локального каталога.

Данная команда копирует все содержимое из локального каталога в S3-бакет, при этом перенося только новые и измененные файлы.

Для разовой синхронизации выполните команду:

aws s3 sync <путь_к_локальному_каталогу> s3://<имя_бакета> \
--endpoint-url=https://storage.yandexcloud.net \
--delete

Где:

  • --endpoint-url — эндпоинт Object Storage.
  • --delete — флаг для удаления файлов из бакета при их удалении из локального каталога.

Данная команда копирует все содержимое из локального каталога в S3-бакет, при этом перенося только новые и измененные файлы.

Совет

Чтобы каждый раз не запускать команду, можно создать BAT-файл:

  1. Откройте Блокнот (Notepad) и добавьте следующее содержимое:

    @echo off
    aws s3 sync "<путь_к_локальному_каталогу>" s3://<имя_бакета> ^
      --endpoint-url=https://storage.yandexcloud.net ^
      --delete
    

    Где --delete — флаг для удаления файлов из бакета при их удалении из локального каталога.

  2. Сохраните файл, например, как sync_to_s3.bat.

  3. Чтобы синхронизировать каталоги, запустите BAT-файл.

Автоматическая синхронизацияАвтоматическая синхронизация

Linux
Windows

Для автоматической синхронизации локального каталога с бакетом:

  1. Убедитесь, что у пользователя, от имени которого будет ставиться задание в cron, есть доступ к локальному каталогу.

  2. Откройте файл планировщика текущего пользователя, выполнив команду:

    crontab -e
    
  3. Добавьте в файл строку для автоматической синхронизации, например, каждые 10 минут:

    */10 * * * * aws s3 sync <путь_к_локальному_каталогу> <имя_подключения>:<имя_бакета> --delete --log-file=<путь_к_файлу_логов>
    

    Где:

    • --delete — флаг для удаления файлов из бакета при их удалении из локального каталога.
    • --log-file — опциональный параметр для записи логов. Указывайте полный путь.

    Примечание

    Указывайте полный абсолютный путь к каталогам без ~. Например: /home/user/.

Задание будет запускаться с заданной периодичностью и выполнять синхронизацию каталогов.

Для автоматической синхронизации настройте задачу в Планировщике задач:

  1. Откройте Планировщик задач Windows:

    • Пуск → Планировщик задач.
    • Или выполните в Выполнить → taskschd.msc.
  2. Нажмите Создать задачу... (Create Task…)

  3. Во вкладке Действия (Actions) добавьте новое действие, указав абсолютный путь до исполняемого скрипта (например, BAT-файла) в поле Программа или сценарий.

  4. Во вкладке Триггеры добавьте расписание.

  5. Нажмите OK.

Как удалить созданные ресурсыКак удалить созданные ресурсы

Чтобы перестать платить за созданные ресурсы:

  1. Удалите объекты из бакета.
  2. Удалите бакет.

Была ли статья полезна?

Предыдущая
Обзор
Следующая
Резервное копирование в Object Storage с помощью rclone
Проект Яндекса
© 2026 ООО «Яндекс.Облако»