Theodore Ts'o | 5e941d2 | 2002-05-13 07:53:11 -0400 | [diff] [blame] | 1 | ext2ed - The extended-2 filesystem editor, version e2fsprogs |
| 2 | |
| 3 | |
| 4 | This version of ext2ed has been modified and updated by Theodore Ts'o |
Theodore Ts'o | 2b1f827 | 2002-07-09 01:33:51 -0400 | [diff] [blame] | 5 | for inclusion with the e2fsprogs package. It now builds with modern |
| 6 | ncurses and I've fixed various small bugs, particular in the redrawing |
| 7 | and resizing functions. |
Theodore Ts'o | 5e941d2 | 2002-05-13 07:53:11 -0400 | [diff] [blame] | 8 | |
| 9 | It is currently not built by default -- the top-level e2fsprogs |
| 10 | Makefile doesn't recurse into this directory. This is because ext2ed |
| 11 | has a number of VERY SERIOUS shortcomings: |
| 12 | |
Theodore Ts'o | 2b1f827 | 2002-07-09 01:33:51 -0400 | [diff] [blame] | 13 | 1) It doesn't work on filesystems bigger than 2GB |
Theodore Ts'o | 5e941d2 | 2002-05-13 07:53:11 -0400 | [diff] [blame] | 14 | |
| 15 | 2) It assumes that all's the world an Intel, and assumes that |
| 16 | everything is in Intel (little-endian) byte order. |
| 17 | |
Theodore Ts'o | 2b1f827 | 2002-07-09 01:33:51 -0400 | [diff] [blame] | 18 | Fixing either of these problems would be non-trivial, and so I at this |
| 19 | point DO NOT RECOMMEND that distributions try to include this program, |
| 20 | even as modified and updated in e2fsprogs. This especially goes for |
Theodore Ts'o | 5e941d2 | 2002-05-13 07:53:11 -0400 | [diff] [blame] | 21 | Debian, where the Debian maintainer for e2fsprogs has a history of |
| 22 | making authorized changes to e2fsprogs to include programs that aren't |
| 23 | supported, and then starts bugging me with bug reports. YES I KNOW. |
| 24 | THIS PROGRAM HAS HORRIBLE SHORTCOMINGS. IT IS INCLUDED HERE ONLY |
| 25 | BECAUSE IT'S A CONVENIENT WAY FOR (FOR E2FSPROGS DEVELOPERS ON INTEL |
| 26 | MACHINES) TO GENERATE TEST CASES BY SELECTIVELY CORRUPTING |
Theodore Ts'o | 2b1f827 | 2002-07-09 01:33:51 -0400 | [diff] [blame] | 27 | FILESYSTEMS. I WILL NOT SUPPORT THIS PROGRAM FOR USE BY GENERAL USERS |
| 28 | SO PLEASE DO NOT INCLUDE IT IN A DISTRIBUTION. |
Theodore Ts'o | 5e941d2 | 2002-05-13 07:53:11 -0400 | [diff] [blame] | 29 | |
| 30 | I have currently disabled the use of GNU Readline in this program, |
| 31 | because readline and ncurses really don't play well together at all. |
| 32 | Readline assumes that it can write arbitrary text to the screen |
| 33 | (especially when it tries to print out a completion list), which just |
| 34 | doesn't work with ncurses. Fixing this so they would work together |
| 35 | would require wholesale changes to readline. |
| 36 | |
| 37 | Theodore Ts'o |
| 38 | tytso@MIT.EDU |
| 39 | May 12, 2001 |
| 40 | |
| 41 | ---------------------------------------------------------------------------- |
| 42 | |
Theodore Ts'o | 0f31c73 | 2002-05-11 13:03:25 -0400 | [diff] [blame] | 43 | ext2ed - The extended-2 filesystem editor, version 0.2 |
Theodore Ts'o | 583a1ce | 2002-05-11 13:00:22 -0400 | [diff] [blame] | 44 | ------------------------------------------------------ |
| 45 | |
Theodore Ts'o | 0f31c73 | 2002-05-11 13:03:25 -0400 | [diff] [blame] | 46 | This is version 0.2 of ext2ed - The extended-2 filesystem editor. |
| 47 | |
| 48 | Modifications on Apr 5 2001 |
| 49 | This is minor bug fixes to ext2ed, as of April 2001. |
| 50 | It supports modern ext2 version that has file type in directory structure |
| 51 | and fixes the missunderstanding between ncurses and |
| 52 | readline. |
| 53 | |
| 54 | I first applied patches from Redhat except the one for readline that |
| 55 | rewrote a readline behavior. |
| 56 | |
| 57 | Globals diffs between version 0.1 and 0.2 is stored in file : |
| 58 | diff-ext2ed.1.2 |
| 59 | |
| 60 | Christian Bac <Christian.Bac@nt-evry.fr> |
| 61 | |
| 62 | ---------------------------------------------------------------------------- |
Theodore Ts'o | 583a1ce | 2002-05-11 13:00:22 -0400 | [diff] [blame] | 63 | |
| 64 | Documentation |
| 65 | ------------- |
| 66 | |
| 67 | ext2ed's documentation consists of three documents: |
| 68 | |
| 69 | 1. The user's guide. |
| 70 | 2. Technical overview of the ext2 filesystem. |
| 71 | 3. The EXT2ED design and implementation document. |
| 72 | |
| 73 | Those documents are available in the doc directory, in linuxdoc-sgml and |
| 74 | postscript formats. |
| 75 | |
| 76 | The documentation is also available online at: |
| 77 | |
| 78 | http://tochnapc2.technion.ac.il |
| 79 | |
| 80 | under the ext2ed section. |
| 81 | |
| 82 | Installation |
| 83 | ------------ |
| 84 | |
| 85 | ext2ed requires the kernel sources and the readline and ncurses packages. |
| 86 | Please edit the makefile if you are using an "old" version of ncurses (See the |
| 87 | details below) or if gcc can't find the various header files and libraries. |
| 88 | |
| 89 | To install, simply issue a 'make' command to compile and a 'make install' |
| 90 | command to install. I have also included an already compiled linux a.out |
| 91 | binary. |
| 92 | |
| 93 | ext2ed and ncurses |
| 94 | ------------------ |
| 95 | |
| 96 | ext2ed uses the ncurses library for terminal output. It is very important |
| 97 | that ncurses will be properly installed on your system: |
| 98 | |
| 99 | 1. Old versions of ncurses (around 1.8.5) need the OLD_NCURSES compile |
| 100 | time option in EXT2ED. |
| 101 | |
| 102 | At least from 1.9.2c, this flag should not be used. I would recommend |
| 103 | upgrading the ncurses library to the newer versions. |
| 104 | |
| 105 | 2. ncurses uses its own terminfo database rather then the termcap file. |
| 106 | It is important that the terminfo database will be found by ncurses. |
| 107 | If this is not the case, you will see on startup some lines which |
| 108 | refer to /etc/termcap. This will mean that there is a problem with |
| 109 | the terminfo database. |
| 110 | |
| 111 | 3. Newer versions of ncurses (and the 1.3 series of the kernel) describe |
| 112 | the linux console in the entry 'linux' and not 'console', as it was |
| 113 | before. If you run ext2ed in the linux console, you should either |
| 114 | set your TERM environment variable to 'linux' or link |
| 115 | l/linux to c/console in the terminfo database. |
| 116 | |
| 117 | 4. The percompiled binary was linked with ncurses 1.9.4 and will search |
| 118 | for the terminfo database on /usr/local/lib/terminfo. If you are |
| 119 | using it, and your 1.9.4 compatible terminfo database is not on the |
| 120 | directory above, use the TERMINFO environment variable to specify |
| 121 | an alternate location. |
| 122 | |
| 123 | Running ext2ed |
| 124 | -------------- |
| 125 | |
| 126 | For those of you who don't like reading lengthy articles, here are a few |
| 127 | basic guidelines: |
| 128 | |
| 129 | 1. Don't use ext2ed to change a mounted filesystem ! |
| 130 | |
| 131 | Using ext2ed in read-only mode on a mounted filesystem can be allowed |
| 132 | by using the configuration file option 'AllowMountedRead on'. However, |
| 133 | note that the displayed data will be unreliable. |
| 134 | |
| 135 | 2. ext2ed currently can't handle filesystems bigger than 2 GB. I am |
| 136 | sorry for the inconvenience. This will hopefully be fixed in future |
| 137 | releases. |
| 138 | |
| 139 | 3. Before running ext2ed, edit the configuration file |
| 140 | /var/lib/ext2ed/ext2ed.conf to suit your needs. The various |
| 141 | configuration options are documented there. |
| 142 | |
| 143 | 4. Use the 'setdevice' command to open an ext2 filesystem. |
| 144 | e.g. 'setdevice /dev/hda1'. |
| 145 | |
| 146 | 5. If the filesystem is an ext2 filesystem and ext2ed fails to |
| 147 | autodetect this, use the 'ForceExt2 on' configuration file option. |
| 148 | |
| 149 | 6. The filesystem will always be opened in read-only mode. Feel free to |
| 150 | experiment, but take care with the 'enablewrite' command. |
| 151 | |
| 152 | ----------------------------------------------------------------------------- |
| 153 | |
| 154 | Feel free to send me feedback with anything regarding to ext2ed. |
| 155 | |
| 156 | Enjoy, |
| 157 | |
| 158 | Gadi Oxman <tgud@tochnapc2.technion.ac.il> |
Theodore Ts'o | 0f31c73 | 2002-05-11 13:03:25 -0400 | [diff] [blame] | 159 | Haifa, August 23 1995 |
| 160 | |