Skip to content
A Windows Application to read and copy Ext2/Ext3/Ext4 (With LVM) Partitions from Windows.
C++ C Objective-C QMake
Branch: master
Clone or download
mregmi Merge pull request #7 from darkdragon-001/master
Prepared project for latest toolchain
Latest commit a728e9f May 21, 2017
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
resource add a manifest to request Administrator permissions Oct 4, 2013
.gitignore added gitignore file May 21, 2017
LICENSE Added LICENSE file May 21, 2017
README.md Updated README, added building instructions May 21, 2017
about.ui Updated About dialog to include credits for Qt May 21, 2017
app.rc add a manifest to request Administrator permissions Oct 4, 2013
ext2about.cpp code cleanups. Apr 6, 2010
ext2about.h code cleanups. Apr 6, 2010
ext2copyfile.cpp Added compatibility to Qt5: replaced obsolete function calls with new… May 21, 2017
ext2copyfile.h BUG FIX: Apr 9, 2010
ext2explore.cpp Added compatibility to Qt5: replaced obsolete function calls with new… May 21, 2017
ext2explore.h few UI fixes Feb 16, 2013
ext2explore.pro Added compatibility to Qt5: replaced obsolete function calls with new… May 21, 2017
ext2explore.qrc added new resource files. Mar 28, 2010
ext2explore.ui few UI fixes Feb 16, 2013
ext2fs.cpp Merge pull request #3 from diaasami/master May 17, 2016
ext2fs.h Linux LVM2 support added. Apr 11, 2010
ext2progress.ui started working in LVM2 support. Apr 5, 2010
ext2properties.cpp Added compatibility to Qt5: replaced obsolete function calls with new… May 21, 2017
ext2properties.h code cleanups. Apr 6, 2010
ext2read.cpp add support for disks using a GUID Partition Table Oct 2, 2013
ext2read.h display volume labels Oct 2, 2013
gpt.h add support for disks using a GUID Partition Table Oct 2, 2013
log.c fixed log.c to use vsnprintf to prevent buffer overflow. Apr 6, 2010
lvm.cpp Added compatibility to Qt5: replaced obsolete function calls with new… May 21, 2017
lvm.h few fixes and add few log messages May 24, 2015
main.cpp Added compatibility to Qt5: replaced obsolete function calls with new… May 21, 2017
partition.h new development of ext2read 2.1 Mar 18, 2010
parttypes.h Fix a problem with extent walking Jul 16, 2011
platform.h added logic to support Ext4 Extents. Only B+ tree of depth 0 is suppo… Mar 28, 2010
platform_dos.c new development of ext2read 2.1 Mar 18, 2010
platform_unix.c code cleanups. Apr 6, 2010
platform_win32.c Fix a problem with extent walking Jul 16, 2011
properties.ui some cleanups Apr 3, 2010

README.md

Ext2Read

Ext2Read is an explorer like utility to explore ext2/ext3/ext4 files. It runs directly without any installation. It can be used to view and copy files and folders. It can recursively copy entire folders. It can also be used to view and copy disk and file. It now supports LVM2 and EXT4 extents.

Features

  • Simple UI designed using Qt4/Qt5
  • View/Read ext2/ext3/ext4 partitions
  • Linux LVM2 Support
  • Ext4 Large File support (untested)
  • Recursively Copy the entire folder or even /
  • Support for external USB disks
  • Support for disk and filesystem images For e.g. Wubi users can just open their root.disk file through this program
  • LRU based Block cache for faster access
  • Unicode support

Usage

The executables and sources can be downloaded from http://ext2read.sf.net

Notice

  • This program must be run as Administrator in order to directly access partitions. If you are not automatically asked to elevate, right-click the file and select Run as Administrator.
  • This is not a transparent file system driver, just a user space tool.
  • The LVM2 metadata can be complex because of the wide variety of configuration possibilities. All configurations has not been tested. If LVM2 does not work in your system, please file a bug with your LVM2 metadata.

Contributing

If you find any bugs, have any questions or comments, please let us know.

If any of you are interested in joing this project, you can join the mailing list and discuss. Join from here https://lists.sourceforge.net/lists/listinfo/ext2read-devel

Building

Windows

Building for Windows requires MinGW compiler.

NOTE: Either copy the dependent Qt DLLs into the same folder as the built ext2explore.exe or setup your PATH environment variable correctly! Common mistakes are other PATH entries which bundle an old version of Qt or the wrong bitness (32/64 Bit).

Windows (32bit)

Qt officially supports MinGW 32bit, so just download their official release, run Qt Creator and build.

Windows (64bit)

Qt does not officially support MinGW 64bit. Therefor we need to setup the toolchain on our own:

  1. Download and extract a compiler: MinGW-W64 (e.g. posix-seh)
  2. Download and extract prebuilt Qt libraries: Qt64-NG (e.g. posix-seh)
    NOTE: Unfortunately this project is closed after Qt version 5.5.0. If you need a newer version, build it yourself.
    1. Run qtbinpatcher.exe whenever you move your folder.
  3. Download and install Qt-Creator
  4. Setup Qt Creator in Tools > Options > Build & Run
    1. Add Compiler (C: gcc.exe, C++: g++.exe, 32/64 Bit: select ABI)
    2. Add Debugger (gdb.exe)
    3. Add Qt version (qmake.exe)
    4. Add Kit

Afterwards, you can start the build process.

You can’t perform that action at this time.