centos7上部署文件系统FastDFs

本文详细指导如何在Linux环境中安装FastDFS,包括libfastcommon、fastdfs和fastdfs-nginx-module,配置Tracker和Storage服务,以及客户端的使用,适合快速搭建文件上传下载系统。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

FastDFS是用c语言编写的一款开源的分布式文件系统。FastDFS为互联网量身定制,充分考虑了冗余备份、负载均衡、线性扩容等机制,并注重高可用、高性能等指标,使用FastDFS很容易搭建一套高性能的文件服务器集群提供文件上传、下载等服务。
 直接通过 Github:https://github.com/happyfish100 下载 libfastcommon,fastdfs,fastdfs-nginx-module 三个项目对应的压缩包或者使用 git 命令下载,或者通过资源地址:https://sourceforge.net/projects/fastdfs/files/ 下载。
libfastcommon:从 fastdfs 项目和 fastdht 项目中提取出来的公共 C 函数库。fastdfs:FastDFS 核心项目。
fastdfs-nginx-module:Nginx 整合 FastDFS 时 Nginx 需要添加的模块资源。

详细可见:https://www.lhwblog.top/archives/126/

准备:
安装c环境
yum install -y make cmake gcc -c++
安装解压工具
yum install -y unzip
通过Xftp工具上传文件(libfastcommon,fastdfs,fastdfs-nginx-module)至至/usr/local/src 目录后并解压。
unzip libfastcommon-master.zip

编译并安装。
进入解压后的 libfastcommon-master 目录
== cd libfastcommon-master ==
#编译并安装
./make.sh && ./make.sh install

libfastcommon 默认安装在 /usr/lib64 和 /usr/include/fastcommon 两个目录中,并且会在 /usr/lib 目录中创建软链接。
解压
解压 fastdfs 至当前所在目录unzip fastdfs-master.zip
进入解压后的 libfastcommon-master 目录 cd fastdfs-master # 编译并安装 ./make.sh && ./make.sh install
启动Tracker
查看 /etc/fdfs 目录下所有配置文件。
在这里插入图片描述

编辑 tracker.conf 配置文件。
vi /etc/fdfs/tracker.conf

允许访问 tracker 服务器的 IP 地址,为空则表示不受限制
bind_addr =
tracker 服务监听端口
port = 22122
tracker 服务器的运行数据和日志的存储父路径(需要提前创建好)
base_path = /fastdfs/tracker
tracker 服务器 HTTP 协议下暴露的端口
http.server_port = 8080
 启动 tracker 服务
 # 创建 tracker 服务器的运行数据和日志的存储父路径
mkdir -p /fastdfs/tracker

启动 tracker 服务
service fdfs_trackerd start
查看 tracker 服务状态
service fdfs_trackerd status
重启 tracker 服务
service fdfs_trackerd restart
停止 tracker 服务
service fdfs_trackerd stop

启动storage服务
 编辑 storage.conf 配置文件
 拷贝文件 storage.conf.sample 并重命名为 storage.conf
cp /etc/fdfs/storage.conf.sample /etc/fdfs/storage.conf
编辑 storage.conf 配置文件
vi /etc/fdfs/storage.conf

storage 组名/卷名,默认为 group1
group_name = group1

允许访问 storage 服务器的 IP 地址,为空则表示不受限
bind_addr =
storage 服务器的运行数据和日志的存储父路径(需要提前创建好)
base_path = /fastdfs/storage/base
storage 服务器中客户端上传的文件的存储父路径(需要提前创建好)
store_path0 = /fastdfs/storage/store
storage 服务器 HTTP 协议下暴露的端口
http.server_port = 8888
#tracker 服务器的 IP 和端口
tracker_server = 192.168.10.101:22122

启动
创建 storage 服务器的运行数据和日志的存储父路径
mkdir -p /fastdfs/storage/base
创建 storage 服务器中客户端上传的文件的存储父路径
mkdir -p /fastdfs/storage/store
#启动 storage 服务
service fdfs_storaged start
#查看 storage 服务状态
service fdfs_storaged status
#重启 storage 服务
service fdfs_storaged restart
停止 storage 服务
service fdfs_storaged stop

查看 /fastdfs/storage/store 目录可以看到 Storage 服务器创建了 65536 个文件夹用于存储客户端上传的文件。

在这里插入图片描述

Client操作:
 FastDFS 向使用者提供基本文件访问接口,比如 upload、download、append、delete 等,以客户端库的方式提供给用户使用。

在 Tracker 服务器的机器上编辑 tracker.conf 配置文件。
#拷贝文件 client.conf.sample 并重命名为 client.conf
cp /etc/fdfs/client.conf.sample /etc/fdfs/client.conf
#编辑 client.conf 配置文件
vi /etc/fdfs/client.conf

修改内容
client 客户端的运行数据和日志的存储父路径(需要提前创建好)
base_path = /fastdfs/client

tracker 服务器的 IP 和端口
tracker_server = 192.168.10.101:22122

mkdir -p /fastdfs/client 创建 Client 目录。
测试:
上传
上传命令格式为:fdfs_upload_file /etc/fdfs/client.conf 要上传的文件
下载
下载命令格式为:fdfs_download_file /etc/fdfs/client.conf group_name/remote_filename。

如:

fdfs_test /etc/fdfs/client.conf download group1 M00/00/00/wKgKZl9smB-AVBRKAADhaCZ_RF0518.jpg

删除
 删除命令格式为:fdfs_delete_file /etc/fdfs/client.conf 要删除的文件。
 如:fdfs_delete_file /etc/fdfs/client.conf group1/M00/00/00/wKgKZl9smB-AVBRKAADhaCZ_RF0518.jpg

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

GAME LIAO

感谢您的支持

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值