can it be run nohup - so that it can run even when I don;t have an ssh session?
Use screen:
screen -S miner
"miner" can be anything, it's just a name that you can use later to get back to it. This will give you a new shell. Start cgminer there.
Ctrl-A, then Ctrl-D will exit the new shell and will keep cgminer running.
To verify that it's indeed running in the background use this:
ps auxwww | grep cgminer
You can now disconnect SSH etc. To get back to your cgminer:
screen -D -r miner