linux上安装fastdfs及配置

一、基础环境准备

1、所需软件

在这里插入图片描述

名称 说明
libfastcommon fastdfs分离出的一些公用函数包
fastdfs fastdas软件包
fastdfs-nginx-module fastdfst和nginx的关联模块
nginx nginxl软件包

2、编辑环境

安装一些基础的支持环境

yum install git gccc gcc-c++ make automake autoconf libtool pcre pcre-devel zlib zlib-devel openssl-devel wget vim -y

如果不安装上面的基础环境 则后面安装时可能会出现相关命令找不见,如下
在这里插入图片描述
如果服务器无法访问外部网络,则只能通过离线包方式安装相关基础环境了。相关软件包已为大家准备妥当,敬请取用:
fastdfs相关离线软件包

2.1gcc安装

GCC为C语言编译器,由于fastdfs相关源码都是c语主编写的,所以环境上必须安装gcc
进入上传到服务器的gcc目录 执行以下命令 进行安装

rpm -Uvh *.rpm --nodeps --force
2.2 pcre安装

PCRE 作用是让 Nginx 支持 Rewrite 功能
安装命令如下

# 解压
tar -xzvf pcre-8.35.tar.gz
cd pcre-8.35/
./configure
make 
make install
2.3 安装openssl
tar -xzvf openssl-1.1.1h.tar.gz 
cd  openssl-1.1.1h
./config
make
make install
2.4 安装zlib
tar -zxvf zlib-1.2.11.tar.gz
cd zlib-1.2.11/
./configure
make
make install

3、磁盘目录

说明 位置
所有安装包的位置 /data/fastdfs-soft 将所准备的软件包上传至该目录
数据存储位置 /data/fastdfs

4、相关fastdfs软件安装

对于服务器如果服务器有外网,可以使用git拉取源码下来进行编绎安装。如果没有外网环境,则可以通过拷贝软件包至服务器,然后解压后进行编辑安装

4.1 安装libfastcommon

方式一:通过git从网上拉取源码

git clone https://github.com/happyfish100/libfastcommon.git --depth 1

方式二:通过有网环境下载软件包 然后拷贝至服务器,解压 (我这里是通过这种方式上传的,zip包 使用unzip libfastcommon-1.0.43.zip 命令进行解压)
无论是第一种方式 还是第二种方式 获取到的都是源码软件包,当一切都准备好后,进入到libfastcommon目录下 执行下以命令进行编绎及安装

# 我这里是自己上传的包  是有版本号的 大家安装时 请根据自己的实际情况做路径调整
cd libfastcommon-1.0.43
./make.sh && ./make.sh install
4.2 安装fastdfs

同样安装fastdfs也可以通过git方式获取源码

git clone https://github.com/happyfish100/fastdfs.git --depth 1

也可以拷贝已下载的源码至服务器(我采用的就是拷贝的方式),然后进入到fastdfs目录 进行编绎安装

# 我这里是自己上传的包  是有版本号的 大家安装时 请根据自己的实际情况做路径调整
 cd fastdfs-6.06
 ./make.sh && ./make.sh install

为了供nginx访问使用 还需要将http.conf 和mime.types文件拷贝至etc/fdfs目录下

# 我这里是自己上传的包  是有版本号的 大家做配置时 请根据自己的实际情况做路径调整
# 其实也可以同步/data/fastdfs-soft/fastdfs-6.06/conf目录下所有内容 到/etc/fdfs下,
# 否则后面则需手动cp 相应文件的sample 为配置文件 (即例 cp storage.conf.sample storage.conf)
cp /data/fastdfs-soft/fastdfs-6.06/conf/http.conf /etc/fdfs/
cp /data/fastdfs-soft/fastdfs-6.06/conf/mime.types /etc/fdfs/
4.3 fastdfs–nginx-module安装

源码获取同样可以通过git 或者拷贝上传方式
git方式

git clone https://github.com/happyfish100/fastdfs-nginx-module.git --depth 1

获取源码后 将其中的mod_fastdfs.conf 配置拷贝至/etc/fdfs目录下

# 我这里是自己上传的包  是有版本号的 大家做配置时 请根据自己的实际情况做路径调整 
cp /data/fastdfs-soft/fastdfs-nginx-module-1.22/src/mod_fastdfs.conf  /etc/fdfs
4.4 nginx安装

nginx安装包获取 可以通过wget在线下载,也可以自己手动拷贝至服务器
wget方式

wget http://nginx.org/download/nginx-1.18.0.tar.gz

软件包获取到后进行解压 安装

#解压
tar -zxvf nginx-1.18.0.tar.gz
cd nginx-1.18.0
#添加上fastdfs-nginx-module模块的配置 (注意=号后面的路径 就是上一步4.3中的fastdfs-nginx-module的路径)
./configure --add-module=/data/fastdfs-soft/fastdfs-nginx-module-1.22/src/
# 编绎安装
make && make install

5、fastdfs相关部署 单机模式

5.1 域名配置 (非必须 可省略)

在 /etc/hosts 中配置i添加 例

127.0.0.1 fastdfs.com
5.2 tracker配置
# 创建目录
mkdir -p /data/fastdfs

修改tracker.conf配置

# 如果tracker.conf 文件不存在,则看看是否有tracker.conf.sample,如果有 则cp tracker.conf.sample tracker.conf一份。如果tracker.conf.sample也没有 则可以去到前面fastdfs软件目录中conf目下复制一份到/etc/fdfs目录下
vim /etc/fdfs/tracker.conf

# 修改以下内容
# tracker服务器端口(默认22122 一般不用修改)
port=22122
# 存储日志和数据的根目录
base_path=/data/fastdfs 

永久关闭防火墙

systemctl disable firewalld.service

启动tracker服务

/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf start 

查看是否启动成功 通过下面的命令查看进程是否正常运行

ps -ef | grep tracker
5.3 storage配置

修改storage.conf配置

# 如果storage.conf 文件不存在,则看看是否有storage.conf.sample,如果有 则cp storage.conf.sample storage.conf一份。如果storage.conf.sample也没有 则可以去到前面fastdfs软件目录中conf目下复制一份到/etc/fdfs目录下
vim /etc/fdfs/storage.conf

# 修改以下内容
# storage服务器端口(默认23000 一般不用修改)
port=23000
# 存储日志和数据的根目录
base_path=/data/fastdfs 
# storage虚拟磁盘路径,如果配了store_path0则对应的是M00,如果配置了store_path1 则是M01 以此类推
store_path0=/data/fastdfs
# tracker 服务器IP和端口 (可以是ip 也可以是域名) (如果配置的是外网ip或外网域名 则记得一定要在安全组放行)
tracker_server=fastdfs.com:22122
# http访问文件的端口(默认8888,看情况修改,和nginx中保持一致)
http.server_port=80

启动storage

 /usr/bin/fdfs_storaged /etc/fdfs/storage.conf start
5.4 client客户端测试

修改client.conf配置

vim /etc/fdfs/client.conf

#需要如下这些内容
bast_path=/data/fastdfs
# tracker服务器ip和端口  (如果配置的是外网ip或外网域名 则记得一定要在安全组放行)
tracker_server=fastdfs.com:22122

测试文件上传 上传后返回ID则表示上传成功 如:group1/M00/00/00/eSgtrGXp7K2ANDgsAAAADK8IOy0497.txt
然后我们也可以去数据目录下查看上传的文件,验证是否落盘成功

# 随便进一个目录 例
cd /data
# 创建一个测试文件
touch a.txt
echo 'hello world' > a.txt
#上传文件 
 /usr/bin/fdfs_upload_file /etc/fdfs/client.conf /data/a.txt
# 删除文件
 /usr/bin/fdfs_delete_file /etc/fdfs/client.conf group1/M00/00/00/eSgtrGXp7K2ANDgsAAAADK8IOy0497.txt

6、配置nginx访问

配置mod_fastdfs.conf

vim /etc/fdfs/mod_fastdfs.conf
#需修改的内容如下
# tracker服务器ip和端口
tracker_server=fastdfs.com:22122
url_have_group_name= true
store_path0=/data/fastdfs

配置nginx.conf

vim /usr/local/nginx/conf/nginx.conf
#添加如下配置 或者修改为以下配置
server {
        listen       80;  ## 该端口要和storage.conf中的http.server_port相同
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location ~/group[0-9]/ {
          ngx_fastdfs_module;
        }
}

然后启动nginx

/usr/local/nginx/sbin/nginx

通过服务ip:端口/文件的key 即可访问文件了

相关推荐

  1. [linux] ossutil安装环境配置

    2024-03-11 13:44:04       39 阅读
  2. Linux IDEA 安装环境配置

    2024-03-11 13:44:04       39 阅读
  3. Linux】FTP安装部署配置用户

    2024-03-11 13:44:04       14 阅读
  4. docker-compse安装fastdfs

    2024-03-11 13:44:04       12 阅读
  5. Liunx的Apache安装配置

    2024-03-11 13:44:04       35 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-03-11 13:44:04       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-11 13:44:04       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-11 13:44:04       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-11 13:44:04       20 阅读

热门阅读

  1. linux Shell 命令行-02-var 变量

    2024-03-11 13:44:04       21 阅读
  2. MySQL之主从同步(openEuler版)

    2024-03-11 13:44:04       19 阅读
  3. 【SQL - 软件 - MySQL】随笔 - 查看已有数据库

    2024-03-11 13:44:04       20 阅读
  4. linux系统 QT 处理键盘Ctrl+C信号

    2024-03-11 13:44:04       19 阅读
  5. 举例说明计算机视觉(CV)技术的优势和挑战。

    2024-03-11 13:44:04       24 阅读
  6. Ubuntu系统开发环境搭建和常用软件

    2024-03-11 13:44:04       16 阅读
  7. Unity3D 基于AStar地图的摇杆控制角色详解

    2024-03-11 13:44:04       20 阅读
  8. Debian系APT源通用镜像加速配置

    2024-03-11 13:44:04       21 阅读
  9. NLP技术

    2024-03-11 13:44:04       22 阅读
  10. Go语言聊天室demo

    2024-03-11 13:44:04       19 阅读