从代码角度来看,Ubuntu 如何格式化带有文件系统的闪存驱动器?

从代码角度来看,Ubuntu 如何格式化带有文件系统的闪存驱动器?

我在思考我们如何设计自己的文件系统以用于研究和实验目的。

但为了做到这一点,我找不到适当的文档和资源。

我还想知道,即使我能够以某种方式开发文件系统,但我如何才能将其格式化为给定的驱动器。为此需要编写什么样的代码?

如果有人知道这一切是如何运作的以及有哪些资源可以参考,那么请提供帮助。

谢谢

答案1

如果你查看“/sbin”和“mk*”程序二进制文件,它们将创建文件系统(即格式)

guiverc@d960-ubu2:~$   ls /sbin/mk*
/sbin/mkdosfs    /sbin/mkfs         /sbin/mkfs.exfat  /sbin/mkfs.ext4  /sbin/mkfs.minix  /sbin/mkfs.reiser4   /sbin/mkfs.xfs          /sbin/mkreiser4
/sbin/mke2fs     /sbin/mkfs.bfs     /sbin/mkfs.ext2   /sbin/mkfs.fat   /sbin/mkfs.msdos  /sbin/mkfs.reiserfs  /sbin/mkhomedir_helper  /sbin/mkreiserfs
/sbin/mkexfatfs  /sbin/mkfs.cramfs  /sbin/mkfs.ext3   /sbin/mkfs.jfs   /sbin/mkfs.ntfs   /sbin/mkfs.vfat      /sbin/mkntfs            /sbin/mkswap

mkfs.fat将创建一个 FAT fs,mkfs.ntfs将创建一个 NTFS 文件系统等等。

man mkfs.ntfs任何您感兴趣的文件系统都可以参考手册页。

由于这是开源的,您可以获取源代码,那里有大量的文件系统供您查看。如果我想获取“ext4”(或程序mkfs.ext4)的源代码,我可以使用

guiverc@d960-ubu2:~$   dpkg -S /sbin/mkfs.ext4 
e2fsprogs: /sbin/mkfs.ext4

抓住源sudo apt source e2fsprogs

相关内容