A wrapper to start arbitrary interactive commands in the background, with telnet access to stdin/stdout.
Build and Release Ecosystem
The procServ upstream repository is on GitHub.
Distribution tars are also available through SourceForge.
asciidoc (package: asciidoc), to create documentation in different formats (man, pdf, html)
NOTE: The distribution tar contains the doc in all available formats, so you don't need asciidoc to make and install procServ.
libtelnet (package: libtelnet)
NOTE: The distribution tar contains the libtelnet sources, so it will be compiled into procServ automatically, if not found.
procServ is part of official Linux distributions:
apt-get install procserv
yum install procServ
The source repository also contains the packaging extras. These are not part of the distribution tar.
Building with the EPICS Build System
- Unpack procServ at the appropriate place within your EPICS application structure.
- Inside that directory, run
./configure --with-epics-top=TOPwhere TOP is the relative path to the EPICS TOP directory.
(For a structure created with epicsMakeBaseExt.pl, the appropriate place for the procServ subdir would be under
../..being the relative path to specify to configure - which is the default.)
- Build your EPICS structure.
Building from the procServ Source Repository
Requires autoconf >=2.61, automake >= 1.10
Optional asciidoc >= 8.4, FOP >= 0.95, xsltproc >= 1.1.24
$ git clone https://github.com/ralphlange/procServ.git $ cd procserv $ make $ ./configure --enable-doc $ make
Note: When building from the repository you must explicitly
--disable-doc. Omitting this
option assumes the distribution behaviour, that
the documentation should be installed, but doesn't
need to be built.
Building on Cygwin/Windows
sh configure make
should be enough. If you have
then for a really clean build type
sh autoreconf -fi sh configure make clean make
If you plan to control procServ from a non-localhost address, you will need to use
sh configure --enable-access-from-anywhere
as the configure step.
The executable is also available for download on GitHub/SourceForge.
Running EPICS IOCs as Services on Unix
Michael Davidsaver has created SysV-style rc scripts to configure and run EPICS IOCs using procServ.
Using procServ on Cygwin/Windows
.bat file to launch procServ you should add
to suppress warnings about using windows style paths.
If you plan to control procServ from a non-localhost address,
you will need to run it with
--allow to allow remote access
to the child console.
The default build on Cygwin uses static linking.
I.e. to run on a non-Cygwin Windows system, procServ only needs
e.g. in the same directory as the executable.
Using Windows style paths ('
\' delimiter) in arguments to procServ
is usually OK and suggested under
If you have problems try replacing them with Cygwin syntax,
/cygdrive/c/my/path" rather than "
command.com, the caret sign '
^' has to be escaped using '
If you wish to run a
.bat file rather than an executable as child under
procServ, you should use something along the lines of
%ComSpec% /c runIOC.bat st.cmd
as arguments to procServ to launch your