前言: 这篇博客将为您详细讲述怎样在CentOS 7操作系统下安装FastDFS
安装依赖库
- gcc 相关
查看gcc和gcc-c++是否安装rpm -q gcc gcc-c++
如果没有安装,则使用yum方式进行安装:yum install -y gcc gcc-c++
- libevent
查看 libevent 是否安装rpm -q libevent
如果没有安装,则使用yum方式进行安装:yum -y install libevent
安装FastDFS相关
-
创建目录 /opt/fastdfs
注:我这里是所有的软件都安在了/opt目录下,根据个人自行选择安装位置mkdir /opt/fastdfs && cd /opt/fastdfs
-
安装libfastcommon
- 下载官方提供的libfastcommon安装文件【GitHub地址】
- 无需下载,复制下载链接,如图:(或者下载下来上传到服务器对应目录)
- 使用wget方式下载文件并指定压缩包名:
wget https://github.com/happyfish100/libfastcommon/archive/master.zip -O libfastcommon.zip
- 解压并重命名:
unzip libfastcommon.zip && mv libfastcommon-master libfastcommon
- 进入解压好的 libfastcommon 目录:
cd libfastcommon
- 编译源码:执行已有的shell脚本
sh make.sh
- 安装:
安装完成,如图:sh make.sh install
- 检查:查看 /usr/lib 下是否有libfastcommon.so文件
ll /usr/lib
如果没有:使用文件查找,找到文件后拷贝到/usr/lib 目录下:
注:该文件会生成在/usr 目录下,所以只在/usr 目录下查找即可find /usr/ -name libfastcommon.so
拷贝到 /usr/lib 下
libfastcommon 安装完成cp /usr/lib64/libfastcommon.so /usr/lib/libfastcommon.so
-
安装 FastDFS
- 下载官方提供的 FastDFS 安装文件【GitHub地址】
- 无需下载,复制下载链接,如图:(或者下载下来上传到服务器对应目录)
- 使用wget方式下载文件并指定压缩包名:
wget https://github.com/happyfish100/fastdfs/archive/master.zip -O fastdfs.zip
- 解压并重命名:
unzip fastsfs.zip && mv fastsfs-master fastsfs
- 进入解压好的 fastdfs 目录:
cd fastdfs
- 编译源码:执行已有的shell脚本
sh make.sh
- 安装:
安装完成,如图:sh make.sh install
- 将 fastdfs 安装目录下conf文件夹中的配置文件全部拷入到 /etc/fdfs中
查看 /etc/fdfs 中的配置文件cp conf/* /etc/fdfs
ll /etc/fdfs
FastDFS 安装完成
-
配置及启动 追踪器(tracker)
- 进入到 /etc/fdfs 目录下
cd /etc/fdfs
- 修改配置文件 tracker.conf:
注:如果没有 tracker.conf,则复制 tracker.conf.sample 并重命名vi tracker.conf
cp tracker.conf.sample tracker.conf
- 修改配置文件:
a). 修改数据及日志保存位置(base_path):
注:可使用 vi 搜索功能: 按下 ESC,键入/base_path
回车即可
修改为:base_path=/home/fastdfs(路径任选,记得创建文件夹)
b). 修改 追踪器(tracker) 端口号,默认为22122(建议不要更改):
c). 修改HTTP服务器端口号(http.server_port)
默认为8080,修改为自己需要的端口号,这里改为80端口:
d). 保存退出:按下 ESC,键入 英文冒号 ‘:’ ,键入 x, 回车 - 使用配置文件启动追踪器(tracker):
fdfs_trackerd /etc/fdfs/tracker.conf start
- 查看 tracker 进程:
ps aux|grep tracker
- 停止 tracker :
fdfs_trackerd /etc/fdfs/tracker.conf stop
- 重启 tracker :
fdfs_trackerd /etc/fdfs/tracker.conf restart
- 进入到 /etc/fdfs 目录下
-
配置及启动 存储器(storage)
同样在 /etc/fdfs 目录下- 修改配置文件 storage.conf:
注:如果没有 storage.conf,则复制 storage.conf.sample 并重命名vi storage.conf
cp storage.conf.sample storage.conf
- 修改配置文件:
a). 修改数据及日志保存位置(base_path):
修改为:base_path=/home/fastdfs(路径任选,记得创建文件夹)
b). 修改文件保存位置(store_path0):
修改为:store_path0=/home/fastdfs_storage(路径任选,记得创建文件夹)
注:这里只配置一个存储器,固只配置一个store_path0
c). 配置 tracker 服务器地址(tracker_server):
tracker_server=ip:port
ip: 启动 tracker服务的机器 ip
port: tracker.conf 中配置的 port(默认22122)
d). 修改HTTP服务器端口号(http.server_port)
默认为8888,修改为自己需要的端口号,这里改为81端口:
f). 保存退出 - 使用配置文件启动存储器(storage):
fdfs_storaged /etc/fdfs/storage.conf start
- 查看 storage 进程:
ps aux|grep storage
- 停止 storage :
fdfs_storaged /etc/fdfs/storage.conf stop
- 重启 storage :
fdfs_storaged /etc/fdfs/storage.conf restart
- 修改配置文件 storage.conf:
-
测试FastDfs
同样在 /etc/fdfs 目录下- 修改配置文件 client.conf:
注:如果没有 client.conf,则复制 client.conf.sample 并重命名vi client.conf
cp client.conf.sample client.conf
- 修改配置文件:
a). 修改数据及日志保存位置(base_path):
修改为:base_path=/home/fastdfs(路径任选,记得创建文件夹)
b). 配置 tracker 服务器地址(tracker_server):
tracker_server=ip:port
ip: 启动 tracker服务的机器 ip
port: tracker.conf 中配置的 port(默认22122)
c). 保存退出 - 在服务器上准备一个文件:
- 执行测试命令(上传):
上传完成:fdfs_test /etc/fdfs/client.conf upload /home/fastdfs_test.jpg
- 查看上传后的文件(通过文件物理地址查找文件位置):
注:因为还未整合nginx,所以还不能通过文件网络URL访问文件
- 修改配置文件 client.conf:
-
整合nginx
-
下载官方提供的 nginx 模块【GitHub地址】
-
无需下载,复制下载链接,如图:(或者下载下来上传到服务器对应目录)
-
使用wget方式下载文件并指定压缩包名:
wget https://github.com/happyfish100/fastdfs-nginx-module/archive/master.zip -O fastdfs-nginx-module.zip
-
解压并重命名:
unzip fastdfs-nginx-module.zip && mv fastdfs-nginx-module-master fastdfs-nginx-module
-
重新配置并编译 nginx 源码:
a). 如果还没有安装nginx,可以参考 【Linux 下安装 nginx】
b). 进入 nginx 源码目录:cd /opt/nginx/nginx-1.14.1/
c). 重新配置编译参数,增加module:
./configure --add-module=/opt/fastdfs/fastdfs-nginx-module/src --prefix=/opt/nginx --with-http_ssl_module --with-http_gzip_static_module
配置成功后,能够看到 fastdfs-nginx-module已添加,如图:
d). 重新编译并安装:make && make install
-
复制 fastdfs-nginx-module 中的配置文件到 /etc/fdfs 目录下:
cp /opt/fastdfs/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/
-
修改配置文件:
a). 修改 /etc/fdfs 目录下的配置文件(mod_fastdfs.conf):cd /etc/fdfs vi mod_fastdfs.conf
b). 修改数据及日志保存位置(base_path):
修改为:base_path=/home/fastdfs(路径任选,记得创建文件夹)
c). 配置 tracker 服务器地址(tracker_server):
tracker_server=ip:port
ip: 启动 tracker服务的机器 ip
port: tracker.conf 中配置的 port(默认22122)
d). 配置 store_path0 为 /home/fastdfs_storage:
此处的路径为 storage.conf 中配置的 store_path0;
e). 配置 url_have_group_name 为true:
f). 保存退出 -
修改 nginx 配置文件:
vi /opt/nginx/conf/nginx.conf
注:因为我的 nginx 安装在 /opt/nginx 下,所以我的 nginx 配置文件为 /opt/nginx/conf/nginx.conf
找到监听80端口的server:新增一个路径,root 后的参数为storage.conf 里配置的 store_path0
location /group1/M00{ root /home/fastdfs_storage/; ngx_fastdfs_module; }
-
创建软链接:
因为我们配置的路径是group1/M00,所以需在 /home/fastdfs_storage/data 下创建软链接 group1/M00:mkdir /home/fastdfs_storage/data/group1 ln -s /home/fastdfs_storage/data /home/fastdfs_storage/data/group1/M00
-
启动nginx
-
浏览器访问之前做上传测试成功后展示出来的文件网络URL
-
至此,在 Linux 操作系统中安装 FastDFS 完成,谢谢!