在 Linux 系统上, DriveInfo.DriveFormat 现在返回 Linux 内核文件系统类型字符串。 这些字符串表示文件系统类型的更精细表示形式,而不是以前的实现。 例如,现在可以区分 ext3 和 ext4。
以前的行为
以前,.NET 通过将 magic 常量映射到字符串来返回字符串表示形式。 由于多个不同的文件系统类型使用相同的 magic 常量,因此无法区分它们。
对于 cgroup 文件系统, DriveFormat 返回 cgroupfs/cgroup2fs。 对于 SELinux 文件系统,值为 selinux.
新行为
从 .NET 10 开始,.NET 返回 Linux 内核用于文件系统类型的字符串表示形式。
对于 cgroup 文件系统, DriveFormat 返回 cgroup/cgroup2。 对于 SELinux 文件系统,值为 selinuxfs.
引入的版本
.NET 10
破坏性变更的类型
此更改为行为更改。
更改原因
提供更精细的文件系统类型信息。
建议的措施
检查并更新 DriveInfo.DriveFormat 的用法以包含 Linux 文件系统类型字符串。 在 Linux 系统上,可以从文件中读取驱动器 /proc/self/mountinfo 的类型字符串。 在每个行中,文件系统类型字符串是分隔符后 - 的第一个字段。