admin 管理员组

文章数量: 887021

有些板子是没法离开TF卡的,但是又想用USB硬盘或者别的啥启动系统,于是有了下文

用了块 orangepioneplus 做例子

以下不是最简,反正是能用

先在TF卡系统上弄几个目录出来

root@orangepioneplus:~# cd /
root@orangepioneplus:/# mkdir root_ssd
root@orangepioneplus:/# mkdir home_ssd
root@orangepioneplus:/# mkdir var_ssd
root@orangepioneplus:/# mkdir boot_sd

我是使用了LVM对USB外挂的SSD进行了处理,日后NVME的SSD还能更便宜。。。

然后挂载分好区的ssd / 到一个目录 我是root_ssd

然后把TF上的文件都拷过去


  cp -a armbian.key  root_ssd/
cp -a bin root_ssd/
cp -a  boot  root_ssd/
cp -a boot_sd root_ssd/
cp -a dev root_ssd/
 cp -a etc  root_ssd/
 cp -a home root_ssd/
 cp -a home_ssd  root_ssd/
cp -a lib  root_ssd/
cp -a lost+found  root_ssd/
cp -a media root_ssd/
cp -a  mnt  root_ssd/
cp -a opt root_ssd/
cp -a root  root_ssd/
cp -a  run root_ssd/
cp -a  sbin  root_ssd/
cp -a selinux  root_ssd/
cp -a srv root_ssd/
 cp -a usr   root_ssd/
cp -a var  root_ssd/
 cp -a var_ssd root_ssd/

运行下blkid 看看uuid每个人的值都不同的,不要直接抄

blkid
/dev/zram0: UUID="0a4dd118-a045-4900-ae99-bd7e754901c1" TYPE="swap"
/dev/mmcblk0p1: LABEL="armbian_root" UUID="f975a030-5cf4-4fa0-8c24-9c5bb6e68e59" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="34d3f673-01"
/dev/sda1: UUID="9e7h8p-K21k-k17V-mzKc-J3E2-KExA-yp6r10" TYPE="LVM2_member" PARTUUID="b0a50b31-3b58-1746-89a7-022eb5f85a97"
/dev/mapper/vg_nvme-lv--var: UUID="14815820-4e79-4739-81a6-0c9a4d214eb2" BLOCK_SIZE="512" TYPE="xfs"
/dev/mapper/vg_nvme-lv--root: UUID="02fe0c7c-18c5-45e1-86d5-5e35638b5fd2" BLOCK_SIZE="512" TYPE="xfs"
/dev/mapper/vg_nvme-lv--home: UUID="2aed7fce-dd43-4a55-b212-9583ed144155" BLOCK_SIZE="512" TYPE="xfs"
/dev/zram1: LABEL="log2ram" UUID="bfbf62c6-b19e-4e7c-ba7c-d200e2ac8a54" BLOCK_SIZE="4096" TYPE="ext4"

修改TF卡上的 /boot/armbianEnv.txt 改如下俩地方 然后 这时候重启理论上就从USB设备启动了

rootdev=UUID=02fe0c7c-18c5-45e1-86d5-5e35638b5fd2
rootfstype=xfs

但是!这么改 重启后boot也是显示的是usb设备上的boot,那个是没用的,因为引导的时候用的是tf卡上的!

于是 继续 把tf卡上的boot 映射到 /boot

UUID=f975a030-5cf4-4fa0-8c24-9c5bb6e68e59 /boot_sd ext4 defaults,noatime,commit=600,errors=remount-ro 0 1
/boot_sd/boot  /boot           none    bind

 相对完整的/etc/fstab如下


UUID=f975a030-5cf4-4fa0-8c24-9c5bb6e68e59 /boot_sd ext4 defaults,noatime,commit=600,errors=remount-ro 0 1
/boot_sd/boot  /boot           none    bind
UUID=02fe0c7c-18c5-45e1-86d5-5e35638b5fd2 /  xfs defaults,noatime  0 1
UUID=14815820-4e79-4739-81a6-0c9a4d214eb2 /var  xfs defaults,noatime  0 1
UUID=2aed7fce-dd43-4a55-b212-9583ed144155 /home  xfs defaults,noatime  0 1

自此 OK

这个就可以随意改改改了,想从哪里启动就改哪里。。。。。 比如内置NVME但是不能启动的,比如网络能起来NFS启动的 比如 使用USB外接 硬盘 盘柜 U盘的。。。

我的小板子最后的挂载情况

root@orangepioneplus:~# df -m
Filesystem                   1M-blocks  Used Available Use% Mounted on
udev                               422     0       422   0% /dev
tmpfs                               99     5        95   5% /run
/dev/mapper/vg_nvme-lv--root     20470  2826     17645  14% /
tmpfs                              493     1       493   1% /dev/shm
tmpfs                                5     1         5   1% /run/lock
tmpfs                              493     1       493   1% /tmp
/dev/mmcblk0p1                   29158  1511     27317   6% /boot_sd
/dev/mapper/vg_nvme-lv--var      51175   817     50359   2% /var
/dev/mapper/vg_nvme-lv--home     30705   291     30415   1% /home
/dev/zram1                          49     5        41  10% /var/log
tmpfs                               99     0        99   0% /run/user/1000
root@orangepioneplus:~# mount -l
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
udev on /dev type devtmpfs (rw,nosuid,relatime,size=431320k,nr_inodes=107830,mode=755)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
tmpfs on /run type tmpfs (rw,nosuid,nodev,noexec,relatime,size=100872k,mode=755)
/dev/mapper/vg_nvme-lv--root on / type xfs (rw,noatime,attr2,inode64,logbufs=8,logbsize=32k,noquota)
securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
tmpfs on /run/lock type tmpfs (rw,nosuid,nodev,noexec,relatime,size=5120k)
cgroup2 on /sys/fs/cgroup type cgroup2 (rw,nosuid,nodev,noexec,relatime,nsdelegate,memory_recursiveprot)
pstore on /sys/fs/pstore type pstore (rw,nosuid,nodev,noexec,relatime)
bpf on /sys/fs/bpf type bpf (rw,nosuid,nodev,noexec,relatime,mode=700)
systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=29,pgrp=1,timeout=0,minproto=5,maxproto=5,direct)
hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime,pagesize=2M)
mqueue on /dev/mqueue type mqueue (rw,nosuid,nodev,noexec,relatime)
debugfs on /sys/kernel/debug type debugfs (rw,nosuid,nodev,noexec,relatime)
sunrpc on /run/rpc_pipefs type rpc_pipefs (rw,relatime)
fusectl on /sys/fs/fuse/connections type fusectl (rw,nosuid,nodev,noexec,relatime)
configfs on /sys/kernel/config type configfs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /tmp type tmpfs (rw,nosuid,relatime)
/dev/mmcblk0p1 on /boot_sd type ext4 (rw,noatime,errors=remount-ro,commit=600) [armbian_root]
/dev/mmcblk0p1 on /boot           type ext4 (rw,noatime,errors=remount-ro,commit=600) [armbian_root]
/dev/mapper/vg_nvme-lv--var on /var type xfs (rw,noatime,attr2,inode64,logbufs=8,logbsize=32k,noquota)
/dev/mapper/vg_nvme-lv--home on /home type xfs (rw,noatime,attr2,inode64,logbufs=8,logbsize=32k,noquota)
/dev/mapper/vg_nvme-lv--var on /var/log.hdd type xfs (rw,noatime,attr2,inode64,logbufs=8,logbsize=32k,noquota)
/dev/zram1 on /var/log type ext4 (rw,relatime,discard) [log2ram]
tmpfs on /run/user/1000 type tmpfs (rw,nosuid,nodev,relatime,size=100868k,nr_inodes=25217,mode=700,uid=1000,gid=1000)
root@orangepioneplus:~#

本文标签: 移动硬盘 Armbian TF USB