您尚未登录。

楼主 # 2022-08-10 09:03:58

a32425262
会员
注册时间: 2018-05-06
已发帖子: 104
积分: 401

TF有什么能只读的分区的文件系统吗

RT:TF有什么能只读的分区的文件系统吗?
使用norflash 可以做squashfs作为只读的文件系统分区

加一个jffs作为读写的文件系统或者挂在为overlay

这样可以有效保护系统不会破坏

请问如果使用tf卡的话 有类似squashfs的这种只读的文件系统内分区吗

或者有没有其他的办法让根文件系统只读

再分一个可读写的文件系统 ext2/3/4 fat这种?

离线

#1 2022-08-10 09:37:14

哇酷小二
管理员
所在地: 你猜
注册时间: 2020-04-22
已发帖子: 3,387
积分: 1902
个人网站

Re: TF有什么能只读的分区的文件系统吗

全志就是这么干的,一个img文件通吃,可以烧录到 spinor / spinand / tfcard / eMMC

用的就是这个方案
squashfs + jffs2
squashfs + ubifs
squashfs + ext4





离线

#2 2022-08-10 13:25:23

海石生风
会员
所在地: 深圳
注册时间: 2019-07-02
已发帖子: 650
积分: 783
个人网站

Re: TF有什么能只读的分区的文件系统吗

@a32425262
可读写的文件系统都可以在挂载时指定为只读(ro)而不能写入。通常在开发时将其挂载为可读写(rw),发布时挂载为只读。

离线

楼主 #3 2022-08-10 16:43:03

a32425262
会员
注册时间: 2018-05-06
已发帖子: 104
积分: 401

Re: TF有什么能只读的分区的文件系统吗

感谢晕哥和楼上回复
晕哥的办法挺好的
我看有人用imx6/8挂在emmc的时候使用这么方法
但是不知道怎么在tf卡上做squashfs分区
@海石生风这个办法很简单 只要修改传入参数就行了 回头再多一个ext4分区作为读写的就行了

离线

楼主 #4 2022-09-12 15:40:05

a32425262
会员
注册时间: 2018-05-06
已发帖子: 104
积分: 401

Re: TF有什么能只读的分区的文件系统吗

海石生风 说:

@a32425262
可读写的文件系统都可以在挂载时指定为只读(ro)而不能写入。通常在开发时将其挂载为可读写(rw),发布时挂载为只读。

这边做了测试
发现不可以 我再传入参数中设置为ro发现还是可读写

[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 4.13.16-licheepi-zero+ (root@jbo-VirtualBox) (gcc version 7.2.1 20171011 (Linaro GCC 7.2-2017.11)) #9 SMP Mon Sep 5 18:21:19 CST 2022
[    0.000000] CPU: ARMv7 Processor [410fc075] revision 5 (ARMv7), cr=10c5387d
[    0.000000] CPU: div instructions available: patching division code
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[    0.000000] OF: fdt: Machine model: Lichee Pi Zero
[    0.000000] Memory policy: Data cache writealloc
[    0.000000] percpu: Embedded 16 pages/cpu @c3d07000 s33868 r8192 d23476 u65536
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 15660
[    0.000000] Kernel command line: console=ttyS0,115200 root=/dev/mmcblk0p2 rootwait panic=10 earlyprintk ro

通过查看已经挂载的文件系统cat /proc/mounts

/dev/root / ext4 rw,relatime,data=ordered 0 0
devtmpfs /dev devtmpfs rw,relatime,size=26336k,nr_inodes=6584,mode=755 0 0
proc /proc proc rw,relatime 0 0
devpts /dev/pts devpts rw,relatime,gid=5,mode=620,ptmxmode=666 0 0
tmpfs /dev/shm tmpfs rw,relatime,mode=777 0 0
tmpfs /tmp tmpfs rw,relatime 0 0
tmpfs /run tmpfs rw,nosuid,nodev,relatime,mode=755 0 0
sysfs /sys sysfs rw,relatime 0 0

修改/etc/fstab为ro 同样不可以

离线

#5 2022-09-12 18:58:43

海石生风
会员
所在地: 深圳
注册时间: 2019-07-02
已发帖子: 650
积分: 783
个人网站

Re: TF有什么能只读的分区的文件系统吗

我这边使用如下内核启动参数时,根文件系统为只读,可参考:
console=ttyS0,115200 ubi.mtd=UBI,2048 root=ubi:rootfs ro rootfstype=ubifs init=/linuxrc rootwait=1

离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn