Subj : Re: Is it just really slow on fsxnet?
To   : bcw142
From : Zip
Date : Sun Jul 31 2022 07:37 pm

Hello bcw142!

On 31 Jul 2022, bcw142 said the following...

bc> Had two mis daemons running, something that still happens on Pi with A47.

Ah! How do you start MIS? I use a systemd service for mine, so it knows if has already been started. I also let it call 'mis poll killbusy app' on startup, which will remove semaphore files such as mutil.bsy, which can otherwise stop any mail from being processed (at least for a certain amount of time).

I run two external programs (binkd and ifcico) for the actual mail transfers; otherwise I would let it call 'mis poll killbusy all' instead on startup, which would clear also any busy (.bsy) files in the outbound directories for outgoing calls (which would otherwise stop any polls from happening, at least for a certain amount of time).

In case anyone would be interested, here's a sample /etc/systemd/system/mis.service file (pardon any strange line breaks, and adjust paths and user/group as needed):


[Unit]
Description=Mystic Internet Servers (MIS) for Mystic BBS

# NOTE: We want the network to be up
Wants=network-online.target
After=network-online.target

# NOTE: We disable the unit start rate limiting, as hitting the limit would
# render "Restart=..." useless (require manual intervention/restart of the
# unit)!
StartLimitIntervalSec=0

[Service]
Type=forking

WorkingDirectory=/mystic
Environment=mysticbbs=/mystic
ExecStart=/mystic/mis daemon
PIDFile=/mystic/semaphore/mis.bsy
ExecStop=/mystic/mis shutdown

# NOTE: We need to allow some extra time for the PIDFile to be created before
# checking for it, as it appears to be created by the FORKED process, not the
# PARENT process!
ExecStartPost=/usr/bin/timeout -k 1 5 /bin/bash -c "while true; do [ -e /mystic/semaphore/mis.bsy ] && break; /bin/sleep 1; done; exit 0"

# NOTE: We should ALWAYS be running; ONLY systemd should start/stop the
# program!
Restart=always
RestartSec=30

# NOTE: Safeguard against unclean shutdowns
ExecStartPre=-/mystic/mis poll killbusy all
ExecStopPost=-/mystic/mis poll killbusy all

# NOTE: Allow binding to Internet domain privileged ports (port numbers less
# than 1024); see
https://www.freedesktop.org/software/systemd/man/systemd.exec.html#AmbientCapa
# and capabilites(7)
AmbientCapabilities=CAP_NET_BIND_SERVICE

User=mystic
Group=mystic

[Install]
WantedBy=multi-user.target


Best regards
Zip

--- Mystic BBS v1.12 A48 2022/07/15 (Linux/64)
* Origin: Star Collision BBS, Uppsala, Sweden (21:1/202)