准备资源
资源 | 说明 |
fastdfs-master.zip (跟踪服务器(Tracker Server):192.168.201.128 | fastdfs |
fastdfs-nginx-module-master.zip | fastdfs与nginx模块 |
libfastcommon-master.zip | fastdfs公用函数库 |
nginx-1.8.0.tar.gz | nginx(提供对外访问) |
VMware(单节点) | IP:192.168.201.128 |
OS | ubuntu18.04.6 |
安装步骤
1.关闭防火墙&上传资源&安装资源所需依赖包
# 关闭防火墙
service ufw stop
# 新建fastdfs文件夹存放资源包,并上传上面所有资源包到此文件夹
pyb@dfs:/# mkdir /home/pyb/fastdfs
# 切换为root用户并安装依赖
1.安装gcc
root@dfs:/home/pyb/fastdfs# sudo apt-get install g++-5 -y
root@dfs:/home/pyb/fastdfs# apt-get install gcc -y
root@dfs:/home/pyb/fastdfs# apt-get install build-essential -y
2.安装pcre
root@dfs:/home/pyb/fastdfs# sudo apt-get install libpcre3 libpcre3-dev -y
3.安装zlib
root@dfs:/home/pyb/fastdfs# sudo apt-get install zlib1g-dev -y
4.安装openSSL
root@dfs:/home/pyb/fastdfs# sudo apt-get install openssl libssl-dev -y
5.安装unzip
root@dfs:/home/pyb/fastdfs# sudo apt install unzip
2.安装libfatscommon公共函数库
# 解压libfastcommon-master.zip
root@dfs:/home/pyb/fastdfs# unzip libfastcommon-master.zip
# 进入libfastcommon-master文件夹
root@dfs:/home/pyb/fastdfs# cd libfastcommon-master
# 查看解压后文件
root@dfs:/home/pyb/fastdfs/libfastcommon-master# ll
total 80
drwxr-xr-x 5 root root 4096 Mar 29 2020 ./
drwxrwxr-x 3 pyb pyb 4096 Nov 10 03:10 ../
drwxr-xr-x 2 root root 4096 Mar 29 2020 doc/
-rw-r--r-- 1 root root 1504 Mar 29 2020 .gitignore
-rw-r--r-- 1 root root 11564 Mar 29 2020 HISTORY
-rw-r--r-- 1 root root 674 Mar 29 2020 INSTALL
-rw-r--r-- 1 root root 1607 Mar 29 2020 libfastcommon.spec
-rw-r--r-- 1 root root 27030 Mar 29 2020 LICENSE
-rwxr-xr-x 1 root root 3253 Mar 29 2020 make.sh*
drwxr-xr-x 2 root root 4096 Mar 29 2020 php-fastcommon/
-rw-r--r-- 1 root root 2776 Mar 29 2020 README
drwxr-xr-x 3 root root 4096 Mar 29 2020 src/
# 编译&安装libfastcommon
root@dfs:/home/pyb/fastdfs/libfastcommon-master# ./make.sh
root@dfs:/home/pyb/fastdfs/libfastcommon-master# ./make.sh install
3.安装FastDFS
# 切换到/home/pyb/fastdfs/目录下
root@dfs:/home/pyb/fastdfs/libfastcommon-master# cd /home/pyb/fastdfs/
# 解压fastdfs-master.zip压缩包
root@dfs:/home/pyb/fastdfs# unzip fastdfs-master.zip
# 进入fastdfs-master文件夹
root@dfs:/home/pyb/fastdfs# cd fastdfs-master
# 查看其下文件
root@dfs:/home/pyb/fastdfs/fastdfs-master# ll
total 172
drwxr-xr-x 12 root root 4096 Dec 30 2019 ./
drwxrwxr-x 4 pyb pyb 4096 Nov 10 03:16 ../
drwxr-xr-x 3 root root 4096 Dec 30 2019 client/
drwxr-xr-x 2 root root 4096 Dec 30 2019 common/
drwxr-xr-x 2 root root 4096 Dec 30 2019 conf/
-rw-r--r-- 1 root root 35067 Dec 30 2019 COPYING-3_0.txt
drwxr-xr-x 4 root root 4096 Dec 30 2019 docker/
-rw-r--r-- 1 root root 3170 Dec 30 2019 fastdfs.spec
-rw-r--r-- 1 root root 1642 Dec 30 2019 .gitignore
-rw-r--r-- 1 root root 36881 Dec 30 2019 HISTORY
drwxr-xr-x 2 root root 4096 Dec 30 2019 images/
drwxr-xr-x 2 root root 4096 Dec 30 2019 init.d/
-rw-r--r-- 1 root root 8344 Dec 30 2019 INSTALL
-rwxr-xr-x 1 root root 5517 Dec 30 2019 make.sh*
drwxr-xr-x 2 root root 4096 Dec 30 2019 php_client/
-rw-r--r-- 1 root root 2448 Dec 30 2019 README.md
-rw-r--r-- 1 root root 1700 Dec 30 2019 README_zh.md
-rwxr-xr-x 1 root root 1768 Dec 30 2019 restart.sh*
-rwxr-xr-x 1 root root 763 Dec 30 2019 setup.sh*
-rwxr-xr-x 1 root root 1680 Dec 30 2019 stop.sh*
drwxr-xr-x 4 root root 4096 Dec 30 2019 storage/
drwxr-xr-x 2 root root 4096 Dec 30 2019 test/
drwxr-xr-x 2 root root 4096 Dec 30 2019 tracker/
# 编译&安装
root@dfs:/home/pyb/fastdfs/fastdfs-master# ./make.sh
root@dfs:/home/pyb/fastdfs/fastdfs-master# ./make.sh install
#===================================>>>>>>>>>>>>>>>>>> 其它说明
# fastdfs安装好后storage和tracker启动脚本位置
/etc/init.d/fdfs_storaged
/etc/init.d/fdfs_trackerd
# storaged和trackerd相应配置文件位置
root@dfs:/home/pyb/fastdfs/fastdfs-master# ll /etc/fdfs/
total 40
drwxr-xr-x 2 root root 4096 Nov 10 03:20 ./
drwxr-xr-x 94 root root 4096 Nov 10 03:20 ../
-rw-r--r-- 1 root root 1909 Nov 10 03:20 client.conf.sample
-rw-r--r-- 1 root root 10246 Nov 10 03:20 storage.conf.sample
-rw-r--r-- 1 root root 620 Nov 10 03:20 storage_ids.conf.sample
-rw-r--r-- 1 root root 9138 Nov 10 03:20 tracker.conf.sample
# fastdfs命令行工具位置
root@dfs:/home/pyb/fastdfs/fastdfs-master# ll /usr/bin/ | grep fdfs
-rwxr-xr-x 1 root root 464040 Nov 10 03:20 fdfs_appender_test*
-rwxr-xr-x 1 root root 463720 Nov 10 03:20 fdfs_appender_test1*
-rwxr-xr-x 1 root root 446128 Nov 10 03:20 fdfs_append_file*
-rwxr-xr-x 1 root root 445104 Nov 10 03:20 fdfs_crc32*
-rwxr-xr-x 1 root root 446168 Nov 10 03:20 fdfs_delete_file*
-rwxr-xr-x 1 root root 447048 Nov 10 03:20 fdfs_download_file*
-rwxr-xr-x 1 root root 447752 Nov 10 03:20 fdfs_file_info*
-rwxr-xr-x 1 root root 467936 Nov 10 03:20 fdfs_monitor*
-rwxr-xr-x 1 root root 446512 Nov 10 03:20 fdfs_regenerate_filename*
-rwxr-xr-x 1 root root 1595544 Nov 10 03:20 fdfs_storaged*
-rwxr-xr-x 1 root root 474968 Nov 10 03:20 fdfs_test*
-rwxr-xr-x 1 root root 473848 Nov 10 03:20 fdfs_test1*
-rwxr-xr-x 1 root root 627176 Nov 10 03:20 fdfs_trackerd*
-rwxr-xr-x 1 root root 446872 Nov 10 03:20 fdfs_upload_appender*
-rwxr-xr-x 1 root root 448400 Nov 10 03:20 fdfs_upload_file*
说明:
解压fastdfs-master.zip压缩包后有两个目录storage和tracker;
storage:用于存储数据;
tracker:将请求路由到storage节点去存储或取出数据;
fastdfs安装好后storage和tracker启动脚本位置
/etc/init.d/fdfs_storaged
/etc/init.d/fdfs_trackerd
storage和tracker配置文件位置
/etc/fdfs/
fastdfs命令行工具位置
/usr/bin/
4.修改tracker配置文件
# 进入tracker配置文件目录
root@dfs:/usr/bin# cd /etc/fdfs/
# 拷贝tracker.conf.sample文件并重命名为tracker.conf
root@dfs:/etc/fdfs# cp tracker.conf.sample tracker.conf
# 创建tracker的base_path目录
root@dfs:/home/pyb/fastdfs/fastdfs-master/tracker# mkdir -p /home/pyb/fastdfs/fastdfs-master/tracker/trackerdata
# 编辑tracker.conf文件修改配置
root@dfs:/etc/fdfs# vim tracker.conf
===>>>修改内容如下:
# 启用配置文件(默认false)
disabled = false
# tracker服务器端口(默认22122)
port = 22122
# 存储日志和数据的根目录
base_path = /home/pyb/fastdfs/fastdfs-master/tracker/trackerdata
tracker配置文件需修改的地方:
5.启动tracker节点
# 启动tracker节点
root@dfs:/etc/fdfs# /etc/init.d/fdfs_trackerd start
-> 响应
Starting FastDFS tracker server:
# 查看tracker节点是否启动成功
root@dfs:/etc/fdfs# ps -ef | grep fdfs_trackerd
-> 响应
root 10806 1 0 05:58 ? 00:00:00 /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf
root 10819 10772 0 06:00 pts/1 00:00:00 grep --color=auto fdfs_trackerd
说明:
初次启动tracker,会在上面创建tracker的BASE_PATH目录中生成data、logs文件夹;
6.修改storage配置文件
# 进入storage配置文件目录
root@dfs:/usr/bin# cd /etc/fdfs/
# 拷贝storage.conf.sample文件并重命名为storage.conf
root@dfs:/etc/fdfs# cp storage.conf.sample storage.conf
# 创建storage的base_path目录
root@dfs:/home/pyb/fastdfs/fastdfs-master/storage# mkdir -p /home/pyb/fastdfs/fastdfs-master/storage/storagedata
# 编辑storage.conf文件修改配置
root@dfs:/etc/fdfs# vim storage.conf
===>>>修改内容如下:
# 启用配置文件
disabled=false
# storage服务端口
port=23000
#数据和日志文件存储根目录(上面创建的storage的BASE_PATH目录)
base_path=/home/pyb/fastdfs/fastdfs-master/storage/storagedata
#第一个存储目录
store_path0=/home/pyb/fastdfs/fastdfs-master/storage/storagedata
# tracker服务器的IP和端口号,此处是上面预定好的ip,一般就是本机ip,不能写127.0.0.1,否则不能自动生成data目录
tracker_server=192.168.201.130:22122
# http访问文件的端口,此处需要和后面 nginx 监听端口保持一致
http.server_port=8080
7.启动storage节点
# 启动storage节点
root@dfs:/etc/fdfs# /etc/init.d/fdfs_storaged start
-> 响应
Starting FastDFS storage server:
# 查看storage是否启动成功
root@dfs:/etc/fdfs# ps -ef | grep fdfs_storaged
-> 响应
root 72248 1 1 06:24 ? 00:00:01 /usr/bin/fdfs_storaged /etc/fdfs/storage.conf
root 72362 10772 0 06:26 pts/1 00:00:00 grep --color=auto fdfs_storaged
说明:
初次启动storage,会在上面创建storage的BASE_PATH目录中生成data、logs文件夹;
8.修改tracker节点客户端配置
修改client.conf.sample配置文件
# 进入client.conf.sample文件所在文件夹
root@dfs:/etc/fdfs# cd /etc/fdfs/
# 拷贝并重命名client.conf.sample文件
root@dfs:/etc/fdfs# cp client.conf.sample client.conf
# 修改client.conf配置信息
root@dfs:/etc/fdfs# vim client.conf
-> 修改内容如下
# 修改以下配置,其它保持默认
# 连接超时时间
connect_timeout = 30
# tracker的BASE_PATH目录
base_path=/home/pyb/fastdfs/fastdfs-master/tracker/trackerdata
# 修改为tracker_server地址和端口
tracker_server=192.168.201.130:22122
tracker客户端配置文件需修改的地方:
9.测试上传文件到fastDFS
# 我在/home/pyb/fastdfs目录下新建了一个test.txt文件,测试将此文件上传至FastDFS
root@dfs:/home/pyb/fastdfs# /usr/bin/fdfs_upload_file /etc/fdfs/client.conf /home/pyb/fastdfs/test.txt
-> 响应(文件在fastdfs中的存放路径)
group1/M00/00/00/wKjJgmVN0hiAHSTWAAAABEpzTDI579.txt
上传文件命令解释
形如:/usr/bin/fdfs_upload_file /etc/fdfs/client.conf /home/pyb/fastdfs/test.txt
10.为所有storage节点安装fastdfs-nginx-module模块
为什么要安装fastdfs-nginx-module模块
FastDFS 通过 Tracker 服务器,然后将文件放在 Storage 服务器进行存储,但是同组存储服务器之间在进行文件复制的时候,会有同步延迟的问题.假如Tracker 服务器将文件上传到了集群中其它storage节点上如storage-node1,上传成功后文件ID已经返回给了客户端.而此时 FastDFS 集群存储机制会将这个文件同步到同组的其它存储服务器节点如storage-node2、storage-node3,在文件还没有重storage-node1复制到storage-node2、storage-node3节点时,客户端如果用这个文件 ID 在storage-node2、storage-node3节点上取文件,就会出现文件无法访问的错误.而 fastdfs-nginx-module 可以重定向文件从而连接到源服务器(即:storage-node1)获取文件,避免客户端由于复制延迟导致的文件无法访问错误。
安装步骤
# 进入/home/pyb/fastdfs文件夹
root@dfs:/home/pyb# cd fastdfs/
root@dfs:/home/pyb/fastdfs# ll
total 2008
drwxrwxr-x 4 pyb pyb 4096 Nov 10 06:43 ./
drwxr-xr-x 5 pyb pyb 4096 Nov 13 01:14 ../
drwxr-xr-x 12 root root 4096 Dec 30 2019 fastdfs-master/
-rw-rw-r-- 1 pyb pyb 914295 Nov 10 03:00 fastdfs-master.zip
-rw-rw-r-- 1 pyb pyb 22492 Nov 10 03:00 fastdfs-nginx-module-master.zip
drwxr-xr-x 5 root root 4096 Nov 10 03:13 libfastcommon-master/
-rw-rw-r-- 1 pyb pyb 257605 Nov 10 03:00 libfastcommon-master.zip
-rw-rw-r-- 1 pyb pyb 832104 Nov 10 03:00 nginx-1.8.0.tar.gz
-rw-r--r-- 1 root root 4 Nov 10 06:43 test.txt
# 解压fastdfs-nginx-module-master.zip模块
root@dfs:/home/pyb/fastdfs# unzip fastdfs-nginx-module-master.zip
11.安装Nginx并添加fastdfs-nginx-module模块
# 解压Nginx
root@dfs:/home/pyb/fastdfs# tar -xzvf nginx-1.8.0.tar.gz
# 进入解压好后的Nginx
root@dfs:/home/pyb/fastdfs# cd nginx-1.8.0/
# 编译Nginx并添加fastdfs-nginx-module模块(无异常代表编译成功)
root@dfs:/home/pyb/fastdfs/nginx-1.8.0# ./configure --add-module=/home/pyb/fastdfs/fastdfs-nginx-module-master/src
# 安装Nginx
root@dfs:/home/pyb/fastdfs/nginx-1.8.0# make && make install
-> 安装过程出现异常信息
cc1: all warnings being treated as errors
objs/Makefile:438: recipe for target 'objs/src/core/ngx_murmurhash.o' failed
make[1]: *** [objs/src/core/ngx_murmurhash.o] Error 1
make[1]: Leaving directory '/home/pyb/fastdfs/nginx-1.8.0'
Makefile:8: recipe for target 'build' failed
make: *** [build] Error 2
-> 解决方式:
1.进入Nginx安装目录下的objs文件夹
2.编辑Makefile文件
3.删除第三行中的-Werror
4.再重新回到nginx安装解压目录下执行make && make install(无异常代表安装成功)
5.安装好后的nginx在/usr/local/目录下
执行make && make install时异常信息:
解决方式:
1.进入Nginx安装目录下的objs文件夹
2.编辑Makefile文件
3.删除第三行中的-Werror
4.再重新回到nginx安装解压目录下执行make && make install(无异常代表安装成功)
5.安装好后的nginx在/usr/local/目录下
12.关联fastdfs-nginx-module与FastDFS
步骤一
# 拷贝/home/pyb/fastdfs/fastdfs-nginx-module-master/src/mod_fastdfs.conf 到 /etc/fdfs
root@dfs:/etc/fdfs# cp /home/pyb/fastdfs/fastdfs-nginx-module-master/src/mod_fastdfs.conf /etc/fdfs/
# 编辑mod_fastdfs.conf
root@dfs:/etc/fdfs# vim mod_fastdfs.conf
->修改内容
#修改以下配置 其他配置默认即可
# 客户端访问文件连接超时时长(单位:秒)
connect_timeout=30
# 临时目录
base_path=/tmp
# tracker服务IP和端口
tracker_server=192.168.201.130:22122
# storage服务端口
storage_server_port=23000
# 组名
group_name=group1
#访问链接前缀加上组名,注意此处一定要改为true!!!
url_have_group_name=true
# 文件存储路径(上面配置storage节点时创建的BASE_PATH目录)
store_path0=/home/pyb/fastdfs/fastdfs-master/storage/storagedata
mod_fastdfs.conf修改后的配置
# connect timeout in seconds
# default value is 30s # 客户端访问文件连接超时时长(单位:秒)
connect_timeout=30
# network recv and send timeout in seconds
# default value is 30s
network_timeout=30
# the base path to store log files
base_path=/tmp
# if load FastDFS parameters from tracker server
# since V1.12
# default value is false
load_fdfs_parameters_from_tracker=true
# storage sync file max delay seconds
# same as tracker.conf
# valid only when load_fdfs_parameters_from_tracker is false
# since V1.12
# default value is 86400 seconds (one day)
storage_sync_file_max_delay = 86400
# if use storage ID instead of IP address
# same as tracker.conf
# valid only when load_fdfs_parameters_from_tracker is false
# default value is false
# since V1.13
use_storage_id = false
# specify storage ids filename, can use relative or absolute path
# same as tracker.conf
# valid only when load_fdfs_parameters_from_tracker is false
# since V1.13
storage_ids_filename = storage_ids.conf
# FastDFS tracker_server can ocur more than once, and tracker_server format is
# "host:port", host can be hostname or ip address
# valid only when load_fdfs_parameters_from_tracker is true
# tracker服务IP和端口
tracker_server=192.168.201.130:22122
# the port of the local storage server
# the default value is 23000
# storage服务端口
storage_server_port=23000
# the group name of the local storage server
group_name=group1
# if the url / uri including the group name
# set to false when uri like /M00/00/00/xxx
# set to true when uri like ${group_name}/M00/00/00/xxx, such as group1/M00/xxx
# default value is false
# 访问链接前缀加上组名,注意此处一定要改为true!!!
url_have_group_name = true
# path(disk or mount point) count, default value is 1
# must same as storage.conf
store_path_count=1
# store_path#, based 0, if store_path0 not exists, it's value is base_path
# the paths must be exist
# must same as storage.conf
# 上面配置storage节点时创建的BASE_PATH目录
store_path0=/home/pyb/fastdfs/fastdfs-master/storage/storagedata
#store_path1=/home/yuqing/fastdfs1
# standard log level as syslog, case insensitive, value list:
### emerg for emergency
### alert
### crit for critical
### error
### warn for warning
### notice
### info
### debug
log_level=info
# set the log filename, such as /usr/local/apache2/logs/mod_fastdfs.log
# empty for output to stderr (apache and nginx error_log file)
log_filename=
# response mode when the file not exist in the local file system
## proxy: get the content from other storage server, then send to client
## redirect: redirect to the original storage server (HTTP Header is Location)
response_mode=proxy
# the NIC alias prefix, such as eth in Linux, you can see it by ifconfig -a
# multi aliases split by comma. empty value means auto set by OS type
# this paramter used to get all ip address of the local host
# default values is empty
if_alias_prefix=
# use "#include" directive to include HTTP config file
# NOTE: #include is an include directive, do NOT remove the # before include
#include http.conf
# if support flv
# default value is false
# since v1.15
flv_support = true
# flv file extension name
# default value is flv
# since v1.15
flv_extension = flv
# set the group count
# set to none zero to support multi-group on this storage server
# set to 0 for single group only
# groups settings section as [group1], [group2], ..., [groupN]
# default value is 0
# since v1.14
group_count = 0
# group settings for group #1
# since v1.14
# when support multi-group on this storage server, uncomment following section
#[group1]
#group_name=group1
#storage_server_port=23000
#store_path_count=2
#store_path0=/home/yuqing/fastdfs
#store_path1=/home/yuqing/fastdfs1
# group settings for group #2
# since v1.14
# when support multi-group, uncomment following section as neccessary
#[group2]
#group_name=group2
#storage_server_port=23000
#store_path_count=1
#store_path0=/home/yuqing/fastdfs
步骤二
# 复制FastDFS配置中的http.conf 和 mime.types到/etc/fdfs/
root@dfs:/# cd /home/pyb/fastdfs/fastdfs-master/conf
# 拷贝http.conf 和 mime.types到/etc/fdfs/
root@dfs:/home/pyb/fastdfs/fastdfs-master/conf# cp http.conf mime.types /etc/fdfs/
步骤三
# 创建软连接(创建软连接,将其链接到实际存放数据的目录,/M00是软连接目录)
root@dfs:/# ln -s /home/pyb/fastdfs/fastdfs-master/storage/storagedata/data /home/pyb/fastdfs/fastdfs-master/storage/storagedata/data/M00
13.配置Nginx
安装好的Nginx位置在:/usr/local/nginx
进入Nginx的conf目录将nginx.conf内容更改为如下
user root;
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
# 此处和前面配置的storage.conf中的http.server_port保持一致
listen 8080;
server_name 192.168.201.130;
# 配置通配符,将/group 开头的地址映射到 fastdfs 的项目,如果#只有一个 group1 可以直接写 group1s
location ~/group([0-9])/M00 {
ngx_fastdfs_module;
}
#error_page 500 502 503 504 /50x.html;
#location = /50x.html {
# root html;
#}
}
}
14.启动Nginx
# 进入Nginx安装好后的目录
root@dfs:/etc/init.d# cd /usr/local/nginx/
# 启动Nginx(响应:ngx_http_fastdfs_set pid=75951表示fastdfs-nginx-module模块加载成功)
root@dfs:/usr/local/nginx/sbin# ./nginx
-> 响应
ngx_http_fastdfs_set pid=75951
15.测试访问FastDFS中文件
VMware中配置端口映射
访问测试
http://localhost/group1/M00/00/00/wKjJgmVN0hiAHSTWAAAABEpzTDI579.txt
访问宿主机80端口映射到虚拟机中8080端口。
/group1/M00/00/00/wKjJgmVN0hiAHSTWAAAABEpzTDI579.txt为上传到FastDFS时响应的地址。
16.编写开机自启动fastDFS脚本
# 我们在/home/pyb/fastdfs目录下新建my_dfs_startscript目录用于存放fastDFS自启动脚本
root@dfs:~# cd /home/pyb/fastdfs
# 新建my_dfs_startscript文件夹
root@dfs:/home/pyb/fastdfs# mkdir my_dfs_startscript
# 新建startdfs.sh文件其内容为
root@dfs:/home/pyb/fastdfs/my_dfs_startscript# vim startdfs.sh
# ---->>> 脚本内容
#!/bin/bash
# 开机自启FastDFS script
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart
/usr/local/nginx/sbin/nginx
exit 0
# 为脚本授权
root@dfs:/home/pyb/fastdfs/my_dfs_startscript# sudo chmod +x startdfs.sh
# 在/etc/systemd/system/目录下新建自动启服务
root@dfs:/home/pyb/fastdfs/my_dfs_startscript# cd /etc/systemd/system/
root@dfs:/etc/systemd/system/# sudo vim /etc/systemd/system/fastdfs_start.service
# ---->>> 内容
[Unit]
Description=fastdfs start script
# 脚本所在文件夹
ConditionPathExists=/home/pyb/fastdfs/my_dfs_startscript
[Service]
Type=forking
# 启动脚本命令
ExecStart=/home/pyb/fastdfs/my_dfs_startscript/startdfs.sh start
TimeoutSec=0
StandardOutput=tty
RemainAfterExit=yes
SysVStartPriority=99
[Install]
WantedBy=multi-user.target
# 启用fastdfs_start.service服务
root@dfs:/etc/systemd/system# sudo systemctl enable fastdfs_start
# 启动fastdfs_start.service服务
root@dfs:/etc/systemd/system# sudo systemctl start fastdfs_start
# 查看fastdfs_start.service服务状态
root@dfs:/etc/systemd/system# sudo systemctl status fastdfs_start
# 重启验证即可
17.FastDFS双IP访问支持
有时候后端Java程序是放在内网服务器上的所以访问的fastdfs也需要是内网地址;但在平时开发过程中我们使用的是外网,所以在开发中我们使用的fastdfs地址是外网地址;
fastDFS同时支持内外网IP配置: