Linux下安裝Fastdfs全過程
一、前期準(zhǔn)備工作
1、需要提前下載的安裝包
(1)libfatscommon-1.0.43:FastDFS分離出的一些公用函數(shù)包
(2)fastdfs-6.06:FastDFS本體包
(3)nginx:nginx-1.23.1
(4)fastdfs-nginx-module-1.22:FastDFS和nginx的關(guān)聯(lián)模塊
2、安裝所需要環(huán)境
(1)centos安裝:
yum install -y gcc gcc-c++
yum -y install libevent
(2) ubuntu安裝:
sudo apt install build-essential
二、安裝并配置fsatdfs
1、解壓并提前下載好的安裝包
(1)將提前下載好的安裝包放在/opt/fastdfs目錄中
mkdir -p /opt/fastdfs

(2)編譯并安裝libfatscommon-1.0.43
解壓安裝包libfastcommon-1.0.43.tar.gz
tar -zxvf libfastcommon-1.0.43.tar.gz
進(jìn)入 libfastcommon-1.0.43文件夾
cd libfastcommon-1.0.43
編譯并安裝
./make.sh ./make.sh install

(3)編譯并安裝fastdfs-6.06.tar.gz
解壓fastdfs-6.06.tar.gz
tar -zxvf fastdfs-6.06.tar.gz
進(jìn)入fastdfs-6.06目錄
cd fastdfs-6.06
安裝并編譯
./make.sh ./make.sh install

將fastdfs安裝文件夾下的配置文件拷貝到/etc/fdfs目錄下
cp /opt/fastdfs/fastdfs-6.06/conf/* /etc/fdfs/
注意:我的安裝目錄在/opt/fastdfs,大家根據(jù)自己的安裝目錄去復(fù)制,/etc/fdfs/是自動生成的,無須大家自己創(chuàng)建。
(4)配置tracker服務(wù)
進(jìn)入/etc/fdfs目錄
cd /etc/fdfs
修改tracker配置文件中的tracker工作目錄
vim tracker.conf
base_path=/usr/local/fastdfs/tracker
保存編輯
按下ESC :wq
創(chuàng)建tracker工作目錄
mkdir /usr/local/fastdfs/tracker -p
啟動tracker服務(wù)
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf start
查看是否啟動成功
netstat -unltp | grep tracker

(5)配置storage服務(wù)
進(jìn)入/etc/fdfs目錄
cd /etc/fdfs
修改storage配置文件
vim storage.conf
修改storage的工作空間
base_path=/usr/local/fastdfs/storage
修改storage的存儲空間
store_path0=/usr/local/fastdfs/storage
修改tracker的ip
#你的服務(wù)器ip或者本地ip tracker_server=114.xxx.xxx.184:22122
保存編輯
按下ESC :wq
創(chuàng)建storage的工作空間和存儲空間的目錄:
mkdir /usr/local/fastdfs/storage -p
注意:我這里是兩個目錄一樣,大家如果不一樣可以分開創(chuàng)建
啟動storage 服務(wù)
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf start
查看是否啟動成功
netstat -unltp | grep storage

查看tracker和storage是不是在通信
fdfs_monitor /etc/fdfs/storage.conf

出現(xiàn)ACTIVE,表示二者均正常啟動,至此就可以進(jìn)行上傳文件測試了
(6)測試上傳
進(jìn)入/etc/fdfs目錄
cd /etc/fdfs
修改配置文件client.conf
vim client.conf
base_path=/usr/local/fastdfs/client
tracker_server=114.xxx.xxx.184:22122
注意:tracker的ip 要與上面配置保持一致
創(chuàng)建目錄:
mkdir /usr/local/fastdfs/client
echo "Hello Fastdfs">index.html /usr/bin/fdfs_test /etc/fdfs/client.conf upload /etc/fdfs/index.html
返回結(jié)果為:
因為我nginx端口為8888并不是80,所以要在返回結(jié)果的IP后加端口號8888
http://114.xxx.xxx.184:8888/group1/M00/00/00/cnOzuGOtUMCADdhzAAAADjoCoNM64_big.html

但是目前還不能訪問,因為沒有配置nginx
測試上傳圖片(命令):
fdfs_upload_file /etc/fdfs/client.conf anti-steal.jpg /usr/bin/fdfs_test /etc/fdfs/client.conf upload anti-steal.jpg
(7)配置nginx
解壓fastdfs-nginx-module-1.22.tar.gz
tar -zxvf fastdfs-nginx-module-1.22.tar.gz
進(jìn)入fastdfs-nginx-module-1.22的src目錄下
cd fastdfs-nginx-module-1.22/src/
復(fù)制配置文件mod_fastdfs.conf到/etc/fdfs目錄下
cp mod_fastdfs.conf /etc/fdfs
修改/fastdfs-nginx-module/src/config文件 把usr/local改為usr
vim config

安裝nginx
參考鏈接:linux下安裝nginx
注意:在解壓完nginx后執(zhí)行./configure需改為如下命令,需要增加一個fastdfs-nginx-module模塊
./configure \ --prefix=/usr/local/nginx \ --pid-path=/var/run/nginx/nginx.pid \ --lock-path=/var/lock/nginx.lock \ --error-log-path=/var/log/nginx/error.log \ --http-log-path=/var/log/nginx/access.log \ --with-http_gzip_static_module \ --http-client-body-temp-path=/var/temp/nginx/client \ --http-proxy-temp-path=/var/temp/nginx/proxy \ --http-fastcgi-temp-path=/var/temp/nginx/fastcgi \ --http-uwsgi-temp-path=/var/temp/nginx/uwsgi \ --http-scgi-temp-path=/var/temp/nginx/scgi \ --add-module=/opt/fastdfs/fastdfs-nginx-module-1.22/src
注意:上面的加不加無所謂,最重要的是最后一條--add-module=/opt/fastdfs/fastdfs-nginx-module-1.22/src,大家一定要換成自己的安裝路徑
進(jìn)入/etc/fdfs/目錄
cd /etc/fdfs
修改mod_fastdfs.conf配置文件
vim mod_fastdfs.conf
base_path=/usr/local/fastdfs/tmp tracker_server=114.xxx.xxx.184:22122 url_have_group_name = true store_path0=/usr/local/fastdfs/storage
下面是一些配置的介紹,大家可以參考根據(jù)自己的需求修改
connect_timeout=10 # 連接超時時間 tracker_server=192.168.255.131:22122 # Tracker Server storage_server_port=23000 # StorageServer 默認(rèn)端口 url_have_group_name =true # 如果文件ID的uri中包含/group**,則要設(shè)置為true store_path0=/fastdfsapp/data/storage # Storage 配置的store_path0路徑,必須和storage.conf中的一致 base_path=/fastdfsapp/logs/storage #日志路徑 group_count = 1
創(chuàng)建tmp目錄
mkdir /usr/local/fastdfs/tmp
修改nginx配置文件:
vim /usr/local/nginx/conf/nginx.conf
注意:listen 8888 端口值是要與 /etc/fdfs/storage.conf 中的 http.server_port=8888 (默認(rèn)8888) 相對應(yīng),如果改成其它端口,則需要統(tǒng)一,同時在防火墻中打開該端口,當(dāng)然tracker.conf中的 http.server_port=8080(默認(rèn)8080)和他們保持一致最合適不過
server {
listen 8888;
# 這里不需要改成你的本地ip或者服務(wù)器ip
server_name localhost;
location /group1/M00 {
ngx_fastdfs_module;
}
}下面是另一種方式,大家可以參考一下:
# location 的配置,如果有多個group則配置location ~/group([0-9])/M00 ,沒有則不用配group
location ~ /group([0-9])/M00 {
ngx_fastdfs_module;
}重啟nginx
cd /usr/local/nginx/sbin ./nginx -s reload
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Centos系統(tǒng)服務(wù)器查看端口是否開放的方法
本文介紹了在Centos系統(tǒng)服務(wù)器上如何查看端口是否開放的方法,通過telnet命令可以輕松實現(xiàn)。這對于服務(wù)器管理員來說非常重要,可以幫助他們及時發(fā)現(xiàn)端口問題并進(jìn)行修復(fù)。2023-03-03
Linux使用watch命令監(jiān)控Docker容器狀態(tài)的操作方法
在現(xiàn)代的開發(fā)和運維環(huán)境中,容器化技術(shù)已經(jīng)成為一種重要的趨勢,而Docker作為最流行的容器化平臺之一,Linux中的watch命令就是一個非常有用的工具,它可以幫助我們定期執(zhí)行指定的命令,并全屏顯示輸出,本文給大家介紹了在Linux中使用watch命令監(jiān)控Docker容器狀態(tài)2024-10-10
Linux使用System?V實現(xiàn)內(nèi)存共享的最佳實踐
System?V的共享內(nèi)存是Unix操作系統(tǒng)中一種進(jìn)程間通信機(jī)制,它允許不同的進(jìn)程通過共享一塊物理內(nèi)存區(qū)域來交換數(shù)據(jù),共享內(nèi)存提供了高效的進(jìn)程間通信方式,因為進(jìn)程可以直接讀寫共享區(qū)域,本文給大家介紹了在Linux上實現(xiàn)內(nèi)存共享的最佳實踐,需要的朋友可以參考下2025-07-07
Linux上通過SSH掛載遠(yuǎn)程文件系統(tǒng)方法詳解
在本篇內(nèi)容里小編給大家整理了關(guān)于在Linux上通過SSH掛載遠(yuǎn)程文件系統(tǒng)的相關(guān)知識點,需要的朋友們跟著學(xué)習(xí)下。2019-03-03

