Развертывание виртуальной машины с buildroot

Далее описан рецепт создания виртуальной машины c buildroot под debian. Это очень удобный способ локализовать и «законсервировать» рабочее окружение: при необходимости внесения изменений в проект через пару лет после его создания, можно просто запустить виртуалку с настроенной средой, а не разворачивать её с нуля.

Загрузка по tftp, /root на nfs, консольный клиент.

Создаем виртуальную машину

Можно использовать xen, VirtualBox, или любую другую систему виртуализации. При настройке следует уделить внимание сети, usb и com-портам.
Удобный и безопасный способ подключения – включить в виртуальной машине два виртуальных сетевых адаптера: один рабоатет в режиме NAT, другой подключается к виртуальному сетевому мосту (brctl) в родительской системе.

Устанавливаем debian-squeeze

Пользователь – user, пароль – buildroot.
Устанавливаем необходимые пакеты:

sudo apt-get install subversion
sudo apt-get install build-essential bison flex gettext libncurses5-dev texinfo autoconf automake libtool
sudo apt-get install unzip bzip2

Скачиваем и утанавливаем buildroot

buildroot

wget http://buildroot.uclibc.org/downloads/buildroot-2012.02.tar.bz2
tar -xvjf buildroot-2012.02.tar.bz2
ln -s buildroot-2012.02/ buildroot

Настраиваем tftp

cd ~
mkdir tftproot
sudo aptitude install tftpd-hpa

# /etc/default/tftpd-hpa RUN_DAEMON="yes" TFTP_USERNAME="user" TFTP_DIRECTORY="/home/user/tftproot" TFTP_ADDRESS="0.0.0.0:69" TFTP_OPTIONS="--secure"

sudo service tftpd-hpa restart

Настраиваем nfs

sudo aptitude install nfs-kernel-server portmap
cd ~
mkdir nfsroot

/home/user/nfsroot 192.168.0.0/24(rw,sync,no_subtree_check,all_squash,anongid=1000,anonuid=1000,no_wdelay)

sudo service portmap restart
sudo service nfs-kernel-server restart

Настраиваем uucp

(эмулятор терминала)
USB-COM адаптер проброшен в виртуальную машину.

sudo usermod -a -G dialout user
exit
sudo aptitude install uucp

Конфигурируем систему em5 и порт com1-38400.

system em5 port com1-38400 time any
port com1-38400 type direct device /dev/ttyUSB0 speed 38400 hardflow false

Подключаемся к системе em5.

cu em5