开发者社区> 问答> 正文

ossfs 最后一步有点小问题,特来请教


我在启动ossfs的遇到下面的提示
fuse: warning: library too old, some operations may not work(这个错误在帖子底部有官方的解决办法)
这是我的现在环境截图



好像是我在用的是fuse 2.8.3的版本,系统提示我比较老,根据官方的教程,我应该如何具体如何操作。下面的这一句实在不知道怎么做。

  • 例如结果是"/usr/lib/libfuse.so.2",则通过LD_LIBRARY_PATH=/usr/lib ossfs ...运行ossfs  


还有两个图,希望能描述的更明白,自己不懂linux,到底那个在起作用呢?








官方教程

Q: 遇到"fuse: warning: library too old, some operations may not work"怎么办?
出现的原因是:ossfs编译时所使用的libfuse版本 比运行时链接到的libfuse版本高。这往往是用户自行安装了libfuse导致的。使用我们提供的rpm包安装ossfs,无需再安装libfuse。
在CentOS-5.x和CentOS-6.x上我们提供的rpm包里包含了libfuse-2.8.4,如果在运行的时候环境中有libfuse-2.8.3,并且ossfs被链接到了旧版本的fuse上,就会出现上述warning。
  1. 如何确认ossfs运行时链接的fuse版本?
    • 运行ldd $(which ossfs) | grep fuse
    • 例如结果是"/lib64/libfuse.so.2",那么通过ls -l /lib64/libfuse*可以看到fuse的版本
  • 如何让ossfs链接到正确的版本?
    • 首先通过rpm -ql ossfs | grep fuse找到libfuse的目录
    • 例如结果是"/usr/lib/libfuse.so.2",则通过LD_LIBRARY_PATH=/usr/lib ossfs ...运行ossfs

    展开
    收起
    shotlei 2016-09-17 18:52:51 5824 0
    2 条回答
    写回答
    取消 提交回答
    • 感谢您的回复,成功了

      /lib64
      /usr/lib  
      看来默认是 指向 /lib64下面的版本了。
      这两个有什么区别,如何卸载  2.8.3的版本呢,
      这样的换就不用LD_LIBRARY_PATH=/usr/lib 这个命令了
      2016-09-19 20:57:45
      赞同 展开评论 打赏
    • Serverless | Function Compute
      1. 假设你原来的命令是:ossfs my-bucket my-dir -ourl=xxxx,那么你现在要运行的命令是LD_LIBRARY_PATH=/usr/lib ossfs my-bucket my-dir -ourl=xxxx

      2. 如何确认ossfs运行时链接的fuse版本?
      运行ldd $(which ossfs) | grep fuse

      这个结果就是你现在使用的fuse版本
      2016-09-18 09:31:47
      赞同 展开评论 打赏
    问答地址:
    问答排行榜
    最热
    最新

    相关电子书

    更多
    低代码开发师(初级)实战教程 立即下载
    冬季实战营第三期:MySQL数据库进阶实战 立即下载
    阿里巴巴DevOps 最佳实践手册 立即下载