Eu tenho duas partições de disco rígido, que combinei em um RAID1 usando mdadm
e criei um sistema de arquivos ext4 no dispositivo resultante.
Quando eu mdadm --zero-superblock
das duas partições e recriamos o RAID, os metadados originais do ext4 são magicamente preservados.
Por que isso?
E como posso dizer a mdadm
para me dar um MD verdadeiramente novo e não inicializado?
Detalhes
Como eu crio o RAID1 e o sistema de arquivos:
ls /dev/sdc2 # partition 1
ls /dev/sdd2 # partition 2
mdadm --create --run --verbose /dev/md1 --level=1 --raid-devices=2 /dev/sdc2 /dev/sdd2
mkfs.ext4 -L mylabel /dev/md1
Limpe o RAID1:
mdadm --stop /dev/md1
mdadm --zero-superblock /dev/sdc2
mdadm --zero-superblock /dev/sdd2
Recrie o RAID1:
mdadm --create --run --verbose /dev/md1 --level=1 --raid-devices=2 /dev/sdc2 /dev/sdd2
Exibir informações do dispositivo (observe wipefs
sem o -a
sinalizador não limpa nada, apenas mostra informações):
# wipefs /dev/md1
offset type
----------------------------------------------------------------
0x438 ext4 [filesystem]
LABEL: mylabel
UUID: 3d230d31-fb82-46ef-a4e0-e9473e05825c
LABEL: mylabel
mostra que o rótulo ext4 "sobreviveu" à limpeza do superbloco mdadm e à recriação do RAID.
Como isso pode ser?
Eu pensei que depois de um superblock wipe e recreação, o mdadm deveria me apresentar uma visão "limpa" do dispositivo (ou seja, todos os zeros), a menos que seja dado um sinalizador que desligue isso (como --assume-clean
, que eu não dei).