Debian 7.3.0 - O GRUB é necessário?

0

Tenho andado a brincar com o Debian ultimamente, pois pareceu-me o passo mais lógico depois de iniciar a minha jornada no Linux com o Ubuntu (eu realmente não gosto do Unity e instalar o GNOME ao lado me incomoda, não desinstala completamente o Unity sem estragar muito da função restante do desktop.) Uma coisa que sempre me atormentou durante a instalação é a opção de instalar o GRUB.

Parece-me que não deveria ser necessário e deveria apenas inicializar diretamente no kernel, como o Ubuntu e o Windows, em vez de eu selecionar um, e minha escolha é sempre a mesma - a opção padrão.

Durante a instalação, o texto explicando a opção diz algo como "Precisamos fazer a Debian inicializável" - Qual é o principal motivo para minha hesitação em selecionar "não". Eu certamente quero que ele seja inicializado! Eu poderia aproveitar o tempo e ver o que acontece se eu selecionar "não", mas acho que seria sensato perguntar a todos vocês primeiro.

É seguro selecionar "não" para a instalação do GRUB? O Debian ainda inicializará se não estiver instalado? Se é seguro selecionar "não", há alguma desvantagem nessa opção?

    
por Flummox 18.01.2014 / 05:43

2 respostas

1

Ummm ... Como eu coloco isso. Debian é uma distro linux que roda em um computador, mas para levá-lo a um estado em que ele possa começar a funcionar, é necessário um gerenciador de inicialização. A distribuição basicamente pega o GRUB ou qualquer outro gerenciador de inicialização até que ele esteja pronto para ser executado. Você poderia usar o syslinux como uma alternativa ao GRUB.

    
por 18.01.2014 / 05:59
0

Para expandir a resposta aceita…

Quando um PC x86 é iniciado, sua CPU está executando em modo real de 16 bits e executa o código armazenado no BIOS. Depois que o BIOS executa o POST e a configuração inicial, ele lê os primeiros 512 bytes do início do disco de inicialização e transfere a execução para lá - é o código inicial de um gerenciador de inicialização que deve fazer o resto.

Agora considere o que há de resto. No caso mais simples, o gerenciador de partida deve ser capaz de localizar e carregar a imagem do kernel e transferir a execução para lá. Carregador de Linux padrão de fato mais antigo, lilo , mantinha um mapa contíguo de todos os setores nos quais o kernel estava armazenado. Mas a imagem mudou um pouco desde então: mais sistemas de arquivos entraram em uso, tornou-se habitual manter o kernel em um dispositivo RAID ou em um disco lógico LVM ou em uma pilha de todos eles. Computadores começaram a apresentar mais discos conectáveis, o que significa ordenação arbitrária de sua inicialização e, portanto, problemas com a nomenclatura. Agora, considere que, atualmente, criar um sistema genérico baseado no Linux requer algumas ferramentas user-space disponíveis no início, que são mantidas no chamado "initrd" (disco de RAM inicial) ou "initramfs" ( sistema de arquivos RAM inicial), então, na verdade, o carregador de boot carrega não apenas o kernel do Linux, mas também um initramfs correspondente para ele.

Portanto, a tarefa do carregador de inicialização é:

  1. Bootstrap em si - esses 512 bytes podem apenas encontrar e carregar algo mais complicado.
  2. Descubra e inicialize todas as camadas necessárias para acessar o sistema de arquivos de inicialização (o sistema de arquivos que contém o kernel e seus initramfs).
  3. Carregue tudo e transfira o controle para o kernel.

Agora considere que a maioria das pessoas acham útil poder visualizar e controlar esse processo de alguma forma, portanto, há um requisito para que o gerenciador de inicialização possa apresentar um menu de uma classificação e uma capacidade de ajustar o que será carregado. e como. Uma habilidade para carregar um kernel alternativo também pode ser um bônus (por exemplo, um novo kernel instalado no repositório de atualizações de segurança da Debian nunca remove o kernel existente - ao invés disso, ele é mantido de lado e está disponível para inicialização se uma regressão for encontrada em um novo).

Assim, como pode ser visto, a menos que lidemos com algum tipo de sistema embarcado com requisitos de memória / armazenamento muito apertados e em que ninguém controle como o kernel é carregado, não é razoável colocar essa funcionalidade diretamente no kernel , mais ainda, já que o gerenciador de partida é um software inerentemente dependente da plataforma altamente dependente de hardware. É por isso que o boot loader existe e porque em um sistema genérico a necessidade de usar um é principalmente inevitável.

    
por 19.01.2014 / 14:39

Tags