particionar e formatar o SSD local no script de início

particionar e formatar o SSD local no script de início

Estou tentando configurar um SSD local "zero" no Google Cloud Platform/Google Compute Engine em um script inicial para que uma instância preemptiva seja executada na criação da VM. Nenhum dado valioso está na VM quando este script é executado.

Depois de criar uma VM com um SSD local gcloudou no console da web, há algumas configurações a serem feitas na VM.

Documentação SSD localdiz que eu deveria:

  1. identifique o dispositivo de bloco SSD comlsblk
  2. formate-o commkfs.ext4 -F /dev/[block-dev-from-part1]
  3. monte-o em algum lugar e aproveite

Mas na etapa 2 recebo um erro que /dev/sdb1não foi encontrado.

fdiskrevela que /dev/sdbexiste, mas não possui tabela de partição.

Eu poderia usar o fdisk manualmente e isso funciona, mas como posso particionar o SSD e configurá-lo em um script inicial?

Responder1

Se você estiver disposto a arriscar que o SSD esteja sempre em /dev/sdb e que o fdisk não altere sua interface de usuário, você pode simplesmente executar o fdisk e fornecer a entrada do fdisk em um EOFbloco como segue:

#!/bin/bash
sleep 30
fdisk /dev/sdb <<EOF
n
p
1


w
EOF
mkfs.ext4 -F /dev/sdb1
mkdir /tmp/ssd
mount /dev/sdb1 /tmp/ssd
chmod 777 /tmp/ssd

A entrada fdisk é npara novo, ppara partição do sistema, depois 1para partição 1, duas linhas em branco para aceitar os padrões do fdisk e, em seguida, wpara gravar a tabela de partições.

Responder2

O SSD local pode ser usado diretamente como um dispositivo de bloco sem particionamento.

Você pode:mkfs.ext4 -F /dev/sdb

informação relacionada