I already wrote about nohup command, which allows you to ignore HUP (hangup) signal and keep running the command after user logged out. You can accomplish the same behavior using screen or disown command. setsid is another program that runs a program in a new session. For example run a script called ~/scripts/mirror.site: ssh firstname.lastname@example.org [...]
Here is a quick tip, if you wish to perform an unattended download of large files such as Linux DVD ISO file use the wget command as follows:
Most of the time you login into remote server via ssh. If you start a shell script or command and you exit (abort remote connection), the process / command will get killed. Sometime job or command takes a long time. If you are not sure when the job will finish, then it is better to leave job running in background. However, if you logout the system, the job will be stopped. What do you do?