linux - 创建多个 SquashFS 分区

标签 linux embedded filesystems

我在嵌入式平台上工作(Broadcom 的 bcm5358u 处理器,带有 MIPS 内核),我需要额外的分区以便进一步升级程序。使用的文件系统是 SquashFS,所以我相应地修改了'struct mtd_partition',它被传递给 MTD 相关代码,我最终得到了这个:

#cat /proc/partitions
major minor  #blocks  name

 - 31     0        128 mtdblock0
 - 31     0        128 mtdblock0
 - 31     1       6016 mtdblock1
 - 31     2       4573 mtdblock2
 - 31     3       6016 mtdblock3
 - 31     4       4445 mtdblock4
 - 31     5       4160 mtdblock5
 - 31     6         64 mtdblock6

现在我想在系统升级时能够挂载/dev/mtdblock4作为临时存储,但是我做不到,因为这个分区mtdblock4似乎没有安装任何FS。内核镜像和 FS 集成在一个镜像中,该镜像沿/dev/mtdblock2 闪存(作为 root_fs 提供给内核)。

我只看到一个解决方案:创建一个空的 squashFS 镜像,将其写入/dev/mtdblock4,它可能会如我所愿地工作(?)。有没有办法,比如在内核启动时即时格式化分区,或者它违反了 MTD 概念?

谢谢。

最佳答案

您可以将 JFFS2 文件系统挂载到一个空的(已删除的)闪存上。它会自动 在挂载时“格式化”闪存分区。 Squashfs 不是一个好的候选者,因为它是一个只读文件系统。

关于linux - 创建多个 SquashFS 分区,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3394137/

相关文章:

linux - 驱动程序如何在Linux中工作? (Linux newb)

linux - 直接从 linux 内核访问系统性能数据

embedded - stm32f3 'USER USB' 未检测到

embedded - 在 PC 上使用示波器进行精确计时

java - 我将如何通过 Java 访问 iPhone 文件系统?

linux - 使用 bash 获取字符串的一部分

linux - 在 Beaglebone black 上安装 Angstrom

c - 哪些嵌入式处理器最接近多核

Java 匈牙利数字格式和 Linux 文件系统

unix - 如何测试是否支持稀疏文件