# missing kernel.old



## Dru (Nov 26, 2009)

Hi all,

I recently updated using freebsd-update, using a custom kernel. I had renamed the 7.2 generic kernel.old to GENERIC for the update process.

After finally starting x, and having a look around for a bit, I decided to build a custom kernel for 8.0. I copied and then modified the GENERIC 8.0 kernel configuration file, not reusing the 7.2

Here's where the problem starts, before and after recompiling the kernel, I noted the free space. So after building, I went to take a look at the size of the built kernel, and I noticed kernel.old wasnt listed.


```
$ cd /boot
$ ls
GENERIC		boot2		gptboot		loader.help	screen.4th
beastie.4th	cdboot		gptzfsboot	loader.rc	support.4th
boot		defaults	kernel		mbr		zfs
boot0		device.hints	loader		modules		zfsboot
boot0sio	firmware	loader.4th	pmbr
boot1		frames.4th	loader.conf	pxeboot
```

but:


```
$ locate kernel.old
/boot/kernel.old/coda5.ko
/boot/kernel.old/coda5.ko.symbols
/boot/kernel.old/coretemp.ko
/boot/kernel.old/coretemp.ko.symbols
/boot/kernel.old/cpuctl.ko
/boot/kernel.old/cpuctl.ko.symbols
/boot/kernel.old/cpufreq.ko
/boot/kernel.old/cpufreq.ko.symbols
/boot/kernel.old/crypto.ko
```
.....etc.


```
$ cd /boot/kernel.old
cd: can't cd to /boot/kernel.old
```


Anyone happen to know whats up? Im unsure why kernel.old disappeared. Also, can I keep the GENERIC, and use it for future updates, or should I try to figure out how to save kernel.old?

Its not a reeeal big deal, as I can always download the GENERIC 8.0 kernel, but I was just unsure how this might have happened, also would fsck get my space back or fix it? I hadnt manually ran fsck yet, and have read the man page, but Im not quite sure if the use is applicable here.

Dunno if this is a bug, or if it was cause I still had the updated GENERIC in there. I didnt notice any errors, but honestly didnt sit at the pc the whole time the kernel compiled.

Thank you.

Edit, Sorry if I stuck this in the wrong spot.


----------



## graudeejs (Nov 26, 2009)

The update procces would rename old kernel to kernel.old itself, but since you did it yourself, when you was updating, your old kernel was removed, because it looked like REALLY old. lol

It would all be good, if you wouldn't rename kernel to kernel.old, next time, when you don't trust update precess or something like that rename (or copy) kernel to kernel.bak


[If I didn't miss anything, I'm very sleepy atm]


----------



## Dru (Nov 26, 2009)

killasmurf86, ohhh ok, hmmm. 

I didnt rename anything to kernel.old, but renamed the original kernel.old from my 7.2 install, to "GENERIC" as stated to do in the handbook incase of running a custom kernel, before the update process.

Now that you posted the process, I do seem to remember seeing kernel.old in there before I started to install my custom kernel in 8.0, but at the time it didnt even catch my mind.

I dont quite understand though, the GENERIC thats in there is the one I named before the whole update, and if there was one to be named kernel.old in the freebsd-update process, that GENERIC would have been named to kernel.old, and the new kernel named simply "kernel"

So during my custom kernel install, the "kernel" should have been the one named to old. It seems my GENERIC has remained untouched since the update process.

And if there was actually a kernel.old in there, as I might have seen, according to the way the manual states, the kernel.old would have just been overwritten.

basically my understanding of how things are now, the GENERIC is the old from 7.2, the "kernel" now is my custom built, and the kernel that I built mine from has disappeared.

I understand about the sleepy, no problem and thanks for the info so far, I can sometimes type stuff hard to understand.


----------



## Dru (Nov 26, 2009)

Ooooook, I think I may have understood....even confusing myself here.

My 7.2 custom kernel was still in there, along with the one named to GENERIC from 7.2.

freebsd-update, used the GENERIC, and built the kernel, and renamed my 7.2 custom kernel to kernel.old

I then built my custom kernel, and the 8.0 kernel would be renamed to kernel.old...but it already existed, as I thought I might have seen, after you mentioned it.

I didnt even think twice about it at the time.

I was under the impression that it would be overwritten by the handbook anyhow, but I might be mistaken.

Is there anyway to resolve the issue, and/or save the 8.0 generic kernel? fsck?


----------



## graudeejs (Nov 26, 2009)

You can insted CD/DVD and install GENERIC kernel manually
search for "installing FreeBSD without sysinstall" or something like that on daemonforums.org


----------



## Beastie (Nov 26, 2009)

FreeBSD Install Without Sysinstall


----------



## Dru (Nov 27, 2009)

Thanks for the info guys, I also realized after reading another thread earlier.
http://forums.freebsd.org/showthread.php?t=8737

locate still had old info, then I started adding the missing filespace, and it isnt big enough for a complete kernel.

Complete stupidity on my part, I knew about the locate database, but was too concerned that there wasnt a kernel.old for it to sink in at the time.

Since I had to specify 
	
	



```
nextboot -k GENERIC
```
 and it was booting off of my renamed and updated GENERIC, there may not have been a "kernel" kernel in there after the update...I cant say for sure, I was tired, and have slept since then.

Anyhow, I should have known better, sorry about that. Thanks again you guys, and thanks SirDice, and DutchDaemon.


----------



## lyuts (Nov 30, 2009)

You should also remember, that locate uses its db for locating files. It means that even after deleting a directory locate will show it you until you until you run update.locatedb.


----------

