Una de las grandes ventajas de linux es la ejecución de procesos en background. Por ejemplo si sabemos que la copia de un fichero puede llevar mucho tiempo y no queremos estar esperando a que termine para seguir trabajando entonces podemos lanzarlo en background. Para ello añadimos & al comando que queramos lanzar por ejemplo:

cp archivo1 archivo2 &

El proceso lo podemos pasar también a background con bg, pararlo y pasarlo a background con CTRL+z o volverlo a continuar en foreground con fg.

Con el comando jobs, podemos ver los procesos que están corriendo y sus posiciones

Un proceso que este parado en background (al pasarlo presionando CTRL +z) podemos ponerlo a continuar en background de la siguiente forma:

ejecutamos

jobs -l

para averiguar el pid del proceso ahora ejecutamos

kill -CONT pid_del_proceso

Pongamos un ejemplo de lo anterior

Supongamos que acabo de ejecutar el comando visudo para editar el fichero de permisos de sudo, pero en un momento dado quiero pasarlo a background pulsando CTRL+Z con lo cual vuelvo a la consola. Para volverlo a llamar me basta con poner fg y el número de proceso