Skip to content

maximelovino/Ext2FS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ext2 FileSystem project

A project by Maxime Lovino and Thomas Ibanez

Introduction

The idea of this System Programming project is to learn how the Ext2 filesystem works by programming an API to mount Ext2 images using FUSE.

You can find some sample Ext2 images in the data folder of this project

System requirements

This project works with Python 2, it has been tested running version 2.7.10

The following Python modules are required:

  • bitarray
  • hexdump
  • fusepy
  • struct

You can install them if they're not already present on your system by using pip

Usage

Unit tests

You can run tester1 and tester2 by unzipping the archive containing the images in the data folder and replacing the path of the smallimg0.ext2.img and mediumimg0.ext2.img in each file respectively.

Then you can launch both tests with Python like this:

python testerX.py

Mounting images with FUSE

You can also mount an image on your system by using our API. Note that for this you need to have the FUSE library installed on your computer.

To mount an image, first create a folder where you want to mount the image, then:

python ext2fuse.py <PathToImage> <MountPointPath>

To unmount the image, just press CTRL+C after closing all Finder/File Explorer/Terminal sessions windows accessing the mounted image.

About

Ext2 filesystem mounting FUSE api

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages