
fastdfs在ubuntu上的安装
准备安装包
仓库地址:
happyfish100 (YuQing) · GitHub

参考文档
Home · happyfish100/fastdfs Wiki · GitHub
本次下载的安装包及版本:
1
//基础库 需要最先安装
2 libfastcommon-1.0.75.tar.gz
3 //新版本的依赖 老版本不需要
4 libserverframe-1.2.5.tar.gz
5 //程序主体
6 fastdfs-6.12.1.tar.gz
7 //web访问页面
8 fastdfs-nginx-module-1.24.tar.gz
9 //环境准备
10 sudo yum install git gcc gcc-c++ make automake autoconf libtool pcre pcre-devel zlib
zlib-devel openssl-devel wget vim -y
11 sudo apt install git gcc g++ make automake autoconf libtool pcre2-utils libpcre2-dev
zlib1g zlib1g-dev openssl libssh-dev wget vim -y
安装 libfastcommon
1
# 解压
2 tar -zxvf V1.0.75.tar.gz
3 cd libfastcommon-1.0.75
4 # 编译、安装
5 ./make.sh
6 ./make.sh install
7 # libfastcommon.so 安装到了/usr/lib64/libfastcommon.so,但是FastDFS主程序设置的lib目录
是/usr/local/lib,所以需要创建软链接。(老版本的需要这一步,本次可以不做)
8 ln -s /usr/lib64/libfastcommon.so /usr/local/lib/libfastcommon.so
9 ln -s /usr/lib64/libfastcommon.so /usr/lib/libfastcommon.so
10 ln -s /usr/lib64/libfdfsclient.so /usr/local/lib/libfdfsclient.so
11 ln -s /usr/lib64/libfdfsclient.so /usr/lib/libfdfsclient.so
安装 libserverframe
1
tar -zxvf libserverframe-1.2.5.tar.gz
2 cd libserverframe-1.2.5/
3 ./make.sh
4 ./make.sh install
安装FastDFS
1
tar -zxvf fastdfs-6.12.2.tar.gz
2 cd fastdfs-6.12.2/
3
./make.sh
4 ./make.sh install
5 #配置文件准备
6 cp /usr/local/src/fastdfs/conf/http.conf /etc/fdfs/ #供nginx访问使用
7 cp /usr/local/src/fastdfs/conf/mime.types /etc/fdfs/ #供nginx访问使用
安装fastdfs-nginx-module
1
tar -zxvf fastdfs-nginx-module-1.24.tar.gz
2 cp /usr/local/src/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs
3 nginx 的安装参考nginx的编译安装
4 需要注意的是 配置的时候需要添加 --add-module=/home/dawenzi/fastdfs-nginx-module-1.24/src 配
置
5 既是
6 ./configure \
7 ...
8 --add-module=/home/dawenzi/fastdfs-nginx-module-1.24/src
修改配置文件
1
#创建文件夹
2 mkdir -P /opt/fastdfs/tracker /opt/fastdfs/storage /opt/fastdfs/nginx
/opt/fastdfs/client
修改Tracker配置
1
vim storage.conf
2 #所需修改配置
3 bind_addr = 0.0.0.0
4 base_path = /opt/fastdfs/tracker
启动Tracker
1
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf
2
3 #新版
4 修改 /usr/lib/systemd/system/fdfs_trackerd.service 中的 PIDFile,格式为:
5 PIDFile=$base_path/data/fdfs_trackerd.pid
6 比如:
7 PIDFile=/home/dfs/data/fdfs_trackerd.pid
8 systemctl start fdfs_trackerd #启动tracker服务
9 systemctl restart fdfs_trackerd #重启动tracker服务
10 systemctl stop fdfs_trackerd #停止tracker服务
11 systemctl enable fdfs_trackerd #开机自启动
修改storage配置
1
cd /etc/fdfs/
2 vim storage.conf
3 #所需修改配置
4 bind_addr = 0.0.0.0
5 base_path = /opt/fastdfs/storage
6 store_path0 = /opt/fastdfs/storage
7 #此处注意 不能写 127.0.0.1 网络回环地址
8 tracker_server = 192.168.2.117:22122
9 # 配合nginx使用 需和nginx配置的端口一致
10 http.server_port = 8888
11
12 # 其它配置默认即可
启动 Storage
1
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf
2
3 #新版
4 修改 /usr/lib/systemd/system/fdfs_storaged.service 中的 PIDFile,格式为:
5 PIDFile=$base_path/data/fdfs_storaged.pid
6 比如:
7 PIDFile=/home/dfs/data/fdfs_storaged.pid
8 systemctl start fdfs_storaged #启动storage服务
9 systemctl restart fdfs_storaged #重动storage服务
10 systemctl stop fdfs_storaged #停止动storage服务
11 systemctl enable fdfs_storaged #开机自启动
配置客户端(Client)
1
vim client.conf
2
3 base_path = /opt/fastdfs/client
4 tracker_server = 192.168.2.117:22122
配置nginx访问
1
vim /etc/fdfs/mod_fastdfs.conf
2 #需要修改的内容如下
3 tracker_server=192.168.52.2:22122 # 服务器1
4 tracker_server=192.168.52.3:22122 # 服务器2
5 tracker_server=192.168.52.4:22122 # 服务器3
6 url_have_group_name=true
7 store_path0=/home/dfs
8 #配置nginx.config
9 vim /usr/local/nginx/conf/nginx.conf
10 #添加如下配置
11 server {
12 listen 8888; ## 该端口为storage.conf中的http.server_port相同
13 server_name localhost;
14 location ~/group[0-9]/ {
15 ngx_fastdfs_module;
16 }
17 error_page 500 502 503 504 /50x.html;
18 location = /50x.html {
19 root html;
20 }
21 }
22
测试
1
#客户端上传文件 完成后会出现文件的存储路径
2 fdfs_test fdfs_test /etc/fdfs/client.conf upload 20240821_154042.jpg
3 group1/M00/00/00/wKgCdWcPXFqAJ1QeAAHlS2JTOtU747.jpg
4 #将存储路径 加到nginx地址之后就可在浏览器访问
5 192.168.2.117:8888:group1/M00/00/00/wKgCdWcOecaAIDAlAAHlS2JTOtU012.jpg
常见报错解决
1
https://www.cnblogs.com/xiaoshiwang/p/11453625.html
2
3 https://blog.csdn.net/willingtolove/article/details/115202419