我在一个key.json文件中有一个 ssh 私钥,我想使用此凭据通过 gsutil 访问存储桶。
我似乎找不到任何关于如何包含 json 密钥作为身份验证方法的信息,只有“私有”和“秘密”字段。
文件结构为:
{
"private_key_id":
"private_key": "-----BEGIN PRIVATE KEY-- ...
"client_email":
"client_id":
"type": "service_account"
}
Run Code Online (Sandbox Code Playgroud)
我如何使用gsutil该文件?
我刚刚开始使用 GCS 作为我的网络服务器的备份。一台服务器有 120 万个 JPEG(3.5TB),并且所有这些都在 10 个小时左右的时间内完美同步。
另一个有 250 万个 JPEG(尽管只是缩略图/预览 - 总共 300GB)。我第一次这样做时,“构建同步状态”很快就完成了 250 万次。几分钟。虽然我的会话被中断了(wifi 掉线了),当我通过 SSH 尝试再次运行它时,“在源列表中”提示迅速咬住了 10000、20000、30000。然后几乎停止了。半小时后,才到了三十万。我知道它也必须确定目的地有哪些文件,但我认为这不会显着减慢“在源列表中...”的回声?
它是否表明我的文件系统有问题,如果是,我应该检查什么?
还是出于某种原因,这是预期的行为?
尝试将 gsutil rsync 与 200 万个文件一起使用到一个存储桶中是个坏主意吗?我找不到谷歌关于一个存储桶中可以放置多少文件的指南,所以我假设它是数十亿/无限的?
FWIW 文件都在嵌套的子目录中,任何一个目录中的文件都不超过 2000 个。
谢谢
编辑:我使用的确切命令是:
gsutil -m rsync -r /var/www/ gs://mybucketname/var/www
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用 gsutil 将包含超过 3k 文件的文件夹同步到 Google Cloud 上的存储桶。问题是上传的文件不到一半,然后我收到此错误:
解包的值太多了
CommandException: 1 个文件/对象无法复制/删除。
由于 Google Cloud 支持仅适用于那些有 200 美元闲钱的人,这里有人有不涉及单独同步每个子文件夹的解决方案吗?
我在 Windows 10 上使用 powershell,但这个问题也发生在 linux 上。我无法在网上的任何地方找到解决方案。