Difference between revisions of "Vnx-rootfsubuntu-draft"
(→Configuration) |
(→Basic installation) |
||
Line 13: | Line 13: | ||
<li>Create the virtual machine with:</li> | <li>Create the virtual machine with:</li> | ||
vnx --create-rootfs vnx_rootfs_kvm_ubuntu.qcow2 --install-media /almacen/iso/ubuntu-12.04-server-i386.iso --mem 512M | vnx --create-rootfs vnx_rootfs_kvm_ubuntu.qcow2 --install-media /almacen/iso/ubuntu-12.04-server-i386.iso --mem 512M | ||
− | <li>Follow Ubuntu installation menus to install a basic system with ssh server. | + | <li>Follow Ubuntu installation menus to install a basic system with ssh server.</li> |
− | < | + | <li>Configure a serial console on ttyS0:</li> |
− | + | cd /etc/init | |
− | </ | + | cp tty1.conf ttyS0.conf |
+ | sed -i -e 's/tty1/ttyS0/' ttyS0.conf | ||
+ | <li>Activate startup traces on serial console by editting /etc/default/grub file and setting the GRUB_CMDLINE_LINUX_DEFAULT variable to "console=ttyS0". Also change the boot menu timeout to 0 (sometimes virtual machines get stopped on the boot menu when starting on high loaded systems):</li> | ||
+ | GRUB_CMDLINE_LINUX_DEFAULT="console=ttyS0" | ||
+ | GRUB_TIMEOUT=0 | ||
+ | <li>Make grub process the previous changes:</li> | ||
+ | update-grub | ||
</ul> | </ul> | ||
Revision as of 23:57, 21 May 2012
How to create a Ubuntu root-file-system for VNX
Contents
Basic installation
Follow this procedure to create a Ubuntu based root-file-system for VNX. The procedure has been tested with Ubuntu 9.10, 10.04, 10.10, 11.04 and 12.04.
- Create the filesystem disk image:
qemu-img create -f qcow2 vnx_rootfs_kvm_ubuntu.qcow2 8GB
wget ftp://ftp.rediris.es/mirror/ubuntu-releases/12.04/ubuntu-12.04-server-i386.iso cp ubuntu-12.04-server-i386.iso /almacen/iso
Note: use 'server' or 'desktop' CD versions depending on the system you want to create.
vnx --create-rootfs vnx_rootfs_kvm_ubuntu.qcow2 --install-media /almacen/iso/ubuntu-12.04-server-i386.iso --mem 512M
cd /etc/init cp tty1.conf ttyS0.conf sed -i -e 's/tty1/ttyS0/' ttyS0.conf
GRUB_CMDLINE_LINUX_DEFAULT="console=ttyS0" GRUB_TIMEOUT=0
update-grub
Configuration
- Start the virtual machine again and finish the installation:
- Access the console and sudo root:
sudo su
apt-get update apt-get dist-upgrade
apt-get install libxml-dom-perl acpid
- create /media/cdrom* directories:
mkdir /media/cdrom0 mkdir /media/cdrom1 ln -s /media/cdrom0 /media/cdrom ln -s /cdrom /media/cdrom
/dev/scd0 /media/cdrom0 udf,iso9660 user,noauto,exec,utf8 0 0 /dev/scd1 /media/cdrom1 udf,iso9660 user,noauto,exec,utf8 0 0
- From the host execute:
/usr/share/vnx/bin/vnx_update_aced Ubuntu /usr/share/vnx/aced/vnx-aced-lf-0.1b.tgz
mount /media/cdrom /media/cdrom/install_vnxdaemon
- Minimal:
sudo apt-get install xorg gnome-core gksu gdm gnome-system-tools gnome-nettool firefox-gnome-support
sudo apt-get install ubuntu-desktop
- Apache server:
sudo apt-get install apache2 update-rc.d -f apache2 remove # to avoid automatic start
sudo apt-get install traceroute
VER=v0.24 OS=Ubuntu 12.04 DESC=basic Ubuntu 12.04 root-file-system without GUI
vnx_halt
If everything went well, your root filesystem will be ready to be used with VNX. You can make a simple test using the simple_ubuntu.xml scenario distributed with VNX.
Installing additional software
To install additional software or modify your root file system, you just have to start it as described above and make the operations required on the filesystem.
- Start a VM with the root filesystem using virsh:
virsh create rootfs_ubuntu.xml virt-viewer Ubuntu
vnx_modify_rootfs /usr/share/vnx/filesystems/vnx_rootfs_kvm_ubuntu-base.qcow2
apt-get install ...
vnx_halt
Examples
- dhcp server and relay:
- Install dhcp3 packages:
apt-get install dhcp3-server dhcp3-relay
update-rc.d -f isc-dhcp-server remove update-rc.d -f isc-dhcp-relay remove
Updating ACE daemon
If you have a root filesystem with the autoconfiguration and command execution daemon (ACE) already installed, you can use the autoupdate functionallity to update the daemon to a newer version. Just follow this procedure:
- Edit the xml described above and comment the line defining the Ubuntu iso file for the cdrom:
- Start the virtual machine (directly using virsh or the vnx_modify_rootfs utility):
/usr/share/vnx/bin/vnx_modify_rootfs rootfs_ubuntu.xml
/usr/share/vnx/bin/vnx_update_aced Ubuntu /usr/share/vnx/aced/vnx-aced-lf-0.1b.tgz
Known problems
- Each time a cdrom is mounted (for example, whenever a command is executed on the virtual machine) the following error appears in the console:
Jul 27 22:33:31 vnx kernel: [ 4384.875886] ata1.01: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x6 Jul 27 22:33:31 vnx kernel: [ 4385.291374] ata1.01: BMDMA stat 0x5 Jul 27 22:33:31 vnx kernel: [ 4385.493411] sr 0:0:1:0: [sr0] CDB: Read(10): 28 00 00 00 00 18 00 00 01 00 Jul 27 22:33:31 vnx kernel: [ 4385.493460] ata1.01: cmd a0/01:00:00:00:08/00:00:00:00:00/b0 tag 0 dma 2048 in Jul 27 22:33:31 vnx kernel: [ 4385.493461] res 01/60:00:00:00:08/00:00:00:00:00/b0 Emask 0x3 (HSM violation) Jul 27 22:33:31 vnx kernel: [ 4386.263553] ata1.01: status: { ERR }
Despite of the error trace, the commands are executed correctly. This error does not appear on Ubuntu 9.10 filesystems.