接下来开始准备烧写linux内核、设备树、rootf
首先是确认在Linux下,SD卡的设备名称。在没接入SD卡的情况下,Linux终端中输入:
$ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT loop0 7:0 0 4K 1 loop /snap/bare/5 loop1 7:1 0 63.3M 1 loop /snap/core20/1828 loop2 7:2 0 73.9M 1 loop /snap/core22/858 loop3 7:3 0 12.3M 1 loop /snap/snap-store/959 loop4 7:4 0 73.9M 1 loop /snap/core22/864 loop5 7:5 0 91.7M 1 loop /snap/gtk-common-themes/1535 loop6 7:6 0 485.5M 1 loop /snap/gnome-42-2204/126 loop7 7:7 0 63.5M 1 loop /snap/core20/2015 loop8 7:8 0 346.3M 1 loop /snap/gnome-3-38-2004/119 loop9 7:9 0 46M 1 loop /snap/snap-store/638 loop10 7:10 0 49.9M 1 loop /snap/snapd/18357 loop11 7:11 0 349.7M 1 loop /snap/gnome-3-38-2004/143 sda 8:0 0 500G 0 disk ├─sda1 8:1 0 512M 0 part /boot/efi ├─sda2 8:2 0 1K 0 part └─sda5 8:5 0 499.5G 0 part / sr0 11:0 1 1024M 0 rom
在接入SD卡设备的情况下输入:
$ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT loop0 7:0 0 4K 1 loop /snap/bare/5 loop1 7:1 0 63.3M 1 loop /snap/core20/1828 loop2 7:2 0 73.9M 1 loop /snap/core22/858 loop3 7:3 0 12.3M 1 loop /snap/snap-store/959 loop4 7:4 0 73.9M 1 loop /snap/core22/864 loop5 7:5 0 91.7M 1 loop /snap/gtk-common-themes/1535 loop6 7:6 0 485.5M 1 loop /snap/gnome-42-2204/126 loop7 7:7 0 63.5M 1 loop /snap/core20/2015 loop8 7:8 0 346.3M 1 loop /snap/gnome-3-38-2004/119 loop9 7:9 0 46M 1 loop /snap/snap-store/638 loop10 7:10 0 49.9M 1 loop /snap/snapd/18357 loop11 7:11 0 349.7M 1 loop /snap/gnome-3-38-2004/143 sda 8:0 0 500G 0 disk ├─sda1 8:1 0 512M 0 part /boot/efi ├─sda2 8:2 0 1K 0 part └─sda5 8:5 0 499.5G 0 part / sdb 8:16 1 14.9G 0 disk └─sdb1 8:17 1 14.9G 0 part /media/venon/AEE5-087B sr0 11:0 1 1024M 0 rom
可以看到多出来了一个sdb2,这个sdb设备就是SD卡在linux系统中的设备名称,sdb1是sdb2的分区。设备挂载在/media/venon/AEE5-087B目录下。
下图是开发板需要的SD卡分区以及对应的作用。
使用命令将SD卡格式化并进行分区。
$ sudo fdisk /dev/sdb 欢迎使用 fdisk (util-linux 2.34)。 更改将停留在内存中,直到您决定将更改写入磁盘。 使用写入命令前请三思。 命令(输入 m 获取帮助): o 创建了一个磁盘标识符为 0x34f6c9cf 的新 DOS 磁盘标签。 命令(输入 m 获取帮助): n 分区类型 p 主分区 (0个主分区,0个扩展分区,4空闲) e 扩展分区 (逻辑分区容器) 选择 (默认 p): p 分区号 (1-4, 默认 1): (Push the enter key) 第一个扇区 (2048-31116287, 默认 2048): (Push the enter key) Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-31116287, 默认 31116287): +500M 创建了一个新分区 1,类型为“Linux”,大小为 500 MiB。 命令(输入 m 获取帮助): n 分区类型 p 主分区 (1个主分区,0个扩展分区,3空闲) e 扩展分区 (逻辑分区容器) 选择 (默认 p): p 分区号 (2-4, 默认 2): (Push the enter key) 第一个扇区 (1026048-31116287, 默认 1026048): (Push the enter key) Last sector, +/-sectors or +/-size{K,M,G,T,P} (1026048-31116287, 默认 31116287): (Push the enter key) 创建了一个新分区 2,类型为“Linux”,大小为 14.4 GiB。 分区 #2 包含一个 ext4 签名。 您想移除该签名吗? 是[Y]/否[N]: y 写入命令将移除该签名。 命令(输入 m 获取帮助): p Disk /dev/sdb:14.86 GiB,15931539456 字节,31116288 个扇区 Disk model: STORAGE DEVICE 单元:扇区 / 1 * 512 = 512 字节 扇区大小(逻辑/物理):512 字节 / 512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节 磁盘标签类型:dos 磁盘标识符:0x34f6c9cf 设备 启动 起点 末尾 扇区 大小 Id 类型 /dev/sdb1 2048 1026047 1024000 500M 83 Linux /dev/sdb2 1026048 31116287 30090240 14.4G 83 Linux Filesystem/RAID signature on partition 2 will be wiped. 命令(输入 m 获取帮助): t 分区号 (1,2, 默认 2): 1 Hex 代码(输入 L 列出所有代码): b 已将分区“Linux”的类型更改为“W95 FAT32”。 命令(输入 m 获取帮助): w 分区表已调整。 Failed to remove partition 1 from system: 设备或资源忙 Failed to add partition 1 to system: 设备或资源忙 Failed to add partition 2 to system: 设备或资源忙 The kernel still uses the old partitions. The new table will be used at the next reboot. 正在同步磁盘。
输入以下命令检查分区列表:
$ partprobe $ sudo fdisk -l /dev/sdb Disk /dev/sdb:14.86 GiB,15931539456 字节,31116288 个扇区 Disk model: STORAGE DEVICE 单元:扇区 / 1 * 512 = 512 字节 扇区大小(逻辑/物理):512 字节 / 512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节 磁盘标签类型:dos 磁盘标识符:0x34f6c9cf 设备 启动 起点 末尾 扇区 大小 Id 类型 /dev/sdb1 2048 1026047 1024000 500M b W95 FAT32 /dev/sdb2 1026048 31116287 30090240 14.4G 83 Linux
格式化并挂载分区
输入以下命令:
$ sudo mkfs.vfat -v -c -F 32 /dev/sdb1 mkfs.fat 4.1 (2017-01-24) /dev/sdb1 has 64 heads and 32 sectors per track, hidden sectors 0x0800; logical sector size is 512, using 0xf8 media descriptor, with 1024000 sectors; drive number 0x80; filesystem has 2 32-bit FATs and 8 sectors per cluster. FAT size is 1000 sectors, and provides 127746 clusters. There are 32 reserved sectors. Volume ID is ac72c97f, no volume label. Searching for bad blocks 177120... 362848... $ sudo mkfs.ext4 -L rootfs /dev/sdb2 mke2fs 1.45.5 (07-Jan-2020) 创建含有 3761280 个块(每块 4k)和 942080 个 inode 的文件系统 文件系统 UUID:a231661f-117a-464e-aa26-72c47a27fba6 超级块的备份存储于下列块: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208 正在分配组表: 完成 正在写入 inode表: 完成 创建日志(16384 个块): 完成 写入超级块和文件系统账户统计信息: 已完成
格式化完毕后,取出读卡器,重新连接。
审核编辑:刘清
全部0条评论
快来发表一下你的评论吧 !