From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from list by lists.gnu.org with archive (Exim 4.71) id 1YEoL5-00023B-Gg for mharc-grub-devel@gnu.org; Fri, 23 Jan 2015 19:12:35 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:57571) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YEoL2-00021k-6i for grub-devel@gnu.org; Fri, 23 Jan 2015 19:12:33 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YEoKy-0003Db-UD for grub-devel@gnu.org; Fri, 23 Jan 2015 19:12:32 -0500 Received: from mail-wg0-x231.google.com ([2a00:1450:400c:c00::231]:58565) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YEoKy-0003DV-N7 for grub-devel@gnu.org; Fri, 23 Jan 2015 19:12:28 -0500 Received: by mail-wg0-f49.google.com with SMTP id k14so294983wgh.8 for ; Fri, 23 Jan 2015 16:12:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:date:from:user-agent:mime-version:to:subject:references :in-reply-to:content-type:content-transfer-encoding; bh=6OZ7cc9exCf9VVBc/YunioDVSt/ik5M0bV3s1hYX5sY=; b=pWPF/V9rAB9Ndf6p1i4/69+tiOqSZ2s4fHZ5DHwVT68yhxVBI4Pc7t9yZJXRm96jYm D4ZQ2BQ4XrfVe9gitghGZ/yOG0m5Z8/bqBBfkWk2lVQ52TaIpPICpavFL01jozo0+omg QuN0r/8qu06S6Wigb8gG+hrFt4F5gVBGD9zc3A++VzJOmP1zozrixD6F+NJAoqKA+opq Q+m3gi/3y2ZfKuhBkU0kR/+wu5/PvRbhP0i/ZRQJrRO3+XNFaZo04Y2O/l744gQZ+wiT UWJ2LIKDbpYVYa0Eb6nH2kZeXBSv6Nwl16uTsK2LwS5x88T6XzCBWbg8c8+IRuawjO6F i37g== X-Received: by 10.180.78.73 with SMTP id z9mr1289939wiw.52.1422058347318; Fri, 23 Jan 2015 16:12:27 -0800 (PST) Received: from [192.168.10.45] (204.Red-88-16-101.dynamicIP.rima-tde.net. [88.16.101.204]) by mx.google.com with ESMTPSA id bj3sm3789167wib.3.2015.01.23.16.12.25 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 23 Jan 2015 16:12:26 -0800 (PST) Message-ID: <54C2E368.4040506@gmail.com> Date: Sat, 24 Jan 2015 01:12:24 +0100 From: adrian15 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Icedove/31.2.0 MIME-Version: 1.0 To: grub-devel@gnu.org Subject: Re: Does grub-mkrescue support UEFI hybrid USB/DVD images? References: <54C16AD2.7090808@pcbsd.org> In-Reply-To: <54C16AD2.7090808@pcbsd.org> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 8bit X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2a00:1450:400c:c00::231 X-BeenThere: grub-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list Reply-To: The development of GNU GRUB List-Id: The development of GNU GRUB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 24 Jan 2015 00:12:33 -0000 El 22/01/15 a las 22:25, Kris Moore escribió: > > Hey all, > > We are trying to create hybrid USB/DVD images, and they work just fine > on BIOS. However it doesn't seem to work when creating UEFI. > > We are using the following: > > # grub-mkrescue -d "/usr/local/lib/grub/x86_64-efi" -o > -- -volid "OURLABEL" > > This image does boot UEFI via DVD, but when copied to a USB stick with > dd it fails to boot with the following: Hi, I'm going to describe what I use for making a USB/CDROM EFI/x86 hybrid image for building SG2D (An improved Grub2 Disk). But my question (after reading other replies to this question) is why Grub2 should be patched for what he wants ? Is it a non standard EFI boot maybe? Thank you. Debian way ========== Install these two packages: grub-efi-amd64-bin grub-pc-bin Run: grub-mkrescue -o ./my_grub.iso Upstream way (I actually want to ask here if this recipe could be improved, but that would be probably need another email thread) ============ Make sure no Debian grub package is found in chroot apt-get remove '.grub.' Grub2 (efi+pc)) Build and installation # Make sure we are testing the right revision mkdir grub_upstream cd grub_upstream git clone git://git.savannah.gnu.org/grub.git . git checkout COMMIT-TO-TEST # Remove any non git related file - BEGIN git reset --hard git clean -f -d git clean -f -x -d # Remove any non git related file - END # Build efi based grub and install it - BEGIN ./autogen.sh && ./configure --enable-grub-mkfont --with-platform=efi && make # Dont forget to delete any rest of previous installation - BEGIN sudo rm -rf /usr/local/etc/grub.d/ /usr/local/bin/grub-* /usr/local/share/grub/ # Dont forget to delete any rest of previous installation - END sudo make install # Build efi based grub and install it - END make clean # Prepare for next build ./configure --enable-grub-mkfont --with-platform=pc && make # Prepare for a i386 build sudo make install # Install i386 build TL;DR: Make sure no Grub Debian package is installed, install grub twice, one configured for x86, the other one configured for efi. Then grub-mkrescue detects both modules and adds to the final image which by default is ISO/USB hybrid. By the way. I was told how to build the image without doing make install (thus not having to remove any Debian Grub package) so I might re-adapt this recipe in the future. grub-mkrescue -o ./my_grub.iso adrian15 -- Support free software. Donate to Super Grub Disk. Apoya el software libre. Dona a Super Grub Disk. http://www.supergrubdisk.org/donate/