Google 使用 gcsfuse 安装在 Compute Engine 实例上的 Cloud Bucket 不创建文件

Google Cloud Bucket mounted on Compute Engine Instance using gcsfuse does not create files

我已经能够使用

装载 Google Cloud Bucket
gcsfuse --implicit-dirs " production-xxx-appspot /mount

或者同样

sudo mount -t gcsfuse -o implicit_dirs,allow_other,uid=1000,gid=1000,key_file=service-account.json production-xxx-appspot /mount

安装工作正常。

发生的事情是,当我在挂载后执行以下命令时,它们也能正常工作:

mkdir /mount/files/
cp -rf /home/files/* /mount/files/

但是,当我使用时:

mcedit /mount/files/a.txt

vi /mount/files/a.txt

输出表明没有可用的文件,这是合理的。

是否有任何其他方法可以解决这种情况,并以可以直接在挂载的 google 云存储桶上创建文件的方式使用应用程序,而不是在本地创建文件然后再复制。

如果您不想在本地创建文件并稍后上传,您应该考虑使用像Google Drive

这样的文件存储系统

Google 云存储是一个对象存储系统,对象不能被修改,你必须一次完整地写入对象。对象存储也不能很好地与传统数据库配合使用,因为写入对象是一个缓慢的过程,并且编写应用程序使用对象存储 API 并不像使用文件存储那么简单。

file storage system 中,数据作为单条信息存储在文件夹中,就像您在马尼拉文件夹中整理纸张一样。当您需要访问该数据时,您的计算机需要知道找到它的路径。 (当心——这可能是一条漫长而曲折的道路。)

如果您想使用 Google 云存储,您需要在本地创建您的文件,然后将其推送到您的存储桶。

以下是如何 configure Google Cloud Storage with Node.js: File Upload example

的示例

这是一个关于如何 mount Object Storage on Cloud Server using s3fs-fuse

的教程

如果您想了解更多关于存储格式的信息,请follow this link

有关读取和写入云存储的更多信息in this link