【问题标题】:AWS S3 bucket is not remounting after restarting EC2 Instance重启 EC2 实例后 AWS S3 存储桶未重新挂载
【发布时间】:2020-03-03 17:35:51
【问题描述】:

我使用 S3fs 将我的 S3 存储桶安装到我的 EC2 实例,并且能够读取、写入我的 S3 存储桶。但重启我的 EC2 实例后,S3 存储桶会自动卸载。 我发现要使其持久化并在每次重新启动时自动挂载,我们需要将以下条目添加到 /etc/rc.local

/usr/bin/s3fs myS3bucket -o use_cache=/tmp -o allow_other -o multireq_max=5 /myS3bucket

但它仍然没有在重新启动时安装。

【问题讨论】:

    标签: javascript node.js amazon-web-services amazon-s3 amazon-ec2


    【解决方案1】:

    我能够通过以systemd 服务运行它来使其工作。

    • 创建服务文件 - /usr/lib/systemd/system/mybucket-mount.service

      [Unit]
      Description = Mount S3 Bucket my-bucket
      Wants=network-online.target
      After=network.target network-online.target
      
      [Service]
      Type=oneshot
      RemainAfterExit=yes
      ExecStart = /usr/bin/s3fs my-bucket /MyBucketMount/ -o uid=500,gid=501,iam_role=MyRole,use_cache=/tmp,endpoint=ap-south-1,url=https://s3.amazonaws.com
      ExecStop=/bin/umount /MyBucketMount/
      
      [Install]
      WantedBy = multi-user.target
      
    • 创建链接

      ln  -sf /usr/lib/systemd/system/mybucket-mount.service /etc/systemd/system/multi-user.target.wants/mybucket-mount.service
      
    • 启用服务

      systemctl enable mybucket-mount.service
      
    • 启动服务

      systemctl start mybucket-mount.service
      

    【讨论】:

      【解决方案2】:

      你通过官方documentation了吗?

      您也可以通过在 /etc/fstab 中输入以下行来在启动时挂载:

      s3fs#mybucket /path/to/mountpoint fuse _netdev,allow_other 0 0

      (…)

      注意 2:您可能还需要确保 netfs 服务在启动时启动

      网络挂载首先需要网络访问权限。

      【讨论】:

      • 实际上我确实在 /etc/fstab 中更改了它,但没有工作。现在用你的语法它的工作。谢谢:)
      • 很高兴我能帮上忙。然后考虑将其标记为答案。谢谢。
      猜你喜欢
      • 2017-05-20
      • 1970-01-01
      • 2021-01-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-27
      • 2021-11-05
      • 2017-06-25
      相关资源
      最近更新 更多