- 主题:[更新] smthbbs 新版 fileheader 结构转换步骤
好处:
新版本的 fileheader 结构紧凑,有利于降低 I/O 开销,进一步提高系统效率。
成功案例:
水木和 happy 都已经转换完成。
步骤:
0. 重中之重,备份整个 bbs 数据,包括当前使用的源代码。
1. 更新 bbs 代码。
2. 参考自己的 site.h 中(老版本的) fileheader 修改 local_utl/strip_fh.c 中的
fileheader_v1_2 结构,一定要保证二者完全一致,修改 fileheader_v1_2
时,数组的长度建议使用数字,而不是使用宏。
3. 参考 fb2k-v2.h 中 fileheader 的定义修改自己的 site.h 中(新版本) fileheader
定义。
4. 编译代码,但不要马上安装。
5. 停掉所有的 bbs 服务,包括 telnet/ssh/www/转信/mail2bbs/cron 等。
6. 清掉 bbs 所有的共享内存。
7. 安装新的 smthbbs 代码。
8. 运行 ./strip_fh --all,进行 filedheader 结构转换,用 bbs 用户执行。
中间会有一些 Warning 输出,建议把输出保存下来备查。
如果这一步出错(例如 strip_fh 意外出错退出),请到网上求助或发信给
水木技术组寻求技术支持,或者暂时停止升级,用备份数据恢复 bbs 系统。
如果成功则进行下一步。
9. 再次清掉 bbs 共享内存。
10. 至此 fileheader 转换完成,按正常情况启动 bbs 服务。
--
FROM 61.149.138.*
你最开始用的什么版本,什么 site 文件?
【 在 datapipe ( ) 的大作中提到: 】
: 奇怪啊,这个fileheader_v1_2怎么改都不行,文章还是乱的没法看
: 都不知道以前的fileheader是什么样的了
--
FROM 221.216.158.*
那你的 fileheader 估计就是 1.1 版本的。
【 在 datapipe ( ) 的大作中提到: 】
: 最开始?fb2k -> smth1.0 -> smth1.1 -> smth1.2
: |这之后文章、信件就没好过
: 用了default.h里的HAVE_FILEHEADER_DEFINE
: ...................
--
FROM 221.216.158.*
在 smthbbs-1.1 里面应该有。
【 在 datapipe ( ) 的大作中提到: 】
: 1.1的fileheader是不是这样?这是以前的site/default.h里面的
: ...
: #define STRLEN 80
: ...................
--
FROM 221.216.158.*
把你的转换程序贡献出来?:)
【 在 wisi (誓心) 的大作中提到: 】
: 把宏代换写成数字。
: 在转换fileheader之前,要先检查一下自己用的老代码的struct.h里面
: struct boardheader和struct userec是否和最新的cvs代码一致,因为
: ...................
--
FROM 221.216.158.*