Como fazer um linux inicializável mínimo (somente com terminal) do código-fonte do kernel? [duplicado]

3

Eu quero fazer um mínimo de sistema operacional Linux que tenha apenas uma interface de terminal e comandos / aplicativos básicos (o busybox é a minha escolha para comandos / aplicativos). Eu não quero a opção de instalação no meu sistema operacional. Eu só quero que ele seja inicializado e executado completamente da RAM. Estou planejando usar o ISO-Linux como bootloader. Sem rede, sem suporte de virtualização, sem drivers desnecessários, etc. Eu quero que seja um OS muito básico. Eu baixei o código-fonte mais recente do kernel estável (v4.5) do kernel.org e o ambiente de compilação está pronto.

Minha mais uma confusão é que um kernel por padrão tem alguma interface de usuário (shell, terminal, ...) onde eu posso digitar comandos e ver a saída?

    
por Kesavamoorthi 19.03.2016 / 10:34

2 respostas

6

Tecnicamente, você pode conseguir isso. Embora o kernel não tenha nenhuma interface de usuário integrada.

Você precisa seguir as etapas abaixo:

1. Create a initramfs with static busybox and nothing else.
This initramfs will have few necessary directories: like proc, sys, tmp, bin, usr, etc

2. Write a "/init" script, whose main job will be:
   a. mount the procfs,tmpfs and sysfs.
   b. Call busybox's udev i.e. mdev
   c. Install the busybox command onto virtual system by executing busybox install -s
   d. Calling /bin/sh

3. Source the initramfs directory while compiling the kernel. You can do so by flag: CONFIG_INITRAMFS_SOURCE

4. Compile your kernel.

5. Boot off this kernel and you will get the shell prompt with minimal things.

Embora, eu escreva acima notas de uma forma muito formal. Você pode ajustá-lo da maneira que deseja.

ATUALIZAÇÃO:

Siga este link para algumas diretrizes.

    
por 19.03.2016 / 10:43
0

Se você tiver apenas conhecimento mínimo na criação de um kernel, poderá investigar distribuições mínimas como CoreOS . Outros (que eu não usei) são Project Atomic, Snappy Ubuntu Core, RancherOS, Photon ...

Se sua exigência é rodar em RAM, existem distribuições minimalistas de resgate e / ou LiveCD ou distribuições embutidas que provavelmente poderiam ser adaptadas para seu uso (o que é esse uso, BTW?) com menos trabalho do que criar uma distro a partir do zero.

    
por 19.03.2016 / 11:12