summaryrefslogtreecommitdiffstats
path: root/docs/FAQ
blob: 9b3bbfcd8cd61e60f11878abf1e2852e932f08c6 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
這篇文章描述 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