linux离线安装fastdfs
创建并进入指定文件夹
mkdir -p /data/fastdfs
cd /data/fastdfs
1、准备或下载安装包
没有就下载
wget https://github.com/happyfish100/libfastcommon/archive/V1.0.7.tar.gz
wget http://jaist.dl.sourceforge.net/project/fastdfs/FastDFS%20Nginx%20Module%20Source%20Code/fastdfs-nginx-module_v1.16.tar.gz
wget https://github.com/happyfish100/fastdfs/archive/V5.05.tar.gz
wget http://nginx.org/download/nginx-1.12.1.tar.gz
2、安装gcc
2.1 检查系统有没有gcc
gcc -v
2.2 安装gcc
yum -y install gcc gcc-c++ autoconf pcre pcre-devel make automake
yum -y install wget httpd-tools vim
3、安装libfastcommon
#进入目录
cd /data/fastdfs
3.1 进入libfastcommon压缩包目录解压,编译,安装
tar -zxvf V1.0.7.tar.gz
3.2 进入解压的libfastcommon-1.0.7目录,
cd libfastcommon-1.0.7
3.3 编译
./make.sh
3.4 安装
./make.sh install
3.5 最后,拷贝libfastcommon.so文件到usr/lib下 ,请按照自己的实际文件路径修改被复制路径
cp /data/fastdfs/libfastcommon-1.0.7/src/libfastcommon.so /usr/lib
4、安装FastDFS
#进入目录
cd /data/fastdfs
4.1 解压FastDFS_v5.05.tar.gz
,然后编译安装FastDFS
tar -zxvf V5.05.tar.gz
4.2 进入fastdfs-5.05目录下
cd fastdfs-5.05
4.3 编译
./make.sh
4.4 安装
./make.sh install
4.5 安装成功后将目录conf
内的文件拷贝到/etc/fdfs
目录下:
cp /data/fastdfs/fastdfs-5.05/conf/* /etc/fdfs/
5、安装tracker
创建存储日志和数据的文件夹
mkdir -p /home/logs/fastdfs
5.1 修改tracker.conf文件
进入/etc/fdfs
目录,修改tracker.conf
文件。如果不存在,就拷贝tracker.conf.sample
文件为tracker.conf
,然后再修改
cd /etc/fdfs
vi tracker.conf
修改的内容
base_path=/home/yuqing/fastdfs >>> base_path=/home/logs/fastdfs (解释:日志文件)
http.server_port=8080 >>> http.server_port=8888 (解释:端口,8888是docker部署就是这个端口)
store_group=group1 (解释:组名)
5.2 配置成功之后启动tracker
fdfs_trackerd /etc/fdfs/tracker.conf start
查看是否启动成功
netstat -unltp | grep tracker
看到这个就启动成功了
6、安装storage
创建存储日志和数据的文件夹
mkdir -p /home/fastdfs/data/storage
mkdir -p /home/fastdfs/logs/storage
由于storage和tracker运行的都是fastDFS程序,每一台服务器都部署一台fasfDFS,一台服务器是tracker,一台是storage
6.1 修改storage.conf文件
进入/etc/fdfs
目录,修改storage.conf
文件。如果不存在,就拷贝storage.conf.sample
文件为storage.conf
,然后再修改:
cd /etc/fdfs
vi storage.conf
修改的内容
base_path=/home/yuqing/fastdfs >>> base_path=/home/fastdfs/logs/storage (日志路径)
store_path0=/home/yuqing/fastdfs >>> store_path0=/home/fastdfs/data/storage (实际储存文件路径,可以配置多个)
tracker_server=192.168.209.121:22122 >>> tracker_server=192.168.1.241:22122 (连接tracker服务器地址)
group_name=group1 (必须和tracker的组名相同)http.server_port=8888 (这个端口也要改)
6.2 配置成功之后启动storage
fdfs_storaged /etc/fdfs/storage.conf start
查看是否启动成功
netstat -unltp | grep storage
看到这个就启动成功了
7、查看tracker和storage是否在通信
fdfs_monitor /etc/fdfs/storage.conf
出现截图中的Active就表示两个都正常启动了
8、测试上传文件
Tracker和storage都已经安装完成,使用命令测试文件上传:
FastDFS提供一个文件上传命令:usr/bin/fdfs_test 测试文件上传。测试上传需要连接tracker服务器,连接storage服务器。因此需要指定一个配置文件:client.conf配置文件,通过Client.conf连接tracker服务器。
8.1 修改client.conf
创建目录
mkdir -p /home/logs/client
进入目录
cd /etc/fdfs
修改client.conf
vi client.conf
修改内容
base_path=/home/logs/client (日志目录)
tracker_server=192.168.1.241:22122 (tracker端口)
http.tracker_server_port=8888 (http访问时的端口)
8.2 测试命令
创建一个临时目录
mkdir -p /data/temp
创建一个测试文件
touch /data/temp/test.txt
上传测试文件
/usr/bin/fdfs_test /etc/fdfs/client.conf upload /data/temp/test.txt
返回文件地址如下就说明成功了
9、安装Nginx
进入压缩包目录
cd /data/fastdfs/
9.1 首先解压nginx-1.12.1.tar.gz
tar -zxvf nginx-1.12.1.tar.gz
9.2 进入nginx目录
cd nginx-1.12.1
9.3
./configure
9.4 编译
make
9.5 安装
make install
10、安装fastdfs-nginx-module
进入目录
cd /data/fastdfs/
10.1 首先解压fastdfs-nginx-module_v1.16.tar.gz
tar -zxvf fastdfs-nginx-module_v1.16.tar.gz
10.2 修改/fastdfs-nginx-module/src/config文件
vi fastdfs-nginx-module/src/config
去掉文件内容里所有的local(一共3个)
修改前的
ngx_addon_name=ngx_http_fastdfs_module
HTTP_MODULES="$HTTP_MODULES ngx_http_fastdfs_module"
NGX_ADDON_SRCS="$NGX_ADDON_SRCS $ngx_addon_dir/ngx_http_fastdfs_module.c"
CORE_INCS="$CORE_INCS /usr/local/include/fastdfs /usr/local/include/fastcommon/"
CORE_LIBS="$CORE_LIBS -L/usr/local/lib -lfastcommon -lfdfsclient"
CFLAGS="$CFLAGS -D_FILE_OFFSET_BITS=64 -DFDFS_OUTPUT_CHUNK_SIZE='256*1024' -DFDFS_MOD_CONF_FILENAME='\"/etc/fdfs/mod_fastdfs.conf\"'"
修改后的
ngx_addon_name=ngx_http_fastdfs_module
HTTP_MODULES="$HTTP_MODULES ngx_http_fastdfs_module"
NGX_ADDON_SRCS="$NGX_ADDON_SRCS $ngx_addon_dir/ngx_http_fastdfs_module.c"
CORE_INCS="$CORE_INCS /usr/include/fastdfs /usr/include/fastcommon/"
CORE_LIBS="$CORE_LIBS -L/usr/lib -lfastcommon -lfdfsclient"
CFLAGS="$CFLAGS -D_FILE_OFFSET_BITS=64 -DFDFS_OUTPUT_CHUNK_SIZE='256*1024' -DFDFS_MOD_CONF_FILENAME='\"/etc/fdfs/mod_fastdfs.conf\"'"
10.3 拷贝usr/lib64目录下库文件libfdfsclient.so
cp /usr/lib64/libfdfsclient.so /usr/lib
10.4 在nginx安装目录下执行如下命令:把module添加nginx中。通过设置安装参数方式添加模块
cd nginx-1.12.1
./configure --add-module=../fastdfs-nginx-module/src
10.5 重新安装编译
make && make install
10.6 查看Nginx的模块
/usr/local/nginx/sbin/nginx -V
10.7 复制 fastdfs-nginx-module 源码中的配置文件到/etc/fdfs 目录, 并修改
cd /data/fastdfs/fastdfs-nginx-module/src
cp mod_fastdfs.conf /etc/fdfs/
10.8 进入/etc/fdfs/修改mod_fastdfs.conf如下配置,其他默认
vi /etc/fdfs/mod_fastdfs.conf
# 连接超时时间
connect_timeout=10
# Tracker Server
tracker_server=192.168.1.241:22122
# StorageServer 默认端口
storage_server_port=23000
# 如果文件ID的uri中包含/group**,则要设置为true(基本上必须配置)
url_have_group_name = true
# Storage 配置的store_path0路径,必须和storage.conf中的一致
store_path0=/home/fastdfs/data/storage
# the base path to store log files
base_path=/home/fastdfs/logs/storage
10.9 配置iNginx ,进入/usr/local/nginx/conf目录下修改nginx.conf
注意:无论你在哪解压安装的。必须进这个目录/usr/local/nginx/conf下修改nginx.conf
cd /usr/local/nginx/conf
vim nginx.conf
修改配置,其它的默认
新增一个服务配置
server {
listen 8888;
server_name fastdfs;
location ~/group([0-9])/M00 {
ngx_fastdfs_module;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
#在文件存储目录下创建软连接,将其链接到实际存放数据的目录,注意这个文件存储的位置后面多个data目录是系统自动生成的
ln -s /home/fastdfs/data/storage/data /home/fastdfs/data/storage/data/M00
11、启动nginx
#启动nginx
cd /usr/local/nginx/sbin/
./nginx
#也可以直接启动(执行了上面的那个就不要执行这个了)
/usr/local/nginx/sbin/nginx
查看nginx是否启动
ps -ef | grep nginx
接下来直接去访问