跳到主要内容
极客日志极客日志
首页博客AI提示词GitHub精选代理工具
搜索
|注册
博客列表
Shell / Bash

Ubuntu 系统部署 FastDFS 分布式文件系统指南

在 Ubuntu 系统上安装和配置 FastDFS 分布式文件系统的完整流程。涵盖依赖安装、libfastcommon 与 FastDFS 源码编译、Tracker Server 与 Storage Server 配置、Nginx 模块集成以及客户端测试。通过详细步骤指导用户完成环境搭建、服务启动及文件上传验证,确保分布式存储服务的正常运行。

心动瞬间发布于 2026/3/25更新于 2026/5/520 浏览

在 Ubuntu 上安装部署 FastDFS(分布式文件系统)分为以下步骤。这里以 FastDFS v6.11 为例(最新稳定版),包含 Tracker Server、Storage Server 和 Nginx 模块(提供 HTTP 访问):

一、安装依赖

sudo apt update
sudo apt install -y git gcc make automake autoconf libtool pkg-config libssl-dev libpcre3-dev zlib1g-dev

二、安装 libserverframe

  1. 安装 libserverframe
git clone https://github.com/happyfish100/libserverframe.git --depth 1
cd libserverframe
sudo ./make.sh clean
sudo ./make.sh && sudo ./make.sh install
  1. 创建必要符号链接

修复头文件路径问题

sudo ln -s /usr/include/sf /usr/include/fastcommon/sf

修复库文件路径问题

sudo ldconfig

三、安装 libfastcommon(基础库)

下载源码

git clone https://github.com/happyfish100/libfastcommon.git --depth 1
cd libfastcommon

编译安装

sudo ./make.sh clean
sudo ./make.sh && sudo ./make.sh install

确认库文件路径(通常安装到 /usr/lib64 或 /usr/lib)

sudo ln -s /usr/lib64/libfastcommon.so /usr/local/lib/libfastcommon.so # 如果提示找不到则执行

四、安装 FastDFS

下载源码

git clone https://github.com/happyfish100/fastdfs.git --depth 1
cd fastdfs

编译安装

sudo ./make.sh clean
sudo ./make.sh && sudo ./make.sh install

默认安装路径 配置文件:/etc/fdfs 可执行文件:/usr/bin

五、配置 Tracker Server

  1. 复制配置文件
sudo cp /etc/fdfs/tracker.conf.sample /etc/fdfs/tracker.conf
  1. 修改配置(/etc/fdfs/tracker.conf)

修改以下关键参数

port=22122
base_path=/data/fastdfs/tracker # Tracker 数据目录(需提前创建)
store_group=group1 # 存储组名(默认)
http.server_port=8080 # 内置 HTTP 服务端口(可选)
  1. 创建目录并启动
sudo mkdir -p /data/fastdfs/tracker
sudo /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf start
  1. 设置开机自启
sudo systemctl enable fdfs_trackerd # 如果已生成 systemd 服务

六、配置 Storage Server

  1. 复制配置文件
sudo cp /etc/fdfs/storage.conf.sample /etc/fdfs/storage.conf
  1. 修改配置(/etc/fdfs/storage.conf)
group_name=group1 # 需与 Tracker 的 store_group 一致
port=23000 # Storage 服务端口
base_path=/data/fastdfs/storage # Storage 数据目录(需创建)
store_path0=/data/fastdfs/storage/files # 实际文件存储路径
tracker_server=192.168.1.100:22122 # 替换为你的 Tracker 服务器 IP
http.server_port=8888 # 内置 HTTP 端口(可选)
  1. 创建目录并启动
sudo mkdir -p /data/fastdfs/storage/files
sudo /usr/bin/fdfs_storaged /etc/fdfs/storage.conf start
  1. 检查状态
sudo /usr/bin/fdfs_monitor /etc/fdfs/storage.conf

应看到 Storage 注册到 Tracker 的信息

七、安装 Nginx + FastDFS 模块(提供 HTTP 访问) 使用官方 Nginx 模块 fastdfs-nginx-module

  1. 下载模块
git clone https://github.com/happyfish100/fastdfs-nginx-module.git --depth 1
  1. 安装 Nginx 并整合模块

下载 Nginx 源码(以 1.24.0 为例)

wget http://nginx.org/download/nginx-1.24.0.tar.gz
tar -zxvf nginx-1.24.0.tar.gz
cd nginx-1.24.0

配置编译(添加 fastdfs-nginx-module)

./configure --add-module=/path/to/fastdfs-nginx-module/src
make && sudo make install

默认安装路径: /usr/local/nginx

  1. 配置 Nginx • 复制 FastDFS 的 HTTP 配置文件:
sudo cp /path/to/fastdfs/conf/http.conf /etc/fdfs/
sudo cp /path/to/fastdfs/conf/mime.types /etc/fdfs/

• 复制模块配置文件:

sudo cp /path/to/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/

• 修改/etc/fdfs/mod_fastdfs.conf:

tracker_server=192.168.1.100:22122 # Tracker IP
url_have_group_name=true
store_path0=/data/fastdfs/storage/files

• 编辑 Nginx 配置(/usr/local/nginx/conf/nginx.conf):

server {
    listen 80;
    server_name your_domain.com; # 替换为你的域名/IP

    location /group1/M00 { alias /data/fastdfs/storage/files/data; # 指向存储路径
        ngx_fastdfs_module; # 调用 FastDFS 模块
    }
}
  1. 启动 Nginx
sudo /usr/local/nginx/sbin/nginx

八、测试上传文件

  1. 复制客户端配置
sudo cp /etc/fdfs/client.conf.sample /etc/fdfs/client.conf
  1. 修改 client.conf
base_path=/tmp
tracker_server=192.168.1.100:22122 # Tracker IP
  1. 上传测试文件
echo "Hello FastDFS" > test.txt
fdfs_upload_file /etc/fdfs/client.conf test.txt

返回示例:group1/M00/00/00/rB8AB2WvXZ-AUQ9zAAAAD6Gd_Us123.txt

  1. 通过 HTTP 访问文件 在浏览器打开(假设服务器 IP 为 192.168.1.100): http://192.168.1.100/group1/M00/00/00/rB8AB2WvXZ-AUQ9zAAAAD6Gd_Us123.txt

常见问题解决

  1. 端口冲突:确保 22122(Tracker)、23000(Storage)、80(Nginx)端口开放。
  2. 文件路径权限:用 sudo chmod -R 777 /data/fastdfs 临时解决权限问题(生产环境需细化权限)。
  3. Nginx 返回 404:检查 mod_fastdfs.conf 中路径是否与 storage.conf 的 store_path0 一致。
  4. Tracker 与 Storage 无法通信:检查防火墙设置(sudo ufw allow 22122,23000,80 或 sudo firewall-cmd --zone=public --add-port=23000/tcp)。 完整文档参考:FastDFS GitHub Wiki

目录

  1. 在 Ubuntu 上安装部署 FastDFS(分布式文件系统)分为以下步骤。这里以 FastDFS v6.11 为例(最新稳定版),包含 Tracker Server、Storage Server 和 Nginx 模块(提供 HTTP 访问):
  • 💰 8折买阿里云服务器限时8折了解详情
  • GPT-5.5 超高智商模型1元抵1刀ChatGPT中转购买
  • 代充Chatgpt Plus/pro 帐号了解详情
  • 🤖 一键搭建Deepseek满血版了解详情
  • 一键打造专属AI 智能体了解详情
极客日志微信公众号二维码

微信扫一扫,关注极客日志

微信公众号「极客日志V2」,在微信中扫描左侧二维码关注。展示文案:极客日志V2 zeeklog

更多推荐文章

查看全部
  • Microi 吾码低代码平台技术特性与集成实践
  • AI-Goofish-Monitor 闲鱼智能监控工具使用指南
  • Neo4j 图数据库从搭建到项目使用详解
  • LLaMA Factory 在国产 DCU 上微调 Llama 3 模型实战
  • 人工智能如何重塑细胞生物学研究流程与范式
  • Go Channel 深入解析
  • Python 缠论分析框架 chan.py 快速入门
  • 使用 Llama Factory 微调视觉 - 语言联合模型
  • 人形机器人:百万亿美元赛道的终极逻辑与通用平台化
  • TypeScript 首超 Python 成 GitHub 最活跃语言:2025 开发趋势
  • 基于 LangGraph 的金融智能体架构:RAG 重排序与代码解释器实践
  • 适合新手的 6 个自媒体变现平台深度指南
  • 本地部署 Stable Diffusion 3.5 完整教程
  • MATLAB 实现基于 BFOA-DNN 的无人机三维路径规划
  • YOLOv8 OBB 旋转目标检测 RK3588 C++ 部署:模型转换与推理优化
  • 医疗 AI 场景下朴素贝叶斯算法深度解析
  • Visual C++ Redistributable 安装失败修复指南
  • 千笔 AI 论文辅助写作工具功能介绍
  • 基于低代码引擎的企业级审批系统搭建实战
  • GitHub Copilot Pro 学生免费权益获取与 VS Code 配置指南

相关免费在线工具

  • Base64 字符串编码/解码

    将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online

  • Base64 文件转换器

    将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online

  • Markdown转HTML

    将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online

  • HTML转Markdown

    将 HTML 片段转为 GitHub Flavored Markdown,支持标题、列表、链接、代码块与表格等;浏览器内处理,可链接预填。 在线工具,HTML转Markdown在线工具,online

  • JSON 压缩

    通过删除不必要的空白来缩小和压缩JSON。 在线工具,JSON 压缩在线工具,online

  • JSON美化和格式化

    将JSON字符串修饰为友好的可读格式。 在线工具,JSON美化和格式化在线工具,online