Todos os produtos
Search
Central de documentação

Object Storage Service:sync (Sincronizar objetos do OSS para um computador local)

Última atualização: Jul 03, 2026

O comando sync sincroniza objetos de um diretório do OSS para um diretório local.

Observações de uso

  • Nome do binário

    No ossutil 1.6.16 e versões posteriores, use ossutil diretamente como nome do binário na linha de comando. Não é necessário alterar o nome do binário conforme o sistema operacional. Caso utilize uma versão anterior à 1.6.16, atualize o nome do binário de acordo com seu sistema operacional. Para mais informações, consulte Referência de comandos do ossutil.

  • Quantidade de objetos

    Sem a opção --delete, não há limite para a quantidade de objetos. Com a opção --delete, é possível sincronizar até 1 milhão de objetos por vez. Ultrapassar esse limite gera o erro over max sync numbers 1000000.

  • Diferenças em relação ao comando cp

    • Por padrão, o comando sync percorre recursivamente todos os objetos e subdiretórios. Já o comando cp exige a opção -r para operações recursivas.

    • O comando sync aceita a opção --backup-dir para salvar arquivos exclusivos do destino em uma pasta de backup. O comando cp não oferece suporte a --backup-dir.

    • O comando sync não oferece suporte a --version-id, portanto não sincroniza versões anteriores dos objetos. O comando cp oferece suporte a --version-id.

    Os comandos sync e cp compartilham todas as demais opções. cp (Baixar arquivos).

Formato do comando

ossutil sync cloud_url  file_url
[-f --force]
[-u --update]
[--maxdownspeed <value>]
[--delete]
[--backup-dir <value>]
[--enable-symlink-dir]
[--disable-all-symlink]
[--disable-ignore-error]
[--only-current-dir]
[--output-dir <value>]
[--bigfile-threshold <value>]
[--part-size <value>]
[--checkpoint-dir <value>]
[--range <value>]
[--encoding-type <value>]
[--snapshot-path <value>]
[--include <value>]
[--exclude <value>]
[--disable-crc64]
[--payer <value>]
[-j, --job <value>]
[--parallel <value>]
[--retry-times <value>]

Parâmetros e opções:

Parâmetro ou opção

Descrição

cloud_url

Caminho do diretório de origem no OSS no formato oss://bucketname/path/. Exemplo: oss://examplebucket/exampledir/. Se cloud_url não terminar com uma barra (/), o ossutil a adiciona automaticamente.

file_url

Caminho da pasta de destino local. Exemplo: /localfolder/ (Linux) ou D:\\localfolder\\ (Windows).

-f --force

Força a execução da operação sem solicitar confirmação.

-u, --update

Sincroniza apenas quando o arquivo de destino estiver ausente ou quando o objeto de origem for mais recente.

--maxdownspeed

Velocidade máxima de download em KB/s. Padrão: 0 (ilimitado).

--delete

Exclui arquivos de destino que não existem no diretório de origem do OSS.

Aviso

Ative o versionamento antes de usar --delete para evitar perda acidental de dados.

--backup-dir

Salva arquivos exclusivos do destino na pasta de backup especificada, em vez de excluí-los.

--enable-symlink-dir

Sincroniza subdiretórios vinculados por links simbólicos.

--disable-all-symlink

Ignora todos os links simbólicos (arquivos e diretórios) durante a sincronização.

--disable-ignore-error

Interrompe a execução ao encontrar erros em operações em lote, em vez de ignorá-los.

--only-current-dir

Sincroniza apenas os objetos do diretório atual, sem incluir subdiretórios.

--output-dir

Diretório onde são salvos os relatórios de erro gerados durante a sincronização em lote.

Padrão: ossutil_output no diretório atual.

--bigfile-threshold

Limiar de tamanho para download retomável, em bytes.

Valor padrão: 100 MB

Intervalo de valores: 0 a 9223372036854775807

--part-size

Tamanho da parte em bytes. Por padrão, o ossutil calcula esse valor com base no tamanho do objeto.

Intervalo de valores: 1 a 9223372036854775807

--checkpoint-dir

Diretório para dados de checkpoint do download retomável. Se houver falha no download, o ossutil cria o diretório .ossutil_checkpoint para registrar as informações de checkpoint. Esse diretório é removido após a conclusão bem-sucedida do download. Caso especifique um diretório personalizado, certifique-se de que ele possa ser excluído.

--range

Baixa o intervalo de bytes especificado do objeto e o salva como um novo arquivo. A numeração começa em zero.

  • Especificar um intervalo

    Por exemplo, 3-9 baixa do 3º ao 9º byte (inclusive).

  • Especificar uma posição inicial

    Por exemplo, 3- baixa do 3º byte até o final do arquivo.

  • Especificar uma posição final

    Por exemplo, -9 baixa do início do arquivo até o 9º byte (inclusive).

--encoding-type

Método de codificação para nomes de objetos. Valor válido: url. Padrão: sem codificação.

--snapshot-path

Diretório para snapshots de sincronização. O ossutil lê os snapshots deste diretório para executar sincronizações incrementais nas execuções seguintes.

--include

Inclui apenas objetos correspondentes ao padrão especificado.

Para mais informações, consulte Opções --include e --exclude.

--exclude

Exclui objetos correspondentes ao padrão especificado.

Para mais informações, consulte Opções --include e --exclude.

--disable-crc64

Desativa a validação de dados CRC-64.

--payer

Pagador da requisição. Defina como requester para cobrar as taxas de tráfego e requisições do solicitante.

-j, --job

Número de tarefas simultâneas para operações com múltiplos objetos. Padrão: 3. Intervalo: 1 a 10000.

--parallel

Número de tarefas simultâneas para operações com um único objeto. Intervalo: 1 a 10000. Por padrão, o ossutil define esse valor com base no tipo de operação e no tamanho do objeto.

--retry-times

Número de tentativas em caso de erro. Padrão: 10. Intervalo: 1 a 500.

Verificar resultados da sincronização

Verifique se todos os objetos foram transferidos corretamente:

  • Verificar contagem de arquivos

    Compare a quantidade de objetos entre os diretórios do OSS e local:

    # Count files in the local directory.
    ls -1 /local/dir/ | wc -l
    
    # Count objects in the OSS directory.  
    ossutil ls oss://bucket/dir/ -r | grep "^oss://" | wc -l
  • Listar objetos sincronizados

    Revise os objetos sincronizados:

    # List local files with sizes.
    ls -lh /local/dir/
    
    # Compare with the OSS directory.
    ossutil ls oss://bucket/dir/ -r

Exemplos

Os exemplos abaixo utilizam esta estrutura de arquivos. A pasta localdir no bucket do OSS contém a.txt, b.txt e o subdiretório C. A pasta local destdir contém d.txt:

examplebucket           local root directory
└── localdir/             └── destdir/
       ├── a.txt                └── d.txt
       ├── b.txt
       └── C/
  • Sincronizar a pasta localdir do OSS para o computador local

    ossutil sync  oss://examplebucket/localdir/  destdir/ 

    Resultado: a.txt, b.txt e o subdiretório C são adicionados à pasta local destdir.

    examplebucket           local root directory
    └── localdir/             └── destdir/
           ├── a.txt                ├── a.txt 
           ├── b.txt                ├── b.txt
           └── C/                   ├── d.txt
                                       └── C/ 
  • Sincronizar com --backup-dir: sincroniza localdir do examplebucket para a pasta local destdir e move os arquivos exclusivos do destino para a pasta backup.

    ossutil sync oss://examplebucket/localdir/  destdir/  --delete  --backup-dir backup/

    Resultado: a pasta localdir é sincronizada. Arquivos presentes em destdir mas ausentes na origem são movidos para a pasta backup. A pasta local destdir passa a conter apenas a.txt, b.txt e o subdiretório C. O arquivo original d.txt é movido para a pasta backup.

    examplebucket              local root directory
    └── localdir/               ├── destdir/
           ├── a.txt            │     ├── a.txt 
           ├── b.txt            │     ├── b.txt
           └── C/               │     └── C/                             
                                   └── backup/
                                          └──d.txt
  • Saída de uma sincronização bem-sucedida:

    Succeed: Total num: 2, size: 750,081. OK num: 2(upload 2 files).
    
    average speed 1641000(byte/s)

Opções comuns

Para acessar um bucket em outra região, use -e para especificar o endpoint. Para acessar um bucket pertencente a outra conta Alibaba Cloud, use -i para o AccessKey ID e -k para o AccessKey secret.

Exemplo: sincronizar a partir de um bucket na região China (Shanghai) pertencente a outra conta Alibaba Cloud:

ossutil sync oss://examplebucket/srcfolder/  examplefolder/ -e oss-cn-shanghai.aliyuncs.com -i yourAccessKeyID -k yourAccessKeySecret

Opções comuns.