1

Тема: Не получается заменить диски на больший объем

ситуация такая: есть ReadyNas 102. В нем несколько лет крутятся два диска по 4ТБ в зеркале x-raid.
стало заканчиваться место. взял 2 диска по 8ТБ.
выключил устройство, заменил один из дисков, включил устройство. через несколько минут автоматически пошел процесс замены.
на следующий день, когда процесс закончился, выключил устройство, поменял второй диск, включил устройство. а оно не появляется в сети. вернул обратно последний замененный диск - все запускается и пишет, что все в порядке.
стал разбираться дальше. включил ssh, запустил команду:

root@netgear-nas:~# cat /proc/mdstat
Personalities : [raid0] [raid1] [raid10] [raid6] [raid5] [raid4]
md127 : active raid1 sdb3[0] sda3[2]
      3902166784 blocks super 1.2 [2/2] [UU]
      bitmap: 0/30 pages [0KB], 65536KB chunk

md1 : active raid1 sdb2[0] sda2[1]
      523968 blocks super 1.2 [2/2] [UU]

md0 : active raid1 sdb1[0]
      4190208 blocks super 1.2 [2/1] [U_]

unused devices: <none>

понял, что системный раздел не отзеркалился. есть способ отзеркалить его, не сбрасывая настройки системы?
в линуксе разбираюсь довольно слабо. выяснил, что команда parted не поддерживается. а fdisk, который поддерживается, не умеет работать с gpt. так что пока даже не знаю, как создать sda1...
как вариант, могу вытащить диск и подключить его к убунте. там я смогу запустить parted и создать соответствующий раздел. но не приведет ли это к каким-нить еще проблемам? или есть совсем штатное средство?

ЗЫ микрокод 6.1.8. давно предлагает обновиться до 6.2.5. но у меня и так все работало - не заморачивался этим. опасаюсь получить что-то вроде http://forum.netgear.ru/viewtopic.php?id=8354...

2 (22.03.2017 17:16:53 отредактировано sost)

Re: Не получается заменить диски на больший объем

sherv пишет:

выключил устройство, заменил один из дисков, включил устройство. через несколько минут автоматически пошел процесс замены.

Диск меняется "в горячую", на работающем НАС, без всяких включений/выключений.
Можно выключив НАС вытащить один диск и после загрузиться со второго диска и в горячую вставить чистый диск.

3

Re: Не получается заменить диски на больший объем

проверил - замена "в горячую" ситуацию не изменила. включил устройство с одним диском, подождал ответа в вэб интерфейсе. воткнул другой диск - через некоторое время запустился процесс перестроения. сейчас ситуация такая:
root@netgear-nas:~# cat /proc/mdstat
Personalities : [raid0] [raid1] [raid10] [raid6] [raid5] [raid4]
md1 : active raid1 sdb2[1] sda2[0]
      523968 blocks super 1.2 [2/2] [UU]
        resync=DELAYED

md127 : active raid1 sdb3[3] sda3[2]
      3902166784 blocks super 1.2 [2/1] [_U]
      [=>...................]  recovery =  5.4% (213144512/3902166784) finish=399.7min speed=153794K/sec
      bitmap: 3/30 pages [12KB], 65536KB chunk

md0 : active raid1 sda1[2]
      4190208 blocks super 1.2 [2/1] [_U]

unused devices: <none>

как видим, md0 опять не планирует перестраиваться. единственная мысль о том, какой еще косяк мог быть с моей стороны - я забыл, что gpt имеет таблицы с обоих концов диска и делал диск "пустым" перед установкой простым стиранием первого миллиона секторов в начале диска с помощью mhdd.
в любом случае, пока решил проблему другим способом - подключил диски к компу с убунтой, поставил там gdisk и mdadm. с помощью gdisk посмотрел размер первого раздела на исходном диске и создал такой же на новом. затем, с помощью mdadm добавил этот раздел к соответствующему массиву, дождался окончания ресинхронизации и переставил все это обратно в нетгир. он все успешно подцепил и нормально грузится с любого из дисков (проверил по очереди).
пока остается открытым вопрос, расширит ли он автоматически размер раздела после окончания перестроения. но, по крайней мере, том по-прежнему x-raid.
ЗЫ в убунте том с данными отлично монтируется (разумеется, нужен mdadm, чтобы она в принципе могла работать с рэйд-массивами) и видны все данные, в том числе и все снимки в папках /._share/<folder>/.snapshot/... а то я тут натыкался на тему с обсуждением того, что делать, если железка умерла. это один из вариантов...

4 (23.03.2017 15:11:41 отредактировано sost)

Re: Не получается заменить диски на больший объем

sherv пишет:

как видим, md0 опять не планирует перестраиваться.

Пока не закончит с одним разделом (md127), за другой не возьмется. Я перед тем как вставлять новый диск на расширение/синхронизацию - убиваю под виндой все разделы в GPT на "новом" диске

Этим тоже можо смотреть на разделы дисков

#mdadm --detail --scan --verbose
#lshw -short

На финише можно попробовать OS Reinstall из Boot Menu, не знаю, но может загонит раздел OS в Raid1

5

Re: Не получается заменить диски на больший объем

Пока не закончит с одним разделом (md127), за другой не возьмется.

Это-то понятно. только взяться он собирается за md1 - там написано  resync=DELAYED. а md0 у него в планах нет. уже проверено на предыдущей замене.

mdadm --detail --scan --verbose

ничего нового не сказало - по прежнему в md0 только 1 раздел, а в остальных - по 2.
lshw
-bash: lshw: command not found

OS Reinstall, как я понял, сбрасывает все настройки, то есть заново вводить всех пользователей, создавать все шары, создавать планы бэкапов и снимков. очень неохота... я прошивку-то обновлять не хочу - опасаюсь, что устройство пропадет из видимости, а тут гарантированно поиметь гемор с настройкой - спасибо, не надо...

6

Re: Не получается заменить диски на больший объем

sherv пишет:

lshw
-bash: lshw: command not found

Нужно сначала установить пакет, но нового он также ничего не скажет.

#apt-get install lshw

sherv пишет:

OS Reinstall, как я понял, сбрасывает все настройки

OS reinstall только переустановит систему не затрагивая пользовательских данных и настроек. Может сбросить пароль к значению по умолчанию. Это безболезненная операция.

7

Re: Не получается заменить диски на больший объем

не знал, что там есть apt. спасибо за информацию!
несколько странное поведение:

root@netgear-nas:~# apt-get install gdisk
Reading package lists... Done
Building dependency tree
Reading state information... Done
gdisk is already the newest version.
The following package was automatically installed and is no longer required:
  libswresample0
Use 'apt-get autoremove' to remove it.
0 upgraded, 0 newly installed, 0 to remove and 47 not upgraded.
root@netgear-nas:~# gdisk
-bash: gdisk: command not found

что я делаю не так?
кстати, диски досинхронизировались и теперь запустился процесс перестроения уже с размером 8ТБ. md1 теперь просто в норме - без планов ресинхронизации. md0 по прежнему доступен 1 диск из 2 и нет планов по ресинхронизации. утром посмотрим, что изменится.

8

Re: Не получается заменить диски на больший объем

кажется, разобрался. пакет gdisk в этой версии линукса урезан. в нем нет команд gdisk и cgdisk, но есть sgdisk. уже хотел с ее помощью все поправить, но решил все-таки дождаться завершения ресинхронизации - вдруг он действительно создаст второй раздел для md0 сам.

9

Re: Не получается заменить диски на больший объем

Как и следовало ожидать, с утра было все то же самое:

root@netgear-nas:~# cat /proc/mdstat
Personalities : [raid0] [raid1] [raid10] [raid6] [raid5] [raid4]
md1 : active raid1 sdb2[1] sda2[0]
      523968 blocks super 1.2 [2/2] [UU]

md127 : active raid1 sdb3[3] sda3[2]
      7809176800 blocks super 1.2 [2/2] [UU]

md0 : active raid1 sda1[2]
      4190208 blocks super 1.2 [2/1] [_U]

unused devices: <none>

пока сделал так:

root@netgear-nas:~# sgdisk -p /dev/sda
Disk /dev/sda: 15628053168 sectors, 7.3 TiB
Logical sector size: 512 bytes
Disk identifier (GUID): <xxx>
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 15628053134
Partitions will be aligned on 64-sector boundaries
Total free space is 61 sectors (30.5 KiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1              64         8388671   4.0 GiB     FD00  Linux RAID
   2         8388672         9437247   512.0 MiB   FD00
   3         9437248     15628053103   7.3 TiB     FD00
root@netgear-nas:~# sgdisk -p /dev/sdb
Disk /dev/sdb: 15628053168 sectors, 7.3 TiB
Logical sector size: 512 bytes
Disk identifier (GUID): <xxx>
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 15628053134
Partitions will be aligned on 64-sector boundaries
Total free space is 8388669 sectors (4.0 GiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   2         8388672         9437247   512.0 MiB   FD00
   3         9437248     15628053103   7.3 TiB     FD00
root@netgear-nas:~# sgdisk -n=1:64:8388671 /dev/sdb
Warning: The kernel is still using the old partition table.
The new table will be used at the next reboot.
The operation has completed successfully.

т.е. посмотрел, что в /dev/sdb нет первого раздела и создал его по образу и подобию /dev/sda.
затем проверил, как получилось:

root@netgear-nas:~# sgdisk -p /dev/sdb
Disk /dev/sdb: 15628053168 sectors, 7.3 TiB
Logical sector size: 512 bytes
Disk identifier (GUID): <xxx>
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 15628053134
Partitions will be aligned on 64-sector boundaries
Total free space is 61 sectors (30.5 KiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1              64         8388671   4.0 GiB     8300
   2         8388672         9437247   512.0 MiB   FD00
   3         9437248     15628053103   7.3 TiB     FD00

и увидел, что код не тот. поменял его такой командой:

root@netgear-nas:~# sgdisk -t=1:FD00 /dev/sdb
Warning: The kernel is still using the old partition table.
The new table will be used at the next reboot.
The operation has completed successfully.
root@netgear-nas:~# sgdisk -p /dev/sdb
Disk /dev/sdb: 15628053168 sectors, 7.3 TiB
Logical sector size: 512 bytes
Disk identifier (GUID): <xxx>
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 15628053134
Partitions will be aligned on 64-sector boundaries
Total free space is 61 sectors (30.5 KiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1              64         8388671   4.0 GiB     FD00
   2         8388672         9437247   512.0 MiB   FD00
   3         9437248     15628053103   7.3 TiB     FD00

теперь все ок. сегодня устройство перезагрузить не получится - толпа народу с ним работает. вечером, или завтра перезагружу - потом продолжу...

10

Re: Не получается заменить диски на больший объем

перезагрузил. проверил:

root@netgear-nas:~# cat /proc/mdstat
Personalities : [raid0] [raid1] [raid10] [raid6] [raid5] [raid4]
md127 : active raid1 sdb3[3] sda3[2]
      7809176800 blocks super 1.2 [2/2] [UU]

md1 : active raid1 sda2[0] sdb2[1]
      523968 blocks super 1.2 [2/2] [UU]

md0 : active raid1 sda1[2]
      4190208 blocks super 1.2 [2/1] [_U]

unused devices: <none>
root@netgear-nas:~# ls -lha /dev/sd*
brw-rw---T 1 root disk 8,  0 Mar 25 21:35 /dev/sda
brw-rw---T 1 root disk 8,  1 Mar 25 21:35 /dev/sda1
brw-rw---T 1 root disk 8,  2 Mar 25 21:35 /dev/sda2
brw-rw---T 1 root disk 8,  3 Mar 25 21:35 /dev/sda3
brw-rw---T 1 root disk 8, 16 Mar 25 21:35 /dev/sdb
brw-rw---T 1 root disk 8, 17 Mar 25 21:35 /dev/sdb1
brw-rw---T 1 root disk 8, 18 Mar 25 21:35 /dev/sdb2
brw-rw---T 1 root disk 8, 19 Mar 25 21:35 /dev/sdb3

добавил отсутствующий раздел и еще раз проверил:

root@netgear-nas:~# mdadm --manage /dev/md0 --add /dev/sdb1
mdadm: added /dev/sdb1
root@netgear-nas:~# cat /proc/mdstat
Personalities : [raid0] [raid1] [raid10] [raid6] [raid5] [raid4]
md127 : active raid1 sdb3[3] sda3[2]
      7809176800 blocks super 1.2 [2/2] [UU]

md1 : active raid1 sda2[0] sdb2[1]
      523968 blocks super 1.2 [2/2] [UU]

md0 : active raid1 sdb1[3] sda1[2]
      4190208 blocks super 1.2 [2/1] [_U]
      [===>.................]  recovery = 15.4% (648064/4190208) finish=0.2min speed=216021K/sec

unused devices: <none>

и через минуту:

root@netgear-nas:~# cat /proc/mdstat
Personalities : [raid0] [raid1] [raid10] [raid6] [raid5] [raid4]
md127 : active raid1 sdb3[3] sda3[2]
      7809176800 blocks super 1.2 [2/2] [UU]

md1 : active raid1 sda2[0] sdb2[1]
      523968 blocks super 1.2 [2/2] [UU]

md0 : active raid1 sdb1[3] sda1[2]
      4190208 blocks super 1.2 [2/2] [UU]

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

11

Re: Не получается заменить диски на больший объем

Диски зеркальные, не вижу причин почему не сможет грузиться с любого из них. У меня грузится.

12

Re: Не получается заменить диски на больший объем

я же сказал - сомневаюсь, потому что не знаю, должен ли быть на этих дисках загрузчик, и если да - есть ли он на обоих дисках. просто не знаю, какими командами это выяснить.
в обычном линуксе существует такая процедура, как установка загрузчика. она может быть осуществлена как на основную загрузочную область диска, так и на загрузочную область раздела (по крайней мере, в mbr это так. так ли в gpt - не уверен, но какой-то аналог точно должен быть). и если мы ставим линукс на обычный комп, используя два диска с полностью зеркальными разделами, то для возможности загрузки с любого из дисков нам нужно установить загрузчик на каждый из них (и файл /proc/mdstat нам ничего не скажет о том, на каких из дисков есть загрузчик). а здесь я этот процесс не осуществлял. и я не знаю, как выяснить, есть ли загрузчик на втором диске, а также - есть ли он на первом диске, т.е. нужен ли он вообще этому устройству. поэтому и спрашиваю.
тот факт, что у вас он грузится с любого диска, не означает, что так же будет и у меня. у вас и диски сами дублируются полностью, а у меня - только данные и своп...