Como PXE inicializar uma imagem do Ubuntu no Windows Server 2008
Este guia explica como configurar uma máquina Windows Server 2008 para enviar uma imagem estática do Ubuntu que pode ser capturada por terminais sem disco, para que você possa ter qualquer número de máquinas executando uma instância totalmente funcional do Ubuntu sem ter um disco rígido, contanto que eles sejam capazes de inicializar pelo PXE.
Este é um artigo convidado de Alexander Karnitis e Cody Dull, dois leitores que trabalham para Hyndman Inc e tiveram que descobrir como realizar essa tarefa para o seu trabalho. Eles foram gentis o suficiente para escrever o processo para todos os outros.
Por que eu quero isso?
A inicialização via PXE torna tanto mais fácil quanto mais barato gerenciar uma rede, e a capacidade de servir imagens personalizadas do Ubuntu a partir de um Windows Server pode ajudar a tornar seu ambiente mais robusto. Você pode usar essas imagens para fornecer aos usuários o mesmo ambiente básico para trabalhar, ter um sistema facilmente restaurável (apenas desligue e ligue a máquina), realize diagnósticos em uma máquina com defeito e muito mais. Além disso, ao servir essas imagens de um Windows Server, seria possível servir imagens do Windows e do Ubuntu a partir de um único local, embora isso esteja além do escopo deste guia..
O que eu preciso?
- Máquina do Windows Server 2008 executando o WDS (Serviços de Implantação do Windows)
- Cliente capaz de inicializar pelo PXE
- Windows Server Machine executando o DHCP
- Um servidor NFS (este guia assume que o servidor NFS é o mesmo que o servidor WDS, mas não precisa ser o caso)
Criando o servidor WDS
Instalar os Serviços de Implantação do Windows em um servidor Windows não é muito difícil, e a Microsoft tem ótimos guias para orientá-lo no processo de instalação (2008 e 2008 R2 aqui), portanto este guia não abordará como fazer isso, mas saiba que você deseja o servidor de implantação e o servidor de transporte. Observe também que, ao configurar a função, você deverá marcar a caixa “Responder a todos os computadores clientes (conhecidos e desconhecidos)” durante a instalação, a menos que os computadores que você está inicializando já sejam conhecidos pelo Active Directory. Isso ocorre porque o servidor se refere ao Active Directory como a autoridade em dispositivos conhecidos e desconhecidos.
O guia deve ser seguido até a seção "Passos para adicionar imagens", pois adicionaremos nossas imagens através do pxelinux, não do WDS.
Instalando o pxelinux
Faça o download e extraia uma cópia do syslinux (uma fonte possível está aqui). A partir daqui, vamos copiar os arquivos que o pxelinux precisa para ser executado no diretório WDS. Especificamente, para o pxelinux 5.01, isso significa que estaremos copiando nos seguintes arquivos:
· Core \ pxelinux.0
· Com32 \ menu \ vesamenu.c32
· Com32 \ lib \ libcom32.c32
· Com32 \ elflink \ ldlinux.c32
· Com32 \ libutil \ libutil.c32
· Com32 \ chain \ chain.c32
Esses arquivos serão copiados para o diretório de arquitetura desejado (\ boot \ x64, \ boot \ x86 ou ambos). Depois de copiar os arquivos, o diretório de arquitetura deve ser semelhante a este (existem pequenas diferenças entre x86 e x64, mas não para o pxelinux).
Aqui, os diretórios de arquitetura estão localizados no diretório que foi especificado para conter os arquivos WDS ao personalizar a função WDS.
Neste ponto, não teremos mais uso para nenhum outro arquivo syslinux, portanto o diretório syslinux pode ser removido com segurança.
Configurando o PXElinux
O arquivo de configuração pxelinux pode ser altamente personalizado para fornecer um menu de inicialização exclusivo para diferentes computadores com base em um tipo de hardware e endereço de hardware, ou com base em um endereço IP ou intervalo de endereços IP (mais sobre isso aqui) e pode fornecer alguns métodos de inicialização e um sistema de menus bastante robusto (mais sobre isso aqui). Para os fins deste guia básico, no entanto, vamos nos ater ao arquivo de configuração padrão e explicar o menu básico que pode ser usado para fazer o pxeboot de um liveCD. Para começar, os arquivos de configuração precisam estar localizados em uma subpasta chamada “pxelinux.cfg”, então crie essa pasta no mesmo diretório que você copiou sobre os arquivos pxelinux. Também criamos uma pasta “Images” ao lado da pasta pxelinux.cfg para armazenar todas as nossas imagens linux. Neste ponto, a pasta de arquitetura deve ser algo como isto:
Agora, na pasta pxelinux.cfg, crie um arquivo chamado "default" sem uma extensão de arquivo.
Abra o arquivo em um editor de texto como o bloco de notas e digite o seguinte:
Vesamenu.c32 padrão
PROMPT 0
NOESCAPE 0
ALOPERAÇÕES 0
# Tempo limite em unidades de 1/10 s
TIMEOUT 30 # 3 second timeout.
MENU MARGEM 10
LINHAS DO MENU 16
MENU TABMSGROW 21
MENU TEMPO LIMITE 26
MENU COR BORDA 30; 44 # 20FFFFFF # 00000000 nenhum
MENU SCROLLBAR DE CORES 30; 44 # 20FFFFFF # 00000000 nenhum
MENU COLOR TITLE 0 #ffffffff # 00000000 nenhum
MENU COR SEL 30; 47 # 40000000 # 20ffffff
MENU TÍTULO Menu do Netboot
# -Uma amostra de inicialização do liveCD
RÓTULO
Imagens do kernel / UbuntuLIVE / casper / vmlinuz #location do kernel
append boot = casper netboot = nfs nfsroot =: / RemoteInstall / Boot / x64 / Imagens / UbuntuLIVE initrd = Imagens / UbuntuLIVE /casper/initrd.gz
Note que esta configuração está assumindo que a imagem é armazenada em Images / UbuntuLIVE a partir do diretório de arquitetura.
Para mais informações sobre o que isso está fazendo, você pode ver:
- https://www.howtogeek.com/61263/how-to-network-boot-pxe-the-ubuntu-livecd/
Criando um compartilhamento NFS
Criar um compartilhamento NFS também é bastante simples no servidor Windows, e isso pode ser feito seguindo as etapas aqui. Há algumas coisas a serem observadas com relação às Permissões, no entanto.
Primeiro, as permissões de NTFS na pasta compartilhada precisarão ser alteradas, pois o grupo Todos precisará ter as permissões Ler e Executar..
Certifique-se de que o compartilhamento criado seja um compartilhamento NFS, não um compartilhamento SMB.
Além disso, todas as máquinas precisarão ter acesso anônimo, e as permissões Todos NTFS precisarão ser aplicadas a usuários anônimos.
Depois que tudo estiver configurado, ainda poderá demorar um pouco para que todas as configurações se propaguem pela rede, mas, depois de fazer isso, será possível começar a exibir LiveCDs na caixa do Windows Server! Para testar o servidor, você pode compartilhar um simples LiveCD retirado do site do Ubuntu. No entanto, também é possível exibir um LiveCD personalizado. Se você planeja fazer alguma configuração básica no LiveCD, pode seguir o artigo:
- https://www.howtogeek.com/109736/how-to-create-a-custom-ubuntu-live-cd-or-usb/
No entanto, se você quiser fazer uma personalização mais intensa, como ajustar o Unity, o que não pode ser feito usando o método acima, ou se você quiser usar uma máquina simples e fornecer cópias idênticas, outro método bastante simples será permitir que você faça uma imagem que pode ser exibida é a seguinte:
Criando e personalizando seu Live CD do Ubuntu
Criar uma nova imagem personalizada é fácil. Baixe e instale um reprodutor de máquina virtual, se você ainda não tiver um. As etapas neste guia são para o Oracle VM VirtualBox. https://www.virtualbox.org/wiki/Downloads
Crie uma nova máquina virtual, selecione Linux como o tipo e Ubuntu ou Ubuntu (64 bits) como a versão, dependendo da sua preferência, clique em Avançar.
Selecione a quantidade de memória a ser alocada, pelo menos 1024 MB é recomendado, clique em Avançar.
Opte por criar um novo disco rígido virtual agora do tipo VDI e torná-lo dinamicamente alocado.
Por fim, defina o tamanho do disco rígido virtual. 4 GB é o mínimo, mas 6-8 GB é recomendado.
Faça o download do Ubuntu 12.04 LTS Live CD do site do Ubuntu. Certifique-se de selecionar a mesma versão selecionada no passo 2. http://www.ubuntu.com/download/desktop
Vá para as configurações da VM que você acabou de criar. Em Armazenamento, clique no disco único em Controlador: IDE. À direita da tela abaixo Atributos, clique no disco com uma seta ao lado do campo Drive de CD / DVD. Clique Escolha um arquivo virtual. Navegue até o local onde você baixou o Live CD e selecione-o.
Agora você pode iniciar a VM e instalar o Ubuntu 12.04.
Uma vez instalado, faça todas as alterações desejadas. Algumas das mudanças que fizemos incluem:
- Se isso for usado por qualquer pessoa, exceto administradores do sistema, crie uma conta de usuário como um usuário padrão, defina-a para efetuar login automaticamente sem necessidade de senha.
- Remova quaisquer programas desnecessários dependendo do propósito da imagem final. Alguns programas maiores que podem ser removidos, se não forem necessários, são: Firefox, LibreOffice, Gwibber, Thunderbird, empatia e qualquer outro jogo. Você pode fazer isso usando o limpeza de aptidão comando no terminal ou instalando Gerenciador de Pacotes Synaptic de Centro de Software Ubuntu.
- Debaixo Aplicativos de inicialização, crie uma entrada para qualquer programa que você queira executar na hora de início. Por exemplo, se essas máquinas forem usadas principalmente para conexões de área de trabalho remota, defina Remmina Remote Desktop para iniciar automaticamente.
- Para alterar a resolução padrão, crie um arquivo que execute o comando xrandr.
- Um script de exemplo que usamos para desativar a exibição integrada em nossos thin clients e alterar a resolução dos monitores conectados foi as duas linhas a seguir:
xrandr - saída LVDS1 -offx
randr --output VGA1 --primary --mode 1280x1024
- Um script de exemplo que usamos para desativar a exibição integrada em nossos thin clients e alterar a resolução dos monitores conectados foi as duas linhas a seguir:
- Torne o arquivo executável e adicione-o a Aplicativos de inicialização.
- Comandos adicionais podem ser executados na hora de início usando este método.
- Tenha em mente que isso só funcionará se todas as suas máquinas rotularem suas exibições de maneira semelhante. Se você tem vários modelos, uma abordagem mais sofisticada pode ser necessária.
- Desbloqueie todos os ícones restantes do lançador que não precisam estar lá e adicione qualquer um que você deseja adicionar.
Depois de fazer todas as personalizações, você deve instalar Remastersys. Apesar de alguns posts que você pode encontrar nos fóruns, Remastersys ainda está funcionando.
- Pegue Gerenciador de Pacotes Synaptic por entrar sudo apt-get install synaptic no terminal ou obtê-lo de Centro de Software Ubuntu.
- Execute o seguinte comando no terminal para baixar a chave gpg do repositório:
sudo wget -Ohttp: //www.remastersys.com/Ubuntu/remastersys.gpg.key | adicionar o apt-key -
- Abra o arquivo /etc/apt/sources.list em um editor de texto com direitos de sudo, acrescente a seguinte linha, mudando com precisão para sua versão, se necessário: deb http://www.remastersys.com/ubuntu
- Abrir Sináptica e procure por Remastersys. Marque os pacotes Remastersys e Remastersys-gui para ser instalado, pressione aplicar para instalar.
- Abrir Remastersys-gui e selecione Cópia de segurança.
Você agora tem um live cd personalizado. O próximo passo é transferi-lo para o seu servidor. Se você seguiu o guia Configurando o Windows Server 2008 para o PXE de inicialização do Ubuntu, aqui estão as etapas para implantar a imagem.
- Execute o seguinte comando no terminal para tornar o Ubuntu VM um cliente NFS. sudo apt-get instalar rpcbind nfs-common
- Crie um diretório para montar o compartilhamento NFS em. sudo mkdir / NFS
- Agora você deve montar um compartilhamento NFS com permissões de gravação concedidas. Recomenda-se que você crie um compartilhamento adicional para o propósito de transferir arquivos do cliente para o servidor enquanto compartilha, pois o sistema de arquivos de inicialização pxe normalmente não terá essa permissão..
sudo mount: // NFS
ex. sudo mount 192.168.1.24:/TempNFS / NFS - Copie o iso recém-criado para o compartilhamento montado
sudo cp /home/remastersys/remastersys/custom-back.iso / NFS - Neste ponto, você terminou com a VM do Ubuntu. No servidor do Windows, vá até o local onde a iso foi copiada e extraia o conteúdo usando uma ferramenta de processamento de arquivos de imagem, como o Power ISO. http://www.poweriso.com/download.htm
- Crie uma pasta em / boot / x64 / Images e copie o conteúdo do iso para esta pasta.
- Se o seu servidor estiver configurado corretamente, você deverá ver o seu Ubuntu Live CD personalizado como uma das opções de inicialização do pxe ao inicializar o cliente diskless.
Para alterar a imagem personalizada, volte para a VM e repita as etapas acima começando na etapa em que você escolheu a imagem de disco para inicializar. Desta vez, em vez de usar o CD padrão baixado do Ubuntu, você usará o arquivo iso de backup exportado.