卸载fdfs
停止fdfs
[root@192_168_20_80 /home/jm/fastdfs]# rm -rf /usr/local/bin/fdfs_*
[root@192_168_20_80 /home/jm/fastdfs]# rm -rf /usr/local/bin/stop.sh
[root@192_168_20_80 /home/jm/fastdfs]# rm -rf /usr/local/bin/restart.sh
[root@192_168_20_80 /home/jm/fastdfs]# rm -rf /usr/local/lib/libfastcommon.so
[root@192_168_20_80 /home/jm/fastdfs]# rm -rf /usr/local/lib/libfdfsclient.so
[root@192_168_20_80 /home/jm/fastdfs]# rm -rf /usr/lib64/libfastcommon.so
[root@192_168_20_80 /home/jm/fastdfs]# rm -rf /usr/lib64/libfdfsclient.so
[root@192_168_20_80 /home/jm/fastdfs]# rm -rf /usr/lib/libfastcommon.so
[root@192_168_20_80 /home/jm/fastdfs]# rm -rf /usr/lib/libfdfsclient.so
[root@192_168_20_80 /home/jm/fastdfs]# rm -rf /usr/local/include/fastcommon
[root@192_168_20_80 /home/jm/fastdfs]# rm -rf /usr/local/include/fastdfs
[root@192_168_20_80 /home/jm/fastdfs]# cp -r /etc/fdfs /etc/fdfsbak
[root@192_168_20_80 /home/jm/fastdfs]# rm -rf /etc/fdfs/*
安装fdfs
安装异常解决:
其它配置参照nginx笔记
FastDHT 安装步骤完善
需要的依赖库文件: libevent-1.4.so.2 , libdb-4.7.so
依赖库文件存在于以下依赖包:libevent-1.4.14-stable Berkley DB-4.7.25
下载链接: libevent-1.4.14-stable : http://www.monkey.org/~provos/libevent-1.4.14-stable.tar.gz
db-4.7.25.tar.gz : [http://download.oracle.com/berkeley-db/db-4.7.25.tar.gz](http://download.oracle.com/berkeley-db/db-4.7.25.tar.gz)
FastDHT V1.18.tar.gz : [http://fastdht.googlecode.com/files/FastDHT_v1.18.tar.gz](http://fastdht.googlecode.com/files/FastDHT_v1.18.tar.gz)
一. 安装步骤:
(请按照顺序进行安装)
1. install libevent-1.4.14-stable.tar.gz
tar xzf libevent-1.4.14-stable.tar.gz
cd libevent-1.4.14-stable
./configure --prefix=/usr
make && make install
2. install Berkley DB-4.7.25
tar xzf db-4.7.25.tar.gz
cd db-4.7.25/build_unix
../dist/configure --prefix=/usr
make && make install
3. install FastDHT V1.18
tar xzf FastDHT_v1.18.tar.gz
cd FastDHT
./make.clean
./make.sh
./make.sh install
(确保存在 fdhtd.conf fdht_servers.conf fdht_client.conf 在服务器上)
二. 修改配置文件
创建目录: mkdir /etc/fdhtd (目录权限 : 755 所属者: root)
cp fdhtd.conf /etc/fdhtd/ (文件权限 : 644 所属者: root)
cp fdht_servers.conf /etc/fdhtd/ (文件权限 : 644 所属者: root)
cp fdht_client.conf /etc/fdhtd/ (文件权限 : 644 所属者: root)
vi /etc/fdhtd/fdhtd.conf
port=11411
bash_path=<自定义目录 例如: /fdht>
cache_size = 32MB
include /etc/fdhtd/fdht_servers.conf -> (本行前有#表示打开,如果想关闭此选项,则应该为##开头)
vi /etc/fdhtd/fdht_server.conf
group_count = 2 (数字可自定义)
group0 =
group0 =
group1 =
group1 =
依次类推
vi /etc/fdhtd/fdht_client.conf
keep_alive=1 --> (本选项关联 storaged.conf文件)
bash_path=<自定义目录 例如: /fdht>
include /etc/fdhtd/fdht_servers.conf
配置storaged.conf文件
vi storaged.conf (默认位置: /etc/fdfs/storaged.conf)
line 189: check_file_duplicate=1
本配置项解释: 是否检测上传文件已经存在。如果已经存在,则不存在文件内容,建立一个索引链接以节省磁盘空间
line 193: key_namespace=FastDFS
本配置项解释: 当上个参数设定为1时 , 在FastDHT中的命名空间
line 197: keep_alive=1
本配置项解释: 长连接配置选项,如果为0则为短连接 1为长连接
line 204: # include /etc/fdhtd/fdht_servers.conf
本配置项解释: 可以通过 #include filename 方式来加载 FastDHT servers 的配置
三. 判断排错
fdht文件应该存在于 /etc/fdhtd/文件夹下
/etc/fdfs/storaged.conf && /etc/fdfs/fdhtd.conf 2个配置文件中应开启如下配置项
include /etc/fdhtd/fdht_servers.conf
cache_size 应 > 32M及以上
ulimit -c unlimited 即可
四. 启动FastDHT
/usr/local/bin/fdhtd /etc/fdhtd/fdhtd.conf
若出现段错误,则按照如下步骤排查,若没有出现任何报错则直接使用命令 netstat -an | grep 11411来查看端口是否启动
段错误排错步骤:
1. ldd /usr/local/bin/fdhtd 查看是否所有动态链接库全链接完毕
ldd的结果应包含如下2条:
(X86_64)
libevent-1.4.so.2 => /lib64/libevent-1.4.so.2 (0x00000000.....)
libdb-4.7.so => /lib64/tls/libdb-4.7.so (0x00000000....)
(i386)
libevent-1.4.so.2 => /lib/libevent-1.4.so.2 (0x00000000.....)
libdb-4.7.so => /lib/tls/libdb-4.7.so (0x00000000....)
2. 若ldd的结果为 libdb-4.2.so => /lib64/tls/libdb-4.2.so (0x00000000....)
则应该进行如下替换操作:
find / -name libdb-4.7.so
cp {$path}/libdb-4.7.so /lib64/tls/libdb-4.2.so
3. 若结果没有错误,则检查对应安装软件版本
libevent-1.4.8以上版本
Berkeley-db-4.7.25以上版本
FastDHT V1.0以上版本
ldconfig
即可启动完成
v3.06安装异常解决方案
apt-get update
apt-get install build-essential
apt-get install libevent-dev
ln -s /usr/lib/x86_64-linux-gnu/libpthread.a /usr/lib/libpthread.a
ln -s /usr/lib/x86_64-linux-gnu/libpthread.so /usr/lib/libpthread.so
修改文件,client/fdfs_link_library.sh.in
ln -fs $TARGET_LIB/libfastcommon.so.1 /usr/lib64/libfastcommon.so
ln -fs $TARGET_LIB/libfdfsclient.so.1 /usr/lib64/libfdfsclient.so
修改为
ln -fs $TARGET_LIB/libfastcommon.so.1 /usr/lib/libfastcommon.so
ln -fs $TARGET_LIB/libfdfsclient.so.1 /usr/lib/libfdfsclient.so