Is it possible to execute pbs binaries without installing pbs client?

Is it possible to have the PBS binaries (e.g. bsub,qstat, etc.) placed in a shared network drive in Linux and have all of our user workstations simply execute binaries from the shared network drive?

Installing the PBS client RPM in every workstation is something we are trying to avoid.

Thanks,
Roy

Yes, please make sure /etc/pbs.conf is source for all these client environments. or export PBS_SERVER to the PBS Server in the system environment.

Note that there are SUID binaries (e.g. pbs_iff) installed in the sbin directory. You’ll have to ensure the filesystem is mounted in such a way that it does not prevent SUID binaries from working as they would on a local filesystem.

Thanks @adarsh and @mkaro please help me understand what am I doing wrong.

We have /opt/pbs (including ./bin and ./sbin) copied over to a shared directory under /global/pbs

when a user is executing /global/pbs/bin/qsub to submit a job they get this error:

pbs_iff: cannot connect to host
pbs_iff: cannot connect to host
auth: error returned: -1
auth: Unable to authenticate connection (pbs_server:15001)
No such file or directory
qstat: cannot connect to server pbs_server (errno=-1)

@mkaro can you please explain whay do you mean by "the filesystem is mounted in such a way that it does not prevent SUID binaries from working?

Our OS is Suse12 with SP5

I had to install certain packages as dependencies on the pbs_server before installing the actual pbs_server package, here’s the list:

zypper install https://ftp.lysator.liu.se/pub/opensuse/distribution/leap/15.3/repo/oss/noarch/hwloc-data-2.4.1-1.1.noarch.rpm
zypper install https://ftp.lysator.liu.se/pub/opensuse/distribution/leap/15.3/repo/oss/x86_64/libhwloc5-2.0.0.1.11.8-1.29.x86_64.rpm
zypper install https://ftp.lysator.liu.se/pub/opensuse/distribution/leap/15.3/repo/oss/noarch/libicu60_2-ledata-60.2-3.9.1.noarch.rpm
zypper install https://ftp.lysator.liu.se/pub/opensuse/distribution/leap/15.3/repo/oss/x86_64/libicu60_2-60.2-3.9.1.x86_64.rpm
zypper install https://ftp.lysator.liu.se/pub/opensuse/distribution/leap/15.3/repo/oss/x86_64/libical2-2.0.0-3.4.1.x86_64.rpm

Thanks,
Roy

It’s been a long time since I administered NFS filesystems, so please excuse any stale/inaccurate information I’m about to provide. There are two sides to mounting NFS volumes, the NFS server and client. The NFS server exports the volumes it finds in /etc/exports and the clients mount them from the server. The specific property you are interested is suid/nosuid. I don’t recall if there are options on the server side that need to be configured to enable suid, but I know the suid option need to be passed to the mount command on the client. You should be aware that there are security concerns with allowing SUID programs on NFS volumes. Those are the relevant keywords to search for with you favorite search engine.

That’s also the reason you see PBS complaining. The pbs_iff program needs to be installed as SUID. It’s likely that it is (you should check the permissions on it), but NFS is preventing it from working properly.

-sh-4.2$ ls -l /opt/pbs/sbin/pbs_iff
-rwsr-xr-x 1 root root 218528 Jan 15 11:53 /opt/pbs/sbin/pbs_iff

Note the “s” in the fourth character above that indicates the SUID flag has been enabled for that file. You may already know most of this, but I don’t know your level of experience. Hope that helps.