Ubuntu18搭建FastDFS

准备资源

资源说明

fastdfs-master.zip

(跟踪服务器(Tracker Server):192.168.201.128
存储服务器(Storage Server):192.168.201.128
)

fastdfs
fastdfs-nginx-module-master.zipfastdfs与nginx模块
libfastcommon-master.zipfastdfs公用函数库
nginx-1.8.0.tar.gznginx(提供对外访问)        
VMware(单节点)IP:192.168.201.128
OSubuntu18.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配置:

fastdfs配置双ip访问_fastdfs storage绑定ip-CSDN博客

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值