一.准备工作:

1.准备下面包文件

-- FastDFS_v5.08.tar.gz

-- libevent-2.0.22-stable.tar.gz

-- libfastcommon-master.zip

-- fastdfs-nginx-module_v1.16.tar.gz

-- nginx-1.10.0.tar.gz

下载上面所需文件:https://pan.baidu.com/s/10CJO2E9z8XqC_z9bocWMdg  提取码:h5zf

二.安装部署步骤

1.安装FastDFS所需各种依赖

1.1 安装GCC依赖

sudo yum -y install gcc

1.2 安装unzip工具

sudo yum install -y unzip zip

1.3 安装libevent

sudo yum -y install libevent

1.4 安装Nginx所需依赖(假如该系统已经按照了nginx,就可以跳过该步骤)

sudo yum -y install pcre pcre-devel zlib zlib-devel openssl openssl-devel

2.把所有需要用到的文件上传到linux系统中

2.1通过xshell工具,连接上linux系统

2.2.进入到opt目录下

2.3.通过rz命令进行上传文件,输入rz,点击回车,就能打开下面界面

注意:假如该linux系统未安装rz和sz命令,请先输入以下命令进行源码安装--yum install -y lrzsz

3.依次解压安装编译各个压缩包

3.1 编译安装libfastcommon-master

输入以下命令对该文件进行解压操作:

unzip -xvf libfastcommon-master.zip

进入当刚刚解压后的目录--cd libfastcommon-master/

输入以下命名进行编译sudo ./make.sh

编译完后,再输入sudo ./make.sh intall进行安装

3.2 安装FastDFS

返回到opt目录下,也就是FastDFS压缩包上传的位置--cd /opt/

然后输入以下命令进行解压操作:tar -xvf FastDFS_v5.08.tar.gz

解压成功后,进入到解压目录--cd FastDFS

然后进行编译及安装操作-sudo ./make.sh

编译成功后,再进行安装

安装成功后,现在来检查以下是否真的安成功了吧

输入以下命令,查看是否安装成功--ll /etc/init.d/ | grep fdfs,我们发现该目录下已经有FastDFS提供的二个启动脚本了

- fdfs_trackerd 是tracker启动脚本

- fdfs_storaged 是storage启动脚本

然后再看看/etc/fdfs目录下是否存在三个配置文件--ll /etc/fdfs/

-- client.conf.sample

-- storage.conf.sample

-- tracker.conf.sample

假如上面的文件都存在,就说明安装成功啦!接下来就是配置各类配置文件了。

3.3 配置tracker服务

3.3.1 首先我们对模块文件输入以下命令进行重命名---sudo cp tracker.conf.sample tracker.conf

3.3.2 然后编辑修改tracker.conf文件--sudo vim tracker.conf

该文件初始化只需要修改base_path字段就ok,假如你配置的目录不是图中的目录,只要保证你所配置的目录存在即可。

3.3.3 验证tracker是否配置成功

通过以下命令进行启动tracker:  sudo service fdfs_trackerd start

假如嫌每次启动麻烦,可以配置成开机启动--sudo chkconfig fdfs_trackerd on

3.4 配置storage服务

3.4.1 首先我们对模块文件输入以下命令进行重命名---sudo cp storage.conf.sample storage.conf

3.4.2 然后对storage.conf文件进行修改下面几个参数--sudo vim storage.conf

base_path=/opt/FastDFS/storage # storage的数据和日志存放目录--该目录必须得存在,不存在得去创建

store_path0=/opt/FastDFS/storage # storage的上传文件存放路径--该目录必须得存在,不存在得去创建

tracker_server=你linux的主机IP:22122 # tracker的地址

3.4.3 配置完成后我们来验证一下吧

通过以下命令进行启动tracker:  sudo service fdfs_storaged start

假如嫌每次启动麻烦,可以配置成开机启动--sudo chkconfig fdfs_storaged on

最好我们查看下进程是否启动成功--ps -ef|grep fdfs

发现二个服务都启动成功了,恭喜你,走到了这步,马上可以是否FastFDS进行文件的上传下载了啦。

3.5 安装Nginx及FastDFS模块

3.5.1 安装FastDFS模块-fastdfs-nginx-module

进入到fastdfs-nginx-module_v1.16.tar.gz文件所在目录,即opt目录下-cd /opt/,然后解压到FastDFS目录下

对该文件进行解压操作--tar -xvf fastdfs-nginx-module_v1.16.tar.gz -C FastDFS/

3.5.2 解压成功后,我们来配置config文件吧

进入到刚刚解压的文件目录下的src目录下-cd /opt/FastDFS/fastdfs-nginx-module/src/

3.5.3 然后修改config文件-vim config

把里面的/usr/local/ 调整为/usr/

可以输入下面命令快速全局修改--:%s+/usr/local/+/usr/+g

修改完成后记得wq!保存退出哦

3.5.4 然后再来配置mod_fastdfs.conf文件

将src目录下的mod_fastdfs.conf复制到 /etc/fdfs目录--sudo cp mod_fastdfs.conf /etc/fdfs/

然后再修改复制过去的该文件:--sudo vim /etc/fdfs/mod_fastdfs.cof

- 修改以下参数:

  connect_timeout=10                          # 客户端访问文件连接超时时长(单位:秒)

  tracker_server=你linux主机IP:22122      # tracker服务IP和端口

  url_have_group_name=true                    # 访问链接前缀加上组名

  store_path0=/opt/FastDFS/storage               # 文件存储路径

修改完成后记得保存哦!

3.5.5 接下来就复制一下FastDFS的部分配置文件到/etc/fdfs目录中去

cd /opt/FastDFS/conf/

cp http.conf mime.types /etc/fdfs/

3.6 安装Nginx(假如你已经安装好了Nginx,请跳过该步骤哦)

进入到nginx-1.10.0.tar.gz文件所在目录,即opt目录下,然后对该文件进行解压操作--tar -xvf nginx-1.10.0.tar.gz

解压后,进入到解压的目录/opt/nginx-1.10.0/,然后进行添加模块--FastDFS/fastdfs-nginx-module/src/为上面fastdfs-nginx-module_v1.16.tar.gz文件所解压的目录

sudo ./configure --prefix=/opt/nginx --sbin-path=/usr/bin/nginx --add-module=/opt/FastDFS/fastdfs-nginx-module/src

安装配置好后,就可以开始编译及安装Nginx了啦

特别注意:假如你已经安装了Nginx了的话,那就跳过上面的3.6步骤,只进行下面的操作即可。

进入到nginx安装解压后的目录,然后进行添加模块--FastDFS/fastdfs-nginx-module/src/为上面fastdfs-nginx-module_v1.16.tar.gz文件所解压的目录

sudo ./configure --prefix=/opt/nginx --sbin-path=/usr/bin/nginx --add-module=/opt/FastDFS/fastdfs-nginx-module/src

然后先备份一下/usr/bin目录下的nginx文件

备份完成后,然后重新编译一下Nginx

编译完成后,进入到/opt/nginx-1.10.0/objs 目录下,把编译好的nginx文件复制到/usr/bin目录下,覆盖原先的nginx即可

进行到这里,就差最好一步啦,是不是很激动,赶紧看下面步骤吧....

3.7 配置nginx整合fastdfs-module模块

在nginx.conf文件中配置fastdfs-module模块

进入到opt目录下然后输入命令:sudo vim  nginx/conf/nginx.conf

然后在该配置文件中写入以下配置内容:

server {
          listen       80;
          server_name  你的linux主机IP;           # 监听域名中带有group的,交给FastDFS模块处理
          location ~/group([0-9])/ {
              ngx_fastdfs_module;
          }           location / {
              root   html;
              index  index.html index.htm;
          }           error_page   500 502 503 504  /50x.html;
          location = /50x.html {
              root   html;
          }
          
      }

好了,到目前已经配置完成啦,是不是很高兴,接下来我们启动下nginx吧,直接输入nginx就可启动成功

nginx -s stop # 停止

 nginx -s reload # 重新加载配置

假如需要开机启动的话,那我们可以查看下另外一篇随笔进行配置--点击查看

到现在我们就可以进行文件上传查看了啦。

现在我们修改下client.conf配置文件,我们用这个配置文件和/usr/bin目录下的一个上传脚本来模拟上传操作。

进入到/etc/fdfs目录下,先复制生成一份client.conf文件

然后再修改base_path和tracker_server参数,如图所示--vim client.conf--IP为你linux主机IP,base_path地址必须存在,不存在则需要去创建

修改后记得保存哦!

配置好后,我们重新启动下Fastdfs,然后就可以验证上传了啦。

sudo service fdfs_trackerd start;

sudo service fdfs_storaged start;

进入到/etc/fdfs目录下后输入下面命令进行上传,可以看到执行结果就是上传后的图片路径;

/usr/bin/fdfs_upload_file client.conf /tmp/photo.jpg

拿到这个路径后我们去访问一下

如何在Linux Centos上部署配置FastDFS的更多相关文章

  1. 如何在Linux服务器上部署禅道

    最近换了新的项目团队,由于新团队比较年轻化,没有实行正规的项目管理,于是我自告奋勇要为团队管理出一份力,帮助团队建立敏捷化的项目管理,经过多方考究和对比后,选择了目前较受欢迎的开源项目管理软件:禅道. ...

  2. 如何在linux CentOS 上安装chrome 谷歌浏览器?

    获得linux命令的root权限:http://blog.csdn.net/mddy2001/article/details/76521101. 更改密码在终端中输入:sudo passwd root ...

  3. 在Linux CentOS上部署Asp.Net Core项目(Tengine、Asp.Net Core、Centos、MySql)

    一.前言 1.简单记录一下Linux CentOS 7中安装与配置Tengine的详细步骤. 2.简单比较一下Tengine 和Nginx 3.搭建Asp.net Core和部署 Web程序 4.总结 ...

  4. 如何在Linux服务器上部署Mysql

    一.安装mysql 1.通过文件上传工具,将mysql安装包上传到linux服务器上 2.卸载mariadb包,由于系统中存在mariadb包会导致mysql安装时报错mariadb-libs被mys ...

  5. 如何在 Linux 服务器上部署多个 Tomcat

    开发管理项目时多多少少会遇到服务器不够用.一个项目分成多个子项目的情况,故研究了一下如何在一台服务器部署多个 Tomcat. 具体操作: 1.在 /tomcat/ 下部署多个 tomcat. 2.修改 ...

  6. Linux CentOS下部署Java Web项目

    本文讲解如何在Linux CentOS下部署Java Web项目的步骤. 一.环境准备: (1)Linux CentOS (2)apache-tomcat-9.0.10 (3)XShell 二.启动t ...

  7. 分布式文件系统 FastDFS 5.0.5 & Linux CentOS 7 安装配置(单点安装)——第一篇

    分布式文件系统 FastDFS 5.0.5 & Linux CentOS 7 安装配置(单点安装)--第一篇 简介 首先简单了解一下基础概念,FastDFS是一个开源的轻量级分布式文件系统,由 ...

  8. CentOS上部署Django+Nginx+Uwsgi环境

    在CentOS上部署Django+Nginx+Uwsgi环境 奇谭  2016-09-01 评论  Linux  python django nginx uwsgi VirtualEnv的作用:创建隔 ...

  9. 在CentOS上部署kubernetes1.9.0集群

    原文链接: https://jimmysong.io/kubernetes-handbook/cloud-native/play-with-kubernetes.html (在CentOS上部署kub ...

随机推荐

  1. vue的父与子组件的访问

    父访问子 (需要掌握) this.$children 和 this.$refs this.$children 返回的是一个数组,包含父组件的所有子组件 this,$refs 返回的是一个对象,默认为空 ...

  2. pytest--mark基本使用(主要通过pytest.ini文件注册标签名,对用例进行标记分组)

    1.pytest中的mark介绍 mark主要用于在测试用例/测试类中给用例打标记(只能使用已注册的标记 名),实现测试分组功能,并能和其它插件配合设置测试方法执行顺序等.如下 图,现在需要只执行红色 ...

  3. BI和报表的区别在哪?还傻傻分不清楚吗?

    1.面向人群不同 报表主要针对IT人员,或者专业的报表开发人员.用户需要具备一定的编程知识.制作一张报表通常需要先由业务人员提出需求,再由IT部门人员取数制作报表. BI主要面向业务人员和管理人员.B ...

  4. Kubernetes云供应商架构的未来

    首先,我想分享SIG的使命,因为我们用它来指导我们现在和将来的工作.从我们的章程中直接来看,SIG的使命是简化,开发和维护云供应商集成,作为Kubernetes集群的扩展或附加组件.这背后的动机是双重 ...

  5. Java:IO流(二)——InputStream/OutputStream具体用法:FileXXXStream、ByteArrayXXXStream

    1.说明 InputStream和OutputStream是Java标准库中最基本的IO流,它们都位于java.io包中,该包提供了所有同步IO的功能. 2.模块:java.io.InputStrea ...

  6. 解决 “Project ERROR: Unknown module(s) in QT: webengine”以及“Your MaintenanceTool appears to be older than 3.0.2. .” 的办法

    1.环境 Windows10,Qt5.8.0 2.问题描述 需要使用到WebEngineView组件,在工程.pro中增加webengine后,Qt Creator应用程序输出中打印了 Project ...

  7. pyqt(二)

    二.文本和图片 1. 文本控件 文本控件是QLabel from PyQt5.QtWidgets import QWidget,QApplication,QLabel from PyQt5.QtCor ...

  8. 数据库连接池与SQL工具类

    数据库连接池与SQL工具类 1.数据库连接池 依赖包 pymysql dbutils # -*- coding: utf-8 -*- ''' @Time : 2021/11/19 16:45 @Aut ...

  9. 字符串格式化String.Format

    //给变量赋值字符串00002 string s = String.Format( "{0:d5}", 2);

  10. SpringBoot 搭建基于 MinIO 的高性能存储服务

    1.什么是MinIO MinIO是根据GNU Affero通用公共许可证v3.0发布的高性能对象存储.它与Amazon S3云存储服务兼容.使用MinIO构建用于机器学习,分析和应用程序数据工作负载的 ...