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

Contents of /lbbs/INSTALL.md

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.16 - (show annotations)
Fri Nov 21 02:28:23 2025 UTC (3 months, 3 weeks ago) by sysadm
Branch: MAIN
Changes since 1.15: +11 -9 lines
Content type: text/markdown
Update INSTALL

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 Choose different implementation based on System V or Posix
25 ./configure --prefix=$LBBS_HOME_DIR --with-sysv
26 ./configure --prefix=$LBBS_HOME_DIR --without-sysv
27 make
28
29 5) Create user and group
30 sudo useradd bbs
31
32 6) Install binary files and data files
33 sudo make install
34 chown -R bbs:bbs $LBBS_HOME_DIR
35
36 7) Modify following configuration files
37 Default configuration files is saved as *.default, you should rename them first.
38 $LBBS_HOME_DIR/conf/bbsd.conf
39 $LBBS_HOME_DIR/conf/badwords.conf
40 $LBBS_HOME_DIR/utils/conf/db_conn.conf.php
41
42 8) Copy CA cert file of MySQL server to $LBBS_HOME_DIR/conf/ca_cert.pem
43
44 9) Generate menu configuration file with section data by running the script
45 sudo -u bbs php $LBBS_HOME_DIR/utils/bin/gen_section_menu.php
46 sudo -u bbs php $LBBS_HOME_DIR/utils/bin/gen_ex_list.php
47
48 10) Create SSH2 RSA certificate
49 ssh-keygen -t rsa -C "Your Server Name" -f $LBBS_HOME_DIR/conf/ssh_host_rsa_key
50
51 11) Startup
52 sudo -u bbs $LBBS_HOME_DIR/bin/bbsd
53
54 12) (Optional) Set up systemd
55 Enable systemd related feature during config, by running:
56 ./configure --prefix=$LBBS_HOME_DIR --enable-systemd
57 Create your own /usr/lib/systemd/system/lbbs.service from the sample at conf/lbbs.service, and make any change if necessary.
58 Reload daemon config and start the service.
59
60 13) (Optional) Set up logrotate
61 Create your own /etc/logrotate.d/lbbs from the sample at conf/lbbs.logrotate, and make any change if necessary.
62 Restart logrotate service.
63
64 14) Cleanup on abnormal service termination
65 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:
66 sudo -u bbs ipcs
67 There should be no item owned by bbs. Otherwise, run the following command to cleanup:
68 sudo -u bbs ipcrm -a
69
70
71 For MSYS2 User
72 ==================
73 Installation of LBBS on MSYS2 is similar to the above steps for Linux, except that:
74
75 1) Use additional config switches to keep compatible with the MSYS2 environment.
76 ./configure --prefix=$LBBS_HOME_DIR --with-mariadb --without-epoll --without-sysv
77
78 2) Skip those steps not supported (e.g. systemd and logrotate).
79

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