Вместо:
/usr/sbin/libvirtd -d &
Пытаться:
systemctl start libvirtd
Вы можете использовать journalctl
для просмотра журналов systemd.
Также мне интересно ваше --location
мнение.
У меня очень проблемное задание, и один момент сводит меня с ума. Сделаю просто: Цель: установить CentOS7 с кикстартом. В конце сценария установки в виде поста он должен запустить libvirtd и создать виртуальную машину с помощью команды virt-install.
В моем файле кикстарта у меня есть:
dd if=/dev/zero of=/var/lib/libvirt/images/fw.qcow2 bs=1024 count=0 seek=10G /usr/sbin/libvirtd -d & systemctl enable libvirtd virt-install --name=firewall --disk path=/var/lib/libvirt/images/fw.qcow2 --ram=2048 --vcpus=2 --nographics --os-type=linux --os-variant=rhel7 --location /mnt/cdrom/CentOS-7-x86_64-Minimal-1511.iso --extra-args="console=tty0 console=ttyS0,115200 rd_NO_PLYMOUTH"
Однако мой опыт таков: я не знаю, запускает ли он libvirt, он определенно включает его, потому что после перезапуска libvirt работает, но ОС не устанавливается через virt-install. В файле ks-post.log у меня есть:
ERROR Cannot recv data: Connection reset bypeer error: Dailed to connect to the hypervisor error: no calid connection error: Failed to connect socket to '/var/run/libvirt/libvirt-sock': No such file or directory
Я полагаю, что не смог запустить libvirtd должным образом с
/ usr / sbin / libvirtd -d &
команда я?
Вместо:
/usr/sbin/libvirtd -d &
Пытаться:
systemctl start libvirtd
Вы можете использовать journalctl
для просмотра журналов systemd.
Также мне интересно ваше --location
мнение.
Я знаю, что опаздываю, но для всех, кто хочет сделать что-то подобное в будущем, я предлагаю вам создать systemd
сервис, который просто выполняет обычный сценарий оболочки, содержащий ваши команды. Ключевое различие между выполнением команд в среде chroot в Kickstart и обычной загруженной ОС заключается в том, что ядро целевых машин не загружено в исполнение (я точно не знаю), но поскольку службы не работают (включая все демоны), вы не сможет начать любое ' service
' или 'systemctl
сервисы в кикстарт-среде. Я столкнулся с подобной проблемой и просто создал системный файл для моей среды centos7, который после начальной перезагрузки системы запускает сервер apache на порту 8080 и копирует несколько пользовательских файлов, а после выполнения удаляет исходный системный файл, так что тот же сценарий оболочки не вызывается после первой перезагрузки.
ПРИМЕЧАНИЕ. Чтобы этот метод работал, вам нужно скопировать и вставить systemd
(и при необходимости) некоторые другие файлы с установочного носителя (iso) в целевую файловую систему. Если вы не хотите этого делать, то в среде chroot самого вашего кикстарта вы можете просто загрузить его curl
или wget
(загрузить) файл systemd в папку systemd, которая находится на том же или другом сервере.