Fala pessoal.
Existem diversas dicas, aqui mesmo no VOL, sobre como alterar o modo de inicialização padrão do
GNU/Linux (
runlevel).
De uma forma geral, basta editar o arquivo
/etc/inittab e realizar a configuração na última linha, de acordo com o que você quer.
Exemplo de um arquivo
inittab, padrão
Red Hat, para iniciar o sistema em modo gráfico:
# Default runlevel. The runlevels used are:
# 0 - halt (Do NOT set initdefault to this)
# 1 - Single user mode
# 2 - Multiuser, without NFS (The same as 3, if you do not have networking)
# 3 - Full multiuser mode
# 4 - unused
# 5 - X11
# 6 - reboot (Do NOT set initdefault to this)
#
id:5:initdefault:
Bom, mas o que vou falar aqui não é sobre o inittab, e sim sobre o
systemd.
O Fedora (a partir da versão 15) vem utilizando um sistema de chamado systemd, que mudou um pouco o jeito de fazer algumas tarefas. Uma delas é a inicialização do sistema GNU/Linux.
Recentemente, instalei o
Fedora 18 em uma máquina virtual e precisei alterar o modo de inicialização para modo texto e, ao abrir o arquivo
/etc/inittab, vi a seguinte "mensagem":
# inittab is no longer used when using systemd.
#
# ADDING CONFIGURATION HERE WILL HAVE NO EFFECT ON YOUR SYSTEM
#
# Ctrl-Alt-Delete is handled by /etc/systemd/system/ctrl-alt-del.target
#
# systemd uses 'targets' instead of runlevels. By default, there are two main targets:
#
# multi-user.target: analogous to runlevel 3
# graphical.target: analogous to runlevel 5 #
# To set a default target, run:
#
# ln -s /lib/systemd/system/.target /etc/systemd/system/default.target
#
Traduzindo: "inittab" não é mais utilizado quando o systemd é usado. Colocar configurações neste arquivo não terá nenhum efeito sobre o sistema.
Então, como é que agente vai fazer para alterar o modo de inicialização do sistema?
O próprio arquivo informa como devemos fazer isso, mas é bom, sempre bom, fazer uma pesquisa para ter certeza.
Esta página explica como fazer e também dá informações adicionais sobre o systemd:
Antes de tudo (parece idiota), você precisa abrir o arquivo
/etc/inittab para ter certeza de que o
systemd está instalado. Outra maneira de saber, é verificando se existe os pacotes do systemd instalados no seu sistema:
# rpm -qa | grep systemd
systemd-libs-195-15.fc18.i686
systemd-195-15.fc18.i686
systemd-sysv-195-15.fc18.i686
Se o arquivo
/etc/inittab "falar" alguma coisa sobre o systemd, e a saída do comando
rpm apresentar estes pacotes, então provavelmente seu sistema usa o systemd.
O systemd funciona através de "targets" (ou destinos) e, segundo o site de referência, é um substituto bem mais flexível para tratar (entre outras coisas) os
runlevels.
Então, vamos ao trabalho:
- O runlevel 3 (modo texto) é emulado pelo arquivo: multi-user.target
- O runlevel 5 (modo gráfico) é emulado pelo arquivo: graphical.target
Existem links simbólicos para facilitar as coisas:
- "runlevel3.target" é um link simbólico para "multi-user.target".
- "runlevel5.target" é um link simbólico para"graphical.target".
Se você quer apenas mudar de runlevel atual, digite os seguintes comandos (testados no Fedora 18):
Para ir para modo texto (runlevel 3):
# systemctl isolate multi-user.target
Ou:
# systemctl isolate runlevel3.target
Para ir para modo gráfico (runlevel 5):
# systemctl isolate graphical.target
Ou:
# systemctl isolate runlevel5.target
Se você quer alterar de forma "definitiva" o modo padrão de inicialização, vai precisar seguir alguns passos. Antes de tudo, é preciso apagar o links simbólico existente.
Para apagar, execute o seguinte comando:
# rm /etc/systemd/system/default.target
Agora, basta criar um novo link simbólico apontando para o destino pretendido. Para usar o modo texto (runlevel 3) como padrão, crie o seguinte link:
# ln -sf /lib/systemd/system/multi-user.target /etc/systemd/system/default.target
Para usar o modo gráfico (runlevel 5) como padrão, o comando é este:
# ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target
Para verificar se tudo está correto, verifique o link criado:
# ls -la /etc/systemd/system/default.target
A saída deste comando deve mostrar para qual arquivo o link está apontando:
...../etc/systemd/system/default.target --> ln -sf /lib/systemd/system/multi-user.target
Ou:
...../etc/systemd/system/default.target --> ln -sf /lib/systemd/system/graphical.target
Agora basta reiniciar o computador e pronto, o modo de inicialização padrão definido estará funcionando.
Abração a todos.
Mad2ogs
Prezado Thiago, muito obrigado pela dica, muito bem escrita com clareza, concisão e precisão, e que efetivamente "salvou a Pátria".
Gostaria de deixar apenas um comentário, que não refere-se à dica propriamente dita, mas aos desenvolvedores do "systemd", ou aos seus mantenedores, ou ainda aos vários distribuidores Linux, que deveriam criar um sistema (ou ferramentas) mais fáceis para a administração, pois mesmo quem "usa e abusa" do Linux há aproximadamente 20 anos, como é o meu caso, sente dificuldades e perda de tempo na hora de realizar configurações no sistema; quanto mais aos usuários mais novos e iniciantes no mundo Linux, que devem ficar bastante confusos, desorientados e desanimados!
Sinceramente, não sei por que "reinventar a roda", uma vez que o "init" funcionava tão bem, era simples e rápido de configurar, além de ser um sistema robusto e padronizado em todas as distribuições, por anos a fio!
Agora inventaram esse tal de "systemd", sistema complexo, prolixo e difícil de configurar, com muitos arquivos de configuração diferentes espalhados pelo sistema de arquivos da máquina, o que acredito, dificulta até mesmo a gestão do aspecto de segurança.
E o pior, não é padrão em todas as distribuições!
Uma verdadeira afronta à filosofia "KISS" (Keep It Simple, Stupid), e ao padrão POSIX, o que tornou, entre outras inúmeras qualidades, o Linux o sistema operancional livre mais popular do mundo - simples, robusto, estável, seguro e poderoso!
Mas se continuar assim, com cada distribuição inventando suas idiossincrasias e despadronizando o Sistema, não sabemos até quando... Parece até "conspiração do Tio Bill" para acabar com a concorrência...
Simplesmente lamentável !
Um grande abraço, e mais uma vez, muito obrigado pela preciosa dica!