1. 前言
1.1. 致谢
ytht maintenance team 他们是一塌糊涂系统的维护者,付出了很多劳动
KCN@smth 一塌糊涂 系统代码最初就是基于FB 3.0 KCN 版本,KCN也完成了某些重大bug的
debug
zhch@bbs.nju.edu.cn 目前一塌糊涂的web界面是基于zhch的nju web 0.9的
kxn@smth 一塌糊涂 ssh部分的实现和zmodem部分的设想均由kxn完成
DearDragon@fb2000.dhs.org 很多功能实现参考了FB2000的代码
JHui@ytht.net 超强文章选择核心代码
Czz@feeling 给予一塌糊涂转信代码部分很多支持
遗漏部分 先谢谢你,并请与我联系,我把你加上。
-----------------------------------------------------------------------------
1.2. 最新版本
本文档的最新版本可以从ytht网站
http://bbsdev.ytht.net上得到。
-----------------------------------------------------------------------------
1.3. 作者的身份和版权
这个文档的版权(c)2003属于俞欢(yuhuan@math.pku.edu.cn)。 允许进行拷贝以及未加修改
的分发。如需修改请联系作者。
如果你想从此文章创建一个延伸的作品或将其以商业目的发表,请先与我联系。另外我如果
我有幸收到一份经您修改后的拷贝我十分感激,不管它是你正在做的东西还是一个菠菜、大
蒜、蘑菇、羊乳酪和洋蓟做成的心形比萨。
-----------------------------------------------------------------------------
1.4. 名词规定
在不引起混淆的情况下,我将混用如下词汇:ytht、ytht bbs、ytht 发布、ytht bbs 发布
、一塌糊涂BBS 等,均指代由 ytht.net 开发小组遵循GPL发布的基于Firebird bbs代码的
Linux平台bbs系统整体。
另外在本文中您可能阅读到大量的“请参照google”字样,这说明此部分内容于ytht并无直
接关系,如果你想具体了解请自行查询相关知识,www.google.com 有时是最好的老师。这
个逻辑很简单,就像卖袜子的并不一定还要负责卖鞋子,不过我可以告诉你哪里可以找到好
鞋子,而且我们希望最后您能够帮我们一起织袜子,所以请养成自行查询相关知识的好习惯
。
-----------------------------------------------------------------------------
2. 为什么选择ytht bbs?
2.1. 如何获取ytht bbs发布?
如果你想拥有自己的 ytht bbs 发布,最简单的办法是从
http://bbsdev.ytht.net 获取当
前的 cvs 版本。
关于 cvs 的使用请自行查询,最简单的办法是通过搜索引擎
http://www.google.com 搜索
相关内容,此后我如有类似情况我将简称“请自行查询”。
-----------------------------------------------------------------------------
2.2. 为什么不下载打包版本呢?
ytht会不定期发布一些打包版本提供HTTP和FTP下载。问题是打包周期并不固定,平均三个
月左右才会制作一次。
另外,ytht的 cvs 版本经常更新,你的打包文件可能在你下载的当天就变得过时了。显然
,这不是你想要的获取 ytht发布的方法!
-----------------------------------------------------------------------------
2.3. 为什么不使用其他类似bbs代码?
ytht bbs是目前中国大陆教育网内较领先的bbs系统之一,一塌糊涂代码的负载能力高于平
均水平,并且其功能较为齐备,集成了telnet,ssh,www,ftp,pop3等服务。
在2003年3月14日的版本下,ytht.net 系统负荷小于 1
参考系统配置:P3 866 * 2; 2.5G sdram; 18G*2+36G*1 SCSI; no raid; 在线人数高峰
4400人。系统服务包括附件下载流畅无停滞。
-----------------------------------------------------------------------------
2.4. 什么是ytht?
ytht(代表着“一塌糊涂”,是北京大学 博雅塔、未明湖、图书馆 的统称),为
ytht.net 维护小组基于Firebird bbs 3.0 kcn版本修改并且发布于GNU GPL条款之下。它是
一个于Linux平台上的bbs服务端程序组。为了代码能够有机会得到更好的发展,同时也能将
一塌糊涂对火鸟的代码的修改中一点可能有价值的东西和大家分享,一塌糊涂 BBS 系统维护
组 决定公开 一塌糊涂 BBS 的源代码。希望在这个过程中,一塌糊涂 BBS 和其它的兄弟
BBS 都能得到些许益处。我们也热切希望有心情、有能力的朋友一起投入到 一塌糊涂 BBS
代码的开发维护工作中来,为了让网友用着舒心方便的 BBS 而努力。也许我们不能达成最
后的目标,但是我们会朝着这个方向不停走下去。
-----------------------------------------------------------------------------
3. 安装指南
3.1. 系统需求
ytht是标准的Linux服务程序组,如果要从源代码编译ytht需要以下软件:
运行内核版本2.2以上的Linux系统(或FreeBSD)。
GNU project C and C++ compiler(gcc)
GNU autoconf/automake
libmysqlclient (可选,用于推荐文章)
libghthash(统计资料必须)
libgmp (ssh必须)
libz (ssh必须)
到目前为止,ytht已经能在下列系统上正常运行:
Linux
OpenBSD
FreeBSD
如果您在其它平台上的系统也能运行ytht,请告诉我们。
-----------------------------------------------------------------------------
3.2. 快速安装(telnet部分)
快速安装基于 Redhat Linux 8.0 写成,其他系统请自行参考。以下步骤在我这里可以重复
,不过我想你最好还是搞明白每步在干什么,详情请参考google中Linux基本操作。
A. 检查系统是否正确安装了如下程序:
gcc
autoconf/automake
最简单的检查办法:
rpm -q gcc autoconf automake
如果没有安装,请先参照google安装相应程序
B. 创建系统用户
以root身份运行如下指令:
groupadd -g99 bbs
useradd -u9999 bbs
passwd bbs (输入两遍系统bbs用户的密码,进行密码设置)
以下设 bbs 用户的用户目录为 /home/bbs
C. 获取ytht最新代码
以bbs用户身份登录,运行如下指令:
export CVSROOT=:pserver:bbsdev@162.105.31.222:/home/cvs
cvs login
输入密码:bbsdev
cvs -z 9 co bbs
mv bbs bbssrc
D. 一切就绪,开始安装
cd bbssrc
./makedist.sh
如果得到提示:
cp: cannot stat `/usr/share/automake/config.sub': No such file or directory
cp: cannot stat `/usr/share/automake/config.guess': No such file or directory
cp: cannot stat `/usr/share/automake/install-sh': No such file or directory
那么请把你正确的 automake 做一个符号连接,
比如用root, ln -s /usr/share/automake-1.6 /usr/share/automake
./configure 回答相应问题,注意其中版面上限、最大用户数、最大上站人数等数值系
统资源敏感性较高,请设置合适的值。
cd ythtlib
make install
cd ../libythtbbs
make install
cd ../src
make install
E. 后续工作
以 root 身份执行(其中128M数字以及 /home/bbs 目录请根据实际情况决定):
# mkdir /home/bbs/bbstmpfs
# mount tmpfs /home/bbs/bbstmpfs -t tmpfs -o size=128M
# for i in brc tmp dynamic userattach; do mkdir /home/bbs/bbstmpfs/$i; done
# chown bbs:bbs /home/bbs/bbstmpfs -R
# cd /home/bbs
# ln /home/bbs/bbstmpfs/tmp tmpfast -s
# ln /home/bbs/bbstmpfs/dynamic dynamic -s
至此 ytht 系统的 telnet 部分安装完毕
如果一切正常,你可以把后续工作那堆东西放入 /etc/rc.d/rc.local 中
此处如果系统提供 telnet 服务,请参考 google 将系统的 telnetd 停掉。
以root身份运行
/home/bbs/bin/bbsd
F. 运行 telnet localhost
G. 如果一切如愿,你应该可以看见漂亮的进站画面,请以new登录并注册SYSOP帐号(大小写
敏感),该帐号自动获取BBS上的所有权限。
H. 以new登录并注册guest帐号,guest帐号的密码仅用于注册时,用户使用guest帐号无需
密码,为访客帐号。
I. 如果天不从人愿,程序一声不响地就结束了,请到 ytht 的 BBSDev 讨论区求助。
在求助之时请尽量详述您的系统平台、所用的编译器,所有操作步骤以及出现错误的状
况等信息,这样子大家才能容易帮您找出可能发生问题的地方。我们乐于解答使用一塌糊涂
BBS 系统中出现的问题,但是请理解我们没有必须解答相关问题的义务。
--
FROM 162.105.69.228