PowerPath: Помилка команди "pprootdev on" полягає в тому, що логічний том HD5 занадто малий
Summary: З AIX 7.2 розмір завантажувального запису, коли PowerPath не включений на rootvg, наближається до 32 Мб. Коли PowerPath увімкнено в rootvg, завантажувальний запис може перевищувати 32 МБ, а якщо hd5 має розмір лише одного фізичного розділу (PP) і якщо розмір PP становить 32 МБ, завантажувальний запис не може бути записаний. Ця база даних пропонує метод збільшення розміру hd5, щоб він міг містити завантажувальний запис при включенні PowerPath на rootvg (pprootdev on). ...
Symptoms
pprootdev on команда завершує роботу з такими помилками:
dd: 0511-053 The write failed. : There is a request to a device or address that does not exist. 35509+1 records in. 554+1 records out. 0301-161 bosboot: dd failed to copy bootimage. 0301-165 bosboot: WARNING! bosboot failed - do not attempt to boot device. pprootdev: bosboot has failed. The configuration change has not been saved to the boot device.
Cause
Сценарій PowerPath pprootdev on викликає оператор bosboot для створення нового завантажувального образу та збереження його у вказаному завантажувальному логічному томі. Якщо увімкнено PowerPath, завантажувальний образ може мати розмір >32 Мб. Логічний том має розмір одного фізичного розділу (PP), але якщо розмір PP rootvg становить 32 Мб, то розмір тому буде 32 Мб, що занадто мало для зберігання завантажувального образу.
Розмір ПП залежить від розміру самого диска. Чим більший диск, тим більший розмір ПП.
Resolution
Для збільшення розміру логічного тому існують три різні методи. Обсяг hd5 передбачається в наведених нижче прикладах:
Спосіб 1 - додавання фізичного розділу (PP) в hd5
Розділи, на яких включений hd5, повинні бути суміжними, причому в перші 4 Гб жорсткого диска. Якщо ви хочете дізнатися, чи є вільні розділи поруч з hd5, виконайте наступну команду:
# lspv -M hdisk0 (hdisk0 = rootvg disk) hdisk0:1 hd5:1 hdisk0:2-15 hdisk0:16 fslv00:1 hdisk0:17 fslv00:2
-
Використання
extendlvКоманда для додавання другого розділу до HD5. Наприклад, для цього прикладу ми створимо файл під назвою "Map", і у файлі у нас буде лише один рядок з hdisk0:2. Тоді ми б побіглиextendlv -m Map hd5 1. Це розширить hd5 на один PP, починаючи з hdisk0:2. Це гарантує, що розширення є неперервним. -
Бігти
pprootdev on(якщо ви зіткнулися з проблемою після запускуpprootdev on, ця друга спроба запуститиpprootdev onзазнає невдачі, тому що попередній частково вдався. Це означає, що вам, ймовірно, доведеться створити нову копію завантажувального диска, щоб повторити всю процедуру заново... і розширити hd5 LV ПЕРЕД запускомpprootdev on).
Спосіб 2 - зміна розкладки hd5 в rootvg за допомогою alt_disk_copy утиліти
-
Бігти
mkszfileкоманда. Ця команда створює файл /image.data, який є компонуванням rootvg. -
Редагуємо файл image.data і налаштовуємо LP і LV_MIN_LPS для hd5 (нам потрібен ще один PP. Тому, якщо LP і LV_MIB_LPS встановлені в 1, змініть ці значення на 2)
Приклад:
lv_data: VOLUME_GROUP= rootvg VOLUME_GROUP= rootvg LV_SOURCE_DISK_LIST= hdisk4 LV_SOURCE_DISK_LIST= hdisk4 LV_IDENTIFIER= 00f98edf00004c00000001860d2daee6.1 LV_IDENTIFIER= 00f98edf00004c00000001860d2daee6.1 LOGICAL_VOLUME= hd5 LOGICAL_VOLUME= hd5 VG_STAT= active/complete VG_STAT= active/complete TYPE= boot TYPE= boot MAX_LPS= 512 MAX_LPS= 512 COPIES= 1 COPIES= 1 LPs= 1 LPs= 2 STALE_PPs= 0 STALE_PPs= 0 INTER_POLICY= minimum INTER_POLICY= minimum INTRA_POLICY= edge INTRA_POLICY= edge MOUNT_POINT= MOUNT_POINT= MIRROR_WRITE_CONSISTENCY= on/ACTIVE MIRROR_WRITE_CONSISTENCY= on/ACTIVE LV_SEPARATE_PV= yes LV_SEPARATE_PV= yes PERMISSION= read/write ==> PERMISSION= read/write LV_STATE= closed/syncd LV_STATE= closed/syncd WRITE_VERIFY= off WRITE_VERIFY= off PP_SIZE= 128 PP_SIZE= 128 SCHED_POLICY= parallel SCHED_POLICY= parallel PP= 1 PP= 1 BB_POLICY= non-relocatable BB_POLICY= non-relocatable RELOCATABLE= no RELOCATABLE= no UPPER_BOUND= 32 UPPER_BOUND= 32 LABEL= primary_bootlv LABEL= primary_bootlv MAPFILE= MAPFILE= LV_MIN_LPS= 1 LV_MIN_LPS= 2 STRIPE_WIDTH= STRIPE_WIDTH= STRIPE_SIZE= STRIPE_SIZE= SERIALIZE_IO= no SERIALIZE_IO= no FS_TAG= FS_TAG= DEV_SUBTYP= DEV_SUBTYP=
-
Клонуйте rootvg за допомогою команди:
alt_disk_copy -i /image.data -d hdiskY(hdiskY — цільовий диск) -
Перезавантажте сервер, щоб активувати клонований диск (з новим розміром PP)
-
Бігти
pprootdev onкоманда
Спосіб 3 - повторне створення hd5
Як вже говорилося раніше, розділи, на яких знаходиться hd5, повинні бути суміжними, причому в перші 4 Гб жорсткого диска. Якщо ви хочете дізнатися, чи є вільні розділи поруч з hd5, виконайте наступну команду:
# lspv -M hdisk0 (hdisk0 = rootvg disk) hdisk0:1 hd5:1 hdisk0:2 fslv00:1 hdisk0:3 fslv00:2
-
У наведеному вище прикладі немає вільного ПП після першого, використаного hd5. Використання атрибута
extendlvне підійде, так як зайвий ПП не буде суміжним. Оскільки hd5 містить лише завантажувальний запис, і цей вміст може бути згенерований за допомогоюbosbootкоманда, ми можемо повністю заново створити HD5.# rmlv -f hd5 (hdisk0 = rootvg disk) # mklv -y hd5 -t boot -u2 rootvg 2 hdisk0
-
Потім ми можемо перевірити за допомогою
lspv -M hdiskXXщо новостворений HD5 тепер має два послідовних ПП.# lspv -M hdisk0 (hdisk0 = rootvg disk) hdisk0:1 hdisk0:2 fslv00:1 hdisk0:3 fslv00:2 .... hdisk0:13 hd5:1 hdisk0:14 hd5:2
Об'єкт pprootdev on тепер команда повинна бути успішною, припускаючи, що HD5 LV був створений в межах перших 4 ГБ (так сказано в документації, але це залежить від релізу AIX і з AIX 7.2 TL5 ліміт вище). Тому і перед запуском pprootdev on, запустіть команду bosboot! Якщо bosboot Не можу знайти HD5, це означає, що він знаходиться занадто далеко від початку диска і pprootdev on також зазнають невдачі: Зміну потрібно скасувати (rmlv -f hd5; mklv -y hd5 -t boot -u1 rootvg 1 hdiskX) і метод 2.