Home > tools > Top 20 Linux Filesystem Tools

Top 20 Linux Filesystem Tools

The Linux filesystem is complex and the first thing that most new users shifting from Windows will find confusing is navigating the Linux filesystem.

The second thing is that not too many people are familiar with how the filesystem works or know how to troubleshoot if any problems arise.

The good thing is, there are many different types of file system tools and utilities available to make troubleshooting easier but again not too many people are familiar with them. We’ve put together top 20 of the most useful file systems tools and utilities that you’ll find useful in your Linux environment.

  1. XFS – a high-performance journaling file system. It provides quick recovery after a crash, fast transactions, high scalability, and excellent bandwidth.
  2. e2salvage – a utility which tries to recover a data from damaged ext2 filesystems. Unlike e2fsck, it does not look for the data at particular places and it don’t tend to believe the data it finds; thus it can handle much more damaged filesystem. Moreover, fsck connects the found i-nodes to lost+found directory. e2salvage instead tries to recover the directory structure.
  3. e2fsprogs – contains essential ext2 filesystem tilities which consists of e2fsck, mke2fs, debugfs, dumpe2fs, tune2fs, and most of the ther core ext2 filesystem utilities.
  4. GNU Parted – a package for creating, destroying, resizing, checking, and copying partitions and the file systems on them. This is useful for creating space for new operating systems, reorganizing disk usage, copying data between hard disks, and disk imaging.
  5. Partition Image – a Linux/UNIX utility similar to Symantec’s Ghost. This uility saves partitions in the EXT2, Reiserfs, NTFS, HPFS, FAT16, and FAT32 file system formats to an image file. The image file can be compressed with gzip or bzip2 in order to save disk space, and it can be split in order to fit onto a series of floppy disks. This program can be useful for backup purposes. A boot/root disk is also provided, allowing you to run Partition Image without Linux installed on the hard disk.
  6. reiserfs – revolutionary new approach to file system design which stores not just filenames but the files themselves in a B*-tree. It is a generation ahead of alternatives which use older plain B-tree technology, and cannot store the files themselves in the tree. Reiserfs doesn’t suffer from log congestion either, you can effectively use it for quickly creating a 100,000 entry directory, and it is fairly unique in that.
  7. Filesystem in Userspace – a simple interface for userspace programs to export a virtual filesystem to the Linux kernel. It also aims to provide a secure method for non privileged users to create and mount their own filesystem implementations.
  8. LUFS Userland Filesystem – a hybrid userspace filesystem framework supporting many “exotic” filesystems (localfs, sshfs, ftpfs, httpfs, socketfs, freenetfs, and nutellafs) transparently for any application. It can be regarded as doing the same job as the VFS (virtual filesystem switch) in the kernel: it is a switch, distributing the filesystem calls to its supported filesystems.
  9. EncFS – an encrypted pass-through filesystem which runs in userspace on Linux (using the FUSE kernel module). Similar in design to CFS and other pass-through filesystems, all data is encrypted and stored in the underlying filesystem. Unlike loopback filesystems, there is no predetermined or pre-allocated filesystem size.
  10. OpenAFS – a distributed filesystem which offers a client-server architecture, transparent data migration abilities, scalability, a single namespace, and integrated ancillary subsystems.
  11. IOzone – filesystem benchmark tool. The benchmark generates and measures a variety of file operations. Iozone has been ported to many machines and runs under many operating systems.
  12. FSlint – a toolkit to find various forms of lint on a filesystem. At the moment it reports duplicate files, bad symbolic links, troublesome file names, empty directories, non stripped executables, temporary files, duplicate/conflicting (binary) names, and unused ext2 directory blocks.
  13. SSH Filesystem – SSH Filesystem uses the SSH File Transfer Protocol (SFTP), which is supported by most SSH servers. It is based on Filesystem in Userspace (FUSE), and hence root privilege is not required for mounting a remote filesystem. No setup is necessary and it is very easy to use.
  14. Dump/Restore – The dump package contains both dump and restore. Dump examines files in a filesystem, determines which ones need to be backed up, and copies those files to a specified disk, tape or other storage medium. The restore command performs the inverse function of dump; it can restore a full backup of a filesystem. Subsequent incremental backups can then be layered on top of the full backup. Single files and directory subtrees may also be restored from full or partial backups.
  15. Squashfs – a highly compressed read-only filesystem for Linux 2.4 and Linux 2.6. It uses zlib to compress files, inodes, and directories. All blocks are packed to minimise the data overhead, and block sizes of between 4K and 32K are supported. It is intended to be used as a filesystem for archival use and in embedded systems where low overhead is needed, and has been tested on PowerPC, i586, SPARC, and ARM architectures.
  16. Filelight – Filelight graphically represents a file system as a set of concentric segmented rings (or nested piecharts), aiming to show where disk space is being used.
  17. e2undel – an interactive console tool that recovers the data of deleted files on an ext2 file system under Linux. A library that allows you to recover deleted files by name is included. e2undel does not manipulate any internal ext2 structures, and it does not require any additional tools.
  18. SFS – a secure, global network file system with completely decentralized control. SFS lets you access your files from anywhere and share them with anyone, anywhere. Anyone can set up an SFS server, and any user can access any server from any client.
  19. Injector Linux – a single-floppy Linux system, which supports many filesystems — currently approximately 25. Because of its wide range of supported filesystems, it is very useful for disk rescue operations.
  20. File system investigator – a forensic tool for viewing filesystems. It is written entirely in Java, so it is platform independent. It allows viewing of ReiserFS and EXT2/3. While primarily intended as a forensics tool, it is also useful for Linux users who dual boot with another OS; it allows them to view and extract files from their partitions.

In conclusion, you don’t have to limit yourself to default tools available. Experiment with the applications mentioned above, stay ahead of the game by understanding how Linux filesystem is structured and utilized by users and applications.

Categories: tools Tags:
  1. Saibi Rocker
    September 14th, 2010 at 13:20 | #1

    I would like to know a tool used for File segmentation like with .mp4 extension for Linux operating system. For MAC i have used MediaFileSegmenter which is a command line tool and i have successfully make segments with it. Can you please provide me name of that tool. I am in hurry , Looking forward for your positive response.

  2. September 22nd, 2010 at 02:55 | #4

    Good list, but ext3grep is missing. http://www.xs4all.nl/~carlo17/howto/undelete_ext3.html

  1. January 14th, 2010 at 17:37 | #1
  2. January 15th, 2010 at 03:31 | #2
  3. January 15th, 2010 at 06:10 | #3
  4. February 8th, 2010 at 01:03 | #4