查看: 939|回复: 0

手把手教你做树莓派的镜像包

[复制链接]

该用户从未签到

发表于 2016-3-2 08:55:09 | 显示全部楼层 |阅读模式
分享到:
由于我用的是OSX,而官方给的教程是在Linux下的操作,于是我就开我的虚拟机操作,但是发现读卡器在虚拟机里的识别有些问题,于是相当要自己做个镜像包。

第一步 建立空的镜像文件

dd if=/dev/zero of=new.img bs=2M count=512

因为ArchLinux本身不大,所以建立个1G的镜像文件足够了。

第二步 用fdisk对new.img进行分区操作

fdisk new.img


  • 输入n进入建立新分区
  • 输入p,选择分区为主分区
  • 回车,默认1
  • 回车,默认开始扇区位置
  • 输入 +100M (引导分区100M足够)
这时,第一个分区建立完毕,回到主目录,输入t,再输入c,设置引导分区类型为W95 FAT32(LBA)。(*刚开始烧了4遍,都引导树莓派失败了,就是因为忘记这一步操作了。。*)

  • 再输入n进入建立新分区
  • 输入p,选择分区为主分区
  • 回车,默认2
  • 回车,默认开始扇区位置
  • 回车,默认使用剩下所有空间。
这样两个分区搞定,输入w,保存分区表,并退出fdisk。

第三步 挂载new.img成为设备

kpartx -av new.img

之前的两步都是我会的,但是第三步,我着实的折腾了一番,只是知道可以把img挂成设备用,但是不知道怎么搞。
从网上搜索的结果,第一个搜索的是用losetup命令,但是出现的问题是,losetup是可以把镜像文件挂载为/dev/loop0,但是里面的分区一直在/dev中找不到。
后来搜索 如何挂载虚拟机镜像 这个关键词,才找到了这条命令。这条命令执行后,会有以下设备出现

  • /dev/loop0
  • /dev/mapper/loop0p1
  • /dev/mapper/loop0p2

第四步 格式化,挂载,并写入文件

mkfs.vfat /dev/mapper/loop0p1
mkdir /mnt/boot
mount /dev/mapper/loop0p1 /mnt/boot
mkfs.ext4 /dev/mapper/loop0p2
mkdir /mnt/root
mount /dev/mapper/loop0p2 /mnt/root
#去官网下载ARMv6 Raspberry Pi这个包
#下载后的文件是ArchLinuxARM-rpi-latest.tar.gz
#bsdtar 可能需要自己安装,yum install bsdtar即可
bsdtar -xpf ArchLinuxARM-rpi-latest.tar.gz -C /mnt/root/
#强制缓存写入
sync
#引导文件
mv /mnt/root/boot/* /mnt/boot/
#卸载
umount /mnt/boot/ /mnt/root/
kpartx -d new.img

这样一个新镜像就做好了,把new.img从虚拟机传出来,用dd直接写入SD卡,成功启动树莓派!
相关阅读:
手把手教你玩转树莓派
回复

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /1 下一条

手机版|小黑屋|与非网

GMT+8, 2024-4-24 15:27 , Processed in 0.118444 second(s), 17 queries , MemCache On.

ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

苏公网安备 32059002001037号

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.