Como remover o GNOME do Debian e instalar outro desktop gráfico

Se você não gosta do GNOME e prefere usar outro ambiente ou desktop gráfico, há um método muito simples para remover e, se quiser, instalar outro desktop que você goste mais.
O GNOME é, atualmente, o desktop gráfico padrão de distribuições importantes, como o Fedora, o Debian e o Ubuntu.
Mas, no mundo do software livre, ninguém é obrigado a usar ou gostar de nada.
Neste post, vou mostrar:

  • Como remover o GNOME totalmente e deixar o seu desktop apenas com a interface texto (CLI).
  • Opcionalmente, como escolher e instalar outro ambiente gráfico.

Devo advertir que os meus exemplos rodaram bem em uma máquina com conexão Ethernet. Você pode ficar sem conexão, se estiver dependendo de uma placa de rede Wi-Fi/Wireless com suporte precário por parte do fabricante.


Comece por programar o sistema para iniciar na CLI:


systemctl set-default multi-user.target

Leia mais sobre como usar o systemctl para configurar o Linux para iniciar na CLI ou GUI.
Agora reinicie o computador:


systemctl reboot

Quando o sistema voltar autentique-se (de preferência como root) e prossiga com o comando tasksel:


tasksel remove gnome-desktop

debian remover gnome
O trabalho de remoção do GNOME, a esta altura, foi concluído.

Como instalar um outro ambiente desktop gráfico no Debian

Se você quiser, pode usar o mesmo tasksel para selecionar outro desktop gráfico para instalação no seu sistema:


tasksel

tasksel seleciona ambiente gráfico
Como você pode ver, na tela do tasksel, é possível escolher mais de um ambiente gráfico para instalação.
Ao optar por instalar um destes desktop gráficos, não se esqueça de reajustar o padrão de volta para o ambiente gráfico:


systemctl set-default graphic.target

Como desativar/ativar o modo gráfico no Linux com o systemd

Você pode usar o systemd e seu comando systemctl para informar o sistema se quer usar sempre a interface gráfica ou apenas a de linha de comando.
O recurso permite a opção, sem desinstalar absolutamente nada e é facilmente reversível, como irei mostrar.
Com todos as críticas que se possa ter ao systemd — e algumas delas são muito justas — temos que reconhecer que trouxe algumas comodidades e a uniformização de alguns procedimentos.
O que vou descrever, neste artigo, foi testado no Fedora 26 Workstation — mas é aplicável em qualquer outra distro que faça uso do systemd.

Use o systemctl para determinar a interface padrão no seu sistema

Você pode usar o comando systemctl para gerenciar a interface padrão — fazendo a troca entre GUI (modo gráfico) e CLI (modo texto).
Para ver qual é o padrão, neste momento, use o comando assim:


systemctl get-default 

graphical.target

O resultado “graphical.target” indica que a GUI é a interface padrão (no meu sistema). Se fosse a CLI, o get-default iria resultar em “multi-user.target”


Use a caixa de busca do site para localizar mais posts sobre o systemd.
fedora systemd systemctl
Para mudar a interface padrão para o modo texto, na próxima inicialização do sistema, use o set-default:


systemctl set-default multi-user.target

Created symlink /etc/systemd/system/default.target → /lib/systemd/system/multi-user.target.

Este comando pede autenticação de administrador do sistema e só terá efeito após o reboot.
Você reiniciar o sistema com o próprio systemctl:


systemctl reboot

fedora systemd cli systemctl
Para desfazer o procedimento – e voltar a usar a interface gráfica como padrão – use o seguinte comando:


systemctl set-default graphical.target

Removed /etc/systemd/system/default.target.
Created symlink /etc/systemd/system/default.target → /lib/systemd/system/graphical.target.

É simples assim. 😉

Use o systemctl para hibernar, desligar, reiniciar etc.

Em sistemas Linux, com o systemd, é possível usar o comando systemctl para executar diversas tarefas da administração do sistema.
linux, suspender, desligar, reiniciar
Neste post, vamos falar das que envolvem

Para se aprofundar um pouco mais em algum assunto abordado, clique nos links do texto.

O que é o systemctl?

É um utilitário que controla o systemd e o service manager.
De acordo com o manual, pode ser usado para introspectar e controlar o estado do systemd e do gestor de serviços do sistema.
Como foi dito, no primeiro parágrafo, pode ser usado para realizar várias atividades administrativas mas, neste post, vamos nos concentrar naquelas 5 que foram enumeradas acima.
Se quiser, clique na tag systemctl, para saber mais sobre ele.

Exemplos de uso do systemctl

Abra um terminal, para experimentar algumas funções do systemctl.
Se deseja desligar o sistema, use-o assim:

systemctl poweroff

Pode ser usado, portanto, como substituto do comando shutdown.
As opções do systemctl podem ser vistas com ‘–help’ ou usando a tecla Tab, para autocompletar.
Se vocẽ deseja “parar” o sistema, use a opção ‘halt’:

systemctl halt

Você provavelmente terá que desligar, pressionando o botão físico, após este comando.
Use ‘reboot’, para reiniciar:

systemctl reboot

ou

systemctl kexec

Para tornar o processo mais silencioso, use ‘-q’, ‘–quiet’ ou ‘–no-wall’:

systemctl --no-wall reboot

Se tiver suporte a EFI boot, é possível pedir ao firmware do seu sistema para entrar no menu de setup, no próximo boot:

systemctl --firmware-setup reboot 

systemctl firmware boot menu
Se quiser estabelecer um tempo, para esperar antes de executar o comando, use o sleep (em segundos):

sleep 60; systemctl poweroff

Tenha cuidado com a linha de comando, acima. Se você se arrepender e teclar ‘Ctrl+C’, durante a execução do sleep, irá interrompê-lo e disparar o segundo comando.
Neste sentido, o comando shutdown pode ser mais seguro.
Para hibernar o sistema:

systemctl hibernate

Para suspender:

systemctl sleep

Para suspender/hibernar-híbrido:

systemctl hybrid-sleep

Se quiser saber as diferenças entre estes 3 últimos comandos, leia este texto.

Systemd para administradores, parte 1

Depois de ter conquistado o Fedora, o OpenSUSE, entre outros sistemas operacionais UNIX like, o systemd vem se firmando no Debian e no Ubuntu.
Para administradores de sistemas, o recurso traz uma variedade de possibilidades interessantes, que vale a pena conhecer.
systemd logo
Durante o processo de boot do seu sistema GNU/Linux, é possível observar uma série de mensagens de texto dispostas na tela.
Às vezes a tela gráfica, ou splash screen se sobrepõe a estas informações, para tornar o visual mais agradável e menos confuso para usuários iniciantes. Você pode desabilitar temporariamente o splash, removendo a palavra ‘quiet‘ da linha de comando do GRUB, na inicialização do sistema.
A tecla ESC também pode ser usada para desabilitar o splash screen e permitir a exibição das informações do boot, durante a inicialização.
O texto exibido contém informações sobre os serviços que são iniciados (ou não) durante o boot, bem como sobre os drivers/módulos do kernel etc.
Para cada serviço iniciado durante o bootup, é exibido uma indicação verde ou vermelha, sobre se falhou ou obteve sucesso:
[ OK ] ou [ FAILED ].

Em máquinas mais lentas, é possível observar a tentativa de inicar cada serviço e ler todas as informações. Em máquinas mais atuais, contudo, ler estas informações on the fly é praticamente impossível.

O systemd permite iniciar serviços em paralelo e, portanto, em hardware atual, na maioria dos casos, já não é mais possível acompanhar e ler o fluxo de informações durante o boot do sistema.
Mas o systemd, tem recursos de rastreamento e registro dos serviços — o que permite que você verifique depois, com calma, o que ocorreu durante a inicialização do seu sistema.
Esta informação pode ser obtida com o utilitário systemctl:

systemctl

captura de tela das informações do systemd com o comando systemctl
A relação de ocorrências pode ser longa, mas é fácil navegar pela lista, com as setas direcionais do teclado.

Como filtrar o resultado do systemctl

O systemctl distribui o resultado em 5 colunas: UNIT, LOAD, ACTIVE, SUB e DESCRIPTION.
A coluna ACTIVE, exibe o estado em alto nível das unidades mantidas pelo systemd. O estado pode ser active (em execução), inactive ou outro.
Serviços que falharam ao ser carregados ou tiveram algum problema, pode estar em maintenance e destacados em vermelho.
Para obter mais informações sobre um item específico, use a opção status:

systemctl status syslog.target 
Failed to dump process list, ignoring: Unit syslog.target not found.
● syslog.target
   Loaded: not-found (Reason: No such file or directory)
   Active: inactive (dead)

Você pode usar o comando grep para filtrar resultados também:

systemctl | grep -i bluetooth
sys-devices-pci0000:00-0000:00:14.0-usb2-2\x2d5-2\x2d5:1.0-bluetooth-hci0.device         loaded active plugged   /sys/devices/pci0000:00/0000:00:14.0/usb2/2-5/2-5:1.0/bluetooth/hci0
sys-subsystem-bluetooth-devices-hci0.device                                              loaded active plugged   /sys/subsystem/bluetooth/devices/hci0
bluetooth.service                                                                        loaded active running   Bluetooth service
bluetooth.target                                                                         loaded active active    Bluetooth

O systemctl é uma ferramenta moderna e completa para verificar o estado de serviços, tanto quando estavam iniciando como durante sua execução. Use-o para obter detalhes sobre a situação do seu sistema.

Referẽncias

Mais sobre o systemd neste site.
http://0pointer.de/blog/projects/systemd-for-admins-1.html.