是否可以使用 fat32 rootfs 分区而不是 ext4?

是否可以使用 fat32 rootfs 分区而不是 ext4?

我已经在 STM32F469-disco 板上成功安装了 u-boot 和 linux 内核,但我仍然没有 rootfs。我的主板有 16MB RAM 和 16MB FLASH 存储以及 32GB SDCARD,其 CPU 核心是 ARM Cortex-M4 32 位处理器。我想知道我是否可以将 busybox rootfs 复制到 fat32 分区并期望 linux 内核读取它?

当我尝试将其复制到 NTFS 分区时,它会抛出此错误:

在此输入图像描述

PS C:\Users\mahya> copy -r z:\home\mahyar1284\my_projects\buildroot\buildroot-2020.08\output\target\ c:\users\mahya\desktop\target
Copy-Item: The name of the file cannot be resolved by the system. : 'Z:\home\mahyar1284\my_projects\buildroot\buildroot-2020.08\output\target\linuxrc'

更新

尝试使用 tar 命令:

C:\Users\mahya>tar -cf -r z:\home\mahyar1284\my_projects\buildroot\buildroot-2020.08\output\target\*
tar: Couldn't open z:/home/mahyar1284/my_projects/buildroot/buildroot-2020.08/output/target/linuxrc: Invalid argument
tar: Error exit delayed from previous errors.

答案1

目前您无法使用 NTFS 或 FAT32/exFAT 来托管根文件系统:

  • FAT32/ExFAT 不支持权限或符号/硬链接
  • NTFS* 通过用户空间熔断守护进程工作,因此整个文件系统将属于单个用户,这又与大多数 Linux 发行版不兼容

我现在运行的是 Fedora 33,并且有许多不属于 root 的文件:

/usr/share/polkit-1/rules.d
/etc/polkit-1/rules.d
/var/log/ntpstats
/var/log/chrony
/var/lib/geoclue
/var/lib/chrony
/var/lib/chrony/drift
/var/lib/avahi-autoipd
/var/lib/avahi-autoipd/*
/var/lib/tpm2-tss/system/keystore
/var/lib/openvpn
/var/lib/ntp
/var/lib/unbound
/var/spool/mail/*

*更新:从 Linux 5.15 开始,NTFS 现在有一个适当的内核驱动程序(模块),允许使用 NTFS 作为根 FS。

相关内容