mdadm: Como Remover o Array – parte 03

Atenção: antes de qualquer procedimento de exclusão, faça backup se houver dados importantes!

No post anterior criamos um raid 0. Hoje vamos aprender removê-lo.

Nós criamos o array 0 identificado como md0.

 

Verificando a Existência do nosso Array

Se verificarmos o arquivo “/etc/mdstat” veremos que o md0 se encontra ativo e é um raid nível 0.

elder@ubuntu:~$ cat /proc/mdstat 
Personalities : [raid0] [linear] [multipath] [raid1] [raid6] [raid5] [raid4] [raid10] 
md0 : active raid0 sdb1[0] sdc1[1]
      96256 blocks super 1.2 512k chunks

Podemos verificar também usando o comando “mdadm –detail –scan

elder@ubuntu:~$ sudo mdadm --detail --scan
ARRAY /dev/md0 metadata=1.2 name=ubuntu:0 UUID=ed6e77cc:a01c59a6:ad28640d:767599b8

Também há outros métodos como

sudo mdadm --detail /dev/md0

ou

elder@ubuntu:~$ sudo mdadm --examine  /dev/sdb1
elder@ubuntu:~$ sudo mdadm --examine  /dev/sdc1

Removendo o Array md0

Já verificada a existência do array, vamos removê-lo

 

  1. Veja se o volume está montado, se sim, desmonte.Verificando com df
    elder@ubuntu:~$ df -h
    Sist. Arq.      Tam. Usado Disp. Uso% Montado em
    udev            471M     0  471M   0% /dev
    tmpfs            99M  1,1M   98M   2% /run
    /dev/sda1       9,8G  5,5G  3,9G  59% /
    /dev/md0         88M  1,6M   79M   2% /home/elder/meuRaid0

    Desmontando

    elder@ubuntu:~$ sudo umount /dev/md0

    Obs.: Como a linha de montagem está dentro de /etc/fstab não precisamos digitar
    “sudo umount /dev/md0     /home/elder/meuRaid0”. Basta apenas  “sudo umount /dev/md0”

  2. Removendo a linha para montagem automática de dentro de  /etc/fstab. Para isso use seu editor preferido; usarei o vim.
    elder@ubuntu:~$ sudo vim /etc/fstab

    Antes

    UUID=060e460d-9ae2-41ac-bb4f-473c8438c0ba /               ext4    errors=remount-ro 0       1
    /swapfile                                 none            swap    sw              0       0
    UUID=6c6c2542-8927-4823-88a1-2251ee30a869 /home/elder/meuRaid0  ext4    defaults        0       0

    Depois

    UUID=060e460d-9ae2-41ac-bb4f-473c8438c0ba /               ext4    errors=remount-ro 0       1
    /swapfile
  3. Ainda usando seu editor de texto preferido, exclua a linha correspondente em ” /etc/mdadm/mdadm.conf”
    elder@ubuntu:~$ sudo vim  /etc/mdadm/mdadm.conf
    #
    # !NB! Run update-initramfs -u after updating this file.
    # !NB! This will ensure that initramfs has an uptodate copy.
    #
    # Please refer to mdadm.conf(5) for information about this file.
    #
    
    # by default (built-in), scan all partitions (/proc/partitions) and all
    # containers for MD superblocks. alternatively, specify devices to scan, using
    # wildcards if desired.
    #DEVICE partitions containers
    
    # automatically tag new arrays as belonging to the local system
    HOMEHOST <system>
    
    # instruct the monitoring daemon where to send mail alerts
    MAILADDR root
    
    # definitions of existing MD arrays
    
    # This configuration was auto-generated on Sat, 08 Aug 2020 09:48:49 -0300 by mkconf
    ARRAY /dev/md0 level=raid0 num-devices=2 metadata=1.2 name=ubuntu:0 UUID=ed6e77cc:a01c59a6:ad28640d:767599b8
       devices=/dev/sdb1,/dev/sdc1

    Esclua a linha:   ARRAY /dev/md0 level=raid0 num-devices=2 metadata=1.2 name=ubuntu:0 UUID=ed6e77cc:a01c59a6:ad28640d:767599b8 devices=/dev/sdb1,/dev/sdc1.

    O arquivo ficará assim

    #
    # !NB! Run update-initramfs -u after updating this file.
    # !NB! This will ensure that initramfs has an uptodate copy.
    #
    # Please refer to mdadm.conf(5) for information about this file.
    #
    
    # by default (built-in), scan all partitions (/proc/partitions) and all
    # containers for MD superblocks. alternatively, specify devices to scan, using
    # wildcards if desired.
    #DEVICE partitions containers
    
    # automatically tag new arrays as belonging to the local system
    HOMEHOST <system>
    
    # instruct the monitoring daemon where to send mail alerts
    MAILADDR root
    
    # definitions of existing MD arrays
    
    # This configuration was auto-generated on Sat, 08 Aug 2020 09:48:49 -0300 by mkconf
    

    Execute  “update-initramfs -u”  conforme pede o arquivo

    elder@ubuntu:~$ sudo update-initramfs -u
    update-initramfs: Generating /boot/initrd.img-4.15.0-112-generic
    
  4. Veja quais são os discos que fazem parte do array
    elder@ubuntu:~$ lsblk
    NAME    MAJ:MIN RM  SIZE RO TYPE  MOUNTPOINT
    sda       8:0    0   10G  0 disk  
    └─sda1    8:1    0   10G  0 part  /
    sdb       8:16   0   50M  0 disk  
    └─sdb1    8:17   0   49M  0 part  
      └─md0   9:0    0   94M  0 raid0 
    sdc       8:32   0   50M  0 disk  
    └─sdc1    8:33   0   49M  0 part  
      └─md0   9:0    0   94M  0 raid0

    Vemos acima que md0 é uma ramificação de sdb1 e sdc1.

  5. Pare  md0 e remova
    elder@ubuntu:~$ sudo mdadm --stop /dev/md0 
    mdadm: stopped /dev/md0

    Remova(obs.: no ubuntu essa etapa não se faz necessário)

    elder@ubuntu:~$ sudo  mdadm  --remove  /dev/md0
  6. Destrua as informações internas dos dois discos
    elder@ubuntu:~$ sudo  mdadm --zero-superblock   /dev/sdb1
    elder@ubuntu:~$ sudo  mdadm --zero-superblock   /dev/sdc1

    Obs.: SE os passos acima não funcionarem no ubuntu pode usar como alternativa esses abaixo:

    sudo dd if=/dev/zero of=/dev/sdb1
    sudo dd if=/dev/zero of=/dev/sdc1

Conclusão

Após realizados os passos acima é recomendado reiniciar o computador e executar “cat /proc/mdstat” para vermos se realmente foi desfeito o array.  Se obteve sucesso então, após reiniciado, o conteúdo de /proc/mdstat será parecido com esse

elder@ubuntu:~$ cat /proc/mdstat 
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] 
unused devices: <none>

Particularmente, acho que deveria haver respostas mais automáticas, por exemplo, ao executar “mdadm –remove..” poderia automaticamente serem removidas as linhas de dentro de /etc/mdadm/mdadm.conf e zerado os discos participantes do array. Logicamente que tudo isso com várias Solicitações de confirmações para o usuário.

Uma coisa que achei diferente, foi os testes para remoção do array no ubuntu, onde bastou executar “mdadm –stop /dev/md0” e zerar os dois discos com “dd if=/dev/zero of=/dev/…“. Tirando as edições de arquivos de textos, as demais etapas não foram necessárias no ubuntu.

 

Leitor voraz e um dos administradores do GNU/Linux Brasil no Whatsapp, facebook, youtube e nesse dito site: www.gnulinuxbrasil.com.br

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *