Ubuntu 14.04 LTS ?

Discussion in 'Linux Ubuntu' started by DracoLlasa, Apr 19, 2014.

  1. DracoLlasa

    DracoLlasa UDOOer

    Joined:
    Oct 15, 2013
    Messages:
    419
    Likes Received:
    3
    Since Ubuntu has put 14.04 on the LTS track, does that mean we may see the Linaro/Ubuntu image update for the UDOO in the near future? or is this something that will take a while due to the diff architecture with Linaro and ARM
     
  2. delba

    delba Administrator Staff Member

    Joined:
    May 8, 2013
    Messages:
    1,064
    Likes Received:
    9
    The 14.04 will take a while 'cause we're focusing on the armHF version of Ubuntu with no intention to move forward at the moment. We'll get there but it's not a near goal for us at the moment.
     
  3. DracoLlasa

    DracoLlasa UDOOer

    Joined:
    Oct 15, 2013
    Messages:
    419
    Likes Received:
    3
    cool thanks for the update.. i agree the armHF will bring much value
     
  4. albeb89

    albeb89 New Member

    Joined:
    May 7, 2014
    Messages:
    5
    Likes Received:
    0
    Hi guys, this morning i build an image of Ubuntu 14.04 LTS armhf minimal for the Udoo board...i'll upload it soon ;)
     
  5. delba

    delba Administrator Staff Member

    Joined:
    May 8, 2013
    Messages:
    1,064
    Likes Received:
    9
    Great! Can't wait to try it!!!!
     
  6. dantavious

    dantavious New Member

    Joined:
    Nov 29, 2013
    Messages:
    32
    Likes Received:
    0
    Hi, any action on this? I would love to try it out.
     
  7. Celt

    Celt New Member

    Joined:
    Jun 30, 2014
    Messages:
    1
    Likes Received:
    0
    Any news?
     
  8. rocketdude

    rocketdude New Member

    Joined:
    Jan 10, 2014
    Messages:
    11
    Likes Received:
    0
    I have created a 14.04 trusty LXDE desktop version for Udoo-quad. I just got wifi working (WPA/WPA2 thru wicd) today.
    Fits easily (41%) on a 4 GB SD card. I installed a bunch of extras like LibreOffice, python3.
    GPU acceleration works, but VLC playing videos still does not work. As an ARMHF based development machine (using eclipse), it actually is quite speedy.

    I could trim it down and post the image for all to use - but where to post it? Any suggestions?
     
  9. nickw

    nickw New Member

    Joined:
    Jan 8, 2014
    Messages:
    8
    Likes Received:
    0
    have you been able to post this anywhere ?
     
  10. rocketdude

    rocketdude New Member

    Joined:
    Jan 10, 2014
    Messages:
    11
    Likes Received:
    0
    don't know where to post. Any suggestions?

    I've also create a non-GUI stripped down version just under 1 GB. Works great as a file/web server
     
  11. surrogard

    surrogard New Member

    Joined:
    Aug 11, 2014
    Messages:
    1
    Likes Received:
    0
    Hi rocketdude,

    you could use Dropbox or similar or create a Torrent and post the Torrent link here...
     
  12. nickw

    nickw New Member

    Joined:
    Jan 8, 2014
    Messages:
    8
    Likes Received:
    0
    how big is the image ?
     
  13. pdblood

    pdblood UDOOer

    Joined:
    Apr 7, 2014
    Messages:
    14
    Likes Received:
    0
    How about putting the image on SourceForge? Github does not support big files, but it would also be great if you put the source files and process you used for building the image on Github so people can build their own version and modify as needed.
     
  14. rocketdude

    rocketdude New Member

    Joined:
    Jan 10, 2014
    Messages:
    11
    Likes Received:
    0
    rather than upload a 2 GB file, I've created the instructions and put in the attached file. It's instructive to go through the process and see where all the pieces come from.

    I'm hoping to repeat this using a more recent kernel; it should "just work", but there are always a 100 gotchas. Let me know if there are errors in the instructions. It was not a straightforward process. I need a headless server that I could VNC into, and the end result was a 1.5 GB installation with only the basic tools.

    Ubuntu 14.04 Installation for Udoo (rev 01)
    August 30, 2014
    Ubuntu 14.04 Installation for Udoo (rev 01)
    August 30, 2014

    The goal of this guide is to create a minimal Ubuntu 14.04 installation, sufficient to log in and use apt-get to install software, essentially starting from scratch and the core tools. As a minimum, a 2 GB micro-SD card is required. I used an Intel Linux laptop to bootstrap the process, but any method of extracting files onto a micro-SD card should suffice; one could probably even do this with Windows and the 7Z compression utility. My only regret is having to use the Udoo 3.0.x kernel, which is getting a bit old. While conceptually it's possible to substitute a newer kernel, there are always gotchas. What works with this implementation:
    Wifi
    ethernet
    1080p monitor

    What doesn't work
    SATA drive on Udoo Quad

    Steps – much of this is copied from feilipu's guide at http://feilipu.me/2013/11/09/udoo-ubuntu-12-04-guide/ and from the elinux guide at http://www.elinux.org/UDOO_creating_a_b ... d_binaries.


    Getting the pieces of software
    1. From the UDOO Downloads page, get the latest versions of U-boot, Kernel, and Kernel Modules, relevant for your UDOO., either the Quad versions or the Dual versions.
    2. From the Ubuntu Core page, download the ubuntu-core-xx.xx.xx-core-armhf.tar.gz latest version that is there when you read this. On August 30, 2014, this is 14.04.1-core.
    3. Get the latest wifi module firmware-ralink from the Debian Sid repository. It is the same file for all architectures and is currently version 0.43.

    Building the core system on a micro-SD card. A bootable SD card has 4 different elements:
    U-Boot (the .imx file)
    Kernel (the an uImage file)
    kernel's modules (the .tar.gz file from the Udoo download pages)
    File System (the .tar.gz file from Ubuntu)

    Steps to build – this can be done from any computer with the ability to partition the micro-SD card and extract the archive files. I'm assuming a Linux system; a Windows system will use different software but to the same effect. Either way, the common refrain is to be 100% sure you know what the device name of your micro-SD card is. Data loss will occur otherwise. Check three times to be sure!
    4. sudo gparted – e.g., /dev/sdc (the example I'm using throughout)
    5. 1st partition – 10 MB at the beginning of device
    6. 2nd partition – rest of device as ext4; quick format is sufficient
    7. label = udoo
    8. apply and exit gparted

    Next you will extract all the image files onto the newly created partition
    9. Mount the micro-SD card; e.g., sudo mount /dev/sdc1 /media/udoo
    10. extract the core filesystem downloaded from 2 above; sudo tar -xzvpf ubuntu-core-xx.xx.xx-core-armhf.tar.gz -C /media/udoo/
    11. Copy the kernel binary download from step 1 inside the Micro SD card /boot folder; sudo cp uImage /media/udoo/boot/
    12. Remove the existing modules from the file system; sudo rm -rv /media/udoo/lib/modules/*
    13. Copy the new kernel modules download from step 1; sudo cp -av lib /media/udoo/
    14. Set a static IP address so that when you boot for the first time, you can access the internet. My configuration is on subnet 10.0.1.0 with the gateway at .1; so, sudo vi /etc/network/interfaces

    # interfaces(5) file used by ifup(8) and ifdown(8)
    # Include files from /etc/network/interfaces.d:
    source-directory /etc/network/interfaces.d
    auto lo
    iface lo inet loopback

    auto eth0
    #iface eth0 inet dhcp
    iface eth0 inet static
    address 10.0.1.5
    gateway 10.0.1.1
    netmask 255.255.255.0
    broadcast 10.0.1.255

    15. Install the U-Boot - Unmount the whole microSD with sudo umount /dev/sdc. For the quad, sudo dd if=u-boot-q.imx of=/dev/sdc bs=512 seek=2. For the Udoo-dual sudo dd if=u-boot-d.imx of=/dev/sdc bs=512 seek=2.
    16. Flush the device buffer with: sudo sync

    At this point, the microSD card is now ready to boot in the Udoo for the first time with a bare minimal system. You will need an ethernet connection to the internet to install the additional packages necessary to make the system “useful”. You either have to connect to an HDMI monitor with keyboard and mouse or through the micro-USB to using minicom from another Linux box. Once the system boots, do some useful things
    17. Add a default user and add them to the sudo group

    adduser SOMEUSER
    adduser SOMEUSER adm
    adduser SOMEUSER sudo

    18. Configure the Ubuntu universe packages for apt. The /etc/apt/sources.list file has most of the sources commented out. These comments should be removed, before installing aadditional tools.
    19. sudo apt-get update
    20. install the wifi firmware from step 3; sudo dpkg -i firmware-ralink_0.43_all.deb.

    At this point, the total install size is about 500 MB and has no GUI or packages. One could choose a GUI and use the Udoo as a desktop or a headless server, which to me is more useful. If you're interested in a full desktop, then something like sudo apt-get install lxde-desktop will lead to downloading 200 MB of packages and installing over the course of several hours. Then, one needs to configure wifi (I suggest sudo apt-get install wicd – that just works).

    To continue building a headless server (the essential gnome components – see http://askubuntu.com/questions/475023/h ... thout-xfce)
    21. sudo apt-get install sshd gnome-terminal gnome-panel gnome-settings-daemon metacity nautilus
    22. sudo apt-get install vnc4server
    23. As the normal user you want to VNC into: run vncserver, then vncserver -kill :1. This creates the necessary configuration files.
    24. Edit the file ~/.vnc/xstartup

    #!/bin/sh

    export XKL_XMODMAP_DISABLE=1
    unset SESSION_MANAGER
    unset DBUS_SESSION_BUS_ADDRESS

    [ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
    [ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
    xsetroot -solid grey
    vncconfig -iconic &

    gnome-panel &
    gnome-settings-daemon &
    metacity &
    nautilus &
    gnome-terminal &

    At this point, you should have a working system with a single user and be able to ssh or vnc into the Udoo.
     
  15. cesarvog

    cesarvog New Member

    Joined:
    Aug 4, 2014
    Messages:
    7
    Likes Received:
    0
    Thank you RocketDude for this excellent walkthrough.
     
  16. uwot

    uwot New Member

    Joined:
    Sep 4, 2014
    Messages:
    5
    Likes Received:
    0
    Rocketdude, I've just tried this twice on a Udoo Quad, but can't get it to boot. Mostly it seems to work, but the device hangs at a specific point. I have the USB debugging lead attached and can watch the boot process via minicom. Here's the last line of log:

    * Stopping save kernel messages[ OK ]

    Google doesn't really show up anything useful re: a hang at this point.

    There don't seem to be any failures in the logs, except these few lines:

    [ 2.017453] g_ether gadget: controller 'fsl-usb2-udc' not recognized; trying
    CDC Ethernet (ECM)

    [ 2.956292] EXT3-fs (mmcblk0p1): error: couldn't mount because of unsupported
    optional features (240)

    [ 3.088414] EXT2-fs (mmcblk0p1): error: couldn't mount because of unsupported
    optional features (244)

    Mount failed for selinuxfs on /sys/fs/selinux: No such file or directory

    [ 19.606216] ERROR: v4l2 capture: slave not found!


    ... I don't think any of those are showstoppers though, mostly optional components that aren't installed.

    There are also some suspect lines immediately after the auto-boot countdown:

    mmc0 is current device
    ** File not found boot.scr **
    4773948 bytes read in 281 ms (16.2 MiB/s)
    Booting from mmc ...
    ** File not found imx6q-udoo.dtb **
    ## Booting kernel from Legacy Image at 12000000 ...
    Image Name: Linux-3.0.35
    Image Type: ARM Linux Kernel Image (uncompressed)
    Data Size: 4773884 Bytes = 4.6 MiB
    Load Address: 10008000
    Entry Point: 10008000
    Verifying Checksum ... OK
    Loading Kernel Image ... OK

    Though, again, these seem to be tests for things that we don't necessarily need...

    Any ideas?
     
  17. rocketdude

    rocketdude New Member

    Joined:
    Jan 10, 2014
    Messages:
    11
    Likes Received:
    0
    I've experienced similar hangs before, but I'm at a loss to remember how I solved them. Even with my working model, I routinely have to boot it multiple times before I get to a point where I can log in. I agree with you that the dmesg errors are not critical - simply stuff that is failing to load.

    your file system is booting; it's either not finishing or the ttypUSB0 is stopping output. Do you get the same response when you are connected to a monitor, keyboard, and mouse?

    I'll make an install from scratch and see if I can reproduce what's going on.
     
  18. uwot

    uwot New Member

    Joined:
    Sep 4, 2014
    Messages:
    5
    Likes Received:
    0
    Thanks, that's much appreciated.

    I just tried running with a HDMI monitor and managed to get to the logon screen. I suppose the serial terminal stops output when the logon screen is waiting for input (which does make sense). Other installations I have tried let you log on via the serial terminal, and IIRC one of the articles you linked to mentioned something about setting up the serial so I'll have a play with that.

    It does seem to boot reliably - at least, it does in the 10 minutes or so I've been playing!
     
  19. rocketdude

    rocketdude New Member

    Joined:
    Jan 10, 2014
    Messages:
    11
    Likes Received:
    0
    great. Glad it is working. The chicken-and-egg problem is to get an install with sshd installed so you can remote in. I only know of two ways to do that. The first is to attach a monitor and keyboard; the second is to create the basic install in a chroot environment on a computer that can either emulate the ARM architecture or if you have another ARM linux machine laying around. I had neither, so I had to plug in a monitor.

    Once sshd is installed, all works well.
     
  20. uwot

    uwot New Member

    Joined:
    Sep 4, 2014
    Messages:
    5
    Likes Received:
    0
    There is actually a third way! If you perform the steps under "Fixing the Console" in Felipu's guide (http://feilipu.me/2013/11/09/udoo-ubuntu-12-04-guide/) you can log in via Minicom. Here's the procedure:

    Code:
    cp /etc/init/tty1.conf /etc/init/console.conf
    nano /etc/init/console.conf
    change the last line to

    Code:
    exec /sbin/getty -8 115200 console
    Then, from another Linux box (with the USB lead connecting it to the Udoo) you just

    Code:
    sudo minicom -w
    Not sure if its really that much easier if you have a spare monitor, but it was handy for me!
     

Share This Page