Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 7 Sep 2015 16:19:48 -0600
From:      Warner Losh <imp@bsdimp.com>
To:        Tim Kientzle <tim@kientzle.com>
Cc:        freebsd-arm <freebsd-arm@freebsd.org>
Subject:   Re: bhyve/arm6/amd64 query
Message-ID:  <CANCZdfpgZDxbgxbvrNhwJq8Ezw04mA4rQmY1H2sD17LC04LdQQ@mail.gmail.com>
In-Reply-To: <023E3382-6F0A-4EDA-9D9A-E0F60AB58FA6@kientzle.com>
References:  <20150907090541.GA54788@potato.growveg.org> <59F1B4A5-CD93-46D2-83D3-F0790CA2FA8E@gmail.com> <20150907150539.GA2959@potato.growveg.org> <023E3382-6F0A-4EDA-9D9A-E0F60AB58FA6@kientzle.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Sep 7, 2015 at 12:15 PM, Tim Kientzle <tim@kientzle.com> wrote:

>
> > On Sep 7, 2015, at 8:05 AM, John <freebsd-lists@potato.growveg.org>
> wrote:
> >
> > On Mon, Sep 07, 2015 at 03:33:24PM +0300, Jukka Ukkonen wrote:
> >> AFAIK no. Bhyve is a plain hardware type of container,
> >> not a hardware emulator like qemu, nor a jail type
> >> container.
> >> You should be looking for qemu or something similar.
> >> Bhyve can be used for hosting other operating systems
> >> on the same type of HW as the vanilla system.
> >
> > OK, thanks. You've saved me the work of trying then failing terribly :D
> >
> > It doesn't have to be hosted. The reason for me asking is, basically can
> I take
> > the image and (as an image, not as an OS) can it be updated/recompiled
> on different,
> > higher spec hardware, then returned to the Pi?
> >
> > Hopefully I'm describing this right. You know on say amd64, an arm6
> system can be
> > cross-compiled as an installable system. That system is running. I have
> updated it
> > (while installed on RPI2 hardware) and installed my configs, it works
> great.
> > Now I can unplug the microSD, dd it to a .img file, on another system,
> to archive it.
> > What I'm asking is, can I take that image while it's on the other
> system, and
> > interact with it to the extent that I can update/upgrade it?
>
> In theory, yes.  If you could figure this out there are lots of people who
> might be interested in it.
>
> The basic idea:  cross-compile a new FreeBSD system, mount the arm6 image
> and then cross-install onto it to update it.  This is very similar to the
> process Crochet uses for building a new image, except that instead of
> starting with a new blank system image you would instead mount your
> existing image and install over it.
>
> Roughly speaking, the process should be something like the following
> (you'll need to do some research to fill in the many details):
>
>   $ cd /usr/src
>   $ make TARGET_ARCH=arm6 buildworld
>   $ make TARGET_ARCH=arm6 KERNCONF=RPI2 buildkernel
>   $ # ... mount the img via md loopback
>   $ mergemaster <options to target the image instead of the local
> filesystem>
>   $ make TARGET_ARCH=arm6 KERNCONF=RPI2 DESTDIR=<img> installkernel
>   $ make TARGET_ARCH=arm6 KERNCONF=RPI2 DESTDIR=<img> installworld
>   $ # ... unmount the image


s/arm6/armv6/g

but otherwise that looks good.

Warner



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CANCZdfpgZDxbgxbvrNhwJq8Ezw04mA4rQmY1H2sD17LC04LdQQ>