5.5G

From wikiPodLinux

This page keeps you informed about the development progress of iPodLinux for the 5.5G iPod.


Table of contents


Status

Loader 2

There is a development version of Loader 2 available that should run on all iPods (except the 2G nano and both Shuffle models). It is in SVN.

With iPodPatcher 0.7, you can install Loader 2. The new iPodPatcher does also support HFS+ formatted iPods (MacPods).

iPodLinux

We have had success installing iPodLinux on 5.5G 30GB iPods. A few people have had success running the linux kernel on their 80GB iPod but the kernel failed to mount the Root-FS. With a dirty hacked version of the latest kernel the 80GB iPod was able to mount the ext3 partition.

Rockbox

Rockbox supports the 5.5G ipod videos fine.

Development news

Note: Announcements in this section are about highly experimental software. This software is usually not stable at all. The code and instructions will be released when they are released. Please don't ask for installation instructions.

iPodLinux

2007-02-09: FAT32 disk reads appear to be working on the 5.5G 80GB iPod! Screenshot (http://de.dataghost.com/ipl/IMG_7746.jpg) Screenshot (http://de.dataghost.com/ipl/IMG_7747.jpg) Movie (http://de.dataghost.com/ipl/iPL-5.5G-80GB-FAT32.avi)

2007-02-10: The unreleased, experimental version of the kernel should now work on every iPod without modifications. The partitiontable should be properly detected automatically, and the FAT32 partition should be mountable, even on the 80GB iPod. dmesg (http://pastebin.ca/348180)

2007-02-13: HFS+ reads now also work on the 80GB iPod.

2007-02-16: I (DataGhost) was unable to get a fully-working and bugfree kernel done before my snowboarding week. This means that there won't be any updates in the next week, unless one of the other iPL devs fix it before I return. I will continue to work on the kernel, though, however not as much and without an internet connection.

2007-02-26: The correct FAT32 sectorsize is now autodetected on the 80GB iPod. All that's left now (hopefully) is testing it on other iPods and Macpods, and cleaning up the code.

2007-02-26: The experimental kernel should now work on any iPod, autodetecting the setup that needs to be used, without throwing any extra errors. A patch has been released to the right people and when enough testing/reviewing is done, the kernel will be released to the public. It was tested succesfully on a 5.5G 80GB Winpod, 5.5G 80GB Macpod and 4G 20GB Winpod.


Note: Announcements in this section are about highly experimental software. This software is usually not stable at all. The code and instructions will be released when they are released. Please don't ask for installation instructions.


The actual kernel

2007-03-06: It's the moment you've all been waiting for: The kernel which supports 80GB iPods is in CVS! After some thorough reviewing it was approved and merged. Until a nightly version is built, you can download the binary version here (http://de.dataghost.com/ipl/exp20070305/kernel-dg-all-iPods-improved-20070305.bin) (MD5: 1ba5acb69b613dc5749c596e73886318).
Thanks for your patience.


Downloads

You will need the following files to perform the steps below.

Loader2

  • Latest Loader2 binary (SVN rev. 1427) - This Loader works on all iPods except the 2G nano and both shuffle models. It also includes the getLoader2Args binary.

ipodpatcher

  • Windows32 (http://download.rockbox.org/bootloader/ipod/ipodpatcher/win32/ipodpatcher.exe)
  • MacOSX (universal binary) (http://download.rockbox.org/bootloader/ipod/ipodpatcher/macosx/ipodpatcher.dmg)
  • Linux32x86 (http://download.rockbox.org/bootloader/ipod/ipodpatcher/linux32x86/ipodpatcher)
  • Linux64amd64 (http://download.rockbox.org/bootloader/ipod/ipodpatcher/linux64amd64/ipodpatcher)
  • Source Code (http://svn.rockbox.org/viewvc.cgi/trunk/rbutil/ipodpatcher/) (How to use rockbox' svn (http://www.rockbox.org/twiki/bin/view/Main/UsingSVN))

Kernel

  • official kernel (http://ipodlinux.org/builds/) - Get the latest one.
    Note: Due to server issues the official kernels aren't available. Please use this one instead until the server is fixed.

Userland

First Time

Before you begin


Make sure your iPod is a 5.5G iPod.

30GB iPod: If Johnny Depp from Pirates of the Caribbean is on the front of your iPod packaging, it is a 5.5G. If Bono from U2 is on the packaging then it's a 5G iPod. (This is not always the case though; to be sure, check your serial number as described below.)

60GB iPod: This is a 5G iPod only.

80GB iPod: This is a 5.5G iPod only.

Another way to distinguish the Fifth Generation iPod (Late 2006, 5.5G) from the original Fifth Generation (5G) iPod is by comparing the last three digits of the serial number. The Fifth Generation iPod (Late 2006, 5.5G) serial number's last three digits will be one of the following: V9K, V9P, V9M, V9R, V9L, V9N, V9Q, V9S, WU9, WUA, WUB, WUC, and X3N. The Fifth Generation U2 Special Edition iPod (30 GB Late 2006) serial number's last three digits are W9G. Also, if your ipod has a search feature, it is a 5.5g.


You cannot use Windows for most of this guide. You have to use Linux. If you don't have Linux already installed on your PC, get a Linux live CD like Slax.

Locating Your iPod


Using the ipodpatcher utility


Note 1: Windows users require administrator rights for running iPodPatcher. Either re-login as administrator or open a command prompt running under an administrator account, by using the "Run As..." feature of Windows XP. Linux users may have to chmod +x (man chmod) ipodpatcher first but they have to run ipodpatcher as root as well.

Linux / MacOSX: Type:

./ipodpatcher --scan

Windows: Type:

ipodpatcher --scan

Note 2: The ipodpatcher commands used here are the same on every OS. The only difference is that Windows-Users must remove "./" in front of each ipodpatcher command.

You will get the following output:

ipodpatcher v0.7 - (C) Dave Chapman 2006-2007
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

[INFO] Scanning disk devices...

The next line is important. It contains the information where your iPod is located!

Windows:

[INFO] Ipod found - Video (aka 5th Generation) - disk device 1

Linux:

[INFO] Ipod found - Video (aka 5th Generation) - /dev/sda

MacOSX:

[INFO] Ipod found - Video (aka 5th Generation) - /dev/disk1

In the next steps you have to replace [device] with the location of your iPod.

Note: If you are using MacOSX the iPod has to be unmounted otherwise the --scan option will fail.

Mac OS X


Follow these steps if you are using Mac OS X; otherwise skip this step.

Attach your iPod to your Mac (using either USB or Firewire) and wait for iTunes to open. When iTunes opens, close it down. In your Terminal window, type the command mount and press enter. This will list all the disks (and other devices) that are ”mounted” on your computer. The last drive in the list should be your Ipod. For example:

/dev/disk1s3 on /Volumes/DAVE_S IPOD 1 (local, nodev, nosuid)

In order to install the ipod bootloader, you need to “unmount” this disk using the following command:

diskutil unmount /dev/disk1s3

replacing /dev/disk1s3 with the device name Mac OS X has assigned to your Ipod. This may take a few seconds, after which Mac OS X will say

Volume /dev/disk1s3 unmounted.

/dev/disk1s3 refers to the second partition on /dev/disk1 - remember /dev/disk1 for the next steps and replace [device] with it.

Note: It’s possible that iTunes will try to be “helpful” and remount your Ipod after you modify it with ipodpatcher. If this happens, you need to unmount it again using the above command.

Backup


Music and Other Stuff

By following these instructions you will format the harddrive of your iPod, meaning that you will lose all of your music, videos and other files stored on your iPod (WinPods only). So make a backup first! A simple file copy operation will suffice.

Firmware Partition:

Back up your Firmware partition. This will create a file named bootpartition.bin in the current folder; this file will be roughly 90 to 125 MB, depending on your iPod.

./ipodpatcher [device] -r bootpartition.bin

MBR:

It is not necessary to make a backup of the MBR, however it is recommended to make a backup as well.

Linux:
dd if=/dev/sdX of=ipod_mbr_backup bs=512 count=1
MacOSX:
dd if=/dev/diskX of=ipod_mbr_backup bs=512 count=1

Repartitioning the Hard Drive (WinPods only)


If you don't have a WinPod you can skip this step.


You must use fdisk in Linux (instructions below) or another partition editing utility to ensure that the following criteria are met:

  • partition 1 the "firmware partition" must start on cylinder 1 and should be about 90MB to 125.4MB big.
  • partition 3 the "iPodLinux partition" (ext2 or ext3) must physically start after the "firmware partition". Its size should be at least 100MB but can be larger to suit your needs.
  • partition 2 the "iTunes partition" must physically start after Partition3 and can fill the remaining space on the disk. This partition holds your music/videos to be accessed by the regular AppleOS.


This can be done by performing the following sequence in fdisk (Please note that you have to be root to do this.):

(Note: This is an example for the 80GB iPod but it works for 30GB iPod in the same way. An example for the partition table of a 30GB iPod is given below.)

linux:/home/[name]/ipodlinux # fdisk [device]
Note: sector size is 2048 (not 512)

The number of cylinders for this disk is set to 2432.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
   (e.g., DOS FDISK, OS/2 FDISK)

Command (m for help): p

Disk /dev/sda: 80.0 GB, 80026361856 bytes
255 heads, 63 sectors/track, 2432 cylinders
Units = cylinders of 16065 * 2048 = 32901120 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1           4      128394    0  Empty
/dev/sda2               5        2432    77497560    b  W95 FAT32 // Remember the underlined value

Command (m for help): d
Partition number (1-4): 2
 
Command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
p
Partition number (1-4): 3
First cylinder (1-2432, default 1): 5  //for 30GB this value has to be 4
Last cylinder or +size or +sizeM or +sizeK (5-2432, default 2432): 20

Command (m for help): p

Disk /dev/sda: 80.0 GB, 80026361856 bytes
255 heads, 63 sectors/track, 2432 cylinders
Units = cylinders of 16065 * 2048 = 32901120 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1           4      128394    0  Empty
/dev/sda3               5          20      514080   83  Linux

Command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
p
Partition number (1-4): 2
First cylinder (1-2432, default 1): 21
Last cylinder or +size or +sizeM or +sizeK (21-2432, default 2432): // Enter the previously remembered, underlined  
                                                                    // value, regardless of the default

Command (m for help): p

Disk /dev/sda: 80.0 GB, 80026361856 bytes
255 heads, 63 sectors/track, 2432 cylinders
Units = cylinders of 16065 * 2048 = 32901120 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1           4      128394    0  Empty
/dev/sda2              21        2432    77497560    b  Linux
/dev/sda3               5          20      514080   83  Linux

Partition table entries are not in disk order

Command (m for help): t
Partition number (1-4): 2
Hex code (type L to list codes): b
Changed system type of partition 2 to b (W95 FAT32)

Command (m for help): p

Disk /dev/sda: 80.0 GB, 80026361856 bytes
255 heads, 63 sectors/track, 2432 cylinders
Units = cylinders of 16065 * 2048 = 32901120 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1           4      128394    0  Empty
/dev/sda2              21        2432    77497560    b  W95 FAT32
/dev/sda3               5          20      514080   83  Linux


Partition table entries are not in disk order

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.

Note: If re-reading the partition table fails, attempt sfdisk -R /dev/sda or eject and remount your iPod.

For the 30GB iPod the unmodified partition table looks like this:
Disk /dev/sda: 30.0 GB, 30005821440 bytes 
255 heads, 63 sectors/track, 912 cylinders 
Units = cylinders of 16065 * 2048 = 32901120 bytes 
   Device Boot      Start         End      Blocks   Id  System 
/dev/sda1               1           3       96264    0  Empty 
/dev/sda2               4         912    29206170    b  W95 FAT32

After using fdisk as described above your partitontable could look like this:

   Device Boot      Start         End      Blocks   Id  System 
/dev/sda1               1           3       96264    0  Empty 
/dev/sda2              21         912    28659960    b  W95 FAT32 
/dev/sda3               4          20      546210   83  Linux

Format the Partitions (WinPods only)


If you don't have a WinPod you can skip this step.

Format the newly created partitions:

mkfs.vfat -F 32 -S 2048 /dev/sdX2
mkfs.ext3 /dev/sdX3


If mkfs complains that /dev/sdX2 is mounted do:

umount /dev/sdX2


Disable filesystem checks for the ext3 partition:

tune2fs -c 0 /dev/sdX3


If you get an error with mkfs.vfat

bash: mkfs.vfat: command not found 

try

mkdosfs -F 32 -S 2048 /dev/sdX2

instead.


Note: It seems that mkfs.vfat contains a bug (same belongs to mkdosfs since it is the same tool). However the linux kernel, the Apple Firmware, MacOSX, Linux and Windows aren't complaining about the filesystem being broken. The only issues you'll get is that recording in the Apple Firmare is broken and RockBox cannot handle the filesystem at all.

If you intend to use the recording feature of the Apple Firmware or want to install RockBox alongside with iPodLinux, then you have two choices on how to format the FAT32 partition instead of mksfs.vfat.

1. You can use mformat, which is part of the mtools (http://mtools.linux.lu/mtools-3.9.10.tar.gz) package (how to compile (http://mtools.linux.lu/faq.html#newbie)). To make mformat work, you have to add the following line in /etc/mtools.conf

drive i: file="/dev/sdX2"

Then in the Terminal run:

mformat -t [cylinders] -h 255 -s 63 -S 2048 -M 2048 -F i:

[cylinders]: Specifies the number of cylinders on the FAT32 partition. Which means take all the cylinders available and subtract the cylinders of the EXT3 partition and the Firmware partition. If you've used the examples above -t should be 2412 for 80GB iPods and 892 the 30GB one.


2. If you are using Windows and a Live CD which lacks gcc for compiling mformat, you can format the partition with Windows' formatter and return to the Live CD when you are finished with this step.

Please note that this doesn't work with 80GB iPods because Windows cannot create FAT32 filesystems bigger than 32GB.

  • Go to Computer Management by right-clicking on My Computer and selecting Manage.
  • Select Disk Management under the node Storage in the panel on the left.
  • Right-click the FAT32 partition on your iPod's disk entry on the right and selecting Format.
  • Ensure the File System is FAT32 and the Allocation unit size is Default, you can also check Perform a quick format.
  • Select OK.

Installing the Bootloader


In order to make your iPod dualboot AppleOS and iPodLinux you have to install a bootloader called Loader 2. You have to install the bootloader with the ipodpatcher utility. Don't try to use make_fw, for it will create a corrupted image.

ipodpatcher is a tool designed for installing the Rockbox bootloader on your iPod, but we can use it to install Loader 2 as well.

On Linux and MacOSX you have be root to use ipodpatcher or use the administrator account if you are doing this step on Windows.

Rename the loader binary to "loader.bin" and install the loader with the following command:

./ipodpatcher [device] -ab loader.bin

Note: MacOSX users may have to unmount their iPod first (diskutil unmount /dev/diskX).

Installing the Userland


A userland provides the folders the Kernel needs to find, configuration files and standard commandline tools. The version of the Userland you are going to install now doesn't contain the getLoader2Args binary but /etc/rc already has the ability to use it once it is installed.

WinPod:

mkdir /mnt/ipod (for the first time)
mount -w /dev/sdX3 /mnt/ipod
cd /mnt/ipod
tar xvzf /<path_to>/ipod_fs_220606.tar.gz

MacPod: To install the Userland, extract it to the root of your iPod. If you prefer using the terminal to install the Userland, do the following:

cd /Volumes/<Your_iPod>/
tar xvzf /<path_to>/ipod_fs_220606.tar.gz

Note: If you get errors about old timestamps, you can ignore them.

Now copy the getLoader2Args binary to /mnt/ipod/bin/ (Linux) or /Volumes/<Your_iPod>/bin/ (MacOSX) and make it executable (chmod +x).

Installing the Kernel


WinPod

Rename the Kernel to linux.bin and place it in the root of your ext3 partition.

MacPod

Extract the kernel and rename it to linux.bin. Place it in the root of your HFS+ partition.

Installing podzilla2 + Modules


Note: podzilla legacy (pz0) doesn't work on 5G and 5.5G iPods.

Official instructions:

Follow the steps on the podzilla page.

Quick instructions:

  • Copy the podzilla binary to /mnt/ipod/bin/ and the modules (directories with files in them called Module and *.mod.o) to /mnt/ipod/usr/lib/.
  • Make podzilla executable
chmod +x /mnt/ipod/bin/podzilla

Recreating the Folder Structure on the FAT32 partition


If you don't have a WinPod you can skip this step.

You must recreate the folder structure of the FAT32 partition; otherwise the Apple firmware won't be able to save its settings. Note that if you made a backup of the whole drive earlier, you may just copy-and-paste it back and skip this step.

mkdir /mnt/ipod1 (for the first time)
mount -w /dev/sdX2 /mnt/ipod1
cd /mnt/ipod1

mkdir Calendars
mkdir Contacts
mkdir Notes
mkdir iPod_Control
cd iPod_Control
mkdir Device
mkdir iTunes
mkdir Artwork
mkdir Music

If iTunes gives you the error message "The iPod cannot be updated. The required file is locked.", make sure that the iPod_Contol directory (and all its subdirectories) are writable.


Updating

Loader 2


Install the new Loader with ipodpatcher regardless of whether an old version of Loader 2 is installed. Remember to rename the new loader to loader.bin before entering the following command:

./ipodpatcher [device] -ab loader.bin

Kernel


To update the iPodLinux kernel, redo this step.

Userland


To update the Userland, redo this step.

podzilla + Modules


To update podzilla or to add modules, follow the steps on the podzilla page.


Restoring the iPod

MBR


Linux:

dd if=ipod_mbr_backup of=/dev/sdX

MacOSX:

diskutil unmount /dev/diskX
dd if=ipod_mbr_backup of=/dev/diskX

You have to format the Data Partition afterwards.

Firmware


Put the previously backed up firmware back to your iPod.

./ipodpatcher [device] -w bootpartition.bin

ipodpatcher is also able to delete the bootloader.

./ipodpatcher [device] -d

Note: MacOSX users may have to unmount their iPod first (diskutil unmount /dev/diskX).

If, for whatever reason, you don't have the backup of the Apple firmware, use the Restore feature in iTunes.

Support for Manual Installation

You may ask questions on the discussion page of this topic.



Installers

Mac OS X


Installer by Soulkatana62

Download the following file and follow the ReadMe in the iPodLinux folder. installer (http://www.box.net/public/z9bu4e3dc4)

This installer works for both 30GB 5.5G MacPod, and 80GB 5.5G MacPod as well as the slightly older model "5G".

WARNING: If you do not follow the ReadMe exactly, you could end up damaging any external drive plugged into your computer.


Windows


Installer by AriX

The iPodLinux Manager is an installer for WinPods that works on all iPods except 1G, 2G and nano 2G. It uses DataGhost's new installation method. This installer doesn't repartition and format the iPod. So all your music and files are safe.

Linux


Installer by DataGhost

This installer works on all Windows formatted iPods (WinPods) except 1G, 2G and nano 2G. This installer doesn't repartition and format the iPod. So all your music and files are safe.

Support for Installers

Please contact the creator of the installer or if available ask your questions on the installer's talk page, but NOT on the talk page of this article!

Retrieved from "http://ipodlinux.org/5.5G"
Views
Personal tools