不从SD卡启动树莓派2

时间:2022-02-02 05:48:15

本文你可以学到:

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啥的。

不从SD卡启动树莓派2

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

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

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

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