找回密码
 立即注册
查看: 2964|回复: 8

[中级教程] 将树莓派的系统安装在U盘上

[复制链接]
发表于 2015-7-5 01:36:09 | 显示全部楼层 |阅读模式
本帖最后由 seth.yang 于 2015-7-30 17:25 编辑

好吧,标题有点哗众取宠,树莓派不能完全将系统安装在U盘的,至少/boot分区不行。我们说的其实将/分区(根分区)安装到U盘。这有什么优势呢?
1. U盘的效率比TF卡高
2. U盘的寿命比TF卡长
3. U盘的容量通常比TF卡大

这个教程需要:
1. 你需要有一定的linux系统的操作基础
2. 你需要一个linux桌面系统(推荐ubuntu,fedora或opensuse也行)
3. TF卡一张,读卡器一套,只要能放下/boot分区的容量即可 ( >= 60M,要求很低吧)
4. U盘,容量依赖于你选择的系统镜像,通常4G可以放下大多数的树莓派系统
5. 树莓派系统镜像

--------- Let's go ---------
我以Ubuntu MATE for pi 为目标系统,ubuntu kylin 15.04 为PC系统进行示例操作。
以下的所有操作都是在 ubuntu kylin上的。

首先,在ubuntu kylin上安装需要的工具软件
  1. sudo apt-get -y dosfstools dump parted kpartx
复制代码

OK,开始安装过程
  1. # 将目标系统镜像作为虚拟磁盘加载到 ubuntu kylin 系统上
复制代码
第一,第二行的引号不是单引号,而是反单引号,即键盘上1左边的那个
执行完上面的脚本后,我们得到2个变量:
$partBoot和$partRoot,下面的脚本和命令要用到
  1. # 准备操作目录
  2. sudo mkdir -p /mnt/{boot,root}
复制代码
插入TF卡和U盘,查看设备名称:
  1. sudo fdisk -l
复制代码
记住TF卡和U盘的设备名称,非常重要,因为我们要格式化他们。
把TF卡格式化成msdos格式,U盘格式化位ext4格式
  1. # 分区TF卡及格式化
复制代码
复制boot分区
  1. sudo cp -rfp /mnt/boot /media/boot
复制代码
最关键的一点,编辑cmdline.txt文件,让树莓派知道,root分区在哪里
  1. dwc_otg.lpm_enable=0 console=ttyAMA0,115200 console=tty1 <font color="#ff0000">root=/dev/mmcblk0p2</font> rootfstype=ext4 elevator=deadline rootwait
复制代码
将其中的 root=/dev/mmclk0p2改成U盘的设备号,通常是 /dev/sda1

对于root分区,我们要采用dump和restore的方式来复制
  1. cd /media/root
复制代码
等待完成
然后将TF卡和U盘插到树莓派上,加电启动,一个root分区在U盘上的树莓派系统就做好了
splash-1.jpg
uname-1.jpg
回复

使用道具 举报

发表于 2015-7-26 17:34:44 | 显示全部楼层
这么好的贴怎么没人关注
回复 支持 反对

使用道具 举报

发表于 2015-7-26 18:53:31 | 显示全部楼层
部份代码看不到,看到云里雾里的。
回复 支持 反对

使用道具 举报

发表于 2015-11-4 10:20:42 | 显示全部楼层
学习了xuexile
回复 支持 反对

使用道具 举报

发表于 2016-9-30 10:37:22 | 显示全部楼层
能从USB口启动?
回复 支持 反对

使用道具 举报

发表于 2018-3-15 15:42:32 | 显示全部楼层
好像不行吗,都没挂载U盘
回复 支持 反对

使用道具 举报

发表于 2018-7-15 01:10:19 | 显示全部楼层
学习了,谢谢楼主!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则