gsutil du命令执行结果不准确,查询存储桶文件夹大小返回0 B
gsutil du -sh返回0B异常排查方案
- 验证账号权限是否变更
上周如果有IAM策略调整、账号权限回收,会导致执行命令的账号丢失目标路径下的storage.objects.list权限,gsutil无法枚举对象就会返回0B。可先执行gsutil ls gs://<桶名>/<目标文件夹路径>验证是否能正常列出文件夹内的对象,若ls命令返回空,优先调整对应路径的访问权限。 - 确认存储桶访问模式是否调整
如果上周将存储桶的访问控制从细粒度(ACL)模式切换为统一模式,原有针对文件夹层级配置的ACL权限会全部失效,也会导致无对象枚举权限出现统计异常。 - 增加参数覆盖特殊存储类统计
如果目标文件夹下的对象属于归档/冷归档存储类,且未做过恢复操作,gsutil du默认不会统计这部分对象,返回结果为0B。可执行gsutil du -sh -a gs://<桶名>/<目标文件夹路径>重试,-a参数会强制统计所有存储类的对象,包含未恢复的归档类对象。 - 检查软删除对象统计规则
若存储桶开启了软删除功能,且上周调整过软删除配置,默认gsutil du不会统计处于软删除状态的对象。如果需要将这部分容量纳入统计,可加上-D参数执行命令。 - 验证工具版本是否异常
如果上周更新过gcloud SDK或gsutil组件,可能存在版本兼容bug。可尝试回退到此前正常运行的版本,或执行gcloud components update升级到最新稳定版后重试。 - 检查目标路径拼写是否正确
确认命令中的路径没有拼写错误、末尾斜杠遗漏/多写的问题,若输入的路径前缀下没有任何活跃对象,也会返回0B结果。
内容的提问来源于stack exchange,提问作者Christian Simpson
相关产品推荐
相关产品推荐

