É possível instalar o Ubuntu através da rede?

11

Eu gostaria de instalar o Ubuntu para quase 120 usuários. Mas é muito difícil usar USB e unidades.

Alguma sugestão?

Vishnu Murali
fonte

Respostas:

11

Você pode instalar um sistema Ubuntu (normalmente um sistema Ubuntu Server, mas não precisa ser) e usá-lo como servidor para inicializar o PXE e instalar os outros. Os BIOSs nos clientes (onde você deseja instalar o Ubuntu) devem suportar PXE (isto é, inicialização de rede ) para que isso funcione. Mas a maioria dos BIOS faz atualmente.

Você também poderá fazer isso com um sistema não-Ubuntu como host, se já o tiver configurado e souber configurar os servidores necessários em seu sistema não-Ubuntu.


O artigo da wiki de ajuda do PXEInstallServer Ubuntu explica como configurar um sistema Ubuntu como seu servidor PXE e como instalar o Ubuntu em outros sistemas a partir dele. Seria difícil resumir os pontos principais - os detalhes são muito importantes. Então, aqui está a coisa toda (com pequenas alterações de formatação e pontuação):

Introdução

Isso o guiará na execução de um servidor Ubuntu como servidor de instalação PXE. Você precisará executar um servidor DHCP na sua rede, não necessariamente este servidor, mas você precisa dele.

Instalando Pacotes Necessários

Você precisará instalar os seguintes pacotes: inetutils-inetd (anteriormente netkit-inetd), tftpd-hpa(consulte Instalando o Software ).

  • Para o Ubuntu 10.04, existe um erro com inetutils-inetd. Ele escuta apenas no IPv6 e não no IPv4. Como solução rápida, você pode usar openbsd-inetd.

Se este também for o seu servidor DHCP, instale o servidor dhcp contido no pacote a seguir: dhcp3-server(consulte Instalando o Software ).

Configurar tftpd-hpa

Você precisará dizer ao tftpd-hpa para iniciar seu daemon (o que não ocorre por padrão). Para fazer isso, edite o /etc/default/tftpd-hpaarquivo e verifique se ele se parece com isso:

#Defaults for tftpd-hpa
RUN_DAEMON="yes"
OPTIONS="-l -s /var/lib/tftpboot"

Em seguida, execute o script de inicialização para realmente iniciar o daemon:

/etc/init.d/tftpd-hpa restart

Configurar dhcpd

Se o seu servidor pxe também for o seu servidor dhcp, será necessário algo como /etc/dhcp3/dhcpd.conf:

subnet 192.168.0.0 netmask 255.255.255.0 {
        range 192.168.0.100 192.168.0.200;
        filename "pxelinux.0";
}

Se você já possui um servidor dhcp, aponte-o para o servidor pxe fazendo o seguinte:

subnet 192.168.0.0 netmask 255.255.255.0 {
    <other config here>
    filename "pxelinux.0";
    next-server <pxe host>;
}

Certifique-se de reiniciar o servidor dhcp para que as alterações entrem em vigor:

sudo /etc/init.d/dhcp3-server restart

Configurar tftpd-hpa

tftpd-hpaé chamado de inetd. As opções passadas para tftpd-hpa o início são encontradas em/etc/inetd.conf

Os padrões são bons para nós, você /etc/inetd.confdeve ter uma entrada como esta:

tftp    dgram   udp    wait    root    /usr/sbin/in.tftpd /usr/sbin/in.tftpd -s /var/lib/tftpboot

(Embora seja necessário editar este arquivo e substituí-lo udppor udp4, como tftpd-hpaparece esperar um endereço IPv6 agora.)

Agora vamos copiar os arquivos necessários do CD do Ubuntu:

sudo cp -r /media/cdrom/install/netboot/* /var/lib/tftpboot/

Se o servidor dhcp emitir informações corretas de rede e seus clientes pxe tiverem acesso à rede, então você poderá fazer uma instalação do Ubuntu usando repositórios da Internet.

No entanto, quero ir um pouco mais longe e instalar tudo a partir do servidor de instalação, além de personalizar alguns dos pacotes.

Instale o apache

Atualmente, as instalações do nfs não são bem suportadas (por favor, corrija-me se estiver errado), portanto, instalaremos por http. Para isso, também precisamos de um servidor da web em nosso servidor de instalação: instale o seguinte pacote: apache(consulte Instalando o Software ).

Copiando arquivos do Ubuntu

Crie um diretório ubuntu na raiz do documento do apache recém-instalado e copie todo o conteúdo do CD Ubuntu Alternate para esse diretório:

mkdir /var/www/ubuntu
cp -r /media/cdrom/* /var/www/ubuntu/

Customizando a Instalação

Existe um pacote chamado system-config-kickstartfrontend GUI para a criação de arquivos do kickstart. O arquivo kickstart informa ao instalador de onde obter seus pacotes, o que instalar e várias outras configurações úteis. Consulte KickstartCompatibility para obter mais informações.

Este pacote não precisa ser instalado no seu servidor de instalação, pode estar em uma área de trabalho conveniente do Ubuntu em algum lugar.

Crie um costume ks.cfgcom system-config-kickstart, certifique-se de especificar HTTP em "Método de instalação". Forneça o IP do seu servidor de instalação e crie o diretório HTTP /ubuntu/. Salve o arquivo e copie-o para o servidor de instalação em /var/www/html/.

Um arquivo `ks.cfg muito minimalista, que usa apenas os arquivos de instalação no servidor de instalação e solicita todas as outras perguntas, pode ser assim:

install
url --url http://192.168.0.1/ubuntu/

Use seu ks.cfg

Para que a sua instalação no Ubuntu na rede use o seu arquivo kickstart, você deve informar onde encontrá-lo. Edite /var/lib/tftpboot/pxelinux.cfg/defaulte adicione ks=http://<installserver>/ks.cfgà linha de acréscimo. Em seguida, deve ser algo como isto (observe que a linha de acréscimo é uma linha):

label linux
        kernel ubuntu-installer/i386/linux
        append ks=http://192.168.0.1/ks.cfg vga=normal initrd=ubuntu-installer/i386/initrd.gz ramdisk_size=16432

raiz = / dev / rd / 0 rw -

No Jaunty [e, provavelmente, em versões posteriores, incluindo qualquer versão que você provavelmente esteja usando] 1, o arquivo padrão foi dividido em inclusões. A linha de acréscimo pode ser encontrada em /ubuntu-installer/i386/boot-screens/text.cfg:

label install
        menu label ^Install (from my http server)
        menu default
        kernel ubuntu-installer/i386/linux
        append ks=http://192.168.0.1/ks.cfg vga=normal initrd=ubuntu-installer/i386/initrd.gz -- quiet

Inicialize e instale

Agora você deve conseguir inicializar outro PC na LAN pela rede e instalar o Ubuntu automaticamente. :) Você pode variar os pontos de instalação tftp e http para ter várias versões do Ubuntu disponíveis para instalação na sua rede.

Usando o CD (ou .iso) diretamente

Você também pode obter o que foi dito acima sem copiar nenhum arquivo em nenhum lugar. Você pode montar o CD (ou o .iso) e depois montar montagens adicionais com a --bindopção A vantagem é que você pode atualizar o CD (ou o .iso) sem precisar atualizar os arquivos do servidor de instalação.

Por exemplo, depois de montar o CD (ou o .iso) em /media/cdrom/, você pode montar os arquivos do ubuntu no diretório web:

mount --bind /media/cdrom/ /var/www/ubuntu/

Da mesma forma, você pode fazer o mesmo com tftproot:

mount --bind /media/cdrom/install/netboot/ /var/lib/tftpboot/

Se você criar um pxelinux.cfgdiretório com um arquivo padrão apropriado, poderá montá-lo na parte superior do CD montado, para que o servidor tftp forneça seu arquivo pxelinux.cfg / default. Por exemplo, um pxelinux.cfgdiretório em ~/pxelinux.cfgpoderia ser montado assim:

mount --bind ~/pxelinux.cfg /var/lib/tftpboot/pxelinux.cfg

(Observe que no exemplo acima, o ponto de montagem real do diretório terminaria como /var/lib/tftpboot/ubuntu-installer/i386/pxelinux.cfgporque pxelinux.cfgé um link simbólico no CD (ou .iso)).

- PXEInstallServer , com pequenas alterações de formatação, pontuação e letras maiúsculas, principalmente para acomodar o formato Ask Ubuntu.

Esse artigo é do wiki de documentação do Ubuntu . Foi escrito por "Colaboradores do wiki de documentação do Ubuntu" e está licenciado sob CC-BY-SA 3.0 , que permite a inclusão aqui, com a atribuição adequada.

1 [Texto em itálico entre colchetes] não é do original; é o meu comentário.


Observe a diferença entre esse método e o método sugerido por Mitch . Esse método envolve a inicialização a partir de uma unidade flash CD / DVD ou USB, que instala o sistema em uma rede. Por padrão, essa rede é a Internet; para que esse método seja razoável para a instalação em centenas de máquinas em uma rede, você provavelmente desejaria criar e hospedar um repositório Ubuntu em sua rede e apontar suas instalações para isso.

O esforço e a infraestrutura necessários para fazer isso são comparáveis ​​ao que seria necessário para inicializar o PXE nas máquinas, conforme descrito acima. Portanto, embora esse caminho possa atender às suas necessidades, recomendamos que você considere a inicialização do PXE se realmente precisar instalar sem "mídia física".

Eliah Kagan
fonte
Preciso alterar as configurações do meu roteador?
Enkouyami
4

Você pode fazer isso usando o método net install, iniciando uma instalação do Ubuntu pela rede. descrito em Instalação do Netboot

Instalador de rede

O instalador da rede permite instalar o Ubuntu pela rede. Isso é útil, por exemplo, se você possui uma máquina antiga com um CD-ROM não inicializável ou um computador que não pode executar o instalador baseado em interface gráfica, porque eles não atendem aos requisitos mínimos para o CD ao vivo / DVD ou porque eles exigem configuração extra antes que a área de trabalho gráfica possa ser usada ou se você deseja instalar o Ubuntu em um grande número de computadores ao mesmo tempo. Ubuntu

Faça o download do instalador da rede para 12.04 LTS

Faça o download do instalador da rede para 13.04

Mitch
fonte
4

Existem muitas maneiras de conseguir isso.

1 - Inicialização da Net

Você deve modificar os nomes de host e endereços IP neste HOWTO para sua própria configuração. Os princípios descritos aqui são aplicáveis ​​a outros servidores DHCP e TFTP que não os descritos abaixo; o uso de software alternativo para servidor é deixado como um exercício para o leitor.

Para obter instruções sobre como usar um computador Windows como servidor TFTP e DHCP, vá para Installation / WindowsServerNetboot.

Este HOWTO o levará até a execução do instalador; se você deseja executar instalações automatizadas ou autônomas do Ubuntu, consulte Instalação / LocalNet.

2 - LocalNet

Este método de instalação utiliza DHCP / BOOTP, TFTP e FTP / HTTP para obter as fontes de instalação. O instalador em si é constituído por um kernel Linux e um initrd. Esses arquivos são transferidos pelo processo de inicialização DHCP / TFTP.

O restante das fontes de instalação pode ser transferido via FTP ou HTTP. Se a máquina de destino tiver acesso à Internet, essas fontes poderão ser extraídas diretamente de um espelho do Ubuntu. Como alternativa, você pode fazer o download de um dos ISOs de instalação, montá-los em loop-back e servi-los com um servidor HTTP / FTP local.

3 - NetworkConsole

Inicializando a partir de um CD (também pode ser TFTP ou similar) e instalando o sistema via SSH.

4 - Instalação rápida por SSH

Um guia rápido para instalar o Hardy Ubuntu 12.04 em um servidor dedicado por ssh.

Veja a documentação completa das instalações de servidor e rede

Achu
fonte
1

O que funcionou para mim ao instalar o Ubuntu 18.04 LTS foi baseado em um guia de Isabel Castello , que parece baseado no guia LocalNet do wiki do Ubuntu , mas era muito mais legível e compreensível para mim.

Pré-requisitos

Você deve estar em uma rede com 3 nós:

  1. Um roteador DHCP básico .
  2. O servidor de destino , onde você deseja instalar o Ubuntu. Ele deve estar conectado ao roteador com um cabo (não WiFi). E, obviamente, tem suporte para inicialização de rede no BIOS.
  3. Um servidor de origem , que servirá os arquivos e serviços de instalação inicial. Este guia assume que também é Ubuntu; outros sistemas operacionais também são possíveis, mas os comandos obviamente seriam diferentes.

Passos

  1. Certifique-se de ativar a inicialização de rede no BIOS do destino .

    A entrada do BIOS geralmente é feita pressionando ou segurando Delou F2quando a máquina é inicializada. Como alternativa, pressionar com F12frequência permite alterar a sequência de inicialização de alguma maneira específica do fornecedor, o que pode ajudar.

  2. Descubra os seguintes valores:

    (Você pode procurar / alterar as configurações de DHCP no roteador para descobrir algumas delas . Além disso, se você conseguir entrar no estágio de inicialização da rede ao inicializar a máquina de destino , provavelmente mostrará pelo menos o endereço MAC , portanto, pode anotar.)

    • o endereço MAC do alvo - propriedade de sua placa de rede,
    • o endereço IP do alvo - atribuído a ele pelo roteador ,
    • o IP do gateway - em outras palavras, o IP do roteador,
    • a máscara de sub-rede / rede - geralmente encontrada nas configurações de rede da fonte e / ou roteador .
  3. Instale e configure o tftp no host de origem :

    $ sudo apt-get install tftpd-hpa
    $ grep TFTP_DIRECTORY /etc/default/tftpd-hpa 
    TFTP_DIRECTORY="/var/lib/tftpboot"
    $ wget http://archive.ubuntu.com/ubuntu/dists/bionic-updates/main/installer-amd64/current/images/netboot/netboot.tar.gz
    $ sudo tar xzvf netboot.tar.gz -C /var/lib/tftpboot/
    $ rm netboot.tar.gz
    

    Se o grepexposto acima mostrar um caminho diferente, ajuste os valores nos comandos listados nesta e na próxima etapa de acordo.

  4. Instale, configure e execute o bootp , também no host de origem :

    Nota: substitua os $TARGET_MACvalores etc. pelos valores apropriados coletados na etapa 2. acima. O $TARGET_MACendereço deve estar com dois pontos, por exemplo:, 00:00:39:2B:54:B5e $SUBNET_MASKpontilhado, por exemplo 255.255.255.0.

    $ sudo apt-get install bootp
    $ vim ./bootptab
    client: ha="$TARGET_MAC": ip=$TARGET_IP: gw=$GATEWAY_IP: sm=$SUBNET_MASK: td=/: hd=/: bf=pxelinux.0
    $ sudo bootpd -d 4 -c /var/lib/tftpboot -s $PWD/bootptab
    
  5. Reinicialize a máquina de destino , garantindo que o recurso de inicialização de rede esteja ativado (pressione F12se necessário, ou nada, ou o que mais o BIOS exigir).

    Um instalador interativo do Ubuntu 18.04 baseado em texto deve começar agora na máquina de destino. Continue como se estivesse instalando o Ubuntu normalmente.

  6. Extra: por segurança, após concluir a instalação, você deve alternar o recurso de Inicialização de Rede no BIOS do destino para desativado.

Espero que isto ajude!

akavel
fonte
0

Cobbler é um servidor de instalação Linux que permite a configuração rápida de ambientes de instalação em rede. Ele se une e automatiza muitas tarefas Linux associadas, para que você não precise alternar entre vários comandos e aplicativos ao implantar novos sistemas e, em alguns casos, alterar os existentes. O Cobbler pode ajudar no provisionamento, gerenciamento de DNS e DHCP, atualizações de pacotes, gerenciamento de energia, orquestração de gerenciamento de configuração e muito mais.

raio azul
fonte