linux怎么安装fastdfs?fastdfs安装教程

在 Linux 系统中安装 FastDFS 是一个相对复杂的过程,因为它由多个组件组成(Tracker 服务器、Storage 服务器、Nginx 模块等)。

以下是基于 CentOS/RHEL 7/8 或 Ubuntu 的完整安装指南,我们将使用源码编译安装,这是最通用且可控的方式。

这可能是B站最好的FastDFS教程 --分布式文件系统FastDFS入门到实战视频精讲
加载中
这可能是B站最好的FastDFS教程 --分布式文件系统FastDFS入门到实战视频精讲

📌 前置准备

  1. 系统要求:Linux 服务器(建议 CentOS 7+ 或 Ubuntu 18.04+)。
  2. 依赖包:FastDFS 依赖 libfastcommon 和 libevent。
  3. 权限:需要使用 root 用户或具有 sudo 权限的用户。

第一步:安装依赖库

FastDFS 依赖于 libfastcommon,这是 FastDFS 的底层 C 库。

# 1. 安装编译工具和依赖
yum install -y gcc gcc-c++ make automake autoconf libtool pcre pcre-devel zlib zlib-devel openssl-devel wget
# 2. 下载并安装 libfastcommon
cd /usr/local/src
wget https://github.com/happyfish100/libfastcommon/archive/refs/heads/master.zip
unzip master.zip
cd libfastcommon-master
# 3. 编译安装
./make.sh
./make.sh install
# 注意:libfastcommon 默认安装在 /usr/lib64/libfastcommon.so
# 但 FastDFS 可能在 /usr/lib 下查找,需要建立软链接(针对 64 位系统)
ln -s /usr/lib64/libfastcommon.so /usr/local/lib/libfastcommon.so
ln -s /usr/lib64/libfastcommon.so /usr/lib/libfastcommon.so
ln -s /usr/lib64/libfdfsclient.so /usr/local/lib/libfdfsclient.so
ln -s /usr/lib64/libfdfsclient.so /usr/lib/libfdfsclient.so

第二步:安装 FastDFS 核心服务

下载 FastDFS

cd /usr/local/src
wget https://github.com/happyfish100/fastdfs/archive/refs/heads/master.zip
unzip master.zip
cd fastdfs-master

编译安装

./make.sh
./make.sh install

安装完成后,配置文件默认在 /etc/fdfs/ 目录下。

配置 Tracker 服务

# 复制示例配置文件
cp /etc/fdfs/tracker.conf.sample /etc/fdfs/tracker.conf
# 编辑配置文件
vi /etc/fdfs/tracker.conf

关键修改项:

# 修改存储路径(确保目录存在)
base_path=/data/fastdfs/tracker
# 端口(默认 22122,一般无需修改)
port=22122

创建目录并启动 Tracker:

linux怎么安装fastdfs?fastdfs安装教程

mkdir -p /data/fastdfs/tracker
# 启动 Tracker
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf start
# 设置开机自启(可选)
chkconfig fdfs_trackerd on

配置 Storage 服务

# 复制示例配置文件
cp /etc/fdfs/storage.conf.sample /etc/fdfs/storage.conf
# 编辑配置文件
vi /etc/fdfs/storage.conf

关键修改项:

# 修改存储路径
base_path=/data/fastdfs/storage
# 修改 store_path0 路径
store_path0=/data/fastdfs/storage/files
# 修改 tracker_server 地址(指向 Tracker 服务器 IP)
tracker_server=192.168.1.100:22122
# HTTP 端口(默认 8888,用于后续 Nginx 访问)
http.server_port=8888

创建目录并启动 Storage:

mkdir -p /data/fastdfs/storage/files
# 启动 Storage
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf start
# 设置开机自启
chkconfig fdfs_storaged on

注意:如果你的服务器既是 Tracker 又是 Storage,需要在同一台机器上配置两个服务。


第三步:配置 Nginx 访问(可选但推荐)

FastDFS 本身不提供 HTTP 访问,需要配合 nginx-fastdfs-module 来实现通过浏览器访问文件。

下载并编译 Nginx 模块

cd /usr/local/src
wget https://github.com/happyfish100/fastdfs-nginx-module/archive/refs/heads/master.zip
unzip master.zip
# 下载 Nginx 源码
wget http://nginx.org/download/nginx-1.20.1.tar.gz
tar -zxvf nginx-1.20.1.tar.gz
cd nginx-1.20.1

编译 Nginx(添加模块)

# 先安装 Nginx 依赖
yum install -y pcre pcre-devel zlib zlib-devel openssl openssl-devel
# 配置编译参数(注意路径替换为你的实际路径)
./configure 
--prefix=/usr/local/nginx 
--add-module=/usr/local/src/fastdfs-nginx-module/src
# 编译并安装
make
make install

配置 Nginx 模块

# 复制模块配置文件
cp /usr/local/src/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/
# 编辑配置文件
vi /etc/fdfs/mod_fastdfs.conf

关键修改项:

# 连接超时时间
connect_timeout=10
# Tracker 服务器地址
tracker_server=192.168.1.100:22122
# Storage 存储路径(必须与 storage.conf 中的 store_path0 一致)
store_path0=/data/fastdfs/storage/files
# 是否跟随 URL 中的 group 名称
url_have_group_name=true
# 文件组数量(通常只有一个组 group1)
group_count=1

linux怎么安装fastdfs?fastdfs安装教程

在 group_count=1 下方添加:

[group1]
group_name=group1
storage_server_port=23000
store_path_count=1
store_path0=/data/fastdfs/storage/files

配置 Nginx 主配置文件

vi /usr/local/nginx/conf/nginx.conf

在 http 块中添加:

server {
    listen 80;
    server_name localhost;
    location /group1/M00 {
        root /data/fastdfs/storage/files/data;
        ngx_fastdfs_module;
    }
}

启动 Nginx

/usr/local/nginx/sbin/nginx
# 测试配置
/usr/local/nginx/sbin/nginx -t

第四步:测试上传

使用 FastDFS 提供的测试客户端 fdfs_test 进行上传测试。

# 编辑客户端配置
vi /etc/fdfs/client.conf

修改项:

base_path=/data/fastdfs/tracker
tracker_server=192.168.1.100:22122

执行上传测试:

# 准备一个测试文件
echo "Hello FastDFS" > /tmp/test.txt
# 上传文件
/usr/bin/fdfs_test /etc/fdfs/client.conf upload /tmp/test.txt

成功输出示例:

This is FastDFS client test program v6.06
Copyright (C) 2008, Happy Fish / YuQing
FastDFS may be copied only under the terms of the GNU General
Public License V3, which may be found in the FastDFS source kit.
Please visit the FastDFS Home Page http://www.csource.org/
for more detail.
[2026-10-27 10:00:00] DEBUG - base_path=/data/fastdfs/tracker, connect_timeout=30, network_timeout=60, tracker_server_count=1, anti_steal_token=0, anti_steal_secret_key length=0, use_connection_pool=0, g_connection_pool_max_idle_time=3600s, use_storage_id=0, storage server id count: 0
tracker_query_storage_store_list_without_group:
        server 1. group_name=, ip_addr=192.168.1.100, port=23000
group_name=group1, ip_addr=192.168.1.100, port=23000
storage_upload_by_filename
group_name=group1, remote_filename=M00/00/00/wKh3gG8x1Y-ABcDdAAABBBCCCDDD.txt
source ip address: 192.168.1.100
file time

linux怎么安装fastdfs?fastdfs安装教程

stamp=2026-10-27 10:00:00 file size=13 file crc32=123456789 example file url: http://192.168.1.100/group1/M00/00/00/wKh3gG8x1Y-ABcDdAAABBBCCCDDD.txt storage_upload_slave_by_filename group_name=group1, remote_filename=M00/00/00/wKh3gG8x1Y-ABcDdAAABBBCCCDDD_big.txt source ip address: 192.168.1.100 file timestamp=2026-10-27 10:00:00 file size=13 file crc32=123456789 example file url: http://192.168.1.100/group1/M00/00/00/wKh3gG8x1Y-ABcDdAAABBBCCCDDD_big.txt

访问测试:
在浏览器中访问:
http://192.168.1.100/group1/M00/00/00/wKh3gG8x1Y-ABcDdAAABBBCCCDDD.txt

如果能看到 “Hello FastDFS”,说明安装成功!


✅ 常见问题排查

  1. 防火墙问题:
    确保开放以下端口:

    • Tracker: 22122
    • Storage: 23000
    • Nginx: 80 或 8888
      firewall-cmd --zone=public --add-port=22122/tcp --permanent
      firewall-cmd --zone=public --add-port=23000/tcp --permanent
      firewall-cmd --zone=public --add-port=80/tcp --permanent
      firewall-cmd --reload
  2. SELinux 问题:
    如果上传失败,可能是 SELinux 阻止,临时关闭测试:

    setenforce 0

    如果解决,建议永久关闭或配置 SELinux 策略。

  3. 路径权限:
    确保 /data/fastdfs/ 目录对运行 FastDFS 的用户(通常是 root 或 fastdfs)有读写权限。

  4. 日志查看:
    如果出错,查看日志:

    • Tracker 日志:/data/fastdfs/tracker/logs/trackerd.log
    • Storage 日志:/data/fastdfs/storage/logs/storaged.log

组件 默认端口 配置文件路径
Tracker 22122 /etc/fdfs/tracker.conf
Storage 23000 /etc/fdfs/storage.conf
Nginx 80/8888 /usr/local/nginx/conf/nginx.conf
Client /etc/fdfs/client.conf

安装完成后,建议将 FastDFS 服务加入系统服务管理,以便重启服务器后自动启动。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://test.idctop.com/article/486010.html

赞 (0)
linux中ssh和sftp有什么区别?ssh和sftp有什么区别
上一篇 2026年7月12日 08:51
RackNerd六月美国VPS怎么买最划算?美国便宜VPS推荐
下一篇 2026年7月12日 08:51

相关推荐

  • 安全性能如何优化?安全性能优化最佳实践方案

    在数字化转型的浪潮中,网站与应用的安全性能已成为企业生存发展的生命线,核心结论在于:安全与性能并非零和博弈,而是相辅相成的统一体;通过架构层面的深度融合与精细化治理,完全可以实现“安全且高速”的双重目标,这需要我们在{安全性能_性能优化与安全类实践}中寻找最佳平衡点, 顶层设计:安全与性能的协同演进传统观念常误……

    2026年4月5日
    8400
  • ddr3服务器内存功耗一般是多少

    DDR3服务器内存的单条功耗通常在3-5瓦之间,具体取决于频率、电压和容量,其中1.5V标准版和1.35V低电压版(DDR3L)的功耗差异可达30%以上,影响DDR3服务器内存功耗的核心因素聊到DDR3服务器内存的功耗,不能单纯看一个数字,它受多个硬件参数共同作用,理解这些因素,才能在实际部署中精准控制能耗,工……

    2026年8月13日
    100
  • 轻量应用服务器5M带宽支持多少人?,服务器带宽多少合适

    轻量应用服务器5M带宽在常规优化下,理论上能支持约100-200人同时在线,具体取决于页面大小、应用类型和缓存策略,核心因素:带宽与并发用户的关系要理解5M带宽能支撑多少访问量,首先需要明确服务器带宽的性质,带宽单位Mbps(兆比特每秒)与我们日常说的下载速度MB/s(兆字节每秒)不同,换算关系是1Mbps……

    2026年7月26日
    1200
  • 一台服务器能做多少个raid

    一台服务器能做的RAID数量没有固定上限,它取决于服务器的物理硬盘位、RAID卡型号和阵列模式,而非单个数字,在主流2U/4U机架式服务器中,常见配置是支持1到8个独立RAID阵列;而大规模存储服务器通过扩展柜,理论上可创建几十个或上百个逻辑磁盘组,软硬件的边界:什么决定了RAID数量上限很多人误以为RAID数……

    2026年8月24日
    000
  • 安卓如何进行机器学习?安卓界面及windows相关

    在安卓设备上运行机器学习模型,核心在于利用TensorFlow Lite或PyTorch Mobile将训练好的模型量化并转换为轻量级格式,结合Android Studio进行本地部署,从而实现低延迟、高隐私保护的端侧智能体验,随着移动芯片算力的飞跃,将AI能力下沉到终端已成为行业共识,过去,用户习惯将数据上传……

    2026年6月1日
    4500
  • 服务器邮件怎么同步到客户端,怎么设置租户邮件服务器

    服务器邮件同步到客户端的核心在于正确配置同步协议与服务器参数,租户邮件服务器设置则需完成域名绑定、MX记录解析及客户端自动发现配置,两者结合才能实现稳定双向同步,邮件同步协议选型:IMAP、POP3 与 Exchange选择哪种协议直接决定服务器邮件怎么同步到客户端,不同协议在同步方向、多设备支持和本地存储策略……

    2026年8月4日
    800
  • ION cloud两周年八折多少钱?VPS推荐高性价比

    Krypt子品牌ION cloud两周年庆典期间,圣何塞与新加坡CN2 GIA线路服务器均享八折优惠,年付价格低至$336起,是追求低延迟与高稳定性的优质选择,在服务器租赁市场,价格波动与线路质量往往是用户最纠结的两个点,对于需要连接海外业务,尤其是面向北美或东南亚市场的用户来说,CN2 GIA线路几乎是绕不开……

    2026年6月30日
    2300
  • Linux怎么编辑SVG,编辑工具有哪些?

    Linux环境下处理SVG并非难事,借助Inkscape、SVGO等工具,你可以高效完成编辑、优化和批量转换,Linux下SVG编辑工具有哪些?值得用的软件推荐在Linux生态中,SVG编辑工具的选择直接影响设计效率,Inkscape 是开源社区公认的标杆,它原生支持矢量图形创建、路径编辑、节点调整,并兼容SV……

    2026年7月19日
    600
  • android顶部状态栏怎么设置,顶部操作栏隐藏方法

    Android应用的用户体验优劣,很大程度上取决于界面顶部的交互设计,android顶部状态栏_顶部操作栏的协同配置,是构建沉浸式界面与高效导航系统的核心关键,开发者必须从系统层级的窗口装饰与视图层级的布局交互两个维度入手,实现状态栏与操作栏的视觉融合与功能解耦,才能在保障信息展示完整性的前提下,最大化用户的屏……

    2026年3月28日
    11500
  • 3d服务器一般多少钱一台,哪个品牌性价比高?

    3D服务器的价格并没有一个固定的标准,入门级配置月租大约在几百元,而用于专业渲染的高性能服务器月租可能达到数千甚至上万元,具体取决于CPU/GPU核心数、内存容量、存储类型以及带宽大小, 价格差异主要来自硬件规格和服务等级,你在选择时需要先明确自己的渲染需求和工作流,避免盲目追求高配置导致浪费,影响3D服务器价……

    2026年8月17日
    400

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注