From owner-svn-src-head@FreeBSD.ORG Sun Jul 21 16:38:17 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 16ABAFE7; Sun, 21 Jul 2013 16:38:17 +0000 (UTC) (envelope-from Devin.Teske@fisglobal.com) Received: from mx1.fisglobal.com (mx1.fisglobal.com [199.200.24.190]) by mx1.freebsd.org (Postfix) with ESMTP id D248F961; Sun, 21 Jul 2013 16:38:16 +0000 (UTC) Received: from smtp.fisglobal.com ([10.132.206.15]) by ltcfislmsgpa07.fnfis.com (8.14.5/8.14.5) with ESMTP id r6LGcFjG017887 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NOT); Sun, 21 Jul 2013 11:38:15 -0500 Received: from LTCFISWMSGMB21.FNFIS.com ([10.132.99.23]) by LTCFISWMSGHT04.FNFIS.com ([10.132.206.15]) with mapi id 14.02.0309.002; Sun, 21 Jul 2013 11:38:14 -0500 From: "Teske, Devin" To: Alexey Dokuchaev Subject: Re: svn commit: r253513 - head/release Thread-Topic: svn commit: r253513 - head/release Thread-Index: AQHOhdJ2FlUUZwfcZkq9aC0Vc2SteZlvd48AgAAyAIA= Date: Sun, 21 Jul 2013 16:38:13 +0000 Message-ID: <13CA24D6AB415D428143D44749F57D7201FD2CDB@ltcfiswmsgmb21> References: <201307210523.r6L5NYqh084679@svn.freebsd.org> <20130721133915.GA36573@FreeBSD.org> In-Reply-To: <20130721133915.GA36573@FreeBSD.org> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.132.253.121] Content-Type: text/plain; charset="us-ascii" Content-ID: <43948B66A5E7A44EBBCCA904BDDD08CB@fisglobal.com> Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:5.10.8794, 1.0.431, 0.0.0000 definitions=2013-07-20_06:2013-07-19,2013-07-20,1970-01-01 signatures=0 Cc: "svn-src-head@freebsd.org" , Glen Barber , "svn-src-all@freebsd.org" , "src-committers@freebsd.org" , Devin Teske X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list Reply-To: Devin Teske List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 21 Jul 2013 16:38:17 -0000 On Jul 21, 2013, at 6:39 AM, Alexey Dokuchaev wrote: > On Sun, Jul 21, 2013 at 05:23:34AM +0000, Glen Barber wrote: >> New Revision: 253513 >> URL: http://svnweb.freebsd.org/changeset/base/253513 >>=20 >> Log: >> Create memstick images with the '.img' filename extension. >>=20 >> Requested by: many >> [...] >=20 > Is there any work being done to merge the .iso and .img into single, > hybrid bootable image (c.g. Haiku)? I wonder how Haiku does it. I use ISOLINUX (part of the SYSLINUX family) as my boot loader. The ISO9660 layer boots ISOLINUX and then chain-loads the mfsroot, displayi= ng my beastie Forth menu. Then from the mfsroot boot environment, sysinstall runs /install.cfg: http://druidbsd.cvs.sourceforge.net/viewvc/druidbsd/druidbsd/druid/dep/free= bsd/mfsroot/standard/src/install.cfg?revision=3D1.1&view=3Dmarkup which runs a small script: http://druidbsd.cvs.sourceforge.net/viewvc/druidbsd/druidbsd/druid/dep/free= bsd/mfsroot/standard/src/fis/load_menu?revision=3D1.1&view=3Dmarkup Which looks for /dev/iso9660/VOL_ID Where VOL_ID is set by the mkisofs(8) `-V VOL_ID' flag when producing the = boot media. See "BOOT_VOLID" in my GNUMakefile that calls mkisofs(8): http://druidbsd.cvs.sourceforge.net/viewvc/druidbsd/druidbsd/druid/GNUmakef= ile.in?revision=3D1.7&view=3Dmarkup Now here's the trick... It doesn't matter whether you burned the ISO to a CD/DVD or you imaged it t= o a USB Thumb... ... phk's GEOM layer picks up and creates /dev/iso9660/VOL_ID regardless of= what medium you booted from (so-long as it was an ISO that was post-proces= sed with the ISOLINUX utility "isohybrid"). So in my hybridized installer, I have a bootstrap script that runs before s= ysinstall that mounts /dev/iso9660/VOL_ID to /cdrom and I end up using /cdr= om always. That's the very basic *gist* of how I achieve hybrid booting for FreeBSD. O= f course... that's only the *start*. Of course, to get sysinstall to instal= l from /cdrom, I had to code a new media access module called "mediaSetNull= FS": http://druidbsd.cvs.sourceforge.net/viewvc/druidbsd/druidbsd/druid/dep/free= bsd/patches/local_patches/usr.sbin%3A%3Asysinstall%3A%3Anullfs.c.patch?view= =3Dmarkup Whose job is (when you configure your installation to use this access metho= d) is to take the path given and do a mount_nullfs from point-A to point-B = *prior* to doing the chroot into the formatted disk (here, like all media a= ccess methods, the point-B is "/dist" within the chroot environment). Of course... moving forward... we would need to re-apply logistics to bsdin= stall to work with ISOLINUX and isohybrid images -- though I gather it woul= d be even easier than making sysinstall work. > I've asked this question before, > but I cannot recall now what was the outcome if it... >=20 Did I answer you last time? Just curious. I've been doing this for a while. --=20 Devin _____________ The information contained in this message is proprietary and/or confidentia= l. If you are not the intended recipient, please: (i) delete the message an= d all copies; (ii) do not disclose, distribute or use the message in any ma= nner; and (iii) notify the sender immediately. In addition, please be aware= that any message addressed to our domain is subject to archiving and revie= w by persons other than the intended recipient. Thank you.