挂载ossfs:阿里云oss

安装包下载地址:https://help.aliyun.com/document_detail/153892.htm?spm=a2c4g.11186623.2.6.18e67a74yiPNtQ#concept-kkp-lmb-wdb

1.下载安装包。以下载CentOS 7.0 (x64)版本为例:

wget http://gosspublic.alicdn.com/ossfs/ossfs_1.80.6_centos7.0_x86_64.rpm

2.安装ossfs。

sudo yum install ossfs_1.80.6_centos7.0_x86_64.rpm

3.配置账号访问信息。将Bucket名称以及具有此Bucket访问权限的AccessKey ID和AccessKey Secret信息存放在/etc/passwd-ossfs文件中。注意这个文件的权限必须正确设置,建议设为640。

echo bucket名字:KeyId:KeySecret > /etc/passwd-ossfs chmod 640 /etc/passwd-ossfs

4.将Bucket挂载到指定目录。

#创建/目录
mkdir /tmp/ossfs
#ossfs 你的bucket名字 挂载目录 -ourl=你的阿里云的访问网址
ossfs bucket-test /tmp/ossfs -o url=http://oss-cn-hangzhou.aliyuncs.com
如果挂载在非空目录需在ossfs后加入-ononempty命令
如需添加所以人可访问需在最后加-ononempty命令

5.如果您不希望继续挂载此Bucket,您可以将其卸载。

fusermount -u /tmp/ossfs

  • 挂载指定文件目录

ossfs除了可以把整个存储空间挂载到本地文件系统外,还可以通过设置前缀,把存储空间下的某个文件目录挂载到本地文件系统。命令格式如下:

ossfs bucket:/prefix mount_point -ourl=endpoint

通过这个方式挂载时,需要确保存储空间里存在${prefix}/ 这样一个对象。可以通过ossutil的stat命令查询该对象是否存在。示例:将位于杭州地域的存储空间bucket-ossfs-test下的folder目录挂载到/tmp/ossfs-folder下。

ossfs bucket-ossfs-test:/folder /tmp/ossfs-folder -ourl=http://oss-cn-hangzhou.aliyuncs.com
  • 开机自动挂载目录
  1. 将Bucket名称、AccessKeyID、AccessKeySecret等信息写入/etc/passwd-ossfs文件,并将文件权限修改为640。配置步骤请参见快速安装
  2. 设置开机自动挂载。针对不同的系统版本,设置开机自动挂载ossfs的方式有所不同。
    • Ubuntu 14.04和CentOS 6.5系统版本通过fstab的方式自动挂载
      1. 在/etc/fstab中加入如下命令:ossfs#bucket_name mount_point fuse _netdev,url=url,allow_other 0 0
      2. 保存/etc/fstab文件。执行mount -a命令,如果没有报错,则说明设置正常。
      3. 上一步执行完成后,Ubuntu 14.04就能自动挂载了。CentOS 6.5还需要执行如下命令:chkconfig netfs on
    • CentOS 7.0及以上的系统通过开机自动启动脚本进行挂载
      1. 在/etc/init.d/目录下建立文件ossfs,将模板文件中的内容拷贝到这个新文件中。并将其中的your_xxx内容改成您自己的信息。
      2. 为新建立的ossfs脚本赋予可执行权限:chmod a+x /etc/init.d/ossfs命令执行完成后,您可以尝试执行该脚本,如果脚本文件内容无误,那么此时OSS中的Bucket已经挂载到您指定的目录下了。
      3. 把ossfs启动脚本作为其他服务,开机自动启动:chkconfig ossfs on
      4. 执行上述步骤后,ossfs就可以开机自动挂载了。
  • 使用Supervisor启动ossfs

Supervisor是用Python开发的一套通用的进程管理程序,能将一个普通的命令行进程变为后台daemon,并监控进程状态。异常退出时能自动重启。使用Supervisor启动ossfs的步骤如下:

  1. 安装supervisor。
    • CentOS系统yum install supervisor
    • Ubuntu系统sudo apt-get install supervisor
  2. 创建ossfs的启动脚本。
    1. 创建start_ossfs.sh文件。mkdir /root/ossfs_scripts vi /root/ossfs_scripts/start_ossfs.sh
    2. 写入启动脚本。# 卸载 fusermount -u /mnt/ossfs # 重新挂载,必须要增加-f参数运行ossfs,让ossfs在前台运行。 exec ossfs bucket_name mount_point -ourl=endpoint -f
  3. 编辑/etc/supervisor/supervisord.conf文件,在最后加入如下内容:[program:ossfs] command=bash /root/ossfs_scripts/start_ossfs.sh logfile=/var/log/ossfs.log log_stdout=true log_stderr=true logfile_maxbytes=1MB logfile_backups=10
  4. 运行Supervisor。supervisord
  5. 确认运行正常。ps aux | grep supervisor # 应该能看到Supervisor进程。 ps aux | grep ossfs # 应该能看到ossfs进程。 kill -9 ossfs # 关闭ossfs进程,Supervisor应该会重启它。不要使用killall,因为killall发送SIGTERM,进程正常退出,Supervisor不再去重新运行ossfs。 ps aux | grep ossfs # 应该能看到ossfs进程。
点赞

发表回复

电子邮件地址不会被公开。必填项已用 * 标注