FAQ

How do I access the HPC Cluster?
SSH
You can remotely access the frontend machines astro06-09 via SSH to submit jobs or to analyze data.  It may be a good idea to check the load factor after logging in, using "top", and choose a different frontend if the CPU or memory use is already high (use "<" or ">" in top to temporarily change from sorting on CPU to memory / virtiual memory).
Login
You can login to the astro06 machine for example by
ssh username@astro06.hpc.ku.dk
You can cut this down to
ssh astro06
by adding these lines to the file ~/.ssh/config:
Host astro06        User username        HostName astro06.hpc.ku.dk
Do not use the ssh option -Y, which "enables trusted X11 forwarding".  This means, basically, that you turn off some essential X security features and say "I trust the remote host completely".   Forwarding of X should work without any extra options.
Passwordless ssh login
You can avoid to type in your password each time for the authenticating of SSH sessions, by using an SSH key with the RSA or DSA encryption, in combination with ssh-add and ssh-agent. Therefore, you generate with ssh-keygen on your local laptop/computer a pair of a personal (id_rsa) and public key (id_rsa.pub).
ssh-keygen -t rsa
With the option -t you specify the encryption type. Here we use RSA, but you can also use DSA. You will asked for the filename, you can just press enter and use the default. Then, you will be asked for a passphrase to protect your personal key.
You should NOT under any circumstances use an empty pass phrase; it is not necessary for convenience reasons (see below), and could endanger your access to remote supercomputers.  Use instead really a "pass phrase"; a relatively long expression, which need not have the character of a password (such as "I really love Putin" or something equally ridiculous ;-).
There will be stored two keys (id_rsa and id_rsa.pub) in the hidden folder ~/.ssh/ on your client (laptop or remote host you want to be a client of another host). You need to copy your public key to the accepted key list of on your host machine (authorized_keys).
cat ~/.ssh/id_rsa.pub | ssh username@astro06.hpc.ku.dk 'cat >> .ssh/authorized_keys'
When you connect now, the server will request your pass phrase from the client (the one where you issued the ssh-keygen command).   However, rather than wait for the ssh prompt, you should use "ssh-add" to give the pass phrase, once and for all (e.g. just after rebooting of you client).
If your ssh command is issued in a window inside a VNC session, or in a window on your local laptop, chances are you can just type "ssh-add" to store the password in a process called ssh-agent, which typically is already running (most X-sessions -- such as the ones you start under VNC -- are automatically started as child processes of an ssh-agent).
ssh-agent
If an ssh-agent process is already running (and your ssh command is a descendant of it), it stores the credentials created by your once-per-reboot ssh-add command and automatically answers requests from hosts you try to connect to.  
If for some reason no ssh-agent is running on an intermediate host, then as an alternative you can forward your ssh-credentials from your laptop, by using "ssh -A" to login to astro0X, and continuing an ssh from there (having stored the id_rsa.pub from your laptop on the remote supercomputer).
Finally, if for some reason you start out from a place (such a just a command window) where no ssh-agent is running, you can just start one, by doing
ssh-agent bash
This starts an ssh-agent, which starts bash (or tcsh) as a descendant.   Then execute "ssh-add", and you're free from typing the pass phrase, for as long as you keep the ssh-agent running.
How do I get my IP white-listed?
On any of the astro0X hosts, use the command
hpc-setup-firewall.sh
You have three personal slots, but other people's slots also work for you.   The first time you login from home, or a new place, you may need to login via muon.nbi.dk, or some other NBI host, from which astro0X is already open.   To find your IP-number, either use one of the web-services (but beware of spam-ware), or just type "finger -m $user" after logging in to an NBI host.
SSHFS
You can locally access remote data on the frontend very conveniently by the SSH file system (SSHFS). To use SSHFS you need to install FUSE. For Linux you can install fuse and for Mac there is osxfuse. You need to create an empty file as mount point on your local laptop/computer, e.g.
makedir ~/nbi
Then you mount your by specifying the host and the mount point.
sshfs username@astro06.hpc.ku.dk:/astro/username/ ~/nbi/ -oauto_cache,reconnect,volname=nbi
You can unmount the filesystem with
fusermount -u ~/nbi
SSH tunneling
To create a tunnel for for example display :11 on astro06 using ssh, do
ssh astro06 -L 5911:localhost:5911
You can do the same without starting a remote shell by doing
ssh astro06 -L 5911:localhost:5911 -fN
If you succeed in always using display :11 you can add the tunnel configuration as part of the ~/.ssh/config file:
Host tunnel        User username        HostName astro06.hpc.ku.dk LocalForward 5911 localhost:5911
 and then start the tunnel with
ssh tunnel -fN

GENERAL & SUPPORT
* Whom should I ask which questions?
- login nodes are unreachable: mailto:support@hpc.ku.dk
- login nodes are alive, but I don't have a homedir: mailto:support@hpc.ku.dk
- I don't have access to the software I need: mailto:support@hpc.ku.dk
- forgot my password: mailto:support@hpc.ku.dk
* Is there a sharing policy?
- cluster queues
- disk space
- analysis servers
* Can I run codes interactively, fx on a front end, or on an analysis server?
 

ENVIRONMENTS
* What are 'modules' and how do I use them?
* What is my default environment setup?
- MPI 
- libraries
- compilers
-...
* Is there a standard module to load which lays out everything - no sweat?
Yes, several standard modules are loaded by default via the same source command that makes the module command available:
source /software/astro/startup.{sh,csh}          # Use the .sh for bash and .csh for tcsh
To undo the default and start from scratch, use
module purge
 

SOFTWARE
* What software do I have available?
* Do I have access 
* What is SLURM?
* Can I submit SLURM jobs from anywhere?
* How do I find out which queues I can submit to?

STORAGE
* Where should I put data from large simulations?
* How much disk space can I claim?
* How long can I have stuff on disk?
* Are my data backed up, and where?