freebsd-update with non-GENERIC kerrnel

Jason Helfman jhelfman at e-e.com
Tue Jun 1 17:58:09 UTC 2010


The only way to have freebsd-update to work on a non-GENERIC kernel is to run your own freebsd-update server based off an iso that has your custom kernel within the release.

I've been doing this for some time now.

On Jun 1, 2010, at 2:57 AM, c0re wrote:

> freebsd-update made for only GENERIC kerndel due to binary diff patches.
> After you rebuild world and kernel you'll be not able to apply binary
> patches.
> 
> 2010/6/1 Olaf Seibert <O.Seibert at cs.ru.nl>
> 
>> I find the way freebsd-update handles a system that runs a non-GENERIC
>> kernel less than helpful.
>> 
>> It is doing this:
>> 
>> | fourquid.3:~$ sudo freebsd-update upgrade -r 8.1-BETA1
>> | Password:
>> | Looking up update.FreeBSD.org mirrors... 3 mirrors found.
>> | Fetching metadata signature for 8.0-RELEASE from update5.FreeBSD.org...
>> done.
>> | Fetching metadata index... done.
>> | Fetching 2 metadata patches.. done.
>> | Applying metadata patches... done.
>> | Inspecting system... done.
>> |
>> | WARNING: This system is running a "fourquid" kernel, which is not a
>> | kernel configuration distributed as part of FreeBSD 8.0-RELEASE.
>> | This kernel will not be updated: you MUST update the kernel manually
>> | before running "/usr/sbin/freebsd-update install".
>> |
>> | The following components of FreeBSD seem to be installed:
>> | src/base src/bin src/cddl src/contrib src/crypto src/etc src/games
>> | src/gnu src/include src/krb5 src/lib src/libexec src/release src/rescue
>> | src/sbin src/secure src/share src/sys src/tools src/ubin src/usbin
>> | world/base world/catpages world/dict world/doc world/games world/info
>> | world/lib32 world/manpages world/proflibs
>> |
>> | The following components of FreeBSD do not seem to be installed:
>> | kernel/generic
>> |
>> | Does this look reasonable (y/n)? n
>> 
>> I do have the kernel sources installed, so I would like to have them
>> updated. I don't even mind to have a GENERIC kernel temporarily
>> installed, until I compile my own (fortunately, they are not that
>> different).
>> 
>> It is nice that it tells me that I "MUST update the kernel manually",
>> but it gives me no help in getting the sources and doing that. (Can the
>> new kernel even be built in all cases with old tools? NetBSD offers a
>> nice cross-building system for that.)
>> 
>> For my previous update to 8.0-RELEASE-p2 I patched freebsd-update simply
>> to think that my kernel *is* GENERIC,
>> 
>> --- /usr/sbin/freebsd-update    2009-12-22 17:16:01.000000000 +0100
>> +++ /tmp/freebsd-update 2010-05-11 10:35:05.000000000 +0200
>> @@ -631,6 +631,7 @@
>>       # we're running an SMP kernel.  This mis-identification is a bug
>>       # which was fixed in 6.2-STABLE.
>>       KERNCONF=`uname -i`
>> +       KERNCONF=GENERIC
>>       if [ ${KERNCONF} = "SMP-GENERIC" ]; then
>>               KERNCONF=SMP
>>       fi
>> 
>> but that seems riskier as updates get a bit bigger.
>> 
>> The official way seems to be to reboot using GENERIC, upgrade (with a
>> reboot with new GENERIC), rebuild new CUSTOM kernel, reboot again. At
>> least the first reboot ought to be avoided...
>> 
>> -Olaf.
>> --
>> _______________________________________________
>> freebsd-stable at freebsd.org mailing list
>> http://lists.freebsd.org/mailman/listinfo/freebsd-stable
>> To unsubscribe, send any mail to "freebsd-stable-unsubscribe at freebsd.org"
>> 
> _______________________________________________
> freebsd-stable at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-stable
> To unsubscribe, send any mail to "freebsd-stable-unsubscribe at freebsd.org"
> 



More information about the freebsd-stable mailing list