161 lines
		
	
	
		
			5.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			161 lines
		
	
	
		
			5.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
ext2ed - The extended-2 filesystem editor, version e2fsprogs
 | 
						|
 | 
						|
 | 
						|
This version of ext2ed has been modified and updated by Theodore Ts'o
 | 
						|
for inclusion with the e2fsprogs package.  It now builds with modern
 | 
						|
ncurses and I've fixed various small bugs, particular in the redrawing
 | 
						|
and resizing functions.
 | 
						|
 | 
						|
It is currently not built by default -- the top-level e2fsprogs
 | 
						|
Makefile doesn't recurse into this directory.  This is because ext2ed
 | 
						|
has a number of VERY SERIOUS shortcomings:
 | 
						|
 | 
						|
1)  It doesn't work on filesystems bigger than 2GB
 | 
						|
 | 
						|
2)  It assumes that all's the world an Intel, and assumes that
 | 
						|
	everything is in Intel (little-endian) byte order.
 | 
						|
 | 
						|
Fixing either of these problems would be non-trivial, and so I at this
 | 
						|
point DO NOT RECOMMEND that distributions try to include this program,
 | 
						|
even as modified and updated in e2fsprogs.  This especially goes for
 | 
						|
Debian, where the Debian maintainer for e2fsprogs has a history of
 | 
						|
making authorized changes to e2fsprogs to include programs that aren't
 | 
						|
supported, and then starts bugging me with bug reports.  YES I KNOW.
 | 
						|
THIS PROGRAM HAS HORRIBLE SHORTCOMINGS.  IT IS INCLUDED HERE ONLY
 | 
						|
BECAUSE IT'S A CONVENIENT WAY FOR (FOR E2FSPROGS DEVELOPERS ON INTEL
 | 
						|
MACHINES) TO GENERATE TEST CASES BY SELECTIVELY CORRUPTING
 | 
						|
FILESYSTEMS.  I WILL NOT SUPPORT THIS PROGRAM FOR USE BY GENERAL USERS
 | 
						|
SO PLEASE DO NOT INCLUDE IT IN A DISTRIBUTION.
 | 
						|
 | 
						|
I have currently disabled the use of GNU Readline in this program,
 | 
						|
because readline and ncurses really don't play well together at all.
 | 
						|
Readline assumes that it can write arbitrary text to the screen
 | 
						|
(especially when it tries to print out a completion list), which just
 | 
						|
doesn't work with ncurses.  Fixing this so they would work together
 | 
						|
would require wholesale changes to readline.   
 | 
						|
 | 
						|
				Theodore Ts'o
 | 
						|
				tytso@MIT.EDU
 | 
						|
				May 12, 2001
 | 
						|
 | 
						|
----------------------------------------------------------------------------
 | 
						|
 | 
						|
ext2ed - The extended-2 filesystem editor, version 0.2
 | 
						|
------------------------------------------------------
 | 
						|
 | 
						|
This is version 0.2 of ext2ed - The extended-2 filesystem editor.
 | 
						|
 | 
						|
Modifications on Apr 5 2001
 | 
						|
This is minor bug fixes to ext2ed, as of April 2001.
 | 
						|
It supports modern ext2 version that has file type in directory structure
 | 
						|
and fixes the misunderstanding between ncurses and
 | 
						|
readline.
 | 
						|
 | 
						|
I first applied patches from Red Hat except the one for readline that 
 | 
						|
rewrote a readline behavior.
 | 
						|
 | 
						|
Globals diffs between version 0.1 and 0.2 is stored in file :
 | 
						|
	diff-ext2ed.1.2
 | 
						|
 | 
						|
Christian Bac <Christian.Bac@nt-evry.fr>
 | 
						|
 | 
						|
----------------------------------------------------------------------------
 | 
						|
 | 
						|
Documentation
 | 
						|
-------------
 | 
						|
 | 
						|
ext2ed's documentation consists of three documents:
 | 
						|
 | 
						|
1.	The user's guide.
 | 
						|
2.	Technical overview of the ext2 filesystem.
 | 
						|
3.	The EXT2ED design and implementation document.
 | 
						|
 | 
						|
Those documents are available in the doc directory, in linuxdoc-sgml and
 | 
						|
postscript formats.
 | 
						|
 | 
						|
The documentation is also available online at:
 | 
						|
 | 
						|
http://tochnapc2.technion.ac.il
 | 
						|
 | 
						|
under the ext2ed section.
 | 
						|
 | 
						|
Installation
 | 
						|
------------
 | 
						|
 | 
						|
ext2ed requires the kernel sources and the readline and ncurses packages.
 | 
						|
Please edit the makefile if you are using an "old" version of ncurses (See the
 | 
						|
details below) or if gcc can't find the various header files and libraries.
 | 
						|
 | 
						|
To install, simply issue a 'make' command to compile and a 'make install'
 | 
						|
command to install. I have also included an already compiled linux a.out
 | 
						|
binary.
 | 
						|
 | 
						|
ext2ed and ncurses
 | 
						|
------------------
 | 
						|
 | 
						|
ext2ed uses the ncurses library for terminal output. It is very important
 | 
						|
that ncurses will be properly installed on your system:
 | 
						|
 | 
						|
1.	Old versions of ncurses (around 1.8.5) need the OLD_NCURSES compile
 | 
						|
	time option in EXT2ED.
 | 
						|
 | 
						|
	At least from 1.9.2c, this flag should not be used. I would recommend
 | 
						|
	upgrading the ncurses library to the newer versions.
 | 
						|
 | 
						|
2.	ncurses uses its own terminfo database rather then the termcap file.
 | 
						|
	It is important that the terminfo database will be found by ncurses.
 | 
						|
	If this is not the case, you will see on startup some lines which
 | 
						|
	refer to /etc/termcap. This will mean that there is a problem with
 | 
						|
	the terminfo database.
 | 
						|
 | 
						|
3.	Newer versions of ncurses (and the 1.3 series of the kernel) describe
 | 
						|
	the linux console in the entry 'linux' and not 'console', as it was
 | 
						|
	before. If you run ext2ed in the linux console, you should either
 | 
						|
	set your TERM environment variable to 'linux' or link
 | 
						|
	l/linux to c/console in the terminfo database.
 | 
						|
 | 
						|
4.	The precompiled binary was linked with ncurses 1.9.4 and will search
 | 
						|
	for the terminfo database on /usr/local/lib/terminfo. If you are
 | 
						|
	using it, and your 1.9.4 compatible terminfo database is not on the
 | 
						|
	directory above, use the TERMINFO environment variable to specify
 | 
						|
	an alternate location.
 | 
						|
 | 
						|
Running ext2ed
 | 
						|
--------------
 | 
						|
 | 
						|
For those of you who don't like reading lengthy articles, here are a few
 | 
						|
basic guidelines:
 | 
						|
 | 
						|
1.	Don't use ext2ed to change a mounted filesystem !
 | 
						|
 | 
						|
	Using ext2ed in read-only mode on a mounted filesystem can be allowed
 | 
						|
	by using the configuration file option 'AllowMountedRead on'. However,
 | 
						|
	note that the displayed data will be unreliable.
 | 
						|
 | 
						|
2.	ext2ed currently can't handle filesystems bigger than 2 GB. I am
 | 
						|
	sorry for the inconvenience. This will hopefully be fixed in future
 | 
						|
	releases.
 | 
						|
 | 
						|
3. 	Before running ext2ed, edit the configuration file
 | 
						|
	/var/lib/ext2ed/ext2ed.conf to suit your needs. The various
 | 
						|
	configuration options are documented there.
 | 
						|
 | 
						|
4.	Use the 'setdevice' command to open an ext2 filesystem.
 | 
						|
	e.g. 'setdevice /dev/hda1'.
 | 
						|
 | 
						|
5.	If the filesystem is an ext2 filesystem and ext2ed fails to
 | 
						|
	autodetect this, use the 'ForceExt2 on' configuration file option.
 | 
						|
 | 
						|
6.	The filesystem will always be opened in read-only mode. Feel free to
 | 
						|
	experiment, but take care with the 'enablewrite' command.
 | 
						|
 | 
						|
-----------------------------------------------------------------------------
 | 
						|
 | 
						|
Feel free to send me feedback with anything regarding to ext2ed.
 | 
						|
 | 
						|
Enjoy,
 | 
						|
 | 
						|
Gadi Oxman <tgud@tochnapc2.technion.ac.il>
 | 
						|
Haifa, August 23 1995
 | 
						|
 |