
DR
Preciso ler e escrever de/para 2 dos meus mdadm
arrays RAID1 depois de desconectar uma das unidades em ambos os casos e comentá-los em /etc/mdadm/mdadm.conf
+ update initramfs
, é claro.
Sistema
SO: GNU/Linux Debian 9 (Stretch), totalmente atualizado.
Médico: 2 mdadm
arrays em RAID1, ambos aparecem na inicialização, conforme visto abaixo.
Hardware: desconectou uma das unidades no mdadm
RAID1 de ambos os arrays.
Na inicialização, ambos são vistos comoinactive
# cat /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md127 : inactive sdc1[1](S)
1953382471 blocks super 1.2
md1 : inactive sdb1[1](S)
976630471 blocks super 1.2
unused devices: <none>
Explicação
Eu comentei intencionalmente essas matrizes em /etc/mdadm/mdadm.conf
:
# newer drives | 2 TB
#ARRAY /dev/md0 metadata=1.2 name=server:0 UUID=<Array UUID #0>
# older drives | 1 TB
#ARRAY /dev/md1 metadata=1.2 name=server:1 UUID=<Array UUID #1>
Finalmente, atualizei initramfs
da seguinte forma antes de reiniciar:
# update-initramfs -u
Pergunta
Como posso, temporariamente, tornar ambos os arrays ativos e graváveis neste ponto?
Responder1
Primeiro você precisa parar esses arrays:
# mdadm --stop /dev/md127 && mdadm --stop /dev/md1
Você deveria ver:
mdadm: stopped /dev/md127 mdadm: stopped /dev/md1
Então, você precisa montá-los novamente:
# mdadm --assemble --scan
Você deveria ver:
mdadm: /dev/md/1 has been started with 1 drive (out of 2). mdadm: /dev/md/0 has been started with 1 drive (out of 2).
Vamos ver o que temos agora:
# cat /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md0 : active (auto-read-only) raid1 sdc1[1]
1953382464 blocks super 1.2 [2/1] [_U]
bitmap: 0/15 pages [0KB], 65536KB chunk
md1 : active (auto-read-only) raid1 sdb1[1]
976630464 blocks super 1.2 [2/1] [_U]
bitmap: 0/8 pages [0KB], 65536KB chunk
unused devices: <none>
Então, basicamente terminamos, com a exceção de que os arrays são somente leitura.
Podemos resolver isso com o seguinte comando:
# mdadm --readwrite /dev/md[01]
Você não deverá ver nada agora, se o comando tiver sido bem-sucedido, o que você pode simplesmente verificar novamente com:
# cat /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md0 : active raid1 sdc1[1]
1953382464 blocks super 1.2 [2/1] [_U]
bitmap: 0/15 pages [0KB], 65536KB chunk
md1 : active raid1 sdb1[1]
976630464 blocks super 1.2 [2/1] [_U]
bitmap: 0/8 pages [0KB], 65536KB chunk
unused devices: <none>