Автор Тема: Программный RAID-10. Замена диска. (РЕШЕНО)  (Прочитано 16521 раз)

Оффлайн San

  • Давно тут
  • **
  • Сообщений: 664
Re: Программный RAID-10. Замена диска...
« Ответ #15 : 16.11.2016 14:51:49 »
Если он был /dev/sdb, то сейчас /dev/sdb и уберётся, но который сейчас рабочий. Со всеми вытекающими.
Нет, ну  я на sda, sdb, sdc не покушаюсь! Я попробую sdd убрать...

Оффлайн San

  • Давно тут
  • **
  • Сообщений: 664
Re: Программный RAID-10. Замена диска...
« Ответ #16 : 17.11.2016 10:55:36 »
Как я понимаю - из двух raid1 массивов получается одна устойчивая половинка страйп
Вот к этому я и вел. Бухгалтерия то работает, данные изменяются...
Вторая половинка страйп у вас состоит из одного диска. Важны не данные на диске, а структура диска. Она должна быть идентична любому из этих дисков. А вот данные восстановится автоматом, при подключении нового диска с нужной структурой. Это примерно то-жк, что и при добавления диска в обычный raid1
Скорее тогда вторая половинка зеркала... Ну раз мы будем копировать структуру то...
А вот тут стоп. Его уже нет, Руслан не прав кажется.
Я заглянул в cat /etc/mdadm.conf
# cat /etc/mdadm.conf
#
#  /etc/mdadm.conf  --  mdadm configuration file
#
#  Customized for ALTLinux
#  See complete sample on manual page and in documentation directory
#
#  This is a minimalistic skeleton but it should work out-of:a+box!
#

MAILADDR root
PROGRAM /sbin/mdadm-syslog-events
DEVICE partitions

ARRAY /dev/md0 UUID=a5f0986e:ad4eced2:6a9ef733:58be3542
ARRAY /dev/md1 UUID=f6c0c8d6:2938862c:8a018497:28a69d90
ARRAY /dev/md2 UUID=9f864998:7bd0268e:9ab07479:4e1cee10
По UID подключенных разделов получается что пока четыре диска...
А на них что, таблицы разделов разные ?
А кто их знает? :-)
sfdisk и fdisk выдают разную информацию. Сейчас поищу как пересчитать физические данные диска в сектора...
Это вывод sfdisk на удаленном компьтере с RAID:
# sfdisk -l

Диск /dev/sda: 121601 цилиндров, 255 головок, 63 секторов/дорожку
Units: cylinders of 8225280 bytes, blocks of 1024 bytes, counting from 0

  Устр-во Загр   Нач   Конец    #цил     #блоки   Id  Система                                                                                                                                     
/dev/sda1   *      0+   1565-   1566-  12577792   fd  Автоопределение Linux raid                                                                                                                   
/dev/sda2       1566+   2500-    935-   7502848   fd  Автоопределение Linux raid                                                                                                                   
/dev/sda3       2500+ 121600- 119101- 956674048   fd  Автоопределение Linux raid                                                                                                                   
/dev/sda4          0       -       0          0    0  Пустой                                                                                                                                       
                                                                                                                                                                                                   
Диск /dev/sdb: 121601 цилиндров, 255 головок, 63 секторов/дорожку                                                                                                                                 
Units: cylinders of 8225280 bytes, blocks of 1024 bytes, counting from 0                                                                                                                           
                                                                                                                                                                                                   
  Устр-во Загр   Нач   Конец    #цил     #блоки   Id  Система                                                                                                                                     
/dev/sdb1   *      0+   1566-   1567-  12581888   fd  Автоопределение Linux raid                                                                                                                   
/dev/sdb2       1566+   2500-    935-   7502848   fd  Автоопределение Linux raid                                                                                                                   
/dev/sdb3       2500+ 121600- 119101- 956674048   fd  Автоопределение Linux raid                                                                                                                   
/dev/sdb4          0       -       0          0    0  Пустой                                                                                                                                       
                                                                                                                                                                                                   
Диск /dev/sdc: 121601 цилиндров, 255 головок, 63 секторов/дорожку                                                                                                                                 
Units: cylinders of 8225280 bytes, blocks of 1024 bytes, counting from 0                                                                                                                           
                                                                                                                                                                                                   
  Устр-во Загр   Нач   Конец    #цил     #блоки   Id  Система                                                                                                                                     
/dev/sdc1   *      0+   1566-   1567-  12581888   fd  Автоопределение Linux raid                                                                                                                   
/dev/sdc2       1566+   2500-    935-   7502848   fd  Автоопределение Linux raid
/dev/sdc3       2500+ 121600- 119101- 956674048   fd  Автоопределение Linux raid
/dev/sdc4          0       -       0          0    0  Пустой

Диск /dev/md2: 478336992 цилиндров, 2 головок, 4 секторов/дорожку

Диск /dev/md1: 3751392 цилиндров, 2 головок, 4 секторов/дорожку
А это fdisk с моего компьютера на котором я разметил НОВЫЙ диск:
# fdisk -l /dev/sdf

Disk /dev/sdf: 1000.2 GB, 1000204886016 bytes, 1953525168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x649f4293

Устр-во Загр     Начало       Конец       Блоки   Id  Система
/dev/sdf1            2048  1953525167   976761560   fd  Автоопределение Linux raid
mdadm достаточно спокойно относится к неточному соответствию разделов, но лучше бы сделать поточнее. Однако ещё но. Какой размер сектора у старых дисков и какой у нового ? Если старые с 512b, а новый - 4K, то есть вероятность, что раздел, будучи скопированным с какого-то из старых, окажется невыровненным на границу сектора. Это плохо скажется на производительности. Если так, надо выравнивать раздел в первую очередь.
На счет верхних выводов sfdisk и fdisk что можете сказать?
На "нет" есть apt-get install fdisk. Ну или любым другим образом геометрию посмотреть.
Не могу быстро найти, под руку не попадается, хотя вроде даже это в моих темах мне отвечали что fdisk на системах с sysvinit ставитьть не стоит. А sfdisk не аналог fdisk? В чём сильное различие? По описанию то вроде подходит же?
Я просто ничем другим не пользуюсь - у меня нет засилья многотерабайтных hdd пока, с которыми он не работает нормально.
Ну вот мой рабочий комп с systemd, на нем большие диски стоят, и fdisk по умолчанию и работает нормально...

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 30 553
  • Учиться .... Телепатами не рождаются, ими ....
    • Email
Re: Программный RAID-10. Замена диска...
« Ответ #17 : 17.11.2016 13:02:34 »
Не могу быстро найти, под руку не попадается, хотя вроде даже это в моих темах мне отвечали что fdisk на системах с sysvinit ставитьть не стоит. А sfdisk не аналог fdisk? В чём сильное различие? По описанию то вроде подходит же?
Да, у них "сердцевина" одна и та-же, просто интерфейс fdisk заточен на человека, а sfdisk на скрипты.
Но если говорить о выравнивании разделов, то надо смотреть в сторону partted/gparted.

Не знаю насколько это методически правильно, но я-бы через sfdisk скопировал-бы структуру диска, а потом через parted/gparted выровнил-бы начала разделов на границу. 4M (вроде такое выравнивание советуют на современных дисках с RAID, хотя я могу путать в SD диском).

Оффлайн asy

  • alt linux team
  • ***
  • Сообщений: 7 421
  • Sunny 273 RUS crew
Re: Программный RAID-10. Замена диска...
« Ответ #18 : 17.11.2016 15:53:22 »
Цитировать
Sector size (logical/physical): 512 bytes / 4096 bytes
Это hdd с 4K сектором.

Только вот почему 1 раздел ? На остальных же по три ? fdisk -l /dev/sda что показывает ?

Оффлайн San

  • Давно тут
  • **
  • Сообщений: 664
Re: Программный RAID-10. Замена диска...
« Ответ #19 : 17.11.2016 17:49:47 »
Только вот почему 1 раздел ? На остальных же по три ?
Так это я на другом компе разметил, на своем рабочем, и вывод с него...
fdisk -l /dev/sda что показывает ?
На том компе только sfdisk...

Что то кажется я зря его разметил? Да? Наверное нужно оставить не размеченным и скопировать разделы через sfdisk?

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 30 553
  • Учиться .... Телепатами не рождаются, ими ....
    • Email
Re: Программный RAID-10. Замена диска...
« Ответ #20 : 17.11.2016 22:33:27 »
Наверное нужно оставить не размеченным и скопировать разделы через sfdisk?
Да, это проще всего. Но ... размер-то разный.

Оффлайн San

  • Давно тут
  • **
  • Сообщений: 664
Re: Программный RAID-10. Замена диска...
« Ответ #21 : 18.11.2016 03:14:21 »
Да, это проще всего. Но ... размер-то разный.
А где это видно?

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 30 553
  • Учиться .... Телепатами не рождаются, ими ....
    • Email
Re: Программный RAID-10. Замена диска...
« Ответ #22 : 18.11.2016 07:21:04 »
Диск /dev/sda: 121601 цилиндров, 255 головок, 63 секторов/дорожку
Units: cylinders of 8225280 bytes, blocks of 1024 bytes, counting from 0
Disk /dev/sdf: 1000.2 GB, 1000204886016 bytes, 1953525168 sectors

8225280 байт Х 121601 ~ 977 ГБ != 1000 GB

Оффлайн San

  • Давно тут
  • **
  • Сообщений: 664
Re: Программный RAID-10. Замена диска...
« Ответ #23 : 18.11.2016 08:46:31 »
К байтам вернусь чуть позже,и подробнее опишу что получилось.

А сейчавс подскажите еще один вопрос: - Как узнать что нужно восстанавливать GRUB?

Оффлайн asy

  • alt linux team
  • ***
  • Сообщений: 7 421
  • Sunny 273 RUS crew
Re: Программный RAID-10. Замена диска...
« Ответ #24 : 18.11.2016 08:58:26 »
На том компе только sfdisk...
Так apt-get install fdisk. Они из одного srpm собираются:
https://packages.altlinux.org/en/Sisyphus/srpms/util-linux
В репозитории, соответственно, есть оба.

Что то кажется я зря его разметил? Да? Наверное нужно оставить не размеченным и скопировать разделы через sfdisk?

В обычных условиях - да. Но сейчас, скорее всего, разделы копировать не следует, хотя и можно. Что-то подсказывает мне, что там не 4K сектор и о выравнивании разделов по 4K никто не думал. Работать без выравнивания будет, но медленно.
« Последнее редактирование: 18.11.2016 09:02:20 от asy »

Оффлайн asy

  • alt linux team
  • ***
  • Сообщений: 7 421
  • Sunny 273 RUS crew
Re: Программный RAID-10. Замена диска...
« Ответ #25 : 18.11.2016 09:04:53 »
А сейчавс подскажите еще один вопрос: - Как узнать что нужно восстанавливать GRUB?

А надо ? Может и не надо. Но можно обновить конфигурацтю просто так. Или можно просто ядро обновить, до кучи.

Оффлайн San

  • Давно тут
  • **
  • Сообщений: 664
Re: Программный RAID-10. Замена диска...
« Ответ #26 : 18.11.2016 09:30:51 »
А надо ? Может и не надо.
Наверное в торопях не правильно вопрос поставил, чуть подробнее. Везде пишут что после завершения операции синхронизации выполните:
#grub-install /dev/sdb
#update-grub
Почему sdb ? Или может просто #update-grub достаточно?

Просто уже синхронизация идет, а что даль делать - нет полной уверенности... Был бы хоть компьютер с монитором, а то все по терминалу удаленному... Это в принципе нормально, ...если удаленная машина загрузилась...

Оффлайн asy

  • alt linux team
  • ***
  • Сообщений: 7 421
  • Sunny 273 RUS crew
Re: Программный RAID-10. Замена диска...
« Ответ #27 : 18.11.2016 11:46:05 »
А надо ? Может и не надо.
Наверное в торопях не правильно вопрос поставил, чуть подробнее. Везде пишут что после завершения операции синхронизации выполните:
#grub-install /dev/sdb
#update-grub
Почему sdb ?
Загрузчик, или, по крайней мере, его часть, записывается на нулевой цилиндр HDD, не попадающий в зону действия программного RAID. Соответственно, случись что, система не загрузится с нового HDD. Разумеется, надо не именно sdb, а то устройство, которое появилось.
Или может просто #update-grub достаточно?
А вот это не знаю. Просто lilo достаточно:
# lilo
Added Linux
...
The boot record of  /dev/md1  has been updated.

/dev/md1: LABEL="boot" UUID="d8040cec-b607-42c7-a7e8-f99df4ba577a" TYPE="ext4" PTTYPE="dos"
lilo.conf:
boot="UUID=d8040cec-b607-42c7-a7e8-f99df4ba577a"

А просто update-grub - попробуйте. :-)

Вообще, я могу оказаться не совсем прав в плане того, что нужная часть загрузчика не попадает в область действия RAID, но смотреть, что и куда попадает, честно говоря, лень. :-)
« Последнее редактирование: 18.11.2016 11:50:17 от asy »

Оффлайн San

  • Давно тут
  • **
  • Сообщений: 664
Re: Программный RAID-10. Замена диска...
« Ответ #28 : 21.11.2016 06:50:42 »
Всем ОГРОМНОЕ Человеческое Спасибо!

Проблему решил. Завтра-после завтра (как выкрою пару минут), разгребу консоли и выложу "отчет" что делал...
Вообще, я могу оказаться не совсем прав в плане того, что нужная часть загрузчика не попадает в область действия RAID, но смотреть, что и куда попадает, честно говоря, лень.
Я тоже не совсем понимаю, у меня после просмотра конфигуратора Груба создалось впечатление что загрузчик на md1 записан, а случае не предвиденной аварии (не пойму только как) будет грузится с sda, потом с sdb и так далее...
А просто update-grub - попробуйте
Тоже сделал не помешало...  :-)

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 30 553
  • Учиться .... Телепатами не рождаются, ими ....
    • Email