如何在Linux Centos上部署配置FastDFS
一.准备工作:
1.准备下面包文件
-- FastDFS_v5.08.tar.gz
-- libevent-2.0.22-stable.tar.gz
-- libfastcommon-master.zip
-- fastdfs-nginx-module_v1.16.tar.gz
-- nginx-1.10.0.tar.gz
下载上面所需文件:https://pan.baidu.com/s/10CJO2E9z8XqC_z9bocWMdg 提取码:h5zf
二.安装部署步骤
1.安装FastDFS所需各种依赖
1.1 安装GCC依赖
sudo yum -y install gcc
1.2 安装unzip工具
sudo yum install -y unzip zip
1.3 安装libevent
sudo yum -y install libevent
1.4 安装Nginx所需依赖(假如该系统已经按照了nginx,就可以跳过该步骤)
sudo yum -y install pcre pcre-devel zlib zlib-devel openssl openssl-devel
2.把所有需要用到的文件上传到linux系统中
2.1通过xshell工具,连接上linux系统
2.2.进入到opt目录下
2.3.通过rz命令进行上传文件,输入rz,点击回车,就能打开下面界面
注意:假如该linux系统未安装rz和sz命令,请先输入以下命令进行源码安装--yum install -y lrzsz
3.依次解压安装编译各个压缩包
3.1 编译安装libfastcommon-master
输入以下命令对该文件进行解压操作:
unzip -xvf libfastcommon-master.zip
进入当刚刚解压后的目录--cd libfastcommon-master/
输入以下命名进行编译sudo ./make.sh
编译完后,再输入sudo ./make.sh intall进行安装
3.2 安装FastDFS
返回到opt目录下,也就是FastDFS压缩包上传的位置--cd /opt/
然后输入以下命令进行解压操作:tar -xvf FastDFS_v5.08.tar.gz
解压成功后,进入到解压目录--cd FastDFS
然后进行编译及安装操作-sudo ./make.sh
编译成功后,再进行安装
安装成功后,现在来检查以下是否真的安成功了吧
输入以下命令,查看是否安装成功--ll /etc/init.d/ | grep fdfs,我们发现该目录下已经有FastDFS提供的二个启动脚本了
- fdfs_trackerd 是tracker启动脚本
- fdfs_storaged 是storage启动脚本
然后再看看/etc/fdfs目录下是否存在三个配置文件--ll /etc/fdfs/
-- client.conf.sample
-- storage.conf.sample
-- tracker.conf.sample
假如上面的文件都存在,就说明安装成功啦!接下来就是配置各类配置文件了。
3.3 配置tracker服务
3.3.1 首先我们对模块文件输入以下命令进行重命名---sudo cp tracker.conf.sample tracker.conf
3.3.2 然后编辑修改tracker.conf文件--sudo vim tracker.conf
该文件初始化只需要修改base_path字段就ok,假如你配置的目录不是图中的目录,只要保证你所配置的目录存在即可。
3.3.3 验证tracker是否配置成功
通过以下命令进行启动tracker: sudo service fdfs_trackerd start
假如嫌每次启动麻烦,可以配置成开机启动--sudo chkconfig fdfs_trackerd on
3.4 配置storage服务
3.4.1 首先我们对模块文件输入以下命令进行重命名---sudo cp storage.conf.sample storage.conf
3.4.2 然后对storage.conf文件进行修改下面几个参数--sudo vim storage.conf
base_path=/opt/FastDFS/storage # storage的数据和日志存放目录--该目录必须得存在,不存在得去创建
store_path0=/opt/FastDFS/storage # storage的上传文件存放路径--该目录必须得存在,不存在得去创建
tracker_server=你linux的主机IP:22122 # tracker的地址
3.4.3 配置完成后我们来验证一下吧
通过以下命令进行启动tracker: sudo service fdfs_storaged start
假如嫌每次启动麻烦,可以配置成开机启动--sudo chkconfig fdfs_storaged on
最好我们查看下进程是否启动成功--ps -ef|grep fdfs
发现二个服务都启动成功了,恭喜你,走到了这步,马上可以是否FastFDS进行文件的上传下载了啦。
3.5 安装Nginx及FastDFS模块
3.5.1 安装FastDFS模块-fastdfs-nginx-module
进入到fastdfs-nginx-module_v1.16.tar.gz文件所在目录,即opt目录下-cd /opt/,然后解压到FastDFS目录下
对该文件进行解压操作--tar -xvf fastdfs-nginx-module_v1.16.tar.gz -C FastDFS/
3.5.2 解压成功后,我们来配置config文件吧
进入到刚刚解压的文件目录下的src目录下-cd /opt/FastDFS/fastdfs-nginx-module/src/
3.5.3 然后修改config文件-vim config
把里面的/usr/local/ 调整为/usr/
可以输入下面命令快速全局修改--:%s+/usr/local/+/usr/+g
修改完成后记得wq!保存退出哦
3.5.4 然后再来配置mod_fastdfs.conf文件
将src目录下的mod_fastdfs.conf复制到 /etc/fdfs目录--sudo cp mod_fastdfs.conf /etc/fdfs/
然后再修改复制过去的该文件:--sudo vim /etc/fdfs/mod_fastdfs.cof
- 修改以下参数:
connect_timeout=10 # 客户端访问文件连接超时时长(单位:秒)
tracker_server=你linux主机IP:22122 # tracker服务IP和端口
url_have_group_name=true # 访问链接前缀加上组名
store_path0=/opt/FastDFS/storage # 文件存储路径
修改完成后记得保存哦!
3.5.5 接下来就复制一下FastDFS的部分配置文件到/etc/fdfs目录中去
cd /opt/FastDFS/conf/
cp http.conf mime.types /etc/fdfs/
3.6 安装Nginx(假如你已经安装好了Nginx,请跳过该步骤哦)
进入到nginx-1.10.0.tar.gz文件所在目录,即opt目录下,然后对该文件进行解压操作--tar -xvf nginx-1.10.0.tar.gz
解压后,进入到解压的目录/opt/nginx-1.10.0/,然后进行添加模块--FastDFS/fastdfs-nginx-module/src/为上面fastdfs-nginx-module_v1.16.tar.gz文件所解压的目录
sudo ./configure --prefix=/opt/nginx --sbin-path=/usr/bin/nginx --add-module=/opt/FastDFS/fastdfs-nginx-module/src
安装配置好后,就可以开始编译及安装Nginx了啦
特别注意:假如你已经安装了Nginx了的话,那就跳过上面的3.6步骤,只进行下面的操作即可。
进入到nginx安装解压后的目录,然后进行添加模块--FastDFS/fastdfs-nginx-module/src/为上面fastdfs-nginx-module_v1.16.tar.gz文件所解压的目录
sudo ./configure --prefix=/opt/nginx --sbin-path=/usr/bin/nginx --add-module=/opt/FastDFS/fastdfs-nginx-module/src
然后先备份一下/usr/bin目录下的nginx文件
备份完成后,然后重新编译一下Nginx
编译完成后,进入到/opt/nginx-1.10.0/objs 目录下,把编译好的nginx文件复制到/usr/bin目录下,覆盖原先的nginx即可
进行到这里,就差最好一步啦,是不是很激动,赶紧看下面步骤吧....
3.7 配置nginx整合fastdfs-module模块
在nginx.conf文件中配置fastdfs-module模块
进入到opt目录下然后输入命令:sudo vim nginx/conf/nginx.conf
然后在该配置文件中写入以下配置内容:
server {
listen 80;
server_name 你的linux主机IP;
# 监听域名中带有group的,交给FastDFS模块处理
location ~/group([0-9])/ {
ngx_fastdfs_module;
}
location / {
root html;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
好了,到目前已经配置完成啦,是不是很高兴,接下来我们启动下nginx吧,直接输入nginx就可启动成功
nginx -s stop # 停止
nginx -s reload # 重新加载配置
假如需要开机启动的话,那我们可以查看下另外一篇随笔进行配置--点击查看
到现在我们就可以进行文件上传查看了啦。
现在我们修改下client.conf配置文件,我们用这个配置文件和/usr/bin目录下的一个上传脚本来模拟上传操作。
进入到/etc/fdfs目录下,先复制生成一份client.conf文件
然后再修改base_path和tracker_server参数,如图所示--vim client.conf--IP为你linux主机IP,base_path地址必须存在,不存在则需要去创建
修改后记得保存哦!
配置好后,我们重新启动下Fastdfs,然后就可以验证上传了啦。
sudo service fdfs_trackerd start;
sudo service fdfs_storaged start;
进入到/etc/fdfs目录下后输入下面命令进行上传,可以看到执行结果就是上传后的图片路径;
/usr/bin/fdfs_upload_file client.conf /tmp/photo.jpg
拿到这个路径后我们去访问一下
如何在Linux Centos上部署配置FastDFS的更多相关文章
- 如何在Linux服务器上部署禅道
最近换了新的项目团队,由于新团队比较年轻化,没有实行正规的项目管理,于是我自告奋勇要为团队管理出一份力,帮助团队建立敏捷化的项目管理,经过多方考究和对比后,选择了目前较受欢迎的开源项目管理软件:禅道. ...
- 如何在linux CentOS 上安装chrome 谷歌浏览器?
获得linux命令的root权限:http://blog.csdn.net/mddy2001/article/details/76521101. 更改密码在终端中输入:sudo passwd root ...
- 在Linux CentOS上部署Asp.Net Core项目(Tengine、Asp.Net Core、Centos、MySql)
一.前言 1.简单记录一下Linux CentOS 7中安装与配置Tengine的详细步骤. 2.简单比较一下Tengine 和Nginx 3.搭建Asp.net Core和部署 Web程序 4.总结 ...
- 如何在Linux服务器上部署Mysql
一.安装mysql 1.通过文件上传工具,将mysql安装包上传到linux服务器上 2.卸载mariadb包,由于系统中存在mariadb包会导致mysql安装时报错mariadb-libs被mys ...
- 如何在 Linux 服务器上部署多个 Tomcat
开发管理项目时多多少少会遇到服务器不够用.一个项目分成多个子项目的情况,故研究了一下如何在一台服务器部署多个 Tomcat. 具体操作: 1.在 /tomcat/ 下部署多个 tomcat. 2.修改 ...
- Linux CentOS下部署Java Web项目
本文讲解如何在Linux CentOS下部署Java Web项目的步骤. 一.环境准备: (1)Linux CentOS (2)apache-tomcat-9.0.10 (3)XShell 二.启动t ...
- 分布式文件系统 FastDFS 5.0.5 & Linux CentOS 7 安装配置(单点安装)——第一篇
分布式文件系统 FastDFS 5.0.5 & Linux CentOS 7 安装配置(单点安装)--第一篇 简介 首先简单了解一下基础概念,FastDFS是一个开源的轻量级分布式文件系统,由 ...
- CentOS上部署Django+Nginx+Uwsgi环境
在CentOS上部署Django+Nginx+Uwsgi环境 奇谭 2016-09-01 评论 Linux python django nginx uwsgi VirtualEnv的作用:创建隔 ...
- 在CentOS上部署kubernetes1.9.0集群
原文链接: https://jimmysong.io/kubernetes-handbook/cloud-native/play-with-kubernetes.html (在CentOS上部署kub ...
随机推荐
- Gradle进行Build 报GBK错误
如上图,码主电脑windows,公司用的gradle进行项目build,本地进行build,总是出现这种GBK错误. 本身知道这是文件的编码问题:一般文件都是UTF-8编码,compilejava 默 ...
- ssh远程端口转发&&windows系统提权之信息收集&&网安工具分享(部分)
一.ssh远程端口转发 背景:当我们在渗透过程中,获取到内网的一台仅有内网IP的服务器后,我们可以通过ssh隧道,将内网某个主机的端口进行远程转发 1.网络拓扑图 假设获取的服务器为web服务器,we ...
- [题解]RQNOJ PID86 智捅马蜂窝
链接:http://www.rqnoj.cn/problem/86 思路:单源点最短路 建图:首先根据父子关系连双向边,边权是距离/速度:再根据跳跃关系连单向边,边权是自由落体的时间(注意自由下落是一 ...
- 移动BI应该怎么规划?每一个数据产品经理必看
在移动化.大数据浪潮的今天,基于数据做决策应该是每一家公司的标配:每家公司都有专门负责数据的人,也都应该有一个BI部门. 而移动BI,基于手机端随时随地进行数据查询和分析--更是BI中不可或缺的一部分 ...
- 1、cpu架构和工作原理
cpu架构和工作原理 计算机有5大基本组成部分,运算器,控制器,存储器,输入和输出.运算器和控制器封装到一起,加上寄存器组和cpu内部总线构成中央处理器(CPU).cpu的根本任务,就是执行指令,对计 ...
- Pycharm:集体缩进、注释、折叠
1.集体缩进 选中代码块,按TAB 2.集体前移 选中代码块,Shift TAB 3.集体注释 选中代码块,CTRL + / 4.取消集体注释 再按一下CTRL+/ 5.集体折叠 CTRL+SHIFT ...
- linux-日常工作积累
Linux常用命令之envsubst https://blog.csdn.net/banche163/article/details/101369495 Linux中的EAGAIN含义 https:/ ...
- 超好用的Markdown编辑器Typora中的常见语法
目录 下载网址 安装 一.标题 一级标题 二级标题 三级标题 四级标题 五级标题 六级标题 二.语法环境 三.单选 四.字体 五.分割符 六.列表 七.图片引入 八.表格 九.超链接 下载网址 正版中 ...
- 如何写Markdown格式文档
Markdown Markdown是一种轻量级标记语言,创始人为约翰·格鲁伯.它允许人们使用易读易写的纯文本格式编写文档,然后转换成有效的XHTML(或者HTML)文档.这种语言吸收了很多在电子邮件中 ...
- Java集合多线程安全
线程安全与不安全集合 线程不安全集合: ArrayList LinkedList HashMap HashSet TreeMap TreeSet StringBulider 线程安全集合: Vecto ...