Kickstart - como sair se um sistema operacional já existir

5

Eu tenho o que certamente é uma pergunta corretiva para qualquer pessoa com mais experiência com Linux. Eu preciso verificar se um sistema operacional já está instalado no meu script de kickstart e, em caso afirmativo, avisar o usuário se gostaria de continuar (basicamente reinstalar) ou sair.

Qual é a maneira mais eficiente de fazer isso?

Eu estava pensando em fazer algo como o seguinte:

%pre
#!/bin/sh
if [ -f some_file ]; then
  read -p "An OS already exists, do you want to re-install?" yn
    case $yn in
        [Yy]* ) break;;
        [Nn]* ) exit;;
        * ) echo "Please answer yes or no.";;
    esac
fi

Não sei qual arquivo seria o melhor para usar no lugar de "some_file" no meu exemplo, ou se isso é mesmo uma boa maneira de fazê-lo.

Note que a razão pela qual eu preciso fazer isso é porque esta instalação do Linux é parte de uma instalação automatizada muito maior, então um usuário não está lá para verificar manualmente se o sistema operacional já existe.

    
por MsStarlifter 21.09.2012 / 01:38

2 respostas

5

Onde o sistema de arquivos / residiria, se um sistema operacional fosse instalado? Estaria no mesmo lugar em todos os nós que você pretende instalar?

Você pode testar a presença de uma partição:

[ -b /dev/sdXY ] && { do something ; }

Ou um volume lógico:

[ -b /dev/mapper/vg00/lvXYZ ] && { do something ; }

Você pode tentar montá-lo e testar a presença de um determinado arquivo:

mkdir /tmp/mt
if mount /dev/sdXY /tmp/mt && [ -f /tmp/mt/filename ]; then
      do something
fi
    
por 21.09.2012 / 05:51
0

Simplesmente definimos a ordem de inicialização do BIOS como HD seguida por PXE.

Isso significa que o sistema será instalado a partir do PXE na primeira inicialização, as inicializações subseqüentes do sistema operacional instalado.

Quando precisarmos reinstalar, basta limpar o setor de inicialização de dentro do sistema operacional e reinicializar.

    
por 19.08.2013 / 16:06

Tags