我正在 gcloud 计算引擎上运行一个实例。我需要将 Google 存储桶(属于不同的项目)安装到我的实例。该实例在 Debian Wheezy 上运行。我已经安装了 gcc、fuse、gcsfuse。但是当我尝试安装存储桶时:
$ gcsfuse 存储桶名称 /mnt/存储桶名称
我收到错误: stderr:fusermount:未找到保险丝设备,请先尝试“modprobe fuse”
尝试了“modprobe fuse”,出现错误: -bash:modprobe:未找到命令
有谁知道问题可能出在哪里,或者有谁遇到过同样的问题?任何想法、评论和帮助都将不胜感激。提前致谢!
答案1
如果有人使用云运行在Google Cloud Platform上,应该使用第二代执行环境。
gcloud beta run deploy filesystem-app --source . \
--allow-unauthenticated \
--service-account fs-identity \
--update-env-vars BUCKET=[YOUR_BUCKET] \
--region=europe-north1 \
--execution-environment gen2
--execution-environment gen2
根据以下情况将其标记为重要文档:
You should use second generation if any of the following apply to your Cloud Run service:
- Your service needs to use a network file system, which is only supported by second generation.
- ...
答案2
我已经通过升级到 Jessie 解决了该问题,然后按照此处的说明安装了 gcsfuse:https://github.com/GoogleCloudPlatform/gcsfuse/blob/master/docs/installing.md
答案3
要在系统上找到命令,您可以使用whereis
它将搜索所有常见位置以为您提供完整路径。
whereis modprobe
..在我的系统输出上:
modprobe:/sbin/modprobe /etc/modprobe.d /etc/modprobe.conf /lib/modprobe.d /usr/share/man/man8/modprobe.8.bz2
在这种情况下,也可能是您的情况,您会知道将其称为/sbin/modprobe fuse
。