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 <[email protected]> > >> 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. >> -- >> _______________________________________________ >> [email protected] mailing list >> http://lists.freebsd.org/mailman/listinfo/freebsd-stable >> To unsubscribe, send any mail to "[email protected]" >> > _______________________________________________ > [email protected] mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-stable > To unsubscribe, send any mail to "[email protected]" > _______________________________________________ [email protected] mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-stable To unsubscribe, send any mail to "[email protected]"
