网站背景图
博主

10月12日在线

技术资料日志录

提供加速/存储服务

桂ICP备20004815号

网站已运行 5 年 219 天 3 小时 8 分

Powered by Typecho & Sunny

8 online · 761 ms

Title

Debian安装COSFS

Abin

·

技术技巧

·

Article
⚠️ 本文最后更新于2024年06月27日,已经过了490天没有更新,若内容或图片失效,请留言反馈

功能说明

COSFS 工具支持将对象存储(Cloud Object Storage,COS)存储桶挂载到本地,像使用本地文件系统一样直接操作腾讯云对象存储中的对象, COSFS 提供的主要功能包括:

  • 支持 POSIX 文件系统的大部分功能,如:文件读写、目录操作、链接操作、权限管理、uid/gid 管理等功能。
  • 大文件分块传输功能。
  • MD5 数据校验功能。
  • 将本机数据上传至 COS,建议使用 COS Migration 工具COSCMD 工具

局限性

COSFS 基于 S3FS 构建, 读取和写入操作都经过磁盘中转,仅适合挂载后对文件进行简单的管理,不支持本地文件系统的一些功能用法,性能方面也无法代替云硬盘 CBS 或文件存储 CFS。 需注意以下不适用的场景,例如:

  • 随机或者追加写文件会导致整个文件的下载以及重新上传,您可以使用与 Bucket 在同一个地域的 CVM 加速文件的上传下载。
  • 多个客户端挂载同一个 COS 存储桶时,依赖用户自行协调各个客户端的行为。例如避免多个客户端写同一个文件等。
  • 文件/文件夹的 rename 操作不是原子的。
  • 元数据操作,例如 list directory,性能较差,因为需要远程访问 COS 服务器。
  • 不支持 hard link,不适合高并发读/写的场景。
  • 不可以同时在一个挂载点上挂载、和卸载文件。您可以先使用 cd 命令切换到其他目录,再对挂载点进行挂载、卸载操作。

安装方式

查阅COSFS官方文档我们得知其支持主流的 Ubuntu、CentOS、SUSE、macOS 系统,也并未列出Debian的安装教程,所以本教程安装方式是将ubuntu系统的包安装在Debian系统上!

1.到COSFS发布地址找到最新版本软件下载链接

♾️ text 代码:
wget +url

2.安装

♾️ text 代码:
sudo dpkg -i cosfs_X.X.X-ubuntuXX.XX_amd64.deb

说明:

如果安装时报错,提示conflicts with file from package fuse-libs-*,则加--force参数再次安装。

使用方法

1. 配置密钥文件

在文件/etc/passwd-cosfs中,写入您的存储桶名称(格式为 BucketName-APPID),以及该存储桶对应的 ,三项之间使用半角冒号隔开。为了防止密钥泄露,COSFS 要求您将密钥文件的权限值设置为640,配置/etc/passwd-cosfs密钥文件的命令格式如下:

♾️ shell 代码:
# 切换到 root 身份,以修改 /etc/passwd-cosfs 文件;如果已经为 root 用户,无需执行该条命令。
sudo su
echo <BucketName-APPID>:<SecretId>:<SecretKey> > /etc/passwd-cosfs
chmod 640 /etc/passwd-cosfs
  • 为存储桶名称
  • 为密钥信息
  • 您也可以将密钥配置在文件 $HOME/.passwd-cosfs 中,或通过 -opasswd_file=[path] 指定密钥文件路径,同时您需要将密钥文件的权限值设置为600。

2.确认是否是通过内网访问COS

nslookup cos.ap-guangzhou.myqcloud.com

腾讯云对象存储 COS 的访问域名使用了智能 DNS 解析,通过互联网在不同的运营商环境下,会检测并指向最优链路供您访问 COS。

如果在腾讯云内部署了服务用于访问 COS,则同地域范围内访问将会自动被指向到内网地址。

跨地域暂不支持内网访问,默认将会解析到外网地址可以在后台nslookup/dig测试,确认是通过内网访问COS

内网访问判断方法 相同地域内腾讯云产品访问,将会自动使用内网连接,产生的内网流量不计费。因此选购腾讯云不同产品时,建议尽量选择相同地域,减少费用。确认是否内网访问请参考如下方法:以腾讯 CVM 访问 COS 为例,判断是否使用内网访问 COS ,可以在 CVM 上 使用nslookup命令解析 COS 域名,若返回内网 IP,则表明 CVM 和 COS 之间是内网访问,否则为外网访问。说明:内网 IP 地址一般形如10. .. 、100.. . ,VPC 网络一般为169.254. . 等,这两种形式的 IP 都属于内网如图所示169.254.0.47为内网IP

3.使用cosfs命令手动挂载对象

将已经在密钥文件中配置好信息的存储桶挂载到指定目录,可以使用如下命令行进行手动挂载:

♾️ text 代码:
cosfs <BucketName-APPID> <MountPoint> -ourl=<CosDomainName> -odbglevel=info -oallow_other
  • 为本地挂载目录(例如/mnt)
  • 为存储桶对应的访问域名,形式为http://cos..myqcloud.com (适用于 XML API,请勿在该参数中携带存储桶名称),其中 为地域简称, 例如 ap-guangzhou 、 ap-shanghai 等
  • -odbglevel 指定日志级别
  • -oallow_other 允许非挂载用户访问挂载文件夹
♾️ text 代码:
mkdir /COSFS_Storage

cosfs handsome /COSFS_Storage -ourl=http://cos.ap-guangzhou.myqcloud.com -odbglevel=info -oallow_other
#验证挂载是否成功 拷贝一个文件到COS存储目录中
df -PTh 

4.通过iftop观察实时流量

♾️ text 代码:
iftop -i eth0 -N -n -m 10m -P

拷贝一个文件到COS存储目录中

可以用iftop观察实时流量

查看流量可以看到走的是内网流量

5.卸载存储桶

•方式1:fusermount -u /mnt, fusermount 命令专用于卸载 FUSE 文件系统

•方式2:umount -l /mnt, 当有程序引用文件系统中文件时,进行卸载不会报错,并在没程序引用时完成卸载

•方式3:umount /mnt, 当有程序引用文件系统中的文件时,进行卸载会报错

♾️ text 代码:
fusermount -u /COSFS_Storage df -PTh 
现在已有 147 次阅读,0 条评论,0 人点赞
Comment:共0条
发表
搜索 消息 足迹
你还不曾留言过..
你还不曾留下足迹..
博主 不再显示
博主
未知作品 歌曲封面
博主 立即安装
前往评论 切换字号