不从SD卡启动树莓派2

本文你可以学到:

berryboot使用,kali安装,开挂的MobaXterm,以及关于通过LABEL和UUID挂载的小技巧。

本文默认你有一定Linux基础,同时针对刚入门的水平,因为这是我的折腾记录。不懂可以留言或者email。

首先要明确的是现在暂时没有完全脱离sd卡的方法,因为Pi是默认从SD卡启动的。只是实现了将系统放在别的地方(U盘,硬盘,局域网),但是还是要有一张sd卡(可以很小,64M以内都可以)作为/boot来引导,无法完全做到从U盘启动,但是启动后可以拔掉SD卡运行。

我只有一张16G的SD卡,其他三张是64M,256M和1G,装不下比较大的系统(也有超小的系统比如minibian,picore等)。正好手头又有从老姐那讹的了一个卡片式U盘,就用来配合64M的卡启动呗,装上Kali树莓派定制版(下载页面:http://dwz.cn/JKYNT,Pi2专用:http://images.offensive-security.com/ARM/kali-1.1.0-rpi2.img.xz)。

而且在U盘分区上可以一个分区放一个系统,在SD卡上选择启动哪个分区。另外可以从外挂硬盘启动,有反馈讲写操作时CPU占用率会降低,速度应该也会快点,此前我挂了个快报废的笔本硬盘当NAS+下载机,现在也可以把系统直接装在硬盘上。可以从网络NFS启动,比如http://dwz.cn/JlBNK

树莓派实验室上的文章使用了Uboot,比较麻烦。这里使用BerryBoot并且支持无显示器操作。重新参考了一些文章,记录如下。

1.如果已经有SD卡启动的Pi,那么把U盘插上去,输入

sudo fdisk –l

看看Pi能不能识别这个U盘,不能识别下一步还咋启动哩。如果失败可以尝试自己编译内核支持,暂时我还不会弄,自行百谷虎。

2.格式化小sd卡为fat32格式,把下载得到的berryboot解压到sd卡根目录。因为我没有显示器,参考官网文档http://dwz.cn/JL2ye

在sd卡cmdline.txt里面添加

vncinstall ipv4=192.168.88.88/255.255.255.0/192.168.88.1

更改电脑有线网卡IP为192.168.88.1/255.255.255.0,网关留空。

注意a.采用默认ip,不要自行更改;b.添加的内容和原来的内容在同行,不要另起一行。c.vnc可以只输入上述ip地址,不加display号,不行的话默认display号为0,即5901。d.使用wlan的话参考链接。

3.如果要添加berryboot仓库里没有的镜像,比如kali,需要对镜像进行修改(删除boot分区,也就是你烧录之后Windows里面能看到的分区)。参考:

http://dwz.cn/JLbKT  需要在现有系统里面安装kpartx和squashfs-tools这两个软件包,其他的直接复制官网命令就可以了。

4.修改好之后把定义好的镜像放到另一个U盘或者啥上面,反正不在待烧录的U盘就行。插上SD卡,网线和U盘,打开vnc,连上树莓派berryboot,按操作来就行了。装好之后插回原来系统的sd卡,再修改U盘里系统的interfaces文件,保证能连到电脑方便操作就行了。当然最推荐的还是usb2ttl,10块钱包邮,好用得很。

5.kali 1.1.0使用的是xfce4桌面环境,设置MobaXterm,就可以直接登陆kali图形界面了~不需要vnc,xrdp啥的。

#=====使用berryboot了,以下内容可不看======#

PS:kali进不了终端,试试dietpi

2.先把需要启动的镜像烧到U盘里(用win32diskimager或者dd烧录img,其他格式可能是压缩包,需要解压)方法请参考富大腿的视频解说(没配音差评!)顺便帮富大腿宣传一下她(醒目!)的社团,叫什么我也不知道,反正这不是重点。

2.

3.可以识别的话修改/boot/cmdline.txt,把root=/dev/mmcblk0p2改成你看到的,比如我是sda2,更好的方法是设置LABEL或者UUID(通过blkid命令查看),例如root=LABEL=FuDatui或者root=UUID=CB99-9527(“先生您好,我是工号9527”),这样即使有移动硬盘也不怕,当然可以事后挂载比如mount -a,相当于再次fstab。注意【rootwait】参数,这使得启动过程会等待root分区识别后后才继续。

#========忽视完毕============#

参考1:

http://www.redrobe.com/mike/boot-raspberry-pi-from-a-16mb-sd-card/

http://www.engineersgarage.com/embedded/raspberry-pi/how-to-load-ubuntu-on-raspberry-pi

http://raspberrypi.stackexchange.com/questions/1187/boot-from-external-usb-stick-drive

http://raspberrypi.stackexchange.com/questions/757/boot-from-usb-hard-disk?rq=1

参考2(berryboot):

http://www.berryterminal.com/doku.php/berryboot

LABEL和UUID:

http://blog.sina.com.cn/s/blog_54f82cc201011j8c.html

http://blog.sina.com.cn/s/blog_71f3890901013dl2.html

http://www.firekyrin.com/archives/3162.html

更改LABEL不同文件系统所用工具不同,FAT和NTFS可以直接在Windows下修改,

e2label –>ext234。个人建议LABEL,因为有些UUID太长了。在fstab里面修改就不怕sda变sdb什么的了。

时间: 2024-10-09 16:13:25

不从SD卡启动树莓派2的相关文章

向SD卡写入树莓派的操作系统

用到的工具: Win32 Disk Imager: sd卡读卡器  Raspbian操作系统镜像:下载地址 步骤1:下载操作系统的镜像 树莓派基金会的网站罗列了一些树莓派可以使用的操作系统,其中Raspbian是官方支持的操作系统,它是基于Linux的Debian发行版.如果没有特殊要求,一般都会使用Raspbian. 操作系统文件将近有1GB的大小,在这段空闲里去喝口茶吧. 下载完成后还需要解压成img文件,这有3GB左右. 步骤2:下载安装Win32 Disk Imager 上面给出了Win

制作SD(8G)卡Linux镜像,使得ZC706开发板可以从SD卡启动进入Linux系统

转自网络,供学习记录使用,红色部分是我实验时,这篇文章和网站稍有出入的地方. 目的:制作SD(8G)卡Linux镜像,使得ZC706开发板可以从SD卡启动进入Linux系统 在http://wiki.analog.com/resources/eval/user-guides/ad-fmcomms2-ebz/quickstart/zynq(姑且把这个链接成为链接1吧)链接中找到 图1 点击绿色字体的链接,下载镜像原始文件.这里有不同时期的版本,本说明中选择 图2 下载的原始文件为:2014_R2-

[i.MX6q]i.MX6q处理器,linux操作系统平台搭建 从SD卡启动系统

转自:http://www.07net01.com/linux/2016/02/1232094.html 参照1:http://blog.csdn.net/girlkoo/article/details/44536447 参照2:http://blog.csdn.net/girlkoo/article/details/44626011 2017-02-04 22:52:54 目录: 本文的目的是,完成一个从sd卡启动的一个纯净版的linux系统移植,其实就是一个很裸的根文件系统,后期有空会试着把

嵌入式Linux裸机开发(十)——SD卡启动

嵌入式Linux裸机开发(十)--SD卡启动 存储设备分类: 磁存储设备:软盘.硬盘.光盘.CD.磁带 Flash:NandFlash.NorFlash 缺点:时序复杂,无坏块处理机制,接口不统一 NandFlash:MLC(可靠性差,容量大).SLC(可靠性高.容量小) 扩展卡式Flash:SD卡.MMC卡.MicroSD(TF卡) 内部为NnadFlash存储颗粒,外部封装了接口,接口标准统一.通用. 缺点:频繁使用导致卡槽接触不可靠 iNand.MoviNand.eSSD: 内部为Nand

Samsung_tiny4412(笔记)-->linux 3.5,U-Boot,Busybox,SD卡启动环境搭建

/*********************************************************************************** * * Samsung_tiny4412(笔记)-->linux 3.5,U-Boot,Busybox,SD卡启动环境搭建 * * 声明: * 1. 以下所有的shell命令都是在root权限下运行的; * 2. minicom(U-Boot)指的是用minicom连接开发板作为U-Boot的终端; * 3. 文中在需要往文件中

解剖嵌入式设备开发时以SD卡启动时SD卡的存储结构(以三星exynos4412为例)

目前面对高性能产品的嵌入式开发中,用SD卡来代替以往的JLINK显得备受大家喜欢,而且MCU厂家也对以SD卡启动的支持度越来越大,反而对JLINK不在那么重视(不过依旧保留着).一些以开发开发板的公司在提供他们自身的bootloader(只是其中一部分是他们自身的代码而已,下面我会讲到这一点)时其原码并不对外公开,不过大家喜欢的u-boot的原码是开源的,可是像友善之臂他们的那样,还得通过他们的superboot来把u-boot二进制代码载入到LAND FLASH,EMMC等这类外部rom设备中

6410开发板sd卡启动时烧写u-boot.bin以及u-boot-spl-16k.bin步骤

参考文档:<SMDK6410_IROM_APPLICATION NOTE_REV 1.00>(可以从这里下载到> 参考博客:Tekkaman的博文<u-boot-2010.09 for mini6410 (add MMC support)> <Tiny6410_SMDK从SD卡直接启动裸板代码> <使uboot支持S3C6410的SD启动> <S3C6410开发全纪录(一)<还原SD卡启动的真相>> sd卡启动布局方式(假定一个

制作SD卡启动自己编译的uboot.bin

README for FriendlyARM Tiny4412 -----------------------------------------------------1. Build uboot a) 安装好toolchain (arm-linux-gcc-4.5.1-v6-vfp-20120301.tgz)并设置好 环境变量PATH,保证可以正常使用. b) 解压 uboot_tiny4412-20130729.tgz 并进入相应的目录 tar xzf uboot_tiny4412-201

SBC-7109-454 sd卡启动系统参数设置

首先直接记录结果 在u-boot 中修改参数 #define AUTO_UPDATESYS */ 直接把这个参数注释掉. 这个参数是原来用来升级nor flash 启动系统设置的一个参数,也就是说, 这个参数的存在是为了升级原来nor flash的系统. 注释掉以后,插入sd卡启动便不会自动在u-boot阶段烧写系统到nor flash上面. 注释完以后,看到下面的参数 1 #define CON \ 2 "console=ttyO0,115200n8\0" \ 3 "opt