Am Mittwoch, den 11.08.2010, 10:40 +0100 schrieb Ian Campbell: > On Wed, 2010-08-11 at 00:05 +0200, Paul Menzel wrote: > > Am Dienstag, den 10.08.2010, 15:10 +0100 schrieb Ian Campbell: > > > On Tue, 2010-08-10 at 15:40 +0200, Paul Menzel wrote: > > > > Am Montag, den 21.12.2009, 09:19 +0000 schrieb Ian Campbell: > > > > > On Fri, 2009-12-11 at 11:30 +0100, Ferenc Wagner wrote: > > > > > > > > > > > > The guest is the Debian Installer daily image, you surely know it > > > > > > much > > > > > > better than I do. :) The host is a Lenny system with the Etch > > > > > > kernel: > > > > > > > > I am using Lenny with a standard Lenny kernel. > > > > > > > > $ uname -a > > > > Linux hostname 2.6.26-2-xen-amd64 #1 SMP Wed Mar 10 00:29:48 UTC 2010 > > > > x86_64 GNU/Linux > > > > > > > > > I think the issue is with the host's Xen utilities rather than the > > > > > Debian Installer image which makes it tricky to fix in Lenny. I > > > > > believe > > > > > it works with the Xen utilities in Squeeze. > > > > > > > > Should this bug be reassigned then? > > > > > > > > > For Lenny you could workaround by downloading the kernel and ramdisk > > > > > locally and use the install-kernel= and install-ramdisk= options to > > > > > xm-debian.cfg, or if you have a local mirror you could just use > > > > > install-installer=. > > > > > > > > Unfortunately that work-around does not work for me. > > > > > > > > $ ls -l /tmp/{vmlinuz,initrd.gz} > > > > -rw-r--r-- 1 user user 17859729 2010-08-10 10:05 /tmp/initrd.gz > > > > -rw-r--r-- 1 user user 2351776 2010-08-10 10:05 /tmp/vmlinuz > > > > $ sudo xm create /tmp/xm-debian.cfg install=true > > > > install-mirror=ftp://ftp.de.debian.org/debian > > > > install-installer=http://people.debian.org/~joeyh/d-i/images/daily/ > > > > install-suite=squeeze install-kernel=/tmp/vmlinuz > > > > install-ramdisk=/tmp/initrd.gz > > > > Using config file "/tmp/xm-debian.cfg". > > > > Install Mirror: ftp://ftp.de.debian.org/debian > > > > Install Suite: squeeze > > > > Installer: http://people.debian.org/~joeyh/d-i/images/daily/ > > > > > > > > WARNING: Installer kernel and ramdisk are not authenticated. > > > > > > > > Fetching /tmp/vmlinuz > > > > Fetching /tmp/initrd.gz > > > > command line is "debian-installer/exit/always_halt=true -- > > > > quiet console=hvc0" > > > > Error: Kernel image does not exist: /tmp/vmlinuz > > > > > > > > Do you have any ideas? > > > > > > It's not clear looking back over the bug that anyone ever actually tried > > > the workaround, rather than hypothesising it. Unfortunately I don't have > > > a suitable Lenny system to hand. > > > > > > You could try "install-kernel=file:///...." > > > > That did not work either. > > > > […] > > Fetching file:///tmp/vmlinuz > > Fetching file:///tmp/initrd.gz > > command line is "debian-installer/exit/always_halt=true -- quiet > > console=hvc0" > > Error: Kernel image does not exist: /tmp/vmlinuz > > Hmm, I suspect the workaround never worked then (it was only a theory). > > > > Alternatively you can always use your own configuration file (like you > > > would for a non-Debian domain) [...] > > > > Thank you for your suggestion. Unfortunately I get the following error > > message. > > > > $ sudo xm create /tmp/squeeze.cfg > > Using config file "/tmp/squeeze.cfg". > > Error: Boot loader didn't return any data! > > $ ls -l /usr/bin/pygrub > > lrwxrwxrwx 1 root root 29 2010-06-15 10:51 /usr/bin/pygrub -> > > /usr/lib/xen-3.2-1/bin/pygrub > > $ dpkg -S /usr/lib/xen-3.2-1/bin/pygrub > > xen-utils-3.2-1: /usr/lib/xen-3.2-1/bin/pygrub > > $ dpkg -l xen-utils-3.2-1 > > ii xen-utils-3.2- 3.2.1-2 XEN administrative tools > > > > But reading [1] and your comment before I commented the bootloader line > > too. > > That was the right thing to do for the install phase. > > > $ grep vmlinuz /tmp/squeeze.cfg > > kernel = "/tmp/vmlinuz" > > $ sudo xm create /tmp/squeeze.cfg > > Using config file "/tmp/squeeze.cfg". > > Error: Kernel image does not exist: /tmp/vmlinuz > > > > Do you have any idea? This is with the daily Debian Installer files from > > [2]. > > Hrm. I assume /tmp/vmlinuz exists and is readable by the relevant user > etc. Do the logs in /var/log/xen tell you anything?
[2010-08-11 10:40:38 3386] DEBUG (XendDomainInfo:84) XendDomainInfo.create(['vm', ['name', 'host'], ['memory', 2048], ['vcpus', 1], ['on_xend_start', 'ignore'], ['on_xend_stop', 'ignore'], ['image', ['linux', ['kernel', '/tmp/vmlinuz'], ['ramdisk', '/tmp/initrd.gz'], ['args', 'debian-installer/exit/always_halt=true -- xencons=hvc console=hvc0 ro root=/dev/hda']]], ['device', ['vbd', ['uname', 'phy:/dev/xkcd/oe-build-host'], ['dev', 'xvda'], ['mode', 'w']]], ['device', ['vbd', ['uname', 'phy:/dev/xkcd/oe-build-host-swap'], ['dev', 'xvdb'], ['mode', 'w']]], ['device', ['vif']], ['device', ['vif', ['bridge', 'xenbr1']]]]) [2010-08-11 10:40:38 3386] DEBUG (XendDomainInfo:1618) XendDomainInfo.constructDomain [2010-08-11 10:40:38 3386] DEBUG (balloon:132) Balloon: 3669568 KiB free; need 2048; done. [2010-08-11 10:40:38 3386] DEBUG (XendDomain:443) Adding Domain: 53 [2010-08-11 10:40:38 3386] DEBUG (XendDomainInfo:1703) XendDomainInfo.initDomain: 53 256 [2010-08-11 10:40:38 3386] DEBUG (XendDomainInfo:1738) _initDomain:shadow_memory=0x0, memory_static_max=0x80000000, memory_static_min=0x0. [2010-08-11 10:40:38 3386] DEBUG (balloon:132) Balloon: 3669560 KiB free; need 2097152; done. [2010-08-11 10:40:38 3386] ERROR (XendDomainInfo:1775) XendDomainInfo.initDomain: exception occurred Traceback (most recent call last): File "/usr/lib/xen-3.2-1/lib/python/xen/xend/XendDomainInfo.py", line 1755, in _initDomain channel_details = self.image.createImage() File "/usr/lib/xen-3.2-1/lib/python/xen/xend/image.py", line 122, in createImage return self.createDomain() File "/usr/lib/xen-3.2-1/lib/python/xen/xend/image.py", line 131, in createDomain raise VmError('Kernel image does not exist: %s' % self.kernel) VmError: Kernel image does not exist: /tmp/vmlinuz [2010-08-11 10:40:38 3386] ERROR (XendDomainInfo:440) VM start failed Traceback (most recent call last): File "/usr/lib/xen-3.2-1/lib/python/xen/xend/XendDomainInfo.py", line 420, in start XendTask.log_progress(31, 60, self._initDomain) File "/usr/lib/xen-3.2-1/lib/python/xen/xend/XendTask.py", line 209, in log_progress retval = func(*args, **kwds) File "/usr/lib/xen-3.2-1/lib/python/xen/xend/XendDomainInfo.py", line 1778, in _initDomain raise exn VmError: Kernel image does not exist: /tmp/vmlinuz [2010-08-11 10:40:38 3386] DEBUG (XendDomainInfo:1897) XendDomainInfo.destroy: domid=53 [2010-08-11 10:40:38 3386] DEBUG (XendDomainInfo:1914) XendDomainInfo.destroyDomain(53) [2010-08-11 10:40:38 3386] DEBUG (XendDomainInfo:1529) Destroying device model [2010-08-11 10:40:38 3386] DEBUG (XendDomainInfo:1536) Releasing devices [2010-08-11 10:40:38 3386] ERROR (XendDomainInfo:89) Domain construction failed Traceback (most recent call last): File "/usr/lib/xen-3.2-1/lib/python/xen/xend/XendDomainInfo.py", line 87, in create vm.start() File "/usr/lib/xen-3.2-1/lib/python/xen/xend/XendDomainInfo.py", line 420, in start XendTask.log_progress(31, 60, self._initDomain) File "/usr/lib/xen-3.2-1/lib/python/xen/xend/XendTask.py", line 209, in log_progress retval = func(*args, **kwds) File "/usr/lib/xen-3.2-1/lib/python/xen/xend/XendDomainInfo.py", line 1778, in _initDomain raise exn VmError: Kernel image does not exist: /tmp/vmlinuz [2010-08-11 10:40:38 3386] DEBUG (XendDomainInfo:1897) XendDomainInfo.destroy: domid=None [2010-08-11 10:40:38 3386] DEBUG (XendDomainInfo:1914) XendDomainInfo.destroyDomain(None) [2010-08-11 10:40:38 3386] DEBUG (XendDomainInfo:1534) No device model [2010-08-11 10:40:38 3386] DEBUG (XendDomainInfo:1536) Releasing devices I took a look where `VmError` originates from. I think, it turns out to be in `/usr/lib/xen-3.2-1/lib/python/xen/xend/image.py`. if not os.path.isfile(self.kernel): raise VmError('Kernel image does not exist: %s' % self.kernel) But testing this manually works. $ python >>> import os >>> os.path.isfile("/tmp/vmlinuz") True Then I tried it with a different Linux kernel image under `/boot/` and this worked. So as a last attempt I copied `vmlinuz` from `/tmp/` to `/boot/` and now it works as expected. Very strange! Do I need to file a bug for this somewhere. Could you test that under Squeeze or Sid? > BTW, it jut occurred to me that if you install a Squeeze VM onto a Lenny > host that you will find pygrub doesn't work because the version in Lenny > didn't yet understand the grub2 cfg file format. I think d-i still > allows you to select grub1 if you use expert mode, and it looks like you > might be able to add "grub-installer/grub2_instead_of_grub_legacy=false" > to your command line or "d-i grub-installer/grub2_instead_of_grub_legacy > boolean false" to your preseed if you have one. I will test that next. Thanks, Paul
signature.asc
Description: This is a digitally signed message part