硬盘启动树莓派3B
硬盘启动树莓派,防止TF卡损坏.步骤:
1 在PC上格式化硬盘:
sudo mkfs.ext4 /dev/sdc2 #以ext4格式化分区/dev/sdc2
sudo e2label /dev/sdc2 ROOT #设置标签为ROOT
sudo mount /dev/sdc2 /work/2T/ #挂载磁盘到目录/work/2T/
2挂载备份的磁盘镜像到目录:
参考https://www.linuxquestions.org/questions/linux-general-1/how-to-mount-img-file-882386/
计算挂载的offset.
如下所示我的镜像里有来两个分区,第二个分区为writable,他的offset计算为512×409600
$ fdisk -l RPI_dd_20201209.img
Disk RPI_dd_20201209.img: 14.9 GiB, 15931539456 bytes, 31116288 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x7fe6d224
Device Boot Start End Sectors Size Id Type
RPI_dd_20201209.img1 2048 409599 407552 199M c W95 FAT32 (LBA)
RPI_dd_20201209.img2 409600 30244830 29835231 14.2G 83 Linux
3 同步ROOT分区到磁盘:
4检查磁盘的UUID:
5 修改fstab
并增加 # 到原来的ROOT磁盘(此处指TF卡):6 修改 config:
在文件中发现写有:cmdline=nobtcmd.txt
, 所以 : 编辑 /boot/firmware/nobtcmd.txt
修改 root=LABEL="writable"
为 root=LABEL="ROOT"
, 最终内容如下:
net.ifnames=0 dwc_otg.lpm_enable=0 console=ttyAMA0,115200 console=tty1 root=LABEL="ROOT" rootfstype=ext4 elevator=deadline rootwait
7 重启,检查
在树莓派上插入TF卡,接入硬盘,开机后输入df -h
确认/挂在在我们的磁盘上, 如下:
说明:TF在树莓派上还是要的,但是不会被频繁写导致损坏.