Many files:

Checkin of e2fsprogs 0.5b
bitmap-optimize
Theodore Ts'o 1997-04-26 13:32:25 +00:00
parent 3839e65723
commit 6f4a109706
13 changed files with 261 additions and 54 deletions

23
COPYING Normal file
View File

@ -0,0 +1,23 @@
This package, the EXT2 filesystem utilities, are protected by the GNU
Public License, with the following exception ---
If the version string in the file version.h contains the words
"WORK IN PROGRESS", then this package must be distributed in
source form only. You can give a copy of the binary for
e2fsck to help a friend recover his or her filesystem, as the
need arises. However, "WORK IN PROGRESS" means exactly that.
The package is in ALPHA testing, and for your protection as
much as mine, I'd rather not have it appear in a some
distribution --- especially not a CD-ROM distribution!
The most recent officially distributed version can be found on
tsx-11.mit.edu, in /pub/linux/packages/ext2fs. If you need to make a
distribution, that's the one you should use. If there is some reason
why you'd like a more recent version that is still in ALPHA testing
for your distribution, please contact me (tytso@mit.edu), and we can
see if we can't come to an arrangement. The release schedules for
this package are flexible, if you give me enough lead time.
Theodore Ts'o
17-Aug-94

6
ChangeLog Normal file
View File

@ -0,0 +1,6 @@
Sat Mar 11 18:23:45 1995 Theodore Y. Ts'o <tytso@localhost>
* Makefile (bin-tree): Add Makefile target which automatically
generates the binary distribution for e2fsprogs.

53
INSTALL
View File

@ -7,28 +7,55 @@ just follow the steps:
definitions have reasonable default value but you may want to adjust them to
your system configuration.
2) Create the dependencies files
In particular, if you don't have the tools to build shared
libraries, you'll want to comment out the "BUILD_DLL_SHLIBS = YES"
line.
Run `make depend' to create the dependencies files. Note that this
is not strictly necessary since the makefiles automagically recreates them
if they do not exist.
2) Compile the programs
3) Compile the programs
Run `make world' to (a) create the dependencies files, (b)
compile the libraries and the programs, and (c) run a test suite on
e2fsck. The test suite runs a series of tests; for each one, e2fsck
should return an exit status of 1 on the first pass, and an exit
status of 0 on the second pass. The one exception to this is the
"okgroup.img" test, which should return an exit status of 0 for both
passes.
Run `make' to compile the libraries and the programs.
4) Install the programs
3) Install the programs
Run `make install'
5) Install the include files and libraries
4) Install the include files and libraries
You can run `make install-libs' to install the include files and
libraries. Please note that this installation is not needed for the
programs to work. It is only needed if you expect to develop other
programs using the libraries.
programs using the libraries or if you want to compile other program
using these libraries (like the 4.4BSD dump and restore port).
5) Remove any pre-formatted man pages. Some distributions will have
pre-formatted manual pages which will always be displayed in
preference to newer man pages in /usr/man. If this is the case, you
may need to manually remove them in order to see the correct manual
pages. The shell script in install-utils/remove_preformat_manpages
may be helpful in doing so.
5) Make sure your /etc/fstab file is correct.
Some distributions install an /etc/fstab which is missing the
fifth and sixth field of filesystem entry, which are the dump
frequency, and the fsck pass number, respectively. The problem with
this is that the getmntent() library routine interprets those missing
fields as "0", and a pass number of 0 is documented as meaning that
fsck should not check that particular filesystem. If your entries in
your /etc/fstab file look liks this:
/dev/hda4 / ext2 defaults
you should add "1 1" at the end of each line, so that they look like this:
/dev/hda4 / ext2 defaults 1 1
There is a script in insatll-utils/convfstab (donated by
Michael Weller) that may help you correct your /etc/fstab file.
You can run `make world' as an alternative to steps 2 and 3. This
will create the dependencies files, compile the programs and run e2fsck on
a test suite contained in e2fsck/images.

64
MCONFIG
View File

@ -3,6 +3,33 @@
#
CC= gcc
#
# Uncomment this line if you want to build shared DLL libraries, or
# comment this line out if you don't want to build shared DLL libraries.
#
BUILD_DLL_SHLIBS = YES
ifdef BUILD_DLL_SHLIBS
#
# Use these definitions is you use tools 2.x, x < 16
#
DLL_BIN=/usr/dll/bin
JUMP_PREFIX=/usr/dll/jump/
#
# Use these definitions if you use tools 2.16 or above
#
#DLL_BIN=/usr/bin
#JUMP_PREFIX=/usr/bin/jump
endif
#
# Uncomment this line if you want to build profiled libraries, or
# comment this line out if you don't want to build profiled libraries
#
BUILD_PROFILE_LIBS = YES
#
# Optimization flags
#
@ -12,11 +39,19 @@ OPT= -O2 -fomit-frame-pointer
#
# Warning flags
#
WFLAGS= -ansi -D_POSIX_SOURCE -pedantic \
-Wall -Wwrite-strings -Wpointer-arith \
-Wcast-qual -Wenum-clash -Wcast-align -Wtraditional \
-Wstrict-prototypes -Wmissing-prototypes \
-Wnested-externs -Winline -Wshadow
# Uncomment WFLAGS if you want really anal GCC warning messages
#
#WFLAGS= -ansi -D_POSIX_SOURCE -pedantic \
# -Wall -Wwrite-strings -Wpointer-arith \
# -Wcast-qual -Wenum-clash -Wcast-align -Wtraditional \
# -Wstrict-prototypes -Wmissing-prototypes \
# -Wnested-externs -Winline -Wshadow
#
# Binaries tools
#
ARCHIVE= ar r
RANLIB= ranlib
#
# Installation user and groups
@ -47,11 +82,14 @@ INSTALLMAN= $(INSTALL) -o $(MANOWN) -g $(MANGRP) -m $(MANMODE)
#
# Destination directories
#
ETCDIR= /etc
INCLDIR= /usr/include
LIBDIR= /usr/lib
SBINDIR= /sbin
SMANDIR= /usr/man/man8
UMANDIR= /usr/man/man1
USRBINDIR= /usr/bin
USRSBINDIR= /usr/sbin
ETCDIR= $(DESTDIR)/etc
INCLDIR= $(DESTDIR)/usr/include
LIBDIR= $(DESTDIR)/usr/lib
SBINDIR= $(DESTDIR)/sbin
SHLIBDIR= $(DESTDIR)/lib
USRSHLIBDIR= $(DESTDIR)/usr/lib
SMANDIR= $(DESTDIR)/usr/man/man8
UMANDIR= $(DESTDIR)/usr/man/man1
FMANDIR= $(DESTDIR)/usr/man/man5
USRBINDIR= $(DESTDIR)/usr/bin
USRSBINDIR= $(DESTDIR)/usr/sbin

View File

@ -1,3 +1,5 @@
include ./MCONFIG
all: libs
(cd e2fsck; $(MAKE))
(cd debugfs ; $(MAKE))
@ -10,18 +12,54 @@ libs:
(cd lib/e2p; $(MAKE))
install:
(cd e2fsck; $(MAKE) install)
(cd debugfs; $(MAKE) install)
(cd misc ; $(MAKE) install)
install-libs:
(cd lib/et; $(MAKE) install)
(cd lib/ss; $(MAKE) install)
(cd lib/ext2fs; $(MAKE) install)
(cd lib/e2p; $(MAKE) install)
(cd e2fsck; $(MAKE) install)
(cd debugfs; $(MAKE) install)
(cd misc ; $(MAKE) install)
install-tree:
(cd lib/et; $(MAKE) install-tree)
(cd lib/ss; $(MAKE) install-tree)
(cd lib/ext2fs; $(MAKE) install-tree)
(cd lib/e2p; $(MAKE) install-tree)
(cd e2fsck; $(MAKE) install-tree)
(cd debugfs; $(MAKE) install-tree)
(cd misc ; $(MAKE) install-tree)
install-libs:
(cd lib/et; $(MAKE) install-libs)
(cd lib/ss; $(MAKE) install-libs)
(cd lib/ext2fs; $(MAKE) install-libs)
(cd lib/e2p; $(MAKE) install-libs)
install-dirs:
install -d $(ETCDIR)
install -d $(INCLDIR)
install -d $(LIBDIR)
install -d $(SBINDIR)
install -d $(SHLIBDIR)
install -d $(SMANDIR)
install -d $(UMANDIR)
install -d $(USRBINDIR)
install -d $(USRSBINDIR)
bin-tree:
rm -rf dest
mkdir dest
$(MAKE) DESTDIR=`pwd`/dest install-dirs
$(MAKE) DESTDIR=`pwd`/dest install
mkdir dest/install-utils dest/usr/man/cat1 dest/usr/man/cat8
cp install-utils/convfstab dest/install-utils
cp install-utils/remove_preformat_manpages dest/install-utils
(cd dest; export MANPATH=`pwd`/usr/man; \
../install-utils/compile_manpages)
clean:
rm -f $(PROGS) \#* *.s *.o *.a *~ core MAKELOG
rm -f $(PROGS) \#* *.s *.o *.a *~ core MAKELOG
rm -rf dest
(cd lib/et; $(MAKE) clean)
(cd lib/ss; $(MAKE) clean)
(cd lib/ext2fs; $(MAKE) clean)
@ -30,8 +68,9 @@ clean:
(cd debugfs; $(MAKE) clean)
(cd misc ; $(MAKE) clean)
really-clean: clean
rm -f .depend
really-clean:
rm -f $(PROGS) \#* *.s *.o *.a *~ core MAKELOG
rm -f .depend bin/* shlibs/*.so.*
(cd lib/et; $(MAKE) really-clean)
(cd lib/ss; $(MAKE) really-clean)
(cd lib/ext2fs; $(MAKE) really-clean)

16
README
View File

@ -1,9 +1,13 @@
This is the new version (0.5) of the second extended file system
This is the new version (0.5b) of the second extended file system
management programs. You need to run Linux 1.0 or above to use it since
some programs used some ext2fs features that where not available in
previous kernel versions.
This version contains programs written by Theodore T'so and Remy Card.
See the file INSTALL for installation instructions. This is
important! Note that your /etc/fstab file may need modifying before
you install the new fsck program. See the INSTALL file for more details.
This version contains programs written by Theodore Ts'o and Remy Card.
This distribution was packaged by Ted and Remy with the help of Stephen Tweedie
and Alexy Vovenko.
@ -36,7 +40,7 @@ and Alexy Vovenko.
Manual pages are included in this package.
See the file INSTALL for installation instructions.
In case of bugs in these programs, please contact Ted <tytso@mit.edu>
and Remy <card@masi.ibp.fr>.
In case of bugs in these programs, please contact Ted
<tytso@mit.edu> and Remy <card@masi.ibp.fr>. See the e2fsck man page
for suggestions of what sort of information to include when submitting
bug reports for e2fsck.

27
SHLIBS Normal file
View File

@ -0,0 +1,27 @@
Library:libcom_err.o
Description: Common error code library
Maintainer: Theodore Ts'o
Email: tytso@mit.edu
Start: 0x66800000
End: 0x6687ffff
Library:libss.o
Description: Generic Subsystem library (Simple tty UI)
Maintainer: Theodore Ts'o
Email: tytso@mit.edu
Start: 0x66880000
End: 0x668fffff
Library:libext2fs.so
Description: The ext2fs (raw interface) library
Maintainer: Theodore Ts'o
Email: tytso@mit.edu
Start: 0x66900000
End: 0x6697ffff
Library:libe2p.so
Description: The e2p (ext2fs's programmers) library
Maintainer: Theodore Ts'o
Email: tytso@mit.edu
Start: 0x66980000
End: 0x669fffff

View File

@ -1,18 +1,37 @@
debugfs.o : debugfs.c /usr/include/stdio.h /usr/include/features.h /usr/include/sys/cdefs.h \
/usr/include/libio.h /usr/include/_G_config.h /usr/include/unistd.h /usr/include/posix_opt.h \
/usr/include/gnu/types.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/stddef.h \
/usr/include/sys/types.h /usr/include/linux/types.h /usr/include/stdlib.h /usr/include/errno.h \
/usr/include/linux/errno.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/float.h \
/usr/include/sys/types.h /usr/include/linux/types.h /usr/include/asm/types.h \
/usr/include/stdlib.h /usr/include/errno.h /usr/include/linux/errno.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/float.h \
/usr/include/alloca.h /usr/include/ctype.h /usr/include/string.h /usr/include/time.h \
/usr/include/getopt.h /usr/include/sys/stat.h /usr/include/linux/stat.h ../lib/et/com_err.h \
/usr/lib/gcc-lib/i486-linux/2.5.8/include/stdarg.h ../lib/ss/ss.h ../lib/ss/mit-sipb-copyright.h \
../lib/ss/ss_err.h debugfs.h /usr/include/linux/ext2_fs.h ../lib/ext2fs/ext2fs.h \
../lib/ext2fs/io.h ../lib/ext2fs/ext2_err.h ../lib/ext2fs/bitops.h
dump.o : dump.c /usr/include/stdio.h /usr/include/features.h /usr/include/sys/cdefs.h \
/usr/include/libio.h /usr/include/_G_config.h /usr/include/unistd.h /usr/include/posix_opt.h \
/usr/include/gnu/types.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/stddef.h \
/usr/include/sys/types.h /usr/include/linux/types.h /usr/include/asm/types.h \
/usr/include/stdlib.h /usr/include/errno.h /usr/include/linux/errno.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/float.h \
/usr/include/alloca.h /usr/include/ctype.h /usr/include/string.h /usr/include/time.h \
/usr/include/getopt.h /usr/include/sys/stat.h /usr/include/linux/stat.h /usr/include/fcntl.h \
/usr/include/linux/fcntl.h debugfs.h /usr/include/linux/ext2_fs.h ../lib/ext2fs/ext2fs.h \
../lib/et/com_err.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/stdarg.h ../lib/ext2fs/io.h \
../lib/ext2fs/ext2_err.h ../lib/ext2fs/bitops.h
icheck.o : icheck.c /usr/include/stdio.h /usr/include/features.h /usr/include/sys/cdefs.h \
/usr/include/libio.h /usr/include/_G_config.h /usr/include/unistd.h /usr/include/posix_opt.h \
/usr/include/gnu/types.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/stddef.h \
/usr/include/sys/types.h /usr/include/linux/types.h /usr/include/stdlib.h /usr/include/errno.h \
/usr/include/linux/errno.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/float.h \
/usr/include/sys/types.h /usr/include/linux/types.h /usr/include/asm/types.h \
/usr/include/stdlib.h /usr/include/errno.h /usr/include/linux/errno.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/float.h \
/usr/include/alloca.h /usr/include/ctype.h /usr/include/string.h /usr/include/time.h \
/usr/include/getopt.h /usr/include/sys/stat.h /usr/include/linux/stat.h debugfs.h \
/usr/include/linux/ext2_fs.h ../lib/ext2fs/ext2fs.h ../lib/et/com_err.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/stdarg.h \
../lib/ext2fs/io.h ../lib/ext2fs/ext2_err.h ../lib/ext2fs/bitops.h
lsdel.o : lsdel.c /usr/include/stdio.h /usr/include/features.h /usr/include/sys/cdefs.h \
/usr/include/libio.h /usr/include/_G_config.h /usr/include/unistd.h /usr/include/posix_opt.h \
/usr/include/gnu/types.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/stddef.h \
/usr/include/sys/types.h /usr/include/linux/types.h /usr/include/asm/types.h \
/usr/include/stdlib.h /usr/include/errno.h /usr/include/linux/errno.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/float.h \
/usr/include/alloca.h /usr/include/ctype.h /usr/include/string.h /usr/include/time.h \
/usr/include/getopt.h /usr/include/sys/stat.h /usr/include/linux/stat.h debugfs.h \
/usr/include/linux/ext2_fs.h ../lib/ext2fs/ext2fs.h ../lib/et/com_err.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/stdarg.h \
@ -20,8 +39,8 @@ icheck.o : icheck.c /usr/include/stdio.h /usr/include/features.h /usr/include/sy
ncheck.o : ncheck.c /usr/include/stdio.h /usr/include/features.h /usr/include/sys/cdefs.h \
/usr/include/libio.h /usr/include/_G_config.h /usr/include/unistd.h /usr/include/posix_opt.h \
/usr/include/gnu/types.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/stddef.h \
/usr/include/sys/types.h /usr/include/linux/types.h /usr/include/stdlib.h /usr/include/errno.h \
/usr/include/linux/errno.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/float.h \
/usr/include/sys/types.h /usr/include/linux/types.h /usr/include/asm/types.h \
/usr/include/stdlib.h /usr/include/errno.h /usr/include/linux/errno.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/float.h \
/usr/include/alloca.h /usr/include/ctype.h /usr/include/string.h /usr/include/time.h \
/usr/include/getopt.h /usr/include/sys/stat.h /usr/include/linux/stat.h debugfs.h \
/usr/include/linux/ext2_fs.h ../lib/ext2fs/ext2fs.h ../lib/et/com_err.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/stdarg.h \
@ -29,8 +48,8 @@ ncheck.o : ncheck.c /usr/include/stdio.h /usr/include/features.h /usr/include/sy
util.o : util.c /usr/include/stdio.h /usr/include/features.h /usr/include/sys/cdefs.h \
/usr/include/libio.h /usr/include/_G_config.h /usr/include/unistd.h /usr/include/posix_opt.h \
/usr/include/gnu/types.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/stddef.h \
/usr/include/sys/types.h /usr/include/linux/types.h /usr/include/stdlib.h /usr/include/errno.h \
/usr/include/linux/errno.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/float.h \
/usr/include/sys/types.h /usr/include/linux/types.h /usr/include/asm/types.h \
/usr/include/stdlib.h /usr/include/errno.h /usr/include/linux/errno.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/float.h \
/usr/include/alloca.h /usr/include/ctype.h /usr/include/string.h debugfs.h /usr/include/linux/ext2_fs.h \
../lib/ext2fs/ext2fs.h ../lib/et/com_err.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/stdarg.h \
../lib/ext2fs/io.h ../lib/ext2fs/ext2_err.h ../lib/ext2fs/bitops.h

7
debugfs/ChangeLog Normal file
View File

@ -0,0 +1,7 @@
Thu Nov 24 17:46:23 1994 Theodore Y. Ts'o (tytso@rt-11)
* dump.c: Added two new commands, "dump" and "cat", which allow
the user to dump the contents of an inode to a file or to
stdout, respectively.

View File

@ -3,19 +3,19 @@ include ../MCONFIG
CFLAGS= $(OPT) -Wall -I../lib
LDFLAGS= $(OPT)
PROGS= debugfs
BINDIR= $(USRSBINDIR)
BINDIR= $(SBINDIR)
MANPAGES= debugfs.8
MANDIR= $(SMANDIR)
MK_CMDS= ../lib/ss/mk_cmds
DEBUG_OBJS= debug_cmds.o debugfs.o util.o ncheck.o icheck.o
DEBUG_OBJS= debug_cmds.o debugfs.o util.o ncheck.o icheck.o lsdel.o dump.o
LIBS= -L../lib -lss -lcom_err -lext2fs
DEPLIBS= ../lib/libss.a ../lib/libcom_err.a ../lib/libext2fs.a
debugfs: $(DEBUG_OBJS) $(DEPLIBS)
cc $(LDFLAGS) -o debugfs $(DEBUG_OBJS) $(LIBS)
$(CC) $(LDFLAGS) -o debugfs $(DEBUG_OBJS) $(LIBS)
debug_cmds.c debug_cmds.h: debug_cmds.ct
$(MK_CMDS) debug_cmds.ct
@ -30,6 +30,14 @@ install:: $(MANPAGES)
$(INSTALLMAN) $$i $(MANDIR)/$$i; \
done
install-tree:: $(PROGS)
for i in $(PROGS); do \
rm -f ../bin/$$i; \
cp $$i ../bin; \
strip ../bin/$$i; \
chmod 555 ../bin/$$i; \
done
clean:
rm -f debugfs \#* *.s *.o *.a *~ debug_cmds.c core

View File

@ -91,6 +91,15 @@ request do_print_working_directory, "Print current working directory",
request do_expand_dir, "Expand directory",
expand_dir, expand;
request do_lsdel, "List deleted inodes",
list_deleted_inodes, lsdel;
request do_dump, "Dump an inode out to a file",
dump_inode, dump;
request do_cat, "Dump an inode out to stdout",
cat;
end;

View File

@ -1,5 +1,5 @@
.\" -*- nroff -*-
.TH DEBUGFS 8 "March 1994" "Version 0.4b"
.TH DEBUGFS 8 "November 1994" "Version 0.5b"
.SH NAME
debugfs \- ext2 file system debugger
.SH SYNOPSIS

View File

@ -6,5 +6,5 @@
* under the GNU Public License.
*/
#define E2FSPROGS_VERSION "0.5"
#define E2FSPROGS_DATE "28-Mar-94"
#define E2FSPROGS_VERSION "0.5b"
#define E2FSPROGS_DATE "11-Mar-95"