/[LeafOK_CVS]/lbbs/INSTALL.md
ViewVC logotype

Contents of /lbbs/INSTALL.md

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.12 - (show annotations)
Tue Nov 18 16:15:54 2025 UTC (3 months, 3 weeks ago) by sysadm
Branch: MAIN
Changes since 1.11: +14 -1 lines
Content type: text/markdown
Add Cygwin related Installation Guide

1 Installation
2 ==================
3 To install LBBS on Linux (e.g. Debian 13, CentOS Stream 10), please perform the following steps:
4
5 0) Prerequisite
6 Follow README.md under [leafok_bbs](https://github.com/leafok/leafok_bbs) to initialize the database structure shared by both web version and telnet version.
7 It is highly recommended to finish the configuration steps of web version first and make sure those features could work properly.
8
9 1) Common requirements
10 gcc >= 14.2
11 autoconf >= 2.68
12 automake >= 1.16
13 libssh >= 0.11
14 pcre2 >= 10.38
15 php >= 8.2
16 mysql >= 8.4
17
18 3) Extract the source files from a tarball or export from GitHub
19 Run the following command to set up the autoconf/automake environment,
20 autoreconf --install --force
21
22 4) Compile source files
23 export LBBS_HOME_DIR=/usr/local/lbbs
24 ./configure --prefix=$LBBS_HOME_DIR
25 make
26
27 5) Create user and group
28 sudo useradd bbs
29
30 6) Install binary files and data files
31 sudo make install
32 chown -R bbs:bbs $LBBS_HOME_DIR
33
34 7) Modify following configuration files
35 Default configuration files is saved as *.default, you should rename them first.
36 $LBBS_HOME_DIR/conf/bbsd.conf
37 $LBBS_HOME_DIR/conf/badwords.conf
38 $LBBS_HOME_DIR/utils/conf/db_conn.conf.php
39
40 8) Generate menu configuration file with section data by running the script
41 sudo -u bbs php $LBBS_HOME_DIR/utils/bin/gen_section_menu.php
42 sudo -u bbs php $LBBS_HOME_DIR/utils/bin/gen_ex_list.php
43
44 9) Create SSH2 RSA certificate
45 ssh-keygen -t rsa -C "Your Server Name" -f $LBBS_HOME_DIR/conf/ssh_host_rsa_key
46
47 10) Startup
48 sudo -u bbs $LBBS_HOME_DIR/bin/bbsd
49
50 11) (Optional) Set up systemd
51 Enable systemd related feature during config, by running:
52 ./configure --prefix=$LBBS_HOME_DIR --enable-systemd
53 Create your own /usr/lib/systemd/system/lbbs.service from the sample at conf/lbbs.service, and make any change if necessary.
54 Reload daemon config and start the service.
55
56 12) (Optional) Set up logrotate
57 Create your own /etc/logrotate.d/lbbs from the sample at conf/lbbs.logrotate, and make any change if necessary.
58 Restart logrotate service.
59
60 13) Cleanup on abnormal service termination
61 In case of any unexpected failure or improper operation which results in abnormal termination of lbbs process, manual cleanup of shared memory / semaphore might be required before re-launch the process. Run the following command to check first:
62 sudo -u bbs ipcs
63 There should be no item owned by bbs. Otherwise, run the following command to cleanup:
64 sudo -u bbs ipcrm -a
65
66
67 For Cygwin User
68 ==================
69 Installation of LBBS on Cygwin is similar to the above steps for Linux, except that:
70
71 a. Use additional config switches to keep compatible with the Cygwin environment.
72 ./configure --prefix=$LBBS_HOME_DIR --with-mariadb --without-epoll
73
74 b. Enable Cygserver with optimized parameters (as large as possible) of XSI semaphore and shared memory in /etc/cygserver.conf
75
76 c. Skip those steps not supported by Cygwin (e.g. systemd and logrotate).

webmaster@leafok.com
ViewVC Help
Powered by ViewVC 1.3.0-beta1