...
Code Block |
---|
mkdir /dos
mkdir /dos/drive_f
mkdir /dos/drive_g
mkdir /dos/drive_h
mkdir /dos/drive_h/UTILS
|
Install utilities
Run the following script
Code Block |
---|
#!/bin/bash set -e set -x rm -rf /tmp/setup mkdir /tmp/setup rm -rf /dos/drive_h/STARTUP mkdir /dos/drive_h/STARTUP rm -rf /dos/drive_h/UTILS mkdir /dos/drive_h/UTILS echo 0 > /dos/numnodes echo 1 > /dos/startconsole echo '$_com1 = "virtual"' >> /etc/dosemu/dosemu.conf echo '$_timemode = "linux"' >> /etc/dosemu/dosemu.conf ## Do the downloads cd /tmp/setup wget https://ftp.sunet.se/mirror/archive/ftp.sunet.se/pub/simtelnet/msdos/fossil/adf_150.zip wget https://bbs.bapho.net/bbs/i-drive/generic/pkz204g.exe wget http://cd.textfiles.com/pier/pier08/046/list91k.zip wget http://www.filegate.net/comm/dszexe.zip # Unpack PKZIP mkdir /tmp/setup/t cd /tmp/setup/t unzip ../pkz204g.exe mv -v PKZIP.EXE PKUNZIP.EXE PKUNZJR.COM /dos/drive_h/UTILS/ cd /tmp/setup rm -r /tmp/setup/t # Unpack LIST mkdir /tmp/setup/t cd /tmp/setup/t unzip ../list91k.zip mv -v LIST.COM /dos/drive_h/UTILS/ cd /tmp/setup rm -r /tmp/setup/t # Unpack DSZ mkdir /tmp/setup/t cd /tmp/setup/t unzip ../dszexe.zip mv -v DSZ.EXE /dos/drive_h/UTILS/ cd /tmp/setup rm -r /tmp/setup/t # Unpack ADF (FOSSIL) cd /dos/drive_h rm -rf adf mkdir adf cd adf unzip /tmp/setup/adf_150.zip rm /tmp/setup/adf_150.zip |
Add startnode script
vi /usr/local/bin/startnode
Code Block |
---|
#!/bin/bash
set -e
MAXNODE=${BBSNODES:-`cat /dos/numnodes`}
FOUNDNODE=""
for NODE in `seq 1 $MAXNODE`; do
if ! check-dosemu-session node$NODE &> /dev/null; then
FOUNDNODE="$NODE"
break
fi
done
if [ -z "$FOUNDNODE" ]; then
echo "All nodes are busy now; please try again later."
exit 1
fi
SESSNAME=node$FOUNDNODE
STARTUP=/dos/drive_h/STARTUP/NODE$FOUNDNODE.BAT
# Hook to let node prep happen
if [ -e /dos/nodeprephook.sh ]; then
. /dos/nodeprephook.sh
fi
printf "Welcome to node $FOUNDNODE. Please stand by while we connect you...\r\n"
exec startdossession $SESSNAME "H:\\STARTUP\\NODE$FOUNDNODE" |
Add startdossession script
vi /usr/local/bin/startdossession
Code Block |
---|
#!/bin/bash
export DISPLAY=:1
SESSNAME="console"
set -e
set -x
if [ "`cat /dos/startconsole`" = 0 ]; then
echo "$0 startup disabled by /dos/startconsole; not starting."
sleep 900d
exit 0
fi
waitfordaemon vncserver true
waitfordaemon tcpsercon true
exec socat TCP4:localhost:7000 EXEC:"startdossession console",pty |
Update inetd.conf
vi /etc/inetd.conf
Code Block |
---|
23 stream tcp nowait root /usr/sbin/tcpd /usr/sbin/telnetd -a off -h --exec-login=/usr/local/bin/startnode |
Renegade BBS
Installation
We will be installing everything under /dos. Renegade will be installed under /dos/drive_g.
...