From owner-freebsd-geom@FreeBSD.ORG Wed Mar 18 16:23:54 2009 Return-Path: Delivered-To: freebsd-geom@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 1DE861065760; Wed, 18 Mar 2009 16:23:54 +0000 (UTC) (envelope-from xcllnt@mac.com) Received: from asmtpout018.mac.com (asmtpout018.mac.com [17.148.16.93]) by mx1.freebsd.org (Postfix) with ESMTP id 08A838FC08; Wed, 18 Mar 2009 16:23:54 +0000 (UTC) (envelope-from xcllnt@mac.com) MIME-version: 1.0 Content-transfer-encoding: 7BIT Content-type: text/plain; charset=US-ASCII; format=flowed; delsp=yes Received: from macbook-pro.jnpr.net ([66.129.224.36]) by asmtp018.mac.com (Sun Java(tm) System Messaging Server 6.3-8.01 (built Dec 16 2008; 32bit)) with ESMTPSA id <0KGP003IGMVDU530@asmtp018.mac.com>; Wed, 18 Mar 2009 09:23:38 -0700 (PDT) Message-id: <0B27FB91-9F2B-4F96-B4A0-330CAD725AF1@mac.com> From: Marcel Moolenaar To: Andriy Gapon In-reply-to: <49C11880.8000506@freebsd.org> Date: Wed, 18 Mar 2009 09:23:01 -0700 References: <4978C24D.9040706@icyb.net.ua> <49A6C33E.70402@freebsd.org> <49C11880.8000506@freebsd.org> X-Mailer: Apple Mail (2.930.3) Cc: freebsd-geom@freebsd.org Subject: Re: gpart bootcode and /boot/boot X-BeenThere: freebsd-geom@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: GEOM-specific discussions and implementations List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2009 16:23:54 -0000 On Mar 18, 2009, at 8:51 AM, Andriy Gapon wrote: > on 26/02/2009 18:54 Marcel Moolenaar said the following: >> >> On Feb 26, 2009, at 8:28 AM, Andriy Gapon wrote: >> >>> on 22/01/2009 21:00 Andriy Gapon said the following: >>>> Sorry for being lazy - what is "gpart bootcode" equivalent of >>>> bsdlabel >>>> -B [-b boot] ? >>>> >>> >>> Marcel, guys, I am still curious. >>> >>> disklabel -B refuses do to anything because of what it thinks is >>> incorrect >>> partition info. >>> >>> And the following command gets "Operation not permitted" when it >>> opens >>> ad6s1 for >>> writing: >>> gpart bootcode -p /boot/boot -i 1 ad6 >> >> Don't you mean "gpart bootcode -b /boot/boot ad6s1" >> >> If you say "-i 1 ad6", then what you want is bootcode >> in a partition that is controlled by the scheme on ad6 >> (the scheme on ad6 is the MBR). You can't do that, >> because that partition is sub-partitioned by the BSD >> scheme. >> >> Since you want bootcode in the BSD scheme, you need >> to add bootcode to ad6s1. > > > Thank you very much for the explanation! > >>> >>> This is amd64, stable/7, gpart-only kernel (gpart_mbr, gpart_bsd). >> >> Bootcode for the BSD scheme is not present in 7-STABLE yet. >> I just recently added that to -CURRENT (I must have missed >> it) and I need to get around MFCing it. Feel free to do the >> MFC for me. The code has been in -CURRENT long enough to do >> a MFC. > > Thank you for the offer and sorry that I haven't used the opportunity. > And thank you for the MFC - I am using the code in stable/7 and > successfully > updated boot2 blocks via the command you suggested. > Just for the record - I did it to use jhb's fix for real<->protected > switch in > boot code. > > BTW, is there a way to read/backup bootcode (for BSD scheme)? There's no gpart function for it yet, but you can use dd as a work-around. Unfortunately, that means you need to know how much to read: MBR: 1 sector (512B) starting at 0 BSD: 16 sectors (8KB) starting at 0 These raw dumps can be restored using gpart: gpart bootcode -b $mbr.dd ad6 gpart bootcode -b $bsd.dd ad6s1 No, it will not destroy any partitioning data :-) -- Marcel Moolenaar xcllnt@mac.com