Donc, j'aimerais savoir, est possible de faire ce qui suit avec Mdadm:
sda
et sdb
.sdc
et déplacez toutes les données de sdb
dessus.sdb
.En ce moment, je ne vois qu'une seule option - j'arrête la matrice, copie sdb
_ à sdc
avec dd
ou tout autre outil de copie de bloc et démarrez le tableau arrière.
Est-ce que ça me manque quelque chose? Est-il possible de le faire avec Mdadm?
Tout d'abord: à ceux qui croient toujours à "RAID0 n'a pas de rechange chaude". Cela pourrait avoir une réserve manuelle, faite par l'homme, qui comprennent les niveaux de raid et Mdadm. Mdadm est un raid logiciel, de sorte qu'il pourrait faire beaucoup de choses intéressantes.
Crédits à Zorecheche pour l'idée!
Si le temps d'arrêt est acceptable, vous pouvez toujours simplement effectuer une copie de bloc de disque avec DD et remonter le tableau, Mdadm fera OK.
RAID0 -> RAID4 -> RAID0
Donc, si vous ne vous souvenez pas RAID4, c'est simple. Il a un bloc de parité, mais contrairement à RAID5, il n'est pas distribué sur le tableau, mais réside sur un disque. C'est le point, c'est important et c'est la raison pour laquelle RAID5 ne fonctionnera pas.
Ce dont vous aurez besoin: deux autres disques de la même taille, comme le disque que vous souhaitez remplacer.
Sudo mdadm -C /dev/md0 -l 0 -n 2 /dev/sd[bc]
md0 : active raid0 sdc[1] sdb[0]
2096128 blocks super 1.2 512k chunks
Nous avons créé RAID0 Array, il a l'air doux.
Sudo md5sum /dev/md0
b422ba644a3c83cdf28adfa94cb658f3 /dev/md0
Ceci est notre point de contrôle - si même un bit va différer en résultant /dev/md0
- nous avons échoué.
Sudo mdadm /dev/md0 --grow --level=4
md0 : active raid4 sdc[1] sdb[0]
2096128 blocks super 1.2 level 4, 512k chunk, algorithm 5 [3/2] [UU_]
Donc, nous avons grandi notre tableau pour être RAID4. Nous n'avons pas encore ajouté le disque de parité, alors faisons-le. La croissance sera instantanée - il n'y a rien à recalculer ou à recalculer.
Sudo mdadm /dev/md0 -a /dev/sdd
md0 : active raid4 sdd[3] sdc[1] sdb[0]
2096128 blocks super 1.2 level 4, 512k chunk, algorithm 5 [3/2] [UU_]
[===>.................] recovery = 19.7% (207784/1048064) finish=0.2min speed=51946K/sec
Nous avons ajouté sdd
comme disque de parité. Ceci est important à vous rappeler - l'ordre des disques de la première rangée n'est pas syncronisé avec la photo en deuxième rangée! [Uu_]
sdd
est affiché d'abord, mais il est en fait la dernière et ne contient pas les données, mais la parité.
Sudo mdadm /dev/md0 -f /dev/sdb
md0 : active raid4 sdd[3] sdc[1] sdb[0](F)
2096128 blocks super 1.2 level 4, 512k chunk, algorithm 5 [3/2] [_UU]
Nous avons rendu notre disque SDB défectueux, pour la supprimer dans les étapes suivantes.
Sudo mdadm --detail /dev/md0
State : clean, degraded
Number Major Minor RaidDevice State
0 0 0 0 removed
1 8 32 1 active sync /dev/sdc
3 8 48 2 active sync /dev/sdd
0 8 16 - faulty spare /dev/sdb
Les détails montrent-nous la suppression du premier disque et nous pouvons voir ici le véritable ordre des disques de la matrice. Il est important de suivre le disque avec la parité, nous ne devrions pas le laisser dans la matrice lorsque vous revenez à RAID0.
Sudo mdadm /dev/md0 -r /dev/sdb
md0 : active raid4 sdd[3] sdc[1]
2096128 blocks super 1.2 level 4, 512k chunk, algorithm 5 [3/2] [_UU]
sdb
est complètement enlevé, pourrait être enlevé.
Sudo mdadm /dev/md0 -a /dev/sde
md0 : active raid4 sde[4] sdd[3] sdc[1]
2096128 blocks super 1.2 level 4, 512k chunk, algorithm 5 [3/2] [_UU]
[==>..................] recovery = 14.8% (156648/1048064) finish=0.2min speed=52216K/sec
Nous avons ajouté le remplacement de notre disque SDB. Et ici, nous allons: maintenant les données de SDB est en cours de récupération à l'aide de la parité. sweeeeet.
md0 : active raid4 sde[4] sdd[3] sdc[1]
2096128 blocks super 1.2 level 4, 512k chunk, algorithm 5 [3/3] [UUU]
Terminé. À l'heure actuelle, nous sommes complètement sûrs - toutes les données de SDB sont récupérées et nous devons maintenant supprimer SDD (rappelez-vous, il contient la parité).
Sudo mdadm /dev/md0 -f /dev/sdd
md0 : active raid4 sde[4] sdd[3](F) sdc[1]
2096128 blocks super 1.2 level 4, 512k chunk, algorithm 5 [3/2] [UU_]
Fait SDD défectueux.
Sudo mdadm /dev/md0 -r /dev/sdd
md0 : active raid4 sde[4] sdc[1]
2096128 blocks super 1.2 level 4, 512k chunk, algorithm 5 [3/2] [UU_]
Supprimé SDD de notre tableau. Nous sommes prêts à devenir raid0 à nouveau.
Sudo mdadm /dev/md0 --grow --level=0 --backup-file=backup
md0 : active raid4 sde[4] sdc[1]
2096128 blocks super 1.2 level 4, 512k chunk, algorithm 5 [3/2] [UU_]
[=>...................] reshape = 7.0% (73728/1048064) finish=1.5min speed=10532K/sec
Aaaaaaand bang!
md0 : active raid0 sde[4] sdc[1]
2096128 blocks super 1.2 512k chunks
Terminé. Regardons le checksum MD5.
Sudo md5sum /dev/md0
b422ba644a3c83cdf28adfa94cb658f3 /dev/md0
D'autres questions? Donc raid0 pourrait avoir une eau de rechange chaude. Ça s'appelle "utilisateur";)
Pour autant que je sache une fois que vous avez configuré un RAID0, vous ne pouvez pas changer l'un des disques. Vous pouvez prendre une sauvegarde et commuter les disques et restaurer la sauvegarde. Je voudrais juste raid5 ces 3 disques que vous avez. De cette façon à l'avenir, vous pouvez laisser tomber un disque et la reconstruire toujours.
RAID 0 ne fournit pas de redondance.
Donc, il ne prend pas en charge le remplacement du lecteur chaud.