1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 <2021> 2022 2023 2024 2025 | Index | 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 <2021> 2022 2023 2024 2025 |
<== Date ==> | <== Thread ==> |
---|
Subject: | Re: Instructions on using manage-procs procServ and Conserver |
From: | "Hu, Yong via Tech-talk" <tech-talk at aps.anl.gov> |
To: | "Smith, William" <william.smith at helmholtz-berlin.de>, "tech-talk at aps.anl.gov" <tech-talk at aps.anl.gov> |
Date: | Fri, 11 Jun 2021 18:46:12 +0000 |
Hi Will, Yes, a more advanced tool is needed to manage IOCs which are wrapped by procServ as background daemons. At NSLS-2, we have developed such a tool named “manage-iocs” which works on all Linux distributions
(Debian, Red Hat, etc.) and we have been using this tool for over 10 years. Check it out:
https://github.com/NSLS-II/systemd-softioc Please take a few minutes to read the instruction. We also have Debian and Red Hat packages for that tool if you are interested in. Let me know if you need further assistance.
Cheers, Yong From:
Tech-talk <tech-talk-bounces at aps.anl.gov> on behalf of Smith, William via Tech-talk <tech-talk at aps.anl.gov> Hi! I have been using procServ for a while to run my IOC’s in the background. There are now too many and I want to learn how to use manage-procs, part of procServUtils to create and start processes and configure the conserver.cf file to view
those processes from conserver. Here’s what I’ve done: -Installed procServ, and included the procServUtils in the build -Installed conserver -Set up an IOC that I have tested can start from the command line, or with procServer If I go to the directory containing the st.cmd file and type: manage-procs add -P 7010 -A -f sampleIOC1 ./st.cmd I expect the IOC to start and be accessible on telnet port 7010. Instead I get the following message which I don’t understand: Created symlink /home/emil/.config/systemd/user/multi-user.target.wants/procserv-sampleIOC1.service → /home/emil/.config/procServ.d/procserv-sampleIOC1.service. Created symlink /home/emil/.config/systemd/user/procserv-sampleIOC1.service → /home/emil/.config/procServ.d/procserv-sampleIOC1.service. Failed to start procserv-sampleIOC1.service: Unit procserv-sampleIOC1.service has a bad unit file setting. See user logs and 'systemctl --user status procserv-sampleIOC1.service' for details. If I look in that file, I get the following: cat /home/emil/.config/procServ.d/procserv-sampleIOC1.service [Unit] Description=procServ for sampleIOC1 After=network.target remote-fs.target ConditionPathIsDirectory=/home/emil/Apps/epics/R7.0.4.1/work/ioc/TEST/sampleIOC/iocBoot/iocsampleIOC [Service] Type=simple ExecStart=None --user sampleIOC1 RuntimeDirectory=procserv-sampleIOC1 StandardOutput=syslog StandardError=inherit SyslogIdentifier=procserv-sampleIOC1 [Install] WantedBy=multi-user.target If I look at the systemd process that failed to start I get: Jun 11 16:40:46 sissy-serv-02 systemd[29562]: /home/emil/.config/procServ.d/procserv-sampleIOC1.service:9: Executable "None" not found in path "/usr/local/sbin:/usr/local/bin:/usr/sbin:/us….. Any idea what I am doing wrong? Thanks, Will
|