我是靠谱客的博主 寂寞水杯,最近开发中收集的这篇文章主要介绍linux能识别fat32吗,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

本教程操作环境:linux7.3系统、Dell G3电脑。

linux能识别fat32吗

linux系统默认可以识别fat32u盘,对ntfs格式u盘不能识别

绝大多数linux发行版内核支持FAT32文件系统。

Red Hat Linux部分版本也对FAT32提供有限支持,但是注意~如果Linux安装在FAT32分区下,必须使用软盘进行引导。

如果想挂载FAT32格式的磁盘分区,只需要用mount命令加载即可。

什么是fat32

FAT是文件分配表(File Allocation table)的缩写,FAT32指的是文件分配表是采用32位二进制数记录管理的磁盘文件管理方式

因FAT类文件系统的核心是文件分配表,命名由此得来。FAT32是从FAT和FAT16发展而来的,优点是稳定性和兼容性好,能充分兼容Win 9X及以前版本,且维护方便。缺点是安全性差,且最大只能支持32GB分区,单个文件也只能支持最大4GB。

磁盘结构

当使用FAT32文件系统管理硬盘时,能够支持的每个分区容量最大可达到128TB。 [6] 对于使用FAT32文件系统的每个逻辑盘内部空间又可划分为三部分,依次是引导区(BOOT区)、文件分配表区(FAT区)、数据区(DATA区)。引导区和文件分配表区又合称为系统区,占据整个逻辑盘前端很小的空间,存放有关管理信息。数据区才是逻辑盘用来存放文件内容的区域,该区域以簇为分配单位来使用。

引导区

FAT32文件系统的第一个扇区就是引导扇区,其内存放了一个文件系统的很多具体信息,例如FAT表个数、每个FAT表的大小(扇区数目)、每扇区内的字节数目、每簇中所包含的扇区数目、被保留的扇区数目、文件系统大小(扇区数目)、根目录的起始簇号及一些其它的附加信息。引导区(BOOT区)从第一扇区(逻辑扇区号0)开始使用了三个扇区,保存了该逻辑盘每扇区字节数,每簇对应的扇区数等等重要参数和引导记录。之后还留有若干保留扇区,其中有一至三扇区的备份,

文件分配表区

文件分配表区(FAT区)是FAT文件系统管理磁盘空间和文件的最重要区域,它保存逻辑盘数据区各簇使用情况信息,采用位示图法来表示,文件所占用的存储空间及空闲空间的管理都是通过FAT实现的。FAT区共保存了两个相同的文件分配表,便于第一个损坏时,还有第二个可用。FAT表的大小由该逻辑盘数据区共有多少簇所决定,取整数个扇区。数据区中每簇的使用情况通过查找其在FAT表中相应位置的填充值可知晓。FAT32表中每簇占用四个字节(32位)表示,开头的8个字节(0H-07H字节)用来存放该盘介质类型编号了,因此有效簇号从02H开始使用。02H簇的使用情况由08H-0BH字节组成的32位二进制数指示出来,03H簇的使用情况由0CH一0FH字节组成的32位二进制数指示出来,依此类推。未被分配使用和已回收的簇相应位置写零,坏簇相应位置填入特定值0FFFFFF7H标识,已分配的簇相应位置填入非零值,具体为:如果该簇是文件的最后一簇,填入的值为0FFFFFFFH,如果该簇不是文件的最后一簇,填入的值为该文件占用的下一个簇的簇号,这样,正好将文件占用的各簇构成一个簇链,保存在FAT32表中。

数据区

数据区是被用来存放用户数据的,位于FAT2后,同样被划分成簇,从2开始编号,即2号簇起始位置即是数据区的真正起始位置。

(1)根目录

通常情况下根目录位于2号簇,但是原则上FAT32文件系统中的根目录可以位于数据区的任意位置。根目录区保存根目录下的各文件的目录项,每个目录项占用32字节。FAT32文件系统中,根目录作为数据区的一部分,采用与子目录相似的管理方式,这一点与FAT12、FAT16明显不同,如FAT16文件系统的根目录区(ROOT区)是固定区域、固定大小的,占用从FAT区之后紧接着的32个扇区,最多保存512个目录项(其根目录保存的文件数受限的原因在此),作为系统区的一部分。

(2)子目录

FAT32文件系统中,除了根目录外,全部子目录均在被使用过程中,根据具体的需要而建立。若在根目录之下创建了一个新的子目录,则称该子目录是根目录的子目录,并且称根目录为该子目录的父目录。子目录被新建时,在为其父目录分配的簇中建立目录项,目录项中描述了目录的起始簇号,并且为其在空闲的空间中分配一个簇并清零,将该簇的簇号记录在其目录项之中。为子目录创建目录项的同时,为子目录分配的簇中通过用前两个目录项来记录其与对应父目录的关系。

(3)目录项

FAT32文件系统由于结构的不同,一般将目录项分成四种:卷标目录项、“.”目录项和“..”目录项、短文件名目录项、长文件名目录项。短文件名目录项中存放子目录或文件的短文件名、属性、起始簇号、时间值、内容大小等基本的信息。

扩展知识

如果想挂载FAT32格式的磁盘分区,只需要用mount命令加载即可。

1、用fdisk命令检查分区和USB设备信息。

[root@wgods ~]# fdisk -l
登录后复制

06.png

2、通过上面信息可以看出USB设备是FAT32格式的,标识为/dev/sdb1

[root@wgods ~]# fdisk -l | grep FAT32
/dev/sdb1 * 56 640 3580928 c W95 FAT32 (LBA)
登录后复制

3、在mnt目录下先建立一个usb的目录

[root@wgods ~]# cd /mnt/
[root@wgods mnt]# mkdir usb
登录后复制

4、挂载U盘

[root@wgods mnt]# mount -t vfat /dev/sdb1 /mnt/usb
登录后复制

挂载成功后,可以在/mount/usb下看到相关的内容。

推荐学习:Linux视频教程

以上就是linux能识别fat32吗的详细内容,更多请关注靠谱客其它相关文章!

最后

以上就是寂寞水杯为你收集整理的linux能识别fat32吗的全部内容,希望文章能够帮你解决linux能识别fat32吗所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(89)

评论列表共有 0 条评论

立即
投稿
返回
顶部