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

Contents of /lbbs/INSTALL.md

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.14 - (show annotations)
Thu Nov 20 11:44:38 2025 UTC (3 months, 3 weeks ago) by sysadm
Branch: MAIN
Changes since 1.13: +9 -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) Generate menu configuration file with section data by running the script
43 sudo -u bbs php $LBBS_HOME_DIR/utils/bin/gen_section_menu.php
44 sudo -u bbs php $LBBS_HOME_DIR/utils/bin/gen_ex_list.php
45
46 9) Create SSH2 RSA certificate
47 ssh-keygen -t rsa -C "Your Server Name" -f $LBBS_HOME_DIR/conf/ssh_host_rsa_key
48
49 10) Startup
50 sudo -u bbs $LBBS_HOME_DIR/bin/bbsd
51
52 11) (Optional) Set up systemd
53 Enable systemd related feature during config, by running:
54 ./configure --prefix=$LBBS_HOME_DIR --enable-systemd
55 Create your own /usr/lib/systemd/system/lbbs.service from the sample at conf/lbbs.service, and make any change if necessary.
56 Reload daemon config and start the service.
57
58 12) (Optional) Set up logrotate
59 Create your own /etc/logrotate.d/lbbs from the sample at conf/lbbs.logrotate, and make any change if necessary.
60 Restart logrotate service.
61
62 13) Cleanup on abnormal service termination
63 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:
64 sudo -u bbs ipcs
65 There should be no item owned by bbs. Otherwise, run the following command to cleanup:
66 sudo -u bbs ipcrm -a
67
68
69 For MSYS2 / MinGW User
70 ==================
71 Installation of LBBS on MSYS2 is similar to the above steps for Linux, except that:
72
73 1) Use additional config switches to keep compatible with the MSYS2 / MinGW environment.
74 ./configure --prefix=$LBBS_HOME_DIR --with-mariadb --without-epoll --without-sysv
75
76 2) Skip those steps not supported by Cygwin (e.g. systemd and logrotate).
77

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