Cannot identify running kernel

Hi,

I run a FreeBSD 9.1 server with a GENERIC server (no jail) but:
Code:
# freebsd-update fetch
Cannot identify running kernel

I don't know what to do.

Code:
# uname -a
FreeBSD sa.my.domain 9.1-RELEASE FreeBSD 9.1-RELEASE #0 r243825: Tue Dec  4 09:23:10 UTC 2012     root@farrell.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC  amd64

Can you help me? Thank you.
 
Hmm, freebsd-update seems to just run sysctl -n kern.bootfile to get the current kernel, then pull the directory path from this. If it can't retrieve this directory, it outputs the error you display above.

So what happens if you try and run sysctl -n kern.bootfile directly on the command line?
 
It says you are running a GENERIC kernel but can't seem to find it. What is in /boot/kernel? Does ls -l /boot/kernel/kernel actually show the kernel as being there? Was there anything non-standard done about your installation?
 
My installation also has a file named kernel.

Code:
% ls -l kernel
-r-xr-xr-x  2 root  wheel  20524007 Sep 26 15:50 kernel
Perhaps freebsd-update establishes identity in some other way.
 
This is the bit from /usr/sbin/freebsd-update. There's really no ambiguity to it. It takes the output of that sysctl sans the kernel file, then quits if that directory doesn't exist. Do you have a /boot/kernel directory?
Code:
BOOTFILE=`sysctl -n kern.bootfile`
KERNELDIR=${BOOTFILE%/kernel}
if ! [ -d ${KERNELDIR} ]; then
        echo "Cannot identify running kernel"
        exit 1
fi
 
Back
Top