[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Newbie rebuilds binaries



  Hi,

First, I have asked every system administrator that I respect 'what OS 
should I use for my firewall?'. For the past 6 years the answer has 
always been OpenBSD! I started with 2.7 and recently installed 3.1. This 
is the first time I have gone through the kernal compile/patch process.

I prepared system for anoncvs to get the patch branch
by modifing .cshrc:
setenv CVS_RSH '/usr/bin/ssh'
setenv CVSROOT ' anoncvs@anoncvs.usa.openbsh.org:/cvs'

When I first went through the kernal/system rebuild the last messages were:

cd /usr/src/share/man && exec make madedb
/usr/libexec/makewhatis /usr/share/man
# Jun 1 01:30:02 cos81787 sendmail[18032]: gethostbyaddr(IPv6:::1) failed: 1

I repeated my walk through of the FAQ, Anonymous CVS, and Patch Branches 
instructions, the mailing list archives, repeated the steps but got the 
same result.

I figured I messed something up, so I re-ran the process. Again the same 
result.

I reran the process again using the outline provided by the OpenBSD 
Kernel Compilation and Optimization article 
(http://www.onlamp.com/pub/a/bsd/2000/10/31/OpenBSD.html). I got a 
smaller bsd file that seems to work well. However, when I get to that 
last 'make build' step I get the same error.

Jump forward 1 month. After seeing cert advisories regarding ssh I 
decided to tackle the process of bringing the system up to -stable.

Copied source from CD disk 3 to /usr/src
# mount -t cd9660 -r /dev/cd0a /mnt/cdrom

Attemped:
# cd /mnt/cdrom
# pax -rw CVS Makefile [a-z]* /usr/src
pax: Unable to access CVS <No such file or directory>
pax: Unable to access Makefile <No such file or directory>
pax: WARNING! These file names were not selected:
CVS
Makefile

Not sure it did what it was supposed to so I resorted to:
# cd /usr/src
# cp /mnt/cdrom/src.tar.gz /usr/src
#
# gzip -d src.tar.gz
# tar -xvf src.tar .

Rebuilt the kernel:
# cd /usr/src/sys/arch/i386/conf
# /usr/sbin/config GENERIC
Don't forget to run "make depend"
# cd /usr/src/sys/arch/i386/compile/GENERIC
# make clean && make depend && make

Rebooted with the newly compiled kernel:
# cd /usr/src/sys/arch/i386/compile/GENERIC
# cp /bsd /bsd.2002_06_30_1100
# cp bsd /bsd
# reboot

Rebuilt the system binaries:
# cd /usr/src
# rm -r /usr/obj/*
# make obj && make build
# reboot

Get the patch branch updates:

# cd /usr; cvs checkout -P -rOPENBSD_3_1 src

Went through RSA authentication
Several messages displayed like:
cvs server: Updating src/gnu/<etc>
. . .
cvs server: Updating src/usr.sbin/zic

Rebuilt the (patched) kernel:
# cd /usr/src/sys/arch/i386/conf
# rm *.o; rm *.c; rm *.h; rm -r lib
# /usr/sbin/config GENERIC
Don't forget to run "make depend"
Kernal options have changed -- you must run "make clean"
# cd /usr/src/sys/arch/i386/compile/GENERIC
# make clean && make depend && make

Rebooted with the newly compiled (patched) kernel:
# cd /usr/src/sys/arch/i386/compile/GENERIC
# cp /bsd /bsd.2002_06_30_1600
# cp bsd /bsd
# reboot

Rebuilt the (patched) system binaries:
# cd /usr/src
# rm -r /usr/obj/*
# make obj && make build
# reboot

All the anoncvs steps worked like a charm. I got through rebuilding and 
rebooting the new kernel and through rebuilding the binaries without any 
issues.

I am still clueless as to why the build did not fail this time. I think 
I followed the same steps, but software works differently when it is 
used differently.

Confused,
Matt