Guia para usar os comandos de tela no Linux ⋆ ALexHost SRL

Test your skills on our all Hosting services and get 15% off!

Use code at checkout:

Skills
05.12.2024

Guia para usar os comandos de tela no Linux

Introdução

O comando screen é um poderoso multiplexador de terminal para Linux e sistemas semelhantes ao Unix. Ele permite gerenciar várias sessões de shell em uma única janela de terminal, manter as sessões em execução mesmo após o logout e reconectar-se a essas sessões posteriormente. Isso é particularmente útil para sessões remotas por SSH, pois garante que os processos de longa duração não sejam interrompidos se a conexão cair. Neste guia, abordaremos como instalar, usar e gerenciar sessões de tela, juntamente com alguns comandos comuns e dicas práticas.

Por que usar o screen?

O uso do screen oferece várias vantagens:

  • Gerenciamento de sessões: Execute várias sessões de shell em uma única janela de terminal.
  • Persistência da sessão: Continue executando processos mesmo se você se desconectar do terminal ou perder a conexão SSH.
  • Reanexação: Reconecte-se a uma sessão a qualquer momento e continue de onde parou.
  • Facilidade de uso: comandos e atalhos simples facilitam o gerenciamento das sessões.

Tela de instalação

o screen geralmente vem pré-instalado na maioria das distribuições Linux. No entanto, se ele não estiver disponível em seu sistema, você poderá instalá-lo usando o gerenciador de pacotes:

  • Debian/Ubuntu:
    sudo apt-get update
    sudo apt-get install screen
  • CentOS/RHEL:
    sudo yum install screen
  • Fedora:
    sudo dnf install screen
  • Arch Linux:
    sudo pacman -S screen

Depois de instalado, você pode começar a usar o screen imediatamente.

Início de uma sessão do screen

Para iniciar uma nova sessão do screen, basta digitar:

screen

Isso abrirá uma nova sessão de tela com uma interface de linha de comando que se comporta como um terminal normal. Você pode começar a executar comandos ou processos nessa sessão.

Para iniciar uma nova sessão com um nome específico (facilitando o gerenciamento posterior), use:

screen -S nome_da_sessão

Substitua session_name por um nome significativo para sua sessão.

Desvinculação e revinculação de sessões

Um dos recursos mais úteis da tela é a capacidade de se desconectar de uma sessão e se reconectar mais tarde.

Desvinculação de uma sessão

Para se desconectar de uma sessão de tela sem fechá-la, pressione:

Ctrl A , D

A sequência Ctrl A informa à tela que você está prestes a dar um comando, e D significa “desconectar” Após a desconexão, sua sessão continuará sendo executada em segundo plano.

Como se conectar novamente a uma sessão

Para reconectar-se a uma sessão desconectada, use:

screen -r

Se você tiver várias sessões, poderá listá-las e escolher a sessão específica à qual se conectar:

screen -ls

Esse comando exibirá todas as sessões de tela ativas, incluindo seus IDs e nomes:

Há telas em:
1234.nome_da_sessão (Desanexado)
5678.outra_sessão (Desanexada)
2 Sockets em /var/run/screen/S-user.

Para se conectar novamente a uma sessão específica, use seu ID ou nome:

screen -r 1234

ou

screen -r nome_da_sessão

Uso de várias janelas em uma única sessão de tela

a tela permite criar várias janelas em uma única sessão. Isso significa que você pode executar diferentes comandos ou processos em janelas separadas e alternar entre elas facilmente.

Criação de uma nova janela

Para criar uma nova janela dentro de uma sessão de tela existente, pressione:

Ctrl A , C

Isso abrirá uma nova janela com um novo prompt do shell.

Navegação entre janelas

Para alternar entre as janelas, use:

  • Ctrl A, N: Ir para a próxima janela.
  • Ctrl A, P: Ir para a janela anterior.
  • Ctrl A, “: exibe uma lista de janelas abertas e escolhe uma para a qual alternar.

Renomear uma janela

Para renomear uma janela para melhor organização, pressione:

Ctrl A , A

Digite o novo nome da janela e pressione Enter.

Fechamento de uma janela

Para fechar uma janela, basta sair do shell em execução nessa janela digitando:

exit

ou pressionando Ctrl D .

Bloqueio e desbloqueio de uma sessão de tela

Se precisar bloquear temporariamente a sessão de tela, use o seguinte comando:

Ctrl A , X

Isso exigirá que você digite sua senha de usuário para desbloquear a sessão.

Personalização da configuração da tela

O comportamento do screen pode ser personalizado usando o arquivo .screenrc, localizado em seu diretório pessoal. Você pode adicionar comandos a esse arquivo para alterar as associações de teclas padrão, definir títulos de janelas e personalizar o comportamento de inicialização do screen.

Para criar ou editar o arquivo .screenrc, use um editor de texto:

nano ~/.screenrc

Aqui estão alguns exemplos de configurações que você pode adicionar:

# Alterar a sequência de escape padrão para Ctrl B
escape ^Bb#
Defina uma linha de status na parte inferior da tela
hardstatus on
hardstatus alwayslastline “%{= kw}%-w%{= BW}%n %t%{-}% w”

Salve o arquivo e reinicie a tela para aplicar as alterações.

Exemplos de casos de uso da tela

  • Execução de processos de longa duração: Se precisar executar um script ou um comando que leva muito tempo para ser concluído, execute-o em uma sessão de tela. Dessa forma, mesmo que você se desconecte do SSH, o processo continuará em execução.
  • Gerenciamento de várias sessões: Se estiver trabalhando em vários projetos, poderá usar diferentes sessões de tela ou janelas para cada tarefa.
  • Gerenciamento de servidor remoto: Use a tela para gerenciar servidores remotos via SSH. Isso é especialmente útil para administrar servidores que exigem manutenção ou monitoramento contínuos.

Conclusão

O comando screen é uma ferramenta versátil e poderosa para gerenciar várias sessões de terminal e executar processos longos em sistemas Linux. Com a capacidade de desanexar, reanexar e criar várias janelas, o screen oferece um ambiente robusto para usuários casuais e avançados. Se você estiver executando scripts complexos ou apenas precisar de uma maneira de manter uma sessão de shell persistente, o domínio do screen aumentará muito sua produtividade e flexibilidade no Linux.

Test your skills on our all Hosting services and get 15% off!

Use code at checkout:

Skills