Trabajar con Screen

Guía para ejecutar y gestionar programas en segundo plano en un servidor Linux.

Screen es un potente multiplexor de terminal que te permite ejecutar programas en sesiones separadas, desconectarte sin matar el proceso y volver a conectarte más tarde. Es especialmente útil cuando trabajas con un VPS o servidores dedicados mediante SSH: puedes lanzar tareas de larga duración (por ejemplo, actualizaciones, parsing, minería o aplicaciones del lado del servidor), desconectarte y retomar el trabajo incluso tras una caída de la conexión.

Screen crea terminales virtuales (ventanas) en los que se ejecutan los comandos, y te permite cambiar entre ellos o gestionarlos de forma independiente.

Instalación

Ubuntu / Debian:

sudo apt update
sudo apt install screen -y

CentOS / RHEL / AlmaLinux / Rocky:

sudo yum install screen -y
# o bien
sudo dnf install screen -y

Uso básico

  1. Inicia una nueva sesión:
screen

Verás un prompt de comandos o una pantalla de bienvenida (pulsa Espacio o Intro).

  1. Ejecuta el comando que necesites (por ej., top, htop, python3 script.py, etc.).
  2. Desconéctate de la sesión (sin terminarla):
Ctrl + a, luego d

Verás: [detached from ...]

  1. Vuelve a conectarte más tarde:
screen -r

Si tienes varias sesiones — lista primero:

screen -ls

Ejemplo de salida:

There are screens on:
        1234.pts-0.server    (Detached)
        5678.job1            (Detached)
2 Sockets in /var/run/screen/S-root.

Conéctate a una sesión específica:

screen -r 1234

o por nombre:

screen -r job1

Comandos útiles dentro de Screen

  • Crear una nueva ventana (dentro de una sesión): Ctrl + a, luego c
  • Cambiar entre ventanas: Ctrl + a, luego número de ventana (0–9) o Ctrl + a, luego " (lista de ventanas)
  • Renombrar la ventana actual: Ctrl + a, luego A → escribe el nuevo nombre
  • Cerrar la ventana actual: Ctrl + a, luego k → confirma con y
  • Salir de toda la sesión de Screen: Ctrl + a, luego : → escribe quit → Intro
  • Salir del modo copia (si activaste el modo de desplazamiento): Esc o q

Desplazamiento por la salida (modo copia)

Si la salida de un comando se va fuera de pantalla:

  1. Pulsa Ctrl + a, luego [ — entras en modo copia.
  2. Usa las teclas de flecha, Re Pág/Av Pág o las teclas estilo vi (h,j,k,l) para desplazarte.
  3. Pulsa Esc o q para salir.

Nuestros servicios y productos

HostingFunciona en discos NVMe ultrarrápidos. Apto para sitios web de cualquier complejidad.
Pedir
VPSParámetros ajustables y configuración flexible del SO. Administración gratuita incluida.
Pedir
Servidores dedicadosDisponibles diversas configuraciones Supermicro con procesadores Intel y AMD.
Pedir

Personalizar Screen (~/.screenrc)

Crea o edita ~/.screenrc:

Ejemplo de configuración útil:

# Desactivar el mensaje de bienvenida
startup_message off

# Mostrar siempre la barra de estado en la parte inferior
hardstatus alwayslastline
hardstatus string '%{= kG}[ %{G}%H %{g}][%= %{=kw}%?%-Lw%?%{r}(%{W}%n*%f%t%?(%u)%?%{r})%{w}%?%+Lw%?%?%= %{g}][%{B}%Y-%m-%d %{W}%c %{g}]'

# Crear ventanas automáticamente al iniciar
screen -t Main
screen -t Logs
chdir /var/log
screen -t Backup

Tras guardar, las nuevas sesiones tendrán una barra de estado ordenada y ventanas preconfiguradas.

Consejos prácticos

  • Si una sesión se queda colgada — reconéctate en modo multiusuario:
screen -x
  • Para iniciar Screen automáticamente al hacer login por SSH — añade esto a ~/.bashrc:
if [ -z "$STY" ]; then screen -x || screen -S main; fi
  • Screen es ideal para procesos de larga duración (actualizaciones del sistema operativo, compilación, procesamiento de grandes volúmenes de datos, bots, etc.).

Nuestros servicios y productos

HostingFunciona en discos NVMe ultrarrápidos. Apto para sitios web de cualquier complejidad.
Pedir
VPSParámetros ajustables y configuración flexible del SO. Administración gratuita incluida.
Pedir
Servidores dedicadosDisponibles diversas configuraciones Supermicro con procesadores Intel y AMD.
Pedir

Ayuda

¿Tienes dudas o necesitas ayuda? Escríbenos a través del sistema de tickets — siempre estamos aquí para ayudarte!

¿Necesitas ayuda?Nuestros ingenieros te ayudarán gratuitamente con cualquier pregunta en minutosContáctanos