環境:Ubuntu 14.04.1 FastDFS_v5.04 ip:10.1.20.145
1. 安裝libfastcommon
下載地址:https://github.com/happyfish100/libfastcommon.git
在/usr/fastdfs目錄下解壓、編譯:
unzip unzip libfastcommon-master.zip cd libfastcommon-master ./make.sh ./make.sh install
2. 安裝FastDFS
tar xf FastDFS_v5.04.tar.gz cd fastdfs-5.05 ./make.sh ./make.sh install
至此FastDFS在 tracker上安裝完成,所有的可執行文件位於 /usr/bin 目錄下,以fdfs開頭的文件
ll /usr/bin/fd*

所有的配置文件在 /etc/fdfs/ 目錄下
ll /etc/fdfs/

3. 配置tracker
進入到 /etc/fdfs 目錄下,復制模版文件tracker.conf.sample到 tracker.conf
創建數據文件和日志文件目錄:
mkdir -pv /data/fastdfs/tracker
mkdir: 已創建目錄 "/data"mkdir: 已創建目錄 "/data/fastdfs"mkdir: 已創建目錄 "/data/fastdfs/tracker"
編輯 tracker.conf 文件,測試的時候只需要修改以下參數即可
disabled=false #啟用配置文件 port=22122 #設置 tracker 的端口號 base_path=/data/fastdfs/tracker #設置 tracker 的數據文件和日志目錄(需預先創建) http.server_port=8080 #設置 http 端口號
這個http.server_port=8080 指的是在tracker服務器上啟動http服務進程,如:apache或者nginx 啟動時所監聽的端口,這個似乎是可以不用管的,因為tracker本身就沒有安裝http服務
運行tracker:
直接使用 fdfs_trackerd 來啟動tracker進程,然后使用netstat 查看端口是否起來。
[root@wangyinxiang fdfs]# fdfs_trackerd /etc/fdfs/tracker.conf restart [root@wangyinxiang fdfs]# netstat -antp | grep trackerd tcp 000.0.0.0:22122 0.0.0.0:*LISTEN14520/fdfs_trackerd

4. 配置storage
進入到 /etc/fdfs 目錄下,復制/usr/fastdfs/fastdfs-5.05/conf/* 下面的所有文件到當前目錄下(/etc/fdfs)
[root@wangyinxiang /etc/fdfs]# cd /etc/fdfs/ [root@wangyinxiang /etc/fdfs]# cp /usr/fastdfs/fastdfs-5.05/conf/* . [root@wangyinxiang /etc/fdfs]# ll 總用量 64 -rw-r--r-- 1 root root 146110月 2914:33 client.conf -rw-r--r-- 1 root root 85810月 2914:33 http.conf -rw-r--r-- 1 root root 3117210月 2914:33 mime.types -rw-r--r-- 1 root root 369710月 2914:34 mod_fastdfs.conf -rw-r--r-- 1 root root 764610月 2814:34 storage.conf -rw-r--r-- 1 root root 10510月 2914:33 storage_ids.conf -rw-r--r-- 1 root root 710210月 2914:33 tracker.conf
編輯配置文件 storage.conf 測試的時候,只需修改以下內容即可:
[root@wangyinxiang /etc/fdfs]# vim storage.conf disabled=false#啟用配置文件 group_name=group1 #組名,根據實際情況修改 port=23000 #設置 storage 的端口號 base_path=/data/fastdfs/storage #設置 storage 的日志目錄(需預先創建) store_path_count=1 #存儲路徑個數,需要和 store_path 個數匹配 store_path0=/data/fastdfs/storage #存儲路徑 tracker_server=10.1.20.245:22122 #tracker 服務器的 IP 地址和端口號 http.server_port=8080 #設置storage上啟動的http服務的端口號,如安裝的nginx的端口號
運行:
[root@wangyinxiang /etc/fdfs]# fdfs_storaged /etc/fdfs/storage.conf restart
#查看端口是否起來 [root@wangyinxiang /etc/fdfs]# netstat -antp | grep storage tcp 0 0 0.0.0.0:23000 0.0.0.0:* LISTEN 10333/fdfs_storaged tcp 0 0 10.1.20.245:57886 10.1.20.245:22122 ESTABLISHED 10333/fdfs_storaged
5. 可以使用 fdfs_monitor 來查看一下storage的狀態,看是否已經成功注冊到了tracker
[......]# fdfs_monitor /etc/fdfs/storage.conf
#也可以以下命令來監控服務器的狀態:
[......]# fdfs_monitor /etc/fdfs/client.conf

注:看到ACTIVE,就說明已經成功注冊到了tracker。
6. 客戶端上傳文件
FastDFS安裝包中,自帶了客戶端程序,通過程序可以進行文件上傳。在使用這個客戶端程序之前,首先需要配置client.conf,然后再進行文件上傳及下載。
a、修改/etc/fdfs/client.conf文件,修改如下:
base_path=/home/yuqing/fastdfs--> base_path=/home/soar/fastdfs_tracker
tracker_server=192.168.209.121:22122 --> tracker_server=10.1.20.245:22122
http.tracker_server_port=80 ->http.tracker_server_port=8080
#支持http
##include http.conf ->#include http.conf
b、進入/usr/local/bin/目錄,上傳文件,執行
sudo fdfs_test /etc/fdfs/client.conf upload a.txt
注:a.txt可以在/usr/local/bin/目錄下自己創建一個
如果命令行反饋類似如下:


說明上傳完成。