为什么某些存储桶不应出现在 gsutil ls 之后?
Why some buckets should not appear after a gsutil ls?
当我这样做时 gsutil ls -p myproject-id
我得到一个桶列表(在我的例子中是 2 个桶),我希望它是我在项目中的所有桶的列表:
gs://bucket-one/
gs://bucket-two/
但是,如果我这样做 gsutil ls -p myproject-id gs://asixtythreecharacterlongnamebucket
我实际上得到了那个长名称桶的元素:
gs://asixtythreecharacterlongnamebucket/somefolder/
所以我的问题是:为什么当我对项目执行 ls 时,我没有在结果中得到长名称的存储桶?
对我来说唯一有意义的解释是:
但我不确定。是这个原因吗?还是其他的?
您没有执行相同的请求!
gsutil ls -p myproject-id
这里问的是属于一个项目的所有bucket资源
gsutil ls -p myproject-id gs://asixtythreecharacterlongnamebucket
这里你问所有属于bucketasixtythreecharacterlongnamebucket
的对象,你用的是quota项目myproject-id
在这两种情况下,您都需要有访问资源的权限
您确定 asixtythreecharacterlongnamebucket
属于 myproject-id
吗?听起来确实 asixtythreecharacterlongnamebucket
是在不同的项目中创建的。
您可以通过检查 asixtythreecharacterlongnamebucket
和 bucket-one
的存储桶 ACL 并查看列出的实体中的项目编号是否匹配来验证这一点:
$ gsutil ls -Lb gs://asixtythreecharacterlongnamebucket | grep projectNumber
$ gsutil ls -Lb gs://bucket-one | grep projectNumber
另请注意,当您在某个存储桶 中列出对象时,ls
的-p
参数对您的第二个命令没有影响。 -p
参数仅影响当您在某些项目 中列出 存储桶时应使用的项目,如在您的第一个命令中。将 ls
视为列出属于某个父级的子资源——存储桶的父级是一个项目,而对象的父级是一个存储桶。
当我这样做时 gsutil ls -p myproject-id
我得到一个桶列表(在我的例子中是 2 个桶),我希望它是我在项目中的所有桶的列表:
gs://bucket-one/
gs://bucket-two/
但是,如果我这样做 gsutil ls -p myproject-id gs://asixtythreecharacterlongnamebucket
我实际上得到了那个长名称桶的元素:
gs://asixtythreecharacterlongnamebucket/somefolder/
所以我的问题是:为什么当我对项目执行 ls 时,我没有在结果中得到长名称的存储桶?
对我来说唯一有意义的解释是: 但我不确定。是这个原因吗?还是其他的?
您没有执行相同的请求!
gsutil ls -p myproject-id
这里问的是属于一个项目的所有bucket资源
gsutil ls -p myproject-id gs://asixtythreecharacterlongnamebucket
这里你问所有属于bucketasixtythreecharacterlongnamebucket
的对象,你用的是quota项目myproject-id
在这两种情况下,您都需要有访问资源的权限
您确定 asixtythreecharacterlongnamebucket
属于 myproject-id
吗?听起来确实 asixtythreecharacterlongnamebucket
是在不同的项目中创建的。
您可以通过检查 asixtythreecharacterlongnamebucket
和 bucket-one
的存储桶 ACL 并查看列出的实体中的项目编号是否匹配来验证这一点:
$ gsutil ls -Lb gs://asixtythreecharacterlongnamebucket | grep projectNumber
$ gsutil ls -Lb gs://bucket-one | grep projectNumber
另请注意,当您在某个存储桶 中列出对象时,ls
的-p
参数对您的第二个命令没有影响。 -p
参数仅影响当您在某些项目 中列出 存储桶时应使用的项目,如在您的第一个命令中。将 ls
视为列出属于某个父级的子资源——存储桶的父级是一个项目,而对象的父级是一个存储桶。