BSDPORTAL.RU

На этом сайте обсуждаются вопросы использования ОС FreeBSD
 Портал  •  Статьи  •  Форум  •  Wiki  •  Поиск  •  FAQ  •  Обои  •   Официальная документация  •  Новые темы 

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 5 ] 
Автор Сообщение
 Заголовок сообщения: gpart create с 34 блока
СообщениеДобавлено: Сб 16 фев, 2019 12:42 am 
Не в сети

Зарегистрирован: Сб 14 янв, 2006 12:09 pm
Сообщения: 11
Добрый день,

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

рабочий диск разбит с 34 блока
root@test:~ # gpart show ada0
=> 34 3907029101 ada0 GPT (1.8T)
34 128 1 freebsd-boot (64K)
162 8388608 2 freebsd-swap (4.0G)
8388770 3898640365 3 freebsd-zfs (1.8T)

На новом же диске сразу после gpart create -s GPT отступ выставляется в 40 блок
root@test:~ # gpart show ada1
=> 40 3907029088 ada1 GPT (1.8T)
40 3907029088 - free - (1.8T)


интернет пишет, что это автоматическое округление до 4кб, но это не очень помагает, старый же как-то был разбит с 34 :(

Рабочий диск
root@test:~ # diskinfo -v ada0
ada0
512 # sectorsize
2000398934016 # mediasize in bytes (1.8T)
3907029168 # mediasize in sectors
0 # stripesize
0 # stripeoffset
3876021 # Cylinders according to firmware.
16 # Heads according to firmware.
63 # Sectors according to firmware.
ST2000NM0033-9ZM175 # Disk descr.
... # Disk ident.
No # TRIM/UNMAP support
7200 # Rotation rate in RPM
Not_Zoned # Zone Mode


Новый диск
root@test:~ # diskinfo -v ada1
ada1
512 # sectorsize
2000398934016 # mediasize in bytes (1.8T)
3907029168 # mediasize in sectors
4096 # stripesize
0 # stripeoffset
3876021 # Cylinders according to firmware.
16 # Heads according to firmware.
63 # Sectors according to firmware.
HGST HUS726020ALE610 # Disk descr.
... # Disk ident.
No # TRIM/UNMAP support
7200 # Rotation rate in RPM
Not_Zoned # Zone Mode

Производители разные, параметры отличаются только значением stripesize, у нового установлено в 4К, возможно в этом причина? Как очистить это значение?

Если нет, то как разбить новый с 34 сектора? Менять диск на идентичный рабочему?

Признателен


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: gpart create с 34 блока
СообщениеДобавлено: Сб 16 фев, 2019 12:02 pm 
Не в сети

Зарегистрирован: Сб 14 янв, 2006 12:09 pm
Сообщения: 11
Попробовал через gpart backup ada0 -> restore ada1

root@test:~ # gpart restore -F ada1 <gpt123
gpart: start '34': Invalid argument

та же ошибка что и при работе с gpart из командной строки;

Проверил другие сервера, там есть диски с stripesize = 4096, у которых разметка начинается с 34 блока. Правда либо оба диска с stripesize = 4096, либо stripesize = 0, разнобоя нет.

Все разбития диска всегда делал через автоматический инсталлер.

Есть идеи?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: gpart create с 34 блока
СообщениеДобавлено: Сб 16 фев, 2019 7:43 pm 
Не в сети

Зарегистрирован: Пт 03 сен, 2004 1:26 pm
Сообщения: 2362
lifejoy писал(а):
Попробовал через gpart backup ada0 -> restore ada1

root@test:~ # gpart restore -F ada1 <gpt123
gpart: start '34': Invalid argument

та же ошибка что и при работе с gpart из командной строки;

Проверил другие сервера, там есть диски с stripesize = 4096, у которых разметка начинается с 34 блока. Правда либо оба диска с stripesize = 4096, либо stripesize = 0, разнобоя нет.

Все разбития диска всегда делал через автоматический инсталлер.

Есть идеи?


Идеи чего?
Вопрос в чем? Или проблема в чем?

У Вас старый диск с sectorsize=512 байт, а новый с sectorsize=4096 байт(4K).
И что?

Самой важное условие описано в man gpart:
Код:
We then create a dedicated freebsd-boot partition to hold the second-
     stage boot loader, which will load the FreeBSD kernel and modules from a
     UFS or ZFS filesystem.  This partition must be larger than the bootstrap
     code (either /boot/gptboot for UFS or /boot/gptzfsboot for ZFS), but
     smaller than 545 kB since the first-stage loader will load the entire
     partition into memory during boot, regardless of how much data it
     actually contains.  We create a 472-block (236 kB) boot partition at
     offset 40, which is the size of the partition table (34 blocks or 17 kB)
     rounded up to the nearest 4 kB boundary.


boot партиция должна быть больше чем /boot/gptboot и /boot/gptzfsboot:

Код:
[joker]~ > ls -la /boot/gptboot
-r--r--r--  1 root  wheel  62810 18 дек.  16:19 /boot/gptboot
[joker]~ > ls -la /boot/gptzfsboot
-r--r--r--  1 root  wheel  108162 18 дек.  16:19 /boot/gptzfsboot
[joker]~ >


но меньше 545 kb чтобы загрзучик поместил ее целиком в память.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: gpart create с 34 блока
СообщениеДобавлено: Пн 18 фев, 2019 12:08 am 
Не в сети

Зарегистрирован: Сб 14 янв, 2006 12:09 pm
Сообщения: 11
спасибо за совет, все решилось.

В чем была проблема - не получалось разбить новый диск также, как и старый.
Для чего - чтобы как минимум сделать размер раздела c zfs идентичный старому.
Неожиданная проблема - похоже, что c FreeBSD 11 увеличили размер /boot/gptzfsboot, файл перестал помещаться в 64К. Учитывая, что разбивку я делал еще в 10 версии OS, обновляясь в последствии до 11 через freebsd-update, сделать идентичными размеры freebsd-boot на обоих дисках не вышло. Но, как не странно, ребилд zfs пула прошел без проблем.

root@test:~ # gpart show ada0
=> 34 3907029101 ada0 GPT (1.8T)
34 128 1 freebsd-boot (64K)
162 8388608 2 freebsd-swap (4.0G)
8388770 3898640365 3 freebsd-zfs (1.8T)

root@test:~ # gpart show ada1
=> 40 3907029088 ada1 GPT (1.8T)
40 1024 1 freebsd-boot (512K)
1064 8388608 2 freebsd-swap (4.0G)
8389672 3898639456 3 freebsd-zfs (1.8T)

root@test:~ # zpool status
pool: rpool
state: ONLINE
scan: resilvered 419G in 7h4m with 0 errors on Sun Feb 17 06:02:39 2019
config:

NAME STATE READ WRITE CKSUM
rpool ONLINE 0 0 0
mirror-0 ONLINE 0 0 0
ada0p3 ONLINE 0 0 0
ada1p3 ONLINE 0 0 0

errors: No known data errors


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: gpart create с 34 блока
СообщениеДобавлено: Пн 18 фев, 2019 1:18 am 
Не в сети

Зарегистрирован: Пт 03 сен, 2004 1:26 pm
Сообщения: 2362
lifejoy писал(а):
спасибо за совет, все решилось.

В чем была проблема - не получалось разбить новый диск также, как и старый.
Для чего - чтобы как минимум сделать размер раздела c zfs идентичный старому.
Неожиданная проблема - похоже, что c FreeBSD 11 увеличили размер /boot/gptzfsboot, файл перестал помещаться в 64К. Учитывая, что разбивку я делал еще в 10 версии OS, обновляясь в последствии до 11 через freebsd-update, сделать идентичными размеры freebsd-boot на обоих дисках не вышло. Но, как не странно, ребилд zfs пула прошел без проблем.

root@test:~ # gpart show ada0
=> 34 3907029101 ada0 GPT (1.8T)
34 128 1 freebsd-boot (64K)
162 8388608 2 freebsd-swap (4.0G)
8388770 3898640365 3 freebsd-zfs (1.8T)

root@test:~ # gpart show ada1
=> 40 3907029088 ada1 GPT (1.8T)
40 1024 1 freebsd-boot (512K)
1064 8388608 2 freebsd-swap (4.0G)
8389672 3898639456 3 freebsd-zfs (1.8T)

root@test:~ # zpool status
pool: rpool
state: ONLINE
scan: resilvered 419G in 7h4m with 0 errors on Sun Feb 17 06:02:39 2019
config:

NAME STATE READ WRITE CKSUM
rpool ONLINE 0 0 0
mirror-0 ONLINE 0 0 0
ada0p3 ONLINE 0 0 0
ada1p3 ONLINE 0 0 0

errors: No known data errors


Ваша проблема в том, что Вы не объясняете:
- что хотите сделать
- и как

Если сейчас можно сообразить что Вы хотели добавить
в rpool второй диск и преобразовать stripe в mirror, то
в первом письме, об этом ни слова.

ZFS легко позволит создать зеркало из дисков разного
объема, уменьшив до наименьшего из двух.

Дело в другом, теперь rpool офрмлен как mirror, но
он разбалансирован, ибо один диск с sectorsize=512,
другой с sectorsize=4k. А пул вероятно с ashift=512
ибо бы создан на диске с сектором 512b.

Посмотрите:
# sysctl vfs.zfs.min_auto_ashift

Если бы Вы исследовали работу rpool с одним диском:
# zpool iostat
и затем сравнили с результатами после преобразования
в mirror, думаю, были бы удивлены.

ps. Вы понимаете разницу в размере сектора диска и что
выравнивание влияет на производительность работы с FS?


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 5 ] 

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Зарегистрированные пользователи: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB
Яндекс.Метрика