Supressão de mensagens na sequência de inicialização do Linux

1

Eu tenho alguns sistemas Linux que transmitem muita informação sobre inicialização, e eu gostaria de suprimir quase toda a saída durante a seqüência de inicialização.

Idealmente, eu gostaria que o sistema imprimisse 'Carregando ...' e não exibisse mais nada, mas especificamente o que eu quero suprimir é o 'Starting foobard [OK]'.

O sistema é baseado em centos, e o kernel não tem os recursos de 'framebuffer' necessários para que a maioria dos projetos de 'inicialização inicial' funcionem.

Idéias que consideramos:

  • Alternando para outro terminal virtual - mas não consigo fazer isso até que o /etc/rc.sysinit seja executado, o que é tarde demais.
  • Ecoando códigos ansi que tornam o texto invisível. Isso não parece funcionar. Eu tentei ^ [[8m e ^ [[24; 25r e nenhum destes trabalhou.
por Jerub 18.09.2009 / 09:22

2 respostas

4

A maioria dessas mensagens é impressa através das funções de mensagem de inicialização do LSB definidas em / lib / lsb / init-functions. Você pode criar uma versão personalizada dessas funções que não fazem nada. Isso pararia todas as mensagens de inicialização. Não manteria o kernel silencioso. No unbuntu, você pode usar o parâmetro "quiet" do kernel, que impede que o printk efetue o logging no console. Não sei se o CentOS faz algo semelhante.

    
por 18.09.2009 / 09:35
1

Você pode tentar acrescentar console = às suas opções do kernel - no entanto isso irá desativar o console completamente - talvez não o que você quer.

O Redhat / CentOS não usa o material AFSIK do lsb init-functions.

A maioria dos scripts init do Redhat usa "echo" para suas mensagens de status, então você também pode tentar sobrescrever o eco embutido em /etc/init.d/functions, assim como massacrar as funções success / failure / passed em .

Além disso, o parâmetro "quiet" do kernel funciona em todos os kernels, não apenas no Ubuntu.

    
por 18.09.2009 / 12:20

Tags