Atualização: a resposta abaixo agora está obsoleta
Para muitas distribuições agora, o padrão é systemd, em vez de sysvinit. A resposta abaixo foi escrita com o sysvinit em mente. A resposta mais atualizada (e a que você deve usar se tiver o systemd como seu sistema init) é a resposta do golem .
resposta sysvinit (obsoleta na maioria das distribuições atuais):
Você deseja tornar o nível de execução 3 o nível de execução padrão. Em um terminal, mude para root e faça o seguinte:
[user@host]$ su
Password:
[root@host]# cp /etc/inittab /etc/inittab.bak #Make a backup copy of /etc/inittab
[root@host]# sed -i 's/id:5:initdefault:/id:3:initdefault:/' /etc/inittab #Make runlevel 3 your default runlevel
Qualquer coisa após (e incluindo) o segundo #
em cada linha é um comentário para você, não é necessário digitá-lo no terminal.
Veja a página da Wikipedia sobre níveis de execução para obter mais informações.
Explicação do sed
comando
- O
sed
comando é um editor de fluxo (daí o nome), você o utiliza para manipular fluxos de dados, geralmente através de expressões regulares .
- Aqui, estamos dizendo
sed
para substituir o padrão id:5:initdefault:
pelo padrão id:3:initdefault:
do arquivo /etc/inittab
, que é o arquivo que controla os níveis de execução. A sintaxe geral para uma sed
pesquisa e substituição é s/pattern/replacement_pattern/
.
- A
-i
opção informa sed
para aplicar as modificações no local. Se isso não estivesse presente, sed
teria gerado o arquivo resultante (após a substituição) para o terminal (mais geralmente para a saída padrão).
Atualizar
Para voltar ao modo texto, basta pressionar CTRL+ ALT+ F1. Isso não interromperá sua sessão gráfica, simplesmente retornará ao terminal em que você se conectou. Você pode voltar para a sessão gráfica com CTRL+ ALT+ F7.
startx
como posso voltar à linha de comando?sed
comando.sed
em arquivos de configuração, a menos que você saiba exatamente o que está fazendo. A linha em questão também pode ser um comentário e ainda assim seria alterada. Portanto, a expressão regular deve ser mais precisa, pelo menos exigir que a stringid:...
esteja no início da linha. Como a página de manual não diz nada sobre como os espaços em branco são tratados, você provavelmente deseja usars/^ *id:5:initdefault:
(que não incluiTab
caracteres, a propósito).Atualização para RedHat / CentOS 7 que mudou de sysvinit para systemd.
Para alternar da GUI para a CLI:
systemctl isolate multi-user.target
Para alternar da CLI para a GUI:
systemctl isolate graphical.target
Para definir o CLI como um padrão de nível de execução ( alvo na terminologia systemd):
systemctl set-default multi-user.target
. Analogamente para GUI:systemctl set-default graphical.target
* CLI = Interface da Linha de Comandos = Modo da Linha de Comandos
fonte
Primeiro mude o usuário para o root.
Digite a senha root.
Use seu editor favorito para modificar esta linha
/etc/inittab
:Altere 5 para 3. Quando você (re) inicializa o computador, ele o leva para a linha de comando e não para a GUI.
fonte
Além de mudar
/etc/inittab
, você também pode dizer ao kernel em sua linha de comando para qual nível de execução de destino deve ser passadoinit
uma vez iniciado. Isso é feito simplesmente anexando o nível de execução desejado à linha de comando (deve ser o último argumento que acredito).Você pode fazer isso como algo único durante a inicialização, desde que o carregador de inicialização permita alterar a linha de comando do kernel, ou você pode duplicar a entrada na configuração do carregador de inicialização e escolher a correta ao inicializar (útil quando você inicializa em vários níveis de execução frequentemente).
Para sistemas que usam
systemd
o processo, é semelhante, mas significa mais digitação, já que a string mágica anexada à linha de comando do kernel está na forma desystemd.unit=desired.target
.Quanto a
startx
isso, ele também pode iniciar sessões adicionais, fornecendo a ele um número de exibição X não utilizado (a numeração começa em 0):startx -- :1
iniciará o servidor X na exibição: 1, localizando-o na primeira VT não utilizada (geralmente VT8, pois os 6 primeiros são geralmente Linux consoles e 7 é usado pela primeira sessão X em execução). Observe que o servidor X geralmente precisa de privilégios de root; portanto, você deve fazer isso comoroot
(o que não é uma boa ideia) ou o binário deve ser configurado como root (a necessidade disso é normalmente removida usando um gerenciador de exibição).fonte
inittab
faz muito mais sentido, pois geralmente se quer trazer o sistema para o mesmo estado o tempo todo.Em uma nota lateral, se você já inicializou no modo gráfico e gostaria de mudar para o modo de texto, basta pressionar Ctrl+ Alt+ F1e voltar ao modo gráfico por Ctrl+ Alt+ F7.
O Linux possui, por padrão, 6 terminais de texto e 1 terminal gráfico. Você pode alternar entre esses terminais pressionando Ctrl+ Alt+ Fn. Substitua
n
por 1-7. F7levaria você ao modo gráfico apenas se inicializado no nível 5 de execução ou se você iniciou o X usando ostartx
comando; caso contrário, apenas mostrará uma tela em branco F7.fonte
Mesmo sendo um tópico bastante antigo, pode ser útil. No sistema que usa
systemd
, / etc / inittab não está mais em uso. O método é bastante simples:Modo terminal
Modo Gráfico
fonte
Depois de substituir o nível de execução padrão para
id:3:initdefault:
nos/etc/inittab
usando seu editor de texto preferido (como dito anteriormente), é muito importante verificar se há alguma Plymouth (tela inicial) instalado em seu sistema. Nesse caso, será necessário remover a instalação ou remover a palavra-chave splash de /boot/grub/grub.cfg usando o seu editor de texto preferido (vim, pico ou outros). Para remover o plymouth:Edite seu grub.cfg:
Por fim, atualize a configuração do grub:
Na próxima inicialização, você terá apenas a tela de login no modo de texto. É isso aí.
Aproveite a caixa do Linux!
fonte
A instalação do oracle-linux 7 por padrão requer a opção de instalação mínima. Você deve alterá-lo para instalação com o modo GUI no momento da instalação. Isso resolveu meu problema ao não conseguir usar o modo de usuário gráfico.
fonte
Eu tentei systemctl, update-rc.d e até mesmo editando a configuração do GRUB, mas nada funcionou. Então eu comentei o gerenciador de exibição padrão em / etc / X11 / default-display-manager, reiniciei e finalmente: o terminal !!!! É simples assim!
fonte
Usar
e reinicie a VM. A VM entrará no modo CLI.
fonte