diff --git a/xCAT-server/lib/xcat/plugins/debian.pm b/xCAT-server/lib/xcat/plugins/debian.pm index 7fde6382a..3d2c6ce6b 100644 --- a/xCAT-server/lib/xcat/plugins/debian.pm +++ b/xCAT-server/lib/xcat/plugins/debian.pm @@ -768,7 +768,8 @@ sub mkinstall { next; } - if ($arch =~ /ppc64/i and !(-e "$pkgdir/install/netboot/initrd.gz")) { + if ($arch =~ /ppc64/i and !(-e "$pkgdir/install/netboot/initrd.gz") and + !(-e "$pkgdir/install/netboot/ubuntu-installer/$darch/initrd.gz")) { xCAT::MsgUtils->report_node_error($callback, $node, "The network boot initrd.gz is not found in $pkgdir/install/netboot. This is provided by Ubuntu, please download and retry." ); @@ -804,10 +805,16 @@ sub mkinstall { ) ) or ( $arch =~ /ppc64/i and ( - -r "$pkgdir/install/vmlinux" - and $kernpath = "$pkgdir/install/vmlinux" - and -r "$pkgdir/install/netboot/initrd.gz" - and $initrdpath = "$pkgdir/install/netboot/initrd.gz" + (-r "$pkgdir/install/netboot/ubuntu-installer/$darch/vmlinux" + and $kernpath = "$pkgdir/install/install/netboot/ubuntu-installer/$darch/vmlinux" + and -r "$pkgdir/install/netboot/ubuntu-installer/$darch/initrd.gz" + and $initrdpath = "$pkgdir/install/netboot/ubuntu-installer/$darch/initrd.gz" + ) or + (-r "$pkgdir/install/vmlinux" + and $kernpath = "$pkgdir/install/vmlinux" + and -r "$pkgdir/install/netboot/initrd.gz" + and $initrdpath = "$pkgdir/install/netboot/initrd.gz" + ) ) ) )