ubuntu20.04安装fastdfs
1、 安装环境包: apt-get -y install git gcc g++ make automake autoconf libtool pcre2-utils libpcre2-dev zlib1g zlib1g-dev openssl libssh-dev wget vim
下载libfastcommllon: git clone https://github.com/happyfish100/libfastcommon.git --depth 1
cd libfastcommon/
编译安装: ./make.sh && ./make.sh install
2、 下载fastdfs:git clone https://github.com/happyfish100/fastdfs.git --depth 1
cd fastdfs/
./make.sh && ./make.sh install
插入内容:如果以上无法编译成功,报错如下:
1 root@ecs-9e8e-0914410:/opt/fastdfs# ./make.sh && ./make.sh install 2 gcc -Wall -Wformat-truncation=0 -Wformat-overflow=0 -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O1 -DDEBUG_FLAG -c -o ../common/fdfs_global.o ../common/fdfs_global.c -I../common -I/usr/local/include 3 In file included from ../common/fdfs_global.c:21: 4 ../common/fdfs_global.h:15:10: fatal error: sf/sf_global.h: 没有那个文件或目录 5 15 | #include "sf/sf_global.h" 6 | ^~~~~~~~~~~~~~~~ 7 compilation terminated. 8 make: *** [Makefile:28:../common/fdfs_global.o] 错误 1 9 gcc -Wall -Wformat-truncation=0 -Wformat-overflow=0 -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O1 -DDEBUG_FLAG -c -o ../common/fdfs_global.o ../common/fdfs_global.c -I. -Itrunk_mgr -I../common -I../tracker -I../client -Ifdht_client -I/usr/include/fastcommon 10 In file included from ../common/fdfs_global.c:21: 11 ../common/fdfs_global.h:15:10: fatal error: sf/sf_global.h: 没有那个文件或目录 12 15 | #include "sf/sf_global.h" 13 | ^~~~~~~~~~~~~~~~ 14 compilation terminated. 15 make: *** [Makefile:37:../common/fdfs_global.o] 错误 1 16 gcc -Wall -Wformat-truncation=0 -Wformat-overflow=0 -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O1 -DDEBUG_FLAG -c -o ../common/fdfs_global.o ../common/fdfs_global.c -I../common -I../tracker -I/usr/include/fastcommon 17 In file included from ../common/fdfs_global.c:21: 18 ../common/fdfs_global.h:15:10: fatal error: sf/sf_global.h: 没有那个文件或目录 19 15 | #include "sf/sf_global.h" 20 | ^~~~~~~~~~~~~~~~ 21 compilation terminated. 22 make: *** [Makefile:62:../common/fdfs_global.o] 错误 1 23 mkdir -p /usr/bin 24 mkdir -p /etc/fdfs 25 cp -f fdfs_trackerd /usr/bin 26 cp: 无法获取'fdfs_trackerd' 的文件状态(stat): 没有那个文件或目录 27 make: *** [Makefile:32:install] 错误 1 28 mkdir -p /usr/bin 29 mkdir -p /etc/fdfs 30 cp -f fdfs_storaged /usr/bin 31 cp: 无法获取'fdfs_storaged' 的文件状态(stat): 没有那个文件或目录 32 make: *** [Makefile:41:install] 错误 1 33 mkdir -p /usr/bin 34 mkdir -p /etc/fdfs 35 mkdir -p /usr/lib64 36 mkdir -p /usr/lib 37 cp -f fdfs_monitor fdfs_test fdfs_test1 fdfs_crc32 fdfs_upload_file fdfs_download_file fdfs_delete_file fdfs_file_info fdfs_appender_test fdfs_appender_test1 fdfs_append_file fdfs_upload_appender fdfs_regenerate_filename /usr/bin 38 cp: 无法获取'fdfs_monitor' 的文件状态(stat): 没有那个文件或目录 39 cp: 无法获取'fdfs_test' 的文件状态(stat): 没有那个文件或目录 40 cp: 无法获取'fdfs_test1' 的文件状态(stat): 没有那个文件或目录 41 cp: 无法获取'fdfs_crc32' 的文件状态(stat): 没有那个文件或目录 42 cp: 无法获取'fdfs_upload_file' 的文件状态(stat): 没有那个文件或目录 43 cp: 无法获取'fdfs_download_file' 的文件状态(stat): 没有那个文件或目录 44 cp: 无法获取'fdfs_delete_file' 的文件状态(stat): 没有那个文件或目录 45 cp: 无法获取'fdfs_file_info' 的文件状态(stat): 没有那个文件或目录 46 cp: 无法获取'fdfs_appender_test' 的文件状态(stat): 没有那个文件或目录 47 cp: 无法获取'fdfs_appender_test1' 的文件状态(stat): 没有那个文件或目录 48 cp: 无法获取'fdfs_append_file' 的文件状态(stat): 没有那个文件或目录 49 cp: 无法获取'fdfs_upload_appender' 的文件状态(stat): 没有那个文件或目录 50 cp: 无法获取'fdfs_regenerate_filename' 的文件状态(stat): 没有那个文件或目录 51 make: *** [Makefile:70:install] 错误 1
解决办法是:下载离线安装包libfastcommon-1.0.43.tar.gz、fastdfs-5.05.tar.gz 两个版本配合使用。解压编译完成后,再按照以下配置启动。
3、配置修改/etc/fdfs 目录
sudo cp /etc/fdfs/tracker.conf.sample /etc/fdfs/tracker.conf
sudo cp /etc/fdfs/client.conf.sample /etc/fdfs/client.conf
sudo cp /etc/fdfs/storage.conf.sample /etc/fdfs/storage.conf
#数据存储目录
mkdir -p /myfdfs/tracker
mkdir -p /myfdfs/storage
# tracker.conf修改位置
base_path=/myfdfs/tracker
-----------------------------------------
# client.conf修改位置
base_path=/myfdfs/tracker
tracker_server = Tracker服务端的IP地址:22122
-----------------------------------------
# storage.conf修改位置
base_path=/myfdfs/storage
store_path0=/myfdfs/storage
tracker_server=Tracker服务端的IP地址:22
修改完以前配置文件后,启动tracker和storage服务如下:
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf start
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf start
编写启动脚本run.sh
touch run.sh
chmod +x run.sh
vim run.sh
#!/bin/bash
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf start
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf start
netstat -anop | grep 22122
4、测试
fdfs_upload_file /etc/fdfs/client.conf /root/test.jpg
5、nginx、fastdfs-nginx-module安装
切换 nginx目录
sudo ./configure --prefix=/usr/local/nginx --add-module=/home/soap/fastdfs/fastdfs-nginx-module-master/src/
ubuntu安装nginx时提示error: the HTTP rewrite module requires the PCRE library
sudo apt-get update
sudo apt-get install libpcre3 libpcre3-dev
sudo apt-get install openssl libssl-dev
启动
sudo /usr/local/nginx/sbin/nginx
关闭
ps -ef | grep nginx
kill -QUIT 18488
nginx 配置文件路径
sudo vim /usr/local/nginx/conf/nginx.conf
![](https://img2020.cnblogs.com/blog/2374496/202105/2374496-20210528113308426-1060499605.png)