57AliYun阿里云最新优惠活动
阿里云优惠码丨阿里云代金券

Ossfs常见问题解答

立即购买

阿里云服务器 ¥102元/年 云数据库37.5元/年 限时

个人、企业均可购买 | 更多配置0.8折特惠

  • Q: ossfs适合什么样的程序?

    • ossfs能把oss bucket挂载到本地,如果您使用的软件没有支持OSS,但您又想让数据能自动同步到OSS,那么ossfs是很好的选择。
  • Q: ossfs有什么局限性?

    • 由于数据需要经过网络同步到云端,ossfs在性能和功能上可能与本地文件系统有差距。如果您想让数据库等对io要求很高的应用跑在ossfs挂载的盘上,请慎重考虑。和本地文件系统具体差异:
    • 随机或者追加写文件会导致整个文件的重写。
    • 元数据操作,例如list directory,性能较差,因为需要远程访问OSS服务器。
    • 文件/文件夹的rename操作不是原子的。
    • 多个客户端挂载同一个oss bucket时,依赖用户自行协调各个客户端的行为。例如避免多个客户端写同一个文件等等。
    • 不支持hard link。
  • Q: ossfs一定要阿里云的机器才能用么?

    • ossfs不限制一定要阿里云的内网才可以使用,外网机器依然可以使用。
  • Q: ossfs能不能同时挂载多个OSS bucket

    • 可以的,在passwd-ossfs文件中写入多个OSS配置信息即可。支持不同帐号的OSS。
  • Q: 我在yum/apt-get安装ossfs,遇到conflicts with file from package fuse-devel的错误,请问是怎么回事?

    • 您的系统中存在老版本的fuse,请先使用相关的包管理器卸载,再重新安装ossfs。
  • Q: ossfs工作不正常,如何debug?

    • 您可以使用在挂载时,加上-d -o f2参数,ossfs会把日志写入到系统日志中。在centos系统中,在/var/log/messages中。
    • 您也可以在挂载时使用-d -d -o f2参数,ossfs会把日志输出到屏幕上。
  • Q: 为什么我在mount时遇到 ossfs: unable to access MOUNTPOINT /tmp/ossfs: Transport endpoint is not connected这样的错误?

    • 请先umount对应的目录。
    • 请检查您在使用ossfs挂载时,填入的url参数是否正确,是否和bucket/access key id/access key secret匹配。
    • 特别注意:url中不包含bucket的名字。例如:您在oss控制台中看到bucket的域名是这样的:ossfs-test-1.oss-cn-hangzhou.aliyuncs.com。那么填入的url则是:https://oss-cn-hangzhou.aliyuncs.com
  • Q: ossfs提示ossfs: unable to access MOUNTPOINT /tmp/odat: No such file or directory

    • 这是您未创建该目录导致的,在挂载前需要创建对应目录
  • Q: 我把bucket挂载到本地后,ls目录,却收到operation not permitted错误,这是为什么?

    • 请检查您的bucket中,是否包含目录名含有不可见字符的OSS object。文件系统对文件/目录名有更严格的限制,因此会收到上述错误。使用其他工具对这些object重命名后,ls就能正确显示目录内容了。
  • Q: 我的一个目录下有非常多的文件,为什么ls该目录很慢?

    • 假设一个目录下有n个文件,那么ls该目录至少需要n次OSS http requests。在文件非常多的时候,这可能造成严重的性能问题。
    • 您可以采用下面两个办法优化:

      • 通过-omax_stat_cache_size=xxx参数增大stat cache的size,这样第一次ls会较慢,但是后续的ls就快了,因为文件的元数据都在本地cache中。默认这个值是1000,大约消耗4MB内存,请根据您机器内存大小调整为合适的值。
      • 使用ls -f命令,这个命令会消除与OSS的n次http请求。
      • 具体参见issue 13
  • Q: ossfs挂载时如何设置权限?

    • 如果要允许其他用户访问挂载文件夹,可以在运行ossfs的时候指定allow_other参数:

      • ossfs your_bucket your_mount_point -ourl=your_endpoint -o allow_other
    • 为什么使用allow_other参数,仍然不能访问文件?

      • 注意:allow_other是赋予挂载目录其他用户访问的权限,不是里面的文件!如果您要更改文件夹中的文件,请用chmod命令。
    • allow_other默认赋予挂载目录777权限,我想让挂载目录的权限为770,该怎么办?

      • 可以通过umask来设置,参见这里
  • Q:如果要使挂载的文件夹(/tmp/ossfs)属于某个user,则需要以user的身份创建挂载文件夹和使用ossfs:

    • 方法1:

      • 首先通过id命令获得指定用户的uid/gid信息。例如获取www用户的uid/gid信息:id www
      • 然后挂载时指定uid/gid参数:ossfs your_bucket your_mountpoint -ourl=your_url -ouid=your_uid -ogid=your_gid
      • 注意:uid/gid都是数字。
    • 方法2:

      • sudo -u user mkdir /tmp/ossfs
      • sudo -u user ossfs bucket-name /tmp/ossfs
      • 注意:请确保/etc/passwd-ossfs这个文件存在,且权限为640。并且user和该文件的owner在同一个group内。假设/etc/passwd-ossfs的owner属于root这个group,而user不在,您需要将其添加到group中 usermod -g root
  • Q: 我不是root用户,如何umount ossfs挂载的目录

    • fusermount -u your_mountpoint
赞(3)
声明:本网站发布的内容(图片、视频和文字)以原创、转载和分享网络内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。邮箱:[email protected],本站原创内容未经允许不得转载,如需转载,请注明:吾趣阿里云网 » Ossfs常见问题解答
  • 阿里云
    基础型云服务器

    1核CPU

    2G内存

    40G硬盘

    1M带宽

    独立IP

    分布式存储

    适合企业官网、个人站长类网站

    ¥89/1年 原价¥903.40

  • 阿里云
    超值型云服务器

    2核CPU

    4G内存

    40G硬盘

    3M带宽

    独立IP

    分布式存储

    适合企业官网、行业门户类网站

    ¥899/3年 原价¥8281

  • 阿里云
    高性能云服务器

    2核CPU

    8G内存

    40G硬盘

    5M带宽

    独立IP

    分布式存储

    适合电商、数据库等企业级应用

    ¥1399/3年¥14765

评论 抢沙发

评论前必须登录!