CentOS FastDFS配置之常見錯誤

來源:互聯網
上載者:User

FastDFS 常見問題

Q:/fdfs_trackerd: error while loading shared libraries: libevent-1.4.so.2: cannot open shared object file: No such file or directory

A:export LD_LIBRARY_PATH=/usr/loal/lib(libevent的安裝路徑,可以通過find來尋找)

Q:Command 'ifconfig' is available in '/sbin/ifconfig'
The command could not be located because '/sbin' is not included in the PATH environment variable.
This is most likely caused by the lack of administrative priviledges associated with your user account.
ifconfig: command not found

A:export PATH=$PATH:/sbin

Q:nginx@ubuntu:~/fastdfs/bak$ ./run_nginx.sh
/home/nginx/nginx/sbin/nginx: error while loading shared libraries: libfastcommon.so: cannot open shared object file: No such file or directory

A:找不到fastdfs的庫檔案,因為前面執行了 export LD_LIBRARY_PATH=/usr/loal/lib,所以 為了使得使用方便,就把所有需要用到的LIB放在一起:

cp libf*.so /usr/local/lib
ls -l /usr/local/lib/libf* 如果沒有連結映射,就需要自己做一個或者把四個檔案全部拷過去
sudo ln -sf /home/nginx/fastdfs/lib/libfastcommon.so.1 /usr/local/lib/libfastcommon.so
sudo ln -sf /home/nginx/fastdfs/lib/libfdfsclient.so.1 /usr/local/lib/libfdfsclient.so

注意:做軟連結的時候需要加絕對路徑,不然會出現黑色的提示。

Q:400 badrequest
[2011-12-12 15:24:21] ERROR - file: /tmp/fastdfs-nginx-module/src/common.c, line: 561, logic file: M00/00/00/wKgBNU7lqyjzJZ4mAA4CRXl5SCQ670.jpg not exists
2011/12/12 15:24:21 [error] 14147#0: *1 open() "/home/nginx/nginx/html/favicon.ico" failed (2: No such file or directory), client: 192.168.1.123, server: localhost, request: "GET /favicon.ico HTTP/1.1", host: "192.168.1.53:8090"

A:修改/fastdfs/conf/mod_fastdfs.conf
裡面url_have_group_name = true

Q: 在tracker的日誌裡報出此類錯誤
ERROR - file: tracker_mem.c, line: 1406, the format of the file "/home/bstar/dfs_data/data/storage_sync_timestamp.dat" is invalid, group: group3, row count:1 > server count:0

A:修改data裡面的 storage_sync_timestamp.dat,把group3的資訊刪掉,然後重啟tracker

Q:在啟動tracker的時候出現此類錯誤:
ERROR - file: ../common/fdfs_http_shared.c, line: 128, param "http.mime_types_filename" not exist or is empty

A:修改tracker.conf裡面,把##include http.conf 改為#include http.conf ,再重啟

Q:ERROR - file: tracker_http_check.c, line: 132, http check alive, connect to http server 192.168.1.53:8888 fail, errno: 111, error info: Connection refused

A:連接埠不對。要配置storage和nginx連接埠一致/

Q:ERROR - file: /home/nginx/install/fastdfs-nginx-module/src/common.c, line: 561, logic file: M00/00/00/wKgBNU7wRbrcAYGuAALOPrGJ7YQ668.jpg not exists

A:apache和nginx擴充模組版本v1.06及以上版本,需要在設定檔/etc/fdfs/fastdfs_mod.conf中設定storage server的儲存路徑資訊。
一個樣本如下所示:
store_path_count=1
store_path0=/home/yuqing/fastdfs
store_path_count和store_path#均需要正確設定,必須和storage.conf中的相應配置完全一致

Q: DEBUG - file: tracker_proto.c, line: 48, server: 192.168.1.51:22122, response status 28 != 0
tracker_query_storage fail, error no: 28, error info: No space left on device

A:空間不足

Q:EBUG - file: storage_disk_recovery.c, line: 699, disk recovery: begin recovery data path: /home/nginx/fastdfs ...

A:這個是資料移轉後的問題,這個需要之前配置的sub_dir的數目前後保持一致。

Q:啟動storage server時,一直處於僵死狀態。
啟動storage server,storage將串連tracker server,如果連不上,將一直重試。直到串連成功,啟動才算真正完成。
出現這樣情況,請檢查串連不上tracker server的原因。

A:從V2.03以後,多tracker server在啟動時會做時間上的檢測,判斷是否需要從別的tracker server同步4個系統檔案。
觸發時機是第一個storage server串連上tracker server後,並發起join請求。
如果叢集中有2台tracker server,而其中一台tracker沒有啟動,可能會導致storage server一直處於僵死狀態。

Q:執行fdfs_test或fdfs_test1上傳檔案時,伺服器返回錯誤號碼2

A:錯誤號碼2表示沒有ACTIVE狀態的storage server。可以執行fdfs_monitor查看伺服器狀態。

Q:如何刪除無效的storage server?

A:可以使用fdfs_monitor來刪除。命令列如下:
/usr/local/bin/fdfs_monitor delete
例如:
/usr/local/bin/fdfs_monitor /etc/fdfs/client.conf delete group1 192.168.0.100
注意:如果被刪除的storage server的狀態是ACTIVE,也就是該storage server還線上上服務的情況下,是無法刪除掉的。

Q:nginx和apache擴充模組與FastDFS server版本對應關係

A:擴充模組1.05: 針對FastDFs server v2.x,要求server版本大於等於v2.09
擴充模組1.07及以上版本: 針對FastDFs server v3.x

Q:上傳檔案失敗,返回錯誤碼28,這是怎麼回事?

A:返回錯誤碼28,表示磁碟空間不足。注意FastDFS中有預留空間的概念,在tracker.conf中設定,配置項為:reserved_storage_space,預設值為4GB,即預留4GB的空間。請酌情設定reserved_storage_space這個參數,比如可以設定為磁碟總空間的20%左右。

Q:nginx擴充模組,不能正常顯示圖片的問題

A:在設定檔/etc/fdfs/mod_fastdfs.conf中,預設的設定是這樣的:http.need_find_content_type=false這個參數在nginx中需要設定為true,apache中應該設定為false

Q:啟動 FastDFS 的 tracker 和 storage 服務後,通過 fdfs_monitor 命令查看 tracker 和 storage 的通訊狀態,發現 storage 的狀態始終為 offline,怎麼辦?

A:先查看 tracker 和 storage 的日誌,確認服務是否有問題;如果日誌顯示正常,則有可能是在操作過程中,刪除了 tracker 或 storage 某一方的快取檔案,導致緩衝不匹配。此時,先關閉 tracker 和 storage 服務,刪除 tracker.conf 和 storage.conf 中指定的 base_path 目錄下的 data 檔案,再重啟服務即可。
注意:如果刪除了 FastDHT 的 base_path 目錄下的檔案,切片集資訊將全部丟失。

Q:分布式切圖時,控制台為什麼會提示“No buffer space available (maximum connections reached?):connect”?

A:分布式切圖過程中,向 FastDFS 儲存上傳切片時,佔用的連接埠數增多,可能會達到本地作業系統的連接埠數的上限,所以出現上述問題。可通過如下方式規避:
•Windows 系統

運行 “regedit.exe”,開啟註冊表,找到 “HKEY_LOCAL_MACHINESYSTEMCurrentControlSetservicesTcpipParameters”位置,添加“TcpTimedWaitDelay”,類型為 DWORD,值為30;添加“MaxUserPort”,類型為 DWORD,值為20000(調大系統可用連接埠數)。
•Linux 系統

運行 “vi /etc/sysctl.conf”,編輯檔案,加入以下內容:
net.ipv4.tcp_syncookies  = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle =  1
net.ipv4.tcp_fin_timeout = 30

然後執行“/sbin/sysctl -p”讓參數生效即可。

Q:安裝 FastDFS 和 FastDHT 後,為什麼在 /usr/local/bin 目錄下找不到 fdfs_trackerd、fdfs_storaged 和 fdhtd 這3個命令?

A:出現此問題的原因,是由於系統的 libevent 版本太低導致 FastDFS 編譯失敗。請檢查 libevent 版本是否為1.4.x 或以上。

Q:啟動 fastDHT 服務的時候,提示“段錯誤”,是什麼原因?

A:這是因為 fdhtd 需要的依賴 libdb-5.3.so 沒有正確安裝或被指向連結。可以使用命令 ldd /usr/local/bin/fdhtd 查看 fdhtd 命令的依賴項,如果顯示的 libdb 依賴不是5.3版本,請首先確認安裝 db 時,是否指定了安裝路徑為 /usr 目錄。如果是安裝在 /usr 路徑下的,但仍然沒有正確依賴 libdb.5.3.so,則需要手動在 /lib64 目錄下建立 libdb.so 的符號連結,指向 BDB 5.3 的動態庫。

Q:FastDFS 和 FastDHT 服務正常,但是添加切圖任務失敗,查看 debug 版的 iserver.log,日誌顯示“向 FastDFS 的 storageServer 上傳資料 tileset_names 時,發生 MyException ,異常資訊是:getStoreStorage fail, errno code: 28”,這是什麼原因?

A:錯誤碼28表示 No space left on device。FastDFS 可在 tracker.conf 設定檔中設定 reserved_storage_sapce 參數,即 storage 的預留儲存空間大小,預設為10%。如果預留空間小於該設定值,將出現28錯誤。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.