为什么 gsutil cp 命令在计算引擎实例中配置的 cron 作业中不起作用?

Why gsutil cp command does not work in a cron job configured in a compute engine instance?

我有以下命令: gsutil -m cp file-to-copy gs://target-bucket

当我从命令行 运行 时,它工作正常。但是,当我安排一个 cron 作业时,文件复制不会发生,尽管 cron 作业已执行。

有人能帮帮我吗?

您的 cron 作业可能 运行 以不同于您为其设置凭据的用户身份执行命令,或者 cron 作业无权访问您的凭据。如果您 运行 gsutil version -l,您应该会在 config path(s): 行看到正在加载的凭据文件。确保在 运行 执行 cron 作业时看到相同的配置文件正在加载。

如果您想查看 cron 作业的输出,请尝试将 stdout 和 stderr 路由到一个文件,例如

/path/to/google-cloud-sdk/bin/gsutil ... 1>/tmp/gsutil_output.txt 2>&1