我第一次使用 kickstart 设置 VM 时遇到了问题。
我已将文件从已安装的 Centos 6.6 最小 iso 复制到本地 ftp 服务器:ftp://198.162.1.161/pub/inst/
我的 kickstart 配置文件已复制到 ftp://198.162.1.161/pub/inst/isolinux/ks.cfg(不确定是否正确位置)
我跑:
virt-install -n server1.example.com -r 768 --disk /vz/kvm/server1.example.com.img --cdrom ftp://198.162.1.161/pub/inst/ --debug
我得到:
Wed, 03 Jun 2015 17:22:04 DEBUG Launched with command line:
/usr/bin/virt-install -n server1.example.org -r 768 --disk path=/vz/kvm/server1.example.com.img --cdrom ftp://192.168.1.161/pub/inst --debug
Wed, 03 Jun 2015 17:22:04 DEBUG Requesting libvirt URI default
Wed, 03 Jun 2015 17:22:04 DEBUG Received libvirt URI qemu:///system
Wed, 03 Jun 2015 17:22:04 DEBUG Requesting virt method 'default', hv type 'default'.
Wed, 03 Jun 2015 17:22:04 DEBUG Received virt method 'hvm'
Wed, 03 Jun 2015 17:22:04 DEBUG Hypervisor name is 'kvm'
Wed, 03 Jun 2015 17:22:04 DEBUG DISPLAY is set: graphics defaulting to VNC.
Wed, 03 Jun 2015 17:22:04 DEBUG --graphics compat generated: vnc
Wed, 03 Jun 2015 17:22:04 DEBUG DistroInstaller location is a network source.
Wed, 03 Jun 2015 17:22:04 DEBUG Attempting to detect distro:
Wed, 03 Jun 2015 17:22:04 DEBUG Fetching URI: ftp://192.168.1.161/pub/inst/.treeinfo
Wed, 03 Jun 2015 17:22:04 DEBUG Saved file to /var/tmp/virtinst-.treeinfo.hbJW39
Wed, 03 Jun 2015 17:22:04 DEBUG Guest.has_install_phase: True
Starting install...
Wed, 03 Jun 2015 17:22:04 DEBUG scratchdir=/var/lib/libvirt/boot
Wed, 03 Jun 2015 17:22:04 DEBUG Attempting to detect distro:
Wed, 03 Jun 2015 17:22:04 DEBUG Fetching URI: ftp://192.168.1.161/pub/inst/.treeinfo
Wed, 03 Jun 2015 17:22:04 DEBUG Saved file to /var/lib/libvirt/boot/virtinst-.treeinfo.1xVxAr
Retrieving file .treeinfo... | 592 B 00:00 ...
Wed, 03 Jun 2015 17:22:04 ERROR No option 'boot.iso' in section: 'images-x86_64'
Wed, 03 Jun 2015 17:22:04 DEBUG Traceback (most recent call last):
File "/usr/bin/virt-install", line 631, in start_install
noboot=options.noreboot)
File "/usr/lib/python2.6/site-packages/virtinst/Guest.py", line 1209, in start_install
self._prepare_install(meter, dry)
File "/usr/lib/python2.6/site-packages/virtinst/Guest.py", line 966, in _prepare_install
meter=meter)
File "/usr/lib/python2.6/site-packages/virtinst/DistroInstaller.py", line 420, in prepare
dev = self._prepare_cdrom(guest, meter)
File "/usr/lib/python2.6/site-packages/virtinst/DistroInstaller.py", line 258, in _prepare_cdrom
self.scratchdir)
File "/usr/lib/python2.6/site-packages/virtinst/OSDistro.py", line 162, in acquireBootDisk
scratchdir, type)
File "/usr/lib/python2.6/site-packages/virtinst/OSDistro.py", line 150, in _acquireMedia
None, media_cb)
File "/usr/lib/python2.6/site-packages/virtinst/OSDistro.py", line 131, in _locationCheckWrapper
return callback(store, fetcher)
File "/usr/lib/python2.6/site-packages/virtinst/OSDistro.py", line 145, in media_cb
media = store.acquireBootDisk(guest, fetcher, progresscb)
File "/usr/lib/python2.6/site-packages/virtinst/OSDistro.py", line 285, in acquireBootDisk
return fetcher.acquireFile(self._getTreeinfoMedia("boot.iso"),
File "/usr/lib/python2.6/site-packages/virtinst/OSDistro.py", line 343, in _getTreeinfoMedia
return self.treeinfo.get("images-%s" % t, mediaName)
File "/usr/lib64/python2.6/ConfigParser.py", line 541, in get
raise NoOptionError(option, section)
NoOptionError: No option 'boot.iso' in section: 'images-x86_64'
Wed, 03 Jun 2015 17:22:04 DEBUG Domain installation does not appear to have been successful.
If it was, you can restart your domain by running:
virsh --connect qemu:///system start server1.example.org
otherwise, please restart your installation.
Domain installation does not appear to have been successful.
If it was, you can restart your domain by running:
virsh --connect qemu:///system start server1.example.org
otherwise, please restart your installation.
/var/lib/libvirt/images -> /vz/kvm 作为符号链接。
谷歌搜索此错误说问题是缺少.treeinfo,但确实存在:
ftp:// 192.168.1.161/pub/inst/.treeinfo 的内容:
[general]
family = CentOS
timestamp = 1414159790.06
variant =
totaldiscs = 1
version = 6.6
discnum = 1
packagedir =
arch = x86_64
[images-x86_64]
initrd = images/pxeboot/initrd.img
[images-xen]
initrd = images/pxeboot/initrd.img
[stage2]
mainimage = images/install.img
以下是通过浏览器访问 pub/inst 目录时的复制粘贴内容:
Index of /pub/inst/
Name Size Date Modified
[parent directory]
CentOS_BuildTag 14 B 6/3/15, 9:17:00 PM
EFI/ 6/3/15, 9:17:00 PM
EULA 212 B 6/3/15, 9:17:00 PM
GPL 17.6 kB 6/3/15, 9:17:00 PM
Packages/ 6/3/15, 9:17:00 PM
RELEASE-NOTES-en-US.html 1.3 kB 6/3/15, 9:17:00 PM
RPM-GPG-KEY-CentOS-6 1.7 kB 6/3/15, 9:17:00 PM
RPM-GPG-KEY-CentOS-Debug-6 1.7 kB 6/3/15, 9:17:00 PM
RPM-GPG-KEY-CentOS-Security-6 1.7 kB 6/3/15, 9:17:00 PM
RPM-GPG-KEY-CentOS-Testing-6 1.7 kB 6/3/15, 9:17:00 PM
TRANS.TBL 3.3 kB 6/3/15, 9:17:00 PM
images/ 6/3/15, 9:21:00 PM
isolinux/ 6/3/15, 9:19:00 PM
repodata/ 6/3/15, 9:17:00 PM
更新故障排除:
- 确定这不是 SELinux 所为(怀疑是权限问题)
- 尝试使用 mkisofs 从内置有 ks.cfg 文件的文件创建新的 iso,挂载该 iso,将这些文件复制到 FTP 目录中……仍然一无所获