iPodLinux on iPod nano

今天花點時間,終於把 iPodLinux 成功的安裝到我的 iPod nano 上了
透過 Dual Boot,除了可以使用原本的介面外,開機時按住 Rewind 即可進入 Linux 的作業系統中
有了 Linux 就可以做太多的事了

底下是我安裝的筆記:
參考文章
1.下載所需的檔案
http://ipodlinux.org/builds/ 下載 kernel 及 pozilla:
* 2005-11-12-kernel.bin.gz
* 2005-11-12-podzilla.gz

下載ARM cross-compiler package:
* arm_elf_stl.pkg.tar

下載 Official kernel release:
* uclinux-2.4.24-ipod2.tar.gz

下載 iPodLinux root filesystem:
* ipod_fs_040403.tar.gz

2.建立工作環境
$ mkdir iPodLinux
$ cd iPodLinux
$ mkdir Source
把剛剛所下載的檔案都放到 Source 目錄底下
$ mv ~/Desktop/*gz ~/Desktip/*.tar Source

3.CVS checkout ipodloader
$ cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/ipodlinux login
$ cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/ipodlinux co -P tools/ipodloader

4.Build loader
解開 arm_elf_stl.pkg.tar
先安裝 arm_elf_stl.pkg

$ cd tools/ipodloader
$ make

5.備份原來的系統
先用 mount 指令找出 iPod nano 所在的 disk (我的是在 disk1)

$ mkdir ../../BAK
$ dd if=/dev/disk1s2 of=../../BAK/ipod_apple_backup.iso

6.取出 Apple iPod firmware
$ ./make_fw -3 -o apple_os.bin -e 0 ../../BAK/ipod_apple_backup.iso

7.建立新的 firmware
$ gunzip ../../Source/2005-11-12-kernel.bin.gz
$ gunzip ../../Source/2005-11-12-podzilla.bin.gz

預設使用原本的系統:
$ ./make_fw -3 -o my_sw.bin -i apple_os.bin -l ../../Source/2005-11-12-kernel.bin loader.bin

預設使用 linux 作業系統:
$ ./make_fw -3 -o my_sw_linux.bin -l ../../Source/2005-11-12-kernel.bin -i apple_os.bin loader.bin

8.放入新的 firmware
$ dd if=my_sw.bin of=/dev/disk1s2

9.Copy the kernel modules onto the iPod nano
$ tar zxvf ../../Source/uclinux-2.4.24-ipod2.tar.gz
$ cp -R lib /Volumes/iPod\ nano/

10.安裝 root filesystem
$ tar zxvf ../../Source/ipod_fs_040403.tar.gz -C /Volumes/iPod\ nano/

11.Update root filesystem
$ tar zxvf ../../Source/uclinux-2.4.24-ipod2.tar.gz lib -C /Volumes/iPod\ nano/

12.更新 Podzilla
$ chmod 744 ../../Source/2005-11-12-podzilla
$ cp ../../Source/2005-11-12-podzilla /Volumes/iPod\ nano/sbin/podzilla

13.大功告成

然後再把 iDoom 放上去
也可以順利玩 iDoom 了

目前發現的問題,播放清單中文亂碼
因為沒有中文字型
去找到 Unicode.fnt 放進去 /usr/share/fonts/ 後
可以顯示中文了

iPodLinux
iPodLinux
iPodLinux

Comments are closed.

FireStats icon Powered by FireStats