Неправильный вход в систему после установки nfs-utils

Я пытаюсь установить nfs-utils (и, следовательно, все его зависимости) в RHEL6 без сохранения состояния. .5 КВМ ВМ. Виртуальная машина настроена на доступ только для чтения через файл /etc/sysconfig/readonly-root, магию Linux, которую я не реализовал, и параметр «Только для чтения» в графическом интерфейсе настроек виртуальной машины. Установка выполняется с помощью virt-customize -a image.img --run install_script.sh. Сценарий использует here-document для создания файла .repo (который идет в хранилище CentOS для 6.5), затем я использую yum install -y nfs-utils для фактической установки. Я выбрал этот подход, потому что он кажется проще, чище и менее подвержен ошибкам, чем загрузка виртуальной машины в режиме чтения/записи, установка, очистка и последующее завершение работы. Кроме того, я не могу понять, как заставить его загружаться в режиме чтения/записи.

Вывод virt-customize показал, что пакеты были успешно установлены. Единственной ошибкой было удаление .repo из-за опечатки.

После этой установки я загрузил виртуальную машину и попытался войти в систему, как обычно. Мои попытки теперь отклоняются, потому что неверный логин.

Я проверил с помощью virt-cat, чтобы убедиться, что оболочка входа для пользователя настроена правильно, а зашифрованный пароль в /etc/shadow выглядит так же, как и исходный. .

Мой первоначальный подход состоял в том, чтобы создать образ ISO, содержащий все зависимости и nfs-utils, и прикрепить его к виртуальной машине, а сценарий обработал бы установку. Та же проблема возникла тогда. Я сузил источник проблемы до установки одного из пакетов NFS: либо nfs-utils, либо nfs-utils-lib (один из двух, не помню) и пакет rpcbind. Когда один из этих пакетов установлен, а затем загружается виртуальная машина, вход в систему прерывается. Я предполагаю, что это та же самая проблема, возникающая сейчас.

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

Да, я правильно ввожу пароль. Я пытался изменить пароль пользователя (с помощью инструментов libguestfs), но я все еще не могу войти в систему, поэтому я не уверен, что изменение не удалось (код возврата для команд указывает на успех) или такая же проблема в действии.

Вопрос:

  1. Можно ли устранить проблему входа в систему? Если да, то как?
  2. Как правильно выполнить установку, чтобы вход в систему не прерывался? Ясно, что этот способ не работает.
0
04.06.2019, 21:54
1 ответ

Основной проблемой здесь был SELinux. Существует несколько способов установки программного обеспечения на виртуальную машину, но все они сводятся к тому, загружается или не загружается виртуальная машина. Последнее — это то, что все испортило, и именно так я сделал установку в посте.

Насколько я могу судить, когда виртуальная машина выключена и программное обеспечение установлено, например. с помощью команды в вопросе SELinux понимает, что что-то изменилось, и не знает, что произошло, когда виртуальная машина загружается после установки, и блокирует все. Разрешение SELinux переименовывать решает проблему, но у меня сломалось много других вещей. По сути, нет никакого способа запустить сценарий установки, когда система находится в автономном режиме, потому что вы, вероятно, столкнетесь с этим. Примечание,эта проблема может быть связана только с виртуальными машинами RHEL6.5 и их версией SELinux (у нас версия -привязана к RHEL6.5 ).

Правильный способ установки такой виртуальной машины — загрузить ее в режиме чтения/записи и выполнить установку либо путем монтирования ISO-образа с требуемыми пакетами RPM, либо с помощью диспетчера пакетов. Во время загрузки SELinux будет знать об установке, и все будет в порядке.

0
28.01.2020, 03:37

Теги

Похожие вопросы