<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.0 Transitional//EN'>
<HTML>
<!-- $Id$ -->
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=ISO 8859-1">
<META http-equiv="Content-Style-Type" content="text/css">
<META name="author" lang="en" content="Michiel Broek">
<META name="copyright" lang="en" content="Copyright Michiel Broek">
<META name="description" lang="en" content="MBSE BBS Manual">
<META name="keywords" lang="en" content="MBSE BBS, MBSE, BBS, manual, fido, fidonet, gateway, tosser, mail, tic, mailer">
<TITLE>MBSE BBS basic installation.</TITLE>
<LINK rel=stylesheet HREF="manual.css">
</HEAD>
<BODY>
<BLOCKQUOTE>
<div align="right"><h5>Last update 12-Jan-2003</h5></div>

<div align="center"><h1>MBSE BBS Basic Installation</h1></div>

<h3>Introduction.</h3>
<p>
Before you compile and install MBSE BBS you must first setup the basic
environment. If you don't do this, things will fail. 
<P>&nbsp;<p>

<h3>Step 1: planning the filesystems.</h3>
<p>
MBSE BBS is default installed in <b>/opt/mbse</b>. The default filesystem
layout looks like this:<br>
<pre>
/opt/mbse                      0775  Default MBSE_ROOT
/opt/mbse/bin                  0755  Binaries
/opt/mbse/doc                  0755  Generated sitedocs
/opt/mbse/dutch/macro          0755  Dutch macro files
/opt/mbse/dutch/menus          0755  Dutch menu files
/opt/mbse/dutch/txtfiles       0755  Dutch ANSI files
/opt/mbse/english/macro        0755  Default english macro files
/opt/mbse/english/menus        0755  Default english menu files
/opt/mbse/english/txtfiles     0755  Default english ANSI files
/opt/mbse/etc                  0775  System configuration files
/opt/mbse/fdb                  0775  Files database
/opt/mbse/ftp/pub              0775  Default FTP root for download areas.
/opt/mbse/galego/macro         0755  Galego macro files
/opt/mbse/galego/menus         0755  Galego menu files
/opt/mbse/galego/txtfiles      0755  Galego ANSI files
/opt/mbse/home                 0770  Users homedirectories
/opt/mbse/home/bbs             0770  Newuser account
/opt/mbse/html                 0755  HTML documentation
/opt/mbse/italian/macro        0755  Italian macro files
/opt/mbse/italian/menus        0755  Italian menu files
/opt/mbse/italian/txtfiles     0755  Italian ANSI files
/opt/mbse/log                  0775  MBSE BBS logfiles
/opt/mbse/magic                0755  Magic filerequest names
/opt/mbse/sema                 0777  Semafore files
/opt/mbse/spanish/macro        0755  Spanish macro files
/opt/mbse/spanish/menus        0755  Spanish menu files
/opt/mbse/spanish/txtfiles     0755  Spanish ANSI files
/opt/mbse/tmp                  0775  Temp directory
/opt/mbse/tmp/arc              0775  Temp archiver directory
/opt/mbse/var                  0770  Var root
/opt/mbse/var/arealists        0750  Areamgr arealist files
/opt/mbse/var/badtic           0750  Bad TIC files
/opt/mbse/var/boxes            0750  Base for nodes fileboxes
/opt/mbse/var/bso              0750  Binkley Style Outbound directory
/opt/mbse/var/bso/outbound     0750  Default outbound for main aka
/opt/mbse/var/inbound          0750  Protected inbound directory
/opt/mbse/var/mail             0770  JAM messagebase root
/opt/mbse/var/msgs             0750  *.msgs netmail directory (not yet in use).
/opt/mbse/var/nodelist         0750  Nodelists
/opt/mbse/var/queue            0750  Queue for before outbound
/opt/mbse/var/ticqueue         0750  Queue for TIC files
/opt/mbse/var/unknown          0750  Unprotected inbound directory
</pre>
<p>
Don't use UMSDOS or SAMBA filesystems for the bbs, stick by the standard
GNU/Linux
filesystems (ext2, ext3 or reiserfs) or ufs if you use FreeBSD.
If you intent to make your bbs also accessible
by FTP and WWW you must create the directory structure under the ftp user
behind the pub directory. Read <a href="misc/ftpserver.html">the
ftp server</a> doc for details. If you don't follow these guidlines, you
will run into trouble later and have to spend a lot of time in correcting
this error.
<P>&nbsp;<p>

<h3>Step 2: Running the installation script.</h3>
<p>
First, if you use FreeBSD, install the psmisc package. This will make sure
that MBSE BBS is stopped properly if you shutdown your computer.<br>
If you are upgrading, proceed with step 4. If not, follow the next steps
very carefully!<br>
The installation script must be run by root. It checks if there is a
previous or failed installation on your system. If that's so the script will
not run. In other words, you can only run this script once. The script makes
backup copies of the system files it changes, these files will get the
extension <strong>.mbse</strong> To run the installation script you need
the archive <strong>mbbsebbs-0.nn.nn.tar.gz</strong>.
Unpack this archive on your system, in /tmp will do fine:
<pre>
cd /tmp
tar xfvz /path/to/the/mbsebbs-0.nn.nn.tar.gz
</pre>
To start the script type:
<pre>
cd mbsebbs-0.nn.nn
bash ./SETUP.sh
</pre>
Yes, use <b>bash</b> as shell here. On some systems root doesn't use  bash
as login shell, calling the script with bash forces the use of bash.
The script does the following:
<ol>
 <li>Create the group <strong>bbs</strong>
 <li>Create the user <strong>mbse</strong>
 <li>Create a <strong>.profile</strong> for user <strong>mbse</strong>
 <li>Create and set owner of directory tree under /opt/mbse
</ol>
Then the script will ask you to give a password for user <strong>mbse</strong>
This password is for system maintenance and for you to make changes to the
bbs. You will need that frequently but you should not make that password
easy to guess of course. The script will then continue again:
<ol start="5">
 <li>The user <strong>bbs</strong> is added.
 <li>The password will be removed from user <strong>bbs</strong> This action
will make changes in /etc/shadow (if you have that) otherwise in /etc/passwd.
On FreeBSD it uses other tools to modify the master database.
On NetBSD you have to do that manually, there are no tools to do that.
 <li>If they don't exist in the file /etc/services the services fido, tfido
and binkp will be added. 
 <li>If they don't exist in the file /etc/inetd.conf the internet protocols
for the mailer will be added. The <strong>inetd</strong> is restarted to
activate the changes. If your distribution uses xinetd instead of inetd, an
include file for xinetd is added instead.
</ol>
<p>&nbsp;<p>

<h3>Step 3: Check the basic installation</h3>
<p>
The last screen of the script is about sanity checks. Perform those checks!
If something is wrong, now is the time to fix it. Don't panic and remember
the backups of the system files that are changed are in /etc with the 
extension <strong>.mbse</strong> i.e: those were the original files.
The installation logfile is copied to /opt/mbse.
If everythings is allright, then remove the directory /tmp/mbsebbs-0.nn.nn:
<pre>
cd /tmp
rm -Rf mbsebbs-0.nn.nn
</pre>
<p>&nbsp;<p>

<h3>Step 4: Install the basic packages.</h3>
<p>
Login as user <b>mbse</b>. Yes, very important, <b>login as user mbse</b>.
While in mbse's home directory (/opt/mbse) unpack the distribution archives:
<pre>
tar xfvz /path/to/mbsebbs-0.nn.nn.tar.gz
</pre>
You now have the subdirectory with sources in the right place. 
Next build the binaries and install them using the folowing commands:
<pre>
cd ~/mbsebbs-0.nn.nn
./configure
make
su        <b>important, do not use "su -"</b>
password: <em>enter root password here</em>
make install
exit
</pre>
The last part of the installation procedure shows you the location of the bbs
startup script that is added to your system. Remember this one for a moment.
Because this is your first
time installation, example menus and example textfiles are installed. 
If they already exist on your systems (when you do an upgrade) they
will not be installed again.
<p>
Now start the bbs for the first time (still as root) by executing the startup
script you just saw on the screen followed by a space and the word <b>start</b>.
For example:
<pre>
/etc/rc.d/init.d/mbsed start
</pre>
This will start the <b>mbtask</b> daemon.
After that the bbs will be opened for use.
Check the file <b>/opt/mbse/log/mbtask.log</b> for startup problems.
The first time <b>mbtask</b> is started on your system it will create a 
lot of new configuration files with default settings.
<p>&nbsp;<p>

<h3>Step 5: (RedHat) startup problems.</h3>
<p>
From RedHat 6.1 (not the older versions) the behaviour of the 
<strong>su</strong> is changed. This may be true for other distributions since
the end of 1999 and for Mandrake as well. The file <code>/etc/rc.d/init.d/mbsed</code> that is 
created by the setup script is different then before. The new command
is <strong>su -</strong> instead of simply <strong>su</strong>. It might be
that other new distributions also need the extra minus sign. If that's the
case, please let me know and tell me how I can test what version it is. 
<p>&nbsp;<p>

<h3>Step 6: Ready.</h3>
<p>
Now you have shell scripts in ~/etc, most of them are called by cron, some
are called during system startup and shutdown. You also have some default
configuration files, these are ttyinfo, modems, fidonet networks. In the
default (english) directory you now have default menu datafiles and ansi
screens. These are copies of my test system so you have to edit them to
build your own bbs.<br>
Editing ansi screens can be done on a GNU/Linux system with
<strong>duhdraw</strong>, 
this is available from 2:280/2802 as <strong>duhdraw.tgz</strong> (68 Kbytes). 
The binaries are included in this archive, if you compile it yourself 
it may give trouble so if the binaries work, use these.<br>
Another editor is available from 
<A HREF="http://www.drastic.net/bmdraw/">http://www.drastic.net/bmdraw/</A>,
you can find the tar.gz file in <A
HREF="http://www.drastic.net/bmdraw/files/bmd022.tgz">
http://www.drastic.net/bmdraw/files/bmd022.tgz</A>, it's about 36 Kbytes. 
This is also a thedraw clone for Linux. Note, at my system I needed to run it as
root.<br>
You may also want to edit ~/etc/header.txt and ~/etc/footer.txt, these
files are the top and bottom of the newfiles/allfiles listings.
<P>
Now the basic environment is finished, the next thing to do is
<a href="setup/index.htm">configure the bbs</a>.
<P>&nbsp;<P>

<a href="index.htm"><img SRC="images/b_arrow.png" ALT="Back to Index" BORDER=0>Back to Index</a>

</blockquote>
</body>
</html>