To supplement storage space with the initial purchase of the Aspire One (8 GB SSD version), I bought a 16 GB Transcend TS16GBSDHC6 card that integrates nicely into the left card slot. The pre-installed Linux Linpus just wasn’t what I needed since I use many networking tools at work and at home. I initially ran Ubuntu 8.041 with the /home partition on the 16 GB SDHC card. I discovered Eeebuntu while searching for information on how to boot and run Linux off a SDHC card. The goal was of multi-boot installations of Ubuntu, with one install specifically loaded with the tools I use at work. The Acer Aspire One BIOS does not ‘see’ the card, so you can’t boot from it using the [F12] startup key (More on the SDHC boot up further in this article).
(A brief review, SSD F.U.D. and adventures with the grub boot loader)
Eeebuntu 2.0 On The “One”
The Aspire One works nicely with many Linux distributions, but there had been hardware issues in particular the Atheros WiFI support. Finding the reports in the forum sounded good for the Eeebuntu 2.0 release on the Acer One. I tried the ‘Standard’ and ‘NBR’Â versions first with live CDs. Both worked great. Installing Eeebuntu 2.0 is just like any typical Ubuntu install. I used a CD/DVD drive with a USB-IDE/SATA adapter. Once running, I had to select 160 x 120 resolution for the webcam to work (in the Cheese application) and to have the HDA Intel sound be Alsa for the microphone to work correctly. I also needed to disable the EeePC temperature sensors services as they didn’t work on the Aspire One.
Here’s a capture of my Eeebuntu desktop on the Aspire One.
Gnome interfaced Eeebuntu is designed for the Asus EeePC series based on Ubuntu 8.10. It uses the custom Array kernel (http://www.array.org/ubuntu/) optimized for the EeePCs. It also works great on the Aspire One which shares the same Intel Atom processor. Eeebuntu is available in three flavors: A Standard Version which has the Mac-like AWN manager installed; A Netbook Version with the Netbook Remix front end and a Base version minus the specific EeePc utilities and major applications. Preferences are easily modified using the System / Control Center utilities.
Here’s the Eeebuntu 2.0 Base default desktop:
The NBR Eeebuntu Desktop featuring Netbook Remix.
The Atheros WiFI support is the best it’s ever been on the Aspire One. I’ve encountered connections issues and drifting signal levels with other distributions and came the closest by compiling the MadWiFI (http://madwifi-project.org/wiki/About/MadWifi) modules myself in a base Ubuntu 8.041 installation. Even Ndiswrapper never worked good for me. This distro is a dream. The custom kernel is “apt pinned” in that normal Ubuntu updates, will not break it. Unfortunately I could not do a dpkg force install of WICD, ( http://wicd.sourceforge.net/ ) which I use at work, to replace the network manager. (I have WICD on another Ubuntu 8.10 base install on a boot-able USB stick I’ve used a few months.) This may be related to the pinned kernel and WiFI modules. I will investigate further sometime. The AWN interface is ok being very usable providing a different way to switch work spaces and running applications. Move the mouse to the lower screen to make the AWN manager visible (default setting) and click on your particular running application icon. I have 47% of the 16 GB SDHC card (a bootable install … I’ll get to that) filled with all my favorite applications thanks to the Ubuntu Intrepid repositories. I even did a update via the Update Manager after enabling all Ubuntu Intrepid repositories and Mediabuntu, without a problem.
So far Eeebuntu 2.0 is the BEST Linux distro I’ve tried on the Aspire One, especially the rock solid WiFI operation.
Running Eeeebuntu 2.0 off the 16 GB Transcend SDHC Card
First some flash storage discussion. Fun with F.U.D.
There is little information to some mis-information about solid state flash for operating systems around various Linux web sites. NASA and the military have used flash drives for years. Most hard drives don’t work over 10,000 ft. They require air pressure to keep the heads precisely over the platters. We do know, at least for now, SLC (Single layer chip) Nand Flash has been better and more expensive than MLC (Multi-layer chip) NAND Flash. The MLCs are getting bigger and faster and perhaps closer to the specs of the SLCs. There are few details available as this technology is advancing fast. The Aspire One SSDs use the new Intel MLC chips. They are somewhat different in data path design than other MLCs. Intel rates the Z-P230 PATA drives as 1,000,000 hours MTBF and with 3 years of useful life. Is this at 100% duty cycle? I don’t know but at a 25% duty cycle using one of the various formulas found on the ‘net, you’d find the life span increases to 6-8 years. That’s close to standard hard drives. SLCs are 10 times greater in write/erase endurance so SLC life spans could increase to 30-80 years.
Toshiba calculated that a 10,000 write cycle endurance would enable a complete write and erase the entire contents of USB flash drives once per day for 27 years.
There are variables to consider such as “wear leveling” algorithms and hardware design, but generally solid state storage is consumer ready as prices fall. If my 25% duty cycle logic applies, then 6-8 years of life is acceptable as hard drives seem to last this long. Note: Hard drives are mechanical so they have a much lower MTBF such as 150,000 hours. The 16 GB Transcend cards are a bargain whether they are MLC or SLC Flash.
I am not concerned about all of the extra OS writes to the drive. (The journaled ext3 file system has saved my butt a few times.)
A good article is found at: http://www.storagesearch.com/ssdmyths-endurance.html about SSD endurance and general Solid State storage at the site.
I planned to boot and run Eeebuntu 2.0 Linux from the SDHC card.
This can be done on the Asus EeePCs but the Acer’s BIOS doesn’t see SD media, only the internal IDE or external USB drive devices (such as with USB adapters). Thanks to Linux embedded sites and information scattered elsewhere, the setup process isn’t difficult to do for a more advanced Linux user that has fooled around with grub. It’s just takes some time.
The Transcend TS16GSDHC6,16 GB Mode 6 cards can be found for $27. They work great in the Aspire One for extra mountable Linux storage, such as with an internal 8 GB SSD installation by putting a /home and /var partition on them. Now to put OSes on them like the EeePCers do.
Nice Idea! More OS Installation Space, without opening the Acer up and voiding the warranty.
Booting Linux from the SDHC card in the Acer Aspire One:
If the kernel has the support for SD cards, at the inital bootup, have the initrd.img pre-loaded with the SD card modules using the initramfs-tools. Linux in ram will be able to see these devices and thereby boot from them.
The strategy
[a] Create new initrd-img files for booting with the SDHC modules pre-loaded for each installation.[b] Do the SDHC installations using USB to SDHC card readers.
[c] Obtain the unique UUID from each /boot/grub/menu.lst USB-SDHC adapter installation.
[d] Copy the new initrd-img and kernel files to the internal drive /boot directory.
[e] Add the new entries to the internal drive’s /boot/grub/menu.lst inserting the correct device UUIDs, initrd.img.xxx.xxx name, and kernel file names.
I did TWO complete, tested, identical installations.
The first installation is to the internal SSD drive without the SDHC card installed.
I did manual partitioning with a 1GB swap partition and placed the MBR code at the beginning of the drive, such as /dev/sda, NOT /dev/sda1.
Reboot then go to then from the command line:
$cd /etc/initramfs-tools
Now as root we need to edit the modules file:
$gksu gedit modules
Add these each on one line (do not comment with #):
mmc_core
mmc_block
sdhci
sdhci-pci
Save the modules file.
Now at the command line type:
$sudo update-initramfs -u
This rewrites ( -u means updates and overwrites) the Linux initrd.img.xxx.xxx in the /boot directory.
The initrd.img now has the the modules preloaded so it can boot a SDHC device.
Now go and view the /boot/grub/menu.lst file and find the lines starting with “uuid” and “kernel”. Note that the two uuids are the same hexadecimal values. We will return here to edit later.
The next installation is to the SDHC card using a USB-SDHC card adapter.
I used a USB to SDHC card reader and booted again using the USB-CD/DVD. Once in the Live CD installer, be careful and verify you have the correct device to install to. Use fdisk -l from the command line to verify the device assignment if needed. I did a manual partition with a 1 GB “swap” partition at the end of the install drive. The other swap partition on the internal drive was selected as not used. Like the first internal installation, I placed the MBR code at the beginning of the SDHC device-drive labeled /dev/sdb. (If Acer ever updates the BIOS for direct SDHC boot, these SDHC card installations will be ready for it.)
When complete, reboot from the USB-SDHC adpater device, hitting [F12] select boot devices, choose the USB-SDHC card adapter. Now test the installation.
If it works, go and view the /boot/grub/menu.lst file of this install and find the lines starting with “uuid” and “kernel”. Note that the two uuids are the same hexadecimal values. Write this hexadecimal value down and or save it somewhere.
Shut down and insert SDHC card itself in the left slot of the Apsire One.
Boot from the internal 8 GB SSD installation.
Now as root we need to edit the /boot/grub/menu.lst file with a text editor or vi:
$gksu gedit /boot/grub/menu.lst
Scroll down to the entry of the default installation.
Here’s my internal SSD installation (with my own labeling)
title Ubuntu 8.10, kernel 2.6.27-8-eeepc SDD – Internal
uuid 736f6f5a-28c8-4848-9b97-04342ca875b2
kernel /boot/vmlinuz-2.6.27-8-eeepc root=UUID=736f6f5a-28c8-4848-9b97-04342ca875b2 ro clocksource=hpet
initrd /boot/initrd.img-2.6.27-8-eeepc
quiet
Copy that entry and paste it below the first (internal SSD) entry.
Edit this one with the “uuids†of the SDHC device from the USB-SDHC adapter installation. In this case for my hardware: UUID=a555d64d-5991-410e-b725-d3f7e76d2fe8.
Your’s will be different as each UUID is unique as Ubuntu Linux assigns them.
title Ubuntu 8.10, kernel 2.6.27-8-eeepc SDHC CARD
uuid 736f6f5a-28c8-4848-9b97-04342ca875b2
kernel /boot/vmlinuz-2.6.27-8-eeepc root=UUID=a555d64d-5991-410e-b725-d3f7e76d2fe8 ro clocksource=hpet
initrd /boot/initrd.img-2.6.27-8-eeepc
quiet
Save the /boot/grub/menu.lst, reboot and then select the new entry from the grub boot up menu and see it it works.
This is nuts but I purchased another Transcend 16 GB SDHC Mode 6 card and Installed a base Ubuntu 8.10 (from my USB stick install) to it for the Aspire One. Using the same technique with the additional modules update-initramfs as with the first install, I produced another new initrd-img-2.6.27-7-generic image with SDHC support.
This kernel vmlinuz-xxx.xxx.xx, and new initrd.img.xxx.xxx of this 2nd SDHC card installation WERE COPIED TO THE /boot DIRECTORY of the internal SSD installation.
I edited the /boot/grub/menu.lst with another entry and now can boot 2 different Linux installs on SDHC cards from the grub start up menu. (That is BOTH the left and right SD card slots of the Aspire One.)
Here’s the ADDITIONAL /boot/grub/menu.lst entry to the INTERNAL DEFAULT SSD INSTALLAION.
title Ubuntu 8.10, kernel 2.6.27-7-generic SDHC Card Rt Slot
uuid 736f6f5a-28c8-4848-9b97-04342ca875b2
kernel /boot/vmlinuz-2.6.27-7-generic root=UUID=0b217a58-efb6-4121-85cf-5daa5a473b53 ro
initrd /boot/initrd.img-2.6.27-7-generic
quiet
The Aspire One is booting the internal SSD (/dev/sda) install loading the /boot/grub/menu.lst from it as seen in the uuid line under the title line. The right slot SDHC has a different kernel and different UUID. The kernel and initrd lines define them.
Conclusions:
– Eeebuntu 2.0 is the finest Ubuntu Linux derivative I’ve tried on the Aspire One.
– Acer needs to add SDHC support like Asus did for the EeePCs BIOS, a direct boot is so much easier.
– The initramfs with grub technique to boot the non-BIOS supported SDHC works on the Aspire one.
– Boot up time is slightly longer than just running the SSD install, since the initial boot information is being read twice off two devices. Write speed of the SDHC cards is close to the slow, but usable SSD installation. Read speads I feel no difference.
– For owners of Aspire One with Window’s pre-loads, this technique if carefully done, could preserve the Windows setup if the internal drive is partitioned with a small /boot partition. Gparted would work well at resizing and creation of a small 50-100 MB /boot partition. Upon a USB-adapter card install, the /boot partition could be specified on the internal drive. Ubuntu is smart enough to add the Windows chain loader entry into the grub menu.
– Plan on spending a few hours if you do a SD card boot installation.
– Solid state drive F.U.D.? I feel these solid state wonders will outlive the life of these computers. High ESD and physical abuse, such as bending, is more of a threat to the longevity of these SD cards than using one for an operating system installation.
Once roomy NAND Flash drives reach the price and performance levels of today’s hard drives, consumers will see solid state is vastly superior. No moving parts, high vibration and shock resistance. Flash drives work in greater temperature extremes, work over 10,000 ft. and are close to surpassing hard drive IO speed on the high end models.
About me: I work in municipal IT Support. I have some electronics and QA background also. I discovered computers in the 80s with the Atari 800XL/Atari ST machines. Linux is fun but a sad point, I miss Libranet (a great Debian distro of years past).
Title says it all.
Since the instructions are generic enough for any old -buntu, I’ll be giving it a shot with my LXDE-based Jaunty Jackalope setup as soon as I my USB SD card reader arrives (my camera uses xD cards, which are still a no-go with 2.6.28 kernels).
This is why people put up with windows or buy a Mac!
Hoops, more Hoops, and Hooray for mostly working? Sorry, I like the *idea* of linux, and it is a bit of a hobby, but this is crazy for a machine that ships with a linux distro already installed. How hard can it be to transfer the drivers, etc to other interested distro makers?
Anyways, nuff said.
No, most people stick with the OS that came preloaded with the device. It comes with a fully working Linpus install and, ideally, you shouldn’t need anymore than that. If you don’t like it and are not willing to put some effort to change it, don’t buy the device.
Putting XP or OSX into the thing would also require some fiddling around, specially OSX.
It comes with a fully working Linpus install and, ideally, you shouldn’t need anymore than that.
Sure, you should never need OXML support for OpenOffice, or update Firefox and stay with an obsolete and unsecure version, or connect to any sort of LAN and share files, or update the bazillion OS components that have received bug fixes since the Acer Aspire One was released, or pretty much install anything, for that matter.
Should Microsoft be the maker of the version of Linpus that comes with the thing, people would be bashing them with no mercy. And IMHO with all reason.
Note: I have the Linpus version, and will not bother swapping the thing if it requires tweaks and headaches for another that almost works . I am happy with it as is, because it is merely a typewriter to me. Still I did spent more time than I wanted to going through the all the loops required to update Firefox, OO, or to install Skype, Pidgin, Thunderbird and doing other minor tweaks I dare you to ask my parents or non-savy friends to mimic.
The thing, as it comes, is just subpar.
Edited 2009-01-09 08:29 UTC
I don’t have one of these devices so I can’t tell how good or bad the OS actually is. From what you’re telling me, I gather it’s kinda sucky.
My point was that changing the OS of a non-standard device like most Netbooks will always prove annoying, no matter the OS you’re trying to put in it.
Your parents probably couln’t install anything on Windows either.
If they can’t use synaptic, how do you expect them to install windows software and type a long string of random characters to activate it after registering email and account on the web site? And all that without getting any virus or getting their credit card number stolen in the process?
Linpus linux, JUST LIKE ANY OS, requires learning to be used with full power. It’s not any harder than Windows, it really isn’t. It is just that you aren’t used to it.
Now just try to install Windows on a SDHC and tell me how easy it is…
Edited 2009-01-09 15:18 UTC
At the risk of getting off topic, I’ll address your points.
Well, usually if someone doesn’t know how to download Windows software, they go to the store and ask the friendly (or sometimes not so friendly) salesman there what software will do what they want. He gives them a CD, they follow the instructions, which usually amounts to popping the CD into the drive and clicking next a few times. Sometimes it also involves typing a product key which, usually, is printed right on the CD case. Wow, how very, very difficult that was.
Who says they can’t use synaptic? But what happens if the piece of software they need isn’t in the package repositories? You apt fans always forget that part. What do they do then? Because they can’t go ask the friendly people at Best Buy for help now, and they’re not going to know how the hell to install something from source. What if they need the latest Openoffice.org to read their co-worker’s documents properly–yes, this can and will happen? You really think the average computer user wants to follow the steps of removing the currently installed packages, downloading the tar.gz, extracting it, and then installing the debs or RPMs? Tell me then, which is easier, to do that or to install Openoffice by clicking next a few times, as you would in Windows? Or dragging it to the Applications folder as you would in OS X? Come on now, which is easier?
Package management isn’t the issue in and of itself, save for the compatibility issues we’re probably all familiar with on occasion. But it’s what to do when the repositories don’t have what you need that’s the issue, and here, I’m afraid, every Linux distro falls flat. There are some promising projects out there for this, but none of them seem to be embraced by any of the major distros.
But what do you do what the shop doesn’t have the software you are looking for? You have to hunt it down in google and create an account and register your email address, go to your mail box, click on the link, watch a few adds, get a registration number, download the package, install it with the installshield if there is one and pray that it is not a virus.
In the worst case, you buy Visual studio to compile it or even patch it to make it work in Windows. You believe this case is extreme? Indeed it is, but it is the same on linpus linux. If the software is not in the repository, you are out of luck, but there are 19000 software on the repository and most people should stick to that. If you are compiling tar.gz you are looking for troubles because you don’t have too. The problem with linpus linux is that everything is open and you can actually compile from source, but you don’t have to. You can compile in Windows as well, but the people who that for you do that in secret and they don’t tell it. The people who do that for linpus linux explain how they do it openly and people think it is more complicated than on Windows, but it is not really. In Windows, compiling software is a big big big mess. You just don’t see it. If you don’t want to do it, just don’t do it!
In linpus linus, the way you install software is via synaptic. In Windows, you click next next next and enter registration keys. I find the linpus way way easier.
The compatibility issue is a non-issue. Mac OS X and Windows are not compatible. Windows and linpus linux are not compatible, although wine can run windows software. Linpus linux is still compatible with linpux linux the same way MacOS X is compatible with MacOS X. Different versions of MS Office are not even compatible with each other! You will find that there are enough linpus software to do pretty much whatever you can do on Windows with a netbook. And if the latest beta of OpenOffice.org is not in the repo, it is not a big deal really. Only developers need to compile the betas and they usually know how to do it or they can follow the instructions if they want to.
Also, your parents really shouldn’t try to install ubuntu on SDHC. This article is not for them. They should stick to what was compiled for them like they do on Windows.
Edited 2009-01-09 21:04 UTC
Have you even tried the thing?
They can pretty well install Windows software (downloading and doubleclicking a Setup.whatever?)or browse and install through a software repository (again, double clicking on a list of names and descriptions?).
Unless, that is, they cannot identify which package format they can download, or have no access to a package manager with access to a software repository, which is how Linpus on the One comes.
Should they be willing to spend time browsing the internet (no), to go round that, when the thing is sold as “easier than the average”, and finally get access to a package manager (with a hideous UI), they will get a nice surprise when many of the things do not even install, let alone when they start breaking their desktop and have to reluctantly reach their recovery CD and resign to a castrated system that makes adapting it to one’s needs more difficult instead of simpler (and I would not call being able to share files or to open Word docs a thing for techies).
Edited 2009-01-11 09:29 UTC
The guy who wrote the article is obviously an OS and hardware enthusiast who loves the Small, simple hardware, and also wants to use it for something more advanced that a typical user would care about.
What he did was undertake a journey to install a different distribution of linux with his own tweaks for work purposes, and he cared enough to document the process for others who might also be so inclined…
Thank goodness for people who do these things. I recently wanted to tweak my kernel and it really helped to find other people who had done the same thing… I was able to pop in, set the exact flags I needed without guessing, build it and now I am running my custom kernel, and it is sweet.
So thanks to all the people out there who experiment and document.
And you know, of course, that his particular needs would be met by an XP or OSX installation?
Well, obviously not OSX since there’s no Aspire One with OSX…
I bought a Dell Mini 9 in October with Ubuntu preloaded. Recently I downloaded the standard x86 8.10 ISO, used the USB Ubuntu installer (easy installation via synaptic) and installed ubuntu from a USB stick I had laying around (didn’t even have to remove anything from the stick) All but the speakers worked entirely out of the box. I only had to add a single line to the bottom of a config file to get the speakers working (other audio was fine).
Windows on laptops typically requires tracking down and installing drivers, waiting an hour or more for windows update to install the latest SP and other updates. With this laptop it would have required an optical drive for initial installation.
Even the compositor worked straight away, and quite well!
Had it not been for the speakers not working and the need to disable swap, this would have been smoother and easier than even doing an OS X install. What’s more is that OS X devs have specific hardware they’re tailoring too, Ubuntu devs don’t.
Well done I say.
Nice article !
I had a similar situation with an old computer where I had an installation on a USB key but the BIOS couldn’t boot from USB. Since there was already a linux installation on the internal hard drive, I pretty much did the same thing as you did for your SDHC card : copied the kernel and initrd to the internal hard disk, modified grub, etc.
However, I soon realised that this technique would cause problems if ever the kernel were updated through apt-get, since the new kernel would be put in the /boot of the USB key, and the kernel on the internal hard drive would stay untouched. Solution is simple enough, copy over the new kernel and initrd each time it gets updated. Although it would be nice if there was a way to automate this instead of having to do it each time.
Why couldn’t you just create a soft link from the location of the kernel on your flash, to the location on the internal hard drive? Or am I missing something?
Because in that case the kernel would either be on the flash or on the internal hard drive. If I needed only to plug the usb key into that single computer, then it would be fine. But I needed to use the USB key as a live on more than one computer.
If you’re going to label pages with charset=utf-8, you better make sure the content is utf-8 – there are encoding problems throughout the article.
‘then 6 – 8 years’
‘”wear leveling” algorithms’
‘Edit this one with the “uuids†of the SDHC device’
I really liked it, although I own an EeePC, really liked the tweaking and the ideas, and the way the article was written. Might be of future use.
A bit off-topic, but I feel the quality of OSnews’ articles got better with the whole ‘read more’ thing, and commentaries by contributors and editors. I started enjoying OSnews again in a way I haven’t in a long time. My congrats!
Sorry for my english, not a native.
Just needed to add…
With MLC and SLC, the memory chips themselves are identical. It’s the hardware around it and how it writes data to the chip that differs. SLC stores 1 state (or bit) per cell (1 or a 0). With MLC, it can be stored as 00,11,01,10 (or 2 bits per cell). This causes reads AND writes to take longer on the MLC than the SLC. Eventually all memory chips will likely be MLC, as SLC is less efficient – half the yield for the same memory.
And for the article.. For the [more] techy people out there, the author is simply pointing grub that’s on the internal disk to the SDHC card. So it’s not really ‘truly’ booting off the SDHC card, but you’re running your distro off the card.
I have an ASPIRE ONE and really regret Acer not putting that functionality in it. That really sucks.
I ended up accidentally trashing the linpus by doing a yum update. After that I just put archlinux on the internal drive. Been pretty happy with Arch & xfce4. I’ve never been a fan of debian based distros.
The problem with built in distros being too many custom things and additionall linpus is based on a soon to be unsupported version of fedora.
I hope they do add the ability to default boot off the sd card though. Although for testing I’ll normally use a usb stick.
Next in queue:
msiwindbuntu
aceraspireonebuntu
dellmini9buntu
dellmini12buntu
…
Edited 2009-01-09 13:06 UTC
mostly, except the dell mini runs UNR, no need for another buntu for it.
both eeebuntu and easypeasy suck…both of them change the default set of apps completely willy nilly, and eeebuntu NBR is a complete mishmashed mess of the netbook interface AND the normal interface at the same time. easypeasy was good when it was ubuntu-eee, all downhill since. Wish UNR worked better on the eee, would rather use that than these pieces of turd. as far as what i am using? going to stick with the old version of ubuntu-eee/easypeasy til jaunty comes out with UNR integrated.
Edited 2009-01-10 22:01 UTC