文档

SendFile - 上传本地文件到ECS实例

更新时间:

调用SendFile向一台或多台ECS实例下发远程文件。

接口说明

  • 目标 ECS 实例的状态必须为运行中(Running)。
  • 目标 ECS 实例必须预先安装云助手 Agent
  • 云助手 Agent 版本需要高于以下对应的版本才能支持下发文件。如果结果返回ClientNeedUpgrade错误码,请将客户端更新至最新版本。
    • Linux:1.0.2.569
    • Windows:1.0.0.149
  • 文件内容在进行 Base64 编码后,大小不能超过 32 KB。
  • 文件下发可能会因为目标 ECS 实例的状态异常、网络异常或云助手 Agent 异常而出现失败的情况。请调用 DescribeSendFileResults ,或参考执行失败常见错误及修复建议进行问题排查。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

授权信息

下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:

  • 操作:是指具体的权限点。
  • 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
  • 资源类型:是指操作中支持授权的资源类型。具体说明如下:
    • 对于必选的资源类型,用背景高亮的方式表示。
    • 对于不支持资源级授权的操作,用全部资源表示。
  • 条件关键字:是指云产品自身定义的条件关键字。
  • 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作访问级别资源类型条件关键字关联操作
ecs:SendFileupdate
  • Instance
    acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}

请求参数

名称类型必填描述示例值
RegionIdstring

目标 ECS 实例所在的地域 ID。您可以调用 DescribeRegions 查看最新的阿里云地域列表。

cn-hangzhou
ResourceGroupIdstring

文件下发的资源组 ID,当指定该参数时:

  • InstanceId 对应的 ECS 实例必须属于该资源组。

  • 支持通过指定该参数筛选出对应的文件下发结果(通过调用 DescribeSendFileResults )。

rg-bp67acfmxazb4p****
Namestring

文件名称。支持全字符集,长度不得超过 255 个字符。

file.txt
Descriptionstring

描述信息。支持全字符集,长度不得超过 512 个字符。

This is a test file.
Timeoutlong

下发文件的超时时间。单位:秒。

  • 当因为进程原因、缺失模块、缺失云助手 Agent 等原因无法下发文件时,会出现超时现象。
  • 当设置的超时时间小于 10 秒时,为确保下发成功,系统会将超时时间自动设置为 10 秒。

默认值为 60。

60
TargetDirstring

文件下发目标 ECS 实例中的目录。如不存在则会自动创建。长度不得超过 255 个字符。

/home
ContentTypestring

文件内容类型。

  • PlainText:普通文本。
  • Base64:Base64 编码。

默认值为 PlainText。

PlainText
Contentstring

文件内容。文件内容在 Base64 编码后,大小不能超过 32 KB。

  • ContentType参数为PlainText时,该字段为明文格式的普通文本。
  • ContentType参数为Base64时,该字段为 Base64 编码的文本。
#!/bin/bash echo "Current User is :" echo $(ps | grep "$$" | awk '{print $2}') -------- oss://bucketName/objectName
FileOwnerstring

文件的用户。只对 Linux 实例生效,默认为 root。长度不得超过 64 个字符。

说明 使用其他用户时,请确保实例中存在该用户。
test
FileGroupstring

文件的用户组。只对 Linux 实例生效,默认为 root。长度不得超过 64 个字符。

说明 使用其他用户组时,请确保实例中存在该用户组。
test
FileModestring

文件的权限。只对 Linux 实例生效,设置方式与 chmod 命令相同。

默认值为 0644,表示用户具有读写权限,用户组和其它用户具有只读权限。

0644
Overwriteboolean

如果同名文件在目标目录已存在,是否覆盖文件。

  • true:覆盖。
  • false:不覆盖。

默认值为 false。

true
InstanceIdarray

需要执行命令的 ECS 实例列表。最多能指定 50 台 ECS 实例 ID。N 的取值范围为 1~50。

string

需要执行命令的 ECS 实例列表。最多能指定 50 台 ECS 实例 ID。N 的取值范围为 1~50。

i-bp185dy2o3o6n****
Tagarray<object>

标签列表。

object

标签列表。

Keystring

文件下发的标签键。N 的取值范围为 1~20。一旦传入该值,则不允许为空字符串。

使用一个标签过滤资源,查询到该标签下的资源数量不能超过 1000 个。使用多个标签过滤资源,查询到同时绑定了多个标签的资源数量不能超过 1000 个。如果资源数量超过 1000 个,您需要使用 ListTagResources 接口进行查询。

最多支持 64 个字符,不能以aliyunacs:开头,不能包含http://https://

TestKey
Valuestring

文件下发的标签值。N 的取值范围为 1~20。该值可以为空字符串。

最多支持 128 个字符,不能包含http://https://

TestValue

返回参数

名称类型描述示例值
object
InvokeIdstring

命令执行 ID。

f-7d2a745b412b46****
RequestIdstring

请求 ID。

473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E

示例

正常返回示例

JSON格式

{
  "InvokeId": "f-7d2a745b412b46****",
  "RequestId": "473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E"
}

错误码

HTTP status code错误码错误信息描述
400RegionId.ApiNotSupportedThe api is not supported in this region.指定地域下不支持调用 API。请检查 RegionId 参数取值是否正确。
400MissingParam.InstanceIdThe parameter instanceId is missing or empty.实例ID为空。
400NumberExceed.TagsThe Tags parameter number is exceed.标签个数超过最大限制。
400MissingParameter.TagKeyYou must specify Tag.N.Key.请指定标签键。
400Duplicate.TagKeyThe Tag.N.Key contain duplicate key.标签中存在重复的键,请保持键的唯一性。
400InvalidTagKey.MalformedThe specified Tag.n.Key is not valid.指定的标签键参数有误。
400InvalidTagValue.MalformedThe specified Tag.n.Value is not valid.指定的标签值参数有误。
400FileTargetDir.InvalidThe target directory of file is invalid.目标路径TargetDir参数无效。
400FileMode.InvalidThe mode of file is invalid.文件权限FileMode参数无效。
400FileContent.DecodeErrorThe Content can not be base64 decoded.文件内容Base64解码错误。
400FileContentType.InvalidThe ContentType of file is invalid.文件内容类型ContentType参数无效。
400InvalidParameter.FileOwnerThe specified parameter FileOwner is not valid.指定的参数FileOwner不合法。
400InvalidParameter.FileGroupThe specified parameter FileGroup is not valid.指定的参数FileGroup不合法。
403FileSize.ExceedLimitThe length of file content exceeds limit.文件内容长度超过上限。
403FileName.ExceedLimitThe length of file name exceeds limit.文件名称长度超过上限。
403FileDesc.ExceedLimitThe length of file description exceeds limit.文件描述长度超过上限。
403InstanceIds.ExceedLimitThe number of instance IDs exceeds the upper limit.目标实例数量超过上限。
403Operation.ForbiddenThe operation is not permitted.该操作是不被允许的。
404InvalidRegionId.NotFoundThe RegionId provided does not exist in our records.提供的RegionId不存在
404InvalidInstance.NotFoundThe specified instances not found.指定的实例ID不存在。
404InvalidResourceGroup.NotFoundThe ResourceGroup provided does not exist in our records.资源组并不在记录中。
500InternalError.DispatchAn error occurred when you dispatched the request.发送请求时发生错误,请稍后重试。

访问错误中心查看更多错误码。

变更历史

变更时间变更内容概要操作
2023-05-12OpenAPI 错误码发生变更查看变更详情
2022-02-25OpenAPI 错误码发生变更查看变更详情