config(创建配置文件)

您可以通过config命令创建配置文件,用于存储OSS访问信息。您可以在使用其他命令时添加-c选项,ossutil将通过指定的配置来访问OSS。

重要

从ossutil 1.6.16版本开始,命令行中Binary名称支持直接使用ossutil,您无需根据系统刷新Binary名称。如果您的ossutil版本低于1.6.16,则需要根据系统刷新Binary名称。更多信息,请参见命令行工具ossutil命令参考

命令格式

该命令有交互式和非交互式两种用法。交互式用法允许您在使用命令前,通过配置文件完成相关配置项。命令使用过程中,ossutil将直接读取配置文件中的配置。而非交互式用法则需要您在使用命令时,通过选项来指定需要的配置项。相比非交互式用法,交互式用法具有更高的安全性。

该命令的非交互式用法的命令格式如下:

ossutil config 
[-e,--endpoint <value>] 
[-i,--access-key-id <value>] 
[-k,--access-key-secret <value>] 
[-t,--sts-token <value>]
[--ram-role-arn <value>]
[-L language <value>] 
[--output-dir <value>] 
[-c,--config-file <value>]

各选项说明如下:

选项

说明

-e,--endpoint

填写Bucket所在地域的域名信息,详情请参见访问域名和数据中心。您也可以增加http://https://指定ossutil访问OSS使用的协议,默认使用HTTP协议。

-i,--access-key-id

指定配置文件中Credentials选项下的AccessKey ID。有关如何查看AccessKey ID信息的具体步骤,请参见获取AccessKey

-k,--access-key-secret

指定配置文件中Credentials选项下的AccessKey Secret。有关如何查看AccessKey Secret信息的具体步骤,请参见获取AccessKey

-t,--sts-token

访问OSS使用的STSToken,仅在使用STS临时授权方式访问OSS时需要配置此项。关于如何生成STSToken的具体步骤,请参见使用STS临时访问凭证访问OSS

--ram-role-arn

RamRoleArn鉴权模式下的RAM角色ARN。仅在使用RAM用户的AssumeRole的方式访问时需要配置此项。

-L language

设置ossutil工具的语言。取值如下:

  • CH(默认值):中文。设置为CH时,请确保您的系统编码方式为UTF-8。

  • EN:英文。

--output-dir

指定输出文件所在的目录,输出文件目前包含cp命令批量拷贝文件出错时所产生的report文件。

默认值:当前目录下的ossutil_output目录。

-c,--config-file

ossutil工具的配置文件路径,ossutil启动时将从配置文件读取配置。

使用示例

  • 交互式配置

    ossutil config
    请输入配置文件名,文件名可以带路径(默认为:/home/user/.ossutilconfig,回车将使用默认路径。
    如果用户设置为其它路径,在使用命令时需要将--config-file选项设置为该路径): 
    未输入配置文件路径,将使用默认配置文件:/home/user/.ossutilconfig。 
    对于下述配置,回车将跳过相关配置项的设置,配置项的具体含义,请使用"help config"命令查看。 
    请输入endpoint:https://oss-cn-shenzhen.aliyuncs.com 
    请输入accessKeyID:yourAccessKeyID 
    请输入accessKeySecret:yourAccessKeySecret
    请输入stsToken:yourStsToken
  • 非交互式配置

    ossutil config -e oss-cn-beijing.aliyuncs.com -i LTAIbZcdVCmQ**** -k D26oqKBudxDRBg8Wuh2EWDBrM0****  -L CH -c /myconfig

    如果您使用命令时输入了除-L language-c,--config-file以外的任意选项,则进入非交互式模式,所有的配置项需使用选项来指定。

编辑配置文件

重要
  • 在新版本中,ossutil取消了交互式配置中关于Bucket-Endpoint和Bucket-Cname项的配置。您可以在配置文件中对每个Bucket单独指定Endpoint或CNAME。

  • ossutil支持通过不同方式指定Endpoint,Endpoint生效优先级为--endpoint(命令选项) > Bucket-Cname > Bucket-Endpoint > endpoint(Credentials项) 。

对于已经生成的配置文件,您也可以通过直接编辑配置文件来修改OSS访问信息。ossutil工具的配置文件格式如下:

[Credentials]
        language = CH
        endpoint = oss.aliyuncs.com
        accessKeyID = your_accesskey_id
        accessKeySecret = your_accesskey_secret
        stsToken = your_sts_token
        outputDir = your_output_dir
        ramRoleArn = your_ram_role_arn
[Bucket-Endpoint]
        bucket1 = endpoint1
        bucket2 = endpoint2
        ...
[Bucket-Cname]
        bucket1 = cname1
        bucket2 = cname2
        ...
[AkService]
        ecsAk=http://100.100.100.200/latest/meta-data/ram/security-credentials/EcsRamRoleTesting
[Default]
        userAgent = user_agent
        loglevel = log_level
        proxyHost = proxy_host
        proxyUser = proxy_user
        proxyPwd = proxy_pwd
        readTimeOut = read_time_out
        connectTimeOut = connect_time_out
        retryTimes = retry_times
  • Bucket-Endpoint:为每个指定的Bucket单独配置Endpoint。

  • Bucket-Cname:为每个指定的Bucket单独配置CNAME域名。关于CNAME域名的更多信息,请参见绑定自定义域名

  • AkService:当您希望使用ECS实例绑定的RAM角色操作OSS时,需配置此项。配置时仅需将EcsRamRoleTesting改为ECS实例绑定的角色名称即可。配置此项后,AccessKey ID、AccessKey Secret、STSToken可不配置。如果配置了AccessKey ID,则AkService的配置将不会生效,而是以配置的AccessKey ID、AccessKey Secret、STSToken进行身份校验。ECS实例绑定RAM角色请参见通过ECS实例RAM角色授权ECS访问其他云服务

  • Default:当您需要修改通用参数的默认值时,可以配置此项。关于选项的更多说明,请参见查看选项

    说明

    仅1.7.15及以上版本支持配置Default。