Synchronet v3.18b-Win32 (install) has been released (Sept-2020).

Synchronet v3.19a, now under development, requires libarchive-dev to build successfully.

You can donate to the Synchronet project using PayPal.

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
config:nix [2011/10/25 22:40]
digitalman [sbbs.ini] fixed typo
config:nix [2020/09/15 16:41] (current)
digital man Don't [Unix] User/Group settings unless you have to
Line 1: Line 1:
 ====== UNIX ====== ====== UNIX ======
  
-===== sbbs.ini ​=====+Configuration of ''​[UNIX]''​ section of the Synchronet initialization file (e.g. ''​[[dir:​ctrl]]/​[[config:​sbbs.ini]]''​).
  
-Unix/Linux Sysops will particularly want to pay attention to the ''​[UNIX]'' ​section of your Synchronet initialization file (e.g. ''​[[dir:ctrl]]/​[[config:​sbbs.ini]]''​).+===== User/Group ===== 
 +If you are **not** [[howto:​linux_non-root|starting sbbs as ''​root''​]], then you should **not** set these values.
  
 ==== User ==== ==== User ====
Line 14: Line 15:
  
 If you do not want to run Synchronet (and all external programs/​doors) as If you do not want to run Synchronet (and all external programs/​doors) as
-root (the Unix //​administrator//​ user), you will have to set the ''​User''​ and ''​Group''​ key values. Example:+root (the Unix //​administrator//​ user), you will have to set the ''​User''​ and ''​Group''​ key values. 
 + 
 +Example:
  
   User=sbbsuser   User=sbbsuser
   Group=sbbsgroup   Group=sbbsgroup
 +  ​
 +NOTE: the ''​sbbsuser''​ and ''​sbbsgroup''​ names are just examples. You must pick valid user/group names for your system (e.g. exist in your system'​s ''/​etc/​passwd''​ file) and both the user and group name may be the same.
   ​   ​
 Also, the Synchronet file Also, the Synchronet file
Line 25: Line 30:
  
   # chown -R sbbsuser:​sbbsgroup /sbbs   # chown -R sbbsuser:​sbbsgroup /sbbs
 +
 +If you do this, then be sure to run any Synchronet utilities (e.g. [[util:​SCFG]]) as the same user that the BBS is going to run as:
   ​   ​
 +  # su -c /​sbbs/​exec/​scfg sbbs  ​
 +
 +===== Logging =====
 ==== LogFacility ====  ==== LogFacility ==== 
  
Line 37: Line 47:
   LogFacility=3   LogFacility=3
    
-Then, in ''/​etc/​syslog.conf''​ you will need to add the line:+Then, in ''/​etc/​syslog.conf'' ​(or ''/​etc/​rsyslog.d/​sbbslog.conf''​) ​you will need to add the line:
  
   local3.* ​                /​var/​log/​sbbs.log   local3.* ​                /​var/​log/​sbbs.log
Line 52: Line 62:
 Then send a HUP to syslogd like so: Then send a HUP to syslogd like so:
   # killall -HUP syslogd   # killall -HUP syslogd
 +  ​
 +Or it might be necessary to:
 +  # service syslogd restart
   ​   ​
 You could then monitor the Synchronet daemon log output with: You could then monitor the Synchronet daemon log output with:
Line 92: Line 105:
  
 This is the value passed as the ''​ident''​ argument to the system'​s ''​openlog''​ function. Run ''​man openlog''​ for more details on this setting. This is the value passed as the ''​ident''​ argument to the system'​s ''​openlog''​ function. Run ''​man openlog''​ for more details on this setting.
 +
 +===== Process Control ===== 
  
 ==== PidFile ==== ==== PidFile ====
Line 97: Line 112:
 Default: ''/​var/​run/​sbbs.pid''​ Default: ''/​var/​run/​sbbs.pid''​
  
-This key contains the path of the file which will contain the program identify ​(PID) of Synchronet and is used to by backgrou/daemon startup scripts to query the current state of ''​sbbs''​.+This key contains the path of the file which will contain the process identifier ​(PID) of Synchronet and is used by background/daemon startup scripts to query the current state of ''​sbbs''​.
  
   # service sbbs status   # service sbbs status
Line 103: Line 118:
   PID(s): 6270   PID(s): 6270
  
-If you change the value of this key, you may also need to change/​update ​your startup script (e.g. ''/​etc/​init.d/​sbbs''​).+If you change the value of this key, you may also need to modify ​your startup script (e.g. ''/​etc/​init.d/​sbbs''​).
  
 ==== umask ==== ==== umask ====
Line 111: Line 126:
 Sets ''​sbbs'''​s ​ file mode creation mask. Sets ''​sbbs'''​s ​ file mode creation mask.
  
-Note: If the value begins with a ''​0'',​ it will be interpretted as //octal// notation.+Note: If the value begins with a ''​0'',​ it will be interpreted in //octal// notation.
  
 Run ''​man umask''​ for more details on this setting. Run ''​man umask''​ for more details on this setting.
Line 119: Line 134:
 Default: ''​false''​ Default: ''​false''​
  
-When set to ''​true'',​ forces ''​sbbs''​ to run daemonized (in the background) without specifying the ''​-d''​ command-line option. +When set to ''​true'',​ forces ''​sbbs''​ to run daemonized (in the background) without specifying the ''​-d''​ command-line option. ​Setting ​this value to ''​true''​ is not recommended.
-===== Terminal Capabilities ===== +
- +
-As you may have noticed by now, most telnet clients designed for use with +
-ANSI BBSes do not display full-screen Unix programs correctly. Included with +
-Synchronet is a pair of terminal capability definition files that enable you +
-to run native full-screen Unix programs and have the output displayed correctly +
-in a standard ANSI-BBS terminal. ​ These files are ''​termcap''​ and ''​terminfo'',​ +
-located in your Synchronet install directory. ​ Your system will use one or the +
-other, and it won't hurt to install both.  You will need to be logged in as +
-root to install the files. +
- +
-==== Installing the terminfo file ==== +
- +
-1) Get the Synchronet ANSI-BBS terminfo file from +
-[[http://​cvs.synchro.net/​cgi-bin/​viewcvs.cgi/​*checkout*/​install/​terminfo|here]]. +
- +
-2) Enter the command: +
-  # tic terminfo +
- +
-==== Installing the termcap file ==== +
- +
-1) Get the Synchronet ANSI-BBS termcap file from +
-[[http://​cvs.synchro.net/​cgi-bin/​viewcvs.cgi/​*checkout*/​install/​termcap|here]]. +
- +
-2) Enter the command: +
-  # cat termcap >> /​etc/​termcap +
- +
-3) **FreeBSD Only** run the command: +
-  # cap_mkdb -f /​usr/​share/​misc/​termcap /​etc/​termcap +
- +
-Once the terminal capability files are installed, edit the ''​ExternalTermANSI''​ +
-value in the ''​[BBS]''​ section of your ''​[[sbbs.ini]]''​ file to read: +
-    ExternalTermANSI=ansi-bbs +
- +
-Note: The default value of the ''​ExternalTermANSI''​ ''​[[sbbs.ini]]''​ key is ''​pc3''​. If you get an error ''​Unknown terminal: pc3''​ from external programs, it means that this key value has not been set to a valid terminal type. +
- +
-Note: Once again, many Linux distros do not have a termcap. ​ This is fine. +
-You do NOT need to install the termcap-compat package. ​ If termcap +
-isn't installed, it means nothing uses it.  Only if there is a +
-termcap do you need to add the ''​ansi-bbs'' termcap definition. +
- +
-===== Running Synchronet Automatically During Boot-up ===== +
- +
-If you want Synchronet to start automatically whenever your system boots, +
-you will need to set that up using the system rc scripts. ​ A few example are: +
- +
-==== Linux ==== +
- +
-1) Get the Synchronet service run script (init file) from +
-[[http://​cvs.synchro.net/​cgi-bin/​viewcvs.cgi/​*checkout*/​install/​init.d/​sbbs|here]]. +
- +
-2) Copy the run script (''​sbbs''​) into your ''/​etc/​init.d''​ directory (if you don't have this directory, then your Linux distribution isn't supported by this file). +
- +
-3) Add the Synchronet system service: +
-  # chkconfig --add sbbs +
-  +
-4) Start the Synchronet system service: +
-  # /​etc/​init.d/​sbbs start +
- +
-==== FreeBSD ==== +
- +
-1) Get the Synchronet service run script (init file) from [[http://​cvs.synchro.net/​cgi-bin/​viewcvs.cgi/​*checkout*/​install/​rc.d/​sbbs|here]]. +
- +
-2) Copy the run script (sbbs) into your ''/​etc/​rc.d''​ directory (If using FreeBSD 4.x, install the rc_subr port and copy the run script to ''/​usr/​local/​etc/​rc.d/​sbbs.sh''​ instead) +
- +
-3) Set up the sbbs settings: +
-In one of ''/​etc/​rc.conf'',​ ''/​etc/​rc.conf.local'',​ or ''/​etc/​rc.conf.d/​sbbs'',​ add the +
-line: +
-   ​sbbs_enable=YES ​     # Required to run Synchronet +
- +
-4) In one of the files from step three, add appropriate lines from the following (Defaults are shown here): +
- +
-   ​sbbs_flags="" ​                       # Additional command-line flags +
-   ​sbbs_pidfile="/​var/​run/​sbbs.pid" ​    # Path of pid from your .ini +
-   ​sbbs_dir="/​sbbs/" ​                   # Root sbbs path +
-                                        # The rest of the sbbs_*dir derive +
-                                        # from this be default +
-   ​sbbs_ctrldir="​${sbbs_dir}/​ctrl/"​ +
-   ​sbbs_execdir="​${sbbs_dir}/​exec/"​ +
-   ​sbbs_program="​${sbbs_execdir}/​sbbs" ​ # Synchronet binary +
-   ​sbbs_procname="​${sbbs_program}" ​     # Process name as seen by ps(1) +
-   ​sbbs_shell="/​bin/​sh" ​                # SHELL variable +
-   ​sbbs_user="​root" ​                    # User to START sbbs as.  If this is +
-                                        # not root, you cannot bind low ports +
-   ​sbbs_group="​wheel" ​                  # Group to start sbbs as +
- +
-5) Start the Synchronet system service (FreeBSD 5.x+): +
-  # /​etc/​rc.d/​sbbs start +
-(FreeBSD 4.x and lower): +
-  # /​usr/​local/​etc/​rc.d/​sbbs.sh start +
- +
-===== A note on SysOp paging ===== +
- +
-For most systems, the BBS must either have write access to the sound card via +
-/dev/dsp, or run as root to page the SysOp. ​ FreeBSD supports an alternative +
-method which requires one of the following:​ +
- +
-==== On FreeBSD 4.x ==== +
- +
-A custom kernel with the following option in the config +
-pseudo-device speaker +
- +
-==== On FreeBSD 5.x and higher ==== +
- +
-One of: +
-  - A custom kernel with the following option in the config device speaker +
-  - The speaker module loaded by either: +
-    - Running ''​kldload speaker''​ +
-    - The line ''​speaker_load="​YES"''​ in ''/​boot/​loader.conf''​ file +
- +
-''/​dev/​speaker''​ should be read/​writeable by the user the BBS runs as.+
  
 ===== See Also ===== ===== See Also =====
   * [[:​config:​|Configuration]]   * [[:​config:​|Configuration]]
 +  * [[:​monitor:​syslog]]
 +
  
 +{{tag>​unix syslog sbbs.ini}}

In Other Languages