fromd - ptt/pttbbs GitHub Wiki

故鄉查詢常駐程式

因為故鄉查詢系統最近開始使用 GeoIP 2.x 的 API,因此 請先另行將您的作業系統安裝以下套件再繼續進行安裝步驟, 以下套件安裝名稱以 Debian Buster 為例:

geoip-bin
libgeoip-dev
geoipupdate
libmaxminddb0
libmaxminddb-dev
mmdb-bin

順利安裝完以上套件的話,請先利用 geoipupdate 更新 ip 對應地區資料庫:

geoipupdate

(以 root 權限執行以上指令)

並且自行記得將這個指令加入 crontab 腳本

如果你已經架完現行版本的 PttBBS,

應該就可以在 (0)Admin【 系統維護區 】(X)file 編輯系統檔案 中裡面的 etc/domain_name_query.cidr

(或直接在 bbsadm 的 shell 裡:

nano $(BBSHOME)/etc/domain_name_query.cidr

)

發現站方給的故鄉對應表

但要讓它能夠派上用場需要編譯安裝以下資料夾裡的程式:

$(BBSHOME)/pttbbs/daemon/fromd (故鄉)

以下記錄相關安裝步驟:

先至 pttbbs.conf 加上以下定義:

/* 使用 daemon/fromd, 使用外部daemon紀錄上站故鄉名稱 */
#define FROMD
#define FROMD_ADDR ":5130"

先編譯共用函式庫 common/

cd $(BBSHOME)/pttbbs/common
make clean all
cd -

編譯fromd外部程式:

cd $(BBSHOME)/pttbbs/daemon/fromd/

檢查裡面的 Makefile 檔案, 確認要 make (pmake)的指令後, 執行:

make clean all

重新編譯整個CurrentPtt程式:

cd $(BBSHOME)/pttbbs
make clean all install
make clean

將相關程式 kill 掉後重新啟動:

    $(BBSHOME)/pttbbs/daemon/fromd/fromd
    $(BBSHOME)/bin/mbbsd -d -p [你要開的port]

之後也可以加在 /etc/rc.local/etc/rc.d/rc.local 或是其他 shell script 裡當作 開機後自動執行的腳本, (當然也可以直接自己寫 systemd unit) 這樣以後一上自己的BBS就可以在使用者名單查看上站故鄉了

ref: