Diskless Operation Question

Benjamin Polidore polidore at wpi.edu
Tue Jul 1 17:38:27 PDT 2003


I have a dedicated FreeBSD 5.1 server, and I am experimenting with a WinXP / 
diskless-FreeBSD dual boot workstation.

I have followed the instructions in the handbook and I get to a point that 
makes me think I have done somthing wrong with my diskless kernel.  

The workstation boots with an etherboot floppy, finds the dhcp server and 
downloads the kernel from NFS.  It seems to contemplate loading the kernel for 
about 5 seconds then reboots.  

I have seen postings in the archives about recompiling the kernel with the 
proper CPUTYPE in /etc/make.conf.

I have tried this and it makes no difference.

The only thing I have been considering is that I have a bunch of modules that 
were compiled & installed w/o CPUTYPE=p3, as they were imported with 
clone_root.

So the only solution I can think of is to recompile/install these modules with 
the proper CPUTYPE, but I'm not sure how to have make installkernel put the 
modules / kernel in /misc/diskless/boot instead of /boot?

I won't need to do this with userland, will I?  This would make diskless 
operation impossible for my situation.

Below is a more detailed breakdown of what I am trying to do and some pieces 
of my config files.

TIA-
Ben Polidore
polidore at wpi.edu

--Hardware
My server:
Via C3 800 
"CPU: VIA C3 Samuel 2 (800.03-MHz 686-class CPU)
  Origin = "CentaurHauls"  Id = 0x678  Stepping = 8
  Features=0x803035<FPU,DE,TSC,MSR,MTRR,PGE,MMX>" (from dmesg)

My workstation: Pentium III 933

--Configs
*dhcpd.conf:
option swap-path code 128 = string;
option swap-size code 129 = integer 32;
#snip
host inferior {
  hardware ethernet 00:03:6d:00:18:40;
  fixed-address 10.0.0.100;
  next-server 10.0.0.1;
  filename "/misc/diskless/kernel";
  option root-path "10.0.0.1:/misc/diskless";
  option swap-path "10.0.0.1:/misc/diskless/netswap";
  option swap-size 128000;
}

*kernel config for DISKLESS:
machine         i386
#cpu            I486_CPU
#cpu            I586_CPU
cpu             I686_CPU
ident           DISKLESS
maxusers        0

options         INET                    #InterNETworking
options         INET6                   #IPv6 communications protocols
options         FFS                     #Berkeley Fast Filesystem
options         SOFTUPDATES             #Enable FFS soft updates support
options         UFS_ACL                 #Support for access control lists
options         UFS_DIRHASH             #Improve performance on big directories
options         MD_ROOT                 #MD is a potential root device
options         NFSCLIENT               #Network Filesystem Client
options         NFSSERVER               #Network Filesystem Server
options         NFS_ROOT                #NFS usable as root device, requires 
options         BOOTP
options         BOOTP_NFSROOT
options         BOOTP_COMPAT
#that's all that seems pertinent

-I have diskless root at /misc/diskless:
[cash at boxH50:~]# ls /misc/diskless/
bin             conf            kernel          sbin            tmp
boot            dev             mnt             stand           usr
cdrom           etc             proc            swap.10.0.0.100 var
compat          home            root            sys

-I compiled DISKLESS kernel like so:
make buildkernel KERNCONF=DISKLESS CPUTYPE=p3
#i also had CPUTYPE=p3 in make.conf



More information about the freebsd-questions mailing list