HOWTO upgrade the XO Laptop's operating system
If you've visited the OLPC Wiki, you've probably noticed the box on the right hand side that shows the latest releases (stable and development builds). Although the current stable build listed is 650, there's a newer one (653) that you might want to upgrade to. But if you want the latest, greatest, bleeding edge XO builds, you need to check out the "joyrides". However, these can be extremely unstable, so be warned.
Before you upgrade, there are a few things to know:
- You can have two versions of the operating system installed at any time. By default, you'll boot into the one you installed most recently. So if you start out with build 650, then install build 653 and reboot, you'll start up in build 653. If you hold down the O key (on the keypad to the right of the screen) as you boot, you'll boot the alternate operating system (in this case, 650). (At this point, I believe that 650 becomes the default and 653 the alternate.)
- At boot time, the XO laptop maps a pristine (see /versions/pristine) copy of the operating system into the running system's filesystem. Any changes you make to the filesystem are in another location (see /versions/run), but it all looks like one filesystem to you. When you reboot into an alternate operating system, any changes you had previously made to it are revived.
- When you use the olpc-update command to update to a new version of the operating system, the alternate operating system is wiped out (both the pristine version and any modifications to it)
- Through all of this, your home directory (/home/olpc) is left unchanged.
Update: Todd Norris wrote in with some important information. Some models of the XO laptop shipped with a version of firmware that is susceptible to a significant bug: if the real-time clock battery is physically removed or otherwise runs out of power, the machine may no longer boot. Even if you don't have an affected machine, this firmware update includes numerous bug fixes and is recommended for current models of XO laptops. For more information, including installation instructions, see the page for firmware version q2d07. However, this firmware will shortly be replaced by a newer release, so be sure to check the OLPC Wiki and look for the highlighted portion shown in the screenshot above. This will show you the newest version of firmware and operating system.
If you're ready to install the upgrades, read on.
Getting ready to update
So, when you're ready to upgrade, the first thing you need to do is unlock your OLPC so you can install developer builds (this may not be necessary for build 653, but I'm not certain). The first thing you need to do is request a developer key. It will take a day or two for your developer key to be ready. Go back to the same page you used to request the key, and you'll see instructions for downloading the key. This puts the key on the filesystem where the OLPC firmware can find it. To really unlock the XO laptop, you can disable security permanently (you need to have your developer key to do this). This is a good idea if you plan to muck around with your XO a lot, since you might overwrite the developer key in your experiments.Now you're ready to upgrade the operating system. If you're upgrading to a joyride build, you may occasionally get errors from olpc-update that tell you the build does not appear to exist. At the time of this writing, the OLPC team was pretty darn busy, and they were having intermittent trouble with the upgrade servers. The most foolproof way to upgrade is to download the os{build number}.usb and os{build number}.toc file to a USB drive and upgrade using that. I could not find *.usb and *.toc files for build 653, but the good news is that the stable builds are on servers that are more reliable than the developer servers.
Installing the upgrade
So when you've received your developer key and you're ready to upgrade, here's how to update to the latest stable and development versions of the operating system. First, upgrade to the latest stable version by opening a Terminal activity and running olpc-update as root:$ su # olpc-update 653
This will take a while to download and install. When it's done, reboot your OLPC (you can either reboot from the home screen, or simply type "reboot" at the terminal prompt). Now you've got build 650 and build 653 on your machine, and you've booted into 653. You can install the latest joyride build (at the time of this writing, the most stable one I've found is joyride-1511, but that will change soon because the developers are hard at work on this). You first need to download the *usb and *toc files to a FAT-formatted USB memory card. For build 1511, you'd go to http://xs-dev.laptop.org/~cscott/olpc/streams/joyride/build1511/devel_jffs2/ and download os1511.usb and os1511.toc to the root of the memory stick (you can do this on a Mac, PC, or Linux system). But be sure to check the OLPC Wiki and look at the box to the right of the page to see if there are newer builds.
Next, eject the memory stick from your computer, and insert it into your XO laptop. Open the Terminal activity, and run olpc-update with the --usb argument:
$ su # olpc-update --usb
When you're done, reboot, and you'll be running a developer build. Now you've got 653 and the developer build (in my case, 1511) running on your XO. And here's the trick: if you go and update to a newer joyride build now, you'll end up with two unstable builds. Instead, you should boot into build 653 (reboot, and hold down the O key on the keypad to the right of the screen), and then run olpc-update to install a new joyride build. That way, you always have one stable build and one unstable build on your XO laptop, and can flip between them by holding down the O button while you reboot!
Posted by Brian Jepson |
Jan 6, 2008 03:33 PM
Education, Linux, olpc |
Permalink
| Comments (8)
Recent Entries
- Minty soldering jig
- Selecting row number in MySQL
- iPhone 3G software unlock
- Python on Android
- Controlling Sony camcorders with the Arduino
- Gradient text effect in CSS
- Retro gaming emulators that include (legal) ROMs?
- Das DereLicht - ham radio transmitter from a CFL bulb
- Using Google App Engine as a personal CDN
- Route-me - Open Source mapping library for iPhone
Comments
Newest comments listed first.
| Posted by: tdang on January 7, 2008 at 10:07 PM |
I updated, just to 653, without a developer key.
Unfortunately, my hope was that in doing that upgrade, the "view source" would start working, but it doesn't. Drat.
| Posted by: morgs on January 8, 2008 at 3:36 AM |
@tdang: View Source will work in Pippy and Chat and certain other activities in the Update.1 version due out later this month.
| Posted by: Brian on January 9, 2008 at 4:14 AM |
It cannot be emphasized enough that you need to get your development key. The XO can only use an official stable branch upgrade that's been signed, the BIOS will refuse to boot into the latest joyride series unless you unlock it. Once you have successfully turned the BIOS security off, the XO will give a small countdown at startup to let you get to an Open Firmware prompt.
G1G1 owners, getting our keys takes about a day and a half, so be patient. Once that's all set, have fun with joyride, livna repository, and the fedora repository.
| Posted by: tamoneya on January 9, 2008 at 7:37 AM |
I would also recommend that if you start using joy rides and developer builds that you get on the dev mailing list: http://lists.laptop.org/listinfo/devel, and you get on the IRC channel irc.freenode.net#OLPC. This way if one of the builds is a bust you will know about it and you will also be able to contribute to the community if you find any bugs in the build.
| Posted by: isforinsects on January 10, 2008 at 8:14 PM |
653 does not need a dev key to boot
update.1-675 (which needs a dev key) is probably the best trade off between features and stability IMO.
The easiest way for new users to update to 653 (which helps wireless in general, and WPA specifically) is via usb with the files os653.img and fs.zip. Put those two on the root of a usb drive, and reboot holding all four gamepad buttons. That will clear out the Nand however.
And also, Hi Morgs.
| Posted by: tbnorris on January 11, 2008 at 10:41 AM |
The newest version as of release of this article was 656. I don't know about the dev key as i have that in place already. Also MORE IMPORTANT!!!!!!! you need to update the firmware there was a serious issue with Q2D06 which the G1G1 shipped with Q2D07 is signed and Q2D08 is out but not signed yet.
-=tbn=-
| Posted by: tbnorris on January 11, 2008 at 11:05 AM |
there is a firmware update that is more important then the build bug fixes. the Firmware that most? or alot? or maybe all? of the G1G1 laptops shipped with had a big issue. if the system clock is reset, i.e. the battery loses connection, it will brick the unit. So everyone with a unit that is affected i think b3 or b4 units to c1(the G1G1 units) need this update it is super simple to do and only takes like 30 seconds. Q2D07 or Q2D08(not currently signed so it will only work with dev key units)
-=tbn=-
| Posted by: gnu on February 21, 2008 at 1:44 AM |
You can install build 656 without a developer key, and it contains the important firmware fix (Q2D07 firmware). 653 was mistakenly released without the firmware fix.
So, if you upgrade at all, please upgrade to 656. Build 656 will prevent your laptop from becoming a brick in the future (after the Q2D06 bug is triggered, it would take physical disassembly to get the laptop to work again). Installing the upgrade merely takes running one command, "/usr/sbin/olpc-update 656", at a time when you have good Internet access and AC power (like in an Internet cafe, or at home or work).
I suggest applying for a developer key, then immediately doing the 656 upgrade, then waiting for and installing the developer key.
Bloggers
Welcome to the Hacks Blog!
Categories
- Ajax
- Amazon
- Android
- AppleTV
- arduino
- Astronomy
- Baseball
- BlackBerry
- Blogging
- Body
- Cars
- Cryptography
- Data
- Design
- Education
- Electronics
- Energy
- Events
- Excel
- Excerpts
- Firefox
- Flash
- Flickr
- Flying Things
- Food
- Gaming
- Gmail
- Google Earth
- Google Maps
- Government
- Greasemonkey
- Hacks Series
- Hackszine Podcast
- Halo
- Hardware
- Home
- Home Theater
- iPhone
- iPod
- IRC
- iTunes
- Java
- Kindle
- Knoppix
- Language
- LEGO
- Life
- Lifehacker
- Linux
- Linux Desktop
- Linux Multimedia
- Linux Server
- Mac
- Mapping
- Math
- Microsoft Office
- Mind
- Mind Performance
- Mobile Phones
- Music
- MySpace
- MySQL
- NetFlix
- Network Security
- olpc
- Online Investing
- OpenOffice
- Outdoor
- Parenting
- PCs
- PDAs
- Perl
- Philosophy
- Photography
- PHP
- Pleo
- Podcast
- Podcasting
- Productivity
- PSP
- Retro Computing
- Retro Gaming
- Science
- Screencasts
- Security
- Shopping
- Skype
- Smart Home
- Software Engineering
- Sports
- SQL
- Statistics
- Survival
- TiVo
- Transportation
- Travel
- Ubuntu
- User Interface
- Video
- Virtualization
- Visual Studio
- VoIP
- Web
- Web Site Measurement
- Windows
- Windows Server
- Wireless
- Word
- World
- Xbox
- Yahoo!
- YouTube
Archives
- January 2009
- December 2008
- November 2008
- October 2008
- September 2008
- August 2008
- July 2008
- June 2008
- May 2008
- April 2008
- March 2008
- February 2008
- January 2008
- December 2007
- November 2007
- October 2007
- September 2007
- August 2007
- July 2007
- June 2007
- May 2007
- April 2007
- March 2007
- February 2007
- January 2007
- December 2006
- November 2006
- October 2006
- September 2006
Recent Posts
- Minty soldering jig
- Selecting row number in MySQL
- iPhone 3G software unlock
- Python on Android
- Controlling Sony camcorders with the Arduino
- Gradient text effect in CSS
- Retro gaming emulators that include (legal) ROMs?
- Das DereLicht - ham radio transmitter from a CFL bulb
- Using Google App Engine as a personal CDN
- Route-me - Open Source mapping library for iPhone
www.flickr.com
|






Leave a comment