Hi William,

a
RuntimeDirectory=slurm

should suffice.

"If set, one or more directories by the specified names will be created below /run (for system services) or below $XDG_RUNTIME_DIR (for user services) when the unit is started, and removed when the unit is stopped. The directories will have the access mode specified in RuntimeDirectoryMode=, and will be owned by the user and group specified in User= and Group=."

Best
Marcus

On 1/10/20 12:20 PM, William Brown wrote:
Here is an example of a modified system service file which uses ExecStartPre to 
create the directory under /var/run on the fly.  This is for slurmctld.  As 
/var/run is I think in RAM this creates the folder when the service starts.   
There are other customisations for our environment in here, but I guess this 
may help anyone see how this is done.

[Unit]
Description=Slurm controller daemon
After=network.target munge.service
RequiresMountsFor=/home/apps
BindsTo=home-apps.mount
ConditionPathExists=/etc/slurm/slurm.conf

[Service]
User=slurm
Group=slurms
Type=forking
EnvironmentFile=-/etc/sysconfig/slurmctld
PermissionsStartOnly=true
ExecStartPre=/usr/bin/mkdir --parents /var/run/slurm
ExecStartPre=/usr/bin/chown -R slurm:slurms /var/run/slurm/
ExecStart=/usr/sbin/slurmctld $SLURMCTLD_OPTIONS
ExecReload=/bin/kill -HUP $MAINPID
PIDFile=/var/run/slurm/slurmctld.pid
LimitNOFILE=65536

William

-----Original Message-----
From: slurm-users <slurm-users-boun...@lists.schedmd.com> On Behalf Of Shane 
Kelly
Sent: 10 January 2020 07:53
To: slurm-users@lists.schedmd.com
Subject: Re: [slurm-users] Slurm 19-05-4-1 and Centos8

Apologies for taking so long to wrap this thread up.

For me, slurm 19-05.4.1 builds correctly with Philip Kovacs mod to the spec 
file (see below).
It installs and runs (after providing some massaging to the RH/Centos specific 
config locations/bits*) and I now have it installed with accounting on five 
nodes of our test cluster, and all appears well.

Many thanks to all who contribute to this mailing list.


Kind Regards,
Shane Kelly


* Centos8 config/install bits (from memory) /var/run will not allow slurm to 
write a pid there, so I put a directory for all the slurm{d|ctld|dbd} PIDS 
under /var/run/. Don't forget to add a .conf file to  /usr/lib/tmpfiles.d/ to 
make your folder persist over a reboot. I copied the munge one, suitably edited.

The systemd service files are hardwired to write pids to /var/run, so they need 
altering to reflect the /var/run/slurm path that I use.

Hope this helps.

There's a typo in there.  It's lazy not -lazy.   Try adding exactly
this line just before the %configure:
# use -z lazy to allow dlopen with unresolved symbolsexport
LDFLAGS="%{build_ldflags} -Wl,-z,lazy"                     <--- this
should fix it%configure \
    On Sunday, December 8, 2019, 05:30:00 PM EST, Brian Andrus
<toomuc...@gmail.com> wrote:

There must be something more, because I am trying it with


[root@node02 ~]# rpm -E "%{build_ldflags}"
-Wl,-z,relro  -Wl,-z,now
-specs=/usr/lib/rpm/redhat/redhat-hardened-ld -Wl,-z,-lazy

It builds (as expected) but slurmd will not start due to the same
error. (Note, I have also tried LDFLAGS without --specs and without
-Wl,-z-now with the same result)


--
Shane Kelly
HPC Systems Administrator
GPOL
WWCRC
Garscube Campus
University of Glasgow
shane.ke...@glasgow.ac.uk
ext: 3031




--
Marcus Wagner, Dipl.-Inf.

IT Center
Abteilung: Systeme und Betrieb
RWTH Aachen University
Seffenter Weg 23
52074 Aachen
Tel: +49 241 80-24383
Fax: +49 241 80-624383
wag...@itc.rwth-aachen.de
www.itc.rwth-aachen.de


Reply via email to