Hello community,
here is the log from the commit of package kiwi
checked in at Thu Dec 6 01:00:36 CET 2007.
--------
--- arch/i386/kiwi/kiwi.changes 2007-11-29 16:38:37.000000000 +0100
+++ /mounts/work_src_done/STABLE/kiwi/kiwi.changes 2007-12-04 18:02:53.562855000 +0100
@@ -1,0 +2,17 @@
+Fri Nov 30 14:34:37 CET 2007 - ms@suse.de
+
+- v2.00
+- fixed netboot atftp download, patch by
+ jacob berkman . Thanks Jacob (#345859)
+- fixed pattern search if pattern name contains regular
+ expression information which needs to be quoted
+- fixed cleanup code and log server session. Added a new
+ command 'exit' for log server sessions
+- fixed repotype detection for opensuse:// url type
+- changed config-yast.xml to config-yast-autoyast.xml
+- added support for config-yast-firstboot.xml based on the
+ yast2-firstboot mechanism
+- update documentation according to the yast2 autoyast and
+ firstboot changes
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kiwi.spec ++++++
--- /var/tmp/diff_new_pack.y25142/_old 2007-12-06 00:59:57.000000000 +0100
+++ /var/tmp/diff_new_pack.y25142/_new 2007-12-06 00:59:57.000000000 +0100
@@ -1,5 +1,5 @@
#
-# spec file for package kiwi (Version 1.99)
+# spec file for package kiwi (Version 2.00)
#
# Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
@@ -18,7 +18,7 @@
%endif
Requires: perl perl-XML-LibXML perl-libwww-perl screen coreutils
Summary: OpenSuSE - KIWI Image System
-Version: 1.99
+Version: 2.00
Release: 1
Group: System/Management
License: GPL v2 or later
@@ -359,6 +359,20 @@
%{_datadir}/kiwi/image/oemboot/suse*
%changelog
+* Fri Nov 30 2007 - ms@suse.de
+- v2.00
+- fixed netboot atftp download, patch by
+ jacob berkman . Thanks Jacob (#345859)
+- fixed pattern search if pattern name contains regular
+ expression information which needs to be quoted
+- fixed cleanup code and log server session. Added a new
+ command 'exit' for log server sessions
+- fixed repotype detection for opensuse:// url type
+- changed config-yast.xml to config-yast-autoyast.xml
+- added support for config-yast-firstboot.xml based on the
+ yast2-firstboot mechanism
+- update documentation according to the yast2 autoyast and
+ firstboot changes
* Wed Nov 28 2007 - ms@suse.de
- v1.99
- don't use /mnt as mount directory (#344589)
++++++ kiwi.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kiwi/doc/examples/test2/config.xml new/kiwi/doc/examples/test2/config.xml
--- old/kiwi/doc/examples/test2/config.xml 2007-11-29 15:20:29.000000000 +0100
+++ new/kiwi/doc/examples/test2/config.xml 2007-12-03 18:51:35.000000000 +0100
@@ -20,7 +20,7 @@
<user name="root" pwd="$2a$10$fq4yOF75pQY0lKjZkG2DBOdOlptomWELi0Gxd71pziLMGk4ZGIRH2" home="/root"/>
</users>
<repository type="yast2">
- <source path="http://download.opensuse.org/distribution/10.3/repo/oss"/>
+ <source path="opensuse://openSUSE:10.3/standard/"/>
</repository>
<packages type="image">
<package name="aaa_base"/>
Files old/kiwi/doc/kiwi.pdf and new/kiwi/doc/kiwi.pdf differ
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kiwi/kiwi.pl new/kiwi/kiwi.pl
--- old/kiwi/kiwi.pl 2007-11-29 15:20:33.000000000 +0100
+++ new/kiwi/kiwi.pl 2007-12-04 17:52:38.000000000 +0100
@@ -20,6 +20,15 @@
use lib '/usr/share/kiwi/modules';
use strict;
+#============================================
+# perl debugger setup
+#--------------------------------------------
+$DB::inhibit_exit = 0;
+
+#============================================
+# Modules
+#--------------------------------------------
+use warnings;
use Getopt::Long;
use KIWIRoot;
use KIWIXML;
@@ -30,16 +39,9 @@
use KIWIOverlay;
#============================================
-# perl debugger setup
-#--------------------------------------------
-$DB::inhibit_exit = 0;
-
-use warnings;
-
-#============================================
# Globals (Version)
#--------------------------------------------
-our $Version = "1.99";
+our $Version = "2.00";
our $openSUSE = "http://download.opensuse.org/repositories/";
our $ConfigFile = "$ENV{'HOME'}/.kiwirc";
our $ConfigStatus = 0;
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kiwi/modules/KIWIBoot.pm new/kiwi/modules/KIWIBoot.pm
--- old/kiwi/modules/KIWIBoot.pm 2007-11-29 15:20:31.000000000 +0100
+++ new/kiwi/modules/KIWIBoot.pm 2007-12-04 17:52:37.000000000 +0100
@@ -459,7 +459,7 @@
# check for message file in initrd
#------------------------------------------
my $message = "'image/loader/message'";
- my $unzip = "$main::Gzip -cd $initrd 2>&1";
+ $unzip = "$main::Gzip -cd $initrd 2>&1";
if ($zipped) {
$status = qx ($unzip | (cd $loopdir && cpio -d -i $message 2>&1));
} else {
@@ -1080,7 +1080,7 @@
return undef;
}
my $message = "'image/loader/message'";
- my $unzip = "$main::Gzip -cd $initrd 2>&1";
+ $unzip = "$main::Gzip -cd $initrd 2>&1";
$status = qx ($unzip | ( cd $loopdir && cpio -di $message 2>&1));
$result = $? >> 8;
if ($result != 0) {
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kiwi/modules/KIWIConfigure.pm new/kiwi/modules/KIWIConfigure.pm
--- old/kiwi/modules/KIWIConfigure.pm 2007-11-20 15:19:42.000000000 +0100
+++ new/kiwi/modules/KIWIConfigure.pm 2007-12-03 15:07:43.000000000 +0100
@@ -163,39 +163,111 @@
# setupAutoYaST
#------------------------------------------
sub setupAutoYaST {
+ # ...
+ # This function will make use of the autoyast system and setup
+ # the image to call the autoyast automatically on first boot of
+ # the system. To activate the call of yast on first boot the
+ # file /var/lib/YaST2/runme_at_boot is created. Please note
+ # according to the YaST people this is not the preferred method
+ # of calling YaST to perform tasks on first boot. Use the function
+ # setupFirstBootYaST below which uses yast2-firstboot to do the job
+ # ---
my $this = shift;
my $kiwi = $this->{kiwi};
my $root = $this->{root};
my $imageDesc = $this->{imageDesc};
- if (-f "$imageDesc/config-yast.xml") {
- $kiwi -> info ("Setting up AutoYaST...");
- my $autodir = "var/lib/autoinstall/autoconf";
- my $autocnf = "autoconf.xml";
- if (! -d "$root/$autodir") {
- $kiwi -> failed ();
- $kiwi -> error ("AutoYaST seems not be installed");
- $kiwi -> failed ();
- return undef;
- }
- qx ( cp $imageDesc/config-yast.xml $root/$autodir/$autocnf 2>&1 );
- if ( ! open (FD,">$root/etc/install.inf")) {
- $kiwi -> failed ();
- $kiwi -> error ("Failed to create install.inf: $!");
- $kiwi -> failed ();
- return undef;
- }
- print FD "AutoYaST: http://192.168.100.99/part2.xml\n";
- close FD;
- if ( ! open (FD,">$root/var/lib/YaST2/runme_at_boot")) {
- $kiwi -> failed ();
- $kiwi -> error ("Failed to create runme_at_boot: $!");
- $kiwi -> failed ();
- return undef;
- }
- close FD;
- $kiwi -> done ();
+ if (! -f "$imageDesc/config-yast-autoyast.xml") {
+ return "skipped";
}
- return $this;
+ $kiwi -> info ("Setting up AutoYaST...");
+ my $autodir = "var/lib/autoinstall/autoconf";
+ my $autocnf = "autoconf.xml";
+ if (! -d "$root/$autodir") {
+ $kiwi -> failed ();
+ $kiwi -> error ("AutoYaST seems not be installed");
+ $kiwi -> failed ();
+ return "failed";
+ }
+ qx ( cp $imageDesc/config-yast-autoyast.xml $root/$autodir/$autocnf 2>&1 );
+ if ( ! open (FD,">$root/etc/install.inf")) {
+ $kiwi -> failed ();
+ $kiwi -> error ("Failed to create install.inf: $!");
+ $kiwi -> failed ();
+ return "failed";
+ }
+ print FD "AutoYaST: http://192.168.100.99/part2.xml\n";
+ close FD;
+ if ( ! open (FD,">$root/var/lib/YaST2/runme_at_boot")) {
+ $kiwi -> failed ();
+ $kiwi -> error ("Failed to create runme_at_boot: $!");
+ $kiwi -> failed ();
+ return "failed";
+ }
+ close FD;
+ $kiwi -> done ();
+ return "success";
+}
+
+#==========================================
+# setupFirstBootYaST
+#------------------------------------------
+sub setupFirstBootYaST {
+ # ...
+ # This function is based on the yast2-firstboot functionality which
+ # is a service which will be enabled by insserv. The firstboot service
+ # uses a different xml format than the autoyast system. According to
+ # this the input file has a different name. the firstboot input file
+ # is preferred over the config-yast-autoyast.xml file
+ # ---
+ my $this = shift;
+ my $kiwi = $this->{kiwi};
+ my $root = $this->{root};
+ my $imageDesc = $this->{imageDesc};
+ if (! -f "$imageDesc/config-yast-firstboot.xml") {
+ return "skipped";
+ }
+ $kiwi -> info ("Setting up YaST firstboot service...");
+ if (! -f "$root/etc/init.d/firstboot") {
+ $kiwi -> failed ();
+ $kiwi -> error ("yast2-firstboot seems not be installed");
+ $kiwi -> failed ();
+ return "failed";
+ }
+ my $firstboot = "$root/etc/YaST2/firstboot.xml";
+ my $data = qx (cp $imageDesc/config-yast-firstboot.xml $firstboot 2>&1 );
+ my $code = $? >> 8;
+ if ($code != 0) {
+ $kiwi -> failed ();
+ $kiwi -> error ("Failed to copy config-yast-firstboot.xml: $data");
+ $kiwi -> failed ();
+ return "failed";
+ }
+ if ( ! open (FD,">$root/etc/sysconfig/firstboot")) {
+ $kiwi -> failed ();
+ $kiwi -> error ("Failed to create /etc/sysconfig/firstboot: $!");
+ $kiwi -> failed ();
+ return "failed";
+ }
+ print FD "## Description: Firstboot Configuration\n";
+ print FD "## Default: /usr/share/firstboot/scripts\n";
+ print FD "SCRIPT_DIR=\"/usr/share/firstboot/scripts\"\n";
+ print FD "FIRSTBOOT_WELCOME_DIR=\"/usr/share/firstboot\"\n";
+ print FD "FIRSTBOOT_WELCOME_PATTERNS=\"\"\n";
+ print FD "FIRSTBOOT_LICENSE_DIR=\"/usr/share/firstboot\"\n";
+ print FD "FIRSTBOOT_NOVELL_LICENSE_DIR=\"/etc/YaST2\"\n";
+ print FD "FIRSTBOOT_FINISH_FILE=\"/usr/share/firstboot/congrats.txt\"\n";
+ print FD "FIRSTBOOT_RELEASE_NOTES_PATH=\"\"\n";
+ close FD;
+ $data = qx ( chroot $root chkconfig firstboot on 2>&1 );
+ $code = $? >> 8;
+ if ($code != 0) {
+ $kiwi -> failed ();
+ $kiwi -> error ("Failed to activate firstboot service: $data");
+ $kiwi -> failed ();
+ return "failed";
+ }
+ $kiwi -> done();
+ return "success";
}
1;
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kiwi/modules/KIWIImage.pm new/kiwi/modules/KIWIImage.pm
--- old/kiwi/modules/KIWIImage.pm 2007-11-27 16:19:08.000000000 +0100
+++ new/kiwi/modules/KIWIImage.pm 2007-12-04 17:52:37.000000000 +0100
@@ -2117,6 +2117,10 @@
my $opts = shift;
my $kiwi = $this->{kiwi};
my $imageDest = $this->{imageDest};
+ my $loopfound = 0;
+ my $status;
+ my $result;
+ my $loop;
#==========================================
# mount logical extend for data transfer
#------------------------------------------
@@ -2125,8 +2129,23 @@
if (defined $opts) {
$mount = "mount $opts";
}
- my $data = qx ($mount -oloop $imageDest/$name $imageDest/mnt-$$ 2>&1);
- my $code = $? >> 8;
+ for (my $id=0;$id<=7;$id++) {
+ $status = qx ( /sbin/losetup /dev/loop$id 2>&1 );
+ $result = $? >> 8;
+ if ($result eq 1) {
+ $loopfound = 1;
+ $loop = "/dev/loop".$id;
+ $this->{loop} = $loop;
+ last;
+ }
+ }
+ if (! $loopfound) {
+ $kiwi -> error ("Couldn't find free loop device");
+ $kiwi -> failed ();
+ return undef;
+ }
+ my $data= qx ($mount -o loop=$loop $imageDest/$name $imageDest/mnt-$$ 2>&1);
+ my $code= $? >> 8;
if ($code != 0) {
chomp $data;
$kiwi -> error ("Image loop mount failed:");
@@ -2560,7 +2579,10 @@
sub cleanMount {
my $this = shift;
my $imageDest = $this->{imageDest};
- qx (umount $imageDest/mnt-$$ 2>&1);
+ qx (umount -l $imageDest/mnt-$$ 2>&1);
+ if (defined $this->{loop}) {
+ system ("/sbin/losetup -d $this->{loop}");
+ }
rmdir "$imageDest/mnt-$$";
}
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kiwi/modules/KIWILinuxRC.sh new/kiwi/modules/KIWILinuxRC.sh
--- old/kiwi/modules/KIWILinuxRC.sh 2007-11-29 15:20:31.000000000 +0100
+++ new/kiwi/modules/KIWILinuxRC.sh 2007-12-04 17:52:37.000000000 +0100
@@ -1625,15 +1625,12 @@
# there is no useful return code to check so we have to
# check the output of the command
# ----
- echo $1 | grep -q "File not found"
- if [ $? = 0 ];then
- return 1
- fi
- echo $1 | grep -q "aborting"
- if [ $? = 0 ];then
- return 1
- fi
- return 0
+ for i in "File not found" "aborting" "no option named" "unknown host" ; do
+ if echo "$1" | grep -q "$i" ; then
+ return 1
+ fi
+ done
+ return 0
}
#======================================
# validateRAM
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kiwi/modules/KIWILog.pm new/kiwi/modules/KIWILog.pm
--- old/kiwi/modules/KIWILog.pm 2007-11-26 10:36:04.000000000 +0100
+++ new/kiwi/modules/KIWILog.pm 2007-12-04 17:52:37.000000000 +0100
@@ -19,6 +19,7 @@
# Modules
#------------------------------------------
use strict;
+use POSIX ":sys_wait_h";
use Carp qw (cluck);
use KIWISocket;
use KIWISharedMem;
@@ -860,6 +861,7 @@
# Child log server process
#------------------------------------------
our @logChilds = ();
+ our %logChilds = ();
our $logServer = new KIWISocket ( $this,$main::LogServerPort );
our $sharedMem = $this->{smem};
if (! defined $logServer) {
@@ -872,8 +874,13 @@
undef $logServer;
exit 0;
};
- $SIG{INT} = "IGNORE";
- $SIG{HUP} = "IGNORE";
+ $SIG{CHLD} = sub {
+ while ((my $child = waitpid(-1,WNOHANG)) > 0) {
+ $logServer -> closeConnection();
+ kill (13,$child);
+ }
+ };
+ $SIG{INT} = $SIG{TERM};
while (1) {
$logServer -> acceptConnection();
my $child = fork();
@@ -885,8 +892,9 @@
if ($child) {
#==========================================
# Wait for incoming connections
- #------------------------------------------
- push @logChilds,$child;
+ #------------------------------------------
+ $logChilds{$child} = $child;
+ @logChilds = keys %logChilds;
next;
} else {
#==========================================
@@ -909,6 +917,12 @@
next;
}
#==========================================
+ # Handle command: exit
+ #------------------------------------------
+ if ($command eq "exit") {
+ last;
+ }
+ #==========================================
# Add More commands here...
#------------------------------------------
# ...
@@ -920,7 +934,6 @@
);
}
$logServer -> closeConnection();
- $sharedMem -> closeSegment();
exit 0;
}
}
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kiwi/modules/KIWIPattern.pm new/kiwi/modules/KIWIPattern.pm
--- old/kiwi/modules/KIWIPattern.pm 2007-11-26 18:23:03.000000000 +0100
+++ new/kiwi/modules/KIWIPattern.pm 2007-12-04 17:52:37.000000000 +0100
@@ -57,7 +57,11 @@
$kiwi -> failed ();
return undef;
}
- my @pattern = @{$pattref};
+ my @pattern = ();
+ foreach my $p (@{$pattref}) {
+ my $pname = quotemeta $p;
+ push (@pattern,$pname);
+ }
if (! defined $urlref) {
$kiwi -> error ("No URL list for pattern search");
$kiwi -> failed ();
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kiwi/modules/KIWIRoot.pm new/kiwi/modules/KIWIRoot.pm
--- old/kiwi/modules/KIWIRoot.pm 2007-11-20 15:19:43.000000000 +0100
+++ new/kiwi/modules/KIWIRoot.pm 2007-12-03 18:50:50.000000000 +0100
@@ -103,6 +103,14 @@
if ($private_url =~ /^\//) {
$private_url = $baseSystem."/".$private_url;
}
+ my $publics_type = $urlHandler -> getRepoType();
+ if (($publics_type ne "unknown") && ($publics_type ne $type)) {
+ $kiwi -> warning (
+ "$private_url: overwrite repo type $type with: $publics_type"
+ );
+ $kiwi -> done();
+ $type = $publics_type;
+ }
my $channel = "kiwi".$count."-".$$;
my $srckey = "baseurl";
my $srcopt;
@@ -564,9 +572,13 @@
return undef;
}
#========================================
- # setup yast if config-yast.xml exists
+ # check for yast firstboot setup file
#----------------------------------------
- if (! $configure -> setupAutoYaST()) {
+ my $status = $configure -> setupFirstBootYaST();
+ if ($status eq "skipped") {
+ $status = $configure -> setupAutoYaST();
+ }
+ if ($status eq "failed") {
return undef;
}
#========================================
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kiwi/modules/KIWISharedMem.pm new/kiwi/modules/KIWISharedMem.pm
--- old/kiwi/modules/KIWISharedMem.pm 2007-10-05 15:06:08.000000000 +0200
+++ new/kiwi/modules/KIWISharedMem.pm 2007-12-04 17:52:37.000000000 +0100
@@ -21,7 +21,6 @@
# Modules
#------------------------------------------
use strict;
-use KIWILog;
use IPC::SysV qw(IPC_PRIVATE IPC_RMID IPC_CREAT S_IRWXU);
use IPC::Semaphore;
sub MAXBUF() { 2000 }
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kiwi/modules/KIWISocket.pm new/kiwi/modules/KIWISocket.pm
--- old/kiwi/modules/KIWISocket.pm 2007-10-26 19:20:17.000000000 +0200
+++ new/kiwi/modules/KIWISocket.pm 2007-12-04 17:52:37.000000000 +0100
@@ -20,7 +20,6 @@
# Modules
#------------------------------------------
use strict;
-use KIWILog;
use FileHandle;
use Socket;
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kiwi/modules/KIWIURL.pm new/kiwi/modules/KIWIURL.pm
--- old/kiwi/modules/KIWIURL.pm 2007-11-20 15:19:43.000000000 +0100
+++ new/kiwi/modules/KIWIURL.pm 2007-12-04 17:52:37.000000000 +0100
@@ -53,10 +53,22 @@
#------------------------------------------
$this->{kiwi} = $kiwi;
$this->{root} = $root;
+ $this->{type} = "unknown";
return $this;
}
#==========================================
+# getRepoType
+#------------------------------------------
+sub getRepoType {
+ # ...
+ # return repo type, could be unknown
+ # ---
+ my $this = shift;
+ return $this->{type};
+}
+
+#==========================================
# normalizePath
#------------------------------------------
sub normalizePath {
@@ -241,6 +253,14 @@
my $answer = $browser -> request ( $request );
my $title = $answer -> title ();
if ((defined $title) && ($title !~ /not found/i)) {
+ $this->{type} = "rpm-md";
+ return ( $response,$url );
+ }
+ $request = HTTP::Request->new (GET => $repourl."/media.1");
+ $answer = $browser -> request ( $request );
+ $title = $answer -> title ();
+ if ((defined $title) && ($title !~ /not found/i)) {
+ $this->{type} = "yast2";
return ( $response,$url );
}
}
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kiwi/modules/KIWIXML.pm new/kiwi/modules/KIWIXML.pm
--- old/kiwi/modules/KIWIXML.pm 2007-11-27 16:19:08.000000000 +0100
+++ new/kiwi/modules/KIWIXML.pm 2007-12-03 18:43:33.000000000 +0100
@@ -1049,11 +1049,6 @@
my $type = $element -> getAttribute("type");
my $stag = $element -> getElementsByTagName ("source") -> get_node(1);
my $source = $this -> resolveLink ( $stag -> getAttribute ("path") );
- if (($source =~ /^opensuse:\/\//) && ($type ne "rpm-md")) {
- $kiwi -> warning ("$source: forcing repo type [rpm-md]");
- $element -> setAttribute ("type","rpm-md");
- $kiwi -> done();
- }
}
return $this;
}
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kiwi/.revision new/kiwi/.revision
--- old/kiwi/.revision 2007-11-29 16:37:45.000000000 +0100
+++ new/kiwi/.revision 2007-12-04 18:01:51.000000000 +0100
@@ -1 +1 @@
-858
\ No newline at end of file
+866
\ No newline at end of file
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kiwi/system/boot/netboot/suse-linuxrc new/kiwi/system/boot/netboot/suse-linuxrc
--- old/kiwi/system/boot/netboot/suse-linuxrc 2007-11-29 15:20:20.000000000 +0100
+++ new/kiwi/system/boot/netboot/suse-linuxrc 2007-12-04 17:52:38.000000000 +0100
@@ -397,10 +397,10 @@
# /.../
# now load the image into the imageDevice
# ---
- multicast="--option \"multicast on\""
+ multicast="on"
if test "$imageZipped" = "compressed"; then
Echo "Compressed image found: Disable multicast download"
- multicast="--option \"multicast off\""
+ multicast="off"
test ! -p /dev/compressed_image && mkfifo /dev/compressed_image
cat /dev/compressed_image | gzip -d > $imageDevice 2>/dev/null &
imageDevice_orig=$imageDevice
@@ -409,11 +409,13 @@
imageName="$imageName.gz"
fi
Echo "Loading $imageName [$imageDevice BS:$imageBlkSize Byte]..."
- loadStatus=`atftp $multicast --option "blksize $imageBlkSize" -g \
- -r $imageName -l $imageDevice $imageServer 2>&1`
+ loadStatus=`atftp \
+ --option "multicast $multicast" \
+ --option "blksize $imageBlkSize" \
+ -g -r $imageName -l $imageDevice $imageServer 2>&1`
if ! loadOK "$loadStatus";then
systemException \
- "Failed to load image: $imageName -> no such image" \
+ "Download of $imageName failed: atftp output: $loadStatus" \
"reboot"
fi
if test "$imageZipped" = "compressed"; then
@@ -793,10 +795,10 @@
/mnt/sbin/pivot_root . mnt >/dev/null 2>&1
if test $? != 0;then
PIVOT=false
- cleanInitrd && mount --move . / && /bin/chroot . ./preinit
- /bin/chroot . rm -f ./preinit
- /bin/chroot . rm -f ./include
- /bin/chroot . rm -rf ./image
+ cleanInitrd && mount --move . / && chroot . ./preinit
+ chroot . rm -f ./preinit
+ chroot . rm -f ./include
+ chroot . rm -rf ./image
else
PIVOT=true
./preinit
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
---------------------------------------------------------------------
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org