beadm basics
dweimer
dweimer at dweimer.net
Wed Jun 11 03:21:45 UTC 2014
On 06/10/2014 6:42 pm, freebsd at fongaboo.com wrote:
> Nevermind I realized there needs to be a reboot between the first
> creation/activation and the installation/upgrade you are performing.
>
>
> On Tue, 10 Jun 2014, freebsd at fongaboo.com wrote:
>
>>
>> I'm trying to learn ZFS and beadm. I wanted to do a proof-of-concept,
>> so I ran 'beadm create <instance>', then ran 'beadm activate
>> <instance>'.
>>
>> I then installed something from ports (in this case, zfs-stats). I
>> reactivated the default instance in beadm and rebooted. BUt I am still
>> seeing zfs-stats installed.
>>
>> In my understanding of beadm, shouldn't the machine be in the state it
>> was prior to the zfs-stats install?
>>
>>
>>
>> -------------------------------------------------------------------------
>> shot through the heart ooh baby do you know what that's
>> worth
>> and you're to blame ooh heaven is a place on
>> earth
>> darling you give love they say in heaven love comes
>> first
>> a bad name we'll make heaven a place on
>> earth
>> ORBITAL "Halcyon
>> Live"
>> _______________________________________________
>> freebsd-questions at freebsd.org mailing list
>> http://lists.freebsd.org/mailman/listinfo/freebsd-questions
>> To unsubscribe, send any mail to
>> "freebsd-questions-unsubscribe at freebsd.org"
>>
> _______________________________________________
> freebsd-questions at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-questions
> To unsubscribe, send any mail to
> "freebsd-questions-unsubscribe at freebsd.org"
I have been using this quite extensively since I learned it, the shorter
down times with updates, and the ability to go back if something went
wrong quickly has been a huge sleep saver, as I can all the work with
the server live during normal work hours. Then just reboot then test
applications at night time from home after hours.
### method 1, installing ports or port updates
beadm create <instance>
beadm mount <instance> /jails/devel/ROOT
## Have a jail configured with /jails/devel/ROOT as its ROOT
## With scripts that mount /usr/ports & distfiles under jail
jail -c devel
jexec <jailid> tcsh
install new ports or updates etc...
exit jail
jail -r devel
beadm umount <instance>
beadm activate <instance>
reboot
### Method 2, building world, installing ports and updates.
### Note: works great from P1, P2... but if going from say 9.2 to 10,
gets a little tricky
beadm create <instance>
beadm mount <instance> /jails/devel/ROOT
setenv MAKEOBJDIRPREFIX /jails/devel/ROOT/usr/obj
setenv DESTDIR /jails/devel/ROOT
setenv __MAKE_CONF /jails/devel/ROOT/etc/make.conf
setenv SRCCONF /jails/devel/ROOT/etc/src.conf
mount -t nullfs -o ro /usr/src /jails/devel/ROOT/usr/src
cd /jails/devel/ROOT/usr/src
Do buildworld/install/mergemaster
## IF port updates are also necessary see steps above to start jail &
update ports
unsetenv MAKEOBJDIRPREFIX
unsetenv DESTDIR
unsetenv __MAKE_CONF
unsetenv SRCCONF
umount /jails/devel/ROOT/usr/src
beadm umount <instance>
beadm activate <instance>
reboot
I can provide more detailed jail configurations, and some scripts I have
setup to simplify the process if your interested.
--
Thanks,
Dean E. Weimer
http://www.dweimer.net/
More information about the freebsd-questions
mailing list