Como posso testar se uma unidade interna não tem partições na inicialização e, se não, configurar a unidade automaticamente?

1

Suponha que eu tenha um conjunto de novos servidores que inicializam a partir do PXE.

O que eu quero fazer é detectar automaticamente que o disco rígido interno não está formatado e, portanto, criar a partição e formatá-lo automaticamente na inicialização. Seguido adicionando a entrada apropriada ao fstab e montando-a. Depois disso, será deixado sozinho. A unidade é usada apenas para armazenar dados em cache.

As partes em que estou preso são 1) Reconhecer se um disco tem partições ou não. ou seja, verifique se o disco tem uma tabela de partições. Posso apenas testar a presença de arquivo / dev / sda e não / dev / sda1? 2) reconhecendo qual disco eu inicializei para que eu possa ignorá-lo. 3) Criando a partição na linha de comando.

Então, o que espero reunir é um script que eu possa colocar no processo de inicialização.

    
por Matt 22.03.2012 / 01:57

2 respostas

3

1) Recognize whether a disk has partitions or not. i.e. check if disk has a partition table. Can I just test for presence of file /dev/sda and not /dev/sda1?

Não vejo por que isso não funcionaria, mas você também pode fdisk -l /dev/sda liste as partições de um disco.

2) recognizing which disk I booted from so I can ignore it.

O

mtab deve ser suficiente para informá-lo sobre sistemas de arquivos montados. Isso deve ser suficiente para evitar discos do sistema. Você também pode procurar o sinalizador de inicialização.

Mas, se seu objetivo for criar uma partição em discos brutos, não vejo porque é necessário ignorar especialmente as partições "do sistema".

3) Creating the partition from the command line

Eu não acho que o fdisk tenha uma maneira de lidar com isso. Há sfdisk, no entanto, que deve ser capaz de fazer isso. O Parted também pode usar um script .

Uma vez que a partição é feita, você provavelmente precisará também do atualize a tabela de partições e depois coloque um sistema de arquivos .

    
por 22.03.2012 / 02:50
0

Você pode conseguir a mesma coisa ajustando sua ordem de inicialização do BIOS para que o disco rígido venha antes de rede / PXE. Dessa forma, se você tiver um sistema operacional em funcionamento, ele será inicializado; caso contrário, ele tentará o PXE.

    
por 22.03.2012 / 02:02

Tags