9 分鐘架一個 PttBBS === Author: r2 ``<holishing aT ccns.ncku.edu.tw>`` --- ## Why? * 可以從中釐清 Ptt 站長、各級站務、板主具體權限為何,是否可查看使用者個資、刪改文章,履行監督之責 * 協助重現 PttBBS 系統既有問題(Bugs),實踐開源參與、回饋的精神 * ~~可以架個個人 BBS 站自 high~~ ( [範例](https://www.clam.ml) ) --- ## 假設 * 你已經碰過一點 Linux 環境常用的終端機指令了 * 如果沒有也沒關係,只是不保證能 9 分鐘架完而已 (!? --- ## 步驟 0. 安裝作業系統 * 安裝方式1: 開虛擬機 (VMware, VirtualBox) 安裝 Debian/Ubuntu * 安裝方式2: 在 Windows 10 啟用 [WSL2](https://docs.microsoft.com/zh-tw/windows/wsl/install-win10), 在 Windows 市集安裝 Debian/Ubuntu --- ### 文件提及相關指令權限說明 (root) ```bash echo hello ``` 表示上述指令要用到 `root` 權限 (bbsadm) ```bash echo hello ``` 表示上述指令要用到 `bbsadm` 這個使用者的權限 --- ## 步驟 1. 建立 bbs/bbsadm 帳號 (root) ```bash groupadd --gid 99 bbs \ && useradd -m -d /home/bbs -g bbs -s /bin/bash --uid 9999 bbsadm ``` * 若需啟用 ssh 登入,請另外利用 `vipw` [編輯使用者帳戶資訊](https://github.com/ptt/pttbbs/wiki/INSTALL#%EF%BC%91-%E5%BB%BA%E7%AB%8B-bbs--bbsadm-%E5%B8%B3%E8%99%9F) --- ## 步驟 2. 安裝套件 (root) ```bash apt install -y git python bmake gcc clang ccache libevent-dev pkg-config sudo ``` --- ## 步驟 3. 取得 PttBBS 原始碼 (root) ``` sudo -iu bbsadm ``` 切換至 bbsadm 使用者 (bbsadm) ``` git clone http://github.com/ptt/pttbbs.git ``` 抓取原始碼 --- ## 步驟 4. 修改設定檔 依據您的需求, 修改 pttbbs.conf (Big5 編碼) ```bash vim -c 'set fenc=big5 enc=big5 tenc=utf8' -c 'e!' pttbbs.conf ``` 若在 WSL2 底下,你也可以使用 VScode 來輔助編輯 Big5 編碼檔案 --- 如果是在 64bit 的作業系統編譯安裝 PttBBS,請將以下定義取消註解 (`//`): ```c #define TIMET64 ``` 在大部分 Linux 核心作業系統,請將以下定義取消註解 (`//`): ```c #define SHMALIGNEDSIZE (1048576*4) ``` --- ## 步驟 5. 編譯 PttBBS 編譯前先記得 ``` - bbsadm - $ alias make=pmake ``` 或是將以下 `make` 指令都改成 `pmake` --- 在 `/home/bbs/pttbbs` 下執行 ``` - bbsadm - $ make all install clean ``` --- 開始編譯: ![](https://i.imgur.com/v6S0El9.png) --- 編譯完成: ![](https://i.imgur.com/9JLSJCM.png) --- ## 步驟 6. 架新站才要做的相關設定 **要協助將BBS站資料搬家時務必注意。** **如果您的 BBS中已經有資料了, 請務必不要執行此部分步驟** --- 若確定自己是要架新站,請執行: (bbsadm) ```bash cd ~/pttbbs/sample; make install cd /home/bbs; bin/initbbs -DoIt ``` --- 如果 `initbbs` 參數沒打對的話會出現一些訊息: ![](http://i.imgur.com/mlZum4f.png) --- ## 步驟 7. 啟動 BBS (bbsadm) ``` ~/bin/shmctl init ~/bin/mbbsd -d -e utf8 -p 8888 ``` * 注意這邊刻意將預設顯示編碼改成 UTF-8,給架站者方便 --- ## 步驟 8. 測試是否能連線 ``` telnet localhost 8888 ``` 有正常顯示登入畫面代表成功了! --- ## 步驟 9. 取得 BBS 站長權限 new 一個帳號叫SYSOP, 然後 logout 再 login, 這樣子就會擁有站長權限囉~ --- ## 更多資源請參考 https://github.com/ptt/pttbbs/wiki/INSTALL/ --- ## 是不是很簡單呢? --- ## 還是覺得很難? 歡迎 email 到我的信箱,我的信箱在哪裡? 不告訴你!
{"metaMigratedAt":"2023-06-15T21:55:44.699Z","metaMigratedFrom":"Content","title":"9 分鐘架一個 PttBBS","breaks":false,"contributors":"[{\"id\":\"dc54d584-c05d-453d-9aee-b124ee1d41c0\",\"add\":3006,\"del\":546}]"}
    815 views