wiki:Internal/InventoryImage

Version 22 (modified by msherman, 7 years ago) ( diff )

Notes on Building the Inventory Image

This consists of the following steps:

  • Creation of bootable directory via debootstrap
    • Installation of needed packages
    • Installation of Kernel
    • Installation of Inventory Scripts
    • Fixing device naming and driver load order
  • NFS server configuration to export it
    • exports are stored in /etc/exports on respository1
    • after editing file, run exportfs -ra
  • PXE configuration so a node boots it
  • Debootstrap steps
    • create /export/inv_root/inventory_16.04
      • run sudo debootstrap --arch amd64 xenial /export/inv_root/inventory_16.04/
  • Chroot into new directory
    • LANG=C.UTF-8 chroot /export/inv_root/inventory_16.04/ /bin/bash
  • Install editor
    • vim
  • Update /etc/apt/sources.list
    ###### Ubuntu Main Repos
    deb http://us.archive.ubuntu.com/ubuntu/ xenial main restricted universe
    ###### Ubuntu Update Repos
    deb http://us.archive.ubuntu.com/ubuntu/ xenial-security main restricted universe
    deb http://us.archive.ubuntu.com/ubuntu/ xenial-updates main restricted universe
    
  • apt update
  • Add lines to /etc/fstab
    # <file system> <mount point>   <type>  <options>       <dump>  <pass>
    proc            /proc           proc    defaults        0       0
    /dev/nfs        /               nfs     defaults,ro     0       1
    none            /tmp            tmpfs   defaults        0       0
    none            /run            tmpfs   defaults        0       0
    none            /var/tmp        tmpfs   defaults        0       0
    
  • Add lines to /etc/network/interfaces
    auto lo
    iface lo inet loopback
    
    auto eth0 eth1 eth2
    iface eth0 inet dhcp
    iface eth1 inet dhcp
    iface eth2 inet dhcp
    
  • Install ssh
    • apt install openssh-client openssh-server
  • allow root passwd login in /etc/ssh/sshd_config
    • PermitRootLogin yes
    • PermitEmptyPasswords yes
  • set root password
    • passwd …
    • ssh on 16.04 doesn't like empty root password, may be a PAM issue
  • Remove conflicting files
    • rm /etc/hostname
  • Install inventory specific packages
    • #nfs-common (unneeded, have it in kernel?)
    • apt install software-properties-common
      • For add-apt-ppa
    • add ettus PPA and UHD packages
      • add-apt-repository ppa:ettusresearch/uhd
      • apt update
      • apt install libuhd003 libuhd-dev uhd-host
    • Install Ruby 2.3
      • apt install build-essential
      • apt install ruby ruby-dev
      • gem install rest-client
        • warning, depreciated, replace with rest-client

Note: See TracWiki for help on using the wiki.