FAQ¶
There is a dedicated SLURM FAQ document.
Why does bash report that it can’t find the module command?¶
Click to expand answer
If you receive a message like
bash: module: command not found
The module is a shell function that is declared in /etc/bashrc
. It is always a good idea for /etc/bashrc
to be sourced immediately in you ~/.bashrc
. Edit your .bashrc
file so that the first thing it does is o execute the system bashrc file, i.e. your .bashrc
file should start with the following lines:
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
My script is giving odd error messages about \r
or ^M
.¶
Click to expand answer
Windows and Unix use different characters to indicate a new line. If you have uploaded your script from a Windows machine, it may have the Windows newline characters. These need to be replaced by the Unix newline characters. To do this, you can run the “dos2unix” command on your script dos2unix myscript.sh
. This will strip out all of the Windows newlines and replace them with the Unix newlines.
What is the SAFE desktop?¶
Click to expand answer
The SAFE desktop is a virtual Windows computer that you can use to run scientific software and access JHPCE. For more information see this item.
SSH "Bad owner or permissions"¶
Click to expand answer
If you receive a message like "Bad owner or permissions on ~/.ssh/config" or continue to have to provide your password when ssh'ing to JHPCE when you think you have configured things to not need one, your file owner or permissions may be incorrect. See this document for answers.
I’m getting X11 errors when using rstudio with Putty and Xming¶
Obsolete
As of 20240220 vcxsrv is not installed on the cluster. This FAQ item needs to be reviewed and probably removed. JRT
We’ve had issues reported by users of Putty with Xming. One solution we’ve found is to use the (vcxsrv))[https://sourceforge.net/projects/vcxsrv/] instead Xming newlines. (This commmand is on all nodes.)
How can I add packages into emacs on the cluster?¶
Make sure to module load emacs
to get a later version of emacs. Then one needs to edit their .emacs
file in their home director to include the package repos
(require 'use-package)
(add-to-list 'package-archives '("gnu" . "http://elpa.gnu.org/packages/") t)
(add-to-list 'package-archives '("melpa" . "http://melpa.org/packages/") t)
M-x package-list-packages
and follow the GUI.
Xauth error messages from MacOS Sierra when using X11 forwarding in SSH¶
With the upgrade to MacOS Sierra, the “-X” option to ssh to enable X11
forwarding may not work. If you receive the message: untrusted X11
forwarding setup failed: xauth key data not generated
, you can
resolve the issue by add the line ForwardX11Trusted yes
to your
~/.ssh/config
file on your Mac. You may still see the warning:
Warning: No xauth data; using fake authentication data for X11
forwarding.
To eliminate this warning, add the line XAuthLocation
/usr/X11/bin/xauth
to your ~/.ssh/config
file on your Mac.
When running SAS, an error dialog pops up about Remote Browser¶
When running SAS, you may need to specify options to indicate which browser to use when displaying either help or graphical output. We recommend using the Chromium browser.
See our SAS usage document about how to resolve this issue.
I’m on a Mac, and the ~C
command to interrupt an ssh session isn’t working¶
It used to, but I upgraded MacOS and now it does not work.* Newer
versions of MacOS have disabled by default the ability to send an SSH
Escape with ~C
(~ Shift+C). To reenable this, on you Mac, you need to set the
EnableEscapeCommandline
option. You can do this by either running
ssh -o EnableEscapeCommandline=yes . . .
or by editing your
~/.ssh/config
file, and at the top of that file add the line:
EnableEscapeCommandline=yes
How do I get the Rstudio program to work on the cluster?¶
See our core R support document about this and other R usage.
My X11 forwarding stops working after 20 minutes¶
This error comes from the ForwardX11Timeout
variable, which is set
by default to 20 minutes. To avoid this issue, a larger timeout can
be supplied on the command line to, say, 336 hours (2 weeks):
$ ssh -X username@jhpce01.jhsph.edu -o ForwardX11Timeout=336h
How do I copy a large directory structure from one place to another.¶
Please do not copy or move anything except a small set of files on the login nodes.
As an example, to copy a directory tree from /home/bst/bob/src
to
/dcs07/bob/dst
, first, create a cluster script, let’s call it
copy-job
, that contains the line rsync -avzh /home/bst/bob/src/
/dcs07/bob/dst/
. Next, submit this script as a batch job to the
cluster. An example SLURM batch job can be found here.
My app is complaining that it can’t find a shared library, e.g. libgfortran.so.1
¶
Nine times out of ten, the allegedly missing library is there. The problem is that your application is looking for the version of the library that is compatible with the old system software. It will not help to point your application to the new libraries. They are more than likely to be incompatible with the new system. The correct solution is to reinstall your software. If the problem persists after the reinstallation, then please contact us and we will install standard libraries that are actually missing.
ssh gave a scary warning: REMOTE HOST IDENTIFICATION HAS CHANGED
¶
Go into the ~/.ssh
directory of your laptop/desktop and edit the
known_hosts file. Search for the line that starts with the host that
you ssh’d to. Delete that line (it is probably a long line that
wraps). Then try again
Why aren’t SLURM commands, or R, or matlab, or… available to my cron job?¶
Authoring note
This info needs to be re-written for upgraded cluster. And moved to the SLURM FAQ. Should the scrontab
command be mentioned?
cron
jobs are not launched from a login shell, but the module
commands and the JHPCE default environment is initialized
automatically only when you log in. Consequently, in a cron job, you
have to do the initialization yourself. Do this by wrapping your cron
job in a bash script that initializes the module command and then
loads the default modules. You bash shell script should start with the
following lines:
#!/bin/bash
# Source the global bashrc
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
module load JHPCE_DEFAULT_ENV
I've deleted files but my quota hasn't changed¶
See this document.