Ubuntu16.04和CentOS7安装FastDFS服务

1.安装依赖

  • CentOS7
# yum install unzip zip  gcc-c++
nginx模块依赖
# yum -y install pcre pcre-devel
# yum -y install zlib zlib-devel
# yum -y install openssl openssl-devel


  • Ubuntu16.04
$ sudo apt-get install unzip
$ sudo apt-get install libpcre3 libpcre3-dev
$ sudo apt-get install zlib1g  zlib1g-dev
$ sudo apt-get install openssl libssl-dev 

2.下载必要的包

$ mkdir sofware
$ cd software
# FastDFSV5.11源码包
$ wget https://codeload.github.com/happyfish100/fastdfs/tar.gz/V5.11
$ tar -zxvf V5.11
# libfastcommon依赖库源码包
$ wget https://codeload.github.com/happyfish100/libfastcommon/tar.gz/V1.0.36
$ tar -zxvf V1.0.36
# fastdfs-nginx-module模块源码包
$ wget https://codeload.github.com/happyfish100/fastdfs-nginx-module/zip/master
$ unzip master
$ wget http://nginx.org/download/nginx-1.12.2.tar.gz
$ tar -zxvf nginx-1.12.2.tar.gz

3.安装包

  • 编译安装FastDFS
# 安装FastDFS依赖包

$ cd libfastcommon-1.0.36/
$ ./make.sh
$ sudo ./make.sh install
# libfastcommon.so 默认安装到了/usr/lib64/libfastcommon.so,但是FastDFS主程序设置的lib目录是/usr/local/lib,所以此处需要重新设置软链接:
$ sudo ln -s /usr/lib64/libfastcommon.so /usr/local/lib/libfastcommon.so
$ sudo ln -s /usr/lib64/libfdfsclient.so /usr/local/lib/libfdfsclient.so
$ sudo ln -s /usr/lib64/libfdfsclient.so /usr/lib/libfdfsclient.so
# 安装FastDFS
$ cd ..
$ cd fastdfs-5.11/
$ ./make.sh 
$ sudo ./make.sh install
$ cd ..


  • 编译安装nginx
$ sudo mkdir -p /var/tmp/nginx/proxy
$ cd nginx-1.12.2/
$ ./configure --prefix=/usr/local/nginx  --user=nginx --group=nginx --with-http_ssl_module --with-http_flv_module --with-http_gzip_static_module  --with-http_stub_status_module  --add-module=/root/sofware/fastdfs-nginx-module-master/src  --http-client-body-temp-path=/var/tmp/nginx/proxy --http-fastcgi-temp-path=/var/tmp/nginx/fcgi

$ make && sudo make install
$ sudo groupadd -f nginx
$ sudo useradd -g nginx nginx

3.配置包

  • tracker配置
$ sudo mkdir -p /FastDFS/tracker
$ sudo mkdir -p /FastDFS/storage
$ cd /etc/fdfs/
$ sudo cp client.conf.sample client.conf
$ sudo cp storage.conf.sample storage.conf
$ sudo cp tracker.conf.sample tracker.conf
# 配置tracker
$ sudo vim /etc/fdfs/tracker.conf 

#设置tracker的数据文件和日志目录
base_path=/FastDFS/tracker

# 启动tracker服务
$ sudo /etc/init.d/fdfs_trackerd start
# 查看服务状态
$ sudo netstat -unltp|grep fdfs
tcp        0      0 0.0.0.0:22122           0.0.0.0:*               LISTEN      14628/fdfs_trackerd
服务运行的22122端口正常


  • storage配置
$ sudo vim /etc/fdfs/storage.conf

#设置storage数据文件和日志目录
base_path=/FastDFS/storage
store_path0=/FastDFS/storage
#存储路径个数,需要和store_path个数匹配
store_path_count=1 
#tracker 服务器的 IP地址和端口号,如果是单机搭建,IP不要写127.0.0.1,否则启动不成功
$ tracker_server=192.168.184.132:22122 
$ sudo /etc/init.d/fdfs_storaged start
$ sudo netstat -unltp|grep fdfs
tcp        0      0 0.0.0.0:23000           0.0.0.0:*               LISTEN      15063/fdfs_storaged
tcp        0      0 0.0.0.0:22122           0.0.0.0:*               LISTEN      14628/fdfs_trackerd
# 查看:storage服务器是否已经登记到 tracker服务器,运行以下命令:
$ sudo /usr/bin/fdfs_monitor /etc/fdfs/storage.conf


  • 测试安装
# 编辑/etc/fdfs/client.conf配置文件
$ sudo vim /etc/fdfs/client.conf
# 修改内容:
base_path=/FastDFS/tracker
tracker_server=192.168.184.132:22122
# 上传文件测试:
$ fdfs_upload_file /etc/fdfs/client.conf /home/ubuntu/1.jpg
# 如果返回类似group1/M00/00/00/rBIK6VcaP0aARXXvAAHrUgHEviQ394.jpg的文件id则说明文件上传成功

  • 配置nginx
# 拷贝配置文件
$ sudo cp/home/ubuntu/software/fastdfs-5.11/conf/http.conf /etc/fdfs/
$ sudo cp /home/ubuntu/software/fastdfs-5.11/conf/mime.types  /etc/fdfs/
$ sudo cp /home/ubuntu/software/fastdfs-nginx-module-master/src/mod_fastdfs.conf /etc/fdfs/
# 编辑mod_fastdfs.conf文件,
$ sudo vim /etc/fdfs/mod_fastdfs.conf

#保存日志目录
base_path=/FastDFS/storage
#tracker服务器的IP地址以及端口号
tracker_server=192.168.184.132:22122 
#文件 url 中是否有 group 名
url_have_group_name = true 
# 存储路径
store_path0=/FastDFS/storage


# 配置nginx
$ cd /usr/local/nginx/conf/
$ sudo vim nginx.conf

# 配置nginx.conf文件,加入一个server配置
server{ 
        listen       9999;
        location ~/group[0-9]/  {
                root /FastDFS/storage/data;
                ngx_fastdfs_module;
        }
    }


  • 启动nginx:
$ sudo /usr/local/nginx/sbin/nginx
  • 1
  • 测试下载
# 上传一个图片
$ fdfs_upload_file /etc/fdfs/client.conf /home/ubuntu/1.jpg
# 返回路径
# group1/M00/00/00/rBIK6VcaP0aARXXvAAHrUgHEviQ394.jpg的文件id则说明文件上传成功
# 在浏览器访问
http://ip:9999/group1/M00/00/00/rBIK6VcaP0aARXXvAAHrUgHEviQ394.jpg

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值