You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 4 Next »

Many instructions here are mirrored from Toby Schneider's instructions at http://gobysoft.org/wiki/InstallOnGumstixOvero.  

Root filesystem preparation

Follow these steps to create a debian wheezy root filesystem.  In this section we will use # host to indicate commands run on the host machine, and # chroot for commands commands run inside the chroot filesystem.  

  1. Install dependencies:

    # host
    sudo apt-get install multistrap qemu-user-static
  2. Pick a working folder, in this case ~/duovero
     
  3. Create a directory to hold the root filesystem:

    # host
    cd ~/duovero
    mkdir rootfs
  4. 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.  

    [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://debian.lcs.mit.edu/debian
    suite=wheezy
    
    [Net]
    packages=netbase ifupdown iproute net-tools iputils-ping ntp
    source=http://debian.lcs.mit.edu/debian
    
    [Utils]
    packages=wget
    source=http://debian.lcs.mit.edu/debian
  5. Run multistrap to create the root filesystem.  

    # host
    multistrap -a armel -d ~/duovero/rootfs -f debian.conf
  6. Copy the QEMU ARM emulator into the new root filesystem so it is on the path when we chroot in.  

    # host
    sudo cp /usr/bin/qemu-arm-static ~/duovero/rootfs/usb/bin/
  7. (Optional) If you need /dev/random (for installing openssh-server for example), mount /dev in the chroot.  

    # host
    sudo mount -o bind /dev ~/gumstix/rootfs/dev
  8. Chroot into the new filesystem.  

    # host
    sudo chroot ~/duovero/rootfs /bin/bash
  9. Finish setting up packages 

    # chroot
    dpkg --configure -a

    Answer "no" when prompted to use "dash" as "/bin/sh".  If any packages fail to configure (possibly ifupdown), just run dpkg again.  

  10. Set the root user password.

    # chroot
    passwd
  11. (Optional) Add a new user and give it sudo permissions 

    # chroot
    adduser mit
    printf "mit     ALL=(ALL) ALL" >> /etc/sudoers
  12. Configure locales.  Choose 136 for en_US.UTF-8.  

    # chroot
    dpkg-reconfigure locales
  13. Add a DNS server 

    # chroot
    printf "nameserver 8.8.8.8" > /etc/resolv.conf
  • No labels