[Q&A] Ubuntu on the Transformer (eMMC install)

Search This thread

mrmrmrmr

Senior Member
Jan 14, 2007
2,552
257
how can I backup my current UBT partition to an img file ?
as I had to work on it for 3 nights, I'd like to keep it somewhere.
And if anyone requires to have a working Ubuntu 11.10 partition, I can share...
 

mrmrmrmr

Senior Member
Jan 14, 2007
2,552
257
"ROM manager" doesn't support Transformer.
So I decided to write a dd script for swapping recovery partition.

I will use some command like:
dd if=/sdcard/linux.img of=/dev/block/mmcblk0p4 bs=409
dd if=/sdcard/recovery.img of=/dev/block/mmcblk0p4 bs=409

but I am not sure which is the recovery partition. It seems it's not mmcblk0p4 anymore. Any ideas ?
 

lilstevie

Senior Recognized Developer
Apr 17, 2009
1,339
1,040
"ROM manager" doesn't support Transformer.
So I decided to write a dd script for swapping recovery partition.

I will use some command like:
dd if=/sdcard/linux.img of=/dev/block/mmcblk0p4 bs=409
dd if=/sdcard/recovery.img of=/dev/block/mmcblk0p4 bs=409

but I am not sure which is the recovery partition. It seems it's not mmcblk0p4 anymore. Any ideas ?

mmcblk0p4 is the staging partition not the recovery partition, the kernel needs to be packed into an nvidia update blob
 

Danzano

Senior Member
May 21, 2011
3,075
463
Auckland
how can I backup my current UBT partition to an img file ?
as I had to work on it for 3 nights, I'd like to keep it somewhere.
And if anyone requires to have a working Ubuntu 11.10 partition, I can share...

Is this a re-work of lil stevvys ubuntu image but with fixes?

I read wireless scanning is working?

Is network manager working or still through terminal?
 

rdnetto

Senior Member
Jul 3, 2011
317
96
how can I backup my current UBT partition to an img file ?
as I had to work on it for 3 nights, I'd like to keep it somewhere.
And if anyone requires to have a working Ubuntu 11.10 partition, I can share...

Use dd (it's mmcblk0p8) under Android. I suggest piping it through gzip or something similar.

Ok, after compiling once again kernel, I flashed it through CWM, and everything works fine :) I really thank you for your help, and I cannot believe to have the wireless scanning too :D

You're welcome. But you shouldn't have scanning - at least, I don't.

"ROM manager" doesn't support Transformer.
So I decided to write a dd script for swapping recovery partition.

I will use some command like:
dd if=/sdcard/linux.img of=/dev/block/mmcblk0p4 bs=409
dd if=/sdcard/recovery.img of=/dev/block/mmcblk0p4 bs=409

but I am not sure which is the recovery partition. It seems it's not mmcblk0p4 anymore. Any ideas ?

p4 is where the blobs are loaded from for installation.
p9 and 910 are SOS and LNX, and are inaccessible while the OS is running. To flash both, you'll need to create a blob (use blobpack) and write it to p4.
 

rdnetto

Senior Member
Jul 3, 2011
317
96
I am interested in why you do not have scanning, the latest versions compiled from git should have scanning as that is what was merged in from VHDA

Interesting. 'sudo iwlist wlan0 scan' produces no results, but the Gnome GUI detects them. I didn't notice until now because I'm using KDE. I'm still on natty, if it's relevant.

I also seem to be getting some errors from AppArmor, but I don't think that's relevant.
 

mrmrmrmr

Senior Member
Jan 14, 2007
2,552
257
Use dd (it's mmcblk0p8) under Android. I suggest piping it through gzip or something similar.

I didn't understand that. Why do I need gzip ? Just dd wouldn't be enough ?

You're welcome. But you shouldn't have scanning - at least, I don't.

I have wifi scanning as well. I compiled the kernel with your instructions on page 103.

p4 is where the blobs are loaded from for installation.
p9 and 910 are SOS and LNX, and are inaccessible while the OS is running. To flash both, you'll need to create a blob (use blobpack) and write it to p4.

I don't understand. Shall I use p8 ?
if so, what do I need p4 , p9 and p10 for ?
I'm really confused...
 

rdnetto

Senior Member
Jul 3, 2011
317
96
I didn't understand that. Why do I need gzip ? Just dd wouldn't be enough ?
dd alone is enough, but the image will be massive. Because it's mostly empty space, compressing it with gzip will result in a much smaller image. The alternative is to run resize2fs before and after, but generally you want to avoid modifying the partition when making a backup.

I have wifi scanning as well. I compiled the kernel with your instructions on page 103.
I'm guessing you're using Gnome as well?

I don't understand. Shall I use p8 ?
if so, what do I need p4 , p9 and p10 for ?
I'm really confused...
When you boot the transformer, the bootloader starts by checking if there's a blob in p4. If there is it executes it. The blob will then extract the images it contains to the relevant partitions.
p9 and p10 are (allegedly) the partitions corresponding to LNX and SOS, but we can't access these directly (with dd) so we have to use blobs. This means we can write to them, but not read.
p8 is your Ubuntu root partition, so don't write anything to it unless you want to lose your files.

*p4 = mmcblk0p4
Sorry if that caused any confusion.
 

mrmrmrmr

Senior Member
Jan 14, 2007
2,552
257
so, you say I can't access p9 and p10 from Android and I should access p4.
p4 seems to be a big partition. what else does it hold except the blobs ?

now, if I dd all p4 partition it will backup all partition. I just want to change the recovery partition to "clockwork" when I need that. and after I finish with recovery, I want to put the Ubuntu loader back.
how can I achieve this ?
 

moseskim

Member
Sep 2, 2007
46
6
Chicago
Webcam?

I've searched the two main threads and haven't been able to find anything about setting up the webcam. I've been able to upgrade to Ubuntu 11.10 with touchpad and wifi working on a Transformer with only an Ubuntu. Any ideas on where to start to set it up?

Also: I'd like to try to the CrOS kernel - do I need the custom uboot for it to work, or can I just compile the custom kernel from the github and have it work on my pure ubuntu setup?

Thanks!
 

rickatnight11

Senior Member
Dec 31, 2010
210
61
This is a quick guide I've written for anyone who wants to use a different kernel, since the original one is now rather outdated and doesn't support the mouse.

Thanks for the guide. I started building the kernel on the Transformer, but I ran out of space on my Ubuntu partition (mmcblk0p8 - 3.9G). I'd like to grab some space from the Android partition (mmcblk0p7 - 24G), but when I try and run:
Code:
sudo resize2fs -p /dev/mmcblk0p7 20G
...I get this output:
Code:
resize2fs 1.41.14 (22-Dec-2010)
resize2fs: /dev/mmcblk0p7: The combination of flex_bg and
!resize_inode features is not supported by resize2fs.

Tips?
 

lilstevie

Senior Recognized Developer
Apr 17, 2009
1,339
1,040
I've searched the two main threads and haven't been able to find anything about setting up the webcam. I've been able to upgrade to Ubuntu 11.10 with touchpad and wifi working on a Transformer with only an Ubuntu. Any ideas on where to start to set it up?

Also: I'd like to try to the CrOS kernel - do I need the custom uboot for it to work, or can I just compile the custom kernel from the github and have it work on my pure ubuntu setup?

Thanks!

Webcams I am not too sure about, all of mine are built into devices, and even then, I don't use them.

As of the latest commit you can run the CrOS kernel without needing u-boot, but be warned, it is nowhere near as friendly on the asus bootloader, the gained stability is at the cost of artifacting on the graphics, I am still working on solving all the problems with it
 
  • Like
Reactions: moseskim

rickatnight11

Senior Member
Dec 31, 2010
210
61
Thanks for the guide. I started building the kernel on the Transformer, but I ran out of space on my Ubuntu partition (mmcblk0p8 - 3.9G). I'd like to grab some space from the Android partition (mmcblk0p7 - 24G), but when I try and run:
Code:
sudo resize2fs -p /dev/mmcblk0p7 20G
...I get this output:
Code:
resize2fs 1.41.14 (22-Dec-2010)
resize2fs: /dev/mmcblk0p7: The combination of flex_bg and
!resize_inode features is not supported by resize2fs.

Tips?

To add onto this I went ahead and built the kernel on the Android partition without any issue. Running the script "blobbed" it up and flashed it, and sure enough upon restart the blue meter filled up.

Then the Transformer rebooted and sat at the Asus screen. Eventually I rebooted into CWM Recovery, flashed the ZIP attached to the instruction post, and booted back into Ubuntu just like before. Two questions:

  1. Any ideas as to what I did wrong in the build process?
  2. I'm still running Android, and I didn't realize that the ZIP you posted would load Ubuntu as the default OS. I assumed it was the ZIP that let you boot Ubuntu from CWM. How can I restore Android as the default OS (I'm assuming I can bundle this kernel I've built into an Ubuntu-booting ZIP once I fix whatever's wrong with it.)
 

moseskim

Member
Sep 2, 2007
46
6
Chicago
Webcams I am not too sure about, all of mine are built into devices, and even then, I don't use them.

As of the latest commit you can run the CrOS kernel without needing u-boot, but be warned, it is nowhere near as friendly on the asus bootloader, the gained stability is at the cost of artifacting on the graphics, I am still working on solving all the problems with it

Actually that's what I meant - the built-in webcam wasn't working on mine (couldn't get it to detect in empathy). Is something wrong with my installation, or how do you suggest setting it up?

As for the new kernel, thank you for the heads-up. I really like what you've done so far and am looking forward to the stable release.
 

lilstevie

Senior Recognized Developer
Apr 17, 2009
1,339
1,040
Actually that's what I meant - the built-in webcam wasn't working on mine (couldn't get it to detect in empathy). Is something wrong with my installation, or how do you suggest setting it up?

As for the new kernel, thank you for the heads-up. I really like what you've done so far and am looking forward to the stable release.

it is one of the things on the list of non working devices
 

rdnetto

Senior Member
Jul 3, 2011
317
96
so, you say I can't access p9 and p10 from Android and I should access p4.
p4 seems to be a big partition. what else does it hold except the blobs ?

now, if I dd all p4 partition it will backup all partition. I just want to change the recovery partition to "clockwork" when I need that. and after I finish with recovery, I want to put the Ubuntu loader back.
how can I achieve this ?
p4 only holds blobs, and once the blob is used the partition is formatted. You can't backup partitions with it - if you want to create a backup you have to use nvflash.
It will be a lot easier if you just keep CWM in the recovery (SOS) partition and use it to load the different bootloaders into the LNX partition. To restore CWM you can either use nvflash or a custom blob. blobpack is fairly easy to use compared to nvflash, the only limitation is you can't use it for partitioning.

Thanks for the guide. I started building the kernel on the Transformer, but I ran out of space on my Ubuntu partition (mmcblk0p8 - 3.9G). I'd like to grab some space from the Android partition (mmcblk0p7 - 24G), but when I try and run:
Code:
sudo resize2fs -p /dev/mmcblk0p7 20G
...I get this output:
Code:
resize2fs 1.41.14 (22-Dec-2010)
resize2fs: /dev/mmcblk0p7: The combination of flex_bg and
!resize_inode features is not supported by resize2fs.
Tips?
You can't resize them like that. resize2fs only changes the size of the filesystem - it's still limited by the size of the actual partition, which can only be changed with nvflash (which formats the entire system in the process).

p7 is FAT32, so I'd suggest creating a 4GB file on it, formatting the file as ext2 and using that as a loop device.
I don't know how well compiling on FAT32 would go, since it doesn't support Unix permissions.

You may want to consider increasing p8 to 8 GB at some stage anyway, since 4 GB is really quite restrictive in terms of what you can do with it.

To add onto this I went ahead and built the kernel on the Android partition without any issue. Running the script "blobbed" it up and flashed it, and sure enough upon restart the blue meter filled up.

Then the Transformer rebooted and sat at the Asus screen. Eventually I rebooted into CWM Recovery, flashed the ZIP attached to the instruction post, and booted back into Ubuntu just like before. Two questions:

  1. Any ideas as to what I did wrong in the build process?
  2. I'm still running Android, and I didn't realize that the ZIP you posted would load Ubuntu as the default OS. I assumed it was the ZIP that let you boot Ubuntu from CWM. How can I restore Android as the default OS (I'm assuming I can bundle this kernel I've built into an Ubuntu-booting ZIP once I fix whatever's wrong with it.)

If it freezes on boot without any messages, then something is wrong with the kernel. There are too many things that could go wrong in the build process to specifically address all of them, all I can suggest is very carefully going over the instructions. A while ago I posted a copy of my kernel/blob, try with that and see if it makes a difference. One other poster found it only worked when using CWM to install the blob - maybe try that.

The zip I posted is one of the two CWM zips posted by Jhinta somewhere in this thread. If you search for them you should be able to find it.
 
  • Like
Reactions: rickatnight11

Top Liked Posts

  • There are no posts matching your filters.
  • 66
    This thread is for help and support related to ubuntu on the eeepad transformer, all questions not related to development should be asked here, please be friendly and do not flame each other or I will request the thread be closed.

    Download links are in the third post.

    There is a wiki entry here that has a bit more detailed explanation. Please note though that as it is a wiki information
    quoted in there may or may not be entirely accurite.

    you will need to download an nvflashable rom, like prime.



    Please read the README before attempting this. The readme is below as well as in the kit, YOU WILL LOSE DATA.

    Download links are in the second post.


    OLiFE for the ASUS transformer
    ------------------------------------------------------------------

    (c) 2011 Steven Barker <lilstevie@lilstevie.geek.nz>

    This package should have only been linked to from xda-developers
    or rootzwiki if you got the links to this package from anywhere
    but those sites please send an email to the above email
    address with the subject: "unauthorised posts"

    DISCLAIMER
    ------------------------------------------------------------------

    Steven Barker (lilstevie) nor anybody will take any responsibility
    for any damage, data loss, fire, death of a loved one, or loss of
    data resulting from using this mod for your device. Using this mod
    may void your warranty.

    NVFLASH
    ------------------------------------------------------------------

    nvflash is the intellectual property of nvidia, and remains the
    property of nvidia. Any questions or queries regarding the usage
    and licence of nvflash should be directed to nvidia.

    abootimg
    ------------------------------------------------------------------

    abootimg is by Gilles Grandou <gilles@grandou.net> and is
    unmodified. The source is available from online at
    http://gitorious.org/ac100/abootimg

    usage
    ------------------------------------------------------------------

    Usage has changed since the release of the last kit, please read
    these instructions carefully, as the install method is a little
    more complex, (but easier once you use it).

    If you downloaded OLiFE.tar.gz you will need to inject the android
    rom and ubuntu image. You can use any nvflashable rom with this.
    I recommend that you use prime as that is the configuration that
    I have tested myself, and the ROM that I support for use with this
    device. You can download the ubuntu image from
    http://lilstevie.geek.nz/ports/ubuntu.img.gz.

    If you downloaded OLiFE-Prime-Edition.tar.gz you will not need to
    download the ubuntu image or an nvflash rom as they are seeded into
    the image.

    Install instructions:

    1) Download the specific flavour of OLiFE that you want to use, and
    extract it with "tar xvf <filename>".

    2) If needed inject android rom and ubuntu image.

    3) From the directory that OLiFE was extracted in run the main script
    with the command ./OLiFE.sh.

    4) Read the text that comes up and answer the question it asks.

    5) Follow the menu to the option you want (below is a breakdown of
    what each menu item is) and follow the instructions prompted. (also below
    is instructions on how to get into the modes requested).

    Menu items:

    1) Backup Menu:

    1) Full Backup (stock)
    - Full backup (stock) takes a full backup of a stock
    android system. This gives you an option to also back
    up your user data(this will take a while).
    2) Full Backup (ubuntu)
    - Full backup (ubuntu) takes a full backup of a system
    that dualboots android and ubuntu, this backs up your
    system, and the ubuntu image. This gives you an option
    to also back up your user data(this will take a while).
    3) User data only
    - This backs up the user data partition on your device.
    (This option takes a while)
    4) Android ROM
    - This option backs up the android system only. This
    option generates all the files (minus bootloader, and BCT)
    required to flash a rom via nvflash.
    5) Ubuntu Install
    - This option backs up the ubuntu install on your device.
    2) Flash Device:

    1) Dualboot:
    - This option will install ubuntu to your device in a
    dualbooting configuration with android. During the
    installation process it asks you which OS you would like
    to boot by default.
    2) uboot (linux only):
    - This option will install ubuntu with u-boot and the
    ChromeOS kernel that supports acceleration. This option
    is currently unavailable, but should be available soon.
    3) asus boot (linux only):
    - This option will install ubuntu with the asus bootloader
    with this configuration you will use all the eMMC for ubuntu
    and there will be no android system installed on your device.
    4) stock:
    - This option will partition the device in a stock way and
    install the android system that is in ./images. Use this
    option if you no longer want ubuntu on your device.
    3) Update Device:

    1) Android Kernel:
    - This option will update the android kernel on your device
    with the boot.img from ./images/. This allows you to install
    your own kernel on the device for android rather than the one
    that comes with your chosen rom.
    2) Ubuntu/Linux Kernel:
    - This will update the ubuntu kernel on your device to the version
    included in this flashkit. This option is for updating just the
    kernel with nvflash rather than using the blob method. This method
    is also good for if you flash a bad ubuntu kernel to the device.
    3) Android ROM:
    - This option will update the android rom on the device with the
    one from ./images/. This is good for if the ROM you use is updated
    or you would like to change ROMs and there is an nvflash image for it.
    This option does not destroy your data.
    4) Ubuntu Rootfs:
    - This will update your ubuntu image on the device. This is destructive
    to data stored in the ubuntu image.
    5) Advanced (Unsupported):
    - Any option in this menu is not supported and should be considered
    unstable. There may be bugs in these options and they are not maintained
    at this point in time.

    1) Flash ChromeOS Kernel (Primary Boot):
    - This option will flash the ChromeOS kernel to the primary boot
    partition. This option may not currently work in it's current
    configuration.
    2) Flash ChromeOS Kernel (Secondary Boot):
    - This option will flash the ChromeOS kernel to the secondary boot
    partition. This option may not currently work in it's current
    configuration.
    3) Update Uboot Partition:
    - This option will update the u-boot boot partition that u-boot
    reads the kernel and boot script from. This option does work if
    you have installed u-boot by compiling it from source and installed
    it yourself.
    4) Flash ClockworkRecoveryMod:
    - This option allows you to temperarily flash CWR to the device so
    you can update the installed rom. It backs up the current kernel in
    the recovery kernel position and then flashes CWR. When you have finished
    using CWR you then push any key and put the device back in APX mode and
    it will restore the kernel that was in that position. (This only works if
    android is your primary boot option at this time).

    4) Inject Firmware:

    1) Bluetooth firmware (default install):
    - This option will inject the Bluetooth firmware from the
    android ROM located at ./images/ in to the ubuntu of your
    currently running system.
    2) Bluetooth firmware (CrOS Kernel):
    - This option will inject the Bluetooth firmware from the
    android ROM located at ./images/ in to the ubuntu of your
    currently running system and flashes the proper u-boot kernel
    if you no longer need adb support.

    5) Onscreen Keyboard:
    - This runs OnBoard so that you can run through oem-config properly
    you only need to use this option if you do not have a keyboard dock
    and on the first boot.

    1) Standard Kernel:
    - This will invoke oem-config on the standard kernel installed
    on the device.
    2) ChromeOS Kernel:
    - This will invoke oem-config on the u-boot kernel that is
    installed on the device and flashes the proper u-boot kernel
    if you no longer need adb support.

    Device Modes:

    APX Mode:
    -This mode is used by nvflash to write files to the eMMC device.
    To boot in this mode you press Power and Vol-Up.

    Recovery Mode:
    - This mode is where CWR or Asus recovery normally lives, but is
    replaced by the secondary OS in the dualboot configuration.
    To boot in this mode you press Power and Vol-Down, then Vol-Up when prompted.

    Normal Boot:
    -This mode is where android normally lives.
    To boot in this mode you press the Power button until the screen turns on.
    25
    Changelog
    ------------------------------------------------------------------

    1.2a - Release name: Odyssey

    * New name for kit: OLiFE
    * New menu system
    * Updated README
    * Better handling of platform detection
    * Bluetooth support in ubuntu.img
    * Preliminary support for ChromeOS kernel
    * Preliminary support for uboot
    * Fixed touchpad
    * Fixed network manager
    * Updated to ubuntu oneiric
    * More options for flashing and updating
    * OTB Wireless support (No more injecting)
    * Smaller ubuntu.img for faster upload to device
    * Auto resizing of rootfs on first boot
    * Larger partition size (6GB) for ubuntu
    * Refactored to more easily between devices
    * Maybe something else I have missed

    1.1 - Release name: Daedalus

    * Firmware injector for BT and wifi firmwares


    1.0 and silent updates - Release name: Prometheus

    * Support for x86_64 linux distributions
    * Updated README for release on xda-developers
    * Fixes to install scripts
    * Initial Release
    8
    Multiboot by cmw.zips

    This will restore cwm on recovery partition.
    And multiboot by flashing Ubuntu.zip or Android.zip

    Create flash-recovery.sh in flashkit dir !!

    The code below wil not work unless you provide some info on witch flash mode you used !!!!!
    Like me i have selected flash-linux-android.sh,
    View it and find witch --config file it use as you can see below.

    --->--configfile ./flash/android-linux.cfg <---

    Code:
    #!/bin/sh
    nflash --bct ./images/transformer.bct --setbct --configfile ./flash/android-linux.cfg --bl ./images/bootloader.bin --odmdata 0x300d8011 --sbk 0x1682CCD8 0x8A1A43EA 0xA532EEB6 0xECFE1D98 --sync
    nflash -r --download 5 ./images/recovery.img

    To Make this code above work replaced nflash with ./nvflash -> then sudo sh flash-recovery.sh

    Android <-- Prime 1.7 kernel !! you can select any kernel you want !!
    MD5 : 97cf64f6d5698276bde1d8657ec80cef

    Ubuntu
    MD5 : 40c9f82c30e0fd8230c712e23f2e3597
    7
    Downloads:

    RootFS md5sum(1a9fa8a698e4a96245a3c08511841eb4)
    OLiFE md5sum(c30263fd8271a23bb211fd9fdd69fa45)
    OLiFE Prime Edition md5sum(767779ccfa200e5e00b2f1e33a3d73a9)

    Sources:
    http://gitweb.lilstevie.geek.nz
    To clone the repos "git clone git://lilstevie.geek.nz/$(name of repo).git"
    6
    Simple Version

    Here's a simple nvflash package I put together to make things easy. It uses Jhinta's CWM files (incl.) and Prime 1.7. Just add ubuntu.img (from the OP) and run download-ubuntu.sh. (You'll still need to run the firmware injection script for drivers though.)

    http://www.multiupload.com/6GZSLRBP8S

    MD5: 843f964141ac96423c2fcdfc26092050