Soekris

From Wiki

Jump to: navigation, search

Net Booting with pxeboot

  • Set up a TFTP server on another machine. I'm using atftpd on Debian Linux.
  • Put pxeboot and bsd.rd in /tftpboot (or wherever you're serving files from).
  • Set the TFTP server and TFTP filename options for the DHCP server:
Subnet xx.xx.xx.xx {
        group {
                filename "pxeboot";
                next-server 172.16.0.2;

                        host soekris
                                {
                                hardware ethernet 00:00:00:CC:CC:CC;
                                fixed-address 172.16.0.200;
                        }
        }
}
  • Boot up the soekris, interrupt the boot sequence with ctrl+p and instruct it to boot off device F0 (netboot)
POST: 012345689bcefghips1234ajklnopqr,,,tvwxy                                   
                                                                              
comBIOS ver. 1.33  20070103  Copyright (C) 2000-2007 Soekris Engineering.       
                                                                                
net5501                                                                         
             
---snip---                                                                                
                                                                                
> boot F0                                                                       
                                                                                
Intel UNDI, PXE-2.0 (build 082)                                                 
Copyright (C) 1997,1998,1999  Intel Corporation                                 
VIA Rhine III Management Adapter v2.43 (2005/12/15)                             
                                                                                
CLIENT MAC ADDR: 00 00 00 CC CC CC                                              
CLIENT IP: 172.16.0.200  MASK: 255.255.255.0  DHCP IP: 172.16.0.1               
GATEWAY IP: 172.16.0.1                                                          
probing: pc0 com0 com1 pci pxe![2.1] mem[639K 511M a20=on]                      
disk: hd0+                                                                      
net: mac 00:00:24:cc:46:c8, ip 172.16.0.246, server 172.16.0.2                  
>> OpenBSD/i386 PXEBOOT 2.03
boot>
  • At OpenBSD bootloader, set com0 as the console before booting the installer
                                   
boot> stty com0 19200                                                           
boot> set tty com0                                                              
switching console to com0                                                       
                         >> OpenBSD/i386 PXEBOOT 2.03                           
boot> bsd.rd                                                                    
booting tftp:bsd.rd: 5651156+913072 [52+211008+196339]=0x6a6260                 
entry point at 0x200120                                                         
                                                                                
Copyright (c) 1982, 1986, 1989, 1991, 1993                                      
        The Regents of the University of California.  All rights reserved.      
Copyright (c) 1995-2009 OpenBSD. All rights reserved.  http://www.OpenBSD.org   
                                                                               
OpenBSD 4.6 (RAMDISK_CD) #53: Thu Jul  9 21:41:35 MDT 2009                      
    deraadt@i386.openbsd.org:/usr/src/sys/arch/i386/compile/RAMDISK_CD 
  • Install as usual
                                      
erase ^?, werase ^W, kill ^U, intr ^C, status ^T                                
                                                                                
Welcome to the OpenBSD/i386 4.6 installation program.                           
(I)nstall, (U)pgrade or (S)hell? i                                              
                                                                                
Cool! Let's get to it.                                                          
                                                                                
At any prompt except password prompts you can escape to a shell by              
typing '!'. Default answers are shown in []'s and are selected by               
pressing RETURN.  You can exit this program at any time by pressing             
Control-C, but this can leave your system in an inconsistent state.             
                                                                                
Terminal type? [vt220]                                                          
System hostname? (short form, e.g. 'foo') fw                                    
                                                                                
Available network interfaces are: vr0 vr1 vr2 vr3 vlan0.                        
Which one do you wish to configure? (or 'done') [vr0]                           
IPv4 address for vr0? (or 'dhcp' or 'none') [dhcp] 172.16.0.200                 
Netmask? [255.255.255.0]                                                        
IPv6 address for vr0? (or 'rtsol' or 'none') [none]                             
Available network interfaces are: vr0 vr1 vr2 vr3 vlan0.                        
Which one do you wish to configure? (or 'done') [done]                          
Default IPv4 route? (IPv4 address, 'dhcp' or 'none') 172.16.0.1                 
add net default: gateway 172.16.0.1                                             
DNS domain name? (e.g. 'bar.com') [my.domain] spruce                            
DNS nameservers? (IP address list or 'none') [none] 172.16.0.2                  
Do you want to do any manual network configuration? [no]                        
                                                                                
Password for root account? (will not echo)                                      
Password for root account? (again)                                              
Start sshd(8) by default? [yes]                                                 
Start ntpd(8) by default? [no] yes                                              
NTP server? (hostname or 'default') [default] uk.pool.ntp.org                   
Do you expect to run the X Window System? [no]                                  
Change the default console to com0? [no] yes                                    
Available speeds are: 9600 19200 38400 57600 115200.                            
Which one should com0 use? (or 'done') [19200]                                  
Setup a user? (enter a lower-case loginname, or 'no') [no] jstocks              
Full user name for stocksy? [jstocks] James Stocks                              
Password for stocksy account? (will not echo)                                   
Password for stocksy account? (again)                                           
Since you set up a user, disable sshd(8) logins to root? [yes]                  
                                                                                
Available disks are: wd0.                                                       
Which one is the root disk? (or 'done') [wd0]                                   
Disk: wd0       geometry: 995/128/63 [8027712 Sectors]                          
Offset: 0       Signature: 0xAA55                                               
            Starting         Ending         LBA Info:                           
 #: id      C   H   S -      C   H   S [       start:        size ]             
------------------------------------------------------------------------------- 
 0: 00      0   0   0 -      0   0   0 [           0:           0 ] unused      
 1: 00      0   0   0 -      0   0   0 [           0:           0 ] unused      
 2: 00      0   0   0 -      0   0   0 [           0:           0 ] unused      
*3: A6      0   1   1 -    994 127  63 [          63:     8023617 ] OpenBSD     
Use (W)hole disk, use the (O)penBSD area, or (E)dit the MBR? [OpenBSD] w        
Setting OpenBSD MBR partition to whole wd0...done.                              
The auto-allocated layout for wd0 is:                                           
#                size           offset  fstype [fsize bsize  cpg]               
  a:           894.1M               63  4.2BSD   2048 16384    1 # /            
  b:           256.0M          1831153    swap                                  
  c:          3919.8M                0  unused                                  
  d:          2367.8M          2355441  4.2BSD   2048 16384    1 # /usr         
  e:           399.9M          7204605  4.2BSD   2048 16384    1 # /home        
Use (A)uto layout, (E)dit auto layout, or create (C)ustom layout? [a] c         
                                                                                
You will now create an OpenBSD disklabel inside the OpenBSD MBR                 
partition. The disklabel defines how OpenBSD splits up the MBR partition        
into OpenBSD partitions in which filesystems and swap space are created.        
You must provide each filesystem's mountpoint in this program.                  
                                                                                
The offsets used in the disklabel are ABSOLUTE, i.e. relative to the            
start of the disk, NOT the start of the OpenBSD MBR partition.                  
                                                                                
Label editor (enter '?' for help at any prompt)                                 
> p                                                                             
OpenBSD area: 63-8023680; size: 8023617; free: 4862529                          
#                size           offset  fstype [fsize bsize  cpg]               
  c:          8027712                0  unused                                  
  d:          1056384          1056384  4.2BSD   2048 16384    1                
  e:          2104704          2112768  4.2BSD   2048 16384    1                
> d d                                                                           
> d e                                                                           
> p                                                                             
OpenBSD area: 63-8023680; size: 8023617; free: 8023617                          
#                size           offset  fstype [fsize bsize  cpg]               
  c:          8027712                0  unused                                  
> a a                                                                           
offset: [63]                                                                    
size: [8023617] 512m                                                            
Rounding to cylinder: 1056321                                                   
FS type: [4.2BSD]                                                               
mount point: [none] /                                                           
> a d                                                                           
offset: [1056384]                                                               
size: [6967296] 512m                                                            
Rounding to cylinder: 1056384                                                   
FS type: [4.2BSD]                                                               
mount point: [none] /var                                                        
> a e                                                                           
offset: [2112768]                                                               
size: [5910912] 1g                                                              
Rounding to cylinder: 2104704                                                   
FS type: [4.2BSD]                                                               
mount point: [none] /usr                                                        
> p m                                                                           
OpenBSD area: 63-8023680; size: 3917.8M; free: 1858.5M                          
#                size           offset  fstype [fsize bsize  cpg]               
  a:           515.8M               63  4.2BSD   2048 16384    1 # /            
  c:          3919.8M                0  unused                                  
  d:           515.8M          1056384  4.2BSD   2048 16384    1 # /var         
  e:          1027.7M          2112768  4.2BSD   2048 16384    1 # /usr         
> w                                                                             
> q                                                                             
No label changes.                                                               
newfs: reduced number of fragments per cylinder group from 66016 to 65752 to enl
arge last cylinder group                                                        
/dev/rwd0a: 515.8MB in 1056320 sectors of 512 bytes                             
5 cylinder groups of 128.42MB, 8219 blocks, 16512 inodes each                   
/dev/rwd0e: 1027.7MB in 2104704 sectors of 512 bytes                            
6 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each                  
/dev/rwd0d: 515.8MB in 1056384 sectors of 512 bytes                             
4 cylinder groups of 128.95MB, 8253 blocks, 16512 inodes each                   
/dev/wd0a on /mnt type ffs (rw, asynchronous, local)                            
/dev/wd0e on /mnt/usr type ffs (rw, asynchronous, local, nodev)                 
/dev/wd0d on /mnt/var type ffs (rw, asynchronous, local, nodev, nosuid)         
                                                                                
Let's install the sets!                                                         
Location of sets? (disk ftp http or 'done') [ftp] http                          
HTTP/FTP proxy URL? (e.g. 'http://proxy:8080', or 'none') [none] http://squid:3128                                                                       
Server? (hostname, list#, 'done' or '?') [anga.funkfeuer.at] 48                 
Server? (hostname, list#, 'done' or '?') [www.mirrorservice.org]                
Server directory? [pub/OpenBSD/4.6/i386]                                        
                                                                                
Select sets by entering a set name, a file name pattern or 'all'. De-select     
sets by prepending a '-' to the set name, file name pattern or 'all'. Selected  
sets are labelled '[X]'.                                                        
    [X] bsd           [X] etc46.tgz     [X] game46.tgz    [ ] xfont46.tgz       
    [X] bsd.rd        [X] misc46.tgz    [ ] xbase46.tgz   [ ] xserv46.tgz       
    [ ] bsd.mp        [X] comp46.tgz    [ ] xetc46.tgz                          
    [X] base46.tgz    [X] man46.tgz     [ ] xshare46.tgz                        
Set name(s)? (or 'abort' or 'done') [done] -game46.tgz                          
    [X] bsd           [X] etc46.tgz     [ ] game46.tgz    [ ] xfont46.tgz       
    [X] bsd.rd        [X] misc46.tgz    [ ] xbase46.tgz   [ ] xserv46.tgz       
    [ ] bsd.mp        [X] comp46.tgz    [ ] xetc46.tgz                          
    [X] base46.tgz    [X] man46.tgz     [ ] xshare46.tgz                        
Set name(s)? (or 'abort' or 'done') [done]                                      
bsd          100% |*************************************|  7068 KB    00:02     
bsd.rd       100% |*************************************|  5917 KB    00:01     
base46.tgz   100% |*************************************| 47316 KB    02:11     
etc46.tgz    100% |*************************************|   503 KB    00:01     
misc46.tgz   100% |*************************************|  2867 KB    00:14     
comp46.tgz   100% |*************************************| 88556 KB    02:11     
man46.tgz    100% |*************************************|  8047 KB    00:37     
Location of sets? (disk ftp http or 'done') [done]                              
                                                                                
What timezone are you in? ('?' for list) [Canada/Mountain] ?                    
Africa/      Chile/       GB-Eire      Israel       NZ-CHAT      UCT            
America/     Cuba         GMT          Jamaica      Navajo       US/            
Antarctica/  EET          GMT+0        Japan        PRC          UTC            
Arctic/      EST          GMT-0        Kwajalein    PST8PDT      Universal      
Asia/        EST5EDT      GMT0         Libya        Pacific/     W-SU           
Atlantic/    Egypt        Greenwich    MET          Poland       WET            
Australia/   Eire         HST          MST          Portugal     Zulu           
Brazil/      Etc/         Hongkong     MST7MDT      ROC          posix/         
CET          Europe/      Iceland      Mexico/      ROK          posixrules     
CST6CDT      Factory      Indian/      Mideast/     Singapore    right/         
Canada/      GB           Iran         NZ           Turkey                      
What timezone are you in? ('?' for list) [Canada/Mountain] GB                   
Saving configuration files...done.                                              
Generating initial host.random file...done.                                     
Making all device nodes...done.                                                 
                                                                                
CONGRATULATIONS! Your OpenBSD install has been successfully completed!          
To boot the new system, enter 'reboot' at the command prompt.                   
When you login to your new system the first time, please read your mail         
using the 'mail' command.                                                       
                                                                                
# reboot                                                                        
syncing disks... done                                                           
rebooting...                                                                    
  • This time, just let it boot on its own
                                                                            
POST: 012345689bcefghips1234ajklnopqr,,,tvwxy                                   
                                                                                
comBIOS ver. 1.33  20070103  Copyright (C) 2000-2007 Soekris Engineering.       
                                                                                
 1 Seconds to automatic boot.   Press Ctrl-P for entering Monitor.              
Using drive 0, partition 3.                                                     
Loading...                                                                      
probing: pc0 com0 com1 pci mem[639K 511M a20=on]                                
disk: hd0+                                                                      
>> OpenBSD/i386 BOOT 3.02                                                       
switching console to com0                                                       
                         >> OpenBSD/i386 BOOT 3.02                              
boot>                                                                           
booting hd0a:/bsd: 6563548+1052072 [52+345584+327881]=0x7e7ce8                  
entry point at 0x200120                                                         
                                                                                
[ using 673892 bytes of bsd ELF symbol table ]                                  
Copyright (c) 1982, 1986, 1989, 1991, 1993                                      
        The Regents of the University of California.  All rights reserved.      
Copyright (c) 1995-2009 OpenBSD. All rights reserved.  http://www.OpenBSD.org   
                                                                                
OpenBSD 4.6 (GENERIC) #58: Thu Jul  9 21:24:42 MDT 2009                         
    deraadt@i386.openbsd.org:/usr/src/sys/arch/i386/compile/GENERIC             
cpu0: Geode(TM) Integrated Processor by AMD PCS ("AuthenticAMD" 586-class) 500 M
Hz                                                                              
cpu0: FPU,DE,PSE,TSC,MSR,CX8,SEP,PGE,CMOV,CFLUSH,MMX                            
real mem  = 536440832 (511MB)                                                   
avail mem = 509902848 (486MB)                                                   
mainbus0 at root                                                                
bios0 at mainbus0: AT/286+ BIOS, date 20/70/03, BIOS32 rev. 0 @ 0xfac40         
pcibios0 at bios0: rev 2.0 @ 0xf0000/0x10000                                    
pcibios0: pcibios_get_intr_routing - function not supported                     
pcibios0: PCI IRQ Routing information unavailable.                              
pcibios0: PCI bus #0 is the last bus                                            
bios0: ROM list: 0xc8000/0xa800                                                 
cpu0 at mainbus0: (uniprocessor)                                                
amdmsr0 at mainbus0                                                             
pci0 at mainbus0 bus 0: configuration mode 1 (bios)                             
io address conflict 0x6100/0x100                                                
io address conflict 0x6200/0x200                                                
pchb0 at pci0 dev 1 function 0 "AMD Geode LX" rev 0x33                          
glxsb0 at pci0 dev 1 function 2 "AMD Geode LX Crypto" rev 0x00: RNG AES         
vr0 at pci0 dev 6 function 0 "VIA VT6105M RhineIII" rev 0x96: irq 11, address 00
:00:24:cc:46:c8                                                                 
ukphy0 at vr0 phy 1: Generic IEEE 802.3u media interface, rev. 3: OUI 0x004063, 
model 0x0034                                                                    
vr1 at pci0 dev 7 function 0 "VIA VT6105M RhineIII" rev 0x96: irq 5, address 00:
00:24:cc:46:c9                                                                  
ukphy1 at vr1 phy 1: Generic IEEE 802.3u media interface, rev. 3: OUI 0x004063, 
model 0x0034                                                                    
vr2 at pci0 dev 8 function 0 "VIA VT6105M RhineIII" rev 0x96: irq 9, address 00:
00:24:cc:46:ca                                                                  
ukphy2 at vr2 phy 1: Generic IEEE 802.3u media interface, rev. 3: OUI 0x004063, 
model 0x0034                                                                    
vr3 at pci0 dev 9 function 0 "VIA VT6105M RhineIII" rev 0x96: irq 12, address 00
:00:24:cc:46:cb                                                                 
ukphy3 at vr3 phy 1: Generic IEEE 802.3u media interface, rev. 3: OUI 0x004063, 
model 0x0034                                                                    
hifn0 at pci0 dev 17 function 0 "Hifn 7955/7954" rev 0x00: LZS 3DES ARC4 MD5 SHA
1 RNG AES PK, 32KB dram, irq 15                                                 
glxpcib0 at pci0 dev 20 function 0 "AMD CS5536 ISA" rev 0x03: rev 0, 32-bit 3579
545Hz timer, watchdog, gpio                                                     
gpio0 at glxpcib0: 32 pins                                                      
pciide0 at pci0 dev 20 function 2 "AMD CS5536 IDE" rev 0x01: DMA, channel 0 wire
d to compatibility, channel 1 wired to compatibility                            
wd0 at pciide0 channel 0 drive 0: <SanDisk SDCFH2-004G>                         
wd0: 4-sector PIO, LBA, 3919MB, 8027712 sectors                                 
wd0(pciide0:0:0): using PIO mode 4, DMA mode 2                                  
pciide0: channel 1 ignored (disabled)                                           
ohci0 at pci0 dev 21 function 0 "AMD CS5536 USB" rev 0x02: irq 7, version 1.0, l
egacy support                                                                   
ehci0 at pci0 dev 21 function 1 "AMD CS5536 USB" rev 0x02: irq 7                
usb0 at ehci0: USB revision 2.0                                                 
uhub0 at usb0 "AMD EHCI root hub" rev 2.00/1.00 addr 1                          
isa0 at glxpcib0                                                                
isadma0 at isa0                                                                 
com0 at isa0 port 0x3f8/8 irq 4: ns16550a, 16 byte fifo                         
com0: console                                                                   
com1 at isa0 port 0x2f8/8 irq 3: ns16550a, 16 byte fifo                         
pckbc0 at isa0 port 0x60/5                                                      
pckbd0 at pckbc0 (kbd slot)                                                     
pckbc0: using irq 1 for kbd slot                                                
wskbd0 at pckbd0: console keyboard                                              
pcppi0 at isa0 port 0x61                                                        
midi0 at pcppi0: <PC speaker>                                                   
spkr0 at pcppi0                                                                 
nsclpcsio0 at isa0 port 0x2e/2: NSC PC87366 rev 9: GPIO VLM TMS                 
gpio1 at nsclpcsio0: 29 pins                                                    
npx0 at isa0 port 0xf0/16: reported by CPUID; using exception 16                
usb1 at ohci0: USB revision 1.0                                                 
uhub1 at usb1 "AMD OHCI root hub" rev 1.00/1.00 addr 1                          
biomask 65c5 netmask ffe5 ttymask ffff                                          
mtrr: K6-family MTRR support (2 registers)                                      
softraid0 at root                                                               
root on wd0a swap on wd0b dump on wd0b                                          
Automatic boot in progress: starting file system checks.                        
/dev/rwd0a: file system is clean; not checking                                  
/dev/rwd0e: file system is clean; not checking                                  
/dev/rwd0d: file system is clean; not checking                                  
setting tty flags                                                               
pf enabled                                                                      
starting network                                                                
starting system logger                                                          
starting initial daemons: ntpd.                                                 
savecore: /dev/wd0b: Device not configured                                      
checking quotas: done.                                                          
building ps databases: kvm dev.                                                 
clearing /tmp                                                                   
starting pre-securelevel daemons:.                                              
setting kernel security level: kern.securelevel: 0 -> 1                         
creating runtime link editor directory cache.                                   
preserving editor files.                                                        
ssh-keygen: generating new DSA host key... done.                                
ssh-keygen: generating new RSA host key... done.                                
ssh-keygen: generating new RSA1 host key... done.                               
openssl: generating new isakmpd RSA key... done.                                
starting network daemons: sendmail inetd sshd.                                  
starting local daemons:.                                                        
standard daemons: cron.                                                         
Fri Jul 10 05:41:06 BST 2009                                                    
                                                                                
OpenBSD/i386 (fw.spruce) (tty00)                                                
                                                                                
login: root                                                                     
Password:                                                                       
OpenBSD 4.6 (GENERIC) #58: Thu Jul  9 21:24:42 MDT 2009                         
                                                                                
Welcome to OpenBSD: The proactively secure Unix-like operating system.          
                                                                                
Please use the sendbug(1) utility to report bugs in the system.                 
Before reporting a bug, please try to reproduce it with the latest              
version of the code.  With bug reports, please try to ensure that               
enough information to reproduce the problem is enclosed, and if a               
known fix for it exists, include that as well.                                  
                                                                                
You have mail.                                                                  
# df -h                                                                         
Filesystem     Size    Used   Avail Capacity  Mounted on                        
/dev/wd0a      506M   31.9M    448M     7%    /                                 
/dev/wd0e     1009M    418M    540M    44%    /usr                              
/dev/wd0d      508M    3.0M    479M     1%    /var                              
#