pbs_tmrsh(8B)

πŸ“¦ version 23.06.06-unstable-2026-04, in nixos 26.05, nixpkgs unstable

πŸ’… pbs_tmrsh β€” like, the whole manual, bestie

okay so this is a page from PBS Professional, manual section 8B, and it's about pbs_tmrsh. buckle up πŸŽ€

✨ NAME ✨

pbs_tmrsh β€” the TM-enabled glow-up replacement for rsh/ssh, made for MPI implementations to use. yes, she's a stand-in, and yes, she serves πŸ’…

✨ SYNOPSIS ✨

pbs_tmrsh <hostname> [-l <username>] [-n] <command> [<args> ...]
pbs_tmrsh --version

✨ DESCRIPTION ✨

so basically pbs_tmrsh tries to emulate an "rsh" connection to whatever host you name, and it does it through underlying calls to the Task Management (TM) API. that's the whole vibe ✨

real talk though: this program is meant to be used during MPI integration activities, and not by end-users. it's a backstage queen, not the main character 🫢

running pbs_tmrsh <hostname> <command> causes a PBS task to be started on hostname running command. that's it, that's the tea β˜•

🌸 Requirements for Environment Variables 🌸

the environment variables that the two MPI implementations use to point at the rsh work-alike β€” MPI_REMSH in the case of HP, and P4_RSHCOMMAND for MPICH β€” must be set in the job environment, and they have to point to the full path for pbs_tmrsh. no shortcuts, no vibes-based relative paths, fr fr πŸ“

also, the file $PBS_HOME/pbs_environment should contain an environment variable PATH that gets searched for the program executable. this applies to both Windows and Linux, no cap. that said, the expectation is that you'll specify a full path for the command anyway, so the PATH variable won't actually be needed πŸ‘‘

✨ OPTIONS ✨

  • -l <username> β€” tells it which username to execute the task under. but like, plot twist: if you use it, username must match the username that's running the pbs_tmrsh command. no identity theft today bestie πŸ™ˆ
  • -n β€” a literal no-op 😭 it exists purely for MPI implementations that expect to call rsh with the -n option. she's there for moral support only πŸ’–
  • --version β€” the pbs_tmrsh command returns its PBS version info and then exits. and omg, this option can only be used alone. no friends, no extras, solo main character energy ⭐

✨ OPERANDS ✨

  • command β€” specifies the command to be run as a PBS task. the actual assignment πŸ’…
  • hostname β€” specifies the host on which to run the PBS task. and yes, the hostname may be in IP-dot-address form, so 192.168.0.1-style is valid πŸ’»

✨ Output and Error ✨

output and errors get written to the PBS job's output and error files, not to standard output/error. so don't go staring at your terminal wondering where it all went 🫠

the pbs_tmrsh command writes a diagnostic message to the PBS job's error file for each error occurrence. one message per oops πŸ’€

✨ EXIT STATUS ✨

the pbs_tmrsh program exits with the exit status of the remote command, or with 255 if an error occurred. why? because ssh works this way. that's literally the reason. we don't make the rules, we just inherit them 😭πŸ”₯

✨ SEE ALSO ✨

pbs_attach(8B), tm(3) β€” go read those too, iykyk πŸ¦‹


🌈 that's the whole page, bestie! this gem is from the Local manual, dated 6 May 2020, and distributed as part of PBS Professional. now go forth and configure your MPI integration correctly, periodt πŸ’œπŸŽ€

πŸ“¦ where this page comes from