xref: /aosp_15_r20/external/e2fsprogs/ext2ed/doc/user-guide.sgml (revision 6a54128f25917bfc36a8a6e9d722c04a0b4641b6)
1*6a54128fSAndroid Build Coastguard Worker<!DOCTYPE Article PUBLIC "-//OASIS//DTD DocBook V4.1//EN">
2*6a54128fSAndroid Build Coastguard Worker
3*6a54128fSAndroid Build Coastguard Worker<Article>
4*6a54128fSAndroid Build Coastguard Worker
5*6a54128fSAndroid Build Coastguard Worker<ArticleInfo>
6*6a54128fSAndroid Build Coastguard Worker
7*6a54128fSAndroid Build Coastguard Worker<Title>EXT2ED - The Extended-2 filesystem editor - User's guide</Title>
8*6a54128fSAndroid Build Coastguard Worker<AUTHOR>
9*6a54128fSAndroid Build Coastguard Worker<FirstName>Gadi Oxman, [email protected]</FirstName>
10*6a54128fSAndroid Build Coastguard Worker</AUTHOR>
11*6a54128fSAndroid Build Coastguard Worker<PubDate>v0.1, August 3 1995</PubDate>
12*6a54128fSAndroid Build Coastguard Worker
13*6a54128fSAndroid Build Coastguard Worker<Abstract>
14*6a54128fSAndroid Build Coastguard Worker
15*6a54128fSAndroid Build Coastguard Worker<Para>
16*6a54128fSAndroid Build Coastguard WorkerThis is only the initial version of this document. It may be unclear at
17*6a54128fSAndroid Build Coastguard Workersome places. Please send me feedback with anything regarding to it.
18*6a54128fSAndroid Build Coastguard Worker</Para>
19*6a54128fSAndroid Build Coastguard Worker
20*6a54128fSAndroid Build Coastguard Worker</Abstract>
21*6a54128fSAndroid Build Coastguard Worker
22*6a54128fSAndroid Build Coastguard Worker</ArticleInfo>
23*6a54128fSAndroid Build Coastguard Worker
24*6a54128fSAndroid Build Coastguard Worker<Sect1>
25*6a54128fSAndroid Build Coastguard Worker<Title>About EXT2ED documentation</Title>
26*6a54128fSAndroid Build Coastguard Worker
27*6a54128fSAndroid Build Coastguard Worker<Para>
28*6a54128fSAndroid Build Coastguard WorkerThe EXT2ED documentation consists of three parts:
29*6a54128fSAndroid Build Coastguard Worker
30*6a54128fSAndroid Build Coastguard Worker<ItemizedList>
31*6a54128fSAndroid Build Coastguard Worker<ListItem>
32*6a54128fSAndroid Build Coastguard Worker
33*6a54128fSAndroid Build Coastguard Worker<Para>
34*6a54128fSAndroid Build Coastguard Worker	The ext2 filesystem overview.
35*6a54128fSAndroid Build Coastguard Worker</Para>
36*6a54128fSAndroid Build Coastguard Worker</ListItem>
37*6a54128fSAndroid Build Coastguard Worker<ListItem>
38*6a54128fSAndroid Build Coastguard Worker
39*6a54128fSAndroid Build Coastguard Worker<Para>
40*6a54128fSAndroid Build Coastguard Worker	The EXT2ED user's guide.
41*6a54128fSAndroid Build Coastguard Worker</Para>
42*6a54128fSAndroid Build Coastguard Worker</ListItem>
43*6a54128fSAndroid Build Coastguard Worker<ListItem>
44*6a54128fSAndroid Build Coastguard Worker
45*6a54128fSAndroid Build Coastguard Worker<Para>
46*6a54128fSAndroid Build Coastguard Worker	The EXT2ED design and implementation.
47*6a54128fSAndroid Build Coastguard Worker</Para>
48*6a54128fSAndroid Build Coastguard Worker</ListItem>
49*6a54128fSAndroid Build Coastguard Worker
50*6a54128fSAndroid Build Coastguard Worker</ItemizedList>
51*6a54128fSAndroid Build Coastguard Worker
52*6a54128fSAndroid Build Coastguard Worker</Para>
53*6a54128fSAndroid Build Coastguard Worker
54*6a54128fSAndroid Build Coastguard Worker<Para>
55*6a54128fSAndroid Build Coastguard WorkerIf you intend to used EXT2ED, I strongly suggest that you would be familiar
56*6a54128fSAndroid Build Coastguard Workerwith the material presented in the <Literal remap="tt">ext2 filesystem overview</Literal> as well.
57*6a54128fSAndroid Build Coastguard Worker</Para>
58*6a54128fSAndroid Build Coastguard Worker
59*6a54128fSAndroid Build Coastguard Worker<Para>
60*6a54128fSAndroid Build Coastguard WorkerIf you also intend to browse and modify the source code, I suggest that you
61*6a54128fSAndroid Build Coastguard Workerwill also read the article <Literal remap="tt">The EXT2ED design and implementation</Literal>, as it
62*6a54128fSAndroid Build Coastguard Workerprovides a general overview of the structure of my source code.
63*6a54128fSAndroid Build Coastguard Worker</Para>
64*6a54128fSAndroid Build Coastguard Worker
65*6a54128fSAndroid Build Coastguard Worker</Sect1>
66*6a54128fSAndroid Build Coastguard Worker
67*6a54128fSAndroid Build Coastguard Worker<Sect1>
68*6a54128fSAndroid Build Coastguard Worker<Title>Introduction</Title>
69*6a54128fSAndroid Build Coastguard Worker
70*6a54128fSAndroid Build Coastguard Worker<Para>
71*6a54128fSAndroid Build Coastguard WorkerEXT2ED is a "disk editor" for the ext2 filesystem. Its purpose is to show
72*6a54128fSAndroid Build Coastguard Workeryou the internal structures of the ext2 filesystem in an rather intuitive
73*6a54128fSAndroid Build Coastguard Workerand logical way, so that it will be easier to "travel" between the various
74*6a54128fSAndroid Build Coastguard Workerinternal filesystem structures.
75*6a54128fSAndroid Build Coastguard Worker</Para>
76*6a54128fSAndroid Build Coastguard Worker
77*6a54128fSAndroid Build Coastguard Worker</Sect1>
78*6a54128fSAndroid Build Coastguard Worker
79*6a54128fSAndroid Build Coastguard Worker<Sect1>
80*6a54128fSAndroid Build Coastguard Worker<Title>Basic concepts in EXT2ED</Title>
81*6a54128fSAndroid Build Coastguard Worker
82*6a54128fSAndroid Build Coastguard Worker<Para>
83*6a54128fSAndroid Build Coastguard WorkerTwo basic concepts in EXT2ED are <Literal remap="tt">commands</Literal> and <Literal remap="tt">types</Literal>.
84*6a54128fSAndroid Build Coastguard Worker</Para>
85*6a54128fSAndroid Build Coastguard Worker
86*6a54128fSAndroid Build Coastguard Worker<Para>
87*6a54128fSAndroid Build Coastguard WorkerEXT2ED is object-oriented in the sense that it defines objects in the
88*6a54128fSAndroid Build Coastguard Workerfilesystem, like a <Literal remap="tt">super-block</Literal> or a <Literal remap="tt">directory</Literal>. An object is
89*6a54128fSAndroid Build Coastguard Workersomething which "knows" how to handle some aspect of the filesystem.
90*6a54128fSAndroid Build Coastguard Worker</Para>
91*6a54128fSAndroid Build Coastguard Worker
92*6a54128fSAndroid Build Coastguard Worker<Para>
93*6a54128fSAndroid Build Coastguard WorkerYour interaction with EXT2ED is done through <Literal remap="tt">commands</Literal> which EXT2ED
94*6a54128fSAndroid Build Coastguard Workeraccepts. There are three levels of commands:
95*6a54128fSAndroid Build Coastguard Worker
96*6a54128fSAndroid Build Coastguard Worker<ItemizedList>
97*6a54128fSAndroid Build Coastguard Worker<ListItem>
98*6a54128fSAndroid Build Coastguard Worker
99*6a54128fSAndroid Build Coastguard Worker<Para>
100*6a54128fSAndroid Build Coastguard Worker	General Commands
101*6a54128fSAndroid Build Coastguard Worker</Para>
102*6a54128fSAndroid Build Coastguard Worker</ListItem>
103*6a54128fSAndroid Build Coastguard Worker<ListItem>
104*6a54128fSAndroid Build Coastguard Worker
105*6a54128fSAndroid Build Coastguard Worker<Para>
106*6a54128fSAndroid Build Coastguard Worker	Extended-2 Filesystem general commands
107*6a54128fSAndroid Build Coastguard Worker</Para>
108*6a54128fSAndroid Build Coastguard Worker</ListItem>
109*6a54128fSAndroid Build Coastguard Worker<ListItem>
110*6a54128fSAndroid Build Coastguard Worker
111*6a54128fSAndroid Build Coastguard Worker<Para>
112*6a54128fSAndroid Build Coastguard Worker	Type specific commands
113*6a54128fSAndroid Build Coastguard Worker</Para>
114*6a54128fSAndroid Build Coastguard Worker</ListItem>
115*6a54128fSAndroid Build Coastguard Worker
116*6a54128fSAndroid Build Coastguard Worker</ItemizedList>
117*6a54128fSAndroid Build Coastguard Worker
118*6a54128fSAndroid Build Coastguard WorkerThe General commands are always available.
119*6a54128fSAndroid Build Coastguard Worker</Para>
120*6a54128fSAndroid Build Coastguard Worker
121*6a54128fSAndroid Build Coastguard Worker<Para>
122*6a54128fSAndroid Build Coastguard WorkerThe ext2 general commands are available only when editing an ext2 filesystem.
123*6a54128fSAndroid Build Coastguard Worker</Para>
124*6a54128fSAndroid Build Coastguard Worker
125*6a54128fSAndroid Build Coastguard Worker<Para>
126*6a54128fSAndroid Build Coastguard WorkerThe Type specific commands are available when editing a specific object in the
127*6a54128fSAndroid Build Coastguard Workerfilesystem. Each object typically comes with its own set of internal
128*6a54128fSAndroid Build Coastguard Workervariables, and its own set of commands, which are fine tuned handle the
129*6a54128fSAndroid Build Coastguard Workercorresponding structure in the filesystem.
130*6a54128fSAndroid Build Coastguard Worker</Para>
131*6a54128fSAndroid Build Coastguard Worker
132*6a54128fSAndroid Build Coastguard Worker</Sect1>
133*6a54128fSAndroid Build Coastguard Worker
134*6a54128fSAndroid Build Coastguard Worker<Sect1>
135*6a54128fSAndroid Build Coastguard Worker<Title>Running EXT2ED</Title>
136*6a54128fSAndroid Build Coastguard Worker
137*6a54128fSAndroid Build Coastguard Worker<Para>
138*6a54128fSAndroid Build Coastguard WorkerRunning EXT2ED is as simple as typing <Literal remap="tt">ext2ed</Literal> from the shell prompt.
139*6a54128fSAndroid Build Coastguard WorkerThere are no command line switches.
140*6a54128fSAndroid Build Coastguard Worker</Para>
141*6a54128fSAndroid Build Coastguard Worker
142*6a54128fSAndroid Build Coastguard Worker<Para>
143*6a54128fSAndroid Build Coastguard WorkerWhen first run, EXT2ED parses its configuration file, <Literal remap="tt">ext2ed.conf</Literal>.
144*6a54128fSAndroid Build Coastguard WorkerThis file must exist.
145*6a54128fSAndroid Build Coastguard Worker</Para>
146*6a54128fSAndroid Build Coastguard Worker
147*6a54128fSAndroid Build Coastguard Worker<Para>
148*6a54128fSAndroid Build Coastguard WorkerWhen the configuration file processing is done, EXT2ED screen should appear
149*6a54128fSAndroid Build Coastguard Workeron the screen, with the command prompt <Literal remap="tt">ext2ed&#62;</Literal> displayed.
150*6a54128fSAndroid Build Coastguard Worker</Para>
151*6a54128fSAndroid Build Coastguard Worker
152*6a54128fSAndroid Build Coastguard Worker</Sect1>
153*6a54128fSAndroid Build Coastguard Worker
154*6a54128fSAndroid Build Coastguard Worker<Sect1>
155*6a54128fSAndroid Build Coastguard Worker<Title>EXT2ED user interface</Title>
156*6a54128fSAndroid Build Coastguard Worker
157*6a54128fSAndroid Build Coastguard Worker<Para>
158*6a54128fSAndroid Build Coastguard WorkerEXT2ED uses the <Emphasis>ncurses</Emphasis> library for screen management. Your screen
159*6a54128fSAndroid Build Coastguard Workerwill be divided into four parts, from top to bottom:
160*6a54128fSAndroid Build Coastguard Worker
161*6a54128fSAndroid Build Coastguard Worker<ItemizedList>
162*6a54128fSAndroid Build Coastguard Worker<ListItem>
163*6a54128fSAndroid Build Coastguard Worker
164*6a54128fSAndroid Build Coastguard Worker<Para>
165*6a54128fSAndroid Build Coastguard Worker Title window
166*6a54128fSAndroid Build Coastguard Worker</Para>
167*6a54128fSAndroid Build Coastguard Worker</ListItem>
168*6a54128fSAndroid Build Coastguard Worker<ListItem>
169*6a54128fSAndroid Build Coastguard Worker
170*6a54128fSAndroid Build Coastguard Worker<Para>
171*6a54128fSAndroid Build Coastguard Worker Status window
172*6a54128fSAndroid Build Coastguard Worker</Para>
173*6a54128fSAndroid Build Coastguard Worker</ListItem>
174*6a54128fSAndroid Build Coastguard Worker<ListItem>
175*6a54128fSAndroid Build Coastguard Worker
176*6a54128fSAndroid Build Coastguard Worker<Para>
177*6a54128fSAndroid Build Coastguard Worker Main editing window
178*6a54128fSAndroid Build Coastguard Worker</Para>
179*6a54128fSAndroid Build Coastguard Worker</ListItem>
180*6a54128fSAndroid Build Coastguard Worker<ListItem>
181*6a54128fSAndroid Build Coastguard Worker
182*6a54128fSAndroid Build Coastguard Worker<Para>
183*6a54128fSAndroid Build Coastguard Worker Command window
184*6a54128fSAndroid Build Coastguard Worker</Para>
185*6a54128fSAndroid Build Coastguard Worker</ListItem>
186*6a54128fSAndroid Build Coastguard Worker
187*6a54128fSAndroid Build Coastguard Worker</ItemizedList>
188*6a54128fSAndroid Build Coastguard Worker
189*6a54128fSAndroid Build Coastguard WorkerThe title window just displays the current version of EXT2ED.
190*6a54128fSAndroid Build Coastguard Worker</Para>
191*6a54128fSAndroid Build Coastguard Worker
192*6a54128fSAndroid Build Coastguard Worker<Para>
193*6a54128fSAndroid Build Coastguard WorkerThe status window will display various information regarding the state of
194*6a54128fSAndroid Build Coastguard Workerthe editing at this point.
195*6a54128fSAndroid Build Coastguard Worker</Para>
196*6a54128fSAndroid Build Coastguard Worker
197*6a54128fSAndroid Build Coastguard Worker<Para>
198*6a54128fSAndroid Build Coastguard WorkerThe main editing window is the place at which the actual data will be shown.
199*6a54128fSAndroid Build Coastguard WorkerAlmost every command will cause some display at this window. This window, as
200*6a54128fSAndroid Build Coastguard Workeropposed to the three others, is of variable length - You always look at one
201*6a54128fSAndroid Build Coastguard Workerpage of it. The current page and the total numbers of pages at this moment
202*6a54128fSAndroid Build Coastguard Workeris displayed at the status window. Moving between pages is done by the use
203*6a54128fSAndroid Build Coastguard Workerof the <Command>pgdn</Command> and <Command>pgup</Command> commands.
204*6a54128fSAndroid Build Coastguard Worker</Para>
205*6a54128fSAndroid Build Coastguard Worker
206*6a54128fSAndroid Build Coastguard Worker<Para>
207*6a54128fSAndroid Build Coastguard WorkerThe command window is at the bottom of the screen. It always displays a
208*6a54128fSAndroid Build Coastguard Workercommand prompt <Literal remap="tt">ext2ed&#62;</Literal> and allows you to type a command. Feedback
209*6a54128fSAndroid Build Coastguard Workerabout the commands entered is displayed to this window also.
210*6a54128fSAndroid Build Coastguard Worker</Para>
211*6a54128fSAndroid Build Coastguard Worker
212*6a54128fSAndroid Build Coastguard Worker<Para>
213*6a54128fSAndroid Build Coastguard WorkerEXT2ED uses the <Emphasis>readline</Emphasis> library while processing a command line. All
214*6a54128fSAndroid Build Coastguard Workerthe usual editing keys are available. Each entered command is placed into a
215*6a54128fSAndroid Build Coastguard Workerhistory of commands, and can be recalled later. Command Completion is also
216*6a54128fSAndroid Build Coastguard Workersupported - Just start to type a command, and press the completion key.
217*6a54128fSAndroid Build Coastguard Worker</Para>
218*6a54128fSAndroid Build Coastguard Worker
219*6a54128fSAndroid Build Coastguard Worker<Para>
220*6a54128fSAndroid Build Coastguard WorkerPressing <Literal remap="tt">enter</Literal> at the command window, without entering a command,
221*6a54128fSAndroid Build Coastguard Workerrecalls the last command. This is useful when moving between close entries,
222*6a54128fSAndroid Build Coastguard Workerin the <Command>next</Command> command, for example.
223*6a54128fSAndroid Build Coastguard Worker</Para>
224*6a54128fSAndroid Build Coastguard Worker
225*6a54128fSAndroid Build Coastguard Worker</Sect1>
226*6a54128fSAndroid Build Coastguard Worker
227*6a54128fSAndroid Build Coastguard Worker<Sect1>
228*6a54128fSAndroid Build Coastguard Worker<Title>Getting started</Title>
229*6a54128fSAndroid Build Coastguard Worker
230*6a54128fSAndroid Build Coastguard Worker<Sect2>
231*6a54128fSAndroid Build Coastguard Worker<Title>A few precautions</Title>
232*6a54128fSAndroid Build Coastguard Worker
233*6a54128fSAndroid Build Coastguard Worker<Para>
234*6a54128fSAndroid Build Coastguard WorkerEXT2ED is a tool for filesystem <Literal remap="tt">editing</Literal>. As such, it can be
235*6a54128fSAndroid Build Coastguard Worker<Literal remap="tt">dangerous</Literal>. The summary to the subsections below is that
236*6a54128fSAndroid Build Coastguard Worker<Literal remap="tt">You must know what you are doing</Literal>.
237*6a54128fSAndroid Build Coastguard Worker</Para>
238*6a54128fSAndroid Build Coastguard Worker
239*6a54128fSAndroid Build Coastguard Worker<Sect3 id="mounted-ref">
240*6a54128fSAndroid Build Coastguard Worker<Title>A mounted filesystem</Title>
241*6a54128fSAndroid Build Coastguard Worker
242*6a54128fSAndroid Build Coastguard Worker<Para>
243*6a54128fSAndroid Build Coastguard WorkerEXT2ED is not designed to work on a mounted filesystem - It is complicated
244*6a54128fSAndroid Build Coastguard Workerenough as it is; I didn't even try to think of handling the various race
245*6a54128fSAndroid Build Coastguard Workerconditions. As such, please respect the following advice:
246*6a54128fSAndroid Build Coastguard Worker</Para>
247*6a54128fSAndroid Build Coastguard Worker
248*6a54128fSAndroid Build Coastguard Worker<Para>
249*6a54128fSAndroid Build Coastguard Worker<Literal remap="tt">Do not use EXT2ED on a mounted filesystem !</Literal>
250*6a54128fSAndroid Build Coastguard Worker</Para>
251*6a54128fSAndroid Build Coastguard Worker
252*6a54128fSAndroid Build Coastguard Worker<Para>
253*6a54128fSAndroid Build Coastguard WorkerEXT2ED will not allow write access to a mounted filesystem. Although it is
254*6a54128fSAndroid Build Coastguard Workerfairly easy to change EXT2ED so that it will be allowed, I hereby request
255*6a54128fSAndroid Build Coastguard Workeragain- EXT2ED is not designed for that action, and will most likely corrupt
256*6a54128fSAndroid Build Coastguard Workerdata if used that way. Please don't do that.
257*6a54128fSAndroid Build Coastguard Worker</Para>
258*6a54128fSAndroid Build Coastguard Worker
259*6a54128fSAndroid Build Coastguard Worker<Para>
260*6a54128fSAndroid Build Coastguard WorkerConcerning read access, I chose to leave the decision for the user through
261*6a54128fSAndroid Build Coastguard Workerthe configuration file option <Literal remap="tt">AllowMountedRead</Literal>. Although read access
262*6a54128fSAndroid Build Coastguard Workeron a mounted partition will not do any damage to the filesystem, the data
263*6a54128fSAndroid Build Coastguard Workerdisplayed to you will not be reliable, and showing you incorrect information
264*6a54128fSAndroid Build Coastguard Workermay be as bad as corrupting the filesystem. However, you may still wish to
265*6a54128fSAndroid Build Coastguard Workerdo that.
266*6a54128fSAndroid Build Coastguard Worker</Para>
267*6a54128fSAndroid Build Coastguard Worker
268*6a54128fSAndroid Build Coastguard Worker</Sect3>
269*6a54128fSAndroid Build Coastguard Worker
270*6a54128fSAndroid Build Coastguard Worker<Sect3>
271*6a54128fSAndroid Build Coastguard Worker<Title>Write access</Title>
272*6a54128fSAndroid Build Coastguard Worker
273*6a54128fSAndroid Build Coastguard Worker<Para>
274*6a54128fSAndroid Build Coastguard WorkerConsidering the obvious sensitivity of the subject, I took the following
275*6a54128fSAndroid Build Coastguard Workeractions:
276*6a54128fSAndroid Build Coastguard Worker</Para>
277*6a54128fSAndroid Build Coastguard Worker
278*6a54128fSAndroid Build Coastguard Worker<Para>
279*6a54128fSAndroid Build Coastguard Worker
280*6a54128fSAndroid Build Coastguard Worker<OrderedList>
281*6a54128fSAndroid Build Coastguard Worker<ListItem>
282*6a54128fSAndroid Build Coastguard Worker
283*6a54128fSAndroid Build Coastguard Worker<Para>
284*6a54128fSAndroid Build Coastguard Worker	EXT2ED will always start with a read-only access. Write access mode
285*6a54128fSAndroid Build Coastguard Workerneeds to be specifically entered by the <Command>enablewrite</Command> command.
286*6a54128fSAndroid Build Coastguard WorkerUntil this is done, no write will be allowed. Write access can be
287*6a54128fSAndroid Build Coastguard Workerdisabled at any time with <Command>disablewrite</Command>. When
288*6a54128fSAndroid Build Coastguard Worker<Command>enablewrite</Command> is issued, the device is reopened in read-write
289*6a54128fSAndroid Build Coastguard Workermode. Needless to say, the device permissions should allow that.
290*6a54128fSAndroid Build Coastguard Worker</Para>
291*6a54128fSAndroid Build Coastguard Worker</ListItem>
292*6a54128fSAndroid Build Coastguard Worker<ListItem>
293*6a54128fSAndroid Build Coastguard Worker
294*6a54128fSAndroid Build Coastguard Worker<Para>
295*6a54128fSAndroid Build Coastguard Worker	As a second level of protection, you can disallow write access in
296*6a54128fSAndroid Build Coastguard Workerthe configuration file by using the <Literal remap="tt">AllowChanges off</Literal>
297*6a54128fSAndroid Build Coastguard Workerconfiguration option. In this case, the <Command>enablewrite</Command> command
298*6a54128fSAndroid Build Coastguard Workerwill be refused.
299*6a54128fSAndroid Build Coastguard Worker</Para>
300*6a54128fSAndroid Build Coastguard Worker</ListItem>
301*6a54128fSAndroid Build Coastguard Worker<ListItem>
302*6a54128fSAndroid Build Coastguard Worker
303*6a54128fSAndroid Build Coastguard Worker<Para>
304*6a54128fSAndroid Build Coastguard Worker	When write access is enabled, the data will never change
305*6a54128fSAndroid Build Coastguard Workerimmediately. Rather, a specific <Command>writedata</Command> command is needed
306*6a54128fSAndroid Build Coastguard Workerto update the object in the disk with the changed object in memory.
307*6a54128fSAndroid Build Coastguard Worker</Para>
308*6a54128fSAndroid Build Coastguard Worker</ListItem>
309*6a54128fSAndroid Build Coastguard Worker<ListItem>
310*6a54128fSAndroid Build Coastguard Worker
311*6a54128fSAndroid Build Coastguard Worker<Para>
312*6a54128fSAndroid Build Coastguard Worker	In addition, A logging option is provided through the configuration
313*6a54128fSAndroid Build Coastguard Workerfile options <Literal remap="tt">LogChanges</Literal> and <Literal remap="tt">LogFile</Literal>. With logging
314*6a54128fSAndroid Build Coastguard Workerenabled, each change to the disk will be logged at a very primitive
315*6a54128fSAndroid Build Coastguard Workerlevel - A hex dump of the original data and of the new written data.
316*6a54128fSAndroid Build Coastguard WorkerThe log file will be a text file which is easily readable, and you
317*6a54128fSAndroid Build Coastguard Workercan make use of it to undo any changes which you made (EXT2ED doesn't
318*6a54128fSAndroid Build Coastguard Workermake use of the log file for that purpose, it just logs the changes).
319*6a54128fSAndroid Build Coastguard Worker</Para>
320*6a54128fSAndroid Build Coastguard Worker</ListItem>
321*6a54128fSAndroid Build Coastguard Worker
322*6a54128fSAndroid Build Coastguard Worker</OrderedList>
323*6a54128fSAndroid Build Coastguard Worker
324*6a54128fSAndroid Build Coastguard WorkerPlease remember that this is only the initial release of EXT2ED, and it is
325*6a54128fSAndroid Build Coastguard Workernot very much tested - It is reasonable to assume that <Literal remap="tt">there are
326*6a54128fSAndroid Build Coastguard Workerbugs</Literal>.
327*6a54128fSAndroid Build Coastguard WorkerHowever, the logging option above can offer protection even from this
328*6a54128fSAndroid Build Coastguard Workerunfortunate case. Therefor, I highly recommend that at least when first
329*6a54128fSAndroid Build Coastguard Workerworking with EXT2ED, the logging option will be enabled, despite the disk
330*6a54128fSAndroid Build Coastguard Workerspace which it consumes.
331*6a54128fSAndroid Build Coastguard Worker</Para>
332*6a54128fSAndroid Build Coastguard Worker
333*6a54128fSAndroid Build Coastguard Worker</Sect3>
334*6a54128fSAndroid Build Coastguard Worker
335*6a54128fSAndroid Build Coastguard Worker</Sect2>
336*6a54128fSAndroid Build Coastguard Worker
337*6a54128fSAndroid Build Coastguard Worker<Sect2 id="help-ref">
338*6a54128fSAndroid Build Coastguard Worker<Title>The help command</Title>
339*6a54128fSAndroid Build Coastguard Worker
340*6a54128fSAndroid Build Coastguard Worker<Para>
341*6a54128fSAndroid Build Coastguard WorkerWhen loaded, EXT2ED will show a short help screen. This help screen can
342*6a54128fSAndroid Build Coastguard Workeralways be retrieved by the command <Command>help</Command>. The help screen displays a
343*6a54128fSAndroid Build Coastguard Workerlist of all the commands which are available at this point. At startup, only
344*6a54128fSAndroid Build Coastguard Workerthe <Literal remap="tt">General commands</Literal> are available.
345*6a54128fSAndroid Build Coastguard WorkerThis will change with time, since each object has its own commands. Thus,
346*6a54128fSAndroid Build Coastguard Workercommands which are available now may not be available later.
347*6a54128fSAndroid Build Coastguard WorkerUsing <Command>help</Command> <Emphasis>command</Emphasis> will display additional information about
348*6a54128fSAndroid Build Coastguard Workerthe specific command <Emphasis>command</Emphasis>.
349*6a54128fSAndroid Build Coastguard Worker</Para>
350*6a54128fSAndroid Build Coastguard Worker
351*6a54128fSAndroid Build Coastguard Worker</Sect2>
352*6a54128fSAndroid Build Coastguard Worker
353*6a54128fSAndroid Build Coastguard Worker<Sect2 id="setdevice-ref">
354*6a54128fSAndroid Build Coastguard Worker<Title>The setdevice command</Title>
355*6a54128fSAndroid Build Coastguard Worker
356*6a54128fSAndroid Build Coastguard Worker<Para>
357*6a54128fSAndroid Build Coastguard WorkerThe first command that is usually entered to EXT2ED is the <Command>setdevice</Command>
358*6a54128fSAndroid Build Coastguard Workercommand. This command simply tells EXT2ED on which device the filesystem is
359*6a54128fSAndroid Build Coastguard Workerpresent. For example, suppose my ext2 filesystem is on the first partition
360*6a54128fSAndroid Build Coastguard Workerof my ide disk. The command will be:
361*6a54128fSAndroid Build Coastguard Worker
362*6a54128fSAndroid Build Coastguard Worker<Screen>
363*6a54128fSAndroid Build Coastguard Workersetdevice /dev/hda1
364*6a54128fSAndroid Build Coastguard Worker</Screen>
365*6a54128fSAndroid Build Coastguard Worker
366*6a54128fSAndroid Build Coastguard WorkerThe following actions will take place in the following order:
367*6a54128fSAndroid Build Coastguard Worker
368*6a54128fSAndroid Build Coastguard Worker<OrderedList>
369*6a54128fSAndroid Build Coastguard Worker<ListItem>
370*6a54128fSAndroid Build Coastguard Worker
371*6a54128fSAndroid Build Coastguard Worker<Para>
372*6a54128fSAndroid Build Coastguard Worker	EXT2ED will check if the partition is mounted.
373*6a54128fSAndroid Build Coastguard WorkerIf the partition is mounted (<Literal remap="tt">highly not recommended</Literal>),
374*6a54128fSAndroid Build Coastguard Workerthe accept/reject behavior will be decided by the configuration
375*6a54128fSAndroid Build Coastguard Workerfile. Cross reference section <XRef LinkEnd="mounted-ref">.
376*6a54128fSAndroid Build Coastguard Worker</Para>
377*6a54128fSAndroid Build Coastguard Worker</ListItem>
378*6a54128fSAndroid Build Coastguard Worker<ListItem>
379*6a54128fSAndroid Build Coastguard Worker
380*6a54128fSAndroid Build Coastguard Worker<Para>
381*6a54128fSAndroid Build Coastguard Worker	The specified device will be opened in read-only mode. The
382*6a54128fSAndroid Build Coastguard Workerpermissions of the device should be set in a way that allows
383*6a54128fSAndroid Build Coastguard Workeryou to open the device for read access.
384*6a54128fSAndroid Build Coastguard Worker</Para>
385*6a54128fSAndroid Build Coastguard Worker</ListItem>
386*6a54128fSAndroid Build Coastguard Worker<ListItem>
387*6a54128fSAndroid Build Coastguard Worker
388*6a54128fSAndroid Build Coastguard Worker<Para>
389*6a54128fSAndroid Build Coastguard Worker	Autodetection of an ext2 filesystem will be made by searching for
390*6a54128fSAndroid Build Coastguard Workerthe ext2 magic number in the main superblock.
391*6a54128fSAndroid Build Coastguard Worker</Para>
392*6a54128fSAndroid Build Coastguard Worker</ListItem>
393*6a54128fSAndroid Build Coastguard Worker<ListItem>
394*6a54128fSAndroid Build Coastguard Worker
395*6a54128fSAndroid Build Coastguard Worker<Para>
396*6a54128fSAndroid Build Coastguard Worker	In the case of a successful recognition of an ext2 filesystem, the
397*6a54128fSAndroid Build Coastguard Workerext2 filesystem specific commands and the ext2 specific object
398*6a54128fSAndroid Build Coastguard Workerdefinitions will be registered. The object definitions will be read
399*6a54128fSAndroid Build Coastguard Workerat run time from a file specified by the configuration file.
400*6a54128fSAndroid Build Coastguard Worker
401*6a54128fSAndroid Build Coastguard WorkerIn case of a corrupted ext2 filesystem, it is quite possible that
402*6a54128fSAndroid Build Coastguard Workerthe main superblock is damaged and autodetection will fail. In that
403*6a54128fSAndroid Build Coastguard Workercase, use the configuration option <Literal remap="tt">ForceExt2 on</Literal>. This is not
404*6a54128fSAndroid Build Coastguard Workerthe default case since EXT2ED can be used at a lower level to edit a
405*6a54128fSAndroid Build Coastguard Workernon-ext2 filesystem.
406*6a54128fSAndroid Build Coastguard Worker</Para>
407*6a54128fSAndroid Build Coastguard Worker</ListItem>
408*6a54128fSAndroid Build Coastguard Worker<ListItem>
409*6a54128fSAndroid Build Coastguard Worker
410*6a54128fSAndroid Build Coastguard Worker<Para>
411*6a54128fSAndroid Build Coastguard Worker	In a case of a successful autodetection, essential information about
412*6a54128fSAndroid Build Coastguard Workerthe filesystem such as the block size will be read from the
413*6a54128fSAndroid Build Coastguard Workersuperblock, unless the used overrides this behavior with an
414*6a54128fSAndroid Build Coastguard Workerconfiguration option (not recommended). In that case, the parameters
415*6a54128fSAndroid Build Coastguard Workerwill be read from the configuration file.
416*6a54128fSAndroid Build Coastguard Worker
417*6a54128fSAndroid Build Coastguard WorkerIn a case of an autodetection failure, the essential parameters
418*6a54128fSAndroid Build Coastguard Workerwill be read from the configuration file.
419*6a54128fSAndroid Build Coastguard Worker</Para>
420*6a54128fSAndroid Build Coastguard Worker</ListItem>
421*6a54128fSAndroid Build Coastguard Worker
422*6a54128fSAndroid Build Coastguard Worker</OrderedList>
423*6a54128fSAndroid Build Coastguard Worker
424*6a54128fSAndroid Build Coastguard WorkerAssuming that you are editing an ext2 filesystem and that everything goes
425*6a54128fSAndroid Build Coastguard Workerwell, you will notice that additional commands are now available in the help
426*6a54128fSAndroid Build Coastguard Workerscreen, under the section <Literal remap="tt">ext2 filesystem general commands</Literal>. In
427*6a54128fSAndroid Build Coastguard Workeraddition, EXT2ED now recognizes a few objects which are essential to the
428*6a54128fSAndroid Build Coastguard Workerediting of an ext2 filesystem.
429*6a54128fSAndroid Build Coastguard Worker</Para>
430*6a54128fSAndroid Build Coastguard Worker
431*6a54128fSAndroid Build Coastguard Worker</Sect2>
432*6a54128fSAndroid Build Coastguard Worker
433*6a54128fSAndroid Build Coastguard Worker</Sect1>
434*6a54128fSAndroid Build Coastguard Worker
435*6a54128fSAndroid Build Coastguard Worker<Sect1>
436*6a54128fSAndroid Build Coastguard Worker<Title>Two levels of usage</Title>
437*6a54128fSAndroid Build Coastguard Worker
438*6a54128fSAndroid Build Coastguard Worker<Sect2>
439*6a54128fSAndroid Build Coastguard Worker<Title>Low level usage</Title>
440*6a54128fSAndroid Build Coastguard Worker
441*6a54128fSAndroid Build Coastguard Worker<Para>
442*6a54128fSAndroid Build Coastguard WorkerThis section explains what EXT2ED provides even when not editing an ext2
443*6a54128fSAndroid Build Coastguard Workerfilesystem.
444*6a54128fSAndroid Build Coastguard Worker</Para>
445*6a54128fSAndroid Build Coastguard Worker
446*6a54128fSAndroid Build Coastguard Worker<Para>
447*6a54128fSAndroid Build Coastguard WorkerEven at this level, EXT2ED is more than just a hex editor. It still allows
448*6a54128fSAndroid Build Coastguard Workerdefinition of objects and variables in run time through a user file,
449*6a54128fSAndroid Build Coastguard Workeralthough of-course the objects will not have special fine tuned functions
450*6a54128fSAndroid Build Coastguard Workerconnected to them. EXT2ED will allow you to move in the filesystem using
451*6a54128fSAndroid Build Coastguard Worker<Command>setoffset</Command>, and to apply an object definition on a specific place
452*6a54128fSAndroid Build Coastguard Workerusing <Command>settype</Command> <Emphasis>type</Emphasis>. From this point and on, the object will
453*6a54128fSAndroid Build Coastguard Workerbe shown <Literal remap="tt">in its native form</Literal> - You will see a list of the
454*6a54128fSAndroid Build Coastguard Workervariables rather than just a hex dump, and you will be able to change each
455*6a54128fSAndroid Build Coastguard Workervariable in the intuitive form <Command>set variable=value</Command>.
456*6a54128fSAndroid Build Coastguard Worker</Para>
457*6a54128fSAndroid Build Coastguard Worker
458*6a54128fSAndroid Build Coastguard Worker<Para>
459*6a54128fSAndroid Build Coastguard WorkerTo define objects, use the configuration option <Literal remap="tt">AlternateDescriptors</Literal>.
460*6a54128fSAndroid Build Coastguard Worker</Para>
461*6a54128fSAndroid Build Coastguard Worker
462*6a54128fSAndroid Build Coastguard Worker<Para>
463*6a54128fSAndroid Build Coastguard WorkerThere are now two forms of editing:
464*6a54128fSAndroid Build Coastguard Worker
465*6a54128fSAndroid Build Coastguard Worker<ItemizedList>
466*6a54128fSAndroid Build Coastguard Worker<ListItem>
467*6a54128fSAndroid Build Coastguard Worker
468*6a54128fSAndroid Build Coastguard Worker<Para>
469*6a54128fSAndroid Build Coastguard Worker	Editing without a type. In this case, the disk block will be shown
470*6a54128fSAndroid Build Coastguard Workeras a text+hex dump, and you will be able to move along and change it.
471*6a54128fSAndroid Build Coastguard Worker</Para>
472*6a54128fSAndroid Build Coastguard Worker</ListItem>
473*6a54128fSAndroid Build Coastguard Worker<ListItem>
474*6a54128fSAndroid Build Coastguard Worker
475*6a54128fSAndroid Build Coastguard Worker<Para>
476*6a54128fSAndroid Build Coastguard Worker	Editing with a type. In this case, the object's variables will be
477*6a54128fSAndroid Build Coastguard Workershown, and you will be able to change each variable in its native form.
478*6a54128fSAndroid Build Coastguard Worker</Para>
479*6a54128fSAndroid Build Coastguard Worker</ListItem>
480*6a54128fSAndroid Build Coastguard Worker
481*6a54128fSAndroid Build Coastguard Worker</ItemizedList>
482*6a54128fSAndroid Build Coastguard Worker
483*6a54128fSAndroid Build Coastguard Worker</Para>
484*6a54128fSAndroid Build Coastguard Worker
485*6a54128fSAndroid Build Coastguard Worker</Sect2>
486*6a54128fSAndroid Build Coastguard Worker
487*6a54128fSAndroid Build Coastguard Worker<Sect2>
488*6a54128fSAndroid Build Coastguard Worker<Title>High level usage</Title>
489*6a54128fSAndroid Build Coastguard Worker
490*6a54128fSAndroid Build Coastguard Worker<Para>
491*6a54128fSAndroid Build Coastguard WorkerEXT2ED was designed for the editing of the ext2 filesystem. As such, it
492*6a54128fSAndroid Build Coastguard Worker"understands" the filesystem structure to some extent. Each object now has
493*6a54128fSAndroid Build Coastguard Workerspecial fine tuned 'C' functions connected to it, which knows how to display
494*6a54128fSAndroid Build Coastguard Workerit in an intuitive form, and how the object fits in the general design of
495*6a54128fSAndroid Build Coastguard Workerthe ext2 filesystem. It is of-course much easier to use this type of
496*6a54128fSAndroid Build Coastguard Workerediting. For example:
497*6a54128fSAndroid Build Coastguard Worker
498*6a54128fSAndroid Build Coastguard Worker<Screen>
499*6a54128fSAndroid Build Coastguard WorkerIssue <Emphasis>group 2</Emphasis> to look at the main copy of the third group block
500*6a54128fSAndroid Build Coastguard Workerdescriptor. With <Emphasis>gocopy 1</Emphasis> you can move to its first backup copy,
501*6a54128fSAndroid Build Coastguard Workerand with <Emphasis>inode</Emphasis> you can start editing the inode table of the above
502*6a54128fSAndroid Build Coastguard Workergroup block. From here, if the inode corresponds to a file, you can
503*6a54128fSAndroid Build Coastguard Workeruse <Emphasis>file</Emphasis> to edit the file in a "continuous" way, using
504*6a54128fSAndroid Build Coastguard Worker<Emphasis>nextblock</Emphasis> to pass to its next block, letting EXT2ED following by
505*6a54128fSAndroid Build Coastguard Workeritself the direct blocks, indirect blocks, ..., while still preserving the
506*6a54128fSAndroid Build Coastguard Workeractual view of the exact block usage of the file.
507*6a54128fSAndroid Build Coastguard Worker</Screen>
508*6a54128fSAndroid Build Coastguard Worker
509*6a54128fSAndroid Build Coastguard WorkerThe point is that the "tour" of the filesystem will now be synchronous rather
510*6a54128fSAndroid Build Coastguard Workerthan asynchronous - Each object has the "links" to pass between connected
511*6a54128fSAndroid Build Coastguard Workerlogical structures, and special fine-tuned functions to deal with it.
512*6a54128fSAndroid Build Coastguard Worker</Para>
513*6a54128fSAndroid Build Coastguard Worker
514*6a54128fSAndroid Build Coastguard Worker</Sect2>
515*6a54128fSAndroid Build Coastguard Worker
516*6a54128fSAndroid Build Coastguard Worker</Sect1>
517*6a54128fSAndroid Build Coastguard Worker
518*6a54128fSAndroid Build Coastguard Worker<Sect1>
519*6a54128fSAndroid Build Coastguard Worker<Title>General commands</Title>
520*6a54128fSAndroid Build Coastguard Worker
521*6a54128fSAndroid Build Coastguard Worker<Para>
522*6a54128fSAndroid Build Coastguard WorkerI will now start with a systematic explanation of the general commands.
523*6a54128fSAndroid Build Coastguard WorkerPlease feel free to experiment, but take care when using the
524*6a54128fSAndroid Build Coastguard Worker<Literal remap="tt">enablewrite</Literal> command.
525*6a54128fSAndroid Build Coastguard Worker</Para>
526*6a54128fSAndroid Build Coastguard Worker
527*6a54128fSAndroid Build Coastguard Worker<Para>
528*6a54128fSAndroid Build Coastguard WorkerWhenever a command syntax is specified, arguments which are optional are
529*6a54128fSAndroid Build Coastguard Workerenclosed with square brackets.
530*6a54128fSAndroid Build Coastguard Worker</Para>
531*6a54128fSAndroid Build Coastguard Worker
532*6a54128fSAndroid Build Coastguard Worker<Para>
533*6a54128fSAndroid Build Coastguard WorkerPlease note that in EXT2ED, each command can be overridden by a specific
534*6a54128fSAndroid Build Coastguard Workerobject to provide special fine-tuned functionality. In general, I was
535*6a54128fSAndroid Build Coastguard Workerattempting to preserve the similarity between those functions, which are
536*6a54128fSAndroid Build Coastguard Workeraccessible by the same name.
537*6a54128fSAndroid Build Coastguard Worker</Para>
538*6a54128fSAndroid Build Coastguard Worker
539*6a54128fSAndroid Build Coastguard Worker<Sect2 id="disablewrite-ref">
540*6a54128fSAndroid Build Coastguard Worker<Title>disablewrite</Title>
541*6a54128fSAndroid Build Coastguard Worker
542*6a54128fSAndroid Build Coastguard Worker<Para>
543*6a54128fSAndroid Build Coastguard Worker
544*6a54128fSAndroid Build Coastguard Worker<Screen>
545*6a54128fSAndroid Build Coastguard WorkerSyntax: disablewrite
546*6a54128fSAndroid Build Coastguard Worker</Screen>
547*6a54128fSAndroid Build Coastguard Worker
548*6a54128fSAndroid Build Coastguard Worker<Command>disablewrite</Command> is used to reopen the device with read-only access. When
549*6a54128fSAndroid Build Coastguard Workerfirst running EXT2ED, the device is opened in read-only mode, and an
550*6a54128fSAndroid Build Coastguard Workerexplicit <Command>enablewrite</Command> is required for write access. When finishing
551*6a54128fSAndroid Build Coastguard Workerwith changing, a <Command>disablewrite</Command> is recommended for safety. Cross
552*6a54128fSAndroid Build Coastguard Workerreference section <XRef LinkEnd="disablewrite-ref">.
553*6a54128fSAndroid Build Coastguard Worker</Para>
554*6a54128fSAndroid Build Coastguard Worker
555*6a54128fSAndroid Build Coastguard Worker</Sect2>
556*6a54128fSAndroid Build Coastguard Worker
557*6a54128fSAndroid Build Coastguard Worker<Sect2 id="enablewrite-ref">
558*6a54128fSAndroid Build Coastguard Worker<Title>enablewrite</Title>
559*6a54128fSAndroid Build Coastguard Worker
560*6a54128fSAndroid Build Coastguard Worker<Para>
561*6a54128fSAndroid Build Coastguard Worker
562*6a54128fSAndroid Build Coastguard Worker<Screen>
563*6a54128fSAndroid Build Coastguard WorkerSyntax: enablewrite
564*6a54128fSAndroid Build Coastguard Worker</Screen>
565*6a54128fSAndroid Build Coastguard Worker
566*6a54128fSAndroid Build Coastguard Worker<Command>enablewrite</Command> is used to reopen the device with read-write access.
567*6a54128fSAndroid Build Coastguard WorkerWhen first running EXT2ED, the device is opened in read-only mode, and an
568*6a54128fSAndroid Build Coastguard Workerexplicit <Command>enablewrite</Command> is required for write access.
569*6a54128fSAndroid Build Coastguard Worker<Command>enablewrite</Command> will fail if write access is disabled from the
570*6a54128fSAndroid Build Coastguard Workerconfiguration file by the <Literal remap="tt">AllowChanges off</Literal> configuration option.
571*6a54128fSAndroid Build Coastguard WorkerEven after <Command>enablewrite</Command>, an explicit <Command>writedata</Command>
572*6a54128fSAndroid Build Coastguard Workeris required to actually write the new data to the disk.
573*6a54128fSAndroid Build Coastguard WorkerWhen finishing with changing, a <Command>disablewrite</Command> is recommended for safety.
574*6a54128fSAndroid Build Coastguard WorkerCross reference section <XRef LinkEnd="enablewrite-ref">.
575*6a54128fSAndroid Build Coastguard Worker</Para>
576*6a54128fSAndroid Build Coastguard Worker
577*6a54128fSAndroid Build Coastguard Worker</Sect2>
578*6a54128fSAndroid Build Coastguard Worker
579*6a54128fSAndroid Build Coastguard Worker<Sect2>
580*6a54128fSAndroid Build Coastguard Worker<Title>help</Title>
581*6a54128fSAndroid Build Coastguard Worker
582*6a54128fSAndroid Build Coastguard Worker<Para>
583*6a54128fSAndroid Build Coastguard Worker
584*6a54128fSAndroid Build Coastguard Worker<Screen>
585*6a54128fSAndroid Build Coastguard WorkerSyntax: help [command]
586*6a54128fSAndroid Build Coastguard Worker</Screen>
587*6a54128fSAndroid Build Coastguard Worker
588*6a54128fSAndroid Build Coastguard WorkerThe <Command>help</Command> command is described at section <XRef LinkEnd="help-ref">.
589*6a54128fSAndroid Build Coastguard Worker</Para>
590*6a54128fSAndroid Build Coastguard Worker
591*6a54128fSAndroid Build Coastguard Worker</Sect2>
592*6a54128fSAndroid Build Coastguard Worker
593*6a54128fSAndroid Build Coastguard Worker<Sect2 id="next-ref">
594*6a54128fSAndroid Build Coastguard Worker<Title>next</Title>
595*6a54128fSAndroid Build Coastguard Worker
596*6a54128fSAndroid Build Coastguard Worker<Para>
597*6a54128fSAndroid Build Coastguard Worker
598*6a54128fSAndroid Build Coastguard Worker<Screen>
599*6a54128fSAndroid Build Coastguard WorkerSyntax: next [number]
600*6a54128fSAndroid Build Coastguard Worker</Screen>
601*6a54128fSAndroid Build Coastguard Worker
602*6a54128fSAndroid Build Coastguard WorkerThis section describes the <Emphasis>general command</Emphasis> <Command>next</Command>. <Command>next</Command>
603*6a54128fSAndroid Build Coastguard Workeris overridden by several types in EXT2ED, to provide fine-tuned
604*6a54128fSAndroid Build Coastguard Workerfunctionality.
605*6a54128fSAndroid Build Coastguard Worker</Para>
606*6a54128fSAndroid Build Coastguard Worker
607*6a54128fSAndroid Build Coastguard Worker<Para>
608*6a54128fSAndroid Build Coastguard WorkerThe <Literal remap="tt">next general command</Literal> behavior is depended on whether you are editing a
609*6a54128fSAndroid Build Coastguard Workerspecific object, or none.
610*6a54128fSAndroid Build Coastguard Worker</Para>
611*6a54128fSAndroid Build Coastguard Worker
612*6a54128fSAndroid Build Coastguard Worker<Para>
613*6a54128fSAndroid Build Coastguard Worker
614*6a54128fSAndroid Build Coastguard Worker<ItemizedList>
615*6a54128fSAndroid Build Coastguard Worker<ListItem>
616*6a54128fSAndroid Build Coastguard Worker
617*6a54128fSAndroid Build Coastguard Worker<Para>
618*6a54128fSAndroid Build Coastguard Worker	In the case where Type is <Literal remap="tt">none</Literal> (The current type is showed
619*6a54128fSAndroid Build Coastguard Workeron the status window by the <Command>show</Command> command), <Literal remap="tt">next</Literal>
620*6a54128fSAndroid Build Coastguard Workerpasses to the next <Emphasis>number</Emphasis> bytes in the current edited block.
621*6a54128fSAndroid Build Coastguard WorkerIf <Emphasis>number</Emphasis> is not specified, <Emphasis>number=1</Emphasis> is assumed.
622*6a54128fSAndroid Build Coastguard Worker</Para>
623*6a54128fSAndroid Build Coastguard Worker</ListItem>
624*6a54128fSAndroid Build Coastguard Worker<ListItem>
625*6a54128fSAndroid Build Coastguard Worker
626*6a54128fSAndroid Build Coastguard Worker<Para>
627*6a54128fSAndroid Build Coastguard Worker 	In the case where Type is defined, the <Command>next</Command> commands assumes
628*6a54128fSAndroid Build Coastguard Workerthat you are editing an array of objects of that type, and the
629*6a54128fSAndroid Build Coastguard Worker<Command>next</Command> command will just pass to the next entry in the array.
630*6a54128fSAndroid Build Coastguard WorkerIf <Emphasis>number</Emphasis> is defined, it will pass <Emphasis>number</Emphasis> entries
631*6a54128fSAndroid Build Coastguard Workerahead.
632*6a54128fSAndroid Build Coastguard Worker</Para>
633*6a54128fSAndroid Build Coastguard Worker</ListItem>
634*6a54128fSAndroid Build Coastguard Worker
635*6a54128fSAndroid Build Coastguard Worker</ItemizedList>
636*6a54128fSAndroid Build Coastguard Worker
637*6a54128fSAndroid Build Coastguard Worker</Para>
638*6a54128fSAndroid Build Coastguard Worker
639*6a54128fSAndroid Build Coastguard Worker</Sect2>
640*6a54128fSAndroid Build Coastguard Worker
641*6a54128fSAndroid Build Coastguard Worker<Sect2 id="pgdn-ref">
642*6a54128fSAndroid Build Coastguard Worker<Title>pgdn</Title>
643*6a54128fSAndroid Build Coastguard Worker
644*6a54128fSAndroid Build Coastguard Worker<Para>
645*6a54128fSAndroid Build Coastguard Worker
646*6a54128fSAndroid Build Coastguard Worker<Screen>
647*6a54128fSAndroid Build Coastguard WorkerSyntax: pgdn
648*6a54128fSAndroid Build Coastguard Worker</Screen>
649*6a54128fSAndroid Build Coastguard Worker
650*6a54128fSAndroid Build Coastguard WorkerUsually the edited data doesn't fit into the visible main window. In this
651*6a54128fSAndroid Build Coastguard Workercase, the status window will indicate that there is more to see "below" by
652*6a54128fSAndroid Build Coastguard Workerthe message <Literal remap="tt">Page x of y</Literal>. This means that there are <Emphasis>y</Emphasis> pages
653*6a54128fSAndroid Build Coastguard Workertotal, and you are currently viewing the <Emphasis>x</Emphasis> page. With the <Command>pgdn</Command>
654*6a54128fSAndroid Build Coastguard Workercommand, you can pass to the next available page.
655*6a54128fSAndroid Build Coastguard Worker</Para>
656*6a54128fSAndroid Build Coastguard Worker
657*6a54128fSAndroid Build Coastguard Worker</Sect2>
658*6a54128fSAndroid Build Coastguard Worker
659*6a54128fSAndroid Build Coastguard Worker<Sect2>
660*6a54128fSAndroid Build Coastguard Worker<Title>pgup</Title>
661*6a54128fSAndroid Build Coastguard Worker
662*6a54128fSAndroid Build Coastguard Worker<Para>
663*6a54128fSAndroid Build Coastguard Worker
664*6a54128fSAndroid Build Coastguard Worker<Screen>
665*6a54128fSAndroid Build Coastguard WorkerSyntax: pgup
666*6a54128fSAndroid Build Coastguard Worker</Screen>
667*6a54128fSAndroid Build Coastguard Worker
668*6a54128fSAndroid Build Coastguard Worker</Para>
669*6a54128fSAndroid Build Coastguard Worker
670*6a54128fSAndroid Build Coastguard Worker<Para>
671*6a54128fSAndroid Build Coastguard Worker<Command>pgup</Command> is the opposite of <Command>pgdn</Command> - It will pass to the previous
672*6a54128fSAndroid Build Coastguard Workerpage. Cross reference section <XRef LinkEnd="pgdn-ref">.
673*6a54128fSAndroid Build Coastguard Worker</Para>
674*6a54128fSAndroid Build Coastguard Worker
675*6a54128fSAndroid Build Coastguard Worker</Sect2>
676*6a54128fSAndroid Build Coastguard Worker
677*6a54128fSAndroid Build Coastguard Worker<Sect2>
678*6a54128fSAndroid Build Coastguard Worker<Title>prev</Title>
679*6a54128fSAndroid Build Coastguard Worker
680*6a54128fSAndroid Build Coastguard Worker<Para>
681*6a54128fSAndroid Build Coastguard Worker
682*6a54128fSAndroid Build Coastguard Worker<Screen>
683*6a54128fSAndroid Build Coastguard WorkerSyntax: prev [number]
684*6a54128fSAndroid Build Coastguard Worker</Screen>
685*6a54128fSAndroid Build Coastguard Worker
686*6a54128fSAndroid Build Coastguard Worker</Para>
687*6a54128fSAndroid Build Coastguard Worker
688*6a54128fSAndroid Build Coastguard Worker<Para>
689*6a54128fSAndroid Build Coastguard Worker<Command>prev</Command> is the opposite of <Command>next</Command>. Cross reference section
690*6a54128fSAndroid Build Coastguard Worker<XRef LinkEnd="next-ref">.
691*6a54128fSAndroid Build Coastguard Worker</Para>
692*6a54128fSAndroid Build Coastguard Worker
693*6a54128fSAndroid Build Coastguard Worker</Sect2>
694*6a54128fSAndroid Build Coastguard Worker
695*6a54128fSAndroid Build Coastguard Worker<Sect2 id="recall-ref">
696*6a54128fSAndroid Build Coastguard Worker<Title>recall</Title>
697*6a54128fSAndroid Build Coastguard Worker
698*6a54128fSAndroid Build Coastguard Worker<Para>
699*6a54128fSAndroid Build Coastguard Worker
700*6a54128fSAndroid Build Coastguard Worker<Screen>
701*6a54128fSAndroid Build Coastguard WorkerSyntax: recall object
702*6a54128fSAndroid Build Coastguard Worker</Screen>
703*6a54128fSAndroid Build Coastguard Worker
704*6a54128fSAndroid Build Coastguard Worker<Command>recall</Command> is the opposite of <Command>remember</Command>. It will place you at the
705*6a54128fSAndroid Build Coastguard Workerplace you where when saving the object position and type information. Cross
706*6a54128fSAndroid Build Coastguard Workerreference section <XRef LinkEnd="remember-ref">.
707*6a54128fSAndroid Build Coastguard Worker</Para>
708*6a54128fSAndroid Build Coastguard Worker
709*6a54128fSAndroid Build Coastguard Worker</Sect2>
710*6a54128fSAndroid Build Coastguard Worker
711*6a54128fSAndroid Build Coastguard Worker<Sect2>
712*6a54128fSAndroid Build Coastguard Worker<Title>redraw</Title>
713*6a54128fSAndroid Build Coastguard Worker
714*6a54128fSAndroid Build Coastguard Worker<Para>
715*6a54128fSAndroid Build Coastguard Worker
716*6a54128fSAndroid Build Coastguard Worker<Screen>
717*6a54128fSAndroid Build Coastguard WorkerSyntax: redraw
718*6a54128fSAndroid Build Coastguard Worker</Screen>
719*6a54128fSAndroid Build Coastguard Worker
720*6a54128fSAndroid Build Coastguard WorkerSometimes the screen display gets corrupted. I still have problems with
721*6a54128fSAndroid Build Coastguard Workerthis. The <Command>redraw</Command> command simply redraws the entire display screen.
722*6a54128fSAndroid Build Coastguard Worker</Para>
723*6a54128fSAndroid Build Coastguard Worker
724*6a54128fSAndroid Build Coastguard Worker</Sect2>
725*6a54128fSAndroid Build Coastguard Worker
726*6a54128fSAndroid Build Coastguard Worker<Sect2 id="remember-ref">
727*6a54128fSAndroid Build Coastguard Worker<Title>remember</Title>
728*6a54128fSAndroid Build Coastguard Worker
729*6a54128fSAndroid Build Coastguard Worker<Para>
730*6a54128fSAndroid Build Coastguard Worker
731*6a54128fSAndroid Build Coastguard Worker<Screen>
732*6a54128fSAndroid Build Coastguard WorkerSyntax: remember object
733*6a54128fSAndroid Build Coastguard Worker</Screen>
734*6a54128fSAndroid Build Coastguard Worker
735*6a54128fSAndroid Build Coastguard WorkerEXT2ED provides you <Literal remap="tt">memory</Literal> of objects; While editing, you may reach an
736*6a54128fSAndroid Build Coastguard Workerobject which you will like to return to later. The <Command>remember</Command> command
737*6a54128fSAndroid Build Coastguard Workerwill store in memory the current place and type of the object. You can
738*6a54128fSAndroid Build Coastguard Workerreturn to the object by using the <Command>recall</Command> command. Cross reference
739*6a54128fSAndroid Build Coastguard Workersection <XRef LinkEnd="recall-ref">.
740*6a54128fSAndroid Build Coastguard Worker</Para>
741*6a54128fSAndroid Build Coastguard Worker
742*6a54128fSAndroid Build Coastguard Worker<Para>
743*6a54128fSAndroid Build Coastguard Worker<Literal remap="tt">Note:</Literal>
744*6a54128fSAndroid Build Coastguard Worker
745*6a54128fSAndroid Build Coastguard Worker<ItemizedList>
746*6a54128fSAndroid Build Coastguard Worker<ListItem>
747*6a54128fSAndroid Build Coastguard Worker
748*6a54128fSAndroid Build Coastguard Worker<Para>
749*6a54128fSAndroid Build Coastguard Worker	When remembering a <Literal remap="tt">file</Literal> or a <Literal remap="tt">directory</Literal>, the
750*6a54128fSAndroid Build Coastguard Workercorresponding inode will be saved in memory. The basic reason is that
751*6a54128fSAndroid Build Coastguard Workerthe inode is essential for finding the blocks of the file or the
752*6a54128fSAndroid Build Coastguard Workerdirectory.
753*6a54128fSAndroid Build Coastguard Worker</Para>
754*6a54128fSAndroid Build Coastguard Worker</ListItem>
755*6a54128fSAndroid Build Coastguard Worker
756*6a54128fSAndroid Build Coastguard Worker</ItemizedList>
757*6a54128fSAndroid Build Coastguard Worker
758*6a54128fSAndroid Build Coastguard Worker</Para>
759*6a54128fSAndroid Build Coastguard Worker
760*6a54128fSAndroid Build Coastguard Worker</Sect2>
761*6a54128fSAndroid Build Coastguard Worker
762*6a54128fSAndroid Build Coastguard Worker<Sect2>
763*6a54128fSAndroid Build Coastguard Worker<Title>set</Title>
764*6a54128fSAndroid Build Coastguard Worker
765*6a54128fSAndroid Build Coastguard Worker<Para>
766*6a54128fSAndroid Build Coastguard Worker
767*6a54128fSAndroid Build Coastguard Worker<Screen>
768*6a54128fSAndroid Build Coastguard WorkerSyntax: set [text || hex] arg1 [arg2 arg3 ...]
769*6a54128fSAndroid Build Coastguard Worker
770*6a54128fSAndroid Build Coastguard Workeror
771*6a54128fSAndroid Build Coastguard Worker
772*6a54128fSAndroid Build Coastguard WorkerSyntax: set variable=value
773*6a54128fSAndroid Build Coastguard Worker</Screen>
774*6a54128fSAndroid Build Coastguard Worker
775*6a54128fSAndroid Build Coastguard WorkerThe <Command>set</Command> command is used to modify the current data.
776*6a54128fSAndroid Build Coastguard WorkerThe <Command>set general command</Command> behavior is depended on whether you are editing a
777*6a54128fSAndroid Build Coastguard Workerspecific object, or none.
778*6a54128fSAndroid Build Coastguard Worker</Para>
779*6a54128fSAndroid Build Coastguard Worker
780*6a54128fSAndroid Build Coastguard Worker<Para>
781*6a54128fSAndroid Build Coastguard Worker
782*6a54128fSAndroid Build Coastguard Worker<ItemizedList>
783*6a54128fSAndroid Build Coastguard Worker<ListItem>
784*6a54128fSAndroid Build Coastguard Worker
785*6a54128fSAndroid Build Coastguard Worker<Para>
786*6a54128fSAndroid Build Coastguard Worker	In the case where Type is <Command>none</Command>, the first syntax should be
787*6a54128fSAndroid Build Coastguard Workerused. The set command affects the data starting at the current
788*6a54128fSAndroid Build Coastguard Workerhighlighted position in the edited block.
789*6a54128fSAndroid Build Coastguard Worker
790*6a54128fSAndroid Build Coastguard Worker<ItemizedList>
791*6a54128fSAndroid Build Coastguard Worker<ListItem>
792*6a54128fSAndroid Build Coastguard Worker
793*6a54128fSAndroid Build Coastguard Worker<Para>
794*6a54128fSAndroid Build Coastguard Worker	When using the <Command>set hex</Command> command, a list of
795*6a54128fSAndroid Build Coastguard Workerhexadecimal bytes should follow.
796*6a54128fSAndroid Build Coastguard Worker</Para>
797*6a54128fSAndroid Build Coastguard Worker</ListItem>
798*6a54128fSAndroid Build Coastguard Worker<ListItem>
799*6a54128fSAndroid Build Coastguard Worker
800*6a54128fSAndroid Build Coastguard Worker<Para>
801*6a54128fSAndroid Build Coastguard Worker	When using the <Command>set text</Command> command, it should be followed
802*6a54128fSAndroid Build Coastguard Workerby a text string.
803*6a54128fSAndroid Build Coastguard Worker</Para>
804*6a54128fSAndroid Build Coastguard Worker</ListItem>
805*6a54128fSAndroid Build Coastguard Worker
806*6a54128fSAndroid Build Coastguard Worker</ItemizedList>
807*6a54128fSAndroid Build Coastguard Worker
808*6a54128fSAndroid Build Coastguard WorkerExamples:
809*6a54128fSAndroid Build Coastguard Worker
810*6a54128fSAndroid Build Coastguard Worker<Screen>
811*6a54128fSAndroid Build Coastguard Worker	set hex 09 0a 0b 0c 0d 0e 0f
812*6a54128fSAndroid Build Coastguard Worker	set text Linux is just great !
813*6a54128fSAndroid Build Coastguard Worker
814*6a54128fSAndroid Build Coastguard Worker</Screen>
815*6a54128fSAndroid Build Coastguard Worker
816*6a54128fSAndroid Build Coastguard Worker</Para>
817*6a54128fSAndroid Build Coastguard Worker</ListItem>
818*6a54128fSAndroid Build Coastguard Worker<ListItem>
819*6a54128fSAndroid Build Coastguard Worker
820*6a54128fSAndroid Build Coastguard Worker<Para>
821*6a54128fSAndroid Build Coastguard Worker 	In the case where Type is defined, the second syntax should be used.
822*6a54128fSAndroid Build Coastguard WorkerThe set commands just sets the variable <Emphasis>variable</Emphasis> with the
823*6a54128fSAndroid Build Coastguard Workervalue <Emphasis>value</Emphasis>.
824*6a54128fSAndroid Build Coastguard Worker</Para>
825*6a54128fSAndroid Build Coastguard Worker</ListItem>
826*6a54128fSAndroid Build Coastguard Worker
827*6a54128fSAndroid Build Coastguard Worker</ItemizedList>
828*6a54128fSAndroid Build Coastguard Worker
829*6a54128fSAndroid Build Coastguard WorkerIn any case, the data is only changed in memory. For an actual update to the
830*6a54128fSAndroid Build Coastguard Workerdisk, use the <Command>writedata</Command> command.
831*6a54128fSAndroid Build Coastguard Worker</Para>
832*6a54128fSAndroid Build Coastguard Worker
833*6a54128fSAndroid Build Coastguard Worker</Sect2>
834*6a54128fSAndroid Build Coastguard Worker
835*6a54128fSAndroid Build Coastguard Worker<Sect2>
836*6a54128fSAndroid Build Coastguard Worker<Title>setdevice</Title>
837*6a54128fSAndroid Build Coastguard Worker
838*6a54128fSAndroid Build Coastguard Worker<Para>
839*6a54128fSAndroid Build Coastguard Worker
840*6a54128fSAndroid Build Coastguard Worker<Screen>
841*6a54128fSAndroid Build Coastguard WorkerSyntax: setdevice device
842*6a54128fSAndroid Build Coastguard Worker</Screen>
843*6a54128fSAndroid Build Coastguard Worker
844*6a54128fSAndroid Build Coastguard WorkerThe <Command>setdevice</Command> command is described at section <XRef LinkEnd="setdevice-ref">.
845*6a54128fSAndroid Build Coastguard Worker</Para>
846*6a54128fSAndroid Build Coastguard Worker
847*6a54128fSAndroid Build Coastguard Worker</Sect2>
848*6a54128fSAndroid Build Coastguard Worker
849*6a54128fSAndroid Build Coastguard Worker<Sect2>
850*6a54128fSAndroid Build Coastguard Worker<Title>setoffset</Title>
851*6a54128fSAndroid Build Coastguard Worker
852*6a54128fSAndroid Build Coastguard Worker<Para>
853*6a54128fSAndroid Build Coastguard Worker
854*6a54128fSAndroid Build Coastguard Worker<Screen>
855*6a54128fSAndroid Build Coastguard WorkerSyntax: setoffset [block || type] [+|-]offset
856*6a54128fSAndroid Build Coastguard Worker</Screen>
857*6a54128fSAndroid Build Coastguard Worker
858*6a54128fSAndroid Build Coastguard WorkerThe <Command>setoffset</Command> command is used to move asynchronously inside the file
859*6a54128fSAndroid Build Coastguard Workersystem. It is considered a low level command, and usually should not be used
860*6a54128fSAndroid Build Coastguard Workerwhen editing an ext2 filesystem, simply because movement is better
861*6a54128fSAndroid Build Coastguard Workerutilized through the specific ext2 commands.
862*6a54128fSAndroid Build Coastguard Worker</Para>
863*6a54128fSAndroid Build Coastguard Worker
864*6a54128fSAndroid Build Coastguard Worker<Para>
865*6a54128fSAndroid Build Coastguard WorkerThe <Command>offset</Command> is in bytes, and meanwhile should be positive and smaller
866*6a54128fSAndroid Build Coastguard Workerthan 2GB.
867*6a54128fSAndroid Build Coastguard Worker</Para>
868*6a54128fSAndroid Build Coastguard Worker
869*6a54128fSAndroid Build Coastguard Worker<Para>
870*6a54128fSAndroid Build Coastguard WorkerUse of the <Command>block</Command> modifier changes the counting unit to block.
871*6a54128fSAndroid Build Coastguard Worker</Para>
872*6a54128fSAndroid Build Coastguard Worker
873*6a54128fSAndroid Build Coastguard Worker<Para>
874*6a54128fSAndroid Build Coastguard WorkerUse of the <Literal remap="tt">+ or -</Literal> modifiers signals that the offset is relative to
875*6a54128fSAndroid Build Coastguard Workerthe current position.
876*6a54128fSAndroid Build Coastguard Worker</Para>
877*6a54128fSAndroid Build Coastguard Worker
878*6a54128fSAndroid Build Coastguard Worker<Para>
879*6a54128fSAndroid Build Coastguard Workeruse of the <Literal remap="tt">type</Literal> modifier is allowed only with relative offset. This
880*6a54128fSAndroid Build Coastguard Workermodifier will multiply the offset by the size of the current type.
881*6a54128fSAndroid Build Coastguard Worker</Para>
882*6a54128fSAndroid Build Coastguard Worker
883*6a54128fSAndroid Build Coastguard Worker</Sect2>
884*6a54128fSAndroid Build Coastguard Worker
885*6a54128fSAndroid Build Coastguard Worker<Sect2>
886*6a54128fSAndroid Build Coastguard Worker<Title>settype</Title>
887*6a54128fSAndroid Build Coastguard Worker
888*6a54128fSAndroid Build Coastguard Worker<Para>
889*6a54128fSAndroid Build Coastguard Worker
890*6a54128fSAndroid Build Coastguard Worker<Screen>
891*6a54128fSAndroid Build Coastguard WorkerSyntax: settype type || [none | hex]
892*6a54128fSAndroid Build Coastguard Worker</Screen>
893*6a54128fSAndroid Build Coastguard Worker
894*6a54128fSAndroid Build Coastguard WorkerThe <Command>settype</Command> command is used to move apply the object definitions of
895*6a54128fSAndroid Build Coastguard Workerthe type <Emphasis>type</Emphasis> on the current position. It is considered a low level
896*6a54128fSAndroid Build Coastguard Workercommand and usually should not be used when editing an ext2 filesystem since
897*6a54128fSAndroid Build Coastguard WorkerEXT2ED provides better tools. It is of-course very useful when editing a
898*6a54128fSAndroid Build Coastguard Workernon-ext2 filesystem and using user-defined objects.
899*6a54128fSAndroid Build Coastguard Worker</Para>
900*6a54128fSAndroid Build Coastguard Worker
901*6a54128fSAndroid Build Coastguard Worker<Para>
902*6a54128fSAndroid Build Coastguard WorkerWhen <Emphasis>type</Emphasis> is <Emphasis>hex</Emphasis> or <Emphasis>none</Emphasis>, the data will be displayed as
903*6a54128fSAndroid Build Coastguard Workera hex and text dump.
904*6a54128fSAndroid Build Coastguard Worker</Para>
905*6a54128fSAndroid Build Coastguard Worker
906*6a54128fSAndroid Build Coastguard Worker</Sect2>
907*6a54128fSAndroid Build Coastguard Worker
908*6a54128fSAndroid Build Coastguard Worker<Sect2>
909*6a54128fSAndroid Build Coastguard Worker<Title>show</Title>
910*6a54128fSAndroid Build Coastguard Worker
911*6a54128fSAndroid Build Coastguard Worker<Para>
912*6a54128fSAndroid Build Coastguard Worker
913*6a54128fSAndroid Build Coastguard Worker<Screen>
914*6a54128fSAndroid Build Coastguard WorkerSyntax: show
915*6a54128fSAndroid Build Coastguard Worker</Screen>
916*6a54128fSAndroid Build Coastguard Worker
917*6a54128fSAndroid Build Coastguard WorkerThe <Command>show</Command> command will show the data of the current object at the
918*6a54128fSAndroid Build Coastguard Workercurrent position on the main display window. It will also update the status
919*6a54128fSAndroid Build Coastguard Workerwindow with type specific information. It may be necessary to use
920*6a54128fSAndroid Build Coastguard Worker<Command>pgdn</Command> and <Command>pgup</Command> to view the entire data.
921*6a54128fSAndroid Build Coastguard Worker</Para>
922*6a54128fSAndroid Build Coastguard Worker
923*6a54128fSAndroid Build Coastguard Worker</Sect2>
924*6a54128fSAndroid Build Coastguard Worker
925*6a54128fSAndroid Build Coastguard Worker<Sect2>
926*6a54128fSAndroid Build Coastguard Worker<Title>writedata</Title>
927*6a54128fSAndroid Build Coastguard Worker
928*6a54128fSAndroid Build Coastguard Worker<Para>
929*6a54128fSAndroid Build Coastguard Worker
930*6a54128fSAndroid Build Coastguard Worker<Screen>
931*6a54128fSAndroid Build Coastguard WorkerSyntax: writedata
932*6a54128fSAndroid Build Coastguard Worker</Screen>
933*6a54128fSAndroid Build Coastguard Worker
934*6a54128fSAndroid Build Coastguard WorkerThe <Command>writedata</Command> command will update the disk with the object data that
935*6a54128fSAndroid Build Coastguard Workeris currently in memory. This is the point at which actual change is made to
936*6a54128fSAndroid Build Coastguard Workerthe filesystem. Without this command, the edited data will not have any
937*6a54128fSAndroid Build Coastguard Workereffect. Write access should be allowed for a successful update.
938*6a54128fSAndroid Build Coastguard Worker</Para>
939*6a54128fSAndroid Build Coastguard Worker
940*6a54128fSAndroid Build Coastguard Worker</Sect2>
941*6a54128fSAndroid Build Coastguard Worker
942*6a54128fSAndroid Build Coastguard Worker</Sect1>
943*6a54128fSAndroid Build Coastguard Worker
944*6a54128fSAndroid Build Coastguard Worker<Sect1>
945*6a54128fSAndroid Build Coastguard Worker<Title>Editing an ext2 filesystem</Title>
946*6a54128fSAndroid Build Coastguard Worker
947*6a54128fSAndroid Build Coastguard Worker<Para>
948*6a54128fSAndroid Build Coastguard WorkerIn order to edit an ext2 filesystem, you should, of course, know the structure
949*6a54128fSAndroid Build Coastguard Workerof the ext2 filesystem. If you feel that you lack some knowledge in this
950*6a54128fSAndroid Build Coastguard Workerarea, I suggest that you do some of the following:
951*6a54128fSAndroid Build Coastguard Worker
952*6a54128fSAndroid Build Coastguard Worker<ItemizedList>
953*6a54128fSAndroid Build Coastguard Worker<ListItem>
954*6a54128fSAndroid Build Coastguard Worker
955*6a54128fSAndroid Build Coastguard Worker<Para>
956*6a54128fSAndroid Build Coastguard Worker	Read the supplied ext2 technical information. I tried to summarize
957*6a54128fSAndroid Build Coastguard Workerthe basic information which is needed to get you started.
958*6a54128fSAndroid Build Coastguard Worker</Para>
959*6a54128fSAndroid Build Coastguard Worker</ListItem>
960*6a54128fSAndroid Build Coastguard Worker<ListItem>
961*6a54128fSAndroid Build Coastguard Worker
962*6a54128fSAndroid Build Coastguard Worker<Para>
963*6a54128fSAndroid Build Coastguard Worker	Get the slides that Remy Card (The author of the ext2 filesystem)
964*6a54128fSAndroid Build Coastguard Workerprepared concerning the ext2 filesystem.
965*6a54128fSAndroid Build Coastguard Worker</Para>
966*6a54128fSAndroid Build Coastguard Worker</ListItem>
967*6a54128fSAndroid Build Coastguard Worker<ListItem>
968*6a54128fSAndroid Build Coastguard Worker
969*6a54128fSAndroid Build Coastguard Worker<Para>
970*6a54128fSAndroid Build Coastguard Worker	Read the kernel sources.
971*6a54128fSAndroid Build Coastguard Worker</Para>
972*6a54128fSAndroid Build Coastguard Worker</ListItem>
973*6a54128fSAndroid Build Coastguard Worker
974*6a54128fSAndroid Build Coastguard Worker</ItemizedList>
975*6a54128fSAndroid Build Coastguard Worker
976*6a54128fSAndroid Build Coastguard WorkerAt this point, you should be familiar with the following terms:
977*6a54128fSAndroid Build Coastguard Worker<Literal remap="tt">block, inode, superblock, block groups, block allocation bitmap, inode
978*6a54128fSAndroid Build Coastguard Workerallocation bitmap, group descriptors, file, directory.</Literal>Most of the above
979*6a54128fSAndroid Build Coastguard Workerare objects in EXT2ED.
980*6a54128fSAndroid Build Coastguard Worker</Para>
981*6a54128fSAndroid Build Coastguard Worker
982*6a54128fSAndroid Build Coastguard Worker<Para>
983*6a54128fSAndroid Build Coastguard WorkerWhen editing an ext2 filesystem it is recommended that you use the ext2
984*6a54128fSAndroid Build Coastguard Workerspecific commands, rather then the general commands  <Command>setoffset</Command> and
985*6a54128fSAndroid Build Coastguard Worker<Command>settype</Command>, mainly because:
986*6a54128fSAndroid Build Coastguard Worker
987*6a54128fSAndroid Build Coastguard Worker<OrderedList>
988*6a54128fSAndroid Build Coastguard Worker<ListItem>
989*6a54128fSAndroid Build Coastguard Worker
990*6a54128fSAndroid Build Coastguard Worker<Para>
991*6a54128fSAndroid Build Coastguard Worker	In most cases it will be unreliable, and will display incorrect
992*6a54128fSAndroid Build Coastguard Workerinformation.
993*6a54128fSAndroid Build Coastguard Worker
994*6a54128fSAndroid Build Coastguard WorkerSometimes in order to edit an object, EXT2ED needs the information
995*6a54128fSAndroid Build Coastguard Workerof some other related objects. For example, when editing a
996*6a54128fSAndroid Build Coastguard Workerdirectory, EXT2ED needs access to the inode of the edited directory.
997*6a54128fSAndroid Build Coastguard WorkerSimply setting the type to a directory <Literal remap="tt">will be unreliable</Literal>,
998*6a54128fSAndroid Build Coastguard Workersince the object assumes that you passed through its inode to reach
999*6a54128fSAndroid Build Coastguard Workerit, and expects this information, which isn't initialized if you
1000*6a54128fSAndroid Build Coastguard Workerdirectly set the type to a directory.
1001*6a54128fSAndroid Build Coastguard Worker</Para>
1002*6a54128fSAndroid Build Coastguard Worker</ListItem>
1003*6a54128fSAndroid Build Coastguard Worker<ListItem>
1004*6a54128fSAndroid Build Coastguard Worker
1005*6a54128fSAndroid Build Coastguard Worker<Para>
1006*6a54128fSAndroid Build Coastguard Worker	EXT2ED offers far better tools for handling the ext2 filesystem
1007*6a54128fSAndroid Build Coastguard Workerusing the ext2 specific commands.
1008*6a54128fSAndroid Build Coastguard Worker</Para>
1009*6a54128fSAndroid Build Coastguard Worker</ListItem>
1010*6a54128fSAndroid Build Coastguard Worker
1011*6a54128fSAndroid Build Coastguard Worker</OrderedList>
1012*6a54128fSAndroid Build Coastguard Worker
1013*6a54128fSAndroid Build Coastguard Worker</Para>
1014*6a54128fSAndroid Build Coastguard Worker
1015*6a54128fSAndroid Build Coastguard Worker</Sect1>
1016*6a54128fSAndroid Build Coastguard Worker
1017*6a54128fSAndroid Build Coastguard Worker<Sect1>
1018*6a54128fSAndroid Build Coastguard Worker<Title>ext2 general commands</Title>
1019*6a54128fSAndroid Build Coastguard Worker
1020*6a54128fSAndroid Build Coastguard Worker<Para>
1021*6a54128fSAndroid Build Coastguard WorkerThe <Literal remap="tt">ext2 general commands</Literal> are available only when you are editing an
1022*6a54128fSAndroid Build Coastguard Workerext2 filesystem. They are <Literal remap="tt">general</Literal> in the sense that they are not
1023*6a54128fSAndroid Build Coastguard Workerspecific to some object, and can be invoked anytime.
1024*6a54128fSAndroid Build Coastguard Worker</Para>
1025*6a54128fSAndroid Build Coastguard Worker
1026*6a54128fSAndroid Build Coastguard Worker<Sect2 id="general-superblock">
1027*6a54128fSAndroid Build Coastguard Worker<Title>super</Title>
1028*6a54128fSAndroid Build Coastguard Worker
1029*6a54128fSAndroid Build Coastguard Worker<Para>
1030*6a54128fSAndroid Build Coastguard Worker
1031*6a54128fSAndroid Build Coastguard Worker<Screen>
1032*6a54128fSAndroid Build Coastguard WorkerSyntax: super
1033*6a54128fSAndroid Build Coastguard Worker</Screen>
1034*6a54128fSAndroid Build Coastguard Worker
1035*6a54128fSAndroid Build Coastguard WorkerThe <Command>super</Command> command will "bring you" to the main superblock copy. It
1036*6a54128fSAndroid Build Coastguard Workerwill automatically set the object type to <Literal remap="tt">ext2&lowbar;super&lowbar;block</Literal>. Then you
1037*6a54128fSAndroid Build Coastguard Workerwill be able to view and edit the superblock. When you are in the
1038*6a54128fSAndroid Build Coastguard Workersuperblock, other commands will be available.
1039*6a54128fSAndroid Build Coastguard Worker</Para>
1040*6a54128fSAndroid Build Coastguard Worker
1041*6a54128fSAndroid Build Coastguard Worker</Sect2>
1042*6a54128fSAndroid Build Coastguard Worker
1043*6a54128fSAndroid Build Coastguard Worker<Sect2>
1044*6a54128fSAndroid Build Coastguard Worker<Title>group</Title>
1045*6a54128fSAndroid Build Coastguard Worker
1046*6a54128fSAndroid Build Coastguard Worker<Para>
1047*6a54128fSAndroid Build Coastguard Worker
1048*6a54128fSAndroid Build Coastguard Worker<Screen>
1049*6a54128fSAndroid Build Coastguard WorkerSyntax: group [number]
1050*6a54128fSAndroid Build Coastguard Worker</Screen>
1051*6a54128fSAndroid Build Coastguard Worker
1052*6a54128fSAndroid Build Coastguard WorkerThe <Command>group</Command> command will "bring you" to the main copy of the
1053*6a54128fSAndroid Build Coastguard Worker<Emphasis>number</Emphasis> group descriptor. It will automatically set the object type to
1054*6a54128fSAndroid Build Coastguard Worker<Literal remap="tt">ext2&lowbar;group&lowbar;desc</Literal>. Then you will be able to view and edit the group
1055*6a54128fSAndroid Build Coastguard Workerdescriptor entry. When you are there, other commands will be available.
1056*6a54128fSAndroid Build Coastguard Worker</Para>
1057*6a54128fSAndroid Build Coastguard Worker
1058*6a54128fSAndroid Build Coastguard Worker</Sect2>
1059*6a54128fSAndroid Build Coastguard Worker
1060*6a54128fSAndroid Build Coastguard Worker<Sect2>
1061*6a54128fSAndroid Build Coastguard Worker<Title>cd</Title>
1062*6a54128fSAndroid Build Coastguard Worker
1063*6a54128fSAndroid Build Coastguard Worker<Para>
1064*6a54128fSAndroid Build Coastguard Worker
1065*6a54128fSAndroid Build Coastguard Worker<Screen>
1066*6a54128fSAndroid Build Coastguard WorkerSyntax: cd path
1067*6a54128fSAndroid Build Coastguard Worker</Screen>
1068*6a54128fSAndroid Build Coastguard Worker
1069*6a54128fSAndroid Build Coastguard WorkerThe <Command>cd</Command> command will let you travel in the filesystem in the nice way
1070*6a54128fSAndroid Build Coastguard Workerthat the mounted filesystem would have let you.
1071*6a54128fSAndroid Build Coastguard Worker</Para>
1072*6a54128fSAndroid Build Coastguard Worker
1073*6a54128fSAndroid Build Coastguard Worker<Para>
1074*6a54128fSAndroid Build Coastguard WorkerThe <Command>cd</Command> command is a complicated command. Although it may sound
1075*6a54128fSAndroid Build Coastguard Workersimple at first, an implementation of a typical cd requires passing through
1076*6a54128fSAndroid Build Coastguard Workerthe group descriptors, inodes, directory entries, etc. For example:
1077*6a54128fSAndroid Build Coastguard Worker</Para>
1078*6a54128fSAndroid Build Coastguard Worker
1079*6a54128fSAndroid Build Coastguard Worker<Para>
1080*6a54128fSAndroid Build Coastguard WorkerThe innocent cd /usr command can be done by using more primitive
1081*6a54128fSAndroid Build Coastguard WorkerEXT2ED commands in the following way (It is implemented exactly this way):
1082*6a54128fSAndroid Build Coastguard Worker
1083*6a54128fSAndroid Build Coastguard Worker<OrderedList>
1084*6a54128fSAndroid Build Coastguard Worker<ListItem>
1085*6a54128fSAndroid Build Coastguard Worker
1086*6a54128fSAndroid Build Coastguard Worker<Para>
1087*6a54128fSAndroid Build Coastguard Worker	Using <Command>group 0</Command> to go to the first group descriptor.
1088*6a54128fSAndroid Build Coastguard Worker</Para>
1089*6a54128fSAndroid Build Coastguard Worker</ListItem>
1090*6a54128fSAndroid Build Coastguard Worker<ListItem>
1091*6a54128fSAndroid Build Coastguard Worker
1092*6a54128fSAndroid Build Coastguard Worker<Para>
1093*6a54128fSAndroid Build Coastguard Worker	Using <Command>inode</Command> to get to the Bad blocks inode.
1094*6a54128fSAndroid Build Coastguard Worker</Para>
1095*6a54128fSAndroid Build Coastguard Worker</ListItem>
1096*6a54128fSAndroid Build Coastguard Worker<ListItem>
1097*6a54128fSAndroid Build Coastguard Worker
1098*6a54128fSAndroid Build Coastguard Worker<Para>
1099*6a54128fSAndroid Build Coastguard Worker	Using <Command>next</Command> to pass to the root directory inode.
1100*6a54128fSAndroid Build Coastguard Worker</Para>
1101*6a54128fSAndroid Build Coastguard Worker</ListItem>
1102*6a54128fSAndroid Build Coastguard Worker<ListItem>
1103*6a54128fSAndroid Build Coastguard Worker
1104*6a54128fSAndroid Build Coastguard Worker<Para>
1105*6a54128fSAndroid Build Coastguard Worker	Using <Command>dir</Command> to see the directory.
1106*6a54128fSAndroid Build Coastguard Worker</Para>
1107*6a54128fSAndroid Build Coastguard Worker</ListItem>
1108*6a54128fSAndroid Build Coastguard Worker<ListItem>
1109*6a54128fSAndroid Build Coastguard Worker
1110*6a54128fSAndroid Build Coastguard Worker<Para>
1111*6a54128fSAndroid Build Coastguard Worker	Using <Command>next</Command> until we find the directory usr.
1112*6a54128fSAndroid Build Coastguard Worker</Para>
1113*6a54128fSAndroid Build Coastguard Worker</ListItem>
1114*6a54128fSAndroid Build Coastguard Worker<ListItem>
1115*6a54128fSAndroid Build Coastguard Worker
1116*6a54128fSAndroid Build Coastguard Worker<Para>
1117*6a54128fSAndroid Build Coastguard Worker	Using <Command>followinode</Command> to pass to the inode corresponding to usr.
1118*6a54128fSAndroid Build Coastguard Worker</Para>
1119*6a54128fSAndroid Build Coastguard Worker</ListItem>
1120*6a54128fSAndroid Build Coastguard Worker<ListItem>
1121*6a54128fSAndroid Build Coastguard Worker
1122*6a54128fSAndroid Build Coastguard Worker<Para>
1123*6a54128fSAndroid Build Coastguard Worker	Using <Command>dir</Command> to see the directory of /usr.
1124*6a54128fSAndroid Build Coastguard Worker</Para>
1125*6a54128fSAndroid Build Coastguard Worker</ListItem>
1126*6a54128fSAndroid Build Coastguard Worker
1127*6a54128fSAndroid Build Coastguard Worker</OrderedList>
1128*6a54128fSAndroid Build Coastguard Worker
1129*6a54128fSAndroid Build Coastguard WorkerAnd those commands aren't that primitive; For example, the tracing of the
1130*6a54128fSAndroid Build Coastguard Workerblocks which belong to the root directory is done automatically by the dir
1131*6a54128fSAndroid Build Coastguard Workercommand behind the scenes, and the followinode command will automatically
1132*6a54128fSAndroid Build Coastguard Worker"run" to the correct group descriptor in order to find the required inode.
1133*6a54128fSAndroid Build Coastguard Worker</Para>
1134*6a54128fSAndroid Build Coastguard Worker
1135*6a54128fSAndroid Build Coastguard Worker<Para>
1136*6a54128fSAndroid Build Coastguard WorkerThe path to the <Command>general cd</Command> command needs to be a full pathname -
1137*6a54128fSAndroid Build Coastguard WorkerStarting from <Filename>/</Filename>. The <Command>cd</Command> command stops at the last reachable
1138*6a54128fSAndroid Build Coastguard Workerpoint, which can be a directory entry, in which case the type will be set to
1139*6a54128fSAndroid Build Coastguard Worker<Literal remap="tt">dir</Literal>, or an inode, in which case the type will be set to
1140*6a54128fSAndroid Build Coastguard Worker<Literal remap="tt">ext2&lowbar;inode</Literal>. Symbolic links (Only fast symbolic links, meanwhile) are
1141*6a54128fSAndroid Build Coastguard Workerautomatically followed (if they are not across filesystems, of-course). If
1142*6a54128fSAndroid Build Coastguard Workerthe type is set to <Literal remap="tt">dir</Literal>, you can use a path relative to the
1143*6a54128fSAndroid Build Coastguard Worker"current directory".
1144*6a54128fSAndroid Build Coastguard Worker</Para>
1145*6a54128fSAndroid Build Coastguard Worker
1146*6a54128fSAndroid Build Coastguard Worker</Sect2>
1147*6a54128fSAndroid Build Coastguard Worker
1148*6a54128fSAndroid Build Coastguard Worker</Sect1>
1149*6a54128fSAndroid Build Coastguard Worker
1150*6a54128fSAndroid Build Coastguard Worker<Sect1>
1151*6a54128fSAndroid Build Coastguard Worker<Title>The superblock</Title>
1152*6a54128fSAndroid Build Coastguard Worker
1153*6a54128fSAndroid Build Coastguard Worker<Para>
1154*6a54128fSAndroid Build Coastguard WorkerThe superblock can always be reached by the ext2 general command
1155*6a54128fSAndroid Build Coastguard Worker<Command>super</Command>. Cross reference section <XRef LinkEnd="general-superblock">.
1156*6a54128fSAndroid Build Coastguard Worker</Para>
1157*6a54128fSAndroid Build Coastguard Worker
1158*6a54128fSAndroid Build Coastguard Worker<Para>
1159*6a54128fSAndroid Build Coastguard WorkerThe status window will show you which copy of the superblock copies you are
1160*6a54128fSAndroid Build Coastguard Workercurrently editing.
1161*6a54128fSAndroid Build Coastguard Worker</Para>
1162*6a54128fSAndroid Build Coastguard Worker
1163*6a54128fSAndroid Build Coastguard Worker<Para>
1164*6a54128fSAndroid Build Coastguard WorkerThe main data window will show you the values of the various superblock
1165*6a54128fSAndroid Build Coastguard Workervariables, along with some interpretation of the values.
1166*6a54128fSAndroid Build Coastguard Worker</Para>
1167*6a54128fSAndroid Build Coastguard Worker
1168*6a54128fSAndroid Build Coastguard Worker<Para>
1169*6a54128fSAndroid Build Coastguard WorkerData can be changed with the <Command>set</Command> and <Command>writedata</Command> commands.
1170*6a54128fSAndroid Build Coastguard Worker
1171*6a54128fSAndroid Build Coastguard Worker<Screen>
1172*6a54128fSAndroid Build Coastguard WorkerFor example, set s_r_blocks_count=1400 will reserve 1400 blocks for root.
1173*6a54128fSAndroid Build Coastguard Worker</Screen>
1174*6a54128fSAndroid Build Coastguard Worker
1175*6a54128fSAndroid Build Coastguard Worker</Para>
1176*6a54128fSAndroid Build Coastguard Worker
1177*6a54128fSAndroid Build Coastguard Worker<Sect2>
1178*6a54128fSAndroid Build Coastguard Worker<Title>gocopy</Title>
1179*6a54128fSAndroid Build Coastguard Worker
1180*6a54128fSAndroid Build Coastguard Worker<Para>
1181*6a54128fSAndroid Build Coastguard Worker
1182*6a54128fSAndroid Build Coastguard Worker<Screen>
1183*6a54128fSAndroid Build Coastguard WorkerSyntax: gocopy number
1184*6a54128fSAndroid Build Coastguard Worker</Screen>
1185*6a54128fSAndroid Build Coastguard Worker
1186*6a54128fSAndroid Build Coastguard WorkerThe <Command>gocopy</Command> command will "bring you" to the backup copy <Emphasis>number</Emphasis>
1187*6a54128fSAndroid Build Coastguard Workerof the superblock copies. <Command>gocopy 0</Command>, for example, will bring you to
1188*6a54128fSAndroid Build Coastguard Workerthe main copy.
1189*6a54128fSAndroid Build Coastguard Worker</Para>
1190*6a54128fSAndroid Build Coastguard Worker
1191*6a54128fSAndroid Build Coastguard Worker</Sect2>
1192*6a54128fSAndroid Build Coastguard Worker
1193*6a54128fSAndroid Build Coastguard Worker<Sect2>
1194*6a54128fSAndroid Build Coastguard Worker<Title>setactivecopy</Title>
1195*6a54128fSAndroid Build Coastguard Worker
1196*6a54128fSAndroid Build Coastguard Worker<Para>
1197*6a54128fSAndroid Build Coastguard Worker
1198*6a54128fSAndroid Build Coastguard Worker<Screen>
1199*6a54128fSAndroid Build Coastguard WorkerSyntax: setactivecopy
1200*6a54128fSAndroid Build Coastguard Worker</Screen>
1201*6a54128fSAndroid Build Coastguard Worker
1202*6a54128fSAndroid Build Coastguard WorkerThe <Command>setactivecopy</Command> command will copy the contents of the current
1203*6a54128fSAndroid Build Coastguard Workersuperblock copy onto the contents of the main copy. It will also switch to
1204*6a54128fSAndroid Build Coastguard Workerediting of the main copy. No actual data is written to disk, of-course,
1205*6a54128fSAndroid Build Coastguard Workeruntil you issue the <Command>writedata</Command> command.
1206*6a54128fSAndroid Build Coastguard Worker</Para>
1207*6a54128fSAndroid Build Coastguard Worker
1208*6a54128fSAndroid Build Coastguard Worker</Sect2>
1209*6a54128fSAndroid Build Coastguard Worker
1210*6a54128fSAndroid Build Coastguard Worker</Sect1>
1211*6a54128fSAndroid Build Coastguard Worker
1212*6a54128fSAndroid Build Coastguard Worker<Sect1>
1213*6a54128fSAndroid Build Coastguard Worker<Title>The group descriptors</Title>
1214*6a54128fSAndroid Build Coastguard Worker
1215*6a54128fSAndroid Build Coastguard Worker<Para>
1216*6a54128fSAndroid Build Coastguard WorkerThe group descriptors can be edited by the <Command>group</Command> command.
1217*6a54128fSAndroid Build Coastguard Worker</Para>
1218*6a54128fSAndroid Build Coastguard Worker
1219*6a54128fSAndroid Build Coastguard Worker<Para>
1220*6a54128fSAndroid Build Coastguard WorkerThe status window will indicate the current group descriptor, the total
1221*6a54128fSAndroid Build Coastguard Workernumber of group descriptors (and hence of group blocks), and the backup copy
1222*6a54128fSAndroid Build Coastguard Workernumber.
1223*6a54128fSAndroid Build Coastguard Worker</Para>
1224*6a54128fSAndroid Build Coastguard Worker
1225*6a54128fSAndroid Build Coastguard Worker<Para>
1226*6a54128fSAndroid Build Coastguard WorkerThe main data window will just show you the values of the various variables.
1227*6a54128fSAndroid Build Coastguard Worker</Para>
1228*6a54128fSAndroid Build Coastguard Worker
1229*6a54128fSAndroid Build Coastguard Worker<Para>
1230*6a54128fSAndroid Build Coastguard WorkerBasically, you can use the <Command>next</Command> and <Command>prev</Command> commands, along with the
1231*6a54128fSAndroid Build Coastguard Worker<Command>set</Command> command, to modify the group descriptors.
1232*6a54128fSAndroid Build Coastguard Worker</Para>
1233*6a54128fSAndroid Build Coastguard Worker
1234*6a54128fSAndroid Build Coastguard Worker<Para>
1235*6a54128fSAndroid Build Coastguard WorkerThe group descriptors object is a junction, from which you can reach:
1236*6a54128fSAndroid Build Coastguard Worker
1237*6a54128fSAndroid Build Coastguard Worker<ItemizedList>
1238*6a54128fSAndroid Build Coastguard Worker<ListItem>
1239*6a54128fSAndroid Build Coastguard Worker
1240*6a54128fSAndroid Build Coastguard Worker<Para>
1241*6a54128fSAndroid Build Coastguard Worker	The inode table of the corresponding block group (the <Literal remap="tt">inode</Literal>
1242*6a54128fSAndroid Build Coastguard Workercommand)
1243*6a54128fSAndroid Build Coastguard Worker</Para>
1244*6a54128fSAndroid Build Coastguard Worker</ListItem>
1245*6a54128fSAndroid Build Coastguard Worker<ListItem>
1246*6a54128fSAndroid Build Coastguard Worker
1247*6a54128fSAndroid Build Coastguard Worker<Para>
1248*6a54128fSAndroid Build Coastguard Worker	The block allocation bitmap (the <Literal remap="tt">blockbitmap</Literal> command)
1249*6a54128fSAndroid Build Coastguard Worker</Para>
1250*6a54128fSAndroid Build Coastguard Worker</ListItem>
1251*6a54128fSAndroid Build Coastguard Worker<ListItem>
1252*6a54128fSAndroid Build Coastguard Worker
1253*6a54128fSAndroid Build Coastguard Worker<Para>
1254*6a54128fSAndroid Build Coastguard Worker	The inode allocation bitmap (the <Literal remap="tt">inodebitmap</Literal> command)
1255*6a54128fSAndroid Build Coastguard Worker</Para>
1256*6a54128fSAndroid Build Coastguard Worker</ListItem>
1257*6a54128fSAndroid Build Coastguard Worker
1258*6a54128fSAndroid Build Coastguard Worker</ItemizedList>
1259*6a54128fSAndroid Build Coastguard Worker
1260*6a54128fSAndroid Build Coastguard Worker</Para>
1261*6a54128fSAndroid Build Coastguard Worker
1262*6a54128fSAndroid Build Coastguard Worker<Sect2>
1263*6a54128fSAndroid Build Coastguard Worker<Title>blockbitmap</Title>
1264*6a54128fSAndroid Build Coastguard Worker
1265*6a54128fSAndroid Build Coastguard Worker<Para>
1266*6a54128fSAndroid Build Coastguard Worker
1267*6a54128fSAndroid Build Coastguard Worker<Screen>
1268*6a54128fSAndroid Build Coastguard WorkerSyntax: blockbitmap
1269*6a54128fSAndroid Build Coastguard Worker</Screen>
1270*6a54128fSAndroid Build Coastguard Worker
1271*6a54128fSAndroid Build Coastguard WorkerThe <Command>blockbitmap</Command> command will let you edit the block bitmap allocation
1272*6a54128fSAndroid Build Coastguard Workerblock of the current group block.
1273*6a54128fSAndroid Build Coastguard Worker</Para>
1274*6a54128fSAndroid Build Coastguard Worker
1275*6a54128fSAndroid Build Coastguard Worker</Sect2>
1276*6a54128fSAndroid Build Coastguard Worker
1277*6a54128fSAndroid Build Coastguard Worker<Sect2>
1278*6a54128fSAndroid Build Coastguard Worker<Title>entry</Title>
1279*6a54128fSAndroid Build Coastguard Worker
1280*6a54128fSAndroid Build Coastguard Worker<Para>
1281*6a54128fSAndroid Build Coastguard Worker
1282*6a54128fSAndroid Build Coastguard Worker<Screen>
1283*6a54128fSAndroid Build Coastguard WorkerSyntax: entry number
1284*6a54128fSAndroid Build Coastguard Worker</Screen>
1285*6a54128fSAndroid Build Coastguard Worker
1286*6a54128fSAndroid Build Coastguard WorkerThe <Command>entry</Command> command will move you to the <Emphasis>number</Emphasis> group descriptor in the
1287*6a54128fSAndroid Build Coastguard Workergroup descriptors table.
1288*6a54128fSAndroid Build Coastguard Worker</Para>
1289*6a54128fSAndroid Build Coastguard Worker
1290*6a54128fSAndroid Build Coastguard Worker</Sect2>
1291*6a54128fSAndroid Build Coastguard Worker
1292*6a54128fSAndroid Build Coastguard Worker<Sect2>
1293*6a54128fSAndroid Build Coastguard Worker<Title>inode</Title>
1294*6a54128fSAndroid Build Coastguard Worker
1295*6a54128fSAndroid Build Coastguard Worker<Para>
1296*6a54128fSAndroid Build Coastguard Worker
1297*6a54128fSAndroid Build Coastguard Worker<Screen>
1298*6a54128fSAndroid Build Coastguard WorkerSyntax: inode
1299*6a54128fSAndroid Build Coastguard Worker</Screen>
1300*6a54128fSAndroid Build Coastguard Worker
1301*6a54128fSAndroid Build Coastguard WorkerThe <Command>inode</Command> command will pass you to the first inode in the current
1302*6a54128fSAndroid Build Coastguard Workergroup block.
1303*6a54128fSAndroid Build Coastguard Worker</Para>
1304*6a54128fSAndroid Build Coastguard Worker
1305*6a54128fSAndroid Build Coastguard Worker</Sect2>
1306*6a54128fSAndroid Build Coastguard Worker
1307*6a54128fSAndroid Build Coastguard Worker<Sect2>
1308*6a54128fSAndroid Build Coastguard Worker<Title>inodebitmap</Title>
1309*6a54128fSAndroid Build Coastguard Worker
1310*6a54128fSAndroid Build Coastguard Worker<Para>
1311*6a54128fSAndroid Build Coastguard Worker
1312*6a54128fSAndroid Build Coastguard Worker<Screen>
1313*6a54128fSAndroid Build Coastguard WorkerSyntax: inodebitmap
1314*6a54128fSAndroid Build Coastguard Worker</Screen>
1315*6a54128fSAndroid Build Coastguard Worker
1316*6a54128fSAndroid Build Coastguard WorkerThe <Command>inodebitmap</Command> command will let you edit the inode bitmap allocation
1317*6a54128fSAndroid Build Coastguard Workerblock of the current group block.
1318*6a54128fSAndroid Build Coastguard Worker</Para>
1319*6a54128fSAndroid Build Coastguard Worker
1320*6a54128fSAndroid Build Coastguard Worker</Sect2>
1321*6a54128fSAndroid Build Coastguard Worker
1322*6a54128fSAndroid Build Coastguard Worker<Sect2>
1323*6a54128fSAndroid Build Coastguard Worker<Title>next</Title>
1324*6a54128fSAndroid Build Coastguard Worker
1325*6a54128fSAndroid Build Coastguard Worker<Para>
1326*6a54128fSAndroid Build Coastguard Worker
1327*6a54128fSAndroid Build Coastguard Worker<Screen>
1328*6a54128fSAndroid Build Coastguard WorkerSyntax: next [number]
1329*6a54128fSAndroid Build Coastguard Worker</Screen>
1330*6a54128fSAndroid Build Coastguard Worker
1331*6a54128fSAndroid Build Coastguard WorkerThe <Command>next</Command> command will pass to the next <Emphasis>number</Emphasis> group
1332*6a54128fSAndroid Build Coastguard Workerdescriptor. If <Emphasis>number</Emphasis> is omitted, <Emphasis>number=1</Emphasis> is assumed.
1333*6a54128fSAndroid Build Coastguard Worker</Para>
1334*6a54128fSAndroid Build Coastguard Worker
1335*6a54128fSAndroid Build Coastguard Worker</Sect2>
1336*6a54128fSAndroid Build Coastguard Worker
1337*6a54128fSAndroid Build Coastguard Worker<Sect2>
1338*6a54128fSAndroid Build Coastguard Worker<Title>prev</Title>
1339*6a54128fSAndroid Build Coastguard Worker
1340*6a54128fSAndroid Build Coastguard Worker<Para>
1341*6a54128fSAndroid Build Coastguard Worker
1342*6a54128fSAndroid Build Coastguard Worker<Screen>
1343*6a54128fSAndroid Build Coastguard WorkerSyntax: prev [number]
1344*6a54128fSAndroid Build Coastguard Worker</Screen>
1345*6a54128fSAndroid Build Coastguard Worker
1346*6a54128fSAndroid Build Coastguard WorkerThe <Command>prev</Command> command will pass to the previous <Emphasis>number</Emphasis> group
1347*6a54128fSAndroid Build Coastguard Workerdescriptor. If <Emphasis>number</Emphasis> is omitted, <Emphasis>number=1</Emphasis> is assumed.
1348*6a54128fSAndroid Build Coastguard Worker</Para>
1349*6a54128fSAndroid Build Coastguard Worker
1350*6a54128fSAndroid Build Coastguard Worker</Sect2>
1351*6a54128fSAndroid Build Coastguard Worker
1352*6a54128fSAndroid Build Coastguard Worker<Sect2>
1353*6a54128fSAndroid Build Coastguard Worker<Title>setactivecopy</Title>
1354*6a54128fSAndroid Build Coastguard Worker
1355*6a54128fSAndroid Build Coastguard Worker<Para>
1356*6a54128fSAndroid Build Coastguard Worker
1357*6a54128fSAndroid Build Coastguard Worker<Screen>
1358*6a54128fSAndroid Build Coastguard WorkerSyntax: setactivecopy
1359*6a54128fSAndroid Build Coastguard Worker</Screen>
1360*6a54128fSAndroid Build Coastguard Worker
1361*6a54128fSAndroid Build Coastguard WorkerThe <Command>setactivecopy</Command> command copies the contents of the current group
1362*6a54128fSAndroid Build Coastguard Workerdescriptor, to its main copy. The updated main copy will then be shown. No
1363*6a54128fSAndroid Build Coastguard Workeractual change is made to the disk until you issue the <Command>writedata</Command>
1364*6a54128fSAndroid Build Coastguard Workercommand.
1365*6a54128fSAndroid Build Coastguard Worker</Para>
1366*6a54128fSAndroid Build Coastguard Worker
1367*6a54128fSAndroid Build Coastguard Worker</Sect2>
1368*6a54128fSAndroid Build Coastguard Worker
1369*6a54128fSAndroid Build Coastguard Worker</Sect1>
1370*6a54128fSAndroid Build Coastguard Worker
1371*6a54128fSAndroid Build Coastguard Worker<Sect1>
1372*6a54128fSAndroid Build Coastguard Worker<Title>The inode</Title>
1373*6a54128fSAndroid Build Coastguard Worker
1374*6a54128fSAndroid Build Coastguard Worker<Para>
1375*6a54128fSAndroid Build Coastguard WorkerAn inode can be reached by the following two ways:
1376*6a54128fSAndroid Build Coastguard Worker
1377*6a54128fSAndroid Build Coastguard Worker<ItemizedList>
1378*6a54128fSAndroid Build Coastguard Worker<ListItem>
1379*6a54128fSAndroid Build Coastguard Worker
1380*6a54128fSAndroid Build Coastguard Worker<Para>
1381*6a54128fSAndroid Build Coastguard Worker	Using <Command>inode</Command> from the corresponding group descriptor.
1382*6a54128fSAndroid Build Coastguard Worker</Para>
1383*6a54128fSAndroid Build Coastguard Worker</ListItem>
1384*6a54128fSAndroid Build Coastguard Worker<ListItem>
1385*6a54128fSAndroid Build Coastguard Worker
1386*6a54128fSAndroid Build Coastguard Worker<Para>
1387*6a54128fSAndroid Build Coastguard Worker	Using <Command>followinode</Command> from a directory entry.
1388*6a54128fSAndroid Build Coastguard Worker</Para>
1389*6a54128fSAndroid Build Coastguard Worker</ListItem>
1390*6a54128fSAndroid Build Coastguard Worker<ListItem>
1391*6a54128fSAndroid Build Coastguard Worker
1392*6a54128fSAndroid Build Coastguard Worker<Para>
1393*6a54128fSAndroid Build Coastguard Worker	Using the <Command>cd</Command> command with the pathname to the file.
1394*6a54128fSAndroid Build Coastguard Worker
1395*6a54128fSAndroid Build Coastguard WorkerFor example, <Command>cd /usr/src/ext2ed/ext2ed.h</Command>
1396*6a54128fSAndroid Build Coastguard Worker</Para>
1397*6a54128fSAndroid Build Coastguard Worker</ListItem>
1398*6a54128fSAndroid Build Coastguard Worker
1399*6a54128fSAndroid Build Coastguard Worker</ItemizedList>
1400*6a54128fSAndroid Build Coastguard Worker
1401*6a54128fSAndroid Build Coastguard Worker</Para>
1402*6a54128fSAndroid Build Coastguard Worker
1403*6a54128fSAndroid Build Coastguard Worker<Para>
1404*6a54128fSAndroid Build Coastguard WorkerThe status window will indicate:
1405*6a54128fSAndroid Build Coastguard Worker
1406*6a54128fSAndroid Build Coastguard Worker<ItemizedList>
1407*6a54128fSAndroid Build Coastguard Worker<ListItem>
1408*6a54128fSAndroid Build Coastguard Worker
1409*6a54128fSAndroid Build Coastguard Worker<Para>
1410*6a54128fSAndroid Build Coastguard Worker	The current global inode number.
1411*6a54128fSAndroid Build Coastguard Worker</Para>
1412*6a54128fSAndroid Build Coastguard Worker</ListItem>
1413*6a54128fSAndroid Build Coastguard Worker<ListItem>
1414*6a54128fSAndroid Build Coastguard Worker
1415*6a54128fSAndroid Build Coastguard Worker<Para>
1416*6a54128fSAndroid Build Coastguard Worker	The total total number of inodes.
1417*6a54128fSAndroid Build Coastguard Worker</Para>
1418*6a54128fSAndroid Build Coastguard Worker</ListItem>
1419*6a54128fSAndroid Build Coastguard Worker<ListItem>
1420*6a54128fSAndroid Build Coastguard Worker
1421*6a54128fSAndroid Build Coastguard Worker<Para>
1422*6a54128fSAndroid Build Coastguard Worker	On which block group the inode is allocated.
1423*6a54128fSAndroid Build Coastguard Worker</Para>
1424*6a54128fSAndroid Build Coastguard Worker</ListItem>
1425*6a54128fSAndroid Build Coastguard Worker<ListItem>
1426*6a54128fSAndroid Build Coastguard Worker
1427*6a54128fSAndroid Build Coastguard Worker<Para>
1428*6a54128fSAndroid Build Coastguard Worker	The total number of inodes in this group block.
1429*6a54128fSAndroid Build Coastguard Worker</Para>
1430*6a54128fSAndroid Build Coastguard Worker</ListItem>
1431*6a54128fSAndroid Build Coastguard Worker<ListItem>
1432*6a54128fSAndroid Build Coastguard Worker
1433*6a54128fSAndroid Build Coastguard Worker<Para>
1434*6a54128fSAndroid Build Coastguard Worker	The index of the current inode in the current group block.
1435*6a54128fSAndroid Build Coastguard Worker</Para>
1436*6a54128fSAndroid Build Coastguard Worker</ListItem>
1437*6a54128fSAndroid Build Coastguard Worker<ListItem>
1438*6a54128fSAndroid Build Coastguard Worker
1439*6a54128fSAndroid Build Coastguard Worker<Para>
1440*6a54128fSAndroid Build Coastguard Worker	The type of the inode (file, directory, special, etc).
1441*6a54128fSAndroid Build Coastguard Worker</Para>
1442*6a54128fSAndroid Build Coastguard Worker</ListItem>
1443*6a54128fSAndroid Build Coastguard Worker
1444*6a54128fSAndroid Build Coastguard Worker</ItemizedList>
1445*6a54128fSAndroid Build Coastguard Worker
1446*6a54128fSAndroid Build Coastguard Worker</Para>
1447*6a54128fSAndroid Build Coastguard Worker
1448*6a54128fSAndroid Build Coastguard Worker<Para>
1449*6a54128fSAndroid Build Coastguard WorkerThe main data window, in addition to the list of variables, will contain
1450*6a54128fSAndroid Build Coastguard Workersome interpretations on the right side.
1451*6a54128fSAndroid Build Coastguard Worker</Para>
1452*6a54128fSAndroid Build Coastguard Worker
1453*6a54128fSAndroid Build Coastguard Worker<Para>
1454*6a54128fSAndroid Build Coastguard WorkerIf the inode corresponds to a file, you can use the <Command>file</Command> command to
1455*6a54128fSAndroid Build Coastguard Workeredit the file.
1456*6a54128fSAndroid Build Coastguard Worker</Para>
1457*6a54128fSAndroid Build Coastguard Worker
1458*6a54128fSAndroid Build Coastguard Worker<Para>
1459*6a54128fSAndroid Build Coastguard WorkerIf the inode is an inode of a directory, you can use the <Command>dir</Command> command
1460*6a54128fSAndroid Build Coastguard Workerto edit the directory.
1461*6a54128fSAndroid Build Coastguard Worker</Para>
1462*6a54128fSAndroid Build Coastguard Worker
1463*6a54128fSAndroid Build Coastguard Worker<Sect2>
1464*6a54128fSAndroid Build Coastguard Worker<Title>dir</Title>
1465*6a54128fSAndroid Build Coastguard Worker
1466*6a54128fSAndroid Build Coastguard Worker<Para>
1467*6a54128fSAndroid Build Coastguard Worker
1468*6a54128fSAndroid Build Coastguard Worker<Screen>
1469*6a54128fSAndroid Build Coastguard WorkerSyntax: dir
1470*6a54128fSAndroid Build Coastguard Worker</Screen>
1471*6a54128fSAndroid Build Coastguard Worker
1472*6a54128fSAndroid Build Coastguard WorkerIf the inode mode corresponds to a directory (shown on the status window),
1473*6a54128fSAndroid Build Coastguard Workeryou can enter directory mode editing by using <Literal remap="tt">dir</Literal>.
1474*6a54128fSAndroid Build Coastguard Worker</Para>
1475*6a54128fSAndroid Build Coastguard Worker
1476*6a54128fSAndroid Build Coastguard Worker</Sect2>
1477*6a54128fSAndroid Build Coastguard Worker
1478*6a54128fSAndroid Build Coastguard Worker<Sect2>
1479*6a54128fSAndroid Build Coastguard Worker<Title>entry</Title>
1480*6a54128fSAndroid Build Coastguard Worker
1481*6a54128fSAndroid Build Coastguard Worker<Para>
1482*6a54128fSAndroid Build Coastguard Worker
1483*6a54128fSAndroid Build Coastguard Worker<Screen>
1484*6a54128fSAndroid Build Coastguard WorkerSyntax: entry number
1485*6a54128fSAndroid Build Coastguard Worker</Screen>
1486*6a54128fSAndroid Build Coastguard Worker
1487*6a54128fSAndroid Build Coastguard WorkerThe <Command>entry</Command> command will move you to the <Emphasis>number</Emphasis> inode in the
1488*6a54128fSAndroid Build Coastguard Workercurrent inode table.
1489*6a54128fSAndroid Build Coastguard Worker</Para>
1490*6a54128fSAndroid Build Coastguard Worker
1491*6a54128fSAndroid Build Coastguard Worker</Sect2>
1492*6a54128fSAndroid Build Coastguard Worker
1493*6a54128fSAndroid Build Coastguard Worker<Sect2>
1494*6a54128fSAndroid Build Coastguard Worker<Title>file</Title>
1495*6a54128fSAndroid Build Coastguard Worker
1496*6a54128fSAndroid Build Coastguard Worker<Para>
1497*6a54128fSAndroid Build Coastguard Worker
1498*6a54128fSAndroid Build Coastguard Worker<Screen>
1499*6a54128fSAndroid Build Coastguard WorkerSyntax: file
1500*6a54128fSAndroid Build Coastguard Worker</Screen>
1501*6a54128fSAndroid Build Coastguard Worker
1502*6a54128fSAndroid Build Coastguard WorkerIf the inode mode corresponds to a file (shown on the status window),
1503*6a54128fSAndroid Build Coastguard Workeryou can enter file mode editing by using <Command>file</Command>.
1504*6a54128fSAndroid Build Coastguard Worker</Para>
1505*6a54128fSAndroid Build Coastguard Worker
1506*6a54128fSAndroid Build Coastguard Worker</Sect2>
1507*6a54128fSAndroid Build Coastguard Worker
1508*6a54128fSAndroid Build Coastguard Worker<Sect2>
1509*6a54128fSAndroid Build Coastguard Worker<Title>group</Title>
1510*6a54128fSAndroid Build Coastguard Worker
1511*6a54128fSAndroid Build Coastguard Worker<Para>
1512*6a54128fSAndroid Build Coastguard Worker
1513*6a54128fSAndroid Build Coastguard Worker<Screen>
1514*6a54128fSAndroid Build Coastguard WorkerSyntax: group
1515*6a54128fSAndroid Build Coastguard Worker</Screen>
1516*6a54128fSAndroid Build Coastguard Worker
1517*6a54128fSAndroid Build Coastguard WorkerThe <Command>group</Command> command is used to go to the group descriptor of the
1518*6a54128fSAndroid Build Coastguard Workercurrent group block.
1519*6a54128fSAndroid Build Coastguard Worker</Para>
1520*6a54128fSAndroid Build Coastguard Worker
1521*6a54128fSAndroid Build Coastguard Worker</Sect2>
1522*6a54128fSAndroid Build Coastguard Worker
1523*6a54128fSAndroid Build Coastguard Worker<Sect2>
1524*6a54128fSAndroid Build Coastguard Worker<Title>next</Title>
1525*6a54128fSAndroid Build Coastguard Worker
1526*6a54128fSAndroid Build Coastguard Worker<Para>
1527*6a54128fSAndroid Build Coastguard Worker
1528*6a54128fSAndroid Build Coastguard Worker<Screen>
1529*6a54128fSAndroid Build Coastguard WorkerSyntax: next [number]
1530*6a54128fSAndroid Build Coastguard Worker</Screen>
1531*6a54128fSAndroid Build Coastguard Worker
1532*6a54128fSAndroid Build Coastguard WorkerThe <Command>next</Command> command will pass to the next <Emphasis>number</Emphasis> inode.
1533*6a54128fSAndroid Build Coastguard WorkerIf <Emphasis>number</Emphasis> is omitted, <Emphasis>number=1</Emphasis> is assumed.
1534*6a54128fSAndroid Build Coastguard Worker</Para>
1535*6a54128fSAndroid Build Coastguard Worker
1536*6a54128fSAndroid Build Coastguard Worker</Sect2>
1537*6a54128fSAndroid Build Coastguard Worker
1538*6a54128fSAndroid Build Coastguard Worker<Sect2>
1539*6a54128fSAndroid Build Coastguard Worker<Title>prev</Title>
1540*6a54128fSAndroid Build Coastguard Worker
1541*6a54128fSAndroid Build Coastguard Worker<Para>
1542*6a54128fSAndroid Build Coastguard Worker
1543*6a54128fSAndroid Build Coastguard Worker<Screen>
1544*6a54128fSAndroid Build Coastguard WorkerSyntax: prev [number]
1545*6a54128fSAndroid Build Coastguard Worker</Screen>
1546*6a54128fSAndroid Build Coastguard Worker
1547*6a54128fSAndroid Build Coastguard WorkerThe <Command>prev</Command> command will pass to the previous <Emphasis>number</Emphasis> inode.
1548*6a54128fSAndroid Build Coastguard WorkerIf <Emphasis>number</Emphasis> is omitted, <Emphasis>number=1</Emphasis> is assumed.
1549*6a54128fSAndroid Build Coastguard Worker</Para>
1550*6a54128fSAndroid Build Coastguard Worker
1551*6a54128fSAndroid Build Coastguard Worker</Sect2>
1552*6a54128fSAndroid Build Coastguard Worker
1553*6a54128fSAndroid Build Coastguard Worker</Sect1>
1554*6a54128fSAndroid Build Coastguard Worker
1555*6a54128fSAndroid Build Coastguard Worker<Sect1>
1556*6a54128fSAndroid Build Coastguard Worker<Title>The file</Title>
1557*6a54128fSAndroid Build Coastguard Worker
1558*6a54128fSAndroid Build Coastguard Worker<Para>
1559*6a54128fSAndroid Build Coastguard WorkerWhen editing a file, EXT2ED offers you a both a continuous and a true
1560*6a54128fSAndroid Build Coastguard Workerfragmented view of the file - The file is still shown block by block with
1561*6a54128fSAndroid Build Coastguard Workerthe true block number at each stage and EXT2ED offers you commands which
1562*6a54128fSAndroid Build Coastguard Workerallow you to move between the <Literal remap="tt">file blocks</Literal>, while finding the
1563*6a54128fSAndroid Build Coastguard Workerallocated blocks by using the inode information behind the scenes.
1564*6a54128fSAndroid Build Coastguard Worker</Para>
1565*6a54128fSAndroid Build Coastguard Worker
1566*6a54128fSAndroid Build Coastguard Worker<Para>
1567*6a54128fSAndroid Build Coastguard WorkerAside from this, the editing is just a <Literal remap="tt">hex editing</Literal> - You move the
1568*6a54128fSAndroid Build Coastguard Workercursor in the current block of the file by using <Command>next</Command> and
1569*6a54128fSAndroid Build Coastguard Worker<Command>prev</Command>, move between blocks by <Command>nextblock</Command> and <Command>prevblock</Command>,
1570*6a54128fSAndroid Build Coastguard Workerand make changes by the <Command>set</Command> command. Note that the set command is
1571*6a54128fSAndroid Build Coastguard Workeroverridden here - There are no variables. The <Command>writedata</Command> command will
1572*6a54128fSAndroid Build Coastguard Workerupdate the current block to the disk.
1573*6a54128fSAndroid Build Coastguard Worker</Para>
1574*6a54128fSAndroid Build Coastguard Worker
1575*6a54128fSAndroid Build Coastguard Worker<Para>
1576*6a54128fSAndroid Build Coastguard WorkerReaching a file can be done by using the <Command>file</Command> command from its inode.
1577*6a54128fSAndroid Build Coastguard WorkerThe inode can be reached by any other means, for example, by the
1578*6a54128fSAndroid Build Coastguard Worker<Command>cd</Command> command, if you know the file name.
1579*6a54128fSAndroid Build Coastguard Worker</Para>
1580*6a54128fSAndroid Build Coastguard Worker
1581*6a54128fSAndroid Build Coastguard Worker<Para>
1582*6a54128fSAndroid Build Coastguard WorkerThe status window will indicate:
1583*6a54128fSAndroid Build Coastguard Worker
1584*6a54128fSAndroid Build Coastguard Worker<ItemizedList>
1585*6a54128fSAndroid Build Coastguard Worker<ListItem>
1586*6a54128fSAndroid Build Coastguard Worker
1587*6a54128fSAndroid Build Coastguard Worker<Para>
1588*6a54128fSAndroid Build Coastguard Worker	The global block number.
1589*6a54128fSAndroid Build Coastguard Worker</Para>
1590*6a54128fSAndroid Build Coastguard Worker</ListItem>
1591*6a54128fSAndroid Build Coastguard Worker<ListItem>
1592*6a54128fSAndroid Build Coastguard Worker
1593*6a54128fSAndroid Build Coastguard Worker<Para>
1594*6a54128fSAndroid Build Coastguard Worker	The internal file block number.
1595*6a54128fSAndroid Build Coastguard Worker</Para>
1596*6a54128fSAndroid Build Coastguard Worker</ListItem>
1597*6a54128fSAndroid Build Coastguard Worker<ListItem>
1598*6a54128fSAndroid Build Coastguard Worker
1599*6a54128fSAndroid Build Coastguard Worker<Para>
1600*6a54128fSAndroid Build Coastguard Worker	The file offset.
1601*6a54128fSAndroid Build Coastguard Worker</Para>
1602*6a54128fSAndroid Build Coastguard Worker</ListItem>
1603*6a54128fSAndroid Build Coastguard Worker<ListItem>
1604*6a54128fSAndroid Build Coastguard Worker
1605*6a54128fSAndroid Build Coastguard Worker<Para>
1606*6a54128fSAndroid Build Coastguard Worker	The file size.
1607*6a54128fSAndroid Build Coastguard Worker</Para>
1608*6a54128fSAndroid Build Coastguard Worker</ListItem>
1609*6a54128fSAndroid Build Coastguard Worker<ListItem>
1610*6a54128fSAndroid Build Coastguard Worker
1611*6a54128fSAndroid Build Coastguard Worker<Para>
1612*6a54128fSAndroid Build Coastguard Worker	The file inode number.
1613*6a54128fSAndroid Build Coastguard Worker</Para>
1614*6a54128fSAndroid Build Coastguard Worker</ListItem>
1615*6a54128fSAndroid Build Coastguard Worker<ListItem>
1616*6a54128fSAndroid Build Coastguard Worker
1617*6a54128fSAndroid Build Coastguard Worker<Para>
1618*6a54128fSAndroid Build Coastguard Worker	The indirection level - Whether it is a direct block (0), indirect
1619*6a54128fSAndroid Build Coastguard Worker(1), etc.
1620*6a54128fSAndroid Build Coastguard Worker</Para>
1621*6a54128fSAndroid Build Coastguard Worker</ListItem>
1622*6a54128fSAndroid Build Coastguard Worker
1623*6a54128fSAndroid Build Coastguard Worker</ItemizedList>
1624*6a54128fSAndroid Build Coastguard Worker
1625*6a54128fSAndroid Build Coastguard Worker</Para>
1626*6a54128fSAndroid Build Coastguard Worker
1627*6a54128fSAndroid Build Coastguard Worker<Para>
1628*6a54128fSAndroid Build Coastguard WorkerThe main data window will display the file either in hex mode or in text
1629*6a54128fSAndroid Build Coastguard Workermode, select-able by the <Command>display</Command> command.
1630*6a54128fSAndroid Build Coastguard Worker</Para>
1631*6a54128fSAndroid Build Coastguard Worker
1632*6a54128fSAndroid Build Coastguard Worker<Para>
1633*6a54128fSAndroid Build Coastguard WorkerIn hex mode, EXT2ED will display offsets in the current block, along with a
1634*6a54128fSAndroid Build Coastguard Workertext and hex dump of the current block.
1635*6a54128fSAndroid Build Coastguard Worker</Para>
1636*6a54128fSAndroid Build Coastguard Worker
1637*6a54128fSAndroid Build Coastguard Worker<Para>
1638*6a54128fSAndroid Build Coastguard WorkerIn either case the <Literal remap="tt">current place</Literal> will be highlighted. In the hex mode
1639*6a54128fSAndroid Build Coastguard Workerit will be always highlighted, while in the text mode it will be highlighted
1640*6a54128fSAndroid Build Coastguard Workerif the character is display-able.
1641*6a54128fSAndroid Build Coastguard Worker</Para>
1642*6a54128fSAndroid Build Coastguard Worker
1643*6a54128fSAndroid Build Coastguard Worker<Sect2>
1644*6a54128fSAndroid Build Coastguard Worker<Title>block</Title>
1645*6a54128fSAndroid Build Coastguard Worker
1646*6a54128fSAndroid Build Coastguard Worker<Para>
1647*6a54128fSAndroid Build Coastguard Worker
1648*6a54128fSAndroid Build Coastguard Worker<Screen>
1649*6a54128fSAndroid Build Coastguard WorkerSyntax: block block_num
1650*6a54128fSAndroid Build Coastguard Worker</Screen>
1651*6a54128fSAndroid Build Coastguard Worker
1652*6a54128fSAndroid Build Coastguard WorkerThe <Command>block</Command> command is used to move inside the file. The
1653*6a54128fSAndroid Build Coastguard Worker<Emphasis>block&lowbar;num</Emphasis> argument is the requested internal file block number. A
1654*6a54128fSAndroid Build Coastguard Workervalue of 0 will reach the beginning of the file.
1655*6a54128fSAndroid Build Coastguard Worker</Para>
1656*6a54128fSAndroid Build Coastguard Worker
1657*6a54128fSAndroid Build Coastguard Worker</Sect2>
1658*6a54128fSAndroid Build Coastguard Worker
1659*6a54128fSAndroid Build Coastguard Worker<Sect2>
1660*6a54128fSAndroid Build Coastguard Worker<Title>display</Title>
1661*6a54128fSAndroid Build Coastguard Worker
1662*6a54128fSAndroid Build Coastguard Worker<Para>
1663*6a54128fSAndroid Build Coastguard Worker
1664*6a54128fSAndroid Build Coastguard Worker<Screen>
1665*6a54128fSAndroid Build Coastguard WorkerSyntax: display [text || hex]
1666*6a54128fSAndroid Build Coastguard Worker</Screen>
1667*6a54128fSAndroid Build Coastguard Worker
1668*6a54128fSAndroid Build Coastguard WorkerThe <Command>display</Command> command changes the display mode of the file.
1669*6a54128fSAndroid Build Coastguard Worker<Command>display
1670*6a54128fSAndroid Build Coastguard Workerhex</Command> will switch to <Command>hex mode</Command>, while <Command>display text</Command> will switch
1671*6a54128fSAndroid Build Coastguard Workerto text mode. The default mode when no <Command>display</Command> command is issued is
1672*6a54128fSAndroid Build Coastguard Worker<Command>hex mode</Command>.
1673*6a54128fSAndroid Build Coastguard Worker</Para>
1674*6a54128fSAndroid Build Coastguard Worker
1675*6a54128fSAndroid Build Coastguard Worker</Sect2>
1676*6a54128fSAndroid Build Coastguard Worker
1677*6a54128fSAndroid Build Coastguard Worker<Sect2>
1678*6a54128fSAndroid Build Coastguard Worker<Title>inode</Title>
1679*6a54128fSAndroid Build Coastguard Worker
1680*6a54128fSAndroid Build Coastguard Worker<Para>
1681*6a54128fSAndroid Build Coastguard Worker
1682*6a54128fSAndroid Build Coastguard Worker<Screen>
1683*6a54128fSAndroid Build Coastguard WorkerSyntax: inode
1684*6a54128fSAndroid Build Coastguard Worker</Screen>
1685*6a54128fSAndroid Build Coastguard Worker
1686*6a54128fSAndroid Build Coastguard WorkerThe <Command>inode</Command> command will return to the inode of the current file.
1687*6a54128fSAndroid Build Coastguard Worker</Para>
1688*6a54128fSAndroid Build Coastguard Worker
1689*6a54128fSAndroid Build Coastguard Worker</Sect2>
1690*6a54128fSAndroid Build Coastguard Worker
1691*6a54128fSAndroid Build Coastguard Worker<Sect2>
1692*6a54128fSAndroid Build Coastguard Worker<Title>next</Title>
1693*6a54128fSAndroid Build Coastguard Worker
1694*6a54128fSAndroid Build Coastguard Worker<Para>
1695*6a54128fSAndroid Build Coastguard Worker
1696*6a54128fSAndroid Build Coastguard Worker<Screen>
1697*6a54128fSAndroid Build Coastguard WorkerSyntax: next [num]
1698*6a54128fSAndroid Build Coastguard Worker</Screen>
1699*6a54128fSAndroid Build Coastguard Worker
1700*6a54128fSAndroid Build Coastguard WorkerThe <Command>next</Command> command will pass to the next byte in the file. If
1701*6a54128fSAndroid Build Coastguard Worker<Emphasis>num</Emphasis> is supplied, it will pass to the next <Emphasis>num</Emphasis> bytes.
1702*6a54128fSAndroid Build Coastguard Worker</Para>
1703*6a54128fSAndroid Build Coastguard Worker
1704*6a54128fSAndroid Build Coastguard Worker</Sect2>
1705*6a54128fSAndroid Build Coastguard Worker
1706*6a54128fSAndroid Build Coastguard Worker<Sect2>
1707*6a54128fSAndroid Build Coastguard Worker<Title>nextblock</Title>
1708*6a54128fSAndroid Build Coastguard Worker
1709*6a54128fSAndroid Build Coastguard Worker<Para>
1710*6a54128fSAndroid Build Coastguard Worker
1711*6a54128fSAndroid Build Coastguard Worker<Screen>
1712*6a54128fSAndroid Build Coastguard WorkerSyntax: nextblock [num]
1713*6a54128fSAndroid Build Coastguard Worker</Screen>
1714*6a54128fSAndroid Build Coastguard Worker
1715*6a54128fSAndroid Build Coastguard WorkerThe <Command>nextblock</Command> command will pass to the next block in the file. If
1716*6a54128fSAndroid Build Coastguard Worker<Emphasis>num</Emphasis> is supplied, it will pass to the next <Emphasis>num</Emphasis> blocks.
1717*6a54128fSAndroid Build Coastguard Worker</Para>
1718*6a54128fSAndroid Build Coastguard Worker
1719*6a54128fSAndroid Build Coastguard Worker</Sect2>
1720*6a54128fSAndroid Build Coastguard Worker
1721*6a54128fSAndroid Build Coastguard Worker<Sect2>
1722*6a54128fSAndroid Build Coastguard Worker<Title>prev</Title>
1723*6a54128fSAndroid Build Coastguard Worker
1724*6a54128fSAndroid Build Coastguard Worker<Para>
1725*6a54128fSAndroid Build Coastguard Worker
1726*6a54128fSAndroid Build Coastguard Worker<Screen>
1727*6a54128fSAndroid Build Coastguard WorkerSyntax: prev [num]
1728*6a54128fSAndroid Build Coastguard Worker</Screen>
1729*6a54128fSAndroid Build Coastguard Worker
1730*6a54128fSAndroid Build Coastguard WorkerThe <Command>prev</Command> command will pass to the previous byte in the file. If
1731*6a54128fSAndroid Build Coastguard Worker<Emphasis>num</Emphasis> is supplied, it will pass to the previous <Emphasis>num</Emphasis> bytes.
1732*6a54128fSAndroid Build Coastguard Worker</Para>
1733*6a54128fSAndroid Build Coastguard Worker
1734*6a54128fSAndroid Build Coastguard Worker</Sect2>
1735*6a54128fSAndroid Build Coastguard Worker
1736*6a54128fSAndroid Build Coastguard Worker<Sect2>
1737*6a54128fSAndroid Build Coastguard Worker<Title>prevblock</Title>
1738*6a54128fSAndroid Build Coastguard Worker
1739*6a54128fSAndroid Build Coastguard Worker<Para>
1740*6a54128fSAndroid Build Coastguard Worker
1741*6a54128fSAndroid Build Coastguard Worker<Screen>
1742*6a54128fSAndroid Build Coastguard WorkerSyntax: prevblock [num]
1743*6a54128fSAndroid Build Coastguard Worker</Screen>
1744*6a54128fSAndroid Build Coastguard Worker
1745*6a54128fSAndroid Build Coastguard WorkerThe <Command>nextblock</Command> command will pass to the previous block in the file. If
1746*6a54128fSAndroid Build Coastguard Worker<Emphasis>num</Emphasis> is supplied, it will pass to the previous <Emphasis>num</Emphasis> blocks.
1747*6a54128fSAndroid Build Coastguard Worker</Para>
1748*6a54128fSAndroid Build Coastguard Worker
1749*6a54128fSAndroid Build Coastguard Worker</Sect2>
1750*6a54128fSAndroid Build Coastguard Worker
1751*6a54128fSAndroid Build Coastguard Worker<Sect2>
1752*6a54128fSAndroid Build Coastguard Worker<Title>offset</Title>
1753*6a54128fSAndroid Build Coastguard Worker
1754*6a54128fSAndroid Build Coastguard Worker<Para>
1755*6a54128fSAndroid Build Coastguard Worker
1756*6a54128fSAndroid Build Coastguard Worker<Screen>
1757*6a54128fSAndroid Build Coastguard WorkerSyntax: offset file_offset
1758*6a54128fSAndroid Build Coastguard Worker</Screen>
1759*6a54128fSAndroid Build Coastguard Worker
1760*6a54128fSAndroid Build Coastguard WorkerThe <Command>offset</Command> command will move to the specified offset in the file.
1761*6a54128fSAndroid Build Coastguard Worker</Para>
1762*6a54128fSAndroid Build Coastguard Worker
1763*6a54128fSAndroid Build Coastguard Worker</Sect2>
1764*6a54128fSAndroid Build Coastguard Worker
1765*6a54128fSAndroid Build Coastguard Worker<Sect2>
1766*6a54128fSAndroid Build Coastguard Worker<Title>set</Title>
1767*6a54128fSAndroid Build Coastguard Worker
1768*6a54128fSAndroid Build Coastguard Worker<Para>
1769*6a54128fSAndroid Build Coastguard Worker
1770*6a54128fSAndroid Build Coastguard Worker<Screen>
1771*6a54128fSAndroid Build Coastguard WorkerSyntax: set [text || hex] arg1 [arg2 arg3 ...]
1772*6a54128fSAndroid Build Coastguard Worker</Screen>
1773*6a54128fSAndroid Build Coastguard Worker
1774*6a54128fSAndroid Build Coastguard WorkerThe <Command>file set</Command> command is working like the <Literal remap="tt">general set command</Literal>,
1775*6a54128fSAndroid Build Coastguard Workerwith <Literal remap="tt">type=none</Literal>. There are no variables.
1776*6a54128fSAndroid Build Coastguard Worker</Para>
1777*6a54128fSAndroid Build Coastguard Worker
1778*6a54128fSAndroid Build Coastguard Worker</Sect2>
1779*6a54128fSAndroid Build Coastguard Worker
1780*6a54128fSAndroid Build Coastguard Worker<Sect2>
1781*6a54128fSAndroid Build Coastguard Worker<Title>writedata</Title>
1782*6a54128fSAndroid Build Coastguard Worker
1783*6a54128fSAndroid Build Coastguard Worker<Para>
1784*6a54128fSAndroid Build Coastguard Worker
1785*6a54128fSAndroid Build Coastguard Worker<Screen>
1786*6a54128fSAndroid Build Coastguard WorkerSyntax: writedata
1787*6a54128fSAndroid Build Coastguard Worker</Screen>
1788*6a54128fSAndroid Build Coastguard Worker
1789*6a54128fSAndroid Build Coastguard WorkerThe <Command>writedata</Command> command will update the current file block in the disk.
1790*6a54128fSAndroid Build Coastguard Worker</Para>
1791*6a54128fSAndroid Build Coastguard Worker
1792*6a54128fSAndroid Build Coastguard Worker</Sect2>
1793*6a54128fSAndroid Build Coastguard Worker
1794*6a54128fSAndroid Build Coastguard Worker</Sect1>
1795*6a54128fSAndroid Build Coastguard Worker
1796*6a54128fSAndroid Build Coastguard Worker<Sect1>
1797*6a54128fSAndroid Build Coastguard Worker<Title>The directory</Title>
1798*6a54128fSAndroid Build Coastguard Worker
1799*6a54128fSAndroid Build Coastguard Worker<Para>
1800*6a54128fSAndroid Build Coastguard WorkerWhen editing a file, EXT2ED analyzes for you both the allocation blocks of
1801*6a54128fSAndroid Build Coastguard Workerthe directory entries, and the directory entries.
1802*6a54128fSAndroid Build Coastguard Worker</Para>
1803*6a54128fSAndroid Build Coastguard Worker
1804*6a54128fSAndroid Build Coastguard Worker<Para>
1805*6a54128fSAndroid Build Coastguard WorkerEach directory entry is displayed on one row. You can move the highlighted
1806*6a54128fSAndroid Build Coastguard Workerentry with the usual <Command>next</Command> and <Command>prev</Command> commands, and "dive in"
1807*6a54128fSAndroid Build Coastguard Workerwith the <Command>followinode</Command> command.
1808*6a54128fSAndroid Build Coastguard Worker</Para>
1809*6a54128fSAndroid Build Coastguard Worker
1810*6a54128fSAndroid Build Coastguard Worker<Para>
1811*6a54128fSAndroid Build Coastguard WorkerThe status window will indicate:
1812*6a54128fSAndroid Build Coastguard Worker
1813*6a54128fSAndroid Build Coastguard Worker<ItemizedList>
1814*6a54128fSAndroid Build Coastguard Worker<ListItem>
1815*6a54128fSAndroid Build Coastguard Worker
1816*6a54128fSAndroid Build Coastguard Worker<Para>
1817*6a54128fSAndroid Build Coastguard Worker	The directory entry number.
1818*6a54128fSAndroid Build Coastguard Worker</Para>
1819*6a54128fSAndroid Build Coastguard Worker</ListItem>
1820*6a54128fSAndroid Build Coastguard Worker<ListItem>
1821*6a54128fSAndroid Build Coastguard Worker
1822*6a54128fSAndroid Build Coastguard Worker<Para>
1823*6a54128fSAndroid Build Coastguard Worker	The total number of directory entries in this directory.
1824*6a54128fSAndroid Build Coastguard Worker</Para>
1825*6a54128fSAndroid Build Coastguard Worker</ListItem>
1826*6a54128fSAndroid Build Coastguard Worker<ListItem>
1827*6a54128fSAndroid Build Coastguard Worker
1828*6a54128fSAndroid Build Coastguard Worker<Para>
1829*6a54128fSAndroid Build Coastguard Worker	The current global block number.
1830*6a54128fSAndroid Build Coastguard Worker</Para>
1831*6a54128fSAndroid Build Coastguard Worker</ListItem>
1832*6a54128fSAndroid Build Coastguard Worker<ListItem>
1833*6a54128fSAndroid Build Coastguard Worker
1834*6a54128fSAndroid Build Coastguard Worker<Para>
1835*6a54128fSAndroid Build Coastguard Worker	The current offset in the entire directory - When viewing the
1836*6a54128fSAndroid Build Coastguard Workerdirectory as a continuous file.
1837*6a54128fSAndroid Build Coastguard Worker</Para>
1838*6a54128fSAndroid Build Coastguard Worker</ListItem>
1839*6a54128fSAndroid Build Coastguard Worker<ListItem>
1840*6a54128fSAndroid Build Coastguard Worker
1841*6a54128fSAndroid Build Coastguard Worker<Para>
1842*6a54128fSAndroid Build Coastguard Worker	The inode number of the directory itself.
1843*6a54128fSAndroid Build Coastguard Worker</Para>
1844*6a54128fSAndroid Build Coastguard Worker</ListItem>
1845*6a54128fSAndroid Build Coastguard Worker<ListItem>
1846*6a54128fSAndroid Build Coastguard Worker
1847*6a54128fSAndroid Build Coastguard Worker<Para>
1848*6a54128fSAndroid Build Coastguard Worker	The indirection level - Whether it is a direct block (0), indirect
1849*6a54128fSAndroid Build Coastguard Worker(1), etc.
1850*6a54128fSAndroid Build Coastguard Worker</Para>
1851*6a54128fSAndroid Build Coastguard Worker</ListItem>
1852*6a54128fSAndroid Build Coastguard Worker
1853*6a54128fSAndroid Build Coastguard Worker</ItemizedList>
1854*6a54128fSAndroid Build Coastguard Worker
1855*6a54128fSAndroid Build Coastguard Worker</Para>
1856*6a54128fSAndroid Build Coastguard Worker
1857*6a54128fSAndroid Build Coastguard Worker<Sect2>
1858*6a54128fSAndroid Build Coastguard Worker<Title>cd</Title>
1859*6a54128fSAndroid Build Coastguard Worker
1860*6a54128fSAndroid Build Coastguard Worker<Para>
1861*6a54128fSAndroid Build Coastguard Worker
1862*6a54128fSAndroid Build Coastguard Worker<Screen>
1863*6a54128fSAndroid Build Coastguard WorkerSyntax: cd [path]
1864*6a54128fSAndroid Build Coastguard Worker</Screen>
1865*6a54128fSAndroid Build Coastguard Worker
1866*6a54128fSAndroid Build Coastguard WorkerThe <Command>cd</Command> command is used in the usual meaning, like the global cd
1867*6a54128fSAndroid Build Coastguard Workercommand.
1868*6a54128fSAndroid Build Coastguard Worker
1869*6a54128fSAndroid Build Coastguard Worker<ItemizedList>
1870*6a54128fSAndroid Build Coastguard Worker<ListItem>
1871*6a54128fSAndroid Build Coastguard Worker
1872*6a54128fSAndroid Build Coastguard Worker<Para>
1873*6a54128fSAndroid Build Coastguard Worker	If <Emphasis>path</Emphasis> is not specified, the current directory entry is
1874*6a54128fSAndroid Build Coastguard Workerfollowed.
1875*6a54128fSAndroid Build Coastguard Worker</Para>
1876*6a54128fSAndroid Build Coastguard Worker</ListItem>
1877*6a54128fSAndroid Build Coastguard Worker<ListItem>
1878*6a54128fSAndroid Build Coastguard Worker
1879*6a54128fSAndroid Build Coastguard Worker<Para>
1880*6a54128fSAndroid Build Coastguard Worker	<Emphasis>path</Emphasis> can be relative to the current directory.
1881*6a54128fSAndroid Build Coastguard Worker</Para>
1882*6a54128fSAndroid Build Coastguard Worker</ListItem>
1883*6a54128fSAndroid Build Coastguard Worker<ListItem>
1884*6a54128fSAndroid Build Coastguard Worker
1885*6a54128fSAndroid Build Coastguard Worker<Para>
1886*6a54128fSAndroid Build Coastguard Worker	<Emphasis>path</Emphasis> can also end up in a file, in which case the file inode
1887*6a54128fSAndroid Build Coastguard Workerwill be reached.
1888*6a54128fSAndroid Build Coastguard Worker</Para>
1889*6a54128fSAndroid Build Coastguard Worker</ListItem>
1890*6a54128fSAndroid Build Coastguard Worker<ListItem>
1891*6a54128fSAndroid Build Coastguard Worker
1892*6a54128fSAndroid Build Coastguard Worker<Para>
1893*6a54128fSAndroid Build Coastguard Worker	Symbolic link (fast only, meanwhile) is automatically followed.
1894*6a54128fSAndroid Build Coastguard Worker</Para>
1895*6a54128fSAndroid Build Coastguard Worker</ListItem>
1896*6a54128fSAndroid Build Coastguard Worker
1897*6a54128fSAndroid Build Coastguard Worker</ItemizedList>
1898*6a54128fSAndroid Build Coastguard Worker
1899*6a54128fSAndroid Build Coastguard Worker</Para>
1900*6a54128fSAndroid Build Coastguard Worker
1901*6a54128fSAndroid Build Coastguard Worker</Sect2>
1902*6a54128fSAndroid Build Coastguard Worker
1903*6a54128fSAndroid Build Coastguard Worker<Sect2>
1904*6a54128fSAndroid Build Coastguard Worker<Title>entry</Title>
1905*6a54128fSAndroid Build Coastguard Worker
1906*6a54128fSAndroid Build Coastguard Worker<Para>
1907*6a54128fSAndroid Build Coastguard Worker
1908*6a54128fSAndroid Build Coastguard Worker<Screen>
1909*6a54128fSAndroid Build Coastguard WorkerSyntax: entry [entry_num]
1910*6a54128fSAndroid Build Coastguard Worker</Screen>
1911*6a54128fSAndroid Build Coastguard Worker
1912*6a54128fSAndroid Build Coastguard WorkerThe <Command>entry</Command> command sets <Emphasis>entry&lowbar;num</Emphasis> as the current directory
1913*6a54128fSAndroid Build Coastguard Workerentry.
1914*6a54128fSAndroid Build Coastguard Worker</Para>
1915*6a54128fSAndroid Build Coastguard Worker
1916*6a54128fSAndroid Build Coastguard Worker</Sect2>
1917*6a54128fSAndroid Build Coastguard Worker
1918*6a54128fSAndroid Build Coastguard Worker<Sect2>
1919*6a54128fSAndroid Build Coastguard Worker<Title>followinode</Title>
1920*6a54128fSAndroid Build Coastguard Worker
1921*6a54128fSAndroid Build Coastguard Worker<Para>
1922*6a54128fSAndroid Build Coastguard Worker
1923*6a54128fSAndroid Build Coastguard Worker<Screen>
1924*6a54128fSAndroid Build Coastguard WorkerSyntax: followinode
1925*6a54128fSAndroid Build Coastguard Worker</Screen>
1926*6a54128fSAndroid Build Coastguard Worker
1927*6a54128fSAndroid Build Coastguard WorkerThe <Command>followinode</Command> command will move you to the inode pointed by the
1928*6a54128fSAndroid Build Coastguard Workercurrent directory entry.
1929*6a54128fSAndroid Build Coastguard Worker</Para>
1930*6a54128fSAndroid Build Coastguard Worker
1931*6a54128fSAndroid Build Coastguard Worker</Sect2>
1932*6a54128fSAndroid Build Coastguard Worker
1933*6a54128fSAndroid Build Coastguard Worker<Sect2>
1934*6a54128fSAndroid Build Coastguard Worker<Title>inode</Title>
1935*6a54128fSAndroid Build Coastguard Worker
1936*6a54128fSAndroid Build Coastguard Worker<Para>
1937*6a54128fSAndroid Build Coastguard Worker
1938*6a54128fSAndroid Build Coastguard Worker<Screen>
1939*6a54128fSAndroid Build Coastguard WorkerSyntax: inode
1940*6a54128fSAndroid Build Coastguard Worker</Screen>
1941*6a54128fSAndroid Build Coastguard Worker
1942*6a54128fSAndroid Build Coastguard WorkerThe <Command>inode</Command> command will return you to the parent inode of the whole
1943*6a54128fSAndroid Build Coastguard Workerdirectory listing.
1944*6a54128fSAndroid Build Coastguard Worker</Para>
1945*6a54128fSAndroid Build Coastguard Worker
1946*6a54128fSAndroid Build Coastguard Worker</Sect2>
1947*6a54128fSAndroid Build Coastguard Worker
1948*6a54128fSAndroid Build Coastguard Worker<Sect2>
1949*6a54128fSAndroid Build Coastguard Worker<Title>next</Title>
1950*6a54128fSAndroid Build Coastguard Worker
1951*6a54128fSAndroid Build Coastguard Worker<Para>
1952*6a54128fSAndroid Build Coastguard Worker
1953*6a54128fSAndroid Build Coastguard Worker<Screen>
1954*6a54128fSAndroid Build Coastguard WorkerSyntax: next [num]
1955*6a54128fSAndroid Build Coastguard Worker</Screen>
1956*6a54128fSAndroid Build Coastguard Worker
1957*6a54128fSAndroid Build Coastguard WorkerThe <Command>next</Command> command will pass to the next directory entry.
1958*6a54128fSAndroid Build Coastguard WorkerIf <Emphasis>num</Emphasis> is supplied, it will pass to the next <Emphasis>num</Emphasis> entries.
1959*6a54128fSAndroid Build Coastguard Worker</Para>
1960*6a54128fSAndroid Build Coastguard Worker
1961*6a54128fSAndroid Build Coastguard Worker</Sect2>
1962*6a54128fSAndroid Build Coastguard Worker
1963*6a54128fSAndroid Build Coastguard Worker<Sect2>
1964*6a54128fSAndroid Build Coastguard Worker<Title>prev</Title>
1965*6a54128fSAndroid Build Coastguard Worker
1966*6a54128fSAndroid Build Coastguard Worker<Para>
1967*6a54128fSAndroid Build Coastguard Worker
1968*6a54128fSAndroid Build Coastguard Worker<Screen>
1969*6a54128fSAndroid Build Coastguard WorkerSyntax: prev [num]
1970*6a54128fSAndroid Build Coastguard Worker</Screen>
1971*6a54128fSAndroid Build Coastguard Worker
1972*6a54128fSAndroid Build Coastguard WorkerThe <Command>prev</Command> command will pass to the previous directory entry.
1973*6a54128fSAndroid Build Coastguard WorkerIf <Emphasis>num</Emphasis> is supplied, it will pass to the previous <Emphasis>num</Emphasis> entries.
1974*6a54128fSAndroid Build Coastguard Worker</Para>
1975*6a54128fSAndroid Build Coastguard Worker
1976*6a54128fSAndroid Build Coastguard Worker</Sect2>
1977*6a54128fSAndroid Build Coastguard Worker
1978*6a54128fSAndroid Build Coastguard Worker<Sect2>
1979*6a54128fSAndroid Build Coastguard Worker<Title>writedata</Title>
1980*6a54128fSAndroid Build Coastguard Worker
1981*6a54128fSAndroid Build Coastguard Worker<Para>
1982*6a54128fSAndroid Build Coastguard Worker
1983*6a54128fSAndroid Build Coastguard Worker<Screen>
1984*6a54128fSAndroid Build Coastguard WorkerSyntax: writedata
1985*6a54128fSAndroid Build Coastguard Worker</Screen>
1986*6a54128fSAndroid Build Coastguard Worker
1987*6a54128fSAndroid Build Coastguard WorkerThe <Command>writedata</Command> command will write the current directory entry to the
1988*6a54128fSAndroid Build Coastguard Workerdisk.
1989*6a54128fSAndroid Build Coastguard Worker</Para>
1990*6a54128fSAndroid Build Coastguard Worker
1991*6a54128fSAndroid Build Coastguard Worker</Sect2>
1992*6a54128fSAndroid Build Coastguard Worker
1993*6a54128fSAndroid Build Coastguard Worker</Sect1>
1994*6a54128fSAndroid Build Coastguard Worker
1995*6a54128fSAndroid Build Coastguard Worker<Sect1 id="block-bitmap">
1996*6a54128fSAndroid Build Coastguard Worker<Title>The block allocation bitmap</Title>
1997*6a54128fSAndroid Build Coastguard Worker
1998*6a54128fSAndroid Build Coastguard Worker<Para>
1999*6a54128fSAndroid Build Coastguard WorkerThe <Literal remap="tt">block allocation bitmap</Literal> of any block group can be reached from
2000*6a54128fSAndroid Build Coastguard Workerthe corresponding group descriptor.
2001*6a54128fSAndroid Build Coastguard Worker</Para>
2002*6a54128fSAndroid Build Coastguard Worker
2003*6a54128fSAndroid Build Coastguard Worker<Para>
2004*6a54128fSAndroid Build Coastguard WorkerYou will be offered a bit listing of the entire blocks in the group. The
2005*6a54128fSAndroid Build Coastguard Workercurrent block will be highlighted and its number will be displayed in the
2006*6a54128fSAndroid Build Coastguard Workerstatus window.
2007*6a54128fSAndroid Build Coastguard Worker</Para>
2008*6a54128fSAndroid Build Coastguard Worker
2009*6a54128fSAndroid Build Coastguard Worker<Para>
2010*6a54128fSAndroid Build Coastguard WorkerA value of "1" means that the block is allocated, while a value of "0"
2011*6a54128fSAndroid Build Coastguard Workersignals that it is free. The value is also interpreted in the status
2012*6a54128fSAndroid Build Coastguard Workerwindow. You can use the usual <Command>next/prev</Command> commands, along with the
2013*6a54128fSAndroid Build Coastguard Worker<Command>allocate/deallocate</Command> commands.
2014*6a54128fSAndroid Build Coastguard Worker</Para>
2015*6a54128fSAndroid Build Coastguard Worker
2016*6a54128fSAndroid Build Coastguard Worker<Sect2>
2017*6a54128fSAndroid Build Coastguard Worker<Title>allocate</Title>
2018*6a54128fSAndroid Build Coastguard Worker
2019*6a54128fSAndroid Build Coastguard Worker<Para>
2020*6a54128fSAndroid Build Coastguard Worker
2021*6a54128fSAndroid Build Coastguard Worker<Screen>
2022*6a54128fSAndroid Build Coastguard WorkerSyntax: allocate [num]
2023*6a54128fSAndroid Build Coastguard Worker</Screen>
2024*6a54128fSAndroid Build Coastguard Worker
2025*6a54128fSAndroid Build Coastguard WorkerThe <Command>allocate</Command> command allocates <Emphasis>num</Emphasis> blocks, starting from the
2026*6a54128fSAndroid Build Coastguard Workerhighlighted position. If <Emphasis>num</Emphasis> is not specified, <Emphasis>num=1</Emphasis> is assumed.
2027*6a54128fSAndroid Build Coastguard WorkerOf-course, no actual change is made until you issue a <Command>writedata</Command> command.
2028*6a54128fSAndroid Build Coastguard Worker</Para>
2029*6a54128fSAndroid Build Coastguard Worker
2030*6a54128fSAndroid Build Coastguard Worker</Sect2>
2031*6a54128fSAndroid Build Coastguard Worker
2032*6a54128fSAndroid Build Coastguard Worker<Sect2>
2033*6a54128fSAndroid Build Coastguard Worker<Title>deallocate</Title>
2034*6a54128fSAndroid Build Coastguard Worker
2035*6a54128fSAndroid Build Coastguard Worker<Para>
2036*6a54128fSAndroid Build Coastguard Worker
2037*6a54128fSAndroid Build Coastguard Worker<Screen>
2038*6a54128fSAndroid Build Coastguard WorkerSyntax: deallocate [num]
2039*6a54128fSAndroid Build Coastguard Worker</Screen>
2040*6a54128fSAndroid Build Coastguard Worker
2041*6a54128fSAndroid Build Coastguard WorkerThe <Command>deallocate</Command> command deallocates <Emphasis>num</Emphasis> blocks, starting from the
2042*6a54128fSAndroid Build Coastguard Workerhighlighted position. If <Emphasis>num</Emphasis> is not specified, <Emphasis>num=1</Emphasis> is assumed.
2043*6a54128fSAndroid Build Coastguard WorkerOf-course, no actual change is made until you issue a <Command>writedata</Command> command.
2044*6a54128fSAndroid Build Coastguard Worker</Para>
2045*6a54128fSAndroid Build Coastguard Worker
2046*6a54128fSAndroid Build Coastguard Worker</Sect2>
2047*6a54128fSAndroid Build Coastguard Worker
2048*6a54128fSAndroid Build Coastguard Worker<Sect2>
2049*6a54128fSAndroid Build Coastguard Worker<Title>entry</Title>
2050*6a54128fSAndroid Build Coastguard Worker
2051*6a54128fSAndroid Build Coastguard Worker<Para>
2052*6a54128fSAndroid Build Coastguard Worker
2053*6a54128fSAndroid Build Coastguard Worker<Screen>
2054*6a54128fSAndroid Build Coastguard WorkerSyntax: entry [entry_num]
2055*6a54128fSAndroid Build Coastguard Worker</Screen>
2056*6a54128fSAndroid Build Coastguard Worker
2057*6a54128fSAndroid Build Coastguard WorkerThe <Command>entry</Command> command sets the current highlighted block to
2058*6a54128fSAndroid Build Coastguard Worker<Emphasis>entry&lowbar;num</Emphasis>.
2059*6a54128fSAndroid Build Coastguard Worker</Para>
2060*6a54128fSAndroid Build Coastguard Worker
2061*6a54128fSAndroid Build Coastguard Worker</Sect2>
2062*6a54128fSAndroid Build Coastguard Worker
2063*6a54128fSAndroid Build Coastguard Worker<Sect2>
2064*6a54128fSAndroid Build Coastguard Worker<Title>next</Title>
2065*6a54128fSAndroid Build Coastguard Worker
2066*6a54128fSAndroid Build Coastguard Worker<Para>
2067*6a54128fSAndroid Build Coastguard Worker
2068*6a54128fSAndroid Build Coastguard Worker<Screen>
2069*6a54128fSAndroid Build Coastguard WorkerSyntax: next [num]
2070*6a54128fSAndroid Build Coastguard Worker</Screen>
2071*6a54128fSAndroid Build Coastguard Worker
2072*6a54128fSAndroid Build Coastguard WorkerThe <Command>next</Command> command will pass to the next bit, which corresponds to the
2073*6a54128fSAndroid Build Coastguard Workernext block. If <Emphasis>num</Emphasis> is supplied, it will pass to the next <Emphasis>num</Emphasis>
2074*6a54128fSAndroid Build Coastguard Workerbits.
2075*6a54128fSAndroid Build Coastguard Worker</Para>
2076*6a54128fSAndroid Build Coastguard Worker
2077*6a54128fSAndroid Build Coastguard Worker</Sect2>
2078*6a54128fSAndroid Build Coastguard Worker
2079*6a54128fSAndroid Build Coastguard Worker<Sect2>
2080*6a54128fSAndroid Build Coastguard Worker<Title>prev</Title>
2081*6a54128fSAndroid Build Coastguard Worker
2082*6a54128fSAndroid Build Coastguard Worker<Para>
2083*6a54128fSAndroid Build Coastguard Worker
2084*6a54128fSAndroid Build Coastguard Worker<Screen>
2085*6a54128fSAndroid Build Coastguard WorkerSyntax: prev [num]
2086*6a54128fSAndroid Build Coastguard Worker</Screen>
2087*6a54128fSAndroid Build Coastguard Worker
2088*6a54128fSAndroid Build Coastguard WorkerThe <Command>prev</Command> command will pass to the previous bit, which corresponds to the
2089*6a54128fSAndroid Build Coastguard Workerprevious block. If <Emphasis>num</Emphasis> is supplied, it will pass to the previous
2090*6a54128fSAndroid Build Coastguard Worker<Emphasis>num</Emphasis> bits.
2091*6a54128fSAndroid Build Coastguard Worker</Para>
2092*6a54128fSAndroid Build Coastguard Worker
2093*6a54128fSAndroid Build Coastguard Worker</Sect2>
2094*6a54128fSAndroid Build Coastguard Worker
2095*6a54128fSAndroid Build Coastguard Worker</Sect1>
2096*6a54128fSAndroid Build Coastguard Worker
2097*6a54128fSAndroid Build Coastguard Worker<Sect1>
2098*6a54128fSAndroid Build Coastguard Worker<Title>The inode allocation bitmap</Title>
2099*6a54128fSAndroid Build Coastguard Worker
2100*6a54128fSAndroid Build Coastguard Worker<Para>
2101*6a54128fSAndroid Build Coastguard WorkerThe <Literal remap="tt">inode allocation bitmap</Literal> is very similar to the block allocation
2102*6a54128fSAndroid Build Coastguard Workerbitmap explained above. It is also reached from the corresponding group
2103*6a54128fSAndroid Build Coastguard Workerdescriptor. Please refer to section <XRef LinkEnd="block-bitmap">.
2104*6a54128fSAndroid Build Coastguard Worker</Para>
2105*6a54128fSAndroid Build Coastguard Worker
2106*6a54128fSAndroid Build Coastguard Worker</Sect1>
2107*6a54128fSAndroid Build Coastguard Worker
2108*6a54128fSAndroid Build Coastguard Worker<Sect1>
2109*6a54128fSAndroid Build Coastguard Worker<Title>Filesystem size limitation</Title>
2110*6a54128fSAndroid Build Coastguard Worker
2111*6a54128fSAndroid Build Coastguard Worker<Para>
2112*6a54128fSAndroid Build Coastguard WorkerWhile an ext2 filesystem has a size limit of <Literal remap="tt">4 TB</Literal>, EXT2ED currently
2113*6a54128fSAndroid Build Coastguard Worker<Literal remap="tt">can't</Literal> handle filesystems which are <Literal remap="tt">bigger than 2 GB</Literal>.
2114*6a54128fSAndroid Build Coastguard Worker</Para>
2115*6a54128fSAndroid Build Coastguard Worker
2116*6a54128fSAndroid Build Coastguard Worker<Para>
2117*6a54128fSAndroid Build Coastguard WorkerI am sorry for the inconvenience. This will hopefully be fixed in future
2118*6a54128fSAndroid Build Coastguard Workerreleases.
2119*6a54128fSAndroid Build Coastguard Worker</Para>
2120*6a54128fSAndroid Build Coastguard Worker
2121*6a54128fSAndroid Build Coastguard Worker</Sect1>
2122*6a54128fSAndroid Build Coastguard Worker
2123*6a54128fSAndroid Build Coastguard Worker<Sect1>
2124*6a54128fSAndroid Build Coastguard Worker<Title>Copyright</Title>
2125*6a54128fSAndroid Build Coastguard Worker
2126*6a54128fSAndroid Build Coastguard Worker<Para>
2127*6a54128fSAndroid Build Coastguard WorkerEXT2ED is Copyright (C) 1995 Gadi Oxman.
2128*6a54128fSAndroid Build Coastguard Worker</Para>
2129*6a54128fSAndroid Build Coastguard Worker
2130*6a54128fSAndroid Build Coastguard Worker<Para>
2131*6a54128fSAndroid Build Coastguard WorkerEXT2ED is hereby placed under the GPL - Gnu Public License. You are free and
2132*6a54128fSAndroid Build Coastguard Workerwelcome to copy, view and modify the sources. My only wish is that my
2133*6a54128fSAndroid Build Coastguard Workercopyright presented above will be left and that a list of the bug fixes,
2134*6a54128fSAndroid Build Coastguard Workeradded features, etc, will be provided.
2135*6a54128fSAndroid Build Coastguard Worker</Para>
2136*6a54128fSAndroid Build Coastguard Worker
2137*6a54128fSAndroid Build Coastguard Worker<Para>
2138*6a54128fSAndroid Build Coastguard WorkerThe entire EXT2ED project is based, of-course, on the kernel sources. The
2139*6a54128fSAndroid Build Coastguard Worker<Literal remap="tt">ext2.descriptors</Literal> distributed with EXT2ED is a slightly modified
2140*6a54128fSAndroid Build Coastguard Workerversion of the main ext2 include file, /usr/include/linux/ext2&lowbar;fs.h. Follows
2141*6a54128fSAndroid Build Coastguard Workerthe original copyright:
2142*6a54128fSAndroid Build Coastguard Worker</Para>
2143*6a54128fSAndroid Build Coastguard Worker
2144*6a54128fSAndroid Build Coastguard Worker<Para>
2145*6a54128fSAndroid Build Coastguard Worker
2146*6a54128fSAndroid Build Coastguard Worker<Screen>
2147*6a54128fSAndroid Build Coastguard Worker/*
2148*6a54128fSAndroid Build Coastguard Worker *  linux/include/linux/ext2_fs.h
2149*6a54128fSAndroid Build Coastguard Worker *
2150*6a54128fSAndroid Build Coastguard Worker * Copyright (C) 1992, 1993, 1994, 1995
2151*6a54128fSAndroid Build Coastguard Worker * Remy Card ([email protected])
2152*6a54128fSAndroid Build Coastguard Worker * Laboratoire MASI - Institut Blaise Pascal
2153*6a54128fSAndroid Build Coastguard Worker * Universite Pierre et Marie Curie (Paris VI)
2154*6a54128fSAndroid Build Coastguard Worker *
2155*6a54128fSAndroid Build Coastguard Worker *  from
2156*6a54128fSAndroid Build Coastguard Worker *
2157*6a54128fSAndroid Build Coastguard Worker *  linux/include/linux/minix_fs.h
2158*6a54128fSAndroid Build Coastguard Worker *
2159*6a54128fSAndroid Build Coastguard Worker *  Copyright (C) 1991, 1992  Linus Torvalds
2160*6a54128fSAndroid Build Coastguard Worker */
2161*6a54128fSAndroid Build Coastguard Worker
2162*6a54128fSAndroid Build Coastguard Worker</Screen>
2163*6a54128fSAndroid Build Coastguard Worker
2164*6a54128fSAndroid Build Coastguard Worker</Para>
2165*6a54128fSAndroid Build Coastguard Worker
2166*6a54128fSAndroid Build Coastguard Worker</Sect1>
2167*6a54128fSAndroid Build Coastguard Worker
2168*6a54128fSAndroid Build Coastguard Worker<Sect1>
2169*6a54128fSAndroid Build Coastguard Worker<Title>Acknowledgments</Title>
2170*6a54128fSAndroid Build Coastguard Worker
2171*6a54128fSAndroid Build Coastguard Worker<Para>
2172*6a54128fSAndroid Build Coastguard WorkerEXT2ED was constructed as a student project in the software
2173*6a54128fSAndroid Build Coastguard Workerlaboratory of the faculty of electrical-engineering in the
2174*6a54128fSAndroid Build Coastguard Worker<Literal remap="tt">Technion - Israel's institute of technology</Literal>.
2175*6a54128fSAndroid Build Coastguard Worker</Para>
2176*6a54128fSAndroid Build Coastguard Worker
2177*6a54128fSAndroid Build Coastguard Worker<Para>
2178*6a54128fSAndroid Build Coastguard WorkerAt first, I would like to thank <PersonName><FirstName>Avner</FirstName> <SurName>Lottem</SurName></PersonName> and <PersonName><Honorific>Doctor</Honorific> <FirstName>Ilana</FirstName> <SurName>David</Surname></PersonName> for their interest and assistance in this project.
2179*6a54128fSAndroid Build Coastguard Worker</Para>
2180*6a54128fSAndroid Build Coastguard Worker
2181*6a54128fSAndroid Build Coastguard Worker<Para>
2182*6a54128fSAndroid Build Coastguard WorkerI would also like to thank the following people, who were involved in the
2183*6a54128fSAndroid Build Coastguard Workerdesign and implementation of the ext2 filesystem kernel code and support
2184*6a54128fSAndroid Build Coastguard Workerutilities:
2185*6a54128fSAndroid Build Coastguard Worker
2186*6a54128fSAndroid Build Coastguard Worker<ItemizedList>
2187*6a54128fSAndroid Build Coastguard Worker<ListItem>
2188*6a54128fSAndroid Build Coastguard Worker
2189*6a54128fSAndroid Build Coastguard Worker<Para>
2190*6a54128fSAndroid Build Coastguard Worker<PersonName><FirstName>Remy</FirstName> <SurName>Card</SurName></PersonName>
2191*6a54128fSAndroid Build Coastguard Worker
2192*6a54128fSAndroid Build Coastguard WorkerWho designed, implemented and maintains the ext2 filesystem kernel
2193*6a54128fSAndroid Build Coastguard Workercode, and some of the ext2 utilities. Remy Card is also the author
2194*6a54128fSAndroid Build Coastguard Workerof several helpful slides concerning the ext2 filesystem.
2195*6a54128fSAndroid Build Coastguard WorkerSpecifically, he is the author of <Literal remap="tt">File Management in the Linux
2196*6a54128fSAndroid Build Coastguard WorkerKernel</Literal> and of <Literal remap="tt">The Second Extended File System - Current State,
2197*6a54128fSAndroid Build Coastguard WorkerFuture Development</Literal>.
2198*6a54128fSAndroid Build Coastguard Worker
2199*6a54128fSAndroid Build Coastguard Worker</Para>
2200*6a54128fSAndroid Build Coastguard Worker</ListItem>
2201*6a54128fSAndroid Build Coastguard Worker<ListItem>
2202*6a54128fSAndroid Build Coastguard Worker
2203*6a54128fSAndroid Build Coastguard Worker<Para>
2204*6a54128fSAndroid Build Coastguard Worker<PersonName><FirstName>Wayne</FirstName> <SurName>Davison</SurName></PersonName>
2205*6a54128fSAndroid Build Coastguard Worker
2206*6a54128fSAndroid Build Coastguard WorkerWho designed the ext2 filesystem.
2207*6a54128fSAndroid Build Coastguard Worker</Para>
2208*6a54128fSAndroid Build Coastguard Worker</ListItem>
2209*6a54128fSAndroid Build Coastguard Worker<ListItem>
2210*6a54128fSAndroid Build Coastguard Worker
2211*6a54128fSAndroid Build Coastguard Worker<Para>
2212*6a54128fSAndroid Build Coastguard Worker<PersonName><FirstName>Stephen</FirstName> <Surname>Tweedie</SurName></PersonName>
2213*6a54128fSAndroid Build Coastguard Worker
2214*6a54128fSAndroid Build Coastguard WorkerWho helped designing the ext2 filesystem kernel code and wrote the
2215*6a54128fSAndroid Build Coastguard Workerslides <Literal remap="tt">Optimizations in File Systems</Literal>.
2216*6a54128fSAndroid Build Coastguard Worker</Para>
2217*6a54128fSAndroid Build Coastguard Worker</ListItem>
2218*6a54128fSAndroid Build Coastguard Worker<ListItem>
2219*6a54128fSAndroid Build Coastguard Worker
2220*6a54128fSAndroid Build Coastguard Worker<Para>
2221*6a54128fSAndroid Build Coastguard Worker<PersonName><FirstName>Theodore</FirstName> <SurName>Ts'o</SurName></PersonName>
2222*6a54128fSAndroid Build Coastguard Worker
2223*6a54128fSAndroid Build Coastguard WorkerWho is the author of several ext2 utilities and of the ext2 library
2224*6a54128fSAndroid Build Coastguard Worker<Literal remap="tt">libext2fs</Literal> (which I didn't use, simply because I didn't know
2225*6a54128fSAndroid Build Coastguard Workerit exists when I started to work on my project).
2226*6a54128fSAndroid Build Coastguard Worker</Para>
2227*6a54128fSAndroid Build Coastguard Worker</ListItem>
2228*6a54128fSAndroid Build Coastguard Worker
2229*6a54128fSAndroid Build Coastguard Worker</ItemizedList>
2230*6a54128fSAndroid Build Coastguard Worker
2231*6a54128fSAndroid Build Coastguard Worker</Para>
2232*6a54128fSAndroid Build Coastguard Worker
2233*6a54128fSAndroid Build Coastguard Worker<Para>
2234*6a54128fSAndroid Build Coastguard WorkerLastly, I would like to thank, of-course, <PersonName><FirstName>Linus</FirstName> <SurName>Torvalds</SurName></PersonName> and the
2235*6a54128fSAndroid Build Coastguard WorkerLinux community for providing all of us with such a great operating
2236*6a54128fSAndroid Build Coastguard Workersystem.
2237*6a54128fSAndroid Build Coastguard Worker</Para>
2238*6a54128fSAndroid Build Coastguard Worker
2239*6a54128fSAndroid Build Coastguard Worker<Para>
2240*6a54128fSAndroid Build Coastguard WorkerPlease contact me in a case of bug report, suggestions, or just about
2241*6a54128fSAndroid Build Coastguard Workeranything concerning EXT2ED.
2242*6a54128fSAndroid Build Coastguard Worker</Para>
2243*6a54128fSAndroid Build Coastguard Worker
2244*6a54128fSAndroid Build Coastguard Worker<Para>
2245*6a54128fSAndroid Build Coastguard WorkerEnjoy,
2246*6a54128fSAndroid Build Coastguard Worker</Para>
2247*6a54128fSAndroid Build Coastguard Worker
2248*6a54128fSAndroid Build Coastguard Worker<Para>
2249*6a54128fSAndroid Build Coastguard WorkerGadi Oxman &lt;[email protected]&gt;
2250*6a54128fSAndroid Build Coastguard Worker</Para>
2251*6a54128fSAndroid Build Coastguard Worker
2252*6a54128fSAndroid Build Coastguard Worker<Para>
2253*6a54128fSAndroid Build Coastguard WorkerHaifa, August 95
2254*6a54128fSAndroid Build Coastguard Worker</Para>
2255*6a54128fSAndroid Build Coastguard Worker
2256*6a54128fSAndroid Build Coastguard Worker</Sect1>
2257*6a54128fSAndroid Build Coastguard Worker
2258*6a54128fSAndroid Build Coastguard Worker</Article>
2259