Não, não realmente. Você pode iniciar o kernel com os parâmetros init=/bin/bash
para um sistema mínimo.
Eu estou trabalhando em uma versão light do Linux sem nenhum motivo específico além de ver o quão pequeno eu poderia fazê-lo. Eu queria saber se o INIT era necessário, ou se eu poderia executar todas as tarefas relacionadas ao INIT (fsck, desmontar, etc) por scripts manuais / bash?
Eu não preciso de funcionalidade multiusuário (ou muito de qualquer coisa para esse assunto). Comecei com uma base do Gentoo 2.0.2 Instale com o kernel 2.6.38.
Primeiro, você deve distinguir duas coisas: o programa chamado init
e um processo init que o linux executa após carregar e executar a inicialização básica - que também é chamada init pelo kernel.
O primeiro é um programa , assim como qualquer outro, cuja tarefa é iniciar a inicialização do sistema executando vários outros programas e controlar seu fechamento. O programa mais popular como esse é sysvinit . Esta é a implementação mais popular de um "pai de todos os processos", encontrada na maioria das distribuições padrão do Linux e tipicamente existe como /sbin/init
.
O segundo é apenas um comando que o kernel do linux conhece e é executado automaticamente na inicialização. Então você pode dizer ao kernel para rodar qualquer outro programa no lugar do init. Por exemplo, uma abordagem popular para fazer a recuperação do sistema é dizer ao linux para executar /bin/bash
ou um applet de /sbin/busybox
(veja os comentários abaixo). Isso pode ser feito fornecendo o nome do programa como parâmetro de inicialização (como init=/bin/bash
).
Observe que quando o processo init é encerrado, o sistema é interrompido se tornando praticamente inutilizável.
Além do bash e do busybox, existem várias substituições de inicialização que podem fazer mais ou menos o que o init faz. Você pode querer dar uma olhada em minit , runit , cinit , jinit , upstart ou iniciando . Mas se você apontar uma solução absolutamente mínima sem paralelismo de inicialização ou recursos avançados, o busybox pode ser a melhor escolha.