-
Notifications
You must be signed in to change notification settings - Fork 141
holishing edited this page Aug 29, 2017
·
16 revisions
待建構中...
這篇文章描述 PttBBS 中常被問到的問題及解決方式.
1. PttBBS的討論區,以及如何寄送修改給官方
2. 在 Linux底下出現 Makefile 錯誤.
3. 加大 shared-memory
4. 設定 group
5. 五子棋盤沒有出現
6. sendmail.cf要改的地方(參考用) (by DavidYu)
7. 如何讓用 ssh方式進 bbs不用密碼
------------------------------------------------------------------------------
1.PttBBS的討論區,以及如何寄送修改給官方
主要討論區位於批踢踢實業坊 (telnet://ptt.cc) 的 PttCurrent 看板.
當你作了某些偉大的修改想與人分享時 (不管是寫了個新遊戲,或是改善了什麼界面),
可以用 svn/git/... 作出 diff 並貼在 PttCurrent 上。
pttbbs 的 maintainers 會視情況 (通常是考慮效能因素與安全問題) 決定要不要把
這些修改整合進官方版本中。
如果你的修改沒進入官方 source tree 也沒關係,有興趣的其它開發者們可以自行到
PttCurrent 上去抓取並套用你的修改 - 這也是 Open Source 的精神。
------------------------------------------------------------------------------
2.在 Linux底下出現 Makefile 錯誤.
使用 Linux, 在 compile的時候出如 Makefile:20: *** missing separator. Stop.
請安裝 pmake, 並將 make alias 成 pmake .
如: apt-get install pmake
alias make pmake
注意: 如果你 pmake 看到 "Makefile", line 9: Missing dependency operator
是因為裝了 pmake 2.x (Debian 目前裝的是 1.9x, 而 Mandrake 就是用 2.x)。
PMake 2.x 把 .if 改成 #if 的格式,這會造成舊的檔案都失效,而且雖然有提供
-Z . 可用 . 代替 # ,但 system.mk 等系統檔仍為 # 所以會爛。
PttBBS 會不會改成 PMake v2 的格式呢? 因為 BSD 系統都沒變,所以可能不會改。
解決方法有兩種
(1) 請裝 pmake 1.x ,簡單直接的作法
(2) 不過有時候你就是不幸要用 pmake 2.x,所以有個小程式可以幫你忙。
在 pttbbs/ 目錄下執行 util/pmakev2.sh
它會自動轉換成 PMake v2 的格式。
------------------------------------------------------------------------------
3.加大 shared-memory
請在 /etc/sysctl.conf 裡面加入
in FreeBSD:
kern.ipc.shmmax=104857600
kern.ipc.shmall=25600
in Linux:
kernel.shmmax=104857600
kernel.shmall=25600
這兩個數值可視須要調整,
在重新開機後會生效.
------------------------------------------------------------------------------
4.設定 group
以 FreeBSD為例, 您須要更動 /etc/group 這個檔案,
/etc/group 的語法是:
group:passwd:gid:member
group是該 group的名字,
passwd一般情況下不設, 以 *代替,
gid 為一個十進位的數字, 最好不要和其他的重複,
member為哪些人有在該群組內, 以逗號 (,)隔開.
詳細用法請見group(5)
例如您要將 aaa, bbb 加入 bbsadm 這個 group, 您可能會用:
bbsadm:*:9876:aaa,bbb
在設定完成後, 原來已經登入的使用者須要重新登入,
才會重新載入至新設的 group內.
您可以參考 group(5)
------------------------------------------------------------------------------
5.五子棋盤沒有出現
請將 sample/etc/@five 拷貝到 ~bbs/etc/ 即可.
------------------------------------------------------------------------------
6. sendmail.cf要改的地方(參考用) (by DavidYu)
要注意,tab和space不能混用
######################################
### Ruleset 0 -- Parse Address ###
######################################
S0
R$* $: $>Parse0 $1 initial parsing
R<@> $#local $: <@> special case error msgs
R$* $: $>98 $1 handle local hacks
R$+.bbs < @ $=w .> $#bbsmail $: $1 bbs mail gateway
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
R$* $: $>Parse1 $1 final parsing
......
# handle locally delivered names
R$+.bbs $#bbsmail $:$1 bbs mail gateway
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
R$=L $#local $: @ $1 special local names
R$+ $#local $: $1 regular local names
###########################################################################
### Ruleset 5 -- special rewriting after aliases have been expanded ###
###########################################################################
......
##################################################
### Local and Program Mailer specification ###
##################################################
##### @(#)local.m4 8.30 (Berkeley) 6/30/1998 #####
Mlocal, P=/usr/libexec/mail.local, F=lsDFMAw5:/|@qSXfmnz9P, S=10/30, R=
T=DNS/RFC822/X-Unix,
A=mail.local -l
Mprog, P=/bin/sh, F=lsDFMoqeu9, S=10/30, R=20/40, D=$z:/,
T=X-Unix,
A=sh -c $u
Mbbsmail, P=/home/bbs/bin/bbsmail, F=lsSDFMhPu, U=bbs, S=10,R=20/40,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
A=bbsmail $u
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
------------------------------------------------------------------------------
7. 如何讓用 ssh方式進 bbs不用密碼
先在 /etc/ssh/sshd_config 中把
#PermitEmptyPasswords no
改成
PermitEmptyPasswords yes
若您使用 FreeBSD 4.x, 請改 /etc/pam.conf, 在
sshd auth required pam_unix.so try_first_pass
這行最後面再加上 nullok
若您使用 FreeBSD 5.x, 請改 /etc/pam.d/sshd, 在
auth required pam_unix.so no_warn try_first_pass
這行最後面再加上 nullok