Как гарантировать, что установка кикстарта выберет определенный диск?

Мы обновляемся с RHEL6 -> CentOS 7. У хоста, у которого есть проблема, есть ОС на / dev / sda, а также есть дополнительные диски данных на / dev / sdb и / dev / sdc. Когда я запускаю установку kickstart, я, очевидно, хочу, чтобы содержимое / dev / sda (old OS) было перезаписано новой ОС.

Если это / dev / sda сейчас, я уверен, что это будет / dev / sda в среде kickstart. Но я, кажется, вспоминаю, что где-то читал, что это не 100% гарантия, которой следует доверять.

Было бы трагедией эпических пропорций, если содержимое того, что в настоящее время известно как / dev / sdb или / dev / sdc, было в среде кикстарта, которое определено как / dev / sda и перезаписано ОС.

Любые предложения о том, как я могу гарантировать, что кикстарт устанавливает ОС на конкретном диске?

Мое лучшее предположение – в файле кикстарта проверить, чтобы / dev / sda содержала объекты LVM, которые мы ожидаем, такие как «lv_root» для нашего корневого логического тома. Если / dev / sda содержит lv_root, предположим, что действительно соответствующий диск был назначен / dev / sda и продолжить.

В файле кикстарта, который вы ищете:

ignoredisk --only-use=sda 

Это приведет к тому, что каждый диск, кроме sda будет проигнорирован установкой.


Буква sd должна оставаться неизменной (поскольку она основана на том, какой порт SATA используется).

Если вы также не укажете разделы autopart или раздела в своем кикстарте, установка приостанавливает работу до того, как он вытеет ваш диск (чтобы спросить, как вы хотите разбить. Любые другие подсказки в вашем кикстарте / установке также предотвратят немедленное удаление диска ). Здесь вы можете переключиться на TTY2 с помощью CTRL + ALT + F2 до начала установки и попробовать установить диск.

В TTY2 у вас будет бесплатный root терминал, поэтому вы можете создать каталог, установить sda# на него и просмотреть его, чтобы убедиться, что это файлы.

После того, как вы вернетесь в TTY1 и возобновите установку, если диск правильный.


Документация RHEL на кикстарте является золотой для такого рода вещей: https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/5/html/Installation_Guide/s1-kickstart2-options.html

Я думаю, вы могли бы написать его так, чтобы вы использовали диск uuid вместо метки блока устройства. Например: part / --fstype=ext4 --onpart=/dev/disk/by-id/ata-ST3160815AS_6RA0C882 . По крайней мере, это гарантирует согласованность между перезагрузками.