前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >手把手fastDFS实战1-安装部署

手把手fastDFS实战1-安装部署

原创
作者头像
技术路漫漫
修改2020-06-22 10:50:09
1.3K0
修改2020-06-22 10:50:09
举报

本文实现了基于fastDFS及nginx模块源代码的功能编译、安装及运行,详细记录了相关过程。

wsl ubuntu搭建

当前windows10支持通过wsl方式安装linux运行环境,具体参见官方说明https://docs.microsoft.com/zh-cn/windows/wsl/install-win10,主要步骤是:

  1. 先以管理员权限,执行dism命令
  2. 在store上获取并安装操作系统,例如 ubuntu 18
  3. 运行下载后的ubuntu18程序,启动并完成安装,安装完成后,通过会要创建一个用户,例如我当前的 techlmm/good
  4. 如果需重置密码或忘记密码,可参见https://docs.microsoft.com/zh-cn/windows/wsl/user-support
  5. 也可以通过 wsl -u root 切换到 root账号模式

git配置

先通过 wsl 可在cmd中启动 ubuntu,执行文件安装等时候,需要增加sudo,例如sudo apt-get install git

apt国内镜像配置

通常,因为网络问题,需要先将国内源添加到apt源文件中,具体方法是,先执行sudo nano /etc/apt/sources.list,打开该文件

然后将下属内容替换到该文件(原文件内容全部清除):

deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
# deb-src https://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
# deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
# deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
# deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse

注意,bionic是版本代号,具体可通过lsb_release -c命令查看到。

替换完成并保存后,需要执行sudo apt-get update生效

gcc等基本环境安装

执行sudo apt install gcc安装gcc,执行sudo apt install make安装make

fastdfs安装

libfastcommon编译

先进入usr目录,通过git获取git clone https://gitee.com/fastdfs100/libfastcommon.git,然后分别执行

sudo ./make.sh clean
sudo ./make.sh
sudo ./make.sh install

fastdfs编译

再开始编译fastdfs,先执行sudo git clone https://gitee.com/fastdfs100/fastdfs.git,然后在fastdfs中执行

sudo ./make.sh clean
sudo ./make.sh
sudo ./make.sh install

然后是通过sudo ./setup.sh /etc/fdfs来拷贝配置文件,接下来是三个配置文件的配置。

配置文件配置

tracker.conf文件配置,目前主要是修改了如下一行,注意,该文件是只读的,该文件默认的HTTP服务端口是8080,跟踪端口默认是22122,具体修改可通过sudo vi /etc/fdfs/tracker.conf来执行:

base_path = /home/techlmm/fastdfs

修改完毕后,退出编辑器,执行目录创建命令`mkdir -p /home/techlmm/fastdfs(没有创建的话,也会自动创建)

接下来是存储配置文件修改,通过sudo vi /etc/fdfs/storage.conf,具体修改内容有:

base_path = /home/techlmm/fastdfs
store_path0 = /home/techlmm/fastdfs
tracker_server = 192.168.10.161:22122

注意,ip地址不能设置为127.0.0.1

其次是客户端配置文件修改sudo vi /etc/fdfs/client.conf

base_path = /home/techlmm/fastdfs
tracker_server = 192.168.10.161:22122

重启相关服务

通过/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart来启动跟踪器服务

通过/usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart来启动存储服务

启动完成后,可通过 ps -ef | grep fdfs来查看相关服务运行情况

文件上传测试

最后,可通过/usr/bin/fdfs_test /etc/fdfs/client.conf upload /usr/include/stdlib.h来测试文件上传情况,该文件会存储在M00盘的00/00目录下,例如:

techlmm@DESKTOP-BRUCE:~/fastdfs/data/00/00$ ls
wKgKoV7vG6GAMSs9AACLyBo1AoQ63066.h  wKgKoV7vG6GAMSs9AACLyBo1AoQ63066.h-m  wKgKoV7vG6GAMSs9AACLyBo1AoQ63066_big.h  wKgKoV7vG6GAMSs9AACLyBo1AoQ63066_big.h-m

补充:

  • vi编辑器基本使用:i切换到输入模式,:切换到命令模式,w为保存,q为退出,wq为保存并退出
  • 可通过ip address查看本机ip地址
  • 最后,可分别通过/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf stop/usr/bin/fdfs_storaged /etc/fdfs/storage.conf stop 来停止相关服务

fastdfs nginx模块安装

通过安装nginx模块,实现url的展示和下载文档。

nginx安装

先通过下面命令获取和解压nginx源码:

wget http://nginx.org/download/nginx-1.16.1.tar.gz
tar -xzvf nginx-1.16.1.tar.gz

接下来,是安装相关编译依赖包:

sudo apt-get install build-essential
sudo apt-get install libtool
sudo apt-get update
sudo apt-get install libpcre3 libpcre3-dev
sudo apt-get install zlib1g-dev
sudo apt-get install openssl

然后,进入刚才解压后的文件夹,进行编译操作

cd nginx-1.16.1/
./configure --prefix=/usr/local/nginx
sudo make
sudo make install

安装成功后,通过命令启动sudo /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf,同时可通过ps -ef|grep nginx 来验证服务启动情况,也可通过 http://localhost/ 查看访问结果。

也可以通过/usr/local/nginx/sbin/nginx -s stop 来关闭服务

fastdfs 模块安装

一样,先下载源代码并进行安装:

git clone https://gitee.com/fastdfs100/fastdfs-nginx-module.git
cd fastdfs-nginx-module
# 下面是进入nginx源代码目录,增加模块重新构建
cd /usr/nginx-1.16.1
./configure --add-module=/usr/fastdfs-nginx-module/src
sudo make
sudo make install

成功安装后,通过vi /usr/local/nginx/conf/nginx.conf在 nginx.conf 中增加如下内容:

location /M00 {
       root /home/techlmm/fastdfs/data;
       ngx_fastdfs_module;
}

官方文档中还要求建立软链接ln -s /home/techlmm/fastdfs/data /home/techlmm/fastdfs/data/M00

接下来是进入到 fastdfs源文件目录,拷贝相关配置文件

cd /usr/fastdfs
cp conf/http.conf conf/mime.types /etc/fdfs/
cd /usr/fastdfs-nginx-module/src
cp mod_fastdfs.conf  /etc/fdfs/

然后是修改相关配置文件,首先vi /etc/fdfs/http.conf,修改内容有:

http.anti_steal.token_check_fail = /usr/fastdfs/conf/anti-steal.jpg
# 注意goodFS要与后续客户端私钥配置一致
http.anti_steal.secret_key = goodFS

再次是vi /etc/fdfs/mod_fastdfs.conf 修改,具体有:

tracker_server=192.168.0.124:22122
store_path0=/home/techlmm/fastdfs

修改完成以后,可通过下面命令重启nginx

/usr/local/nginx/sbin/nginx -s stop
/usr/local/nginx/sbin/nginx

最后,可通过tail -n 100 /usr/local/nginx/logs/error.log 来查看错误日志情况

到此,全部配置就完成了,就可以通过http://192.168.0.124/M00/00/00/wKgAfF7veGWAR0hKAAHm2nz781Y093.jpg 来访问到 文件,注意不要添加/group1这个路径,因为在配置中没有添加。

参考资料

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • wsl ubuntu搭建
    • git配置
      • apt国内镜像配置
        • gcc等基本环境安装
        • fastdfs安装
          • libfastcommon编译
            • fastdfs编译
              • 配置文件配置
                • 重启相关服务
                  • 文件上传测试
                  • fastdfs nginx模块安装
                    • nginx安装
                      • fastdfs 模块安装
                      • 参考资料
                      领券
                      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档