summaryrefslogblamecommitdiffstats
path: root/docs/FAQ
blob: 9b3bbfcd8cd61e60f11878abf1e2852e932f08c6 (plain) (tree)
1
2
3
4
5
6
7
8
9

                                                                           






                                              
                                            
                                        

                                         

                                                                              
                                                      



                                                                              




                                                                           



                                                                        
 






                                                                           
 

                                                                              
                              





                                 

                       
 

                                                                              












                                                       
                   
 

                                                                              
                                            
 

                                                                              
 











































                                                                                


                                                                              
                                       





                                                                    
                                             


                                          
 
                                                                  
                                          


                         
                                                                              
                                       


                                         

                                              

                                           
                              
     
                         














                                                                              
這篇文章描述 PttBBS 中常被問到的問題及解決方式. 文章的版號及最後編修時間是:
$Id$

 1. PttBBS的討論區
 2. 在 Linux底下出現 Makefile 錯誤.
 3. 加大 shared-memory
 4. 設定 group
 5. 五子棋盤沒有出現
 6. sendmail.cf要改的地方(參考用) (by DavidYu)
 7. /usr/libexec/elf/ld: cannot find -liconv
   或 iconv.h: No such file or directory
 8. /usr/libexec/elf/ld: cannot find -lhz
 9. 如何讓用 ssh方式進 bbs不用密碼
------------------------------------------------------------------------------
1.PttBBS的討論區
位於批踢踢實業坊 (telnet://ptt.cc) 的 PttCurrent 看板.

------------------------------------------------------------------------------
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./usr/libexec/elf/ld: cannot find -liconv
  或 iconv.h: No such file or directory
因為新的 innbbsd中加入了 RFC 2045 support, 須要 libiconv .
您須先要有安裝 libiconv (/usr/ports/converters/libiconv/ in FreeBSD)
再重新 make 即可

若您已經安裝了 libiconv 不過還是找不到,
請將該 lib所在的 path (/usr/local/lib in FreeBSD)
加到 innbbsd/Makefile 的 LDFLAGS 中 (line 43)
    LDFLAGS+= -liconv
改成:
    LDFLAGS+= -liconv -L/usr/local/lib

在 Linux 還境下 libiconv 被包含在 libc 中, 所以 -liconv 是不需要的
請將 innbbsd/Makefile 的 LDFLAGS (line 43)
    LDFLAGS+= -liconv
刪除

------------------------------------------------------------------------------
8./usr/libexec/elf/ld: cannot find -lhz
Ptt 支援繁體中文轉簡體中文與 UTF-8 的功能
若您開啟了這個選項 (#define CONVERT)
請安裝 autoconvert
    (/usr/ports/chinese/autoconvert in FreeBSD
     package libhz0 in Debian/Linux )

若不想開啟此選項 請修改 pttbbs.mk (line 10)
    PTT_LIBS= -lcrypt -lhz
改成:
    PTT_LIBS= -lcrypt

------------------------------------------------------------------------------
 9. 如何讓用 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