Como entrar automaticamente (sem inserir nome de usuário e senha) (no modo de texto)

11

Instalei o Ubuntu 12.04 e editei o arquivo / etc / default / grub para inicializar automaticamente no modo de texto. mas toda vez que ligo o computador, ele solicita nome de usuário e senha (no modo de texto), queria que ele fizesse login automaticamente sem solicitar nome de usuário e senha; portanto, no modo gráfico, fui para "Configuração do sistema-> contas de usuário" e verifiquei o "Login automático", mas não funcionou. então o que devo fazer para fazer login automaticamente, mesmo no modo de texto?

Navid777
fonte
Tente este link
Peachy
Esta pergunta adiciona a condição de que um ID do usuário e uma senha não sejam inseridos no modo de texto para fazer logon.
John S Gruber

Respostas:

10

Para inicializar no modo de texto

sudo vim / etc / default / grub

e altere a seguinte linha:

GRUB_CMDLINE_LINUX_DEFAULT="text"

saia e digite:

 sudo update-grub

Faça login automaticamente no modo de texto sem especificar ID do usuário ou senha

Versões iniciadas do Ubuntu

Adicione -a <your-user-name>à linha:

exec /sbin/getty -8 38400 tty1

no arquivo /etc/init/tty1.conf

igual a:

exec /sbin/getty -8 38400 tty6 -a gruber

/etc/init/tty1.conf é o trabalho inicial que é executado no momento apropriado para iniciar a sessão do terminal no tty1. A adição da -aopção informa ao getty para chamar o programa de login com a opção -f para entrar no usuário, ignorando o prompt do usuário do getty e o prompt da senha do login.

Upstart é o sistema Ubuntu que opera como o processo de inicialização do kernel (processo 1).

Eu testei isso no meu tty6 e funcionou muito bem. Por causa da linha inicial de reaparecimento, se você sair do shell, ele será reiniciado automaticamente.

Versões de Systemd do Ubuntu

Versões mais recentes do Ubuntu usam principalmente systemd para gerenciar processos do sistema. Portanto, existem novas maneiras de fazer as coisas.

O uso de systemd tty também é um pouco diferente, com os terminais gráficos possivelmente rodando nos primeiros terminais virtuais. O tty6 está reservado para ser um terminal virtual de texto com systemd e provavelmente haverá outros também.

Para que o tty6 seja assinado ao entrar:

sudo systemctl edit getty@tty6

Um nano editor aparecerá em um arquivo temporário. Digite o seguinte nesse editor:

 [Service]
 ExecStart=
 ExecStart=-/sbin/agetty -o '-p -f gruber' -a gruber --noclear %I $TERM

Saia do editor.

Colocar a linha ExecStart = extra não é um erro de digitação. é muito importante, pois diz ao systemd para esquecer o parâmetro ExecStart original que ele já conhece (em /lib/systemd/system/[email protected]) para que você possa substituir o ExecStart.

Você pode verificar os resultados com o seguinte comando:

 systemd-analyze verify [email protected]

Vejo alguns avisos quando tento isso, mas não sobre o que estamos fazendo aqui.

Se já existe um processo tty em tty6, você precisará reiniciá-lo para ver os resultados.


Para descobrir isso, consultei a excelente resposta em /ubuntu//a/659268/63886 . Ali Muru usou o mesmo objetivo de um exemplo de como adaptar o systemd. Sua linha ExecStart é:

 ExecStart=-/sbin/agetty -a muru --noclear %I $TERM

A diferença parece ser mais algumas variáveis ​​ambientais relacionadas ao sistema que aparecem na minha versão.

O resultado final da edição acima é a criação de um arquivo chamado override.conf em /etc/systemd/system/[email protected]/, contendo exatamente o que você digitou acima. Se você fosse criar esse arquivo, seria necessário executar o systemctl daemon-reloadcomando para que o systemd o reconhecesse e, em seguida, possivelmente reiniciar qualquer processo agetty existente nesse console virtual. systemctl --edit cuida do daemon-reload para você.

John S Gruber
fonte
1
tty1funcionou bem para mim.
Razzak
1
Não existe são / etc / init / tty * arquivos no meu sistema
ka3ak
@ ka3ak Obrigado por trazer isso à tona. Os sistemas systemd e os arquivos de configuração de inicialização mais recentes do Ubuntu são diferentes em conteúdo e local. Atualizei a resposta com uma seção systemd. Se você decidir tentar, leia também a resposta de Muru.
John S Gruber
+1 para solução baseada em systemd
Paul Grinberg
3

abra o terminal e faça o

sudo kate /etc/default/grub

encontre esta linha e altere como mostrado abaixo

GRUB_CMDLINE_LINUX_DEFAULT="text"

Agora feche o editor e faça como

sudo update-grub 

e reinicie agora

rɑːdʒɑ
fonte
Eu gosto desta resposta, mas você pode querer adicionar um de: a: seção para o encontrar esta linha e mudança parte
RobotHumans
Eu segui as instruções, mas ele ainda é inicializado na GUI. Poderia ser porque eu estou usando caixa virtual?
errorhandler 26/05
1

sudo gedit etc/default/grub

e substitua

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

para

GRUB_CMDLINE_LINUX_DEFAULT="text"

Comente também GRUB_HIDDEN_TIMEOUT = 0 Esta linha é para mostrar o menu GRUB (o comentário deve colocar "#" na linha)

sudo update-grub

e para começar x basta digitar startx

angelosclearchus
fonte
1
Não, eu fiz isso antes, eu só quero que o modo de texto não pedir nome de usuário e senha
Navid777
0
sudo update-rc.d -f gdm remove

Se você usa o Kubuntu, substitua gdm por kdm no comando acima.

se ainda executar a inicialização / desligamento gráfico, mas o deixará cair na linha de comando após a inicialização. Você provavelmente deve verificar a configuração do grub. Para isso clique aqui

Mitch
fonte
Eu tentei isso, mas ele ainda botas para o GUI
ErrorHandler
Então você pode tentar a configuração do GRUB.
Mitch