/[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.16 by sysadm, Fri Nov 21 02:28:23 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       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,       Run the following command to set up the autoconf/automake environment,  
20     sh ./autogen.sh       autoreconf --install --force
    and fix any error if exists.  
21    
22  2) Compile source files    4) Compile source files  
23     ./configure --prefix=/usr/local/lbbs       export LBBS_HOME_DIR=/usr/local/lbbs  
24     make     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  3) Create user and group    5) Create user and group  
30     sudo useradd bbs     sudo useradd bbs
31    
32  4) Install binary files and data files    6) Install binary files and data files  
33     sudo make install     sudo make install  
34       chown -R bbs:bbs $LBBS_HOME_DIR
35    
36  5) Modify following configuration files    7) Modify following configuration files  
37     Default configuration files is saved as *.default, you should rename them first.       Default configuration files is saved as *.default, you should rename them first.  
38     /usr/local/lbbs/conf/bbsd.conf       $LBBS_HOME_DIR/conf/bbsd.conf  
39     /usr/local/lbbs/utils/conf/db_conn.inc.php       $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    
 6) Generate menu configuration file with section data by running the script    
    sudo -u bbs php /usr/local/lbbs/utils/bin/gen_section_menu.php    
    sudo -u bbs php /usr/local/lbbs/utils/bin/gen_ex_list.php    
70    
71  7) Create or copy SSH2 RSA certificate into /usr/local/lbbs/conf    For MSYS2 User
72     ssh-keygen -t rsa -C "Your Server Name" -f ssh_host_rsa_key  ==================
73    Installation of LBBS on MSYS2 is similar to the above steps for Linux, except that:
74    
75  8) Startup    1) Use additional config switches to keep compatible with the MSYS2 environment.  
76     sudo /usr/local/lbbs/bin/bbsd     ./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    
 9) Set up systemd    
    Create your own /usr/lib/systemd/system/lbbs.service from the sample at conf/lbbs.service.default, and make any change if necessary.    
    Reload daemon config and start the service.    


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

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