/proc/filesystems: Find out what filesystems supported by kernel

by on July 4, 2007 · 8 comments· LAST UPDATED July 4, 2007

in

/proc/filesystems is the file used to detect filesystems supported by running kernel. You can quickly run grep or cat command to display the list of all supported file system. nodev indicates that the file system is not associated with a physical device such as /dev/sdb1. If you see ext3 or vfat, it means you will be able to mount ext3 and vfat based file systems.

Following cat command will quickly tell you what filesystems supported by currently running Linux kernel:

$ cat /proc/filesystems
Output:

nodev   sysfs
nodev   rootfs
nodev   proc
nodev   usbfs
        ext3
        vfat
....

For example, if the iso9660 fllesystem not listed, you can not mount standard CD-ROM file system. To add support simply recompile kernel with iso9660 filesystem support.

TwitterFacebookGoogle+PDF versionFound an error/typo on this page? Help us!

{ 8 comments… read them below or add one }

1 Arla September 6, 2010 at 5:19 pm

What does “nodev” in the beginning of a line mean?

Reply

2 shandr December 8, 2011 at 2:27 pm

It’s not always true. For example you will not see nfs and nfs4 in /proc/filesystems after reboot. But still you can mount remote nfs directory if needed packages are installed in the system. After successful mounting nfs and nfs4 will appear in /proc/filesystem. Tested on Ubuntu 11.10

Reply

3 ken December 15, 2011 at 1:25 am

same for vfat.

i can still mount vfat usb drive even vfat not found in /proc/filesystems.But after mounting, it appears in /proc/filesystems too! Tested on kernel 2.4.35.4

Reply

4 Ra April 24, 2012 at 8:18 am

The “nodev” string in the first column means that filesystem does not require a block device to be mounted, it’s so called virtual filesystem.

Reply

5 laxman November 17, 2012 at 10:25 am

How to troubleshoot apache log errors??? can u please explain step by step process in linux ??/

Reply

6 gacanepa August 22, 2013 at 1:12 pm

Just adding my 2 cents here. The only way to be sure about what filesystems are supported by the kernel or not is to check its configuration file. In my case, it is
and look for the filesystem type.
I searched for ISO9660 (for example) and found the following:

# CD-ROM/DVD Filesystems
#
CONFIG_ISO9660_FS=m
CONFIG_JOLIET=y
CONFIG_ZISOFS=y
CONFIG_UDF_FS=m
CONFIG_UDF_NLS=y

The “m” means it was compiled as a module but not automatically inserted into the kernel.
In order to load it into the kernel, we must run the following command:
modprobe -a isofs
(where isofs is the alias of the corresponding module)
And then iso9660 will show up in the /proc/filesystems file.

(on a side note, the aliases for modules can be found in /lib/modules, then look for the directory of your kernel, and read the file modules.alias)

Reply

7 gacanepa August 22, 2013 at 1:14 pm

Sorry, I forgot to include the path to my kernel’s configuration file. Here it is:
/boot/config-3.2.0-4-686-pae

Reply

8 Modules October 14, 2013 at 6:42 pm

I got a list of loadable filesystems this way:

ls /lib/modules/$(uname -r)/kernel/fs/*/*ko

Reply

Leave a Comment

Tagged as: , ,

Previous post:

Next post: