From owner-freebsd-hackers Fri Mar 23 4:14:57 2001 Delivered-To: freebsd-hackers@freebsd.org Received: from ringworld.nanolink.com (ringworld.nanolink.com [195.24.48.13]) by hub.freebsd.org (Postfix) with SMTP id 3A46137B71A for ; Fri, 23 Mar 2001 04:14:49 -0800 (PST) (envelope-from roam@orbitel.bg) Received: (qmail 48736 invoked by uid 1000); 23 Mar 2001 12:13:56 -0000 Date: Fri, 23 Mar 2001 14:13:56 +0200 From: Peter Pentchev To: Matt Simerson Cc: "'freebsd-hackers@freebsd.org'" Subject: Re: The "right" way to build a new world WAS: 4.3-BETA world crashin g 4.2-RELEASE kernel ? Message-ID: <20010323141356.H17216@ringworld.oblivion.bg> Mail-Followup-To: Matt Simerson , "'freebsd-hackers@freebsd.org'" References: <8D18712B2604D411A6BB009027F6449801B4B544@0SEA01EXSRV1> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: <8D18712B2604D411A6BB009027F6449801B4B544@0SEA01EXSRV1>; from mpsimerson@hostpro.com on Thu, Mar 22, 2001 at 06:01:16PM -0700 Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG On Thu, Mar 22, 2001 at 06:01:16PM -0700, Matt Simerson wrote: > OK, let's approach this from a little different angle: > > Below is the appropriate entries from /usr/src/UPDATING on a FreeBSD > 4-stable machine. As of 2/2/2001, the most correct and safest method for > updating your FreeBSD machine is as follows: > > cd /usr/src > make buildworld > make kernel KERNCONF= > reboot (single user) > make installworld > mergemaster > reboot > > I have found that there IS a variety of reasons NOT to do it that way. The > most obvious is that you might not have console access, thus making it > pretty hard to access the machine while it's in single user mode. I can also > think of a couple instances where this method could cause pain. OK, some of your reasons stated below are valid, some are not quite so; in particular, the procedure you are following - running the buildworld and buildkernel at the same time - is not only not-quite-right, but also potentially dangerous - AFAIK, the buildkernel process uses compiler bits from /usr/obj, which might get changed during the compile, leaving you with largely incompatible object/executable files, and no error messages. I understand your reason for wanting both to complete when you get back to work; are you aware that make(1) can process more than one target on the command line, and only build the second target if the first one finishes successfully? What I do is, usually at the end of the day: mergemaster # mergemaster is interactive, yes, but it doesn't # take too much time ;) # and it is sometimes SORELY needed if e.g. mtree files # have changed, potentially breaking the subsequent builds make buildworld buildkernel installkernel installworld # (and I have a KERNCONF?=whatever in my /etc/make.conf) ..thus having the best of both worlds :) G'luck, Peter -- This would easier understand fewer had omitted. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message