fg and bg use job identifiers, not PIDs (that's why it says "no such job" -- you probably don't have like 20742 jobs in that shell). If you know the PID, you can send it a CONT signal:
Code:
kill -s SIGCONT $PID
Maybe try this on a harmess "sleep 600" before axing a process you want to keep, just to be on the safe side.
You can't reconnect it to another terminal than the one it was started in. It will continue to run on the terminal where you started it (or possibly terminate or crash if that terminal is no longer available).