http://blog.csdn.net/xingjiarong/article/details/50559761

在前面的一篇中,我们分析了FastDFS的架构,知道了FastDFS是由客户端,跟踪服务器和存储服务器三部分组成,下面我们就来看一下如何动手搭建一个FastDFS的环境出来。这是FastDFS的主页:https://code.google.com/p/fastdfs/,上边有FastDFS的简单介绍和一些常用的下载。但是本人觉得,官网上的搭建过程过于简单,并且没有对一个异常提出解决方案,对于一个新手来说是很难搭建出一个满意的环境的,毕竟对FastDFS有较高的造诣的人也不会纠结怎么搭建环境,所以这里我总结了一下我的搭建过程和其中遇到的一些问题,希望对大家有所帮助,如果有什么问题还请大家积极指出。

一、环境声明

我觉得对于搭建环境的博客来说首先要做的就是声明博文中使用的环境是什么,好让看博客的人形成对照,好多的博主不说明自己的环境,一上来就开始执行命令,很多人跟着博主进行搭建,搭建了一大半了才发现自己和博主的环境根本就不一样,即浪费了时间又影响了心情。在这里我说明一下我的环境。我使用的是Ubuntu14.04 LTS 64位 作为搭建的主机,搭建单节点的FastDFS环境,注意是单节点的。我们先从最简单的入手,后边我会再写一篇如何搭建多节点的环境。为了方便恢复系统,我使用了VirtualBox虚拟了Ubuntu14.04 LTS,当然如果您想在物理机上搭建当然也可以。以下博客中出现的所有命令都在root权限下执行。

二、环境准备-安装libevent

FastDFS内部绑定了libevent作为http服务器,在V2.X版本以上必须安装libevent,本文安装的是V4.06版本,因此必须安装libevent。

如果已经安装了libevent,请确认安装路径是/usr , 因为FastDFS在编译源程序时,需要到此目录下查找一些依赖文件,否则编译FastDFS会出错。如果不是,建议首先卸载libevent,然后安装到 /usr 下。本文安装的是libevent-2.0.19-stable.tar.gz,下载地址:https://acelnmp.googlecode.com/files/libevent-2.0.19-stable.tar.gz,按照如下的步骤进行安装。

wget https://acelnmp.googlecode.com/files/libevent-2.0.19-stable.tar.gz tar zxvf libevent-2.0.19-stable.tar.gz ./configure --prefix=/usr make clean make make install

这样libevent就安装按成了。

三、安装FastDFS

1、首先下载FastDFS

wget https://fastdfs.googlecode.com/files/FastDFS_v4.06.tar.gz

2、解压缩

tar vxzf FastDFS_v4.06.tar.gz %FastDFS% 

注:这里的%FastDFS% 是解压目录,每个人根据自己的实际情况进行替换即可。

3、修改make.sh文件

首先执行如下命令查看一下自己的libpthread.a位于什么地方

find / -name 'libpthread.a'

结果为:/usr/lib/x86_64-linux-gnu/libpthread.a

同样的方法查看自己的libpthread.so文件为什么什么地方

find / -name 'libpthread.so'

结果为:/usr/lib/x86_64-linux-gnu/libpthread.so

找到make.sh中关于libpthread.a和libpthread.so的地方,在其中加入自己刚刚找到的文件位置。

原文件

if [ -f /usr/lib/libpthread.so ] || [ -f /usr/local/lib/libpthread.so ] ||
[ -f /lib64/libpthread.so ] || [ -f /usr/lib64/libpthread.so ] || [ -f /usr/lib/libpthread.a ] || [ -f /usr/local/lib/libpthread.a ] || [ -f /lib64/libpthread.a ] || [ -f /usr/lib64/libpthread.a ]; then LIBS="$LIBS -lpthread"

修改后的文件

if [ -f /usr/lib/libpthread.so ] || [ -f /usr/local/lib/libpthread.so ] || [ -f /lib64/libpthread.so ] || [ -f /usr/lib64/libpthread.so ] || [ -f /usr/lib/x86_64-linux-gnu/libpthread.so ]|| [ -f /usr/lib/libpthread.a ] || [ -f /usr/lib/x86_64-linux-gnu/libpthread.a ] || [ -f /usr/local/lib/libpthread.a ] || [ -f /lib64/libpthread.a ] || [ -f /usr/lib64/libpthread.a ]; then LIBS="$LIBS -lpthread"

这一步的目的是因为不同的机器pthread的类库的位置是不同的,如果不进行设置的话,在编译的时候就会出现找不到pthread等错误。

注意:有人的博客中写到为了支持http,要设置WITH_HTTPD=1等等,在我安装的v4.06中,FastDFS不再集成http的功能,如果想要通过http下载文件的话,需要配置单独的fastdfs-apache-module,后边的博客中我会单独说明如何配置。

4、修改client/fdfs_link_library.sh.in

找到以下的位置

将lib64改为lib,否则会出现文件不存在的错误。修改为如下所示:

5、开始安装

在FastDFS根目录下执行如下的命令进行安装,如果没有报错就说明安装成功了

./make.sh
./make.sh install

转载于:https://www.cnblogs.com/telwanggs/p/6971699.html

(转)分布式文件存储FastDFS(二)FastDFS安装相关推荐

  1. 微服务系列:分布式文件存储之 MinIO 入门指南

    经过前面多篇文章我们学习了服务网关.服务调用.服务注册.服务监控等微服务系列的的相关知识,今天开始我们来学习一下分布式文件的相关知识. 首先我们从学习 MinIO 对象存储服务开始,后面还会学习下其他 ...

  2. 分布式文件存储FastDFS介绍安装部署及相关Java代码编写

    分布式文件存储FastDFS 一.FastDFS简介 1.1 FastDFS体系结构 FastDFS是一个开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储.文件同步.文件访问(文件上传 ...

  3. 分布式文件存储FastDFS使用教程(下载安装使用)

    分布式文件存储FastDFS 1.FastDFS 1.1 FastDFS简介 1.1.1 FastDFS体系结构 1.1.2 上传流程 1.2 FastDFS搭建 1.2.1 安装FastDFS镜像 ...

  4. 分布式文件存储FASTDFS

    分布式文件存储FASTDFS 目录 概 述 小结 参考资料和推荐阅读 LD is tigger forever,CG are not brothers forever, throw the pot a ...

  5. 全栈开发之MinIO分布式文件存储集群

    背景 你们项目中关于上传的文件是存储在什么地方的? 我们的项目关于文件存储经过了这么一个演进过程: 静态资源目录:当时前后端不分离,直接在项目的静态资源目录,每次部署前,先备份资源目录,否则就会丢失掉 ...

  6. K8S部署分布式文件存储minio两种部署方式

    一. 分布式文件存储系统有很多,比如hadoop的HDFS和FastDFS.今天部署minio文件系统. 二. 分布式文件存储minio GitHub官网和minio官网都有详细的文档 MinIO下载 ...

  7. 架构方案(16) 常见分布式文件存储介绍、选型比较、以及架构设计

    数据正成为世界上最有价值的资源,分布式文件存储是应对数据爆炸的最好解决方案,那就会涉及到分布式文件存储方案.选型.架构设计等. 分布式文件存储的来源 在这个数据爆炸的时代,产生的数据量不断地在攀升,从 ...

  8. 盲沟低比?不不不,是芒果的笔,今天学一下分布式文件存储数据库MongoDB。

    老样子先上图,上一篇NOSQL有大佬说要把首图的数据库全部学习了,今天特意只上了一张小图,一个就够了! 文章目录 前言 一.MongoDB 历史 二.MongoDB 支持语言 三.MongoDB 与关 ...

  9. 分布式文件存储相关概念

    分布式文件存储 1 常见专业术语 1.1 备份技术 出于数据恢复的目的而创建的一份额外的数据副本 分类:直接连接备份,网络连接备份, 脱局域网备份,脱服务器备份 在线备份,离线备份,近线备份 ①冷备份 ...

  10. 常见分布式文件存储介绍、选型比较、以及架构设计

    2019独角兽企业重金招聘Python工程师标准>>> 分布式文件存储的来源 在这个数据爆炸的时代,产生的数据量不断地在攀升,从GB,TB,PB,ZB.挖掘其中数据的价值也是企业在不 ...

最新文章

  1. OpenCASCADE绘制测试线束:图形命令之AIS 查看器——网格可视化服务
  2. 基于jsp+Spring+mybatis的SSM企业门户网站设计和实现
  3. 语法分析与中间代码生成
  4. 工厂支持多数据库开发的三层结构模式随笔(一)
  5. 如何成为一名卓越的数据科学家——开篇七剑
  6. Java在线反编译器
  7. mp4编码为hevc无法在浏览器播放的问题(java进行转码为h264)
  8. MTK驱动代码流程介绍:
  9. 数分统计学基础知识框架。
  10. Spss-多元回归案例实操
  11. 利用 RUP达到 CMM2和3级
  12. MStar点屏(LVDS接口屏)
  13. bad interpreter问题
  14. python没有switch case_为什么Python中没有Switch/Case语句?
  15. ITX迷你主机的优点及缺点
  16. 7z和winrar命令行压缩方法
  17. html 占用空间 滚动轴_html – 缩放子级上的溢出滚动:X和Y轴上的不同行为
  18. 2019年西工大附中分校民办小升初电脑随机派位录取结果
  19. NEFU 大一寒假培训【一】二维数组、结构体
  20. 73个word使用终极技巧

热门文章

  1. Linux之虚拟机配置双网卡
  2. (68)FPGA模块调用(Verilog调用VHDL)
  3. python分片上传_python 分片上传大格式
  4. Nginx基本数据结构之ngx_hash_wildcard_t
  5. linux下的进程信号,信号注册、处理方式、注销,信号阻塞及volatile代码优化
  6. 嵌入式Linux系统编程学习之二十二内存映射
  7. java班长竞选投票_竞选班长采取投票式,引家长不满,班主任:您说该怎么选?...
  8. php显示当前访问人数,PHP与jquery实时显示网站在线人数实例详解
  9. python函数的嵌套和递归_Python通过递归函数输出嵌套列表元素
  10. intellij idea开发工具