Linux 分区挂载

📅 2026/8/14 12:23:58
Linux 分区挂载
这份《Linux 分区挂载与数据访问标准作业指导书 (SOP)》是基于你的 RK3588 开发板环境定制的。请注意在 Linux 中不是所有的分区都能“挂载”。只有被格式化为文件系统如 ext4, vfat的分区才能挂载。像uboot、env、misc这种通常是“裸数据 (Raw Data)”不能挂载只能用dd命令读写。Linux 分区挂载与数据访问 SOP一、 核心概念挂载 (Mount) 是什么Windows 插入 U 盘会自动变成E:盘。Linux 不会。Linux 所有的文件都在/(根目录) 这棵树下。挂载就是把一个“设备”比如/dev/mmcblk0p6通过一个“文件夹”比如/mnt/backup连接起来。挂载后你访问这个文件夹实际上就是在读写那个设备。二、 准备工作能挂载谁在执行挂载前必须先确认分区的“格式”。1. 检查命令sudoblkid2. 结果分析 (举例)能挂载的/dev/mmcblk0p8: TYPEext4(你的系统盘)/dev/mmcblk0p4: TYPEvfat或ext4(boot 分区)不能挂载的 (裸数据)如果在blkid列表里找不到/dev/mmcblk0p1(env) 或p2(uboot)说明它们没有文件系统禁止使用 mount 命令。三、 场景 A挂载标准分区 (如 boot 或 backup)假设你想查看boot分区存放内核的地方或者backup分区的内容。1. 创建挂载点 (相当于建个空门框)sudomkdir-p/mnt/my_boot2. 执行挂载 (把设备装进门框)# 语法mount [设备路径] [挂载点]sudomount/dev/disk/by-partlabel/boot /mnt/my_boot3. 访问文件ls-l/mnt/my_boot此时你应该能看到Image、rk3588.dtb等文件。4. 卸载 (拔卡前必做)重要用完必须卸载否则数据会损坏。sudoumount/mnt/my_boot四、 场景 B挂载外部存储 (U盘/SD卡)这是开发中最常用的用于拷代码进板子。1. 插入 U 盘并查找设备名lsblk通常是sda1(如果是 U 盘) 或mmcblk1p1(如果是 TF 卡)。假设是/dev/sda1。2. 创建并挂载sudomkdir-p/mnt/usbsudomount/dev/sda1 /mnt/usb3. 拷贝数据# 把 U 盘里的 code 文件夹拷到桌面cp-r/mnt/usb/code ~/Desktop/4. 卸载sudoumount/mnt/usb五、 场景 C读写“裸分区” (env/uboot/misc)高危操作区。这些分区没有文件系统mount会报错。必须用dd命令像复印机一样逐个字节拷贝。需求 1备份 uboot 分区 (导出为文件)你想把现在的 uboot 导出来发给别人分析。# if输入文件(设备) of输出文件(保存名)sudoddif/dev/disk/by-partlabel/ubootof~/my_uboot_backup.img需求 2修改 env (环境变量)env分区存的是二进制文本。你可以用strings命令查看里面有什么而不用挂载。sudostrings /dev/disk/by-partlabel/env你会看到bootdelay0consolettyS2...等启动参数。六、 完美执行方案总结 (Cheat Sheet)把下面这段保存好这是最通用的操作流步骤命令说明1. 侦察lsblk或sudo blkid确认设备名 (如sda1) 和文件系统类型。2. 建点sudo mkdir -p /mnt/usb在/mnt下建一个目录作为入口。3. 挂载sudo mount /dev/sda1 /mnt/usb把设备连接到入口。4. 操作cp/ls/mv正常的 Linux 文件操作。5. 撤退sudo umount /mnt/usb必须执行类似于 Windows 的“弹出USB”。常见报错急救Device or resource busy你的人终端当前路径还在/mnt/usb里面。执行cd ~退出该目录然后再umount。wrong fs type说明你试图挂载一个裸分区如 uboot请改用dd命令处理。