...
Install dependencies:
Code Block # host sudo apt-get install multistrap qemu-user-static
- Pick a working folder, in this case
~/duovero
Create a directory to hold the root filesystem:
Code Block # host cd ~/duovero mkdir rootfs
Create a configuration file debian.conf in ~/duovero and paste in the following. Additional packages can be included here or installed later using apt-get.
Code Block [General] arch=armel directory=~/duovero/rootfs retainsources=~/duovero/sources cleanup=true noauth=true unpack=true bootstrap=Wheezy Net Utils aptsources=Wheezy [Wheezy] packages=apt locales udev adduser sudo nano build-essential less source=http://mv.ezproxy.com.ezproxyberklee.flo.org/debian suite=wheezy [Net] packages=netbase ifupdown iproute net-tools iputils-ping ntp source=http://mv.ezproxy.com.ezproxyberklee.flo.org/debian [Utils] packages=wget source=http://mv.ezproxy.com.ezproxyberklee.flo.org/debian
Run multistrap to create the root filesystem.
Code Block # host multistrap -a armel -d ~/duovero/rootfs -f debian.conf
Copy the QEMU ARM emulator into the new root filesystem so it is on the path when we chroot in.
Code Block # host sudo cp /usr/bin/qemu-arm-static ~/duovero/rootfs/usb/bin/
(Optional) If you need
/dev/random
(for installing openssh-server for example), mount/dev
in the chroot.Code Block # host sudo mount -o bind /dev ~/gumstix/rootfs/dev
Chroot into the new filesystem.
Code Block # host sudo chroot ~/duovero/rootfs /bin/bash
Finish setting up packages
Code Block # chroot dpkg --configure -a
Answer "no" when prompted to use "dash" as "/bin/sh". If any packages fail to configure (possibly
ifupdown
), just rundpkg
again.Set the root user password.
Code Block # chroot passwd
(Optional) Add a new user and give it sudo permissions
Code Block # chroot adduser mit printf "mit ALL=(ALL) ALL" >> /etc/sudoers
Configure locales. Choose 136 for en_US.UTF-8.
Code Block # chroot dpkg-reconfigure locales
Add a DNS server
Code Block # chroot printf "nameserver 8.8.8.8" > /etc/resolv.conf