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

Diff of /lbbs/INSTALL.md

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

Revision 1.1 by sysadm, Tue Aug 26 03:05:26 2025 UTC Revision 1.21 by sysadm, Sun Nov 23 12:40:46 2025 UTC
# Line 1  Line 1 
1  Installation  Installation
2  ==================  ==================
3  To install LBBS, please perform the following steps:  To install LBBS on Linux (e.g. Debian 13, CentOS Stream 10), please perform the following steps:
4    
5  0) Prerequisite    0) Prerequisite  
6     Follow README.md under [leafok_bbs](https://github.com/leafok88/leafok_bbs) to initialize the database structure shared by both web version and telnet version.       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.     It is highly recommended to finish the configuration steps of web version first and make sure those features could work properly.
8    
9  1) Extract the source files from a tarball or export from GitHub    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,       Run the following command to set up the autoconf/automake environment,  
23     sh ./autogen.sh       autoreconf --install --force
    and fix any error if exists.  
24    
25  2) Compile source files    4) Compile source files  
26     ./configure --prefix=/usr/local/lbbs       export LBBS_HOME_DIR=/usr/local/lbbs  
27     make     (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  3) Create user and group    5) Create user and group  
34     sudo useradd bbs     sudo useradd bbs
35    
36  4) Install binary files and data files    6) Install binary files and data files  
37     sudo make install     sudo make install  
38       chown -R bbs:bbs $LBBS_HOME_DIR
39    
40  5) Modify following configuration files    7) Modify following configuration files  
41     Default configuration files is saved as *.default, you should rename them first.       Default configuration files is saved as *.default, you should rename them first.  
42     /usr/local/lbbs/conf/bbsd.conf       $LBBS_HOME_DIR/conf/bbsd.conf  
43     /usr/local/lbbs/utils/conf/db_conn.inc.php       $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  6) Generate menu configuration file with section data by running the script    9) Generate menu configuration file with section data by running the script  
49     sudo -u bbs php /usr/local/lbbs/utils/bin/gen_section_menu.php       sudo -u bbs php $LBBS_HOME_DIR/utils/bin/gen_section_menu.php  
50     sudo -u bbs php /usr/local/lbbs/utils/bin/gen_ex_list.php       sudo -u bbs php $LBBS_HOME_DIR/utils/bin/gen_ex_list.php  
51    
52  7) Create or copy SSH2 RSA certificate into /usr/local/lbbs/conf    10) Create SSH2 RSA certificate  
53     ssh-keygen -t rsa -C "Your Server Name" -f ssh_host_rsa_key     ssh-keygen -t rsa -C "Your Server Name" -f $LBBS_HOME_DIR/conf/ssh_host_rsa_key
54    
55  8) Startup    11) Startup  
56     sudo /usr/local/lbbs/bin/bbsd     sudo -u bbs $LBBS_HOME_DIR/bin/bbsd
57    
58  9) Set up systemd    12) (Optional) Set up systemd  
59     Create your own /usr/lib/systemd/system/lbbs.service from the sample at conf/lbbs.service.default, and make any change if necessary.       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.       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    


Legend:
Removed lines/characters  
Changed lines/characters
  Added lines/characters

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