7 Ways to Determine the File System Type in Linux (Ext2, Ext3 or Ext4)

A file system is the way in which files are named, stored, retrieved as well as updated on a storage disk or partition; the way files are organized on the disk.

A file system is divided in two segments called: User Data and Metadata (file name, time it was created, modified time, it’s size and location in the directory hierarchy etc).

In this guide, we will explain seven ways to identify your Linux file system type such as Ext2, Ext3, Ext4, BtrFS, GlusterFS plus many more.

1. Using df Command

df command reports file system disk space usage, to include the file system type on a particular disk partition, use the -T flag as below:

$ df -Th
OR
$ df -Th | grep "^/dev"
df Command - Find Filesystem Type
df Command – Find Filesystem Type

For a comprehensive guide for df command usage go through our articles:

  1. 12 Useful “df” Commands to Check Disk Space in Linux
  2. Pydf – An Alternative ‘df’ Command That Shows Disk Usage in Colours

2. Using fsck Command

fsck is used to check and optionally repair Linux file systems, it can also print the file system type on specified disk partitions.

The flag -N disables checking of file system for errors, it just shows what would be done (but all we need is the file system type):

$ fsck -N /dev/sda3
$ fsck -N /dev/sdb1
fsck - Print Linux Filesystem Type
fsck – Print Linux Filesystem Type

3. Using lsblk Command

lsblk displays block devices, when used with the -f option, it prints file system type on partitions as well:

$ lsblk -f
lsblk - Shows Linux Filesystem Type
lsblk – Shows Linux Filesystem Type

4. Using mount Command

mount command is used to mount a file system in Linux, it can also be used to mount an ISO image, mount remote Linux filesystem and so much more.

When run without any arguments, it prints info about disk partitions including the file system type as below:

$ mount | grep "^/dev"
Mount - Show Filesystem Type in Linux
Mount – Show Filesystem Type in Linux

5. Using blkid Command

blkid command is used to find or print block device properties, simply specify the disk partition as an argument like so:

$ blkid /dev/sda3
blkid - Find Filesystem Type
blkid – Find Filesystem Type

6. Using file Command

file command identifies file type, the -s flag enables reading of block or character files and -L enables following of symlinks:

$ sudo file -sL /dev/sda3
file - Identifies Filesystem Type
file – Identifies Filesystem Type

7. Using fstab File

The /etc/fstab is a static file system info (such as mount point, file system type, mount options etc) file:

$ cat /etc/fstab
Fstab - Shows Linux Filesystem Type
Fstab – Shows Linux Filesystem Type

That’s it! In this guide, we explained seven ways to identify your Linux file system type. Do you know of any method not mentioned here? Share it with us in the comments.

If you liked this article, then do subscribe to email alerts for Linux tutorials. If you have any questions or doubts? do ask for help in the comments section.

If You Appreciate What We Do Here On TecMint, You Should Consider:

TecMint is the fastest growing and most trusted community site for any kind of Linux Articles, Guides and Books on the web. Millions of people visit TecMint! to search or browse the thousands of published articles available FREELY to all.

If you like what you are reading, please consider buying us a coffee ( or 2 ) as a token of appreciation.

Support Us

We are thankful for your never ending support.

15 thoughts on “7 Ways to Determine the File System Type in Linux (Ext2, Ext3 or Ext4)”

  1. Note that,

    # mkfs -t ext4 /tmp/image1
    

    will create a ext2 filesystem on image1, if its not big enough (warning “Filesystem too small for a journal” means a filesystem without a journal, a.k.a. ext2, is created)

    If you don’t realize this and nevertheless mount it as ext4. The df and mount methods above will mirror back ext4:

    $ df -Th /tmp/mnt*
    Filesystem     Type  Size  Used Avail Use% Mounted on
    /dev/loop4     ext4 1003K   24K  908K   3% /tmp/mnt1
    /dev/loop5     ext4  987K   33K  812K   4% /tmp/mnt2
    $ mount | grep mnt
    ...
    /home/mallikab/image1 on /tmp/mnt1 type ext4 (rw,relatime,seclabel)
    /home/mallikab/image2 on /tmp/mnt2 type ext4 (rw,relatime,seclabel,data=ordered)
    

    but fsck and file reveal the true filesystem:

    $ fsck -N /tmp/mnt1
    fsck from util-linux 2.23.2
    [/sbin/fsck.ext2 (1) -- /tmp/mnt1] fsck.ext2 /tmp/mnt1 
    $ fsck -N /tmp/mnt2
    fsck from util-linux 2.23.2
    [/sbin/fsck.ext4 (1) -- /tmp/mnt2] fsck.ext4 /home/mallikab/image2 
    
    $ file -sL /home/mallikab/image2 
    /home/mallikab/image2: Linux rev 1.0 ext4 filesystem data, UUID=b4e8e086-54ca-4d9d-9f38-32bbed211e6b (needs journal recovery) (extents) (64bit) (huge files)
    $ file -sL /home/mallikab/image1
    /home/mallikab/image1: Linux rev 1.0 ext2 filesystem data (mounted or unclean), UUID=09b3a8c9-0b6d-43c5-b195-c45f6c091765 (extents) (64bit) (huge files)
    
    hm, although fsck doesn't indicate ext2 unless the images are mounted, i.e.
    $ fsck -N ~/image1
    fsck from util-linux 2.23.2
    [/sbin/fsck.ext4 (1) -- /home/mallikab/image1] fsck.ext4 /home/mallikab/image1
    
    Reply
  2. HELLO,

    how to list out the size of the disks which are above or below range for example i want to list out the disks above 60M ,is there a command for this.

    Reply

Leave a Reply to mic Cancel reply

Have a question or suggestion? Please leave a comment to start the discussion. Please keep in mind that all comments are moderated and your email address will NOT be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.