将SD卡用读卡器插入电 脑,umount后.
fdisk先删掉分区
tong_jiang@tj-laptop:/$ sudo fdisk /dev/sdb
[sudo] password for tong_jiang:
WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
switch off the mode (command 'c') and change display units to
sectors (command 'u').
Command (m for help): m
Command action
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition
l list known partition types
m print this menu
n add a new partition
o create a new empty DOS partition table
p print the partition table
q quit without saving changes
s create a new empty Sun disklabel
t change a partition's system id
u change display/entry units
v verify the partition table
w write table to disk and exit
x extra functionality (experts only)
Command (m for help): p
Disk /dev/sdb: 3963 MB, 3963617280 bytes
122 heads, 62 sectors/track, 1023 cylinders
Units = cylinders of 7564 * 512 = 3872768 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
Device Boot Start End Blocks Id System
/dev/sdb1 1 1023 3868955 83 Linux
Command (m for help): d
Selected partition 1
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
建立我们需要的分区
tong_jiang@tj-laptop:/$ sudo fdisk /dev/sdb
WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
switch off the mode (command 'c') and change display units to
sectors (command 'u').
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-1023, default 1): 3
Last cylinder, +cylinders or +size{K,M,G} (3-1023, default 1023): 252
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 253
Value out of range.
Partition number (1-4): 2
First cylinder (1-1023, default 1): 253
Last cylinder, +cylinders or +size{K,M,G} (253-1023, default 1023): 502
Command (m for help): n
Command action
e extended
p primary partition (1-4)
e
Partition number (1-4): 3
First cylinder (1-1023, default 1): 503
Last cylinder, +cylinders or +size{K,M,G} (503-1023, default 1023): 1012
Command (m for help): n
Command action
l logical (5 or over)
p primary partition (1-4)
p
Selected partition 4
First cylinder (1-1023, default 1): 1013
Last cylinder, +cylinders or +size{K,M,G} (1013-1023, default 1023):
Using default value 1023
Command (m for help): n
First cylinder (503-1012, default 503):
Using default value 503
Last cylinder, +cylinders or +size{K,M,G} (503-1012, default 1012): 1002
Command (m for help): n
First cylinder (1003-1012, default 1003):
Using default value 1003
Last cylinder, +cylinders or +size{K,M,G} (1003-1012, default 1012):
Using default value 1012
Command (m for help):
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
完成后打印下我目前的分区
Device Boot Start End Blocks Id System
/dev/sdb1 3 252 945500 83 Linux
/dev/sdb2 253 502 945500 83 Linux
/dev/sdb3 503 1012 1928820 5 Extended
/dev/sdb4 1013 1023 41602 83 Linux
/dev/sdb5 503 1002 1890969 83 Linux
/dev/sdb6 1003 1012 37789 83 Linux
符合freescale的imx51芯片Android的要求,见下图.
Use fdisk to create partition table on SD card with below partitions. See "SD layout with uboot " for SD layout.
Partition Type/Index | Device Node | File System | Content |
Primary 1 | /dev/sdb1 | VFAT. Mount as /sdcards | Media file storage |
Primary 2 | /dev/sdb2 | EXT3. Mount as /system | Android system bin/libs |
Extended 3 | /dev/sdb3 | N/A. Extended partition | N/A |
Logic partition in Extended | /dev/sdb5 | EXT3. Mount as /data | Android data (e.g. installed app) |
Logic partition in Extended | /dev/sdb6 | EXT3. Mount as /cache | Android cache |
Primary 4 | /dev/sdb4 | EXT3. Mount as / in recovery mode | Root file system for recovery mode |
Boot from SD using uboot
Verify that uboot has been programmed into SD. See "Program bootloader into SD"
The layout of the SD card is showed in below. /data /cache are writable and can be factory reset . In normal boot mode, the root file system is mounted from uRamdisk . In recovery mode, the root file system is mounted from the RECOVERY partition.
将media分区格式化为 fat32格式
tong_jiang@tj-laptop:/$ sudo fdisk /dev/sdb
WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
switch off the mode (command 'c') and change display units to
sectors (command 'u').
Command (m for help): t
Partition number (1-6): 1
Hex code (type L to list codes): l
0 Empty 24 NEC DOS 81 Minix / old Lin bf Solaris
1 FAT12 39 Plan 9 82 Linux swap / So c1 DRDOS/sec (FAT-
2 XENIX root 3c PartitionMagic 83 Linux c4 DRDOS/sec (FAT-
3 XENIX usr 40 Venix 80286 84 OS/2 hidden C: c6 DRDOS/sec (FAT-
4 FAT16 <32M 41 PPC PReP Boot 85 Linux extended c7 Syrinx
5 Extended 42 SFS 86 NTFS volume set da Non-FS data
6 FAT16 4d QNX4.x 87 NTFS volume set db CP/M / CTOS / .
7 HPFS/NTFS 4e QNX4.x 2nd part 88 Linux plaintext de Dell Utility
8 AIX 4f QNX4.x 3rd part 8e Linux LVM df BootIt
9 AIX bootable 50 OnTrack DM 93 Amoeba e1 DOS access
a OS/2 Boot Manag 51 OnTrack DM6 Aux 94 Amoeba BBT e3 DOS R/O
b W95 FAT32 52 CP/M 9f BSD/OS e4 SpeedStor
c W95 FAT32 (LBA) 53 OnTrack DM6 Aux a0 IBM Thinkpad hi eb BeOS fs
e W95 FAT16 (LBA) 54 OnTrackDM6 a5 FreeBSD ee GPT
f W95 Ext'd (LBA) 55 EZ-Drive a6 OpenBSD ef EFI (FAT-12/16/
10 OPUS 56 Golden Bow a7 NeXTSTEP f0 Linux/PA-RISC b
11 Hidden FAT12 5c Priam Edisk a8 Darwin UFS f1 SpeedStor
12 Compaq diagnost 61 SpeedStor a9 NetBSD f4 SpeedStor
14 Hidden FAT16 <3 63 GNU HURD or Sys ab Darwin boot f2 DOS secondary
16 Hidden FAT16 64 Novell Netware af HFS / HFS+ fb VMware VMFS
17 Hidden HPFS/NTF 65 Novell Netware b7 BSDI fs fc VMware VMKCORE
18 AST SmartSleep 70 DiskSecure Mult b8 BSDI swap fd Linux raid auto
1b Hidden W95 FAT3 75 PC/IX bb Boot Wizard hid fe LANstep
1c Hidden W95 FAT3 80 Old Minix be Solaris boot ff BBT
1e Hidden W95 FAT1
Hex code (type L to list codes): c
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
分区完毕后构建文件系统
执行下列命令
# mkfs.vfat /dev/sdb1
# mkfs.ext3 /dev/sdb2
# mkfs.ext3 /dev/sdb4
# mkfs.ext3 /dev/sdb5
# mkfs.ext3 /dev/sdb6
tong_jiang@tj-laptop:/$ sudo mkfs.vfat /dev/sdb1
mkfs.vfat 3.0.7 (24 Dec 2009)
tong_jiang@tj-laptop:/$ sudo mkfs.ext3 /dev/sdb2
mke2fs 1.41.11 (14-Mar-2010)
文件系统标签=
操作系统:Linux
块大小=4096 (log=2)
分块大小=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
59136 inodes, 236375 blocks
11818 blocks (5.00%) reserved for the super user
第一个数据块=0
Maximum filesystem blocks=243269632
8 block groups
32768 blocks per group, 32768 fragments per group
7392 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376
正在写入inode表: 完成
Creating journal (4096 blocks): 完成
Writing superblocks and filesystem accounting information: 完成
This filesystem will be automatically checked every 37 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
同理完成各分区的文件系统构建.
完成文件系统构建后,我们可以 将编译后android framwork img 用dd弄进去了.