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 依赖 libfastcommonlibevent
  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: 808888
      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 的用户(通常是 rootfastdfs)有读写权限。

  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年2月21日
    16600
  • AI算法开源开发怎么选?AI算法管理平台推荐

    在数字化转型的浪潮中,企业若想在智能化竞争中占据高地,必须确立一个核心战略:构建标准化的AI算法管理体系,是实现高效ai算法开源开发的前提与保障,这不仅是技术工程的组织问题,更是决定企业能否从算法投入中获得实际ROI(投资回报率)的关键,开源技术降低了技术门槛,但若无体系化的管理,开源带来的“自由”终将演变为技……

    2026年3月30日
    10300
  • Access数据库怎么清理?连接数据库报错Access denied怎么办

    Access数据库清理与“Access denied”报错解决的核心在于:精准定位错误源头与规范化数据维护,解决连接报错是前提,执行数据库清理是保障,两者共同构成了Access数据库高效运维的闭环,面对“Access denied”连接报错,必须优先排查账户权限与文件锁定状态;而针对数据库清理,则需遵循备份、压……

    2026年3月21日
    9000
  • 自制一台迷你电脑怎么做,新手DIY配置清单教程

    组装一台迷你电脑并非简单的零件堆砌,而是一项涉及精密空间管理、热力学设计以及硬件兼容性校验的系统工程,核心结论在于:成功的DIY迷你电脑必须建立在明确的使用场景定位之上,通过严格把控CPU功耗与散热模组的匹配度,并遵循ITX架构下的紧凑走线规范,才能在有限体积内实现性能与静音的完美平衡,对于想要深入了解自制一台……

    2026年2月19日
    18400
  • UCloud UIoT Stack如何助力业务落地?物联网平台系统套件全链路管理

    UCloud优刻得UIoT Stack通过打通从云端管理到边缘计算再到终端采集的全链路闭环,为物联网方案集成商提供了一站式解决方案,显著缩短项目交付周期并降低技术门槛,在物联网落地过程中,集成商往往面临最头疼的问题不是硬件选型的多样性,而是软件栈的碎片化,不同厂家的网关协议不通,云端平台兼容性差,导致大量时间浪……

    2026年6月28日
    2300
  • 万人手游服务器价格是多少,哪家性价比高?

    万人手游服务器多少钱?直接说结论:按行业主流配置估算,一套能支撑1万人同时在线(CCU破万)的游戏服务器集群,月成本通常在2万到8万元区间, 这笔费用包含物理机租赁、高防带宽、数据库和负载均衡等基础资源,具体价格取决于你的游戏类型、并发峰值和运维方式,下文拆解每笔钱花在哪、怎么省,以及如何避开服务商陷阱,万人手……

    2026年8月22日
    200
  • 国外云主机推荐码怎么用,国外云主机推荐码哪里有?

    利用国外云主机推荐码降低初始投入成本是跨境业务和独立开发者的首选策略,但核心在于如何平衡折扣力度与服务器性能稳定性, 在选择云服务时,单纯追求低价往往会导致后期运维成本激增,建立一套科学的评估体系,结合推荐码的优惠策略,才能实现真正的降本增效,以下将从价值分析、渠道甄别、性能评估及合规性四个维度,详细阐述如何最……

    2026年2月23日
    16000
  • 4核8g的服务器支撑多少qps

    4核8G服务器在典型Web服务中,合理优化后QPS约800-1500,但真实承载量取决于业务逻辑与架构设计,QPS并非固定值:理解影响因素QPS(每秒查询数)是衡量服务器吞吐能力的核心指标,但4核8G的配置没有一个通用答案,因为它受多个层面制约,CPU与内存的角色CPU核心数决定并行处理能力,4核面对高并发请求……

    2026年8月19日
    600
  • 开一台服务器究竟要多少钱,云服务器一年多少钱

    开一台服务器的月成本从几百元到上万元不等,核心取决于配置、带宽和机房等级,个人测试用千元内即可,企业高并发业务则需数千元起步,服务器租用与托管:两种模式成本差异在哪首先得搞清楚你是要租用还是托管,租用是服务商提供硬件,你按月付费,省心但长期成本固定,托管是你自己买服务器放到机房,只交机位费和带宽费,前期投入高但……

    2026年8月22日
    300
  • 网络案例怎么分析?网络推广成功案例分享

    网络架构的稳定性与安全性是企业数字化转型的基石,直接决定了业务连续性与数据资产的价值,在当前复杂的网络环境中,构建高效、安全的网络体系,必须遵循“架构先行、安全贯穿、智能运维”的核心原则,通过对典型案列 网络_网络架构的深度剖析,我们可以清晰地看到,成功的网络部署并非单纯的技术堆砌,而是基于业务需求的精细化设计……

    2026年3月28日
    10000

发表回复

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