我正在尝试制作一个python脚本,该脚本允许我创建/删除/列出保管库,执行作业,列出/描述保管库作业,上载/下载档案以及创建和获取清单。
我正在使用awscli
和boto3
python3软件包
当使用如下命令通过命令行上传文件时,我正面临着一种奇怪的怪事:
aws glacier upload-archive --vault-name <vault_name> --archive-description <archive_name> --body <file_2_upload> --account-id -
vault_name
,archive_name
,file_2_upload
是执行脚本时传递的变量,account-id
是在使用aws configure
命令执行脚本之前设置的
文件大小的功能需要花费一些时间,但可以正常使用
尝试使用脚本时(这是负责备份的部分)
glacier = boto3.client('glacier')
upload = glacier.upload_archive(vaultName=vault, body=archive, archiveDescription=name)
答案几乎是即时的,并且输出显示如下内容
HTTP Code : 201
==>表示操作成功
但是我的保管库大小没有增加,并且我无法在其中找到文件
我想念什么?
预先感谢
答案 0 :(得分:0)
好吧,我终于找到了它不起作用的原因,我需要按如下方式对内存中的文件/文件部分进行充电:
with open(archive, 'rb') as upload:
archive_upload = upload.read(size)
glacier_upload = glacier.upload_archive(vaultName=vault, archiveDescription=name, body=archive_upload)
我希望它可以帮助遇到相同问题的任何人
欢呼