• Recompile SBBS

    From Clifra Jones@1:103/705 to All on Wed Jul 25 15:07:57 2018
    Well, I missed a step in the installation process and did not add the USE_DOSEMU=1 parameter on the make command under Linux. Is it passible to recompile? Will any of the changes I have already made get overwritten?

    I have had no luck getting DOSEMU to work on it's own on this system as it is a Virtual Machine without a GUI.
    Clifra Jones
    Sysop
    Days Of Old BBS:
    Address: daysofoldbbs.wilhartsolutions.com
    Telnet, SSH (Port 2222), Web

    ---
    * Synchronet * Days of Old BBS - telnet://daysofoldbbs.wilhartsolutions.com
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Rmh@1:103/705 to Clifra Jones on Thu Jul 26 13:58:06 2018
    Re: Recompile SBBS
    By: Clifra Jones to All on Wed Jul 25 2018 03:07 pm

    Well, I missed a step in the installation process and did not add the USE_DOSEMU=1 parameter on the make command under Linux. Is it passible to recompile? Will any of the changes I have already made get overwritten?

    You should be ok nothing should be over-written.

    do:
    export CVSROOT=:pserver:anonymous@cvs.synchro.net:/cvsroot/sbbs
    cvs update -d src 3rdp
    cd /sbbs/src/sbbs3/scfg; make RELEASE=1 USE_DOSEMU=1 symlinks
    cd /sbbs/src/sbbs3/; make RELEASE=1 USE_DOSEMU=1 symlinks

    I guess the above should work. Anyhow mdo a security copy of you actualy stuff (just in case..)

    I have re-compole lot of times in the last few weeks, and I haven't found any issues so far.

    thanks
    RainManHood<---

    ---
    * Synchronet * UNICYBER BBS -- bbs.unicyber.co.uk:2323::ssh bbs.unicyber.co.uk 2424
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Nelgin@1:103/705 to Rmh on Thu Jul 26 10:23:36 2018
    Rmh wrote:
    Re: Recompile SBBS
    By: Clifra Jones to All on Wed Jul 25 2018 03:07 pm

    Well, I missed a step in the installation process and did not add the
    USE_DOSEMU=1 parameter on the make command under Linux. Is it passible to
    recompile? Will any of the changes I have already made get overwritten?

    You should be ok nothing should be over-written.

    do:
    export CVSROOT=:pserver:anonymous@cvs.synchro.net:/cvsroot/sbbs
    cvs update -d src 3rdp

    If you do that then any source code changes will be overwrtitten

    cd /sbbs/src/sbbs3/scfg; make RELEASE=1 USE_DOSEMU=1 symlinks
    cd /sbbs/src/sbbs3/; make RELEASE=1 USE_DOSEMU=1 symlinks

    In the sbbs3 directory create localdefs.mk if it doesn't exist and
    put USE_DOSEMU=1 in there and you won't have to worry about it again. This
    is documented on the wiki poage.

    You don't need a GUI to get DOSEMU working. Which OS are you using? I
    had problems with CentOS, it just works on Ubuntu with no problems to
    the point where I have created a drop in tar file so you just uncompress
    it and make a small change to sbbs.ini and you're pretty much done. It
    even comes with a sample game and how to configure for sbbs. Let me
    know if you want the link and how to install it.

    ---
    * Synchronet * End Of The Line BBS - endofthelinebbs.com
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Digital Man@1:103/705 to Clifra Jones on Thu Jul 26 14:53:47 2018
    Re: Recompile SBBS
    By: Clifra Jones to All on Wed Jul 25 2018 03:07 pm

    Well, I missed a step in the installation process and did not add the USE_DOSEMU=1 parameter on the make command under Linux. Is it passible to recompile?

    Yes, just do "make clean; make UDS_DOSEMU=1" in your src/sbbs3 directory. Add "RELEASE=1" (to both make commands) if you're using a release build.

    Will any of the changes I have already made get overwritten?

    No.

    digital man

    Synchronet/BBS Terminology Definition #47:
    SMB = Synchronet Message Base (e.g. smblib)
    Norco, CA WX: 91.0oF, 49.0% humidity, 10 mph NNE wind, 0.00 inches rain/24hrs --- SBBSecho 3.05-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Clifra Jones@1:103/705 to Nelgin on Mon Jul 30 11:05:10 2018
    Re: Re: Recompile SBBS
    By: Nelgin to Rmh on Thu Jul 26 2018 10:23 am

    put USE_DOSEMU=1 in there and you won't have to worry about it again. This is documented on the wiki poage.

    You don't need a GUI to get DOSEMU working. Which OS are you using? I
    had problems with CentOS, it just works on Ubuntu with no problems to
    the point where I have created a drop in tar file so you just uncompress
    it and make a small change to sbbs.ini and you're pretty much done. It
    even comes with a sample game and how to configure for sbbs. Let me
    know if you want the link and how to install it.

    I am using CENTOS 7. I got DOSEMU to work. There is a CentOS 7 rpm I found and after messing with the config (shutting off sound and setting video to 'none') I got it to work.

    Clifra Jones
    Sysop
    Days Of Old BBS:
    Address: daysofoldbbs.wilhartsolutions.com
    Telnet, SSH (Port 2222), Web

    ---
    * Synchronet * Days of Old BBS - telnet://daysofoldbbs.wilhartsolutions.com
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Clifra Jones@1:103/705 to Digital Man on Mon Jul 30 11:58:44 2018
    Re: Recompile SBBS
    By: Digital Man to Clifra Jones on Thu Jul 26 2018 02:53 pm

    Well, I missed a step in the installation process and did not add the USE_DOSEMU=1 parameter on the make command under Linux. Is it passible to recompile?

    Yes, just do "make clean; make UDS_DOSEMU=1" in your src/sbbs3 directory. Add "RELEASE=1" (to both make commands) if you're using a release build.

    Will any of the changes I have already made get overwritten?

    No.

    digital man

    Thanks D Man, I got this done.

    Procedure:
    cd /sbbs/src/sbbs3
    make clean
    cd /sbbs
    make install SYMLINK=1 USE_DOSEMU=1

    # allow sbbs executable to open restricted port. Has to be re-done after re-compile

    sudo setcap CAP_NET_BIND_SERVICE=+eip /sbbs/src/sbbs3/gcc.linux.x64.exe.release/sbbs

    I have not tested any DOS doors yet but will post progress here.

    I will also post a pocedure on how to get all this working on CENTOS 7. CENTOS can be a bit of a pain t get things working on as it tends to be a bit behind Fedora but it is a very stable OS.


    Clifra Jones
    Sysop
    Days Of Old BBS:
    Address: daysofoldbbs.wilhartsolutions.com
    Telnet, SSH (Port 2222), Web

    ---
    * Synchronet * Days of Old BBS - telnet://daysofoldbbs.wilhartsolutions.com
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Nelgin@1:103/705 to Clifra Jones on Mon Jul 30 14:05:26 2018
    Clifra wrote:
    sudo setcap CAP_NET_BIND_SERVICE=+eip /sbbs/src/sbbs3/gcc.linux.x64.exe.release/sbbs

    You don't have to do that every time if you put it in a systemd startup
    file. There's a wiki page on how to do it.

    ---
    * Synchronet * End Of The Line BBS - endofthelinebbs.com
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Rmh@1:103/705 to Nelgin on Tue Jul 31 10:24:00 2018
    Nelgin wrote to Clifra Jones <=-

    Clifra wrote:
    sudo setcap CAP_NET_BIND_SERVICE=+eip /sbbs/src/sbbs3/gcc.linux.x64.exe.release/sbbs

    You don't have to do that every time if you put it in a systemd startup file. There's a wiki page on how to do it.

    Example for Centos


    [Unit]
    Description=Synchronet BBS
    Documentation=man:sbbs
    After=network.target

    [Service]
    ExecStartPre=/bin/rm -f /var/run/sbbs/*
    EnvironmentFile=-/etc/default/sbbs
    #Environment=SBBSROOT=/sbbs SBBSCTRL=/sbbs/ctrl
    #ExecStart=/sbbs/exec/sbbs nd
    #ExecStart=/sbbs/exec/sbbs td
    ExecStartPre=/sbin/setcap 'cap_net_bind_service=+ep' /sbbs/src/sbbs3/gcc.linux.x64.exe.release/sbbs
    ExecStart=/sbbs/exec/sbbs nd
    PermissionsStartOnly=true
    ExecReload=/bin/kill -HUP $MAINPID
    Restart=on-failure
    RestartSec=30
    #User=bbs
    #Group=bbs
    StandardOutput=syslog
    StandardError=syslog
    SyslogIdentifier=sbbs
    User=root
    Group=root

    [Install]
    WantedBy=multi-user.target



    ... I love animals! But they all seem to taste like chicken.
    --- MultiMail/Mac v0.51
    * Synchronet * UNICYBER BBS -- bbs.unicyber.co.uk:2323::ssh bbs.unicyber.co.uk 2424
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Clifra Jones@1:103/705 to Nelgin on Tue Jul 31 14:27:06 2018
    Re: Re: Recompile SBBS
    By: Nelgin to Clifra Jones on Mon Jul 30 2018 02:05 pm

    Clifra wrote:
    sudo setcap CAP_NET_BIND_SERVICE=+eip /sbbs/src/sbbs3/gcc.linux.x64.exe.release/sbbs

    You don't have to do that every time if you put it in a systemd startup file. There's a wiki page on how to do it.

    I have a systemd unit file and it failed to open the ports after recompile. You only have to run the setcap command once, after that it works on every reboot.


    Clifra Jones
    Sysop
    Days Of Old BBS:
    Address: daysofoldbbs.wilhartsolutions.com
    Telnet, SSH (Port 2222), Web

    ---
    * Synchronet * Days of Old BBS - telnet://daysofoldbbs.wilhartsolutions.com
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Clifra Jones@1:103/705 to Rmh on Tue Jul 31 14:36:23 2018
    Re: Re: Recompile SBBS
    By: Rmh to Nelgin on Tue Jul 31 2018 10:24 am

    Nelgin wrote to Clifra Jones <=-

    Clifra wrote:
    sudo setcap CAP_NET_BIND_SERVICE=+eip /sbbs/src/sbbs3/gcc.linux.x64.exe.release/sbbs

    You don't have to do that every time if you put it in a systemd startup file. There's a wiki page on how to do it.

    Example for Centos


    [Unit]
    Description=Synchronet BBS
    Documentation=man:sbbs
    After=network.target

    [Service]
    ExecStartPre=/bin/rm -f /var/run/sbbs/*
    EnvironmentFile=-/etc/default/sbbs
    #Environment=SBBSROOT=/sbbs SBBSCTRL=/sbbs/ctrl
    #ExecStart=/sbbs/exec/sbbs nd
    #ExecStart=/sbbs/exec/sbbs td
    ExecStartPre=/sbin/setcap 'cap_net_bind_service=+ep' /sbbs/src/sbbs3/gcc.linux.x64.exe.release/sbbs
    ExecStart=/sbbs/exec/sbbs nd
    PermissionsStartOnly=true
    ExecReload=/bin/kill -HUP $MAINPID
    Restart=on-failure
    RestartSec=30
    #User=bbs
    #Group=bbs
    StandardOutput=syslog
    StandardError=syslog
    SyslogIdentifier=sbbs
    User=root
    Group=root

    [Install]
    WantedBy=multi-user.target

    I dont have the setcap in my using file, nor do I run the BBS as root.
    ****
    [Unit]
    Description=Synchronet BBS
    Documentation=man.sbbs
    After=network.target

    [Service]
    Restart=on-failure
    EnvironmentFile=/etc/default/sbbs
    ExecStart=/sbbs/exec/sbbs nd
    ExecReload=/bin/kill -HUP $MAINPID
    User=sysop
    Group=sysop

    [Install]
    WantedBy=multi-user-target
    ****

    Sysop is my administrative username, it is not the sysop username for the BBS.



    Clifra Jones
    Sysop
    Days Of Old BBS:
    Address: daysofoldbbs.wilhartsolutions.com
    Telnet, SSH (Port 2222), Web

    ---
    * Synchronet * Days of Old BBS - telnet://daysofoldbbs.wilhartsolutions.com
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Nelgin@1:103/705 to Clifra Jones on Tue Jul 31 19:39:15 2018
    Clifra wrote:
    Re: Re: Recompile SBBS
    By: Nelgin to Clifra Jones on Mon Jul 30 2018 02:05 pm

    Clifra wrote:
    sudo setcap CAP_NET_BIND_SERVICE=+eip
    /sbbs/src/sbbs3/gcc.linux.x64.exe.release/sbbs

    You don't have to do that every time if you put it in a systemd startup
    file. There's a wiki page on how to do it.

    I have a systemd unit file and it failed to open the ports after recompile.
    You
    only have to run the setcap command once, after that it works on every
    reboot.

    But not after every compile.

    Just add this to your sbbs.service file

    ExecStartPre=/sbin/setcap 'cap_net_bind_service=+ep' /sbbs/src/sbbs3/gcc.linux.x64.exe.release/sbbs

    Then each time you run it'll ensure the executable is set. That way you don't have
    to remember to do it as part of the compilation.

    ---
    * Synchronet * End Of The Line BBS - endofthelinebbs.com
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Rmh@1:103/705 to Clifra Jones on Wed Aug 1 10:00:00 2018
    Clifra Jones wrote to Rmh <=-

    Re: Re: Recompile SBBS
    By: Rmh to Nelgin on Tue Jul 31 2018 10:24 am

    Nelgin wrote to Clifra Jones <=-

    Clifra wrote:
    sudo setcap CAP_NET_BIND_SERVICE=+eip /sbbs/src/sbbs3/gcc.linux.x64.exe.release/sbbs

    You don't have to do that every time if you put it in a systemd startup file. There's a wiki page on how to do it.

    Example for Centos


    I dont have the setcap in my using file, nor do I run the BBS as root.

    I got setcap as I got a number of services running below port 1024, so that's essential.
    The user in use is "bbs" and not root. All the processes are handle by that "bbs" user:

    netstat -anpt|grep sbbs
    tcp 0 0 <public_ip>:21 0.0.0.0:* LISTEN 30630/sbbs
    tcp 0 0 <public_ip>:2424 0.0.0.0:* LISTEN 30630/sbbs
    tcp 0 0 <public_ip>:443 0.0.0.0:* LISTEN 30630/sbbs
    tcp 0 0 127.0.0.1:10088 0.0.0.0:* LISTEN 30630/sbbs
    tcp 0 0 <public_ip>:24554 0.0.0.0:* LISTEN 30630/sbbs
    tcp 0 0 <public_ip>:143 0.0.0.0:* LISTEN 30630/sbbs
    tcp 0 0 <public_ip>:80 0.0.0.0:* LISTEN 30630/sbbs
    tcp 0 0 <public_ip>:2323 0.0.0.0:* LISTEN 30630/sbbs

    ps -ef|grep bbs
    bbs 30630 1 2 Jul29 ? 01:46:10 /sbbs/exec/sbbs nd

    many thanks



    ... Don't look now, but your file is unzipped.
    --- MultiMail/Mac v0.51
    * Synchronet * UNICYBER BBS -- bbs.unicyber.co.uk:2323::ssh bbs.unicyber.co.uk 2424
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)