Web 服务器 · 2012/11/12 2

Ubuntu 下编译安装 FastDFS

FastDFS 是一个开源的高性能的分布式文件系统(DFS), 它的主要功能包括: 文件存储, 文件同步, 文件访问(上传和下载). 专为大容量存储和负载平衡而设计. FastDFS适用于那些提供基于文件存储的网站, 例如图片分享和视频分享网站.下面就来说说如何安装 FastDFS.

1. 安装编译环境

sudo apt-get install build-essential

2. 安装依赖库(libevent)

sudo apt-get install libevent-dev

3. 执行安装
i. 从FastDFS 代码库下载最近版本的 FastDFS, 因为我使用的是PHP做客户端, 因此选用的是 FastDFS Server with PHP client extension source code V4.02, 命令行下的下载方式如下

curl -O http://fastdfs.googlecode.com/files/FastDFS_v4.02.tar.gz

ii. 解压刚刚下载的源码包

tar xzf FastDFS_v4.02.tar.gz

iii. 从源码编译 FastDFS

cd FastDFS
chmod 777 make.sh
sudo ./make.sh

安装过程如果出现 undefined reference to `pthread_kill’ 类似错误, 可能是无法正确找到 libpthread 所致, 可以使用如下方法查找到 libpthread 所在库:

locate libpthread.a | grep '\.a'

以及

locate libpthread.so | grep '\.so'

大致找到如下内容

/usr/lib/xxx/libpthread.so

找到 make.sh 中如下段 “if [ -f /usr/lib/libpthread.so ] || …”, 在其下添加一行新的条件

elif [ -f /usr/lib/xxx/libpthread.so ] || [ -f /usr/lib/xxx/libpthread.a ]; then
  lib_path="/usr/lib/xxx/"
  LIBS="-L$lib_path -lpthread"

然后再编译就可以了.
最后再执行:

sudo ./make.sh install 

至此, FastDFS 的编译安装工作就完成了