From owner-freebsd-questions@FreeBSD.ORG Fri Jan 21 05:09:41 2011 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 610031065670 for ; Fri, 21 Jan 2011 05:09:41 +0000 (UTC) (envelope-from freebsd@edvax.de) Received: from mx02.qsc.de (mx02.qsc.de [213.148.130.14]) by mx1.freebsd.org (Postfix) with ESMTP id 0D90F8FC16 for ; Fri, 21 Jan 2011 05:09:40 +0000 (UTC) Received: from r55.edvax.de (port-92-195-143-131.dynamic.qsc.de [92.195.143.131]) by mx02.qsc.de (Postfix) with ESMTP id 851271E566; Fri, 21 Jan 2011 06:09:39 +0100 (CET) Received: from r55.edvax.de (localhost [127.0.0.1]) by r55.edvax.de (8.14.2/8.14.2) with SMTP id p0L59bEB012274; Fri, 21 Jan 2011 06:09:37 +0100 (CET) (envelope-from freebsd@edvax.de) Date: Fri, 21 Jan 2011 06:09:37 +0100 From: Polytropon To: "Michael D. Norwick" Message-Id: <20110121060937.b0bbc702.freebsd@edvax.de> In-Reply-To: <4D390080.7020604@centurytel.net> References: <4D390080.7020604@centurytel.net> Organization: EDVAX X-Mailer: Sylpheed 2.4.7 (GTK+ 2.12.1; i386-portbld-freebsd7.0) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Cc: freebsd-questions@freebsd.org Subject: Re: Implications of missing this step? X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Polytropon List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jan 2011 05:09:41 -0000 On Thu, 20 Jan 2011 21:41:52 -0600, "Michael D. Norwick" wrote: > Good Day; > > Running PC-BSD 8.1 with a custom kernel and new world. I just finished > another custom kernel and rebuilt world according to the FreeBSD > handbook. While reading the docs again to find an answer to a question > about how upgraded ports are handled, I came across the following in 24.2.3; > > "If a custom kernel is in use, the upgrade process is slightly more > involved. A copy of the GENERIC kernel is needed, and it should be > placed in /boot/GENERIC. If the GENERIC kernel is not already present in > the system, it may be obtained using one of the following methods:" > > I am in the process of doing #>portupgrade -af with a new custom kernel > and stock (rebuilt) world i.e. buildkernel KERNCONF=KERNEL_011911, and > buildworld... (after upgrading src and ports with csup). Things seem to > be going ok but the statements about 'old object files and libraries' > being out of date for third party applications, make me feel as if I > have done something wrong. I blew away the GENERIC kernel several > iterations of kernel builds ago. I always start a build with #>make > clean. What can go wrong by not following the above step? See /usr/src/Makefile with those instructions: 1. `cd /usr/src' (or to the directory containing your source tree). 2. `make buildworld' 3. `make buildkernel KERNCONF=YOUR_KERNEL_HERE' (default is GENERIC). 4. `make installkernel KERNCONF=YOUR_KERNEL_HERE' (default is GENERIC). [steps 3. & 4. can be combined by using the "kernel" target] 5. `reboot' (in single user mode: boot -s from the loader prompt). 6. `mergemaster -p' 7. `make installworld' 8. `make delete-old' 9. `mergemaster' (you may wish to use -U or -ai). 10. `reboot' 11. `make delete-old-libs' (in case no 3rd party program uses them anymore) This is the recommended road map AFTER you've successfully updated your sorces. Rebuilding of ports MAY be needed after this step - when the new environment has been installed and you're running the new kernel and world. > Is a GENERIC > kernel always needed? The GENERIC kernel is a fail-safe mechanism. If your kernel won't boot, you can request booting GENERIC from the loader, because GENERIC *should* always boot. If your custom kernel runs fine, there's no need for the GENERIC kernel to be additionally built. You can make a copy of the initial (stock) GENERIC kernel as kernel.GENERIC. This should be a -RELEASE kernel of the release you're currently using (8.0, 8.1, 8.1), but can be any GENERIC kernel of a -STABLE version, too. The system will also automatically save the last kernal as kernel.old. Before installing world, this old kernel will match version with the installed world. But as I said, it's "only" a security mechanism to boot the system when the new kernel is not booting / running properly. -- Polytropon Magdeburg, Germany Happy FreeBSD user since 4.0 Andra moi ennepe, Mousa, ...