mirror of
https://github.com/bobranten/Ext4Fsd.git
synced 2025-10-30 13:28:31 -05:00
681 lines
23 KiB
Plaintext
681 lines
23 KiB
Plaintext
======================
|
|
About Ext2Fsd
|
|
======================
|
|
|
|
Ext2Fsd project is an ext2/3/4 file system driver for Windows (2k/XP/7/8/10).
|
|
|
|
It's a free software. Everyone can distribute or modify it under GNU GPLv2.
|
|
|
|
======================
|
|
Author & Homepage
|
|
======================
|
|
|
|
Matt Wu <mattwu@163.com>
|
|
http://www.ext2fsd.com
|
|
|
|
|
|
======================
|
|
Credits
|
|
======================
|
|
|
|
Thanks to Bo Branten<bosse@acc.umu.se> for his project romfs and his great
|
|
contribution of the free version ntifs.h.
|
|
|
|
Everyone can get to him at http://www.acc.umu.se/~bosse/.
|
|
|
|
|
|
======================
|
|
Revision history
|
|
======================
|
|
53, V0.69 2017-11-01
|
|
|
|
Modifications from V0.68:
|
|
|
|
1, FIXME: superblock corruption of EXT4 volumes with 64BIT mode enabled
|
|
2, FIXME: possible corruption by race conditions in buffer-head reapering
|
|
3, FIXME: possible deadlock issues (when flushing) caused by BCB locks
|
|
4, FIXME: miscellaneous minor updates of Ext2Fsd code base
|
|
|
|
52, V0.68 2016-07-09
|
|
|
|
Modifications from V0.66:
|
|
|
|
1, FIXME: System hang caused by a deadlock in cache manipulation
|
|
2, Performance: Reaper mechanism improved (global locks removed)
|
|
3, Feature: supporting multiple instances & users for Ext2Mgr
|
|
|
|
51, V0.66 2016-04-13
|
|
|
|
Modifications from V0.65:
|
|
|
|
1, FIXME: BSOD when mounting as readonly
|
|
2, FIXME: Ext2Srv service blocked by Antivirus
|
|
|
|
50, V0.65 2016-04-10
|
|
|
|
Modifications from V0.64:
|
|
|
|
Features:
|
|
1, major performance improvements (small files meta-operatios)
|
|
2, memory pressure handling for buffer-head structures reclaim
|
|
3, back support for Windows 2000 (i386, 32bit)
|
|
4, no bothering user with notification message for Ext2Mgr
|
|
5, project improvement: Ext2Mgr to be built with WDK or VS2008
|
|
|
|
49, V0.64 2016-04-04
|
|
|
|
Modifications from V0.63:
|
|
|
|
Features:
|
|
1, Drive letter assignment mechanism refined
|
|
2, Mount as specified user (uid/gid) supported
|
|
|
|
Bugs fixed:
|
|
1, Symlink creation breaks metedata statistics for inodes
|
|
2, Unexpected drive letter removal for virtual devices
|
|
3, Resource lock rules refined to consolidate consistency
|
|
4, Kernel codes improved to make Ext3Fsd more secure
|
|
|
|
48, V0.63: 2016-03-12
|
|
|
|
Modifications from V0.62:
|
|
|
|
Features:
|
|
1, Symlink (ReparsePoint) support implemented by ngkaho1234. See his
|
|
repository for more details: http://github.com/ngkaho1234/Ext3Fsd.git
|
|
2, Hard links support implemented
|
|
3, Win10 TH2 drive letter assignment supported
|
|
4, Case-insensitive-search supported (caused by dentry hash)
|
|
5, Peformance improvements for metadata operations
|
|
|
|
Bugs fixed:
|
|
1, BSOD when trying to format or dismount EXT4 volumes
|
|
2, invalid extent content for newly created inodes
|
|
3, Possible data corruption (zero data) under high pressure (WDK building)
|
|
4, Splash screen of Ext2Mgr removed
|
|
|
|
47, V0.62: 2015-06-09
|
|
|
|
Modifications from V0.61:
|
|
|
|
1, FIXME: STEAM game cache (data) validation failures
|
|
for direct-io mode, wrong reading length in bytes reported
|
|
2, FIXME: WDK sources compiling random failures
|
|
|
|
46, V0.61: 2015-06-08
|
|
|
|
Modifications from V0.60:
|
|
|
|
1, FIXME: Ext4 unwritten-extent supported to avoid possible data corruption
|
|
MSB of ee_len field of unwritten extent is used as only a flag. It
|
|
was mistakenly treated as extent length (block numbers) in V0.60
|
|
2, FIXME: Manually clear file to zero for indirect-block file that is newly
|
|
created but not yet written
|
|
|
|
|
|
45, V0.60: 2015-06-01
|
|
|
|
Modifications from V0.53:
|
|
|
|
1, Ext4 extent writing support (developed by ngkaho1234 @ gmail.com)
|
|
See his repository for more details:
|
|
http://github.com/ngkaho1234/Ext3Fsd.git
|
|
2, Size manipulation and i/o path revised for support of indirect and
|
|
extent-based mappings
|
|
3, 16T volume supported (tested and confirmed with 4T volume)
|
|
Version 0.53 and previous versions only support up to 2T volume
|
|
ticket: https://sourceforge.net/p/ext2fsd/bugs/134/
|
|
4, Deletion acceleration: truncation optimized for indirect-based files
|
|
5, Size-expanding disabled in IRP_MJ_CREATE for better performance.
|
|
Windows sometimes would truncate file size back to 0
|
|
6, Support Volume exclusive-open for e2fsprogs utils. Any attempts
|
|
will be denied while EXT4 volume is being checked (e2fsck).
|
|
7, FIXME: Possible zero-content returned (requesting data from file tail)
|
|
8, FIXME: File ByteOffset updated for FO_SYNCHRONOUS_IO open (async i/o)
|
|
ticket: https://sourceforge.net/p/ext2fsd/bugs/133/
|
|
9, FIXME: don't do byte or range round up for paging i/o requests
|
|
ticket: https://sourceforge.net/p/ext2fsd/bugs/129/
|
|
10, FIXME: occasional block bitmap difference issue, cased by checksum
|
|
caculation in uninit_bg group initializing
|
|
|
|
44, V0.53: 2014-08-25
|
|
|
|
Modifications from V0.52:
|
|
|
|
1, FIXME: BSOD with VHD/VHDX mounting on Win8
|
|
2, FIXME: Mke2fs failed to format mounted EXT2 volumes
|
|
3, Enable writing with global or volume ext3-force-writi
|
|
4, Support ext4 dir hash (UNSIGNED cases for legacy/half
|
|
5, Fixed several warnings reported by scan.coverity.com
|
|
|
|
|
|
43, V0.52: 2014-05-10
|
|
|
|
Modifications from V0.51:
|
|
|
|
1, Feature: Windows 8 supported
|
|
2, Feature: Force-writing supported
|
|
3, FIXME: data loss with TeraCopy when moving directories
|
|
4, FIXME: ATTO Disk Benchnmark fails with direct i/o tests
|
|
5, FIXME: files become invisible with empty hidden pattens
|
|
6, FIXME: possible hang with concurrent access attempts
|
|
upon the same file
|
|
7, FIXME: BSOD due to pagable code sections
|
|
|
|
42, V0.51: 2011-07-10
|
|
|
|
Modifications from V0.50:
|
|
|
|
1, FIXME: Data corruption issue, especially for multiple-thread
|
|
writing on XP system
|
|
2, FIXME: Set ValidDataLength only for FileEndOfFileInformation
|
|
w/ AdvanceOnly
|
|
3, Support writing to ext4 volumes w/ flex_bg
|
|
4, Code cleanup and enhancement for global/volume property settings
|
|
|
|
41, V0.50: 2011-02-01
|
|
|
|
Modifications from V0.48:
|
|
|
|
1, Ext4 extent readonly support by Bo Branten. Writing is
|
|
possible but with no size-extending
|
|
2, Ext3 directory index (hash-tree) support
|
|
3, Fast fsck (uninit_bg) and group block checksum support
|
|
4, Ext4 64k block size support
|
|
5, Symlink/special inodes open/read/deletion support
|
|
6, Buffer head implemented over cache pages
|
|
7, Memory allocation optimization for flexible-size inodes
|
|
8, Improve file deletion: don't grab global lock when deleting
|
|
9, FIXME: return zero-content for sparse file gaps
|
|
10, FIXME: check available spaces before blocks allocation
|
|
11, FIXME: refresh stale root dir content after journal replay
|
|
12, FIXME: incompatible dentry management for 64k block size
|
|
13, FIXME: don't do journal replay for devices set as readonly
|
|
14, FIXME: Win7 cmd.exe always reports file sizes as zero
|
|
15, FIXME: Win7 memory throttling issue calling CcPinRead
|
|
16, FIXME: Ext3Fsd Build issues (SLIST/div64 for Win2k, browser files)
|
|
17, FIXME: Compiling test failure (fastio doesn't update i_size)
|
|
18, FIXME: Possible Mcb memory leak for symbolic links
|
|
|
|
40, V0.48: 2009-07-26
|
|
|
|
Modifications from V0.47:
|
|
|
|
1, Acronis TrueImage compatible issue solved:
|
|
Verified with Acronis True Image Home 2009. Also verified with
|
|
FreeOFTE 3.0, TrueCrypt 6.2a.
|
|
2, Driver code-signed for Vista and Server 2008
|
|
3, Code improvements for FastIo routines and drive letter & mount
|
|
points management
|
|
|
|
39, V0.47: 2009-06-01
|
|
|
|
Modifications from V0.46:
|
|
|
|
1, Bo Branten's 5+ patches merged, lots ifstest failures resolved
|
|
2, Mount point automatic assignment for USB key and other removable
|
|
disks or removable media devices
|
|
|
|
38, V0.46: 2008-05-24
|
|
|
|
Modifications from V0.46:
|
|
|
|
1, ext3 journal check and replay implemented. If the journal is
|
|
not empty ext2fsd will replay the journal and make the file
|
|
system consistent as an ext2 file system.
|
|
2, flexible-inode-size supported. recent Linux are using 256-byte
|
|
inode that fails 0.45 and before to show all the files.
|
|
3, FIXME: 2 minor issues that mislead EditPlus. EditPlus is always
|
|
trying to open any file with directory_only flag set to judge
|
|
whether the target is a directory or file, when the file isn't
|
|
a directory, the open request should be denied. But Ext2Fsd 0.45
|
|
and before doesn't. Another issue is that ext2 file time on disk
|
|
has different precision against windows (1 second vs 100 nano
|
|
second), which causes EditPlus thinks the file is being changed.
|
|
4, FIXME: a severe bug (likely happen on win2k system) which cause
|
|
dirty caches missed and slow down the whole system.
|
|
5, many other minor changes: bulk block allocation/release, possible
|
|
inode allocation dead-loop when all inodes are used out, Ext2Mgr
|
|
win2k support, other performance improvements.
|
|
|
|
37, V0.45: 2008-02-19
|
|
|
|
Modifications from V0.44:
|
|
|
|
1, set hidden attribute for all files starting with "."
|
|
2, update cache window size when writing to file end
|
|
3, reaper resources allocated during file creation
|
|
|
|
36, V0.44: 2008-02-09
|
|
|
|
Modifications from V0.43:
|
|
|
|
1, Ext2Fsd: LastWriteTime/LastAccessTime update
|
|
2, Ext2Mgr: Show driver/app versions in About dialog
|
|
|
|
35, V0.43: 2008-02-01
|
|
|
|
Modifications from V0.42:
|
|
|
|
1, Ext2Fsd: hidden/system attribute handling
|
|
2, Ext2Mgr: Added manifest to cope with UAC
|
|
|
|
34, V0.42: 2008-01-26
|
|
|
|
Features implemented:
|
|
1, Mountpoint auto mount/removal supported for removable disks
|
|
|
|
33, V0.41: 2008-01-25
|
|
|
|
Modifications from V0.40:
|
|
|
|
Bugs/Problems Fixed:
|
|
|
|
1, Some files couldn't be shown in explorer with utf8 codepage
|
|
2, System always pops "device is busy" when removing USB disks
|
|
|
|
Features implemented:
|
|
|
|
1, Ext2Fsd: Updated codepage encodings to latest Linux kernel
|
|
2, Ext2Mgr: Added Chinese translation which is in high demand
|
|
Enhanced mountpoints management for removable devices
|
|
|
|
32, V0.40: 2008-01-13
|
|
|
|
Modifications from V0.39
|
|
|
|
Bugs/Problems Fixed:
|
|
|
|
1, Directory inode isn't freed after directory deletion
|
|
2, Retrieval pointers implemented for extents mapping
|
|
3, Correct the handling of STATUS_CANT_WAIT. Vista's Cache
|
|
Manager often fails us on PingRead when copying bunch of
|
|
files/directories from ext2 volumes, and thus it results
|
|
in zero-data-content in copied files
|
|
4, Optimize space allocation to minimize fragments
|
|
|
|
31, V0.39: 2008-01-09
|
|
|
|
Modifications from V0.38
|
|
|
|
Bugs Fixed:
|
|
|
|
1, Disk space isn't released after deleting big files larger than
|
|
(BLOCK_SIZE * (12 + BLOCK_SIZE/4 + BLOCK_SIZE * BLOCK_SIZE / 16))
|
|
That's 4,299,210,752 in case BLOCK_SIZE is 4096.
|
|
|
|
30, V0.38: 2008-01-04
|
|
|
|
Modifications from V0.37
|
|
|
|
Bugs Fixed:
|
|
|
|
1, File block extents management improved to decrease CPU usage
|
|
2, Re-queue request when cache manager can't prepare pages in time
|
|
3, Possible deletion of it's hardlink entry when removing a file
|
|
4, Prohibit to create file with same names to dead symlinks
|
|
5, Wrong inode type in directory entry for symbol links
|
|
6, Possible memory leak when failed to overwrite file
|
|
7, Memory leak in Ext2FreeMcb, it's counted but not freed.
|
|
8, Possible loss of inode/dentry update: Ext2WriteVolume might
|
|
miss the dirty windows with SECTOR_SIZE aligned borders
|
|
9, SpinLock related routines shouldn't be resident in paged zone
|
|
10, Possible lost of files in directory listing
|
|
|
|
29, V0.37: 2007-12-25
|
|
|
|
Bugs Fixed:
|
|
|
|
1, files >=4G couldn't be copy&paste to ext2 volume, caused by a hardcode
|
|
limit in Ext2CreateFile
|
|
2, failure of "No enough memory" when renaming files under directories
|
|
it likely happens when renaming files under subdirectory with Samba
|
|
or Linux kernel CIFS.
|
|
3, possible deadlock in renaming with simultaneous access on the same file
|
|
4, possible wrong entry (hardlinks) deletion instead of itself: it's
|
|
rare to happen but possible when renaming, moving or deleting files.
|
|
5, entry management routines enhancement
|
|
6, 64k-block support
|
|
|
|
28, V0.36: 2007-12-22
|
|
|
|
Bugs Fixed:
|
|
|
|
1, BSOD caused by symlink pointing to itself or others
|
|
2, bug in new inode allocation algorithm
|
|
3, "." and ".." are treated as separate inodes
|
|
4, remove unnecessary local variables to reduce stack
|
|
overflow chances especially for nested symlinks
|
|
5, overall optimizations on block allocation/release/mapping
|
|
6, non-consistent Mcb reference issue (broken by symlinks)
|
|
7, memory leaks of BLOCK_DATA when expanding file
|
|
8, buffer overflow in Ext2Printf only for checked build
|
|
9, bug in handling exception of working cdroms ejection
|
|
|
|
Features Newly Implemented:
|
|
|
|
1, remove the execute bit ('x') for all newly created files
|
|
2, enhance memory reaper mechanism of all Xcbs (Fcb/Mcb)
|
|
3, big block support (up to 32k)
|
|
4, statistics of memory allocation / irp handling
|
|
|
|
Ext2 Volume Manager:
|
|
|
|
1, crash with RAW disk (non-partitioned)
|
|
2, wrong message box poped when setting service property
|
|
3, more partition types recognized
|
|
4, support memory/irp statistics
|
|
5, keyboard handling, as convenient as using mouse
|
|
|
|
27, V0.35: 2007-12-02
|
|
|
|
Bugs Fixed:
|
|
|
|
1, Corrected change notification message for renaming
|
|
2, e2fsck i_size issue: Ext2SetInformation doesn't free
|
|
extra blocks when shrinking FileEndOfFileInformation
|
|
3, BSOD with symlink since it's treated as a file
|
|
|
|
Features Newly Implemented:
|
|
|
|
1, Symbolic link support on most operations but creating
|
|
2, Property settings per volume, more flexible
|
|
3, Hiding files with specified prefix and suffix
|
|
4, Different implements on driver letter assignment
|
|
5, CDROM support to mount CD/DVD burned in EXT2 format
|
|
6, "Move and Replace (overwrite)" support
|
|
7, Install Ext2Mgr as a service
|
|
|
|
26, V0.31A: 2007-01-06
|
|
|
|
Bugs/Problems Fixed:
|
|
|
|
1, Disable the partition type changing, which causes linux could not boot
|
|
2, Added the test-signature to AMD64 drivers for vista system
|
|
|
|
25, V0.31: 2006-11-06
|
|
|
|
Bugs Fixed:
|
|
|
|
1, Wrong ERESOURCE referenced in Ext2DeleteFile
|
|
2, Stale path name referenced for directory notification
|
|
3, Codepage names inconsistent between Ext2Fsd and Ext2Mgr
|
|
|
|
Features Newly Implemented:
|
|
|
|
1, Vista supported
|
|
|
|
24, V0.30: 2006-10-21
|
|
|
|
Main Bugs Fixed:
|
|
|
|
1, Incorrect removable media support
|
|
2, Wrong file size, timestamps reporting
|
|
3, Some minor memory leaks
|
|
4, Improper usage of ERESOURCE locking
|
|
5, Wrong handling of some special I/O
|
|
6, Incorrect codepage loading sequence
|
|
7, Mke2fs is much improved
|
|
|
|
Main Features Newly Supported:
|
|
|
|
1, Network sharing, Oplocks handling
|
|
2, Ext2 Volume Manager (codepage, attributes)
|
|
|
|
23, V0.25: 2005-07-27
|
|
|
|
Bug Fixed:
|
|
|
|
1, File allocation blocks are not freed when being deleted
|
|
2, Other minor modifications on the program logics ...
|
|
|
|
Features Newly Supported:
|
|
|
|
1, Floppy support implemented.
|
|
2, Win64 (X86 64) support.
|
|
|
|
|
|
22, V0.24: 2005-03-28
|
|
|
|
Bug Fixed:
|
|
|
|
1, Codepage support errors fixed.
|
|
2, Ext2LookupFileName: should fail when it's not a real path.
|
|
3, Ext2FastIoQueryNetworkOpenInfo: Fcb not initialized.
|
|
|
|
Features Newly Supported:
|
|
|
|
1, Sparse file support.
|
|
2, Setup and config tools by Jared Breland.
|
|
|
|
|
|
21, V0.23: 2005-01-09
|
|
|
|
Bug Fixed:
|
|
|
|
1, Ext2ReadSync: Thread stack is paged out, which causes "Event" is invalid.
|
|
2, Ext2InitializeVcb: Ext2Global->McbList is referred before initializing.
|
|
|
|
Features Newly Supported:
|
|
|
|
1, Multi codepages supported
|
|
In registry, there's a new item named "CodePage", just change it to the
|
|
codepage name you want to use. The codepage name is the same to linux
|
|
system.
|
|
|
|
Here's the codepages list:
|
|
|
|
big5 cp1251 cp1255 cp437 cp737 cp775 cp850 cp852 cp855
|
|
cp857 cp860 cp861 cp862 cp863 cp864 cp865 cp866 cp869
|
|
cp874 cp949 cp950 euc_jp euc_kr iso8859_1 iso8859_13
|
|
iso8859_14 iso8859_15 iso8859_2 iso8859_3 iso8859_4 iso8859_5
|
|
iso8859_6 iso8859_7 iso8859_8 iso8859_9 koi8_r koi8_ru koi8_u
|
|
sjis tis_620 cp936 gb2312 utf8
|
|
|
|
If you don't specify it or make a wrong page type, system default OEM
|
|
codepage will be used.
|
|
|
|
|
|
20, V0.22b: 2004-11-05
|
|
|
|
Bugs Fixed:
|
|
1, Deleting and copying files from/to a directory frequently corrupts
|
|
the directory. E2fsck will report "directory corrupted". This bug
|
|
is cuased by Ext2AddEntry.
|
|
|
|
19, V0.22a: 2004-10-28
|
|
|
|
Bugs Fixed:
|
|
1, Fsck error reports: "inode is in use, but has dtime set." for
|
|
deleted directories. This bug caused by non-zero i_links_count
|
|
of deleted directory inode.
|
|
2, When many files (Normally > 255 files, reported by Zhoujingg)
|
|
are deleted, the dir entry may cross blocks, which will cause
|
|
ext2/ext3 driver could not correctly read the directory entries.
|
|
|
|
18, V0.22: 2004-10-04
|
|
|
|
Bugs Fixed:
|
|
1, Mcb part overflows the stack
|
|
2, Delay-writing errors: cache lost
|
|
3, Bad file type for newly created files
|
|
|
|
Features Newly Supported:
|
|
1, Optimize the Mcb management part and the function of Ext2SaveGroup
|
|
2, Big files (> 4G) accessing
|
|
|
|
17, V0.21: 2004-06-09
|
|
|
|
Bugs Fixed:
|
|
1, Ext2Flush does not complete the IRP for READ_ONLY mode.
|
|
2, Delayed close tries to refer completed Irps.
|
|
3, Directory content does NOT ends with zero-inode entry. Ext2ScanDir
|
|
and Ext2QueryDirectory do a wrong way to enum entries. Thanks to
|
|
"Bomb" <bomb_hero@163.com>
|
|
4, Ext2MountVolume still returns STATUS_SUCCESS for non-ext2 volumes.
|
|
5, Ext2SetRenameInfo always treats "Rename" as "Move"
|
|
|
|
Features Newly Supported:
|
|
1, Various sector sizes support from 512 to 4096.
|
|
2, Compatible for windows nt 4.0.
|
|
3, Removable disk supported (CDROM is to be supported in next version.)
|
|
4, Volumes umounting works (Force dismount supported)...
|
|
5, Floppy partially support (NOT complete yet) ...
|
|
6, Add CheckingBitmap / Ext3ForceWriting parameter key in the registry
|
|
7, Quick format supported (directly access on mounted ext2 volumes.)
|
|
|
|
16, V0.20: 2003-12-26
|
|
1, Merge Petr Borsodi's patches for several problems.
|
|
2, Unicode/OEM characters support.?
|
|
3, Change notifications is supported.
|
|
4, Totally Optimize and upgrade.
|
|
5, ......
|
|
|
|
15, V0.10A: 2003-01-14
|
|
1, FIXME: Deadlock caused by CcPurgeCacheSection for readonly volumes
|
|
|
|
14, V0.10: 2003-01-03
|
|
1, Merge xjaguar's patch: Ext2NewInode and Ext2NewBlock fail on one
|
|
group ext2 system.
|
|
2, Merge Bo Branten's patch: Sync modifications of Romfs.
|
|
3, FIXME: Ext2Flush causes crash when shutting down. Thanks Petr Borsodi
|
|
for his clues.
|
|
4, FIXME: Crash when playing media files (mpg, wav ...)
|
|
5, ......
|
|
|
|
13, V0.09A: 2002-08-03
|
|
1, Add mcb feature to keep cache coherence between volume and file
|
|
streams
|
|
2, Skip "AdvacneOnly" when setting FileEndOfFileInformation.
|
|
3, Add file stream dirty flag in order to flush it when cleanup.
|
|
4, Some corrections of lock operations
|
|
5, Fix volume size reporting in Ext2QueryVolumeInformation
|
|
|
|
12, V0.09: 2002-07-25
|
|
1, Fix some minor bugs
|
|
2, Redesign some internal architectures
|
|
3, Add writing support (Ext3 is not supported yet.)
|
|
1) File write.c: writing functions
|
|
2) File flush.c: do flushing
|
|
3) File shutdown.c: prepare for system shutdown
|
|
4) Many modifications in create.c/fileinfo.c/volinfo.c ...
|
|
|
|
11, V0.08: 2002-05-28
|
|
1, Fix page-fault bsod when reading bad-size inodes
|
|
2, Fix a minor bug in Ext2GetBlock
|
|
3, Add binary-tree-mechanism to store the info of opened files
|
|
|
|
10, V0.07A: 2002-05-17
|
|
1, Merge Boose's patch: make ext2fsd cooperating with his ntifs.h
|
|
(verion r36) and winxp ddk.
|
|
2, Fix wild-cases matching in Ext2QueryDirectory
|
|
|
|
9, V0.07: 2002-05-14
|
|
1, FIXME: only some minor bugs
|
|
2, Add access protection of some sharable members
|
|
3, Add booting start support
|
|
4, Change the driver's name to ext2fsd.sys
|
|
|
|
8, V0.06: 2002-03-12
|
|
1, FIXME: BSOD when playing wav/mpeg/avi with IE embedded media player.
|
|
2, Some optimizations in Ext2QueryDirectionary and Ext2ScanDir.
|
|
|
|
7, V0.05: 2002-03-01
|
|
1, FIXME: Ext2Create: Ext2ScanDir returns wrong fcb.
|
|
2, Support file executing now.
|
|
|
|
6, V0.04: 2002-02-20
|
|
1, Add caching support.
|
|
|
|
5, V0.03: 2002-02
|
|
(It's an internal version, not released.)
|
|
1, Keep up with romfs: add byte-range lock and directory change
|
|
notification.
|
|
|
|
4, V0.02: 2002-02-07
|
|
1, Add large ext2 partition support.
|
|
|
|
3, V0.01: 2002-01-26
|
|
1, Make it public at http://www.ext2fsd.com.
|
|
|
|
2, 2001-10
|
|
1, Non-public pre-release of ext2fsd was born.
|
|
|
|
1, 2001-08
|
|
1, I began the journey of file system driver developing with romfs
|
|
|
|
|
|
======================
|
|
Bugs
|
|
======================
|
|
|
|
(Nobody can expect that ext2fsd is bug-free.)
|
|
Any bugs, please mail to me.
|
|
|
|
|
|
======================
|
|
How to install
|
|
======================
|
|
|
|
1, Build this project, and ext2fsd.sys will be created.
|
|
2, Copy ext2fsd.sys to %system32%\drivers.
|
|
3, Import the ext2fsd.reg into your system registry.
|
|
4, After rebooting your machine, run "net start ext2fsd" at a dos shell.
|
|
5, Use mount/unmount tools to mount or unmount a disk partition.
|
|
6, You can unload ext2fsd from system with unload tool.
|
|
|
|
After version 0.10, these is an easy way:
|
|
|
|
1, Just run "Setup.bat" in "Setup" subdir for the first time. Then just
|
|
run "net start ext2fsd" in a dos shell to start the driver.
|
|
|
|
After v0.23, you need specify your system version:
|
|
|
|
setup 2k: to install ext2fsd for windows 200
|
|
setup xp: to install ext2fsd for windows xp
|
|
|
|
|
|
2, Then you can mount the ext2 partitions without rebooting.
|
|
|
|
|
|
======================
|
|
How to uninstall
|
|
======================
|
|
|
|
1, Just run uninstall.bat in the Ext2Fsd.zip package.
|
|
.OR.
|
|
2, Use the "Add/Remove Programs" in "Control Panel", click the item of
|
|
"linux ext2 file system driver" to remove the program.
|
|
.OR.
|
|
3, Manually remove the ext2fsd projects files.
|
|
a) Remove the registry: HKLM\...\Ext2Fsd & Uninstall ...
|
|
b) Remove Mount.exe/Mke2fs.exe from $(SystemRoot)\system32
|
|
c) Remove Ext2Fsd.sys from $(SystemRoot)\system32\drivers
|
|
d) Remove ext2fsd.inf from $(SystemRoot)\inf
|
|
|
|
|
|
======================
|
|
Writing support
|
|
======================
|
|
|
|
Two ways are optional to enable writing support.
|
|
|
|
1, Change the value of "Parameters\WritingSupport" in ext2fsd.reg to 1, then
|
|
import the reg file into system registry.
|
|
Or modify the registry directly. Like this:
|
|
|
|
-------------------------------------------------------------------------
|
|
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Ext2Fsd\Parameters]
|
|
"WritingSupport"=dword:00000001
|
|
-------------------------------------------------------------------------
|
|
|
|
Notes: Reboot is need.
|
|
|
|
Or
|
|
|
|
2, Change the definition of EXT2_READ_ONLY to 0, and recompile ext2fsd, then
|
|
overwrite the original one. (See line 27 in ext2fs.h)
|
|
|
|
|
|
Please refer FAQ.txt for more information.
|