本文你可以学到:

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什么的了。

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

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

    这是 meelo 原创的 玩转树莓派 系列文章 用到的工具: Win32 Disk Imager: sd卡读卡器  Raspbian操作系统镜像:下载地址 步骤1:下载操作系统的镜像 树莓派基金会的网 ...

  2. am335x sd卡启动开启识别emmc kernel 上的改动

    sbc 7109-454 sd 卡启动qt系统后一直识别不了  emmc 也就是mmc1口, 一开始以为是硬件初始化的问题,后面又以为是io口复用,最后才知道是根本没有注册mmc1设备. 更改下面的代 ...

  3. am335x sd卡启动系统参数设置

    首先直接记录结果 在u-boot 中修改参数 #define AUTO_UPDATESYS */ 直接把这个参数注释掉. 这个参数是原来用来升级nor flash 启动系统设置的一个参数,也就是说, ...

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

    /*********************************************************************************** * * linux 3.5,U ...

  5. Exynos4412从SD卡启动的简单网络文件系统制作

    Exynos4412从SD卡启动的简单网络文件系统制作 1. 简介 嵌入式系统能够在开发板上正常运行,需要先进行系统配置,一个完整的嵌入式系统应该包含的几个部分::uboot,kernel,rootf ...

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

    README for FriendlyARM Tiny4412 -----------------------------------------------------1. Build uboot ...

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

    转自:http://www.07net01.com/linux/2016/02/1232094.html 参照1:http://blog.csdn.net/girlkoo/article/detail ...

  8. imx6 android SD卡启动

    工作中需要将imx6的android系统从SD卡启动,所以就分析了MfgTool中的脚本,分析android的分区情况,并尝试自己操作,竟然成功了,记录于此. 参考文档 http://www.kanc ...

  9. ZYNQ的Linux Linaro系统镜像制作SD卡启动

    ZYNQ的Linux Linaro系统镜像制作SD卡启动 0. 概述 ZYNQ生成uboot的时候和正常的ARM设备不太一样,ZYNQ属于二次辅助启动uboot然后由uboot启动内核,大概意思就是 ...

随机推荐

  1. SQL Server:触发器详解

    1. 概述 触发器是一种特殊的存储过程,它不能被显式地调用,而是在往表中插入记录﹑更新记录或者删除记录时被自动地激活. 所以触发器可以用来实现对表实施复杂的完整性约束. 2. 触发器的分类 SQL S ...

  2. android 获取应用的当前版本号&获取当前android系统的版本号

    (转自:http://www.cnblogs.com/qsl568/archive/2012/03/14/2395636.html) 获取当前应用的版本号: private String getVer ...

  3. Windows10的革命之路-全新UWP开发平台

    众所周知,最近几年,微软一直在操作系统上进行统一化的尝试.第一次尝试的产品——Windows 8/8.1操作系统完全谈不上成功.请看下图: 我个人认为,这并不意味着操作系统统一化的策略是错误的,只能算 ...

  4. 直播时代--IOS直播客户端SDK,美颜直播【开源】

    当前视频直播非常火爆,手机端的视频直播也非常火爆,PGC.UGC的视频直播门槛都降低了很多. 本文介绍一个:IOS 客户端直播的SDK,代码完全开源. 直播时代:让IOS普通开发者一天内做出一个RTM ...

  5. 架构实例之Demo_JSP

    架构实例之Demo_JSP 1.开发工具和开发环境       开发工具: MyEclipse10,JDK1.6.0_13(32位),Tomcat7.0(32位),mysql5.7.13 开发环境:W ...

  6. 【2016-11-1】【坚持学习】【Day16】【MongoDB】【复制集 分片】

    Mongodb 两种集群方式 复制集 通常是一主一从,一主多从 mongodb的复制至少需要两个节点.其中一个是主节点,负责处理客户端请求,其余的都是从节点,负责复制主节点上的数据. mongodb各 ...

  7. 解决“只能通过Chrome网上应用商店安装该程序”的方法

    摘要 : 最近有些用户反映某个Chrome插件在安装的时候,提示"只能通过Chrome网上应用商店安装该程序",为了解决这一问题,Chrome插件网带来了相关的解决方法. 某些用户 ...

  8. HDU3555 Bomb[数位DP]

    Bomb Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/65536 K (Java/Others)Total Submi ...

  9. c#导出bugfree3.0的数据到禅道

    环境:vs2012MVC4项目,mysql server5.6 准备:bugfree的数据库导出后.sql文件,禅道7.1的数据库文件 基本过程:这是个笨办法,也没有优化过代码,导入数据时候比较慢.禅 ...

  10. vtk工作流

    要理解VTK的工作原理,首先应明确几个类型: 1.vtkSource(数据源)   这个就好比一个剧本里面的角色,让演员知道要演的是什么人物. 数据源有:vtkConeSource,vtkSphere ...