Olive

HowTo install a fresh Olive

install notes:

Device overview:

  • ad0 Compact flash drive. Flash drive, which is a nonrotating drive. When a new router is shipped from the factory, the JUNOS software is preinstalled on the flash drive.
  • ad1 Hard drive. Hard disk, which is a rotating drive. When a new router is shipped from the factory, the JUNOS software is preinstalled on the hard disk. This drive also is used to store system log files and diagnostic dump files.
  • ad2 is free and can therefore be used for CDROM.
  • ad3 PCMCIA slot. Removable media, either a PC Card or a LS-120MB floppy disk. The removable media that ships with each router contains a copy of the JUNOS software.

  
Download fbsd-2.3.iso.bin:
http://www.tux.org/pub/people/kent-robotti/looplinux/rip/
See if this can do the steps we need for prep'ing the partitions
 
PXE Guide for FreeBSD:
http://www.tnpi.biz/computing/freebsd/pxe-netboot.shtml
 

  • Setup the machine with HD as master, CF as slave

  • Do a minimal FreeBSD install on the HD. You need to setup networking options.

  • From the new freebsd installation do the following:
  
  % dd if=/dev/zero of=/dev/ad1 count=2
  % fdisk -BI ad1
  % disklabel -w -B ad1s1 auto
  % disklabel -e ad1s1
    Make the partition table like this (keep c as it is):
    a:   135680        0    4.2BSD     1024  8192    16   # (Cyl.    0 - 529)
    c:   251888        0    unused        0     0         # (Cyl.    0 - 983*)
    e:    52192   135680    4.2BSD     1024  8192    16   # (Cyl.  530 - 733*)
  % newfs -f 1024 -b 8192 /dev/ad1s1a
  % newfs -f 1024 -b 8192 /dev/ad1s1e
 

  • Download the root image for the CF card and install it into the card:
  
  % mount /dev/ad1s1a /mnt
  % cd /mnt ; tar xpf /path/to/cf-root.tar
  % umount /mnt
 

  • Download the basic config file for the CF card:
  
  % mount /dev/ad1s1e /mnt
  % cp /path/to/cf-config /mnt/juniper.conf
  % umount /mnt
 

  • You should now have a working CF to boot from. We should now wipe the HD:
  
  % dd if=/dev/zero of=/dev/ad0
 

  • Turn off the machine

  • Set CF as Master, HD as slave

  • You can now boot up the machine again. At this stage, most output will come throught the serial port on the machine and not the screen.

  • It will complain that it cant find any partitions on the hd. This is ok, it will still work. What you have to do is make a partition table on the hd and do some dumps of what you have on your cf over to it:
  
  % fdisk -BI ad1
  % disklabel -w -B ad1s1 auto
  % disklabel -e ad1s1
    Make the partition table like this (keep c as it is, f is the remainer of your HD):
    a:   135680        0    4.2BSD     1024  8192    16   # (Cyl.    0 - 134*)
    b:  3145472   135680      swap                        # (Cyl.  134*- 3255*)
    c: 39102273        0    unused        0     0         # (Cyl.    0 - 38791*)
    e:    52192  3281152    4.2BSD     1024  8192    16   # (Cyl. 3255*- 3306*)
    f: 35768929  3333344    4.2BSD     1024  8192    16   # (Cyl. 3306*- 38791*)
  % newfs -f 1024 -b 8192 /dev/ad1s1a
  % newfs -f 1024 -b 8192 /dev/ad1s1e
  % newfs -f 1024 -b 8192 /dev/ad1s1f
 
  % mount /dev/ad1s1f /mnt
  % (dump 0uf - /var | (cd /mnt; restore -rf -))
 

  • You may now reboot the box.
  
  % reboot
 

  • When it comes up, it wont complain about the missing filesystems. What you have to do now is sync over the root fs to the hd:
  
  % snapshot
 

  • Your Olive is now up and running!