当前位置: 代码迷 >> 综合 >> Linux7.5 安装FastDFS v6.03
  详细解决方案

Linux7.5 安装FastDFS v6.03

热度:92   发布时间:2023-11-17 12:51:54.0

准备环境:

附下载地址:fastdfs-nginx-module,libfastcommon,fastdfs,nginx

ps:

<1>这里我是将所有安装包放到/opt路径下;

<2>如遇问题,可以参考另外两篇Linux Centos7.5 安装FastDFS以及遇到的坑(这是我安装5.05以及5.08的),FastDFS 文件上传成功,访问404

 1、安装编译工具及库文件(必须,否则后面编译会失败)

yum -y install make zlib zlib-devel gcc-c++ libtool  openssl openssl-devel

2、解压并移动文件

#进入opt目录下
cd /opt#解压tar -zxvf nginx-1.17.6.tar.gztar -zxvf libfastcommon-1.0.41.tar.gztar -zxvf fastdfs-nginx-module-1.22.tar.gztar -zxvf fastdfs-6.03.tar.gz#移动文件
mv fastdfs-6.03 fastdfs-nginx-module-1.22 libfastcommon-1.0.41 nginx-1.17.6 /usr/local

 3.编译并安装:libfastcommon-1.0.41

#进入libfastcommon目录下
cd /usr/local/libfastcommon-1.0.41#编译并安装
./make.sh && ./make.sh install   #编译并安装

注:若报如下图错误,请执行第一步(安装编译工具及库文件),安装gcc环境 。

pa:编译完毕后,查看(5.05版本/usr/lib目录中使用版本查看不到libfastcommon.so,5.08版本可以,6.0.3版本也可以)

#可以通过此命令在/usr/lib目录和/usr/lib64都查看下
ls | grep libfastcommon.so

4、 FastDFS v6.03

(1)编译并安装

#进入fastdfs目录
cd /usr/local/fastdfs-6.03#编译并安装
./make.sh && ./make.sh install #进入/usr/bin目录下,并列出fdfs的所有脚本
cd /usr/bin && ls |grep fdfs  

ps:(在5.05版本和5.08版本这部分是需要改的,可以看我另一篇关于5.05和5.08版本的安装,在6.0.3最新版本发现此处不需要改了,可能作者尽量减少我们安装的工作量,改了下吧)FastDFS服务脚本设置的bin目录为/usr/local/bin/下,但是实际我们安装在了/usr/bin/下面(看上一张图)。所以我们需要修改FastDFS配置文件中的路径,也就是需要修改两个配置文件(1./etc/init.d/fdfs_storaged;2./etc/init.d/fdfs_storaged)。

 

(2)修改fastdfs的配置文件

cd /etc/fdfs/  #进入/etc/fdfs/目录下##拷贝,并重命名cp storage.conf.sample storage.confcp client.conf.sample client.confcp tracker.conf.sample tracker.conf

 编辑tracker.conf:

#编辑tracker.conf
vim /etc/fdfs/tracker.conf #暂时就只修改tracker.conf中base_path内容
base_path=/fastdfs/tracker  #由于tracker.conf中base_path的/fastdfs/tracker路径没有,所以需创建
mkdir -p /fastdfs/tracker  

(3)关闭防火墙/开放端口号

centos7中的防火墙改成了firewall,使用iptables无作用,开放端口的方法如下:firewall-cmd --zone=public --add-port=80/tcp --permanent返回success为成功
######################################################################################命令含义: --zone #作用域 --add-port=80/tcp #添加端口,格式为:端口/通讯协议 --permanent #永久生效######################################################################################systemctl restart firewalld.service  #重启防火墙systemctl stop firewalld.service #关闭防火墙netstat -lntp #查看监听(Listen)的端口netstat -lnp|grep 8080 #检查端口被哪个进程占用

注:此处仅为学习,所以直接关闭防火墙;

(4)启动tracker 服务

 #启动tracker命令
/etc/init.d/fdfs_trackerd start #停止tracker命令
/etc/init.d/fdfs_trackerd stop   

 如图:启动成功!

 可使用命令 ps -ef | grep fdfs 查看:

(5)修改storage.conf文件:

#修改storage.conf文件
vim /etc/fdfs/storage.conf #修改内容: 
base_path=/fastdfs/storage 
store_path0=/fastdfs/storage #改成自己的虚拟机IP地址(在6.0.3版本发现这里有两个tracker_server,注掉一个,可能是集群搭建需要吧)
tracker_server=192.168.87.132:22122 #修改端口号
http.server_port=80#创建storage.conf中的base_path、store_path0路径 
mkdir -p /fastdfs/storage 

(6)启动storage 服务

#启动storage
/etc/init.d/fdfs_storaged start

#进入/fastdfs/storage/data/,并查看
cd /fastdfs/storage/data/ && ls  

(7)设置开机启动

##设置开机启动
命令:vim /etc/rc.d/rc.local 
加入配置:/etc/init.d/fdfs_trackerd start  /etc/init.d/fdfs_storaged start

(8)编辑client.conf文件 :

##编辑client.conf文件 
命令:vim /etc/fdfs/client.conf 
######################################################################################
修改内容: 
base_path=/fastdfs/tracker 
#有两个tracker_server,单机版,注掉一个吧
tracker_server=192.168.59.131:22122

(9)测试上传文件

测试:将/opt/timg(1).jpg文件上传到fastdfs系统当中:

命令:/usr/bin/fdfs_upload_file /etc/fdfs/client.conf /opt/timg(1).jpg

5、安装nginx及fastdfs-nginx-module

#安装pcre 
yum -y install pcre pcre-devel#进入nginx-1.17.6
cd /usr/local/nginx-1.17.6#添加http_stub_status_module模块
./configure --prefix=/usr/local/nginx --with-http_stub_status_module#进入/usr/local/fastdfs-nginx-module-1.22/src
cd /usr/local/fastdfs-nginx-module-1.22/src#编辑配置文件config
vim config  #将config文件中的/usr/local替换成/usr
:%s+/usr/local+/usr 

如图:

cd /usr/local/nginx-1.17.6#添加fastdfs-nginx-module
./configure --add-module=/usr/local/fastdfs-nginx-module-1.22/src/#编译并安装
make && make install

复制并修改fastdfs-ngin-module中的配置文件:

##复制fastdfs-ngin-module中的配置文件,到/etc/fdfs目录中命令:cp /usr/local/fastdfs-nginx-module-1.22/src/mod_fastdfs.conf /etc/fdfs/## 进行修改 /etc/fdfs/ 目录下,我们刚刚copy过来的mod_fastdfs.conf 文件vim /etc/fdfs/mod_fastdfs.conf 修改内容:比如连接超时时间、跟踪器路径配置、url的group配置、connect_timeout=10 tracker_server=192.168.87.132:22122 url_have_group_name = true store_path0=/fastdfs/storage

创建软连接: 

#进入/usr/local/fastdfs-6.03/conf
cd /usr/local/fastdfs-6.03/conf#将http.conf,mime.types两个文件拷贝到/etc/fdfs/目录下
cp http.conf mime.types /etc/fdfs/##创建一个软连接,在/fastdfs/storage文件存储目录下创建软连接,将其链接到实际存放数据 的目录。 
cd /fastdfs/storage   #进入/fastdfs/storage目录下#不配置软连接,无妨访问图片 
ln -s /fastdfs/storage/data/ /fastdfs/storage/data/M00
#进入/usr/local/nginx/conf
cd /usr/local/nginx/conf#配置nginx
vim nginx.conf#修改内容:server {listen       80;server_name  192.168.87.132;location ~/group([0-9])/M00 {root  /fastdfs/storage/data;ngx_fastdfs_module;}

如图:

6、测试

(1)先检查fastdfs的tracker以及storage和nginx是否启动;如图:

(2)将4.9步骤上传fastdfs返回的路径group1/M00/00/00/wKhXhF3c1muAPt6QAACHFs_2aC8075.jpg,将其用ip拼接起来:如示例:http://192.168.87.132/group1/M00/00/00/wKhXhF3c1muAPt6QAACHFs_2aC8075.jpg;用浏览器访问;

  相关解决方案