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

Contents of /lbbs/INSTALL.md

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.21 - (show annotations)
Sun Nov 23 12:40:46 2025 UTC (3 months, 3 weeks ago) by sysadm
Branch: MAIN
Changes since 1.20: +3 -0 lines
Content type: text/markdown
Update INSTALL.md

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 (For Linux)
11 gcc >= 14.2
12 autoconf >= 2.68
13 automake >= 1.16
14 libssh >= 0.11
15 pcre2 >= 10.38
16 php >= 8.2
17 mysql >= 8.4
18 (For MSYS2 with MinGW-w64 toolchain)
19 pacman -S --needed base-devel msys2-runtime-devel mingw-w64-ucrt-x86_64-toolchain mingw-w64-x86_64-libssh mingw-w64-x86_64-pcre2 mingw-w64-x86_64-libiconv mingw-w64-x86_64-libmariadbclient
20
21 3) Extract the source files from a tarball or export from GitHub
22 Run the following command to set up the autoconf/automake environment,
23 autoreconf --install --force
24
25 4) Compile source files
26 export LBBS_HOME_DIR=/usr/local/lbbs
27 (For Linux)
28 ./configure --prefix=$LBBS_HOME_DIR
29 (For MSYS2 with MinGW-w64 toolchain)
30 ./configure --prefix=$LBBS_HOME_DIR --disable-shared PKG_CONFIG_PATH=/mingw64/lib/pkgconfig/
31 make
32
33 5) Create user and group
34 sudo useradd bbs
35
36 6) Install binary files and data files
37 sudo make install
38 chown -R bbs:bbs $LBBS_HOME_DIR
39
40 7) Modify following configuration files
41 Default configuration files is saved as *.default, you should rename them first.
42 $LBBS_HOME_DIR/conf/bbsd.conf
43 $LBBS_HOME_DIR/conf/badwords.conf
44 $LBBS_HOME_DIR/utils/conf/db_conn.conf.php
45
46 8) Copy CA cert file of MySQL server to $LBBS_HOME_DIR/conf/ca_cert.pem
47
48 9) Generate menu configuration file with section data by running the script
49 sudo -u bbs php $LBBS_HOME_DIR/utils/bin/gen_section_menu.php
50 sudo -u bbs php $LBBS_HOME_DIR/utils/bin/gen_ex_list.php
51
52 10) Create SSH2 RSA certificate
53 ssh-keygen -t rsa -C "Your Server Name" -f $LBBS_HOME_DIR/conf/ssh_host_rsa_key
54
55 11) Startup
56 sudo -u bbs $LBBS_HOME_DIR/bin/bbsd
57
58 12) (Optional) Set up systemd
59 Create your own /usr/lib/systemd/system/lbbs.service from the sample at conf/lbbs.service, and make any change if necessary.
60 Reload daemon config and start the service.
61
62 13) (Optional) Set up logrotate
63 Create your own /etc/logrotate.d/lbbs from the sample at conf/lbbs.logrotate, and make any change if necessary.
64 Restart logrotate service.
65
66 14) Cleanup on abnormal service termination
67 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:
68 sudo -u bbs ipcs
69 There should be no item owned by bbs. Otherwise, run the following command to cleanup:
70 sudo -u bbs ipcrm -a
71

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