Remova as mensagens de inicialização (todo o texto) em Jessie

26

Eu tenho um aplicativo python personalizado que queria iniciar automaticamente no RPi com a tela de toque oficial.

Isso costumava funcionar bem sem que uma grande quantidade de mensagens de inicialização aparecesse até a atualização mais recente em Jessie na área de trabalho PIXEL. Meu script 'asplashscreen' que eu costumava usar agora está cheio de mensagens de inicialização novamente.

Eu joguei o 'asplashscreen' e, como o Plymouth finalmente foi corrigido para funcionar (após o lançamento do PIXEL), agora o Plymouth mostra uma bonita tela de inicialização, mas os métodos antigos de silenciar as mensagens de inicialização não parecem mais funcionar.

Como posso remover TODAS as mensagens de inicialização (incluindo login automático e kernel)?

G Trawo
fonte
Essa não é uma resposta, mas uma pergunta ao G Trawo sobre a tela do console permaneceu na tela de login do TTY3, em vez da tela do prompt de comando do TTY1. Como faço para voltar automaticamente para TTY1? FYI, eu estou usando o pi framboesa 7" LCD sem a HDMI.
caixa
@cash Não sei como você voltaria automaticamente . Você pode nem precisar mudar para TTY3, pois algumas das opções abaixo podem se livrar da maioria das mensagens. Mas meu aplicativo inicia no TTY1, provavelmente desde que eu o inicio com 'startx' (o o aplicativo inicia após o início do servidor x).
L Trawo
2
Adicione ao /boot/cmdline.txtfbcon=map:2
Mich
O comentário acima de @Mich é ouro !! Por favor, faça uma resposta para que eu possa votar. A resposta aceita não funcionou mais no meu mais recente Raspbian #
Boy

Respostas:

33

Observe que remover a saída da mensagem também pode prejudicar sua capacidade de solucionar problemas do seu sistema depois. Você pode esperar até estar nos estágios de acabamento antes de aplicar essas correções.

Em dezembro de 2016, muitos dos métodos antigos pareciam ter parado de funcionar. Criei esta pergunta / resposta porque levei muitas horas para agregar todas as soluções. O que fiz para remover TODO o texto de inicialização (até mesmo as mensagens de login):

1.) Altere /boot/cmdline.txt

sudo nano /boot/cmdline.txt

Mude o console de tty1 para

console=tty3 

Adicione isso ao final da linha. 'loglevel = 0' remove a maioria das mensagens da inicialização. Você também pode usar 'loglevel = 3', mas algumas mensagens de inicialização podem aparecer novamente.

quiet splash loglevel=0 logo.nologo vt.global_cursor_default=0

Se você for usar o Plymouth, adicione isto:

plymouth.ignore-serial-consoles 

2.) Diga ao dmesg para ficar quieto

sudo nano /etc/rc.local

Adicione isso antes da 'saída 0':

#Suppress Kernel Messages
dmesg --console-off

Isso deve cuidar da maioria das mensagens de inicialização até agora. O nº 2 também cuidou do 'watchdog watchdog0: o watchdog não parou!' mensagem no desligamento para mim.

3.) Altere o login automático no systemd (oculta a mensagem de login quando o login automático acontece)

sudo nano /etc/systemd/system/autologin\@.service

Altere seu login automático ExecStart de:

ExecStart=-/sbin/agetty --autologin pi --noclear %I $TERM

Para:

ExecStart=-/sbin/agetty --skip-login --noclear --noissue --login-options "-f pi" %I $TERM

Certifique-se de alterar 'pi' para o nome de usuário que você usa!

4.) Altere /etc/pam.d/login (remove a versão do Kernel da exibição quando você faz login automaticamente)

sudo nano /etc/pam.d/login

Mude a linha

session    optional   pam_exec.so type=open_session stdout /bin/uname -snrvm

Ser estar

session    optional   pam_exec.so type=open_session stdout

5.) Adicione .hushlogin

touch ~/.hushlogin

ou remover mensagem do dia -MOTD (alternativa a 5)

sudo update-rc.d motd remove

Agora, minha inicialização mostra apenas a tela de inicialização Plymouth e entra na minha GUI python.

G Trawo
fonte
Bom trabalho, mas não me dá uma inicialização completamente silenciosa. Ainda recebo o padrão do arco-íris, o logotipo do Raspberry Pi e a tela de boas-vindas do Pixel e algumas linhas de texto. Isso é com Jessie.
21350 Chiwda
@Chiwda Pessoalmente, gosto do padrão do arco-íris, pois indica que a unidade está inicializando. Eu não o categorizaria como uma 'mensagem de inicialização', como texto. Dito isto, colocar disable_splash = 1 em /boot/config.txt o removeria. Além disso, não uso a área de trabalho do Pixel, pois tenho um aplicativo personalizado sendo iniciado. Então, eu realmente não posso ajudá-lo com nada relacionado a Pixel.
G Trawo 3/17/17
A partir de agora, Passo 1 parece não fazer diferença - algo deve ter mudado lá (novamente) :)
mlvljr
@mlvljr A Etapa 1 nunca fez muita diferença. É o passo 2 que realmente ocultou o texto de inicialização em sua maior parte. Dito isto, se você aplicar TODAS as etapas acima, ele deverá cuidar das mensagens de inicialização. Ainda faz isso por mim, mesmo após uma atualização recente.
L Trawo
@GTrawo interessantes, muito obrigado, vou dar-lhe outro experimentar então :)
mlvljr
9

1. Remova a tela inicial do arco-íris insira a descrição da imagem aqui

sudo nano /boot/config.txt

adicione abaixo da linha até o final do arquivo

disable_splash = 1

verifique se esta configuração entra em vigor (opcional)

reinicialização do sudo

2. Esconda o logotipo Raspberry insira a descrição da imagem aqui

sudo nano /boot/cmdline.txt

Adicione a linha abaixo ao final do arquivo

logo.nologo

verifique se esta configuração entra em vigor (opcional)

reinicialização do sudo

3. Esconda as mensagens

sudo nano /boot/cmdline.txt

Adicione a linha abaixo ao final do arquivo

quieto

mudar console

console = tty1 -> console = tty3

verifique se esta configuração entra em vigor (opcional)

reinicialização do sudo

4. Alterar tela inicial

insira a descrição da imagem aqui

copie seu splash personalizado para o diretório inicial e substitua o raspberry's splash.png

sudo cp ~ / splash.png /usr/share/plymouth/themes/pix/splash.png

verifique se esta configuração entra em vigor (opcional)

reinicialização do sudo

5. Esconda o cursor

Adicione a linha abaixo ao arquivo /boot/cmdline.txt

vt.global_cursor_default = 0

verifique se esta configuração entra em vigor (opcional)

reinicialização do sudo

6. Resultado Confira o vídeo neste link

ThanhLe
fonte
0

Eu teria comentado a resposta de outra pessoa, mas ainda não tenho reputação suficiente. Para tudo isso, eu acrescentaria que (a partir do Debian / Raspbian Buster, pelo menos), parece que dmesgerros irromperão em Plymouth e substituirão sua tela inicial personalizada como uma mensagem do console. Por exemplo, a notificação típica de subtensão fará isso. É possível que a subtensão tenha sido promovida de STDOUT para STDERR nesta versão principal.

Pode ser necessário adicionar a seguinte linha ao final de /etc/rc.localantes da saída final: dmesg --console-off.

OutsourcedGuru
fonte