付费下载订单状态查询链接:点此

如何用KodExplorer(可道云)实现阿里云OSS的Web管理

学习 墨染辉夜 7145℃ 5评论

目前,KodExplorer可道云保存在物理路径,第三方存储(分布式存储,如自建HDFS,或阿里oss,七牛cdn等)则为数据库记录;目前本地的不保存到数据库,以保留物理目录结构的优势——方便客户端同步、第三方软件接入、易于迁移等特性。后续会增加数据库功能,用户可根据自己需求加以选择。

虽然官方有说会在后续版本加入数据库功能,可鬼知道要拖到什么时候= =

由于没有数据库,KodExplorer本身并不支持第三方云储存,所以我们需要将oss挂载到本地才能实现。

如何挂载OSS

阿里云官方给用户提供了ossfs来实现此功能

什么是ossfs

ossfs 能让您在Linux系统中把OSS bucket 挂载到本地文件系统中,您能够便捷地通过本地文件系统操作OSS 上的对象,实现数据的共享。

换句话说就是你能像使用本地磁盘一样使用OSS。

安装ossfs

安装过程不细讲,详细安装过程官方有,这里只讲一般情况安装。

由于低版本的Linux发行版本内核版本比较低,ossfs进程在运行过程中容易出现掉线或者其他问题,因此建议用户将操作系统升级到CentOS 7.0或者Ubuntu 14.04以及以上版本。

ossfs v1.80.5安装

CentOS 7.0以上一键安装命令

配置文件

安装成功后,设置bucket name, access key/id信息,将其存放在/etc/passwd-ossfs 文件中, 注意这个文件的权限必须正确设置,建议设为640。如果不使用默认的文件路径,文件权限建议设置为600。

以上 my-access-key-id 改成你在阿里云授权OSS控制权限的Access ID; my-access-key-secret  改成相应的Access Key Secret

如果你没有AccessKey,请参考https://help.aliyun.com/product/28625.html?spm=a2c4g.11186623.3.1.HJpkQC申请

开始挂载

注意

请要使得KodExplorer有权限访问挂载的文件夹,必须加上 allow_other参数

将oss bucket 挂载到指定目录

以上 my-bucket 改成你要挂载的bucket的名称, my-mount-point 改成你挂载到的指定目录(绝对地址), my-oss-endpoint 改成OSS控制台下对应的EndPoint,同一地域下的OSS和ECS可以用内网EndPoint来避免流量收费和提高速度。

挂载示例

my-bucket 这个bucket挂载到/tmp/ossfs目录下,AccessKeyId是 faint , AccessKeySecret是 123 ,oss endpoint是 oss-cn-hangzhou.aliyuncs.com

如何开机自动挂载

默认开机不自动挂载,需要手动。

接下来针对不同的系统版本,设置方式有所不同

通过fstab的方式自动mount(适用于ubuntu14.04, centos6.5)

在/etc/fstab中加入下面的命令

保存/etc/fstab文件。执行 mount -a 命令,如果没有报错,则说明设置正常。

到这一步,ubuntu14.04就能自动挂载了。centos6.5还需要执行下面的命令:

通过开机自启动脚本mount(适用于centos7.0及以上的系统)

在/etc/init.d/目录下建立文件ossfs,把模板文件中的内容拷贝到这个新文件中。并将其中的your_xxx内容改成您自己的信息。

执行命令: chmod a+x /etc/init.d/ossfs

上述命令是把新建立的ossfs脚本赋予可执行权限。您可以执行该脚本,如果脚本文件内容无误,那么此时oss中的bucket已经挂载到您指定的目录下了。

执行命令: chkconfig ossfs on

上述命令是把ossfs启动脚本作为其他服务,开机自动启动。

好了,现在ossfs就可以开机自动挂载了。

挂载完成后

挂载完成后就没什么事情了,如果你使用KodExplorer可以正常访问OSS,那么恭喜你,大功告成了。

如果在挂载过程中有任何问题,请在下方评论区留言或者联系我解决,喜欢请点赞支持,谢谢~

最后实在闲得无聊附上一段阿里云官方的OSS宣传片

我的文章对您有帮助吗?
支付宝免费打赏
现在支付宝超抠门的,红包只给一两毛钱了
手机打赏 (12)
发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
(5)个小伙伴在吐槽
  1. 感谢楼主分享!可道云正在开发新版本,未来会支持多种对象存储的挂载,用户可以直接预览和管理对象存储中的文件。欢迎关注我们的新版本。
    Tony2019-04-12 16:35 回复
  2. 您好,感谢博主的分享,我是CentOS 7.4x64,所有操作我用root用户操作的,我在这个步骤遇到问题,第一次ossfs挂载到一个错误的目录(我的网站使用了宝塔控制面板,宝塔统一使用了www这个用户来维护网站),结果可道云没权限访问,为了避免私自修改造成宝塔的安全设置出现问题,我重新挂载OSS到可道云安装目录里面,结果发现第二次挂载没看到文件,使用ls提示“reading directory .: Input/output error” 根据OSS的文档,我用fusermount -u 命令卸载后重新挂载,结果依旧,现在不知道咋整
    、丶丶、2018-09-17 17:29 回复
    • 很抱歉,到现在才看到你的评论,你可以试着将挂载目录权限设为777
      墨染辉夜站长2018-09-25 22:53 回复
    • 这个方法oss上有大量请求,我刚弄好nextcloud就出现了几十万请求,然后nextcloud速度太慢了。你这个绝对的权限问题。 ossfs xxxx /home/mydata/ossfs -ourl=http://oss-cn-hongkong.aliyuncs.com -o umask=007 -o allow_other -ouid=1002 -ogid=1003 -o allow_other 这个参数搞定的,uid ,gid自己命令查,该改的自己替换。 nextcloud的话,权限改777解决不了,可道云可以看看。可道云要挂ossfs直接放弃了。我现在抵制这个东西。 现在只考虑后台支持,或者插件支持的。
      aki2018-12-07 23:14 回复