Восстановление диска в raid. Замена диска в raid.

по сравнению с
Ключ
Эта строка удалена.
Это слово было удалено. Это слово было добавлено.
Эта строка добавлена.

Изменения (36)

просмотр истории страницы
*Предварительно рекомендуем скопировать бэкап на отдельный диск.*

1. Найти рабочий диск, например /dev/hda
# Найдите рабочий диск, например /dev/sda
{panel}
cat /proc/mdstat
{panel}
2. Найти новый/сбойнувший диск, например /dev/hdb
# Найдите сбойнувший диск, например /dev/sdb
Установите пакет с программой smartctl
{panel}
yum -y install smartmontools
{panel}
Узнайте серийный номер диска.
{panel}
smartctl --all /dev/sdb | fgrep 'Serial Number'
{panel}
Пример вывода:
{panel}
Serial Number: WD-WCAW00000111
{panel}
Физически удалите диск с номером из сервера.
# Установите новый диск в сервер. Он может быть определён с темже названием, что и старый, например /dev/sdb
# Найдите новый диск, например /dev/sdb
{panel}
cat /proc/partitions
{panel}
Видим:
{code}
  9     1    1044160 md1 0 0 0 0 0 0 0 0 0 0 0
   9     2    1044160 md2 0 0 0 0 0 0 0 0 0 0 0
   9     3  232693376 md3 0 0 0 0 0 0 0 0 0 0 0
   9     4   58163264 md4 0 0 0 0 0 0 0 0 0 0 0
   8     0  292968750 sda 32 144 352 60 0 0 0 0 0 60 60
   8     1     102400 sda1 13 63 152 24 0 0 0 0 0 24 24
   8     2  291887104 sda2 13 63 152 13 0 0 0 0 0 13 13
   8    16  292968750 sdb 10278 23561 266544 120180 16966 24283 342560 6129218 0 61470 6297908
   8    17    1044224 sdb1 3650 14116 141378 25627 4 3 32 23 0 18597 25650
   8    18    1044225 sdb2 28 97 262 73 1 0 8 5 0 78 78
   8    19  232693492 sdb3 6532 9204 124264 93640 16817 23727 336936 6103175 0 55273 6245323
   8    20   58163332 sdb4 62 126 592 815 144 553 5584 26016 0 23298 26831
{code}
Здесь видно что диск sda скорее всего новый(в данном случае это так). Лучше знать наверняка какой диск вы поменяли.
  # cat /proc/partitions
major minor #blocks name

8 0 244140625 sda
8 1 3906233 sda1
8 2 14648320 sda2
8 3 33164288 sda3
8 4 1952768 sda4
8 5 145993728 sda5
8 6 22110208 sda6
8 7 11054080 sda7
9 3 33164224 md3
9 4 1952704 md4
9 5 145993664 md5
9 6 22110144 md6
9 7 11054016 md7
9 1 3906112 md1
9 2 14648256 md2
8 16 244140625 sdb
{code}
Здесь видно что диск sdb скорее всего новый(в данном случае это так). Лучше знать наверняка, какой диск вы поменяли. Проверьте его серийный номер(пункт 2).
3. # Допустим в рейде уже есть разделы /dev/sdba, а новый диск /dev/sdab. Создаем таблицу разделов на новом диске
*Важно: не перепутайте диски местами*
{panel}
sfdisk \-d /dev/sdb \| sfdisk \--force /dev/sda 
sgdisk \-R /dev/sdb /dev/sda
sgdisk \-G /dev/sdb
{panel}
После этого будет показана таблица новых разделов в формате:
Проверяем что разделы создались
{panel}
cat /proc/partitions
{panel}
Видим:
{code}
Device Boot Start End #sectors Id System
/dev/sda1 * 1 2088449 2088449 83 Linux
/dev/sda2 2088450 4176899 2088450 82 Linux swap
/dev/sda3 4176900 469563884 465386985 83 Linux
/dev/sda4 469563885 585890549 116326665 83 Linux
Successfully wrote the new partition table
{code}
4. Подключаем созданные разделы в raid:
# cat /proc/partitions
major minor #blocks name

8 0 244140625 sda
8 1 3906233 sda1
8 2 14648320 sda2
8 3 33164288 sda3
8 4 1952768 sda4
8 5 145993728 sda5
8 6 22110208 sda6
8 7 11054080 sda7
9 3 33164224 md3
9 4 1952704 md4
9 5 145993664 md5
9 6 22110144 md6
9 7 11054016 md7
9 1 3906112 md1
9 2 14648256 md2
8 16 244140625 sdb
8 17 3906233 sdb1
8 18 14648320 sdb2
8 19 33164288 sdb3
8 20 1952768 sdb4
8 21 145993728 sdb5
8 22 22110208 sdb6
8 23 11054080 sdb7
{code}
# Подключаем созданные разделы диска sdb в raid:
{panel}
mdadm \-a /dev/md1 /dev/sdab1

mdadm \-a /dev/md2 /dev/sdab2

mdadm \-a /dev/md3 /dev/sdab3

mdadm \-a /dev/md4 /dev/sdab4
{panel}
При этом могут выводится сообщения вида: *mdadm: hot added /dev/hdb1*

Проверить добавился ли диск можно командой:
mdadm \-a /dev/md5 /dev/sdb5

{panel}
cat /proc/partitions
{panel}
Тогда вывод уже сстанет такой:
mdadm \-a /dev/md6 /dev/sdb6

mdadm \-a /dev/md7 /dev/sdb7
{panel}
При этом могут выводится сообщения вида: *mdadm: added /dev/sdb6*
# Мониторим восстановление дисков командой 
{code}
  9     1    1044160 md1 0 0 0 0 0 0 0 0 0 0 0
   9     2    1044160 md2 0 0 0 0 0 0 0 0 0 0 0
   9     3  232693376 md3 0 0 0 0 0 0 0 0 0 0 0
   9     4   58163264 md4 0 0 0 0 0 0 0 0 0 0 0
   8     0  292968750 sda 39 165 408 136 9009 86645 765266 33061 5 12557 33205
   8     1    1044224 sda1 14 66 160 31 9002 86645 765216 32972 5 12485 33010
   8     2    1044225 sda2 14 66 160 20 3 0 24 29 0 49 49
   8     3  232693492 sda3 1 3 8 20 2 0 16 30 0 50 50
   8     4   58163332 sda4 1 3 8 32 1 0 8 25 0 57 57
   8    16  292968750 sdb 43739 389173 3459312 263437 36005 44525 659920 11397382 0 151486 11724451
   8    17    1044224 sdb1 12644 101106 909250 28795 8 3 64 39 0 21074 28833
   8    18    1044225 sdb2 28 97 262 73 1 0 8 5 0 78 78
   8    19  232693492 sdb3 30998 287823 2549152 233729 35559 43682 649624 11331060 0 142846 11628413
   8    20   58163332 sdb4 62 126 592 815 437 840 10224 66281 0 63480 67096
{code}
5. Меняем провода для жестких дисков.

6. Мониторим восстановление дисков командой 
{code}
cat /proc/mdstat
Personalities : [linear] [raid0] [raid1] [raid5]
1044160 blocks [2/2] [UU]
{code}
Здесь видно, что прошло заполнение раздела md1. В нем уже видно два диска (символы UU). В остальных разделах пока по одному диску.
# Ожидаем заполнения дисков.
{panel}
cat /proc/mdstat
{panel} {info}
Примечание: Если на живой системе восстановить не удается из-за занятости устройств, можно загрузиться с установочного CD-диска и выполнить эти команды на консоли ALT+F2.
{info}