CentOS7安装FastDFS 5.05

#!/bin/bash


# https://sourceforge.net/projects/fastdfs/files/  
# 》 FastDFS Server Source Code 》FastDFS_v5.08.tar.gz
# 本教程下载:FastDFS_v5.05.tar.gz
#set env 即安装依赖软件
#libfastcommon是FastDFS官方提供,https://github.com/happyfish100/libfastcommon
#libfastcommon包含了FastDFS运行所需要的一些基础库。
#mkdir  /home/FastDFSPackage  &&  cd   /home/FastDFSPackage
#Xftp上传①FastDFS_v5.05.tar.gz,②libfastcommonV1.0.7.tar.gz,
#③fastdfs-nginx-module_v1.16.tar.gz,④nginx-1.10.3.tar.gz至/home/FastDFSPackage
yum -y install  zlib pcre pcre-devel zlib-devel
yum -y install gcc gcc-c++ libstdc++-devel wget make
yum -y groupinstall 'Development Tools'
yum install -y unzip zip
yum install -y libevent
tar -zxvf libfastcommonV1.0.7.tar.gz
cd libfastcommon-1.0.7
./make.sh
./make.sh install
#注意:libfastcommon安装好后会自动将库文件拷贝至/usr/lib64下,由于FastDFS程序引用/usr/lib目录所以需要将/usr/lib64下的库文件拷贝或者引用,至/usr/lib下。
ln -s /usr/lib64/libfastcommon.so /usr/lib/libfastcommon.so
ln -s /usr/lib64/libfdfsclient.so /usr/local/lib/libfdfsclient.so
ln -s /usr/lib64/libfdfsclient.so /usr/lib/libfdfsclient.so






#tracker编译安装
tar -zxvf  FastDFS_v5.05.tar.gz  -C  /usr/local
cd /usr/local/FastDFS
./make.sh
./make.sh install


[root@localhost FastDFS]# ./make.sh install
mkdir -p /usr/bin
mkdir -p /etc/fdfs
cp -f fdfs_trackerd /usr/bin
if [ ! -f /etc/fdfs/tracker.conf.sample ]; then cp -f ../conf/tracker.conf /etc/fdfs/tracker.conf.sample; fi
mkdir -p /usr/bin
mkdir -p /etc/fdfs
cp -f fdfs_storaged  /usr/bin
if [ ! -f /etc/fdfs/storage.conf.sample ]; then cp -f ../conf/storage.conf /etc/fdfs/storage.conf.sample; fi
mkdir -p /usr/bin
mkdir -p /etc/fdfs
mkdir -p /usr/lib64
cp -f fdfs_monitor fdfs_test fdfs_test1 fdfs_crc32 fdfs_upload_file fdfs_download_file fdfs_delete_file fdfs_file_info fdfs_appender_test fdfs_appender_test1 fdfs_append_file fdfs_upload_appender /usr/bin
if [ 0 -eq 1 ]; then cp -f libfdfsclient.a /usr/lib64; fi
if [ 1 -eq 1 ]; then cp -f libfdfsclient.so /usr/lib64; fi
mkdir -p /usr/include/fastdfs
cp -f ../common/fdfs_define.h ../common/fdfs_global.h ../common/mime_file_parser.h ../common/fdfs_http_shared.h ../tracker/tracker_types.h ../tracker/tracker_proto.h ../tracker/fdfs_shared_func.h ../storage/trunk_mgr/trunk_shared.h tracker_client.h storage_client.h storage_client1.h client_func.h client_global.h fdfs_client.h /usr/include/fastdfs
if [ ! -f /etc/fdfs/client.conf.sample ]; then cp -f ../conf/client.conf /etc/fdfs/client.conf.sample; fi
采用默认安装方式脚本文件说明:服务脚本在:cd /etc/init.d/ && ls |grep fdfs
/etc/init.d/fdfs_storaged
/etc/init.d/fdfs_trackerd
配置文件在:
/etc/fdfs/client.conf.sample
/etc/fdfs/storage.conf.sample
/etc/fdfs/tracker.conf.sample
命令行工具在/usr/bin/目录: cd /usr/bin/ && ls |grep fdfs
fdfs_appender_test
fdfs_appender_test1
fdfs_append_file
fdfs_crc32
fdfs_delete_file
fdfs_download_file
fdfs_file_info
fdfs_monitor
fdfs_storaged
fdfs_test
fdfs_test1
fdfs_trackerd
fdfs_upload_appender
fdfs_upload_file
FastDFS服务脚本设置的bin目录为/usr/local/bin/下,
但是实际我们安装在了/usr/bin/下面。
所以我们需要修改FastDFS配置文件中的路径,也就是需要修改俩个配置文件:
命令:vim /etc/init.d/fdfs_storaged
进行全局替换命令:%s+/usr/local/bin+/usr/bin
命令:vim /etc/init.d/fdfs_trackerd
进行全局替换命令:%s+/usr/local/bin+/usr/bin


#安装成功将安装目录下的conf下的文件拷贝到/etc/fdfs/下。
[root@localhost FastDFS]# ll  /usr/local/FastDFS/conf/
总用量 84
-rw-r--r--. 1 8980 users 23981 12月  2 2014 anti-steal.jpg
-rw-r--r--. 1 8980 users  1461 12月  2 2014 client.conf
-rw-r--r--. 1 8980 users   858 12月  2 2014 http.conf
-rw-r--r--. 1 8980 users 31172 12月  2 2014 mime.types
-rw-r--r--. 1 8980 users  7829 12月  2 2014 storage.conf
-rw-r--r--. 1 8980 users   105 12月  2 2014 storage_ids.conf
-rw-r--r--. 1 8980 users  7102 12月  2 2014 tracker.conf
[root@localhost fdfs]# ll  /etc/fdfs
总用量 20
-rw-r--r--. 1 root root 1461 4月  18 19:05 client.conf.sample
-rw-r--r--. 1 root root 7829 4月  18 19:05 storage.conf.sample
-rw-r--r--. 1 root root 7102 4月  18 19:05 tracker.conf.sample
cp  /usr/local/FastDFS/conf/*  /etc/fdfs/
[root@localhost FastDFS]# ll  /etc/fdfs/
总用量 84
-rw-r--r--. 1 8980 users 23981 12月  2 2014 anti-steal.jpg
-rw-r--r--. 1 8980 users  1461 12月  2 2014 client.conf
-rw-r--r--. 1 8980 users   858 12月  2 2014 http.conf
-rw-r--r--. 1 8980 users 31172 12月  2 2014 mime.types
-rw-r--r--. 1 8980 users  7829 12月  2 2014 storage.conf
-rw-r--r--. 1 8980 users   105 12月  2 2014 storage_ids.conf
-rw-r--r--. 1 8980 users  7102 12月  2 2014 tracker.conf
[root@localhost fdfs]# ll  /etc/fdfs/
总用量 104
-rw-r--r--. 1 root root 23981 4月  18 19:19 anti-steal.jpg
-rw-r--r--. 1 root root  1461 4月  18 19:19 client.conf
-rw-r--r--. 1 root root  1461 4月  18 19:05 client.conf.sample
-rw-r--r--. 1 root root   858 4月  18 19:19 http.conf
-rw-r--r--. 1 root root 31172 4月  18 19:19 mime.types
-rw-r--r--. 1 root root  7829 4月  18 19:19 storage.conf
-rw-r--r--. 1 root root  7829 4月  18 19:05 storage.conf.sample
-rw-r--r--. 1 root root   105 4月  18 19:19 storage_ids.conf
-rw-r--r--. 1 root root  7102 4月  18 19:19 tracker.conf
-rw-r--r--. 1 root root  7102 4月  18 19:05 tracker.conf.sample




#tracker配置
mkdir -p /fastdfs/tracker #创建目录
vim /etc/fdfs/tracker.conf #修改tracker.conf
base_path=/home/yuqing/FastDFS 改为:base_path=/fastdfs/tracker
对于tracker.conf配置文件参数解释可以找官方文档,地址为:
http://bbs.chinaunix.net/thread-1941456-1-1.html 

firewall-cmd   --permanent --zone=public --add-port=22122/tcp
firewall-cmd   --reload


#tracker启动|停止|重启
ll  /fastdfs/tracker/ #查看文件夹 
/etc/init.d/fdfs_trackerd  start|stop|restart|status #启动|停止|重启,tracker
ps -el|grep  fdfs #查看fdfs进程
ll  /fastdfs/tracker/ #查看文件夹:logs文件夹,data文件夹
vim /etc/rc.d/rc.local #设置开机启动
/etc/init.d/fdfs_trackerd start




#storage配置
mkdir -p /fastdfs/storage #创建目录
vim /etc/fdfs/storage.conf #修改storage.conf
base_path=/home/yuqing/FastDFS 改为:base_path=/fastdfs/storage
store_path0=/home/yuqing/FastDFS 改为:store_path0=/fastdfs/storage
#如果有多个挂载磁盘则定义多个store_path,如下
#store_path1=.....
#store_path2=......
tracker_server=192.168.0.3:22122   #配置tracker服务器:IP
#如果有多个则配置多个tracker
#tracker_server=192.168.0.4:22122
http.server_port=8888

firewall-cmd   --permanent --zone=public --add-port=23000/tcp
firewall-cmd   --reload

#storage启动
ll  /fastdfs/storage #查看文件夹
/etc/init.d/fdfs_storaged  start|stop|restart|status #启动|停止|重启,tracker
ps -el|grep  fdfs #查看fdfs进程
ll  /fastdfs/storage/ #查看文件夹:logs文件夹,data文件夹
vim /etc/rc.d/rc.local #设置开机启动
/etc/init.d/fdfs_storaged start




#测试,用/usr/bin/fdfs_test测试
vim  /etc/fdfs/client.conf
base_path=/fastdfs/tracker
tracker_server=192.168.0.3:22122
ls /fastdfs/storage/data/00/00 #查看文件夹,什么也没有。
#使用格式:/usr/bin/fdfs_test 客户端配置文件地址  upload  上传文件
#例如:将/home下的图片上传到FastDFS中:
①/usr/bin/fdfs_test /etc/fdfs/client.conf upload  /etc/fdfs/anti-steal.jpg 
example file url: 
http://192.168.0.3/group1/M00/00/00/wKgAA1rXMjCAPrqTAABdrZgsqUU599.jpg
http://192.168.0.3/group1/M00/00/00/wKgAA1rXMjCAPrqTAABdrZgsqUU599_big.jpg
②/usr/bin/fdfs_upload_file /etc/fdfs/client.conf /etc/fdfs/anti-steal.jpg 


ls /fastdfs/storage/data/00/00 #查看文件夹
[root@localhost data]# ls /fastdfs/storage/data/00/00
wKgAA1rXMjCAPrqTAABdrZgsqUU599_big.jpg    wKgAA1rXMjCAPrqTAABdrZgsqUU599.jpg
wKgAA1rXMjCAPrqTAABdrZgsqUU599_big.jpg-m  wKgAA1rXMjCAPrqTAABdrZgsqUU599.jpg-m


#访问 http://192.168.0.3/group1/M00/00/00/wKgAA1rW_kmAT7woAAAClw10KCA106_big.png  
Not Found
The requested URL /group1/M00/00/00/wKgAA1rW_kmAT7woAAAClw10KCA106_big.png was not found on this server.
#由于现在还没有和nginx整合无法使用http下载。




#FastDFS与nginx整合
#在tracker上安装nginx,安装细节参考nginx文档。
#在每个tracker上安装nginx,的主要目的是做负载均衡及实现高可用。
#如果只有一台tracker服务器可以不配置nginx。
#在Storage上安装nginx
#Xftp上传fastdfs-nginx-module_v1.16.tar.gz至/home/FastDFS
cd /home/FastDFSPackage/
tar -zxvf fastdfs-nginx-module_v1.16.tar.gz  -C /usr/local/
cd  /usr/local/fastdfs-nginx-module/src
vim /usr/local/fastdfs-nginx-module/src/config
修改config文件将/usr/local/路径改为/usr/,只修改第四行,第五行不用修改。
CORE_INCS="$CORE_INCS /usr/local/include/fastdfs /usr/local/include/fastcommon/"
CORE_INCS="$CORE_INCS /usr/include/fastdfs /usr/include/fastcommon/"


rm  -rf  /usr/local/nginx/
cd  /home/FastDFSPackage
tar -zxvf nginx-1.10.3.tar.gz 
cd /home/FastDFSPackage/nginx-1.10.3
./configure --add-module=/usr/local/fastdfs-nginx-module/src/
make && make install


#将FastDFS-nginx-module/src下的mod_FastDFS.conf拷贝至/etc/fdfs/下
cp  /usr/local/fastdfs-nginx-module/src/mod_fastdfs.conf  /etc/fdfs/
vim /etc/fdfs/mod_fastdfs.conf #修改:如连接超时时间、跟踪器路径配置、url的group配置、
base_path=/temp
  connect_timeout=10
tracker_server=192.168.0.3:22122
#tracker_server=192.168.0.4:22122(多个tracker配置多行)
url_have_group_name = true #url中包含group名称
store_path0=/fastdfs/storage #指定文件存储路径

cp /usr/lib64/libfdfsclient.so /usr/lib/ #将libfdfsclient.so拷贝至/usr/lib下
#创建nginx/client目录
mkdir -p /var/temp/nginx/client


#nginx配置文件
vim  /usr/local/nginx/conf/nginx.conf
修改内容为:
listen 8888;
server_name localhost;
location ~/group([0-9])/M00 {
root /fastdfs/storage/data;
ngx_fastdfs_module;
}
注意:nginx里的端口要和配置FastDFS存储中的storage.conf文件配置一致,http.server_port=8888
ln -s /fastdfs/storage/data/  /fastdfs/storage/data/M00


firewall-cmd   --permanent --zone=public --add-port=8888/tcp
firewall-cmd   --reload


/usr/local/nginx/sbin/nginx


启动命令:
启动tracker命令:/etc/init.d/fdfs_trackerd start
查看进程命令:ps -el | grep fdfs
启动storage命令:/etc/init.d/fdfs_storaged start
查看进程命令:ps -el | grep fdfs
启动nginx命令:/usr/local/nginx/sbin/nginx


停止命令:
停止tracker命令:/etc/init.d/fdfs_trackerd stop
关闭storage命令:/etc/init.d/fdfs_storaged stop
关闭nginx命令:/usr/local/nginx/sbin/nginx -s stop


删除上传文件:
/usr/bin/fdfs_delete_file /etc/fdfs/client.conf group1/M00/00/00/wK
gBe1iEcGOAafHdALSFS-ifSIk.tar.gz


#参考:https://www.cnblogs.com/tc520/p/6822412.html 

猜你喜欢

转载自blog.csdn.net/guolongpu/article/details/79996851