更新时间:2024-09-03 GMT+08:00

obsutil简介

obsutil是一款用于访问管理华为云对象存储服务(Object Storage Service,OBS)的命令行工具,您可以使用该工具对OBS进行常用的配置管理操作,如创建桶、上传文件/文件夹、下载文件/文件夹、删除文件/文件夹等。对于熟悉命令行程序的用户,obsutil能在执行批量处理、自动化任务场景能为您带来更优体验。

obsutil适用于Windows、Linux和macOS三大主流的操作系统,在各操作系统上推荐使用的版本如表1所示。您可以单击这里获取到obsutil在不同操作系统上的下载地址及下载方法。

表1 obsutil推荐使用的操作系统版本

操作系统

推荐使用版本

Windows

  • Windows 7
  • Windows 8
  • Windows 10
  • Windows Server 2016

Linux

  • SUSE 11
  • Euler OS 2
  • CentOS 7

macOS

macOS 10.13.4

工具优势

obsutil具有四大优势:

  1. 简单、易用;
  2. 无需安装,轻便小巧,即下即用;
  3. 同时支持Windows/Linux/macOS三大平台;
  4. 配置多元化,性能优良。

使用场景

  • 自动化备份归档等场景,比如定时上传本地数据至OBS。
  • 支持通过OBS Browser+等其他工具不能实现的场景,比如同步上传/下载/复制对象等。

功能概述

obsutil提供的功能如表2所示。

表2 obsutil功能概述

功能

说明

桶基本操作

指定区域创建不同存储类型的桶、删除桶以及获取桶列表、桶配置信息等。

对象基本操作

管理对象,包括上传、下载、删除和列举对象等。

  • 支持上传单个或批量上传多个文件或文件夹。
  • 支持分段上传大文件。
  • 支持增量同步上传、下载和复制对象。
  • 支持复制单个对象或按对象名前缀批量复制多个对象。
  • 支持移动单个对象或按对象名前缀批量移动多个对象。
  • 支持对失败的上传、下载、复制等任务进行恢复。

日志记录

支持在客户端配置日志记录,记录对桶和对象的操作日志,方便统计与分析。

obsutil目前暂不支持高级的桶管理和对象管理操作,相关功能会在后续版本中开发,如需配置,建议使用对象存储服务控制台。相关文档请参考《对象存储服务控制台指南》

命令行结构

遵循简单易用的原则,obsutil的命令行结构如下:

  • Windows操作系统:

    obsutil command [parameters...] [options...]

  • macOS/Linux操作系统:

    ./obsutil command [parameters...] [options...]

  • command为执行的命令,例如ls,cp等。
  • parameters为该命令的基本参数(必选),例如创建桶时的桶名称。
  • options为该命令的附加参数(通常为可选),且附加参数在运行命令时必须以“-”开头。
  • 方括号[]不是命令的一部分,在输入命令时,参数不能使用方括号[]括起来。
  • 如命令中含有特殊字符,如&、<、>以及空格等,则需要加引号转义(macOS/Linux操作系统使用单引号,Windows操作系统使用双引号)。
  • 附加参数支持两种传入方式-key=value和-key value,例如-acl=private和-acl private。两种参数传入方式无区别,您可以根据使用习惯选择任意一种方式。
  • 在Windows操作系统上,obsutil支持直接运行obsutil.exe进入交互命令模式。在该模式下输入命令时可以省略“obsutil”,直接输入command [parameters...] [options...]运行命令。示例如下:
    Enter "exit" or "quit" to logout
    Enter "help" or "help command" to show help docs
    Input your command:
    -->ls -limit=3 -s
    obs://bucket-001
    obs://bucket-002
    obs://bucket-003
    Bucket number: 3
    
    Input your command:
    -->
  • 以SSH远程登录macOS/Linux操作系统使用obsutil命令时,建议配置TMOUT=0,防止SSH会话过期导致程序退出。