配置BOSCMD
通用配置
配置支持中文显示
如需要配置支持中文显示的CMD环境,请执行如下命令配置:
$ export LANG=en_US.UTF-8
说明:可先执行
locale
命令查看当前环境的语言支持情况,若不是LANG=en_US.UTF-8
,可执行上述命令进行修改。
配置AK/SK、Region、Host信息
使用BOS CMD工具之前,推荐先设置Access Key、Secure Key、Region和Host。可以通过-c/--configure来设置AK、SK、Region和Host信息。
$ ./bcecmd -c [<conf-path>]
$ Your Access Key ID [None]: Enter Your AK
$ Your Security Token []: Enter Your STS token
$ Your Secret Access Key ID [None]: Enter Your SK
$ Default Region Name [bj]: Enter Your region
$ Default Domain [bj.bcebos.com]: Enter Your host
$ Default Proxy Host [none]: Enter Your proxy host
$ Default breakpoint_file_expiration [7] days:
说明:
<conf-path>
为本地文件目录,当用户有多个百度智能云账户时,通过指定<conf-path>
将不同账号的配置文件写到不同目录下,执行命令时可以指定目录选择对应账户的配置。- 不指定
<conf-path>
时,CMD在配置完成后将配置文件自动写到当前用户主目录~/.go-bcecli
;指定<conf-path>
时,将配置文件自动写到指定目录。- 即使不设置AK/SK,您也可以通过BOS CMD访问public权限的bucket。
- 指定Region之后您可以不指定Host,BOS CMD可自动拼接Host为Region.bcebos.com。
- 如果您指定了Host,那么BOS CMD不再自动拼接Host,而是访问您指定的Host。
- 可以填写None将AK/SK/Region以及Domain设置为空。当Region设置为空时默认值为bj。当Domain设置为空时默认使用Region拼接,当两个同时为空时默认访问bj.bcebos.com。
- 指定proxy host后CMD客户端将使用代理访问BOS服务
- 在使用临时STS token的时候可以设置Token,在设置Token的情况下,优先使用Token
- breakpoint_file_expiration 断点文件的有效期,超过有效期之后,之前的断点不生效
BOS CMD相关配置
bcecmd -c
命令除了可以进行通用设置,还支持设置自动切换域名,另还支持设置BOS上传的相关属性,如是否使用HTTPS协议及分块上传的并发数等。
设置自动切换域名
BOS拥有多个Region,如果您需要在不同Region下面进行操作,BOS CMD的“自动切换域名”功能可以根据您当前操作的Bucket所在Region,来自动切换域名。为了方便您的使用,CMD会默认开启此功能。
如果您想让您所有的操作请求都发送到您指定的域名或者Host(通过bcecmd -c
配置的domain),你可以通过bcecmd -c
命令关闭“自动切换域名”功能, 设置为no表示关闭此功能。
$ ./bcecmd -c [<conf-path>]
$ Default use auto switch domain [yes]:
说明:取值可以是yes和no,yes代表开启根据Bucket所在Region自动切换域名,no表示关闭。缺省情况下为开启。
设置HTTPS协议上传
为了保证用户数据的安全性,建议用户使用HTTPS协议上传。是否使用HTTPS可以通过bcecmd -c
命令进行设置,设置为no代表使用HTTP协议上传。
$ ./bcecmd -c [<conf-path>]
$ Default use https protocol [no]:
说明:取值可以是yes和no,缺省情况下使用HTTP协议上传。
设置大文件分块上传的并发数
使用BOS CMD上传大于32MB的文件时,BOS CMD会自动进行分块上传,您可以通过bcecmd -c
命令设置单个文件分块上传的并发数。
$ ./bcecmd -c [<conf-path>]
$ Default multi upload thread num [10]:
说明:分块上传的并发数应设置为大于等于1的整数,缺省为10。
设置BOS CMD sync命令并发上传下载的文件数
BOS CMD 通过sync命令执行上传或下载时,会并发操作多文件。您可以通过bcecmd -c
命令设置 sync 命令并发数。
$ ./bcecmd -c [<conf-path>]
$ Default sync processing num [10]:
说明:并发数应设置为大于等于1的整数,缺省为10。
注意:使用sync命令时,sync会并发地处理多个文件,如果有文件大小超过分块上传的阈值时,这个文件也会被分块后并发上传, 所以最坏的情况下将有 “sync并发数 x 单文件分块上传并发数” 个协程同时运行, 但是并不是并发数越高上传效率越高,所以您需要根据自己电脑配置来配置合适的sync并发数和分块上传并发数。
设置分块上传的单个分块大小
BCE CMD默认的单个分块大小为10MB,如果您网络环境良好(使用默认分块大小上传文件未出现超时),建议您就使用默认的分块大小。 当上传出现超时时(当BOS返回的错误码为RequestTimeout),建议你调低单个分块的大小来避免上传超时。您可以通过如下的命令配置分块大小:
$ ./bcecmd -c [<conf-path>]
$ Default multi upload part size [10] MB (Must be positive integer and equal or greater than 1) :
说明:
- 分块大小应设置为大于等于1的整数,缺省为10 (单位为MB),BOS分块上传时Part数目范围是1-10000,当采用缺省值时可以上传的单个Object最大为100GB,当上传大文件时需要调整改参数,Part数目在1000以内较佳。
- 动态调整:如果分片大小设置较小,例如设置为 1MB 那么当文件大小超过10GB(但不超过BOS支持最大文件48.8TB)Part数目会超过10000,此时BCE CMD工具会自动调整分片,降低Part数目保证文件正常上传。
- 如果您网络环境很差, 建议您也调低[sync命令并发上传下载的文件数](#设置BOS CMD sync命令并发上传下载的文件数)和 大文件分块上传的并发数。