存储设备映射Linux服务器,青云oss对象存储映射至linux服务器

参考资料:

?

?

源码安装

1. 编译要求

GCC 4.1.2 或更高版本

CMake?3.0 或更高版本

?

2. 安装依赖

sudo yum install fuse fuse-devel libcurl-devel openssl-devel

3. 采用CMake编译源码并安装

从 GitHub 仓库?yunify/qsfs-fuse?clone 源码:

git clone https://github.com/yunify/qsfs-fuse.g

建立 build 目录:

cd qsfs-fuse && mkdir bulid && cd bulid

?运行 CMake 命令:

cmake ..

编译并安装

make

make install

查看qsfs是否已生效

[root@ossguazai data_baojunoss]qsfs -V

qsfs version: 1.0.10-1

ok,接下去

1. 配置访问密钥

使用 qsfs,需要有一个配置文件来设置你的访问密钥 (注意需要设置密钥文件的权限为 600)

mkdir /data_baojunoss/key -p

echo YourAccessKeyId:YourSecretKey > /data_baojunoss/key/baojunapi

chmod 600 /data_baojunoss/key/baojunapi

注意

密钥对需到?青云控制台?申请并按如上格式写入到密钥配置文件,请不要遗忘中间的冒号分隔符, 不需要添加引号. 例如:

CUEGWBMEUXIRMZUZDFD:jPZNMvFAuVPhycoRKu252rGjtwpYpihVOy5AWo9S

如果创建密钥文件为默认路径名(/etc/qsfs.cred), 则挂载时不需要指定密钥文件路径.

2. 挂载 Bucket 到本地目录?

mkdir -p /data_baojunoss/ossfile

#前台启动 查看详细的日志, 将日志打印到控制台, 添加 -f -d -U 挂载选项将调试日志和 curl 日志打印到控制台

qsfs baojun /data_baojunoss/ossfile -z=pek3b -c=/data_baojunoss/key/baojunapi -o allow_other -f -d -U

#查看挂载情况

df -T | grep qsfs

qsfs fuse.qsfs 1099511627776 212 1099511627564 1% /data_baojunoss/ossfile

?

后端启动

qsfs baojun /data_baojunoss/ossfile -z=pek3b -c=/data_baojunoss/key/baojunapi -o allow_other

查看挂载情况

df -h

20190404170033620.png

3. 卸载

umount /data_baojunoss/ossfile

4. 测试文件系统操作

?

cd /data_baojunoss/ossfile

mkdir test

5. 配置开机自动挂载 qsfs

第一步,在 /etc/fstab 文件中添加以下命令行并保存:

echo 'qsfs#baojun /data_baojunoss/ossfile fuse _netdev,-z=pek3b,-c=/data_baojunoss/key/baojunapi,allow_other 0 0' >> /etc/fstab

注意

第一项 file system 填写格式为?qsfs#BUCKET_NAME, 其中?BUCKET_NAME?为存储桶名.

在第四项设置 qsfs 挂载选项时需要使用短选项格式,例如?-c?而不是?--credentials?,若配置为默认路径?/etc/qsfs.cred则可不必在命令行中再次设置该选项. 私有云还需要通过?-H?选项配置 host.

?

第二步,执行以下命令验证开机挂载 qsfs 配置的正确性:

mount -a

或者 reoot重启测试一下,ok,结束

注意

配置正确则执行命令后不会有信息提示,可通过如下命令检查是否挂载成功:

> df -Th | grep qsfs

务必确保挂载目录没有被挂载且该目录为空;如果提示如下信息,可能是挂载目录非空或者已经挂载该目录:

fuse: mountpoint is not empty

fuse: if you are sure this is safe, use the 'nonempty' mount option

[qsfs ERROR] Unable to mount qsfs

centos6.5 系统还需要执行以下命令:

> chkconfig netfs on

?

选项列表

short

full

type

required

usage-z

--zone

string

Y

指定 Bucket 所在区域

-c

--credentials

string

N

指定密钥文件路径,默认路径 /etc/qsfs.cred

-l

--logdir

string

N

指定输出日志路径,默认路径?/tmp/qsfs_log/

-L

--loglevel

string

N

指定日志级别 (INFO,WARN,ERROR 或者 FATAL),默认级别 WARN

-F

--filemode

octal

N

指定挂载目录下文件的访问权限位,默认?644

-D

--dirmode

octal

N

指定挂载目录下文件夹的访问权限位,默认?755

-u

--umaskmp

octal

N

指定挂载目录的权限屏蔽字 (umask) ,该选项需要同 fuse 选项 allow_other 一起使用, 默认?0000

-r

--retries

integer

N

指定请求重试次数

-R

--reqtimeout

integer

N

指定请求时限 (秒),默认?30?秒

-Z

--maxcache

integer

N

指定使用内存缓存容量 (MB),默认?200MB

-k

--diskdir

string

N

指定本地缓存路径,确保内存缓存不足时文件缓存成功,默认路径?/tmp/qsfs_cache/

-t

--maxstat

integer

N

指定缓存的元数据最大数量 (K),默认值?20 K

-e

--statexpire

integer

N

指定缓存的元数据失效时限 (分钟),给定小于零的值则元数据永不失效,默认元数据不失效

-i

--maxlist

integer

N

指定 ls 操作时的最大文件数量,给定零值则打印出所有文件信息,默认值为零

-y

--fscap

integer

N

指定文件系统容量 (GB), 默认值?1 PB

-n

--numtransfer

integer

N

指定文件传输时并行传输数,当需要传输大文件时可以增加该值,默认值?5

-b

--bufsize

integer

N

指定文件传输时每单个传输的缓存空间 (MB),该值必须大于 8MB,默认值?10 MB

-j

--prefetchsize

integer

N

指定文件预读最大尺寸 (MB), 默认值?20 MB

-H

--host

string

N

指定 host name,默认值?qingstor.com

-p

--protocol

string

N

指定 protocol,默认值?https

-P

--port

integer

N

指定 port,默认值?443?(https) 或?80?(http)

-J

--prefetch

bool

N

开启预读

-m

--contentMD5

bool

N

开启 MD5 校验保证数据完整性

-K

--keeplogdir

bool

N

开启在启动时不清除日志目录

-C

--nodatacache

bool

N

开启清理文件数据缓存

-f

--forground

bool

N

开启前台模式,将日志打印到控制台并开启 FUSE 前台模式

-s

--single

bool

N

开启 FUSE 单线程开关

-d

--debug

bool

N

开启 debug 模式

-g

--fusedbg

bool

N

开启 FUSE debug

-U

--curldbg

bool

N

开启 curl 日志

-h

--help

bool

N

打印 qsfs 帮助

-V

--version

bool

N

打印 qsfs 版本

你也可以通过?-o opt [,opt...]?指定 FUSE 特定的挂载选项比如 nonempty,allow_other 等。 详情请参见 FUSE 文档。

帮助

可以通过 -h 参数打印简易帮助文件:

> qsfs -h

?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值