转载自: 搭建单机版的FastDFS服务器
* 为了便于理解,其中顺序有改变。
1、第八步创建软链接,可以等到第九步结束后进行。如果提前在第八步创建软链接,因为还没有安装 libfdfsclient.so文件,则创建软链接时会提示此文件不存在,但是不影响创建软链接。
2、如果等到第九步完成 之后在进行创建,则不会有问题。如下如:
==============================
由于FastDFS集群搭建非常复杂,对于初期学习FastDFS来说,搭建个单机版的作为入门更为实际一些。
第一步:搭建虚拟环境
FastDFS需要在Linux系统上安装,我们一般使用的都是Windows系统,这样就需要有虚拟环境,我这里使用Vmware12创建虚拟机,关于虚拟机最小化的安装大家可以参考:http://blog.csdn.net/u012453843/article/details/68947589这篇博客进行学习
第二步:配置静态IP而且要保证能上网
大家可以参考:http://blog.csdn.net/u012453843/article/details/52839105这篇博客进行学习,需要提醒的是,由于最小化安装默认是没有vim命令的,因此在配置静态IP时使用vi命令即可。
第三步:安装vim命令
之所以安装vim命令是因为在安装它的同时会自动帮我们安装perl,而perl在进行编译安装时是必须要有的。安装vim的命令是:yum install vim-enhanced
第四步:安装gcc
使用命令:yum install make cmake gcc gcc-c++进行安装即可
第五步:上传安装文件到Linux服务器
为了便于管理,我们在Linux服务器上新建一个/usr/local/software目录,专门用于存放安装包,如下所示
[html] view plain copy
- [[email protected] ~]# mkdir /usr/local/software
- [[email protected] ~]#
下面我们把需要用到的安装包都上传到/usr/local/software目录下,我们可以使用XShell和Xftp5相结合来方便的进行上传下载操作,大家可以参考http://blog.csdn.net/u012453843/article/details/68951776这篇博客进行学习。也可以通过安装rzsz命令来进行上传下载操作,安装rzsz的命令是yum install lrzsz,安装完之后,rz表示上传,sz 文件表示下载。
大家可以到http://download.csdn.net/detail/u012453843/9802538这个地址下载需要的安装包,上传完之后,如下所示
[html] view plain copy
- [[email protected] software]# ll
- 总用量 1248
- -rw-r--r--. 1 root root 17510 11月 28 00:19 fastdfs-nginx-module_v1.16.tar.gz
- -rw-r--r--. 1 root root 345400 11月 28 00:20 FastDFS_v5.05.tar.gz
- -rw-r--r--. 1 root root 102378 11月 28 00:19 libfastcommon-master.zip
- -rw-r--r--. 1 root root 804164 11月 28 01:11 nginx-1.6.2.tar.gz
- [[email protected] software]#
第六步:安装zip和unzip命令
由于解压.zip结尾的文件需要用到unzip命令,因此我们需要安装,安装命令是yum install zip unzip
第七步:安装libfastcommon
1、解压
[html] view plain copy
- [[email protected] software]# unzip libfastcommon-master.zip -d /usr/local/fast/
2、进入目录
[html] view plain copy
- [[email protected] software]# cd /usr/local/fast/libfastcommon-master/
- [[email protected] libfastcommon-master]# ll
- 总用量 28
- -rw-r--r--. 1 root root 2913 2月 27 2015 HISTORY
- -rw-r--r--. 1 root root 582 2月 27 2015 INSTALL
- -rw-r--r--. 1 root root 1342 2月 27 2015 libfastcommon.spec
- -rwxr-xr-x. 1 root root 2151 2月 27 2015 make.sh
- drwxr-xr-x. 2 root root 4096 2月 27 2015 php-fastcommon
- -rw-r--r--. 1 root root 617 2月 27 2015 README
- drwxr-xr-x. 2 root root 4096 2月 27 2015 src
- [[email protected] libfastcommon-master]#
3、编译
[html] view plain copy
- [[email protected] libfastcommon-master]# ./make.sh
4、安装
[html] view plain copy
- [[email protected] libfastcommon-master]# ./make.sh install
第八步移动至第九步之后
第九步:安装FastDFS
1、进入到cd /usr/local/software下,解压FastDFS_v5.05.tar.gz文件
[html] view plain copy
- [[email protected] fast]# cd /usr/local/software/
- [[email protected] software]# ll
- 总用量 1248
- -rw-r--r--. 1 root root 17510 4月 11 03:28 fastdfs-nginx-module_v1.16.tar.gz
- -rw-r--r--. 1 root root 345400 4月 11 03:28 FastDFS_v5.05.tar.gz
- -rw-r--r--. 1 root root 102378 4月 11 03:28 libfastcommon-master.zip
- -rw-r--r--. 1 root root 804164 4月 11 03:29 nginx-1.6.2.tar.gz
- [[email protected] software]# tar -zxvf FastDFS_v5.05.tar.gz -C /usr/local/fast/
2、编译安装
[html] view plain copy
- [[email protected] software]# cd /usr/local/fast/FastDFS/
- [[email protected] FastDFS]# ./make.sh
- [[email protected] FastDFS]# ./make.sh install
安装完后,服务脚本位置如下
[html] view plain copy
- [[email protected] FastDFS]# cd /etc/init.d/ && ls | grep fdfs
- fdfs_storaged
- fdfs_trackerd
- [[email protected] init.d]#
配置文件位置如下:
[html] view plain copy
- [[email protected] init.d]# cd /etc/fdfs/
- [[email protected] fdfs]# ll
- 总用量 20
- -rw-r--r--. 1 root root 1461 4月 11 04:10 client.conf.sample
- -rw-r--r--. 1 root root 7829 4月 11 04:10 storage.conf.sample
- -rw-r--r--. 1 root root 7102 4月 11 04:10 tracker.conf.sample
- [[email protected] fdfs]#
FastDFS一系列执行脚本如下,可以看到有上传文件脚本、下载文件脚本等等。
[html] view plain copy
- [[email protected] fdfs]# cd /usr/bin/ && ls | grep fdfs
- fdfs_appender_test
- fdfs_appender_test1
- fdfs_append_file
- fdfs_crc32
- fdfs_delete_file
- fdfs_download_file
- fdfs_file_info
- fdfs_monitor
- fdfs_storaged
- fdfs_test
- fdfs_test1
- fdfs_trackerd
- fdfs_upload_appender
- fdfs_upload_file
- [[email protected] bin]#
3、因为FastDFS服务脚本设置的bin目录为/usr/local/bin/下,但是实际我们安装在了/u sr/bin/下面。所以我们需要修改FastDFS配置文件中的路径,也就是需要修改两个配置文件
使用命令vim /etc/init.d/fdfs_storaged进入编辑模式,然后直接输入":",光标会定位到最后一行,在":"后输入"%s+/usr/local/bin+/usr/bin",如下图所示。输入完之后回车,会提示修改了7处。为了确保所有的/usr/local/bin都被替换了,我们可以再打开文件确认一下。
接着修改第二个配置文件,我们使用命令vim /etc/init.d/fdfs_trackerd进入编辑模式,接着按照上面那样输入":%s+/usr/local/bin+/usr/bin "并按回车,同样会提醒我们修改了7处。
第 在此处执行 第八步:创建软链接
FastDFS主程序设置的目录为/usr/local/lib/,所以我们需要创建/ usr/lib64/下的一些核心执行程序的软连接文件。如下所示。
[html] view plain copy
- [[email protected] libfastcommon-master]# ln -s /usr/lib64/libfastcommon.so /usr/local/lib/libfastcommon.so
- [[email protected] libfastcommon-master]# ln -s /usr/lib64/libfastcommon.so /usr/lib/libfastcommon.so
- [[email protected] libfastcommon-master]# ln -s /usr/lib64/libfdfsclient.so /usr/local/lib/libfdfsclient.so
- [[email protected] libfastcommon-master]# ln -s /usr/lib64/libfdfsclient.so /usr/lib/libfdfsclient.so
第十步:配置跟踪器
1、进入到/etc/fdfs目录并且复制一份tracker.conf.sample并命名为tracker.conf,如下所示。
[html] view plain copy
- [[email protected] bin]# cd /etc/fdfs/
- [[email protected] fdfs]# ll
- 总用量 20
- -rw-r--r--. 1 root root 1461 4月 11 04:10 client.conf.sample
- -rw-r--r--. 1 root root 7829 4月 11 04:10 storage.conf.sample
- -rw-r--r--. 1 root root 7102 4月 11 04:10 tracker.conf.sample
- [[email protected] fdfs]# cp tracker.conf.sample tracker.conf
- [[email protected] fdfs]#
2、使用命令vim /etc/fdfs/tracker.conf进入编辑模式,然后修改base_path的值为/fastdfs/tracker,如下图所示。
/
3、我们在上图配置文件中配置的/fastdfs/tracker目前是不存在的,因此我们需要创建一下该目录
[html] view plain copy
- [[email protected] fdfs]# mkdir -p /fastdfs/tracker
- [[email protected] fdfs]#
4、配置防火墙,放开tracker使用的端口22122,使用命令vim
/etc/sysconfig/iptables进入编辑模式,添加一行内容-A INPUT -m state --state NEW -m tcp
-p tcp --dport 22122 -j ACCEPT,如下图所示。
5、重启防火墙
[html] view plain copy
- [[email protected] fdfs]# service iptables restart
- iptables:将链设置为政策 ACCEPT:filter [确定]
- iptables:清除防火墙规则: [确定]
- iptables:正在卸载模块: [确定]
- iptables:应用防火墙规则: [确定]
- [[email protected] fdfs]#
6、在启动tracker之前,/fastdfs/tracker目录下是没有任何文件的,如下所示
[html] view plain copy
- [[email protected] tracker]# cd /fastdfs/tracker/ && ll
- 总用量 0
- [[email protected] tracker]#
启动tracker,启动完之后,可以看到这个目录下多了两个目录data和logs。如下所示。
[html] view plain copy
- [[email protected] tracker]# /etc/init.d/fdfs_trackerd start
- Starting FastDFS tracker server:
- [[email protected] tracker]# cd /fastdfs/tracker/ && ll
- 总用量 8
- drwxr-xr-x. 2 root root 4096 4月 11 05:01 data
- drwxr-xr-x. 2 root root 4096 4月 11 05:01 logs
- [[email protected] tracker]#
7、设置开机自启动,在rc.local文件中添加/etc/init.d/fdfs_trackerd start,如下所示。
[html] view plain copy
- [[email protected] tracker]# vim /etc/rc.d/rc.local
- #!/bin/sh
- #
- # This script will be executed *after* all the other init scripts.
- # You can put your own initialization stuff in here if you don‘t
- # want to do the full Sys V style init stuff.
- touch /var/lock/subsys/local
- /etc/init.d/fdfs_trackerd start
第十一步:配置FastDFS存储
1、进入/etc/fdfs目录,复制一份storage.conf.sample文件并命名为storage.conf,如下所示。
[html] view plain copy
- [[email protected] tracker]# cd /etc/fdfs/
- [[email protected] fdfs]# ll
- 总用量 28
- -rw-r--r--. 1 root root 1461 4月 11 04:10 client.conf.sample
- -rw-r--r--. 1 root root 7829 4月 11 04:10 storage.conf.sample
- -rw-r--r--. 1 root root 7098 4月 11 04:45 tracker.conf
- -rw-r--r--. 1 root root 7102 4月 11 04:10 tracker.conf.sample
- [[email protected] fdfs]# cp storage.conf.sample storage.conf
- [[email protected] fdfs]# ll
- 总用量 36
- -rw-r--r--. 1 root root 1461 4月 11 04:10 client.conf.sample
- -rw-r--r--. 1 root root 7829 4月 11 05:07 storage.conf
- -rw-r--r--. 1 root root 7829 4月 11 04:10 storage.conf.sample
- -rw-r--r--. 1 root root 7098 4月 11 04:45 tracker.conf
- -rw-r--r--. 1 root root 7102 4月 11 04:10 tracker.conf.sample
- [[email protected] fdfs]#
2、修改storage.conf文件 ,我们使用命令vim /etc/fdfs/storage.conf进入编辑模式,对以下四项进行修改,192.168.156.13是我的虚拟机的IP,大家根据自己虚拟机的IP自行设置。
[html] view plain copy
- base_path=/fastdfs/storage
- store_path0=/fastdfs/storage
- tracker_server=192.168.156.13:22122
- http.server_port=8888
3、创建存储目录,如下所示。
[html] view plain copy
- [[email protected] fdfs]# mkdir -p /fastdfs/storage
- [[email protected] fdfs]#
4、配置防火墙,允许外界访问storage的默认端口23000,如下所示。
[html] view plain copy
- [[email protected] fdfs]# vim /etc/sysconfig/iptables
- # Firewall configuration written by system-config-firewall
- # Manual customization of this file is not recommended.
- *filter
- :INPUT ACCEPT [0:0]
- :FORWARD ACCEPT [0:0]
- :OUTPUT ACCEPT [0:0]
- -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
- -A INPUT -p icmp -j ACCEPT
- -A INPUT -i lo -j ACCEPT
- -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
- -A INPUT -m state --state NEW -m tcp -p tcp --dport 22122 -j ACCEPT
- -A INPUT -m state --state NEW -m tcp -p tcp --dport 23000 -j ACCEPT
- -A INPUT -j REJECT --reject-with icmp-host-prohibited
- -A FORWARD -j REJECT --reject-with icmp-host-prohibited
- COMMIT
添加完之后,重启防火墙,如下所示。
[html] view plain copy
- [[email protected] fdfs]# service iptables restart
- iptables:将链设置为政策 ACCEPT:filter [确定]
- iptables:清除防火墙规则: [确定]
- iptables:正在卸载模块: [确定]
- iptables:应用防火墙规则: [确定]
- [[email protected] fdfs]#
5、在启动storage之前,/fastdbf/storage目录下是没有任何文件的
[html] view plain copy
- [[email protected] fdfs]# cd /fastdfs/storage/ && ll
- 总用量 0
- [[email protected] storage]#
启动storage,启动后再看/fastdfs/storage目录,可以看到多了data和logs。
[html] view plain copy
- [[email protected] storage]# /etc/init.d/fdfs_storaged start
- Starting FastDFS storage server:
- [[email protected] storage]# cd /fastdfs/storage/ && ll
- 总用量 8
- drwxr-xr-x. 68 root root 4096 4月 11 05:21 data
- drwxr-xr-x. 2 root root 4096 4月 11 05:20 logs
- [[email protected] storage]#
6、查看FastDFS tracker和storage 是否启动成功,当看到如下所示信息时说明都启动成功了。
[html] view plain copy
- [[email protected] storage]# ps -ef | grep fdfs
- root 2124 1 0 05:01 ? 00:00:00 /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf
- root 2228 1 0 05:21 ? 00:00:00 /usr/bin/fdfs_storaged /etc/fdfs/storage.conf
- root 2238 1360 0 05:22 pts/0 00:00:00 grep fdfs
- [[email protected] storage]#
7、我们进入到 /fastdfs/storage/data/目录下,可以看到两级共256*256个目录,每级都是从00到FF,如下只是列出了第一级的目录,点进去每个目录都还有00到FF共256个目录。
[html] view plain copy
- [[email protected] storage]# cd /fastdfs/storage/data/ && ls
- 00 09 12 1B 24 2D 36 3F 48 51 5A 63 6C 75 7E 87 90 99 A2 AB B4 BD C6 CF D8 E1 EA F3 FC
- 01 0A 13 1C 25 2E 37 40 49 52 5B 64 6D 76 7F 88 91 9A A3 AC B5 BE C7 D0 D9 E2 EB F4 FD
- 02 0B 14 1D 26 2F 38 41 4A 53 5C 65 6E 77 80 89 92 9B A4 AD B6 BF C8 D1 DA E3 EC F5 fdfs_storaged.pid
- 03 0C 15 1E 27 30 39 42 4B 54 5D 66 6F 78 81 8A 93 9C A5 AE B7 C0 C9 D2 DB E4 ED F6 FE
- 04 0D 16 1F 28 31 3A 43 4C 55 5E 67 70 79 82 8B 94 9D A6 AF B8 C1 CA D3 DC E5 EE F7 FF
- 05 0E 17 20 29 32 3B 44 4D 56 5F 68 71 7A 83 8C 95 9E A7 B0 B9 C2 CB D4 DD E6 EF F8 storage_stat.dat
- 06 0F 18 21 2A 33 3C 45 4E 57 60 69 72 7B 84 8D 96 9F A8 B1 BA C3 CC D5 DE E7 F0 F9 sync
- 07 10 19 22 2B 34 3D 46 4F 58 61 6A 73 7C 85 8E 97 A0 A9 B2 BB C4 CD D6 DF E8 F1 FA
- 08 11 1A 23 2C 35 3E 47 50 59 62 6B 74 7D 86 8F 98 A1 AA B3 BC C5 CE D7 E0 E9 F2 FB
- [[email protected] data]#
8、设置storage开机自启动,添加一行/etc/init.d/fdfs_storaged start,如下所示。
[html] view plain copy
- [[email protected] data]# vim /etc/rc.local
- #!/bin/sh
- #
- # This script will be executed *after* all the other init scripts.
- # You can put your own initialization stuff in here if you don‘t
- # want to do the full Sys V style init stuff.
- touch /var/lock/subsys/local
- /etc/init.d/fdfs_trackerd start
- /etc/init.d/fdfs_storaged start
第十二步:测试图片上传
1、进入到/etc/fdfs目录下并复制一份client.conf.sample并更名为client.conf,如下所示。
[html] view plain copy
- [[email protected] data]# cd /etc/fdfs
- [[email protected] fdfs]# ll
- 总用量 36
- -rw-r--r--. 1 root root 1461 4月 11 04:10 client.conf.sample
- -rw-r--r--. 1 root root 7820 4月 11 05:12 storage.conf
- -rw-r--r--. 1 root root 7829 4月 11 04:10 storage.conf.sample
- -rw-r--r--. 1 root root 7098 4月 11 04:45 tracker.conf
- -rw-r--r--. 1 root root 7102 4月 11 04:10 tracker.conf.sample
- [[email protected] fdfs]# cp client.conf.sample client.conf
- [[email protected] fdfs]# ll
- 总用量 40
- -rw-r--r--. 1 root root 1461 4月 11 05:40 client.conf
- -rw-r--r--. 1 root root 1461 4月 11 04:10 client.conf.sample
- -rw-r--r--. 1 root root 7820 4月 11 05:12 storage.conf
- -rw-r--r--. 1 root root 7829 4月 11 04:10 storage.conf.sample
- -rw-r--r--. 1 root root 7098 4月 11 04:45 tracker.conf
- -rw-r--r--. 1 root root 7102 4月 11 04:10 tracker.conf.sample
- [[email protected] fdfs]#
2、使用命令vim /etc/fdfs/client.conf进入编辑模式并修改如下两项内容,如下所示。
[html] view plain copy
- base_path=/fastdfs/tracker
- tracker_server=192.168.156.13:22122
3、我们找到命令的脚本位置,并且使用命令,进行文件的上传。
[html] view plain copy
- [[email protected] bin]# cd /usr/bin/ && ls | grep fdfs
- fdfs_appender_test
- fdfs_appender_test1
- fdfs_append_file
- fdfs_crc32
- fdfs_delete_file
- fdfs_download_file
- fdfs_file_info
- fdfs_monitor
- fdfs_storaged
- fdfs_test
- fdfs_test1
- fdfs_trackerd
- fdfs_upload_appender
- fdfs_upload_file
- [[email protected] bin]#
下面使用fdfs_upload_file脚本进行文件上传操作,如下所示。可以看到已经上传成功了,返回的是图片的保存位置:group1/M00/00/00/wKicDVjr_ayAE4VVAAHk-VzqZ6w020.jpg
[html] view plain copy
- [[email protected] bin]# /usr/bin/fdfs_upload_file /etc/fdfs/client.conf /usr/local/software/3.jpg
- group1/M00/00/00/wKicDVjr_ayAE4VVAAHk-VzqZ6w020.jpg
- [[email protected] bin]#
第十三步:FastDFS与nginx相结合
1、先安装nginx,大家可以参考http://blog.csdn.net/u012453843/article/details/69396434这篇博客的第四步Nginx安装(我们已经安装过的vim、gcc等就不需要重复安装了)。
2、安装fastdfs-nginxmodule_v1.16.tar.gz(fast与nginx相结合的模块安装包), 进入 /usr/local/software目录并解压,如下所示。
[html] view plain copy
- [[email protected] nginx-1.6.2]# cd /usr/local/software/
- [[email protected] software]# tar -zxvf fastdfs-nginx-module_v1.16.tar.gz -C /usr/local/fast/
- fastdfs-nginx-module/
- fastdfs-nginx-module/src/
- fastdfs-nginx-module/src/ngx_http_fastdfs_module.c
- fastdfs-nginx-module/src/mod_fastdfs.conf
- fastdfs-nginx-module/src/config
- fastdfs-nginx-module/src/common.h
- fastdfs-nginx-module/src/common.c
- fastdfs-nginx-module/INSTALL
- fastdfs-nginx-module/HISTORY
- [[email protected] software]#
3、进入到/usr/local/fast目录下可以看到解压的fastdfs-nginx-module目录,然后进入到fastdfs-nginx-module/src/目录下,可以看到config文件。
[html] view plain copy
- [[email protected] software]# cd /usr/local/fast/
- [[email protected] fast]# ll
- 总用量 12
- drwxr-xr-x. 10 8980 users 4096 4月 11 04:10 FastDFS
- drwxrwxr-x. 3 500 500 4096 5月 4 2014 fastdfs-nginx-module
- drwxr-xr-x. 4 root root 4096 4月 11 03:30 libfastcommon-master
- [[email protected] fast]# cd fastdfs-nginx-module/src/
- [[email protected] src]# ll
- 总用量 76
- -rw-rw-r--. 1 500 500 33207 8月 30 2013 common.c
- -rw-rw-r--. 1 500 500 3479 1月 3 2012 common.h
- -rw-rw-r--. 1 500 500 447 11月 4 2010 config
- -rw-rw-r--. 1 500 500 3679 3月 30 2013 mod_fastdfs.conf
- -rw-rw-r--. 1 500 500 28542 5月 4 2014 ngx_http_fastdfs_module.c
- [[email protected] src]#
修改该conf文件,我们把文件的第四行配置中的/usr/local/include都改为/usr/include,共两处。
4、fastdfs与nginx进行结合,由于我们刚才安装过nginx了,因此在/usr/local目录下已经生成了一个nginx目录了,如下图所示。
为了将nginx与fastdfs相结合,我们先把这个nginx目录删除掉,如下图所示,可以看到已经没有nginx目录了。
进入到nginx-1.6.2/目录下并执行配置和编译安装,如下所示。
[html] view plain copy
- [[email protected] local]# cd nginx-1.6.2/
- [[email protected] nginx-1.6.2]# ./configure --add-module=/usr/local/fast/fastdfs-nginx-module/src/
- [[email protected] nginx-1.6.2]# make && make install
复制fastdfs-nginx-module中的配置文件,到/etc/fdfs目录中,如下所示。
[html] view plain copy
- [[email protected] fdfs]# cd /usr/local/fast/fastdfs-nginx-module/src/
- [[email protected] src]# ll
- 总用量 76
- -rw-rw-r--. 1 500 500 33207 8月 30 2013 common.c
- -rw-rw-r--. 1 500 500 3479 1月 3 2012 common.h
- -rw-rw-r--. 1 500 500 435 4月 11 06:09 config
- -rw-rw-r--. 1 500 500 3679 3月 30 2013 mod_fastdfs.conf
- -rw-rw-r--. 1 500 500 28542 5月 4 2014 ngx_http_fastdfs_module.c
- [[email protected] src]# cp /usr/local/fast/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/
- [[email protected] src]#
我们到 /etc/fdfs/ 目录下,修改我们刚copy过来的mod_fastdfs.conf 文件,需要修改的项如下,其中第一项是超时时长,第三项是允许外界通过http方式访问资源。
[html] view plain copy
- connect_timeout=10
- tracker_server=192.168.156.13:22122
- url_have_group_name = true
- store_path0=/fastdfs/storage
复制FastDFS里的2个文件,到/etc/fdfs目录中,如下所示。
[html] view plain copy
- [[email protected] fdfs]# cd /usr/local/fast/FastDFS/conf/
- [[email protected] conf]# ll
- 总用量 84
- -rw-r--r--. 1 8980 users 23981 12月 2 2014 anti-steal.jpg
- -rw-r--r--. 1 8980 users 1461 12月 2 2014 client.conf
- -rw-r--r--. 1 8980 users 858 12月 2 2014 http.conf
- -rw-r--r--. 1 8980 users 31172 12月 2 2014 mime.types
- -rw-r--r--. 1 8980 users 7829 12月 2 2014 storage.conf
- -rw-r--r--. 1 8980 users 105 12月 2 2014 storage_ids.conf
- -rw-r--r--. 1 8980 users 7102 12月 2 2014 tracker.conf
- [[email protected] conf]# cp http.conf mime.types /etc/fdfs/
- [[email protected] conf]#
创建一个软连接,在/fastdfs/storage文件存储目录下创建软连接,将其链接到实际存放数据 的目录,如下所示。
[html] view plain copy
- [[email protected] conf]# ln -s /fastdfs/storage/data/ /fastdfs/storage/data/M00
- [[email protected] conf]#
进入到/usr/local/nginx/conf/目录下,修改nginx.conf文件,如下图所示。
修改的内容如下图示
可以直接复制下面的内容。
[html] view plain copy
- listen 8888;
- location ~/group([0-9])/M00 {
- ngx_fastdfs_module;
- }
设置nginx开机自启动,这样下次重启设备之后,tracker、storage、nginx都自动启动了,直接就可以使用服务,如下所示。
[html] view plain copy
- [[email protected] ~]# vim /etc/rc.d/rc.local
- #!/bin/sh
- #
- # This script will be executed *after* all the other init scripts.
- # You can put your own initialization stuff in here if you don‘t
- # want to do the full Sys V style init stuff.
- touch /var/lock/subsys/local
- /etc/init.d/fdfs_trackerd start
- /etc/init.d/fdfs_storaged start
- /usr/local/nginx/sbin/nginx
启动nginx,如下所示。
[html] view plain copy
- [[email protected] conf]# /usr/local/nginx/sbin/nginx
- ngx_http_fastdfs_set pid=6809
- [[email protected] conf]#
5、在通过8888端口访问图片之前先配置下防火墙,允许外界访问8888端口,添加的一行是-A INPUT -m state --state NEW -m tcp -p tcp --dport 8888 -j ACCEPT,如下图所示。
配置完防火墙后重启防火墙
[html] view plain copy
- [[email protected] conf]# service iptables restart
- iptables:将链设置为政策 ACCEPT:filter [确定]
- iptables:清除防火墙规则: [确定]
- iptables:正在卸载模块: [确定]
- iptables:应用防火墙规则: [确定]
- [[email protected] conf]#
6、现在我们便可以通过http的方式访问我们刚才上传的图片了(我们刚才上传图片返回的地址是group1/M00/00/00/wKicDVjr_ayAE4VVAAHk-VzqZ6w020.jpg),如下图所示。
至此,一个单机版的FastDFS便搭建完毕了!!