From ef323cb4c9f2451cf168a47bf82edb773e28b317 Mon Sep 17 00:00:00 2001 From: Mohamed Larabi Date: Mon, 29 Apr 2013 17:57:41 +0200 Subject: [PATCH] several fixes: - fix installation of VM's rootfs to support 32bits also - fix configuration of sysvinit-based distros (fc <= 14) --- vbuild-init-lxc.sh | 40 +++++++++++++++++++++++++++++++--------- 1 file changed, 31 insertions(+), 9 deletions(-) diff --git a/vbuild-init-lxc.sh b/vbuild-init-lxc.sh index 329bae5b..06acdeca 100755 --- a/vbuild-init-lxc.sh +++ b/vbuild-init-lxc.sh @@ -242,6 +242,9 @@ function configure_fedora_init() { sed -i 's|.sbin.start_udev||' ${rootfs_path}/etc/rc.sysinit sed -i 's|.sbin.start_udev||' ${rootfs_path}/etc/rc.d/rc.sysinit + # don't mount devpts, for pete's sake + sed -i 's/^.*dev.pts.*$/#\0/' ${rootfs_path}/etc/rc.sysinit + sed -i 's/^.*dev.pts.*$/#\0/' ${rootfs_path}/etc/rc.d/rc.sysinit chroot ${rootfs_path} /sbin/chkconfig udev-post off chroot ${rootfs_path} /sbin/chkconfig network on } @@ -279,10 +282,26 @@ set -x return 1 fi - # download a mini fedora into a cache - echo "Downloading fedora minimal ..." - YUM="yum --installroot $INSTALL_ROOT -y --nogpgcheck --releasever=$release" - PKG_LIST="yum initscripts passwd rsyslog vim-minimal dhclient chkconfig rootfiles policycoreutils openssh-server openssh-clients" + mkdir -p $INSTALL_ROOT/etc/yum.repos.d + mkdir -p $INSTALL_ROOT/dev + mknod -m 0444 $INSTALL_ROOT/dev/random c 1 8 + mknod -m 0444 $INSTALL_ROOT/dev/urandom c 1 9 + + # copy yum config and repo files + cp /etc/yum.conf $INSTALL_ROOT/etc/ + cp /etc/yum.repos.d/fedora* $INSTALL_ROOT/etc/yum.repos.d/ + + # append fedora repo files with desired $release and $basearch + for f in $INSTALL_ROOT/etc/yum.repos.d/* + do + sed -i "s/\$basearch/$arch/g; s/\$releasever/$release/g;" $f + done + + # install fedora + # PKG_LIST="yum initscripts passwd rsyslog vim-minimal dhclient chkconfig rootfiles policycoreutils openssh-server openssh-clients" + # yum --installroot=$INSTALL_ROOT --nogpgcheck install fedora-release + # yum --installroot=$INSTALL_ROOT --nogpgcheck install $PKG_LIST + MIRROR_URL=http://mirror.onelab.eu/fedora/releases/$release/Everything/$arch/os @@ -315,6 +334,9 @@ set -x # http://rpm.org/gitweb?p=rpm.git;a=commitdiff;h=cf1095648194104a81a58abead05974a5bfa3b9a # So ideally if we want to be able to build f12 images from f18 we need an rpm that has # this patch undone, like we have in place on our f14 boxes (our f14 boxes need a f18-like rpm) + + YUM="yum --installroot=$INSTALL_ROOT --nogpgcheck -y" + PKG_LIST="yum initscripts passwd rsyslog vim-minimal dhclient chkconfig rootfiles policycoreutils openssh-server openssh-clients" echo "$YUM install $PKG_LIST" $YUM install $PKG_LIST @@ -461,16 +483,16 @@ function configure_yum_in_lxc () { cat > $rootfs_path/etc/yum.repos.d/building.repo <