Como restaurar a imagem clonezilla tendo apenas acesso ssh e nenhuma partição livre?

1

Pode haver mais de uma resposta correta. Com pouca experiência na área, estou perguntando sobre a melhor / mais reanível maneira de gerenciar minhas ferramentas e recursos nessa tarefa específica.

A configuração

Existe um servidor, acessível remotamente pelo ssh, sem acesso físico. Tem dois discos rígidos:

  • sda é particionado para inicialização (sda1), raiz / usuário fs (sda2), troca (sda3) e raid (sda4);
  • O
  • sdb é perfeitamente claro e recém-instalado.

Em sda2 existe, entre outros arquivos, uma imagem de disco bastante grande feita com o Clonezilla . Nunca usei este software antes, então eu espero que haja tudo no lugar - é uma pasta contendo um monte de dd-img, .mbr, lista, hash, etc.

O alvo

Eu quero ter dito que a imagem de disco do Clonezilla foi restaurada para o sdb.

Problemas

Com acesso físico, isso seria fácil. No entanto, agora posso identificar os seguintes obstáculos:

  • nenhuma maneira de inserir cd / usb ao vivo para inicializar; É, no entanto, possível executar o clonezilla ao vivo a partir da imagem iso no disco rígido. Eu baixei essa imagem e copiei para sda2;
  • este tutorial livehd diz que é necessário preparar uma partição FAT única para o clonezilla rodar. Eu definitivamente não irei tocar em sda1 / 3/4 (dados de boot, swap e raid que eu não gostaria de perder) e tenho medo de particionar o sda2 com dados do sistema nele. Então, talvez use sdb (disco de destino) e deixe que ele seja sobrescrito assim que o clonezilla for carregado para a RAM? Ou usar sda4 de qualquer maneira e restaurá-lo a partir do backup mais tarde?
  • novamente, há apenas acesso remoto e o clonezilla tem o ssh desativado por padrão. Esta resposta aponta para Este doc parece uma solução aqui, embora exija a configuração PXE. Nunca fiz isso antes.

Rotas possíveis?

Agora mesmo estou pensando em configurar o servidor PXE em uma máquina diferente e apontar meu servidor 'alvo' para obter informações de inicialização dele. Neste caso, em qual máquina a imagem clonezilla deveria ser localizada?

Ou, já que espero que seja uma tarefa única, talvez eu possa simplificar alguma coisa? Editar imagem do clonezilla (pode montá-lo normalmente, certo?) Para permitir ssh por padrão, talvez restringindo o acesso IP ou alterando a senha padrão?

Finalmente, como você executaria o sistema a partir dessa imagem? Onde eu poderia armazená-lo, se ele realmente precisa de uma partição separada? E, no caso de a melhor resposta ser uma partição no disco 'target', como fazer o sistema ir para a RAM na inicialização? Lembre-se que eu só seria capaz de ssh para ele, uma vez que está totalmente vivo (assim, inicializado, com a rede, etc).

Espero que isso pareça menos caótico do que eu sinto sobre isso :) A situação é bastante complicada para mim e para minhas experiências anteriores; Espero que alguém aqui possa me esclarecer.

    
por zencodism 07.07.2014 / 15:00

1 resposta

0

Depois de muita tentativa e erro, encontrei um jeito. Espero que seja útil para alguém algum dia.

Missão cumprida, meu disco é restaurado e aqui está como:

  1. Baixou o Clonezilla ao vivo de acordo com este documento , configurando o GRUB (assim, baixado, descompactado, alterado a pasta 'ao vivo') nome);
  2. Configure a partição FAT32 em sdb (o disco para restaurar, o destino) usando fdisk e mkvfat. O tamanho da partição era suficiente para armazenar a imagem ao vivo do Clonezilla (200M?) E era inicializável.
  3. Configurou o GRUB criando esta entrada: (explicada abaixo)

    menuentry "Clonezilla" {
    
    set root=(hd1,1)
    
    linux /live-hd/vmlinuz boot=live live-config noswap nolocales edd=on nomodeset ocs_live_run=\"ocs-live-general\" ocs_prerun=\"dhclient -v eth0\" ocs_live_run=\"/bin/bash\" ocs_live_extra_param=\"\" keyboard-layouts=NONE ocs_live_batch=no locales=en_US.UTF-8 vga=788 ip= nosplash live-media-path=/live-hd bootfrom=/dev/sdb1 toram usercrypted= ocs_daemonon=\"ssh\" i915.blacklist=yes radeonhd.blacklist=yes nouveau.blacklist=yes vmwgfx.blacklist=yes
    
    initrd /live-hd/initrd.img
    
    } 
    
  4. A configuração do GRUB foi recriada para incluir esta entrada (grub2-mkconfig) e o modo de inicialização foi selecionado. Existem duas rotas:

    • definir esta entrada como padrão em / etc / default / grub antes de criar conf
    • ou apenas adicioná-lo lá e selecione na inicialização, se você tiver KVM IP configurado (assim kiiiinda como o acesso físico à máquina, não permitirá a manipulação do BIOS, mas comutação de entrada de inicialização - sim).
  5. Reinicialize a máquina, espere que ela inicialize no Clonezilla e faça login via ssh como 'user' - ela tem direitos sudo.

  6. Execute o script 'clonezilla' na linha de comando e siga as linhas de tutorial padrão

  7. Volte para o terminal e troque a inicialização para o seu sistema normal (caso contrário, ele falhará, procurando pelo clonezilla na partição agora inexistente). Reinicie. Aproveite.

O que a entrada do menu grub faz?

É compilado a partir de dois tutoriais e algumas experiências: link link

O objetivo é ter isso:

  • configure a rede na inicialização, portanto, ocs_prerun=dhclient option
  • executar o shell do bourne ( ocs_live_run=/bin/bash )
  • ip=<empty> para não mexer com dhclient
  • toram sem opções para colocar todo o sistema na RAM, para que possa sobrescrever o disco a partir do qual foi inicializado originalmente Isto faz com que seja uma operação única, após o seu clonezilla ao vivo desaparecer / li>
  • inicie o servidor SSH ( ocs_daemonon=ssh ) com a senha [opcionalmente] definida para o usuário ('usercrypted'). A parte da senha funciona conforme descrito no segundo tutorial vinculado. Talvez (não testado) você possa deixá-lo vazio e ter acesso como 'usuário' sem senha - nesse caso, é provavelmente uma boa idéia alterar a senha imediatamente após o login.

Ufa, é isso. Estou muito feliz por ter resolvido este enigma e ao mesmo tempo tenho a sensação de que alguém mais experiente faria isso em um ou dois minutos ...

    
por 01.08.2014 / 16:55