Date: Sun, 21 Jul 2002 16:51:49 +0200 From: Gerhard Sittig <Gerhard.Sittig@gmx.net> To: FreeBSD-gnats-submit@FreeBSD.org Subject: docs/40851: [PATCH] "mergemaster -p" in UPDATING's "COMMON ITEMS" section Message-ID: <20020721165149.B1494@shell.gsinet.sittig.org>
next in thread | raw e-mail | index | archive | help
>Number: 40851 >Category: docs >Synopsis: [PATCH] "mergemaster -p" in UPDATING's "COMMON ITEMS" section >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-doc >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Sun Jul 21 11:20:04 PDT 2002 >Closed-Date: >Last-Modified: >Originator: Gerhard Sittig >Release: FreeBSD 4.6-STABLE i386 >Organization: System Defenestrators Inc. >Environment: FreeBSD's 4.x branch and a "-p capable" mergemaster as well as the -CURRENT branch >Description: Updating the source, building the tools (world) and compiling the source is not always sufficient to update a system. The sendmail update lately introduced new user accounts which are already needed when building the world. That's what a new mergemaster mode ("pre buildworld mode") was introduced for to prepare what is needed but lacking. UPDATING in -STABLE does not mention the needed "mergemaster -p" step in its COMMON ITEMS section. UPDATING in -CURRENT seems to have the "mergemaster -p" invocation in the wrong place. >How-To-Repeat: Upgrading a FreeBSD 4.0-RELEASE system to 4.6-RELEASE by means of the following commands fails: [ install 4.0-R without sources ] # cd /usr # rmdir src # cvs -q -d $REPO co -r RELENG_4_6_0_RELEASE src # cd src # make buildworld # make buildkernel # make installkernel # reboot & exit [ with a following 'boot -s' ] # mount -a -t nonfs # cd /usr/src # make installworld [ <-- this step fails ] # mergemaster The missing smmsp and mailnull account prevent mtree(8) from working correctly. This is when the installworld step fails. Simply calling "mergemaster -p" here only brings up an error message since the in $PATH mergemaster is too old and doesn't know this option. Calling "usr.sbin/mergemaster/mergemaster.sh -p" works as expected, the following installworld step completes and after running "the usual" mergemaster the upgrade succeeded. I did not try to "install the new mergemaster and then run it". >Fix: Here is what I suggest to add to -STABLE's UPDATING: Index: UPDATING =================================================================== RCS file: /CVSREPO/FreeBSD/src/UPDATING,v retrieving revision 1.73.2.72 diff -u -r1.73.2.72 UPDATING --- UPDATING 2002/07/05 12:48:52 1.73.2.72 +++ UPDATING 2002/07/20 21:18:37 @@ -447,6 +447,7 @@ To update from 4.0-RELEASE or later to the most current 4.x-STABLE ---------- + sh usr.sbin/mergemaster/mergemaster.sh -p [3] make buildworld make buildkernel KERNCONF=YOUR_KERNEL_HERE make installkernel KERNCONF=YOUR_KERNEL_HERE @@ -466,6 +467,12 @@ [2] If you do not run mergemaster, you will likely hit a number of show stopper problems. The biggest one is that your /etc/pam.conf won't let you log in using ssh. + [3] Sometimes building or installing the new source tree + has prerequisites an older system doesn't satisfy. This + is what the "pre buildworld mode" of mergemaster was + introduced for. Make sure to either install the new + version of mergemaster before buildworld or run mergemaster + from its source directory where the new version is available. What follows are older entries for those people upgrading from earlier versions of -stable/-current. For -CURRENT I'm not sure if the "mergemaster -p" -- which is located right before the "make installworld" step in single user mode -- should move up right before the "make buildworld" command. Even if the situations handled by mergemaster's pre buildworld mode up to now only applied in the installworld phase, I'm not certain that it always will be this way. Future buildworld or buildkernel phases might need some preparation done by 'mergemaster -p'. I would vote for running 'mergemaster -p' even before buildworld just to be safe. virtually yours 82D1 9B9C 01DC 4FB4 D7B4 61BE 3F49 4F77 72DE DA76 Gerhard Sittig true | mail -s "get gpg key" Gerhard.Sittig@gmx.net -- If you don't understand or are scared by any of the above ask your parents or an adult to help you. >Release-Note: >Audit-Trail: >Unformatted: To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-doc" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020721165149.B1494>