Dom0 kernels
by M A Young
I have built a new set of kernel packages based on fedora rawhide
kernels and the xen/dom0/hackery branch of Jeremy's git repository
( http://git.kernel.org/?p=linux/kernel/git/jeremy/xen.git;a=summary ).
This batch (kernel-2.6.29-0.114.2.6.rc6.fc11) is available via the koji
build system at
http://koji.fedoraproject.org/koji/taskinfo?taskID=1149500
These are really for development and debugging purposes only, as I am
still having problems getting them to boot, but others have reported more
success at getting kernels based on this git repository working, so you
might be lucky.
Note to install these packages on Fedora 10 you will need to have
rpm-4.6.0-1.fc10 installed (currently in updates-testing but it should be
available in updates soon) because of the change to SHA-256 file digest
hashing in recent Fedora 11 builds.
Michael Young
14 years, 3 months
Success with Fedora 10 Xen pv_ops 2.6.29-rc8 dom0
by Pasi Kärkkäinen
Hello!
I've used a lot of time trying to get my custom Xen pv_ops dom0 kernel working with
virt-install and/or virt-manager on Fedora 10, and now it seems I got things
working.
If you want to play with this you need:
1) New enough pv_ops dom0 kernel (2.6.29-rc8 or newer) so it has /sys/hypervisor support included
- Compile with CONFIG_HIGHPTE=n since it seems to be broken still
2) libvirt 0.6.1 and related packages from Fedora 10 updates-testing
In addition to those I'm using Xen 3.3.1-9 packages from rawhide/F11 rebuilt for F10.
With the older Fedora 10 libvirt packages libvirtd was crashing often for me, and
I had some other issues with virt-install console window not opening but stalling etc..
Today I was able to run the following on Fedora 10 32bit PAE pv_ops dom0:
- CentOS 5.3 32bit PAE PV domU
- Fedora 10 32bit PAE PV domU
- Use virt-install to install Fedora 10 32bit PAE PV domU (using custom kickstart
to force PAE kernel installation to avoid the anaconda BUG which installs
wrong non-PAE kernel as a default).
Fedora 11 (rawhide) installation most probably works too.
I'm using LVM volumes for domU disks (tap:aio is not yet supported by pv_ops
dom0 kernel).
Network seems to work after running "ifdown eth0 && ifup eth0"
on the guest.. dunno why that's needed. That's something to figure out later:)
Graphical domU console works with virt-viewer and virt-install during installation.
Issues:
- virt-manager complains about default network (virbr0) being inactive and
asks if I want to start it. If I click Yes, then I get error: "libvirtError: cannot create bridge 'virbr0': File exists"
virbr0 works just fine with virt-install. So dunno what's the problem with that..
have to look into that later.
Thanks to everyone involved for helping me with this!
-- Pasi
14 years, 4 months
P2V and grub bootloader
by Dennis Jacobfeuerborn
Hi,
I'm currently experimenting with converting a physical system to a virtual
one. Using losetup, kpartx, etc. i was able to transfer the system to a
volume group in an image file.
My problem is that I don't know how to install grub on that image file. I
can boot the VM with a rescue CD and then install it from there but I'd
like to do this without having to boot the VM first. On the net I found
some tutorials that mention mount-binding /dev to /new-root/dev, chrooting
to /new-root and then doing a "grub-install /dev/sda" but wouldn't that
overwrite the boot sector of my physical disk rather than the virtual one?
I tried doing a "grub-install /dev/loop0" (with loop0 beeing the device
node for the image file) but there I only get "/dev/loop0 does not have any
corresponding BIOS drive".
How can I install grub from outside the VM?
Regards,
Dennis
14 years, 6 months
Virtualization Test Day
by Mark McLoughlin
Hey,
The F11 Test Day for virtualization is next week (Thurs May 7).
https://fedoraproject.org/wiki/Test_Day:2009-05-07_Virtualization
Please join us for the day on #fedora-qa (irc.freenode.net) to help
with testing Fedora's virt tools, writing test cases, filing bugs and
debugging issues.
On the day, you'll have the opportunity to work closely with other
Fedora developers and contributors to make a real impact on the quality
of Fedora's virtualization features.
Preferably, anyone planning on joining us for the test day will have a
full updated rawhide host machine installed in advance.
The wiki page contains a first cut at listing test areas which we will
cover on the day. Each test area will have a set of test cases. We plan
to flesh out these test cases as part of the test day, but if people
could dive in now and start writing some test cases, that would make a
huge difference.
Chris Lalancette is leading the way here with test cases for Xen DomU
testing:
https://fedoraproject.org/wiki/Test_Day:2009-05-07_Virtualization:XenDomU
See you on IRC next week!
Thanks,
Mark.
14 years, 7 months
libguestfs vs parallel make
by Jim Meyering
Hi Rich,
I noticed that the recommended idiom
make %{?_smp_mflags}
is not used in libguestfs.spec.
This comment:
# Uses javac which is incompatible with parallel make.
make INSTALLDIRS=vendor
makes me think you can enable parallel builds overall,
and turn off parallelism only in the java/ sub-directory.
To do that, simply add these lines to java/Makefile.am:
# Tell version 3.79 and up of GNU make to not build goals in this
# directory in parallel.
.NOTPARALLEL:
14 years, 7 months
[PATCH] build: don't tell "make clean" to remove my '~' backup files
by Jim Meyering
Hi Rich,
automake's policy on what to remove via "make clean" is reasonable:
if running build rules creates it, then "make clean" can and should remove it.
However, even if build rules happen
to create backup files, please remove only the specific ones
they can create, not all of the ones in a directory. Just in case
someone relies on those and expect them to hang around...
>From 1e8be391ac17b4ddcf9671e8413d2660844e6993 Mon Sep 17 00:00:00 2001
From: Jim Meyering <meyering(a)redhat.com>
Date: Thu, 30 Apr 2009 15:47:52 +0200
Subject: [PATCH] build: don't tell "make clean" to remove my '~' backup files
* Makefile.am (CLEANFILES): Don't remove '~' backup files.
* daemon/Makefile.am: Ditto.
* examples/Makefile.am: Ditto.
* fish/Makefile.am: Ditto.
* images/Makefile.am: Ditto.
* inspector/Makefile.am: Ditto.
* java/Makefile.am: Ditto.
* ocaml/Makefile.am: Ditto.
* ocaml/examples/Makefile.am: Ditto.
* perl/Makefile.am: Ditto.
* python/Makefile.am: Ditto.
* ruby/Makefile.am: Ditto.
* src/Makefile.am: Ditto.
---
Makefile.am | 2 +-
daemon/Makefile.am | 2 --
examples/Makefile.am | 2 +-
fish/Makefile.am | 2 --
images/Makefile.am | 2 --
inspector/Makefile.am | 4 +---
java/Makefile.am | 2 +-
ocaml/Makefile.am | 4 ++--
ocaml/examples/Makefile.am | 2 +-
perl/Makefile.am | 2 --
python/Makefile.am | 4 +---
ruby/Makefile.am | 2 +-
src/Makefile.am | 2 --
13 files changed, 9 insertions(+), 23 deletions(-)
diff --git a/Makefile.am b/Makefile.am
index 47ef6d0..f2f26e7 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -201,7 +201,7 @@ test-boot-realistic: emptydisk
# Make clean.
-CLEANFILES = $(fs_DATA) emptydisk pod2htm?.tmp *~ html/*~ recipes/*~
+CLEANFILES = $(fs_DATA) emptydisk pod2htm?.tmp
clean-local:
rm -rf initramfs
diff --git a/daemon/Makefile.am b/daemon/Makefile.am
index 1d3f752..bf53c56 100644
--- a/daemon/Makefile.am
+++ b/daemon/Makefile.am
@@ -44,5 +44,3 @@ guestfsd_SOURCES = \
../src/guestfs_protocol.c
guestfsd_CFLAGS = -Wall
-
-CLEANFILES = *~
diff --git a/examples/Makefile.am b/examples/Makefile.am
index 31707b8..13302d9 100644
--- a/examples/Makefile.am
+++ b/examples/Makefile.am
@@ -10,4 +10,4 @@ to_xml_SOURCES = to-xml.c
to_xml_CFLAGS = -I$(top_builddir)/src -Wall
to_xml_LDADD = $(top_builddir)/src/libguestfs.la
-CLEANFILES = *~ $(noinst_PROGRAMS)
+CLEANFILES = $(noinst_PROGRAMS)
diff --git a/fish/Makefile.am b/fish/Makefile.am
index 4164103..016e9b3 100644
--- a/fish/Makefile.am
+++ b/fish/Makefile.am
@@ -28,5 +28,3 @@ guestfish_CFLAGS = \
-I$(top_builddir)/src -Wall \
-DGUESTFS_DEFAULT_PATH='"$(libdir)/guestfs"'
guestfish_LDADD = $(top_builddir)/src/libguestfs.la $(LIBREADLINE)
-
-CLEANFILES = *~
diff --git a/images/Makefile.am b/images/Makefile.am
index d5272e9..6811107 100644
--- a/images/Makefile.am
+++ b/images/Makefile.am
@@ -19,5 +19,3 @@ EXTRA_DIST = \
helloworld.tar \
helloworld.tar.gz \
mbr-ext2-empty.img.gz
-
-CLEANFILES = *~
diff --git a/inspector/Makefile.am b/inspector/Makefile.am
index 394489b..b43870d 100644
--- a/inspector/Makefile.am
+++ b/inspector/Makefile.am
@@ -19,8 +19,6 @@ EXTRA_DIST = \
run-inspector-locally \
virt-inspector.pl
-CLEANFILES = *~
-
if HAVE_INSPECTOR
man_MANS = virt-inspector.1
@@ -46,4 +44,4 @@ install-data-hook:
mkdir -p $(DESTDIR)$(bindir)
install -m 0755 virt-inspector.pl $(DESTDIR)$(bindir)/virt-inspector
-endif
\ No newline at end of file
+endif
diff --git a/java/Makefile.am b/java/Makefile.am
index ea4de6a..d1c0da4 100644
--- a/java/Makefile.am
+++ b/java/Makefile.am
@@ -37,7 +37,7 @@ EXTRA_DIST = \
$(java_tests) \
run-java-test
-CLEANFILES = *~ doc-stamp
+CLEANFILES = doc-stamp
if HAVE_JAVA
diff --git a/ocaml/Makefile.am b/ocaml/Makefile.am
index 6eebc94..079ce74 100644
--- a/ocaml/Makefile.am
+++ b/ocaml/Makefile.am
@@ -23,8 +23,8 @@ EXTRA_DIST = \
SUBDIRS = examples
-CLEANFILES = *~ *.cmi *.cmo *.cmx *.cma *.cmxa *.o *.a *.so
-CLEANFILES += t/*~ t/*.cmi t/*.cmo t/*.cmx t/*.o t/*.a t/*.so
+CLEANFILES = *.cmi *.cmo *.cmx *.cma *.cmxa *.o *.a *.so
+CLEANFILES += t/*.cmi t/*.cmo t/*.cmx t/*.o t/*.a t/*.so
if HAVE_OCAML
diff --git a/ocaml/examples/Makefile.am b/ocaml/examples/Makefile.am
index 48191e7..abe6cdf 100644
--- a/ocaml/examples/Makefile.am
+++ b/ocaml/examples/Makefile.am
@@ -5,6 +5,6 @@ if HAVE_OCAML
lvs: lvs.ml
$(OCAMLFIND) ocamlopt -I .. mlguestfs.cmxa $< -o $@
-CLEANFILES = *.cmi *.cmo *.cmx *.o *~ lvs
+CLEANFILES = *.cmi *.cmo *.cmx *.o lvs
endif
\ No newline at end of file
diff --git a/perl/Makefile.am b/perl/Makefile.am
index 7ff52d9..52a6a09 100644
--- a/perl/Makefile.am
+++ b/perl/Makefile.am
@@ -26,8 +26,6 @@ EXTRA_DIST = \
t/*.t \
typemap
-CLEANFILES = *~ examples/*~ t/*~
-
if HAVE_PERL
# Interfacing automake and ExtUtils::MakeMaker known to be
diff --git a/python/Makefile.am b/python/Makefile.am
index 86ece8d..bab869e 100644
--- a/python/Makefile.am
+++ b/python/Makefile.am
@@ -20,8 +20,6 @@ EXTRA_DIST = \
guestfs-py.c \
t/*.py
-CLEANFILES = *~ t/*~
-
if HAVE_PYTHON
pythondir = $(PYTHON_SITE_PACKAGES)
@@ -40,4 +38,4 @@ TESTS_ENVIRONMENT = \
$(PYTHON)
TESTS = t/005-import.py t/010-launch.py t/050-lvcreate.py
-endif
\ No newline at end of file
+endif
diff --git a/ruby/Makefile.am b/ruby/Makefile.am
index 2b4b201..9ee0ae5 100644
--- a/ruby/Makefile.am
+++ b/ruby/Makefile.am
@@ -23,7 +23,7 @@ EXTRA_DIST = \
run-ruby-tests \
tests/tc_*.rb
-CLEANFILES = *~ \
+CLEANFILES = \
lib/*~ \
tests/*~ \
ext/guestfs/*~ \
diff --git a/src/Makefile.am b/src/Makefile.am
index 9868b42..1874899 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -47,5 +47,3 @@ guestfs_protocol.h: guestfs_protocol.x
$(RPCGEN) -h -o $@-t $<
mv $@-t $@
endif
-
-CLEANFILES = *~
--
1.6.3.rc3.212.g8c698
14 years, 7 months
libguestfs.spec paranoia
by Jim Meyering
Hi Rich,
>From the spec file,
%if %{buildnonet}
mkdir repo
pushd repo
cp $(find /var/cache/yum/build -name '*.rpm') .
createrepo .
popd
%define extra --with-mirror=file://$(pwd)/repo --with-repo=fedora-12
How about the following instead:
%if %{buildnonet}
mkdir repo
find /var/cache/yum/build -type f -name '*.rpm' -print0 | xargs -0 cp -t repo
createrepo repo
%define extra --with-mirror=file://$(pwd)/repo --with-repo=fedora-12
Then, even if someone puts maliciously-named files in that directory,
those commands will copy only the intended ones.
In a pathological case, the cp $(...) command could end up
copying files from arbitrary locations.
The only drawback is that the new commands rely on GNU find and xargs
for -print0 and -0, and GNU cp for it's --target-directory=DIR (-t DIR).
IMHO, this feels like another reason to put the .spec file under
version control with the rest of the code.
14 years, 7 months
Fedora11-Preview without GRUB
by Ján ONDREJ (SAL)
Hello,
after my rawhide installation was corrupted, I planned to install a fresh
Fedora11-Preview in virt-manager. Everything worked well, just GRUB has been
not installed. I can't fix this by running some commands in rescue mode.
My attempts are here:
sh-4.0# df /boot
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/vda1 198337 13573 174524 8% /boot
My root partition is /dev/vda1, so my root disk is /dev/vda (paravirtualized
disk).
sh-4.0# grub-install /dev/vda
expr: non-numeric argument
/dev/vda1 does not have any corresponding BIOS drive.
sh-4.0# grub-install --recheck /dev/vda
Probing devices to guess BIOS drives. This may take a long time.
No suitable drive was found in the generated device map.
Reverting to backed up copy.
sh-4.0#
grub-install always fails. Trying grub:
sh-4.0# cat /boot/grub/device.map
# this device map was generated by anaconda
(hd0) /dev/vda
sh-4.0# grub
Probing devices to guess BIOS drives. This may take a long time.
GNU GRUB version 0.97 (640K lower / 3072K upper memory)
[ Minimal BASH-like line editing is supported. For the first word, TAB
lists possible command completions. Anywhere else TAB lists the possible
completions of a device/filename.]
grub> setup (hd0)
setup (hd0)
Error 12: Invalid device requested
grub>
Always no effect. No I don't know, where is my problem. May be this was a
problem of my new virt-manager-0.7, which added some incompatible
parameters. My installed packages (for host system):
[ondrejj@work ~]$ rpm -qa \*virt\* gtk-vnc qemu\* \*kvm\* | sort
etherboot-roms-kvm-5.4.4-13.fc11.noarch
etherboot-zroms-kvm-5.4.4-13.fc11.noarch
gtk-vnc-0.3.8-8.fc11.i586
libvirt-python-0.6.1-1.fc10.i386
libvirt-0.6.1-1.fc10.i386
python-virtinst-0.400.3-3.fc10.noarch
python-virtualenv-1.3.2-1.fc10.noarch
qemu-common-0.10-12.fc11.i586
qemu-img-0.10-12.fc11.i586
qemu-system-arm-0.10-12.fc11.i586
qemu-system-cris-0.10-12.fc11.i586
qemu-system-mips-0.10-12.fc11.i586
qemu-system-m68k-0.10-12.fc11.i586
qemu-system-ppc-0.10-12.fc11.i586
qemu-system-sh4-0.10-12.fc11.i586
qemu-system-sparc-0.10-12.fc11.i586
qemu-system-x86-0.10-12.fc11.i586
qemu-user-0.10-12.fc11.i586
qemu-0.10-12.fc11.i586
virt-df-2.1.5-1.fc10.i386
virt-manager-0.7.0-4.fc10.i386
virt-mem-0.2.9-6.fc10.i386
virt-top-1.0.3-2.fc10.i386
virt-viewer-0.0.3-3.fc10.i386
Any ideas, what happened and if it's an error, how to report this?
SAL
14 years, 7 months
In F11, still disable NetworkManager if bridging?
by sean darcy
I've an xp virtual machine on qemu/kvm, F11. I'd like to be able reach
it over the network - for instance with NX. To do that, I'm trying to
set up bridged networking. The howto at
http://wiki.libvirt.org/page/Networking says:
As of time of writing (Fedora 9) NetworkManager does not support
bridging, so it is necessary to disable it, and revert to "classic"
network initscripts
Still true? If not, how do you set up bridging on NM?
A howto on setting up kvm networking on F9
(http://www.linux-kvm.com/content/using-bridged-networking-virt-manager)
and the ubuntu howto's talk about creating a tap interface. The
libvirt.org doesn't. Is a tap interface required/useful?
Do I need a physical network card for each bridged vm? Is this what
the tap interface is for?
And finally where does the kvm driver disk ( NETKVM-20081229.iso ) fit
in all this? Do I need to install it in the xp vm before I ...??
sean
14 years, 7 months