upgrading from 2.2.5 to 2.2.7Please note that this upgrade failed. I retain it for historical purposes only. I recommend you try the Upgrading FreeBSD entry instead.
My upgrade has turned into a very long process. This is not the fault of FreeBSD. Rather, it’s the result of some minimal hardware.
6 August 1998 – Upgrading via FTP (it fails)Well, it’s time. I’m going to upgrade the system. I’m not sure why I want to, but I’d like to keep current. My first port of call will be:
I decide to upgrade from the FTP server. I suspect I’ll have trouble because I tried this once before. The upgrade expects to find 2.2.6, but it’ll only find 2.2.7 so I dunno what will happen.
Yes. It failed. But It mentions the Options Menu. I go there and find "Release to Download" and change it to 2.2.7-RELEASE. And try again.
Well, that didn’t go. Shortly after it connects to the FTP server, it stops, and returns to the previous screen. No message. No nothing.
I ask on EFnet IRC Network #freebsd if the above is expected behaviour. It is recommended that I use cvsup instead of what I’m trying. I start looking up how to install that. But the gurus on the channel recommend the statically linked stuff instead. So I check out the handbook at:
From there, I decide to go and get the client without GUI at:
I download that, then did the following:
tar -xvf nslint-2.0a5.tar
The following few paragraphs are very hazy. I didn’t take fully notes. Sorry.
I followed the instructions in the README file and moved the executable and the man files to their respective locations. Then I checked out the examples provided in /usr/share/examples/cvsup/. From there, I decided to try the example shown in the section Synchronizing Source Trees over the Internet of the handbook.
It downloaded lots of stuff, but I ran out of disk space. It’s just as well that I’ve ordered the CD-ROMs for 2.2.7. They should arrive next week.
16 August 1998 – Upgrading via CDThe CDs have arrived. After an aborted attempt at upgrading directly to my 330 M drive, I ran out of disk space. The install overwrote my /etc directory. So I copied stuff from my backup in /usr/tmp/etc to /etc but not everything went as planned. I had to do the following changes by hand:
- DNS wasnt running. named.boot had to be replaced with the original settings.
- popper wasn’t running.
- httpd is also not running.
- /etc/aliases also needed manual copying
After all of this, I decided to get a new 5G drive. One of the initial problems I encountered was with my existing IDE controller which had room for only two devices. With two drives and a CD-ROM, something had to go. So I set my original hard-drive aside and installed the 5G drive,
Creating the install floppyFollowing the directions in The Complete FreeBSD book, I created a floppy drive. Using View failed with no error message whatsoever. rawrite gave me something like a > 64K DMA attempt, or something. So I tried:
E:\> tools\fdimage floppies\boot.flp a:
where E: is my CD-ROM.
From there, I just followed the book. You might have to follow the section in the handbook mentioned above. Either one should get you to where you are going.
Installation problemsThe boot process kept failing. Usually on ep0. After getting advice from the FreeBSD Questions mailing list, I found that I should be using the boot prompt to get around the problem. For example, if you enter kernel.old at the boot: prompt, your old kernel will be loaded. But be careful: that file is overwritten each time you build a kernel. I have copied my good kernel to kernel.save for safe keeping.
Another good trick is to enter -c at the boot prompt. This allows you to run userconfig. With that tool, you can remove any conflicts within the hardware. But that won’t fix the kernel issue. You should take note of the devices which are not found during the start up. Then edit your kernel file and comment out those devices. Not only will this remove the conflicts, it will make your kernel smaller, save memory, and make your system boot faster. Not to mention it’ll allow your kernel to actually boot.
I started modifying my kernel file to remove devices which were not being used.
Well, it worked!After commenting out many devices, I got my system to boot again. The next step is to get the system back to the condition it was in before I upgraded.
DHCP wasn’t workingsee also DHCP (again).
The first thing I tried to do was install DHCP. First I grabbed the source from the CD-ROM. But that gave me problems. I was missing bpfilter.h so I tried to install the source tree using /stand/sysinstall. But that couldn’t find the CD-ROM. I visited #FreeBSD on EFnet IRC Network and was then told to do the following:
mount the cd cd /cdrom/src sh install.sh all
Which then proceeded to install all sources.
Next I tried to compile the source. But I kept getting an error during the compile. In short, it was still complaining about not finding bpfilter.h. I read the notes on Setting up a DHCP client on FreeBSD and found that my kernel must contain:
pseudo-device bpfilter 4
which it didn’t. Once I added that, and recompile, no errors occurred. In fact, it’s still compiling as I publish this.
22 AugustI had some problems getting the new IDE controller running. But once those were solved, I started again on the DHCP issue. I could not get the above install to run. So I installed all of the ports.
Then, I installed DHCP, again. That worked!
What’s next?Well, I’ve been able to connect via DHCP. Now I’ll install the original hard as a slave and start transferring some files from one to the other in order to get the system back to where it used to be. I might just keep that other hard drive around as a backup in case the 5G drive fails. Then I won’t have to be without a FreeBSD gateway.
Adding in the original hard driveI connected the second IDE cable to the IDE controller and attached it to the IDE drive. It took a bit of digging to find an existing power cable on this PC, but I did eventually find one hidden under the rats nest of a system. I powered up the system and had a look around. Nothing. No second drive. Then I figured it must be the kernel. So I followed the instructions on Building and Installing a Custom Kernel and uncommented wd1, which is the second hard drive. The kernel is now compiling as I write this.
22 AugustI’m trying to add the old hard disk back into the system. It’s confusing. My IDE card will handle four devices. But I’m not sure if I’m supposed to add wdc1 or not. I tried that, and the kernel would not boot. Now I’ve removed wdc1 and changed wd1 to refer to wdc0 drive 2. Note that drive 1 is my cdrom.
28 AugustI’ve abandoned the 330M drive for now. It’s proving too difficult to get going. For now, I’ll concentrate on getting the system running as a gateway again.
Today I worked on getting the network card running, I then made sure that DHCP still worked. And it did. The next thing is to get the second network card running.