Ubuntu14Build
Load minimal OS
Installing minimal system from mini.iso
Note: this was done using a pc3000 and using a KVM spider to gain access to VGA monitor From grub menu choose: advanced-> expert command line install Choose Language use defaults Configure the keyboard use defaults Detect network hardware use defaults Configure the network use defaults Choose a mirror of the Ubuntu archive use defaults -- no proxy setup Download installer components don't add anything extra Setup users and passwords Enable shadow passwords <Yes> Allow login as root? <Yes> set root password "N**%*S**" Create a normal user account <No> Configure the Clock Set the clock using NTP? <Yes> NTP server to use: ntp1.emulab.net Denver timezone <Yes> Detect Disks Partition disks Manual Make sure partition #1 is 17.2 GB and the B(oot) flag is set Use as: Ext3 Format the partition Mount point: / Bootable flag: on Make sure partition #3 is 3.2 GB Use as: swap Write changes to disk <Yes> Install the base system Kernel to install: linux-generic Drivers to include in the initrd: generic Configure the package manager Use restricted software? <Yes> Use software from the "universe" <Yes> Use software from the "multiverse" <No> Use backported software <No> Services to use: None - deselect 'security updates' Select and install software Configuring discover "No automatic updates" Install the GRUB boot loader Install the GRUB boot loader to the master boot record? <Yes> Finish the installation use defaults Boot off the HD Login as root and run the command grub-install --force /dev/sda1 So the reloading state can find the boot record. We don't use the MBR booting Use fdisk (or the like) and check the filesystem type for partition 1 If it does list it as LINUX (it might be FREEBSD) change it to type 83. This needs to be set correct for imagezip to run.
Install necessary utilities for remote access to the system
Give Boss ssh access
Can now ssh as root from bas and do the rest from a remote window. Set console to redirect to serial portSome documentation Serial Console To get a login prompt on the serial port Create a file called /etc/init/ttyS0.conf containing the following:
# ttyS0 - getty # # This service maintains a getty on ttyS0 from the point the system is # started until it is shut down again. start on stopped rc or RUNLEVEL=[2345] stop on runlevel [!2345] respawn exec /sbin/getty -L 115200 ttyS0 vt102 Start getty running on the serial console
Redirect console messages to the serial port edit the file /etc/default/grub
diff grub.original grub 7c7 < GRUB_HIDDEN_TIMEOUT=0 --- > #GRUB_HIDDEN_TIMEOUT=0 9c9 < GRUB_TIMEOUT=10 --- > GRUB_TIMEOUT=4 11,12c11,12 < GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" < GRUB_CMDLINE_LINUX="" --- > GRUB_CMDLINE_LINUX_DEFAULT="" > GRUB_CMDLINE_LINUX="console=ttyS0,115200n8" 20a21,22 > GRUB_TERMINAL=serial > GRUB_SERIAL_COMMAND="serial --speed=115200 --unit=0 --word=8 --parity=no --stop=1" Regenerate Grub.conf
Install necessary packages to build emulab-client
Make and install pubsub
Install emulab client-side codeGet emulab sources
Configure against a standard flux defs file
Build and install the client
Make and install the ping-of-death
Install these packages so the system will boot (and not hang) in an emulab-client mode.
Reboot node from the Hard Drive.Watch the boot message and see if it looks like the emulab process started ok. Check for /usr/local/libexec/pubsubd, /usr/local/etc/emulab/evproxy, and ???Removing unwanted packages
Don't let Ubuntu rename the network interfaces:
Miscellaneous system files updates
Make an emulab image for the first time
In a browser go to https://www.emulab.net/newimageid_ez.php3 Make sure the image is parition 1 and the MBR version is 3. Before submitting make sure the node is not in admin mode. If the BIOS is set to boot from the HD catch it at post-time change it to PXE boot. Installing those packages that everyone expectsapt-get install build-essential cvs debhelper e2fslibs gconf2-common gconf-service gconf-service-backend gdb emacs24 gnupg-curl intltool-debian iproute iputils-arping jove kexec-tools lftp lvm2 lzma makedumpfile memtest86+ ntp open-iscsi open-iscsi-utils openvpn os-prober python-apt python-dbus python-dbus-dev python-gdbm python-gnupginterface python-support smartmontools ssl-cert subversion tcl8.5 tcsh ksh valgrind vlan xterm zlib1g xauth zsh plymouth-disabler
Snapshot the image back into the image-descriptor. For example navigate to The Image Descriptor and use the 'Snapshot Node Disk into Image'.
Making a global Image for the testbed
Table of image sizes and package lists
|
![]() |
Document generated by Confluence on Sep 30, 2014 11:37 |