mirror of https://github.com/vitalif/e2fsprogs
parent
50e1e10fa0
commit
a418d3ad81
|
@ -0,0 +1,2 @@
|
|||
66885010 D __NEEDS_SHRLIB_libc_4
|
||||
66885028 D __NEEDS_SHRLIB_libet_1
|
|
@ -1,2 +0,0 @@
|
|||
66885010 D __NEEDS_SHRLIB_libc_4
|
||||
66885024 D __NEEDS_SHRLIB_libet_1
|
|
@ -1,29 +0,0 @@
|
|||
/*
|
||||
* ss_err.h:
|
||||
* This file is automatically generated; please do not edit it.
|
||||
*/
|
||||
#ifdef __STDC__
|
||||
#define NOARGS void
|
||||
#else
|
||||
#define NOARGS
|
||||
#define const
|
||||
#endif
|
||||
|
||||
#define SS_ET_SUBSYSTEM_ABORTED (748800L)
|
||||
#define SS_ET_VERSION_MISMATCH (748801L)
|
||||
#define SS_ET_NULL_INV (748802L)
|
||||
#define SS_ET_NO_INFO_DIR (748803L)
|
||||
#define SS_ET_COMMAND_NOT_FOUND (748804L)
|
||||
#define SS_ET_LINE_ABORTED (748805L)
|
||||
#define SS_ET_EOF (748806L)
|
||||
#define SS_ET_PERMISSION_DENIED (748807L)
|
||||
#define SS_ET_TABLE_NOT_FOUND (748808L)
|
||||
#define SS_ET_NO_HELP_FILE (748809L)
|
||||
#define SS_ET_ESCAPE_DISABLED (748810L)
|
||||
#define SS_ET_UNIMPLEMENTED (748811L)
|
||||
extern void initialize_ss_error_table (NOARGS);
|
||||
#define ERROR_TABLE_BASE_ss (748800L)
|
||||
|
||||
/* for compatibility with older versions... */
|
||||
#define init_ss_err_tbl initialize_ss_error_table
|
||||
#define ss_err_base ERROR_TABLE_BASE_ss
|
|
@ -8,6 +8,7 @@
|
|||
#define _ss_ss_internal_h __FILE__
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#ifdef __STDC__
|
||||
|
||||
|
@ -107,10 +108,6 @@ void ss_page_stdin(NOARGS);
|
|||
extern ss_data **_ss_table;
|
||||
extern char *ss_et_msgs[];
|
||||
|
||||
extern pointer malloc PROTOTYPE((unsigned));
|
||||
extern pointer realloc PROTOTYPE((pointer, unsigned));
|
||||
extern pointer calloc PROTOTYPE((unsigned, unsigned));
|
||||
|
||||
#ifdef USE_SIGPROCMASK
|
||||
/* fake sigmask, sigblock, sigsetmask */
|
||||
#include <signal.h>
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* std_rqs.c - automatically generated from std_rqs.ct */
|
||||
/* ./std_rqs.c - automatically generated from ./std_rqs.ct */
|
||||
#include <ss/ss.h>
|
||||
|
||||
#ifndef __STDC__
|
||||
|
|
|
@ -9,8 +9,8 @@
|
|||
* $Locker$
|
||||
*
|
||||
* $Log$
|
||||
* Revision 1.2 1997/04/26 13:34:09 tytso
|
||||
* Checkin of e2fsprogs 0.5b
|
||||
* Revision 1.3 1997/04/26 13:58:24 tytso
|
||||
* Checked in e2fsprogs 0.5c
|
||||
*
|
||||
* Revision 1.1 1993/06/03 12:31:25 tytso
|
||||
* Initial revision
|
||||
|
|
149
misc/.depend
149
misc/.depend
|
@ -1,104 +1,107 @@
|
|||
badblocks.o : badblocks.c /usr/include/errno.h /usr/include/features.h /usr/include/sys/cdefs.h \
|
||||
badblocks.o : ./badblocks.c /usr/include/errno.h /usr/include/features.h /usr/include/sys/cdefs.h \
|
||||
/usr/include/linux/errno.h /usr/include/fcntl.h /usr/include/sys/types.h /usr/include/linux/types.h \
|
||||
/usr/include/asm/types.h /usr/include/linux/fcntl.h /usr/include/getopt.h /usr/include/signal.h \
|
||||
/usr/include/linux/signal.h /usr/include/stdio.h /usr/include/libio.h /usr/include/_G_config.h \
|
||||
/usr/include/stdlib.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/stddef.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/float.h \
|
||||
/usr/include/alloca.h /usr/include/string.h /usr/include/unistd.h /usr/include/posix_opt.h \
|
||||
/usr/include/gnu/types.h /usr/include/sys/ioctl.h /usr/include/linux/ioctl.h \
|
||||
/usr/include/termios.h /usr/include/linux/termios.h /usr/include/linux/fd.h \
|
||||
/usr/include/linux/fs.h /usr/include/linux/linkage.h /usr/include/linux/limits.h \
|
||||
/usr/include/linux/wait.h /usr/include/linux/dirent.h /usr/include/linux/vfs.h \
|
||||
/usr/include/linux/net.h /usr/include/linux/socket.h /usr/include/linux/sockios.h \
|
||||
/usr/include/linux/pipe_fs_i.h /usr/include/linux/minix_fs_i.h /usr/include/linux/ext_fs_i.h \
|
||||
/usr/include/linux/ext2_fs_i.h /usr/include/linux/hpfs_fs_i.h /usr/include/linux/msdos_fs_i.h \
|
||||
/usr/include/linux/umsdos_fs_i.h /usr/include/linux/iso_fs_i.h /usr/include/linux/nfs_fs_i.h \
|
||||
/usr/include/linux/nfs.h /usr/include/linux/xia_fs_i.h /usr/include/linux/sysv_fs_i.h \
|
||||
../lib/et/com_err.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/stdarg.h ../lib/ext2fs/io.h
|
||||
chattr.o : chattr.c /usr/include/dirent.h /usr/include/features.h /usr/include/sys/cdefs.h \
|
||||
/usr/include/asm/types.h /usr/include/gnu/types.h /usr/include/linux/fcntl.h \
|
||||
/usr/include/getopt.h /usr/include/signal.h /usr/include/linux/signal.h /usr/include/stdio.h \
|
||||
/usr/include/libio.h /usr/include/_G_config.h /usr/include/stdlib.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/stddef.h \
|
||||
/usr/lib/gcc-lib/i486-linux/2.5.8/include/float.h /usr/include/alloca.h /usr/include/string.h \
|
||||
/usr/include/unistd.h /usr/include/posix_opt.h /usr/include/confname.h /usr/include/sys/ioctl.h \
|
||||
/usr/include/linux/ioctl.h /usr/include/termios.h /usr/include/linux/termios.h \
|
||||
/usr/include/linux/fd.h /usr/include/linux/fs.h /usr/include/linux/linkage.h \
|
||||
/usr/include/linux/limits.h /usr/include/linux/wait.h /usr/include/linux/dirent.h \
|
||||
/usr/include/linux/vfs.h /usr/include/linux/net.h /usr/include/linux/socket.h \
|
||||
/usr/include/linux/sockios.h /usr/include/linux/pipe_fs_i.h /usr/include/linux/minix_fs_i.h \
|
||||
/usr/include/linux/ext_fs_i.h /usr/include/linux/ext2_fs_i.h /usr/include/linux/hpfs_fs_i.h \
|
||||
/usr/include/linux/msdos_fs_i.h /usr/include/linux/umsdos_fs_i.h /usr/include/linux/iso_fs_i.h \
|
||||
/usr/include/linux/nfs_fs_i.h /usr/include/linux/nfs.h /usr/include/linux/xia_fs_i.h \
|
||||
/usr/include/linux/sysv_fs_i.h ../lib/et/com_err.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/stdarg.h \
|
||||
../lib/ext2fs/io.h
|
||||
chattr.o : ./chattr.c /usr/include/dirent.h /usr/include/features.h /usr/include/sys/cdefs.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/linux/limits.h /usr/include/linux/dirent.h /usr/include/posix1_lim.h \
|
||||
/usr/include/fcntl.h /usr/include/linux/fcntl.h /usr/include/getopt.h /usr/include/stdio.h \
|
||||
/usr/include/libio.h /usr/include/_G_config.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/unistd.h /usr/include/posix_opt.h /usr/include/sys/param.h \
|
||||
/usr/lib/gcc-lib/i486-linux/2.5.8/include/limits.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/syslimits.h \
|
||||
/usr/include/limits.h /usr/include/posix2_lim.h /usr/include/linux/param.h /usr/include/asm/param.h \
|
||||
/usr/include/alloca.h /usr/include/unistd.h /usr/include/posix_opt.h /usr/include/confname.h \
|
||||
/usr/include/sys/param.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/limits.h \
|
||||
/usr/lib/gcc-lib/i486-linux/2.5.8/include/syslimits.h /usr/include/limits.h \
|
||||
/usr/include/posix2_lim.h /usr/include/linux/param.h /usr/include/asm/param.h \
|
||||
/usr/include/sys/stat.h /usr/include/linux/stat.h /usr/include/linux/ext2_fs.h \
|
||||
../lib/et/com_err.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/stdarg.h ../lib/e2p/e2p.h \
|
||||
../version.h
|
||||
dumpe2fs.o : dumpe2fs.c /usr/include/getopt.h /usr/include/fcntl.h /usr/include/features.h \
|
||||
./../version.h
|
||||
dumpe2fs.o : ./dumpe2fs.c /usr/include/getopt.h /usr/include/fcntl.h /usr/include/features.h \
|
||||
/usr/include/sys/cdefs.h /usr/include/sys/types.h /usr/include/linux/types.h \
|
||||
/usr/include/asm/types.h /usr/include/linux/fcntl.h /usr/include/stdio.h /usr/include/libio.h \
|
||||
/usr/include/_G_config.h /usr/include/stdlib.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/stddef.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/string.h /usr/include/unistd.h /usr/include/posix_opt.h \
|
||||
/usr/include/gnu/types.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 ../lib/e2p/e2p.h /usr/include/dirent.h \
|
||||
/usr/include/linux/limits.h /usr/include/linux/dirent.h /usr/include/posix1_lim.h \
|
||||
../version.h
|
||||
fsck.o : fsck.c /usr/include/sys/types.h /usr/include/linux/types.h /usr/include/asm/types.h \
|
||||
/usr/include/asm/types.h /usr/include/gnu/types.h /usr/include/linux/fcntl.h \
|
||||
/usr/include/stdio.h /usr/include/libio.h /usr/include/_G_config.h /usr/include/stdlib.h \
|
||||
/usr/lib/gcc-lib/i486-linux/2.5.8/include/stddef.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/string.h \
|
||||
/usr/include/unistd.h /usr/include/posix_opt.h /usr/include/confname.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 ../lib/e2p/e2p.h \
|
||||
/usr/include/dirent.h /usr/include/linux/limits.h /usr/include/linux/dirent.h \
|
||||
/usr/include/posix1_lim.h ./../version.h
|
||||
fsck.o : ./fsck.c /usr/include/sys/types.h /usr/include/linux/types.h /usr/include/asm/types.h \
|
||||
/usr/include/sys/wait.h /usr/include/features.h /usr/include/sys/cdefs.h /usr/include/gnu/types.h \
|
||||
/usr/include/waitflags.h /usr/include/linux/wait.h /usr/include/waitstatus.h \
|
||||
/usr/include/endian.h /usr/include/bytesex.h /usr/include/sys/signal.h /usr/include/signal.h \
|
||||
/usr/include/linux/signal.h /usr/include/sys/stat.h /usr/include/linux/stat.h \
|
||||
/usr/include/errno.h /usr/include/linux/errno.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/limits.h \
|
||||
/usr/lib/gcc-lib/i486-linux/2.5.8/include/syslimits.h /usr/include/limits.h \
|
||||
/usr/include/posix1_lim.h /usr/include/linux/limits.h /usr/include/posix2_lim.h \
|
||||
/usr/include/stdio.h /usr/include/libio.h /usr/include/_G_config.h /usr/include/stdlib.h \
|
||||
/usr/lib/gcc-lib/i486-linux/2.5.8/include/stddef.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/float.h \
|
||||
/usr/include/alloca.h /usr/include/string.h /usr/include/mntent.h /usr/include/unistd.h \
|
||||
/usr/include/posix_opt.h /usr/include/getopt.h ../version.h fsck.h
|
||||
lsattr.o : lsattr.c /usr/include/dirent.h /usr/include/features.h /usr/include/sys/cdefs.h \
|
||||
/usr/lib/gcc-lib/i486-linux/2.5.8/include/limits.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/syslimits.h \
|
||||
/usr/include/limits.h /usr/include/posix1_lim.h /usr/include/linux/limits.h \
|
||||
/usr/include/posix2_lim.h /usr/include/stdio.h /usr/include/libio.h /usr/include/_G_config.h \
|
||||
/usr/include/string.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/stddef.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/mntent.h /usr/include/unistd.h /usr/include/posix_opt.h \
|
||||
/usr/include/confname.h /usr/include/malloc.h /usr/include/getopt.h ./../version.h \
|
||||
./fsck.h
|
||||
lsattr.o : ./lsattr.c /usr/include/dirent.h /usr/include/features.h /usr/include/sys/cdefs.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/linux/limits.h /usr/include/linux/dirent.h /usr/include/posix1_lim.h \
|
||||
/usr/include/errno.h /usr/include/linux/errno.h /usr/include/fcntl.h /usr/include/linux/fcntl.h \
|
||||
/usr/include/getopt.h /usr/include/stdio.h /usr/include/libio.h /usr/include/_G_config.h \
|
||||
/usr/include/unistd.h /usr/include/posix_opt.h /usr/include/sys/param.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/limits.h \
|
||||
/usr/lib/gcc-lib/i486-linux/2.5.8/include/syslimits.h /usr/include/limits.h \
|
||||
/usr/include/posix2_lim.h /usr/include/linux/param.h /usr/include/asm/param.h \
|
||||
/usr/include/unistd.h /usr/include/posix_opt.h /usr/include/confname.h /usr/include/sys/param.h \
|
||||
/usr/lib/gcc-lib/i486-linux/2.5.8/include/limits.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/syslimits.h \
|
||||
/usr/include/limits.h /usr/include/posix2_lim.h /usr/include/linux/param.h /usr/include/asm/param.h \
|
||||
/usr/include/sys/stat.h /usr/include/linux/stat.h /usr/include/linux/ext2_fs.h \
|
||||
../lib/et/com_err.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/stdarg.h ../lib/e2p/e2p.h \
|
||||
../version.h
|
||||
mke2fs.o : mke2fs.c /usr/include/string.h /usr/include/features.h /usr/include/sys/cdefs.h \
|
||||
./../version.h
|
||||
mke2fs.o : ./mke2fs.c /usr/include/string.h /usr/include/features.h /usr/include/sys/cdefs.h \
|
||||
/usr/lib/gcc-lib/i486-linux/2.5.8/include/stddef.h /usr/include/fcntl.h /usr/include/sys/types.h \
|
||||
/usr/include/linux/types.h /usr/include/asm/types.h /usr/include/linux/fcntl.h \
|
||||
/usr/include/ctype.h /usr/include/termios.h /usr/include/linux/termios.h /usr/include/time.h \
|
||||
/usr/include/getopt.h /usr/include/unistd.h /usr/include/posix_opt.h /usr/include/gnu/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/mntent.h /usr/include/stdio.h /usr/include/libio.h \
|
||||
/usr/include/_G_config.h /usr/include/malloc.h /usr/include/sys/ioctl.h /usr/include/linux/ioctl.h \
|
||||
/usr/include/linux/fs.h /usr/include/linux/linkage.h /usr/include/linux/limits.h \
|
||||
/usr/include/linux/wait.h /usr/include/linux/dirent.h /usr/include/linux/vfs.h \
|
||||
/usr/include/linux/net.h /usr/include/linux/socket.h /usr/include/linux/sockios.h \
|
||||
/usr/include/linux/pipe_fs_i.h /usr/include/linux/minix_fs_i.h /usr/include/linux/ext_fs_i.h \
|
||||
/usr/include/linux/ext2_fs_i.h /usr/include/linux/hpfs_fs_i.h /usr/include/linux/msdos_fs_i.h \
|
||||
/usr/include/linux/umsdos_fs_i.h /usr/include/linux/iso_fs_i.h /usr/include/linux/nfs_fs_i.h \
|
||||
/usr/include/linux/nfs.h /usr/include/linux/xia_fs_i.h /usr/include/linux/sysv_fs_i.h \
|
||||
/usr/include/linux/ext2_fs.h ../lib/et/com_err.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/stdarg.h \
|
||||
../lib/ext2fs/ext2fs.h ../lib/ext2fs/io.h ../lib/ext2fs/ext2_err.h ../lib/ext2fs/bitops.h \
|
||||
../version.h
|
||||
mklost+found.o : mklost+found.c /usr/include/errno.h /usr/include/features.h \
|
||||
/usr/include/linux/types.h /usr/include/asm/types.h /usr/include/gnu/types.h \
|
||||
/usr/include/linux/fcntl.h /usr/include/ctype.h /usr/include/termios.h /usr/include/linux/termios.h \
|
||||
/usr/include/time.h /usr/include/getopt.h /usr/include/unistd.h /usr/include/posix_opt.h \
|
||||
/usr/include/confname.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/mntent.h \
|
||||
/usr/include/stdio.h /usr/include/libio.h /usr/include/_G_config.h /usr/include/malloc.h \
|
||||
/usr/include/sys/ioctl.h /usr/include/linux/ioctl.h /usr/include/linux/fs.h \
|
||||
/usr/include/linux/linkage.h /usr/include/linux/limits.h /usr/include/linux/wait.h \
|
||||
/usr/include/linux/dirent.h /usr/include/linux/vfs.h /usr/include/linux/net.h \
|
||||
/usr/include/linux/socket.h /usr/include/linux/sockios.h /usr/include/linux/pipe_fs_i.h \
|
||||
/usr/include/linux/minix_fs_i.h /usr/include/linux/ext_fs_i.h /usr/include/linux/ext2_fs_i.h \
|
||||
/usr/include/linux/hpfs_fs_i.h /usr/include/linux/msdos_fs_i.h /usr/include/linux/umsdos_fs_i.h \
|
||||
/usr/include/linux/iso_fs_i.h /usr/include/linux/nfs_fs_i.h /usr/include/linux/nfs.h \
|
||||
/usr/include/linux/xia_fs_i.h /usr/include/linux/sysv_fs_i.h /usr/include/linux/ext2_fs.h \
|
||||
../lib/et/com_err.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/stdarg.h ../lib/ext2fs/ext2fs.h \
|
||||
../lib/ext2fs/io.h ../lib/ext2fs/ext2_err.h ../lib/ext2fs/bitops.h ./../version.h
|
||||
mklost+found.o : ./mklost+found.c /usr/include/errno.h /usr/include/features.h \
|
||||
/usr/include/sys/cdefs.h /usr/include/linux/errno.h /usr/include/fcntl.h /usr/include/sys/types.h \
|
||||
/usr/include/linux/types.h /usr/include/asm/types.h /usr/include/linux/fcntl.h \
|
||||
/usr/include/stdio.h /usr/include/libio.h /usr/include/_G_config.h /usr/include/string.h \
|
||||
/usr/lib/gcc-lib/i486-linux/2.5.8/include/stddef.h /usr/include/unistd.h /usr/include/posix_opt.h \
|
||||
/usr/include/gnu/types.h /usr/include/sys/param.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/limits.h \
|
||||
/usr/include/linux/types.h /usr/include/asm/types.h /usr/include/gnu/types.h \
|
||||
/usr/include/linux/fcntl.h /usr/include/stdio.h /usr/include/libio.h /usr/include/_G_config.h \
|
||||
/usr/include/string.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/stddef.h /usr/include/unistd.h \
|
||||
/usr/include/posix_opt.h /usr/include/confname.h /usr/include/sys/param.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/limits.h \
|
||||
/usr/lib/gcc-lib/i486-linux/2.5.8/include/syslimits.h /usr/include/limits.h \
|
||||
/usr/include/posix1_lim.h /usr/include/linux/limits.h /usr/include/posix2_lim.h \
|
||||
/usr/include/linux/param.h /usr/include/asm/param.h /usr/include/sys/stat.h \
|
||||
/usr/include/linux/stat.h /usr/include/linux/ext2_fs.h ../version.h
|
||||
tune2fs.o : tune2fs.c /usr/include/fcntl.h /usr/include/features.h /usr/include/sys/cdefs.h \
|
||||
/usr/include/linux/stat.h /usr/include/linux/ext2_fs.h ./../version.h
|
||||
tune2fs.o : ./tune2fs.c /usr/include/fcntl.h /usr/include/features.h /usr/include/sys/cdefs.h \
|
||||
/usr/include/sys/types.h /usr/include/linux/types.h /usr/include/asm/types.h \
|
||||
/usr/include/linux/fcntl.h /usr/include/grp.h /usr/include/gnu/types.h /usr/include/stdio.h \
|
||||
/usr/include/gnu/types.h /usr/include/linux/fcntl.h /usr/include/grp.h /usr/include/stdio.h \
|
||||
/usr/include/libio.h /usr/include/_G_config.h /usr/lib/gcc-lib/i486-linux/2.5.8/include/stddef.h \
|
||||
/usr/include/getopt.h /usr/include/pwd.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/string.h /usr/include/time.h /usr/include/unistd.h \
|
||||
/usr/include/posix_opt.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 ../lib/e2p/e2p.h /usr/include/dirent.h \
|
||||
/usr/include/linux/limits.h /usr/include/linux/dirent.h /usr/include/posix1_lim.h \
|
||||
../version.h
|
||||
/usr/include/posix_opt.h /usr/include/confname.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 ../lib/e2p/e2p.h \
|
||||
/usr/include/dirent.h /usr/include/linux/limits.h /usr/include/linux/dirent.h \
|
||||
/usr/include/posix1_lim.h ./../version.h
|
||||
|
|
129
misc/ChangeLog
129
misc/ChangeLog
|
@ -1,3 +1,132 @@
|
|||
Thu Oct 26 12:05:18 1995 <tytso@rsts-11.mit.edu>
|
||||
|
||||
* Makefile.in (install): Strip programs when they are installed.
|
||||
|
||||
Fri Aug 18 15:10:40 1995 Theodore Y. Ts'o <tytso@dcl>
|
||||
|
||||
* mke2fs.c (PRS): Move call of check_mount() from main() to PRS(),
|
||||
so we do the check to see if the filesystem is mounted
|
||||
*before* we try to determine the size of the device.
|
||||
|
||||
Wed Sep 6 23:34:07 1995 Remy Card <card@bbj>
|
||||
|
||||
* fsck.c (load_fs_info): Load the informations from /etc/fstab in
|
||||
the same order.
|
||||
|
||||
Thu Aug 17 22:33:09 1995 <tytso@rsts-11.mit.edu>
|
||||
|
||||
* mke2fs.c (check_mount): Use the new ext2fs_check_if_mounted()
|
||||
function to determine if the device is mounted.
|
||||
|
||||
* mke2fs.c (PRS): Change call to use the new
|
||||
ext2fs_get_device_size() function in order to determine
|
||||
the size of the filesystem. Remove get_size() and
|
||||
is_valid_offset(), which are no longer called.
|
||||
|
||||
Fri Aug 11 08:26:24 1995 Theodore Y. Ts'o <tytso@lurch.mit.edu>
|
||||
|
||||
* fsck.c (fsck_device): Make sure fstype has been set by the user
|
||||
and that it does not begin with "no" and the user has
|
||||
specified exactly one type before using it as the type to
|
||||
check.
|
||||
|
||||
Fri Aug 11 14:17:18 1995 Remy Card <card@bbj>
|
||||
|
||||
* badblocks.8:
|
||||
* chattr.1:
|
||||
* dumpe2fs.8:
|
||||
* fsck.8:
|
||||
* lsattr.1:
|
||||
* mke2fs.8:
|
||||
* mklost+found.8:
|
||||
* tune2fs.8: Updated date and version number.
|
||||
|
||||
Thu Aug 10 14:18:36 1995 Remy Card <card@bbj>
|
||||
|
||||
* tune2fs.c: Fixed a bug which prevented the use of user and group
|
||||
names with the -g and -u options. Thanks to Jean Christophe
|
||||
ANDRE <progfou@mycrob.cafard.freenix.fr>.
|
||||
|
||||
* mke2fs.8:
|
||||
* tune2fs.8: Fixed a spelling error in Ted's name :-)
|
||||
|
||||
Wed Aug 9 20:41:54 1995 Theodore Y. Ts'o <tytso@dcl>
|
||||
|
||||
* mke2fs.c (count_blocks): Divide the size by
|
||||
EXT2_BLOCK_SIZE(¶m), instead of assuming that the
|
||||
blocksize is always 1024 bytes.
|
||||
|
||||
Sat Aug 5 12:00:51 1995 Theodore Y. Ts'o <tytso@lurch.mit.edu>
|
||||
|
||||
* mke2fs.c (PRS): Use malloc() instead of alloca() --- alloca() is
|
||||
not portable!! In any case putenv() in some systems must
|
||||
take a static character array or malloc()'ed memory;
|
||||
passing memory allocated using alloca() to putenv() is not
|
||||
advisable.
|
||||
|
||||
* chattr.c (chattr_dir_proc):
|
||||
* lsattr.c (lsattr_dir_proc): Use malloc() instead of alloca() ---
|
||||
alloca is not portable!
|
||||
|
||||
* fsck.c (fsck_device): If the filesystem type is specified by the
|
||||
user using the -t option, let it override the type in
|
||||
/etc/fstab.
|
||||
|
||||
* fsck.c (strdup): Don't build strdup() if the system defines it.
|
||||
|
||||
Mon Jun 12 19:15:10 1995 Theodore Y. Ts'o (tytso@dcl)
|
||||
|
||||
* chattr.c, lsattr.c: Include <sys/types.h> for <dirent.h>'s
|
||||
benefit.
|
||||
|
||||
* The $(UPROGS) go in bin, not sbin.
|
||||
|
||||
* badblocks.c, chattr.c, dumpe2fs.c, fsck.c, lsattr.c, mke2fs.c,
|
||||
tune2fs.c: Don't include <getopt.h> if it doesn't exist.
|
||||
|
||||
Mon Jun 12 16:36:04 1995 Theodore Y. Ts'o <tytso@dcl>
|
||||
|
||||
* badblocks.c, chattr.c, dumpe2fs.c, fsck.c, lsattr.c, mke2fs.c,
|
||||
tune2fs.c: Only include getopt.h if HAVE_GETOPT_H is defined.
|
||||
|
||||
Sat Jun 10 23:37:09 1995 Theodore Y. Ts'o <tytso@lurch.mit.edu>
|
||||
|
||||
* chattr.c: Include errno.h, since we use errno
|
||||
|
||||
* fsck.c (load_fs_info): If HAVE_MNTENT_H is not defined,
|
||||
explicitly initialize filesys_info to be NULL.
|
||||
|
||||
* mke2fs.c: Include the stdio.h and errno.h header files
|
||||
|
||||
Thu Jun 8 13:25:23 1995 Miles Bader <miles@churchy.gnu.ai.mit.edu>
|
||||
|
||||
* mke2fs.c: Only include <linux/fs.h> if we can.
|
||||
(get_size): Don't try to use the BLKGETSIZE ioctl unless it's defined.
|
||||
(check_mount): Only check to see if the device is mounted if
|
||||
HAVE_MNTENT_H is defined (by configure).
|
||||
|
||||
* fsck.c (load_fs_info): Only try to get info about filesystems if
|
||||
HAVE_MNTENT_H is defined (by configure).
|
||||
(main): Allocate space for a new fsck_path instead of append to a
|
||||
statically sized buffer.
|
||||
(PRS): Use alloca to allocate the new path string, instead of
|
||||
having a fixed size buffer (which was the wrong size anyway).
|
||||
|
||||
* chattr.c (chattr_dir_proc): Use alloca to allocate space for a
|
||||
filename instead of using a fixed-size buffer.
|
||||
* lsattr.c (lsattr_dir_proc): Ditto.
|
||||
* mklost+fond.c (main): Calculate the actual needed size for the
|
||||
path buffer instead of using MAXPATHLEN (which not all systems have).
|
||||
|
||||
* badblocks.c: Only include linux include files if we have them.
|
||||
(flush_bufs): New function to flush a block device, optionally
|
||||
syncing it first. This replaces other copies of this code.
|
||||
(test_ro): Replace calls to ioctl with flush_bufs().
|
||||
(test_rw): Ditto.
|
||||
|
||||
* Makefile.in: Rewritten to conform to GNU coding standards and
|
||||
support separate compilation directories.
|
||||
|
||||
Sat Mar 11 10:59:58 1995 Theodore Y. Ts'o <tytso@localhost>
|
||||
|
||||
* mke2fs.c (main, zap_bootblock): Added new function
|
||||
|
|
|
@ -1,90 +0,0 @@
|
|||
include ../MCONFIG
|
||||
|
||||
CFLAGS= $(OPT) $(WFLAGS) -I../lib
|
||||
LDFLAGS= $(OPT)
|
||||
SPROGS= mke2fs badblocks tune2fs dumpe2fs fsck
|
||||
USPROGS= mklost+found
|
||||
SMANPAGES= tune2fs.8 mklost+found.8 mke2fs.8 dumpe2fs.8 badblocks.8 \
|
||||
fsck.8
|
||||
|
||||
UPROGS= chattr lsattr
|
||||
UMANPAGES= chattr.1 lsattr.1
|
||||
|
||||
TUNE2FS_OBJS= tune2fs.o
|
||||
MKLPF_OBJS= mklost+found.o
|
||||
MKE2FS_OBJS= mke2fs.o
|
||||
CHATTR_OBJS= chattr.o
|
||||
LSATTR_OBJS= lsattr.o
|
||||
DUMPE2FS_OBJS= dumpe2fs.o
|
||||
BADBLOCKS_OBJS= badblocks.o
|
||||
FSCK_OBJS= fsck.o
|
||||
|
||||
LIBS= -L../lib -lext2fs -le2p -lcom_err
|
||||
DEPLIBS= ../lib/libext2fs.a ../lib/libe2p.a ../lib/libcom_err.a
|
||||
|
||||
all: $(SPROGS) $(UPROGS) $(USPROGS)
|
||||
|
||||
tune2fs: $(TUNE2FS_OBJS) $(DEPLIBS)
|
||||
$(CC) $(LDFLAGS) -o tune2fs $(TUNE2FS_OBJS) $(LIBS)
|
||||
|
||||
mklost+found: $(MKLPF_OBJS)
|
||||
$(CC) $(LDFLAGS) -o mklost+found $(MKLPF_OBJS)
|
||||
|
||||
mke2fs: $(MKE2FS_OBJS) $(DEPLIBS)
|
||||
$(CC) $(LDFLAGS) -o mke2fs $(MKE2FS_OBJS) $(LIBS)
|
||||
|
||||
mke2fs.static: $(MKE2FS_OBJS) $(DEPLIBS)
|
||||
$(CC) $(LDFLAGS) -static -o mke2fs.static $(MKE2FS_OBJS) $(LIBS)
|
||||
|
||||
chattr: $(CHATTR_OBJS) $(DEPLIBS)
|
||||
$(CC) $(LDFLAGS) -o chattr $(CHATTR_OBJS) $(LIBS)
|
||||
|
||||
lsattr: $(LSATTR_OBJS) $(DEPLIBS)
|
||||
$(CC) $(LDFLAGS) -o lsattr $(LSATTR_OBJS) $(LIBS)
|
||||
|
||||
dumpe2fs: $(DUMPE2FS_OBJS) $(DEPLIBS)
|
||||
$(CC) $(LDFLAGS) -o dumpe2fs $(DUMPE2FS_OBJS) $(LIBS)
|
||||
|
||||
badblocks: $(BADBLOCKS_OBJS) $(DEPLIBS)
|
||||
$(CC) $(LDFLAGS) -o badblocks $(BADBLOCKS_OBJS) $(LIBS)
|
||||
|
||||
install:: $(SPROGS) $(UPROGS)
|
||||
for i in $(SPROGS); do \
|
||||
$(INSTALLBIN) $$i $(SBINDIR)/$$i; \
|
||||
done
|
||||
for i in $(USPROGS); do \
|
||||
$(INSTALLBIN) $$i $(USRSBINDIR)/$$i; \
|
||||
done
|
||||
ln -sf mke2fs $(SBINDIR)/mkfs.ext2
|
||||
for i in $(UPROGS); do \
|
||||
$(INSTALLBIN) $$i $(USRBINDIR)/$$i; \
|
||||
done
|
||||
|
||||
install:: $(SMANPAGES) $(UMANPAGES)
|
||||
for i in $(SMANPAGES); do \
|
||||
$(INSTALLMAN) $$i $(SMANDIR)/$$i; \
|
||||
done
|
||||
for i in $(UMANPAGES); do \
|
||||
$(INSTALLMAN) $$i $(UMANDIR)/$$i; \
|
||||
done
|
||||
|
||||
install-tree:: $(SPROGS) $(UPROGS)
|
||||
for i in $(SPROGS) $(UPROGS); do \
|
||||
rm -f ../bin/$$i; \
|
||||
cp $$i ../bin; \
|
||||
strip ../bin/$$i; \
|
||||
chmod 555 ../bin/$$i; \
|
||||
done
|
||||
ln -sf mke2fs ../bin/mkfs.ext2
|
||||
|
||||
clean:
|
||||
rm -f $(SPROGS) $(USPROGS) $(UPROGS) mke2fs.static \
|
||||
\#* *.s *.o *.a *~ core
|
||||
|
||||
really-clean: clean
|
||||
rm -f .depend
|
||||
|
||||
dep depend .depend:
|
||||
$(CPP) $(CFLAGS) -M *.c >.depend
|
||||
|
||||
include .depend
|
|
@ -0,0 +1,148 @@
|
|||
#
|
||||
# Standard e2fsprogs prologue....
|
||||
#
|
||||
|
||||
srcdir = @srcdir@
|
||||
top_srcdir = @top_srcdir@
|
||||
VPATH = @srcdir@
|
||||
top_builddir = ..
|
||||
INSTALL = @INSTALL@
|
||||
|
||||
@MCONFIG@
|
||||
|
||||
SPROGS= mke2fs badblocks tune2fs dumpe2fs fsck
|
||||
USPROGS= mklost+found
|
||||
SMANPAGES= tune2fs.8 mklost+found.8 mke2fs.8 dumpe2fs.8 badblocks.8 fsck.8
|
||||
|
||||
UPROGS= chattr lsattr
|
||||
UMANPAGES= chattr.1 lsattr.1
|
||||
|
||||
TUNE2FS_OBJS= tune2fs.o
|
||||
MKLPF_OBJS= mklost+found.o
|
||||
MKE2FS_OBJS= mke2fs.o
|
||||
CHATTR_OBJS= chattr.o
|
||||
LSATTR_OBJS= lsattr.o
|
||||
DUMPE2FS_OBJS= dumpe2fs.o
|
||||
BADBLOCKS_OBJS= badblocks.o
|
||||
FSCK_OBJS= fsck.o
|
||||
|
||||
SRCS= $(srcdir)/tune2fs.c $(srcdir)/mklost+found.c $(srcdir)/mke2fs.c \
|
||||
$(srcdir)/chattr.c $(srcdir)/lsattr.c $(srcdir)/dumpe2fs.c \
|
||||
$(srcdir)/badblocks.c $(srcdir)/fsck.c
|
||||
|
||||
LIBS= -L../lib -lext2fs -le2p -lcom_err
|
||||
DEPLIBS= ../lib/libext2fs.a ../lib/libe2p.a ../lib/libcom_err.a
|
||||
|
||||
.c.o:
|
||||
$(CC) -c $(CFLAGS) $< -o $@
|
||||
|
||||
all:: $(SPROGS) $(UPROGS) $(USPROGS)
|
||||
|
||||
tune2fs: $(TUNE2FS_OBJS) $(DEPLIBS)
|
||||
$(CC) $(LDFLAGS) -o tune2fs $(TUNE2FS_OBJS) $(LIBS)
|
||||
|
||||
mklost+found: $(MKLPF_OBJS)
|
||||
$(CC) $(LDFLAGS) -o mklost+found $(MKLPF_OBJS)
|
||||
|
||||
mke2fs: $(MKE2FS_OBJS) $(DEPLIBS)
|
||||
$(CC) $(LDFLAGS) -o mke2fs $(MKE2FS_OBJS) $(LIBS)
|
||||
|
||||
mke2fs.static: $(MKE2FS_OBJS) $(DEPLIBS)
|
||||
$(CC) $(LDFLAGS) -static -o mke2fs.static $(MKE2FS_OBJS) $(LIBS)
|
||||
|
||||
chattr: $(CHATTR_OBJS) $(DEPLIBS)
|
||||
$(CC) $(LDFLAGS) -o chattr $(CHATTR_OBJS) $(LIBS)
|
||||
|
||||
lsattr: $(LSATTR_OBJS) $(DEPLIBS)
|
||||
$(CC) $(LDFLAGS) -o lsattr $(LSATTR_OBJS) $(LIBS)
|
||||
|
||||
dumpe2fs: $(DUMPE2FS_OBJS) $(DEPLIBS)
|
||||
$(CC) $(LDFLAGS) -o dumpe2fs $(DUMPE2FS_OBJS) $(LIBS)
|
||||
|
||||
fsck: $(FSCK_OBJS) $(DEPLIBS)
|
||||
$(CC) $(LDFLAGS) -o fsck $(FSCK_OBJS) $(LIBS)
|
||||
|
||||
badblocks: $(BADBLOCKS_OBJS) $(DEPLIBS)
|
||||
$(CC) $(LDFLAGS) -o badblocks $(BADBLOCKS_OBJS) $(LIBS)
|
||||
|
||||
installdirs:
|
||||
$(top_srcdir)/mkinstalldirs $(DESTDIR)$(bindir) $(DESTDIR)$(sbindir) \
|
||||
$(DESTDIR)$(ubindir) $(DESTDIR)$(man1dir) \
|
||||
$(DESTDIR)$(cat1dir) $(DESTDIR)$(man8dir) $(DESTDIR)$(cat8dir)
|
||||
|
||||
install: all $(SMANPAGES) $(UMANPAGES) installdirs
|
||||
for i in $(SPROGS); do \
|
||||
$(INSTALL_PROGRAM) $$i $(DESTDIR)$(sbindir)/$$i; \
|
||||
$(STRIP) $(DESTDIR)$(sbindir)/$$i; \
|
||||
done
|
||||
for i in $(USPROGS); do \
|
||||
$(INSTALL_PROGRAM) $$i $(DESTDIR)$(usbindir)/$$i; \
|
||||
$(STRIP) $(DESTDIR)$(usbindir)/$$i; \
|
||||
done
|
||||
$(LN) -f $(DESTDIR)$(sbindir)/mke2fs $(DESTDIR)$(sbindir)/mkfs.ext2
|
||||
for i in $(UPROGS); do \
|
||||
$(INSTALL_PROGRAM) $$i $(DESTDIR)$(ubindir)/$$i; \
|
||||
$(STRIP) $(DESTDIR)$(ubindir)/$$i; \
|
||||
done
|
||||
for i in $(SMANPAGES); do \
|
||||
$(INSTALL_DATA) $(srcdir)/$$i $(DESTDIR)$(man8dir)/$$i; \
|
||||
done
|
||||
for i in $(UMANPAGES); do \
|
||||
$(INSTALL_DATA) $(srcdir)/$$i $(DESTDIR)$(man1dir)/$$i; \
|
||||
done
|
||||
|
||||
uninstall:
|
||||
for i in $(SPROGS); do \
|
||||
$(RM) -f $(sbindir)/$$i; \
|
||||
done
|
||||
for i in $(USPROGS); do \
|
||||
$(RM) -f $(usbindir)/$$i; \
|
||||
done
|
||||
$(RM) -f $(sbindir)/mkfs.ext2
|
||||
for i in $(UPROGS); do \
|
||||
$(RM) -f $(ubindir)/$$i; \
|
||||
done
|
||||
for i in $(SMANPAGES); do \
|
||||
$(RM) -f $(man8dir)/$$i; \
|
||||
done
|
||||
for i in $(UMANPAGES); do \
|
||||
$(RM) -f $(man1dir)/$$i; \
|
||||
done
|
||||
|
||||
clean:
|
||||
$(RM) -f $(SPROGS) $(USPROGS) $(UPROGS) mke2fs.static \
|
||||
\#* *.s *.o *.a *~ core
|
||||
mostlyclean: clean
|
||||
distclean: clean
|
||||
$(RM) -f .depend Makefile
|
||||
|
||||
# +++ Dependency line eater +++
|
||||
#
|
||||
# Makefile dependencies follow. This must be the last section in
|
||||
# the Makefile.in file
|
||||
#
|
||||
tune2fs.o : $(srcdir)/tune2fs.c \
|
||||
$(top_srcdir)/lib/ext2fs/ext2fs.h $(top_srcdir)/lib/et/com_err.h \
|
||||
$(top_srcdir)/lib/ext2fs/io.h $(top_builddir)/lib/ext2fs/ext2_err.h $(top_srcdir)/lib/ext2fs/bitops.h $(top_srcdir)/lib/e2p/e2p.h \
|
||||
$(srcdir)/../version.h
|
||||
mklost+found.o : $(srcdir)/mklost+found.c \
|
||||
$(srcdir)/../version.h
|
||||
mke2fs.o : $(srcdir)/mke2fs.c \
|
||||
$(top_srcdir)/lib/et/com_err.h $(top_srcdir)/lib/ext2fs/ext2fs.h \
|
||||
$(top_srcdir)/lib/ext2fs/io.h $(top_builddir)/lib/ext2fs/ext2_err.h $(top_srcdir)/lib/ext2fs/bitops.h $(srcdir)/../version.h
|
||||
chattr.o : $(srcdir)/chattr.c \
|
||||
$(top_srcdir)/lib/et/com_err.h $(top_srcdir)/lib/e2p/e2p.h \
|
||||
$(srcdir)/../version.h
|
||||
lsattr.o : $(srcdir)/lsattr.c \
|
||||
$(top_srcdir)/lib/et/com_err.h $(top_srcdir)/lib/e2p/e2p.h \
|
||||
$(srcdir)/../version.h
|
||||
dumpe2fs.o : $(srcdir)/dumpe2fs.c \
|
||||
$(top_srcdir)/lib/ext2fs/ext2fs.h $(top_srcdir)/lib/et/com_err.h \
|
||||
$(top_srcdir)/lib/ext2fs/io.h $(top_builddir)/lib/ext2fs/ext2_err.h $(top_srcdir)/lib/ext2fs/bitops.h $(top_srcdir)/lib/e2p/e2p.h \
|
||||
$(srcdir)/../version.h
|
||||
badblocks.o : $(srcdir)/badblocks.c \
|
||||
$(top_srcdir)/lib/et/com_err.h $(top_srcdir)/lib/ext2fs/io.h
|
||||
fsck.o : $(srcdir)/fsck.c \
|
||||
$(srcdir)/../version.h \
|
||||
$(srcdir)/fsck.h
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
.\" -*- nroff -*-
|
||||
.TH BADBLOCKS 8 "November 1994" "Version 0.5b"
|
||||
.TH BADBLOCKS 8 "August 1995" "Version 0.5c"
|
||||
.SH NAME
|
||||
badblocks \- search a device for bad blocks
|
||||
.SH SYNOPSIS
|
||||
|
|
|
@ -20,7 +20,9 @@
|
|||
|
||||
#include <errno.h>
|
||||
#include <fcntl.h>
|
||||
#ifdef HAVE_GETOPT_H
|
||||
#include <getopt.h>
|
||||
#endif
|
||||
#include <signal.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
@ -30,8 +32,10 @@
|
|||
#include <sys/ioctl.h>
|
||||
#include <sys/types.h>
|
||||
|
||||
#if HAVE_LINUX_FS_H
|
||||
#include <linux/fd.h>
|
||||
#include <linux/fs.h>
|
||||
#endif
|
||||
|
||||
#include "et/com_err.h"
|
||||
#include "ext2fs/io.h"
|
||||
|
@ -88,6 +92,26 @@ static void alarm_intr (int alnum)
|
|||
fflush (stderr);
|
||||
}
|
||||
|
||||
static void flush_bufs (int dev, int sync)
|
||||
{
|
||||
if (v_flag
|
||||
#if !defined (BLKFLSBUF) && !defined (FDFLUSH)
|
||||
&& sync
|
||||
#endif
|
||||
)
|
||||
fprintf (stderr, "Flushing buffers\n");
|
||||
|
||||
if (sync && fsync (dev) == -1)
|
||||
com_err (program_name, errno, "during fsync");
|
||||
|
||||
#ifdef BLKLSBUF
|
||||
ioctl (dev, BLKFLSBUF, 0); /* In case this is a HD */
|
||||
#endif
|
||||
#ifdef FDFLUSH
|
||||
ioctl (dev, FDFLUSH, 0); /* In case this is floppy */
|
||||
#endif
|
||||
}
|
||||
|
||||
static void test_ro (int dev, unsigned long blocks_count,
|
||||
unsigned long block_size, FILE * out,
|
||||
unsigned long from_count)
|
||||
|
@ -103,11 +127,7 @@ static void test_ro (int dev, unsigned long blocks_count,
|
|||
com_err (program_name, ENOMEM, "while allocating buffers");
|
||||
exit (1);
|
||||
}
|
||||
|
||||
if (v_flag)
|
||||
fprintf (stderr, "Flushing buffers\n");
|
||||
ioctl (dev, BLKFLSBUF, 0); /* In case this is a HD */
|
||||
ioctl (dev, FDFLUSH, 0); /* In case this is floppy */
|
||||
flush_bufs (dev, 0);
|
||||
if (v_flag) {
|
||||
fprintf (stderr,
|
||||
"Checking for bad blocks in read-only mode\n");
|
||||
|
@ -158,10 +178,8 @@ static void test_rw (int dev, unsigned long blocks_count,
|
|||
exit (1);
|
||||
}
|
||||
|
||||
if (v_flag)
|
||||
fprintf (stderr, "Flushing buffers\n");
|
||||
ioctl (dev, BLKFLSBUF, 0); /* In case this is a HD */
|
||||
ioctl (dev, FDFLUSH, 0); /* In case this is floppy */
|
||||
flush_bufs (dev, 0);
|
||||
|
||||
if (v_flag)
|
||||
fprintf (stderr, "Checking for bad blocks in read-write mode\n");
|
||||
for (i = 0; i < sizeof (pattern); i++)
|
||||
|
@ -190,12 +208,7 @@ static void test_rw (int dev, unsigned long blocks_count,
|
|||
alarm (0);
|
||||
if (s_flag | v_flag)
|
||||
fprintf(stderr, "done \n");
|
||||
if (v_flag)
|
||||
fprintf (stderr, "Flushing buffers\n");
|
||||
if (fsync (dev) == -1)
|
||||
com_err (program_name, errno, "during fsync");
|
||||
ioctl (dev, BLKFLSBUF, 0); /* In case this is a HD */
|
||||
ioctl (dev, FDFLUSH, 0); /* In case this is floppy */
|
||||
flush_bufs (dev, 1);
|
||||
if (s_flag | v_flag)
|
||||
fprintf (stderr, "Reading and comparing: ");
|
||||
num_blocks = blocks_count;
|
||||
|
@ -221,10 +234,7 @@ static void test_rw (int dev, unsigned long blocks_count,
|
|||
alarm (0);
|
||||
if (s_flag | v_flag)
|
||||
fprintf(stderr, "done \n");
|
||||
if (v_flag)
|
||||
fprintf (stderr, "Flushing buffers\n");
|
||||
ioctl (dev, BLKFLSBUF, 0); /* In case this is a HD */
|
||||
ioctl (dev, FDFLUSH, 0); /* In case this is floppy */
|
||||
flush_bufs (dev, 0);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
.\" -*- nroff -*-
|
||||
.TH CHATTR 1 "November 1994" "Version 0.5b"
|
||||
.TH CHATTR 1 "October 1995" "Version 0.5c"
|
||||
.SH NAME
|
||||
chattr \- change file attributes on a Linux second extended file system
|
||||
.SH SYNOPSIS
|
||||
|
|
|
@ -16,12 +16,18 @@
|
|||
* 94/02/27 - Integrated in Ted's distribution
|
||||
*/
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <dirent.h>
|
||||
#include <fcntl.h>
|
||||
#ifdef HAVE_GETOPT_H
|
||||
#include <getopt.h>
|
||||
#endif
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <unistd.h>
|
||||
#ifdef HAVE_ERRNO_H
|
||||
#include <errno.h>
|
||||
#endif
|
||||
#include <sys/param.h>
|
||||
#include <sys/stat.h>
|
||||
#include <linux/ext2_fs.h>
|
||||
|
@ -264,12 +270,17 @@ static void change_attributes (const char * name)
|
|||
|
||||
static int chattr_dir_proc (const char * dir_name, struct dirent * de, void * private)
|
||||
{
|
||||
char path[MAXPATHLEN];
|
||||
|
||||
if (strcmp (de->d_name, ".") && strcmp (de->d_name, ".."))
|
||||
{
|
||||
char *path;
|
||||
|
||||
path = malloc(strlen (dir_name) + 1 + strlen (de->d_name) + 1);
|
||||
if (!path)
|
||||
fatal_error("Couldn't allocate path variable "
|
||||
"in chattr_dir_proc", 1);
|
||||
sprintf (path, "%s/%s", dir_name, de->d_name);
|
||||
change_attributes (path);
|
||||
free(path);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
|
|
@ -1,5 +1,8 @@
|
|||
.TH DUMPE2FS 8 "November 1994" "Version 0.5b"
|
||||
|
||||
.\" -*- nroff -*-
|
||||
.\" Copyright 1993, 1994, 1995 by Theodore Ts'o. All Rights Reserved.
|
||||
.\" This file may be copied under the terms of the GNU Public License.
|
||||
.\"
|
||||
.TH DUMPE2FS 8 "October 1995" "Version 0.5c"
|
||||
.SH NAME
|
||||
dumpe2fs \- dump filesystem information
|
||||
.SH SYNOPSIS
|
||||
|
|
|
@ -16,7 +16,9 @@
|
|||
* 94/02/27 - Ported to use the ext2fs library
|
||||
*/
|
||||
|
||||
#ifdef HAVE_GETOPT_H
|
||||
#include <getopt.h>
|
||||
#endif
|
||||
#include <fcntl.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
@ -78,8 +80,8 @@ static void list_desc (ext2_filsys fs)
|
|||
for (i = 0; i < fs->group_desc_count; i++)
|
||||
{
|
||||
printf ("Group %lu:\n", i);
|
||||
printf (" Block bitmap at %lu, Inode bitmap at %lu, "
|
||||
"Inode table at %lu\n",
|
||||
printf (" Block bitmap at %u, Inode bitmap at %u, "
|
||||
"Inode table at %u\n",
|
||||
fs->group_desc[i].bg_block_bitmap,
|
||||
fs->group_desc[i].bg_inode_bitmap,
|
||||
fs->group_desc[i].bg_inode_table);
|
||||
|
@ -118,9 +120,9 @@ static void list_bad_blocks(ext2_filsys fs)
|
|||
exit(1);
|
||||
}
|
||||
if (badblocks_list_iterate(bb_iter, &blk))
|
||||
printf("Bad blocks: %ld", blk);
|
||||
printf("Bad blocks: %d", blk);
|
||||
while (badblocks_list_iterate(bb_iter, &blk))
|
||||
printf(", %ld", blk);
|
||||
printf(", %d", blk);
|
||||
badblocks_list_iterate_end(bb_iter);
|
||||
printf("\n");
|
||||
}
|
||||
|
@ -144,7 +146,7 @@ static void dump_bad_blocks(ext2_filsys fs)
|
|||
exit(1);
|
||||
}
|
||||
while (badblocks_list_iterate(bb_iter, &blk))
|
||||
printf("%ld\n", blk);
|
||||
printf("%d\n", blk);
|
||||
badblocks_list_iterate_end(bb_iter);
|
||||
}
|
||||
|
||||
|
|
|
@ -1,5 +1,8 @@
|
|||
.\" -*- nroff -*-
|
||||
.TH FSCK 8 "November 1994" "Version 0.5b"
|
||||
.\" Copyright 1993, 1994, 1995 by Theodore Ts'o. All Rights Reserved.
|
||||
.\" This file may be copied under the terms of the GNU Public License.
|
||||
.\"
|
||||
.TH FSCK 8 "October 1995" "Version 0.5c"
|
||||
.SH NAME
|
||||
fsck \- check and repair a Linux file system
|
||||
.SH SYNOPSIS
|
||||
|
|
80
misc/fsck.c
80
misc/fsck.c
|
@ -26,15 +26,28 @@
|
|||
#include <sys/wait.h>
|
||||
#include <sys/signal.h>
|
||||
#include <sys/stat.h>
|
||||
#include <errno.h>
|
||||
#include <limits.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#if HAVE_STDLIB_H
|
||||
#include <stdlib.h>
|
||||
#endif
|
||||
#if HAVE_ERRNO_H
|
||||
#include <errno.h>
|
||||
#endif
|
||||
#if HAVE_MNTENT_H
|
||||
#include <mntent.h>
|
||||
#endif
|
||||
#if HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
#if HAVE_ERRNO_H
|
||||
#include <errno.h>
|
||||
#endif
|
||||
#include <malloc.h>
|
||||
#ifdef HAVE_GETOPT_H
|
||||
#include <getopt.h>
|
||||
#endif
|
||||
|
||||
#include "../version.h"
|
||||
#include "fsck.h"
|
||||
|
@ -114,9 +127,15 @@ char *progname;
|
|||
char *fstype = NULL;
|
||||
struct fs_info *filesys_info;
|
||||
struct fsck_instance *instance_list;
|
||||
static char fsck_path[PATH_MAX + 32];
|
||||
const char *fsck_prefix_path = "/sbin:/sbin/fs.d:/sbin/fs:/etc/fs:/etc";
|
||||
char *fsck_path = 0;
|
||||
static int ignore(struct fs_info *);
|
||||
|
||||
#ifdef HAVE_STRDUP
|
||||
#ifdef _POSIX_SOURCE
|
||||
extern char *strdup(const char *s);
|
||||
#endif
|
||||
#else
|
||||
static char *strdup(const char *s)
|
||||
{
|
||||
char *ret;
|
||||
|
@ -126,6 +145,7 @@ static char *strdup(const char *s)
|
|||
strcpy(ret, s);
|
||||
return ret;
|
||||
}
|
||||
#endif
|
||||
|
||||
static void free_instance(struct fsck_instance *i)
|
||||
{
|
||||
|
@ -142,9 +162,11 @@ static void free_instance(struct fsck_instance *i)
|
|||
*/
|
||||
static void load_fs_info(NOARGS)
|
||||
{
|
||||
#if HAVE_MNTENT_H
|
||||
FILE *mntfile;
|
||||
struct mntent *mp;
|
||||
struct fs_info *fs;
|
||||
struct fs_info *fs_last = NULL;
|
||||
int old_fstab = 1;
|
||||
|
||||
filesys_info = NULL;
|
||||
|
@ -164,8 +186,12 @@ static void load_fs_info(NOARGS)
|
|||
fs->opts = strdup(mp->mnt_opts);
|
||||
fs->freq = mp->mnt_freq;
|
||||
fs->passno = mp->mnt_passno;
|
||||
fs->next = filesys_info;
|
||||
filesys_info = fs;
|
||||
fs->next = NULL;
|
||||
if (!filesys_info)
|
||||
filesys_info = fs;
|
||||
else
|
||||
fs_last->next = fs;
|
||||
fs_last = fs;
|
||||
if (fs->passno)
|
||||
old_fstab = 0;
|
||||
}
|
||||
|
@ -184,6 +210,9 @@ static void load_fs_info(NOARGS)
|
|||
fs->passno = 1;
|
||||
}
|
||||
}
|
||||
#else
|
||||
filesys_info = NULL;
|
||||
#endif /* HAVE_MNTENT_H */
|
||||
}
|
||||
|
||||
/* Lookup filesys in /etc/fstab and return the corresponding entry. */
|
||||
|
@ -366,21 +395,30 @@ static int wait_all(NOARGS)
|
|||
|
||||
/*
|
||||
* Run the fsck program on a particular device
|
||||
*
|
||||
* If the type is specified using -t, and it isn't prefixed with "no"
|
||||
* (as in "noext2") and only one filesystem type is specified, then
|
||||
* use that type regardless of what is specified in /etc/fstab.
|
||||
*
|
||||
* If the type isn't specified by the user, then use either the type
|
||||
* specified in /etc/fstab, or DEFAULT_FSTYPE.
|
||||
*/
|
||||
static void fsck_device(char *device)
|
||||
{
|
||||
const char *type;
|
||||
const char *type = 0;
|
||||
struct fs_info *fsent;
|
||||
int retval;
|
||||
char prog[80];
|
||||
|
||||
if (fstype && strncmp(type, "no", 2) && !strchr(type, ','))
|
||||
type = fstype;
|
||||
|
||||
if ((fsent = lookup(device))) {
|
||||
device = fsent->device;
|
||||
type = fsent->type;
|
||||
} else if (fstype && strncmp(fstype, "no", 2) &&
|
||||
!strchr(fstype, ','))
|
||||
type = fstype;
|
||||
else
|
||||
if (!type)
|
||||
type = fsent->type;
|
||||
}
|
||||
if (!type)
|
||||
type = DEFAULT_FSTYPE;
|
||||
|
||||
sprintf(prog, "fsck.%s", type);
|
||||
|
@ -699,9 +737,9 @@ static void PRS(int argc, char *argv[])
|
|||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
char *oldpath;
|
||||
int status = 0;
|
||||
int i;
|
||||
int status = 0;
|
||||
char *oldpath = getenv("PATH");
|
||||
|
||||
PRS(argc, argv);
|
||||
|
||||
|
@ -710,10 +748,16 @@ int main(int argc, char *argv[])
|
|||
E2FSPROGS_VERSION, E2FSPROGS_DATE);
|
||||
|
||||
/* Update our search path to include uncommon directories. */
|
||||
strcpy(fsck_path, "/sbin:/sbin/fs.d:/sbin/fs:/etc/fs:/etc:");
|
||||
if ((oldpath = getenv("PATH")) != NULL)
|
||||
strcat(fsck_path, oldpath);
|
||||
|
||||
if (oldpath) {
|
||||
fsck_path = malloc (strlen (fsck_prefix_path) + 1 +
|
||||
strlen (oldpath) + 1);
|
||||
strcpy (fsck_path, fsck_prefix_path);
|
||||
strcat (fsck_path, ":");
|
||||
strcat (fsck_path, oldpath);
|
||||
} else {
|
||||
fsck_path = strdup(oldpath);
|
||||
}
|
||||
|
||||
/* If -A was specified ("check all"), do that! */
|
||||
if (doall)
|
||||
return check_all();
|
||||
|
@ -730,7 +774,7 @@ int main(int argc, char *argv[])
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
status |= wait_all();
|
||||
free(fsck_path);
|
||||
return status;
|
||||
}
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
.\" -*- nroff -*-
|
||||
.TH LSATTR 1 "November 1994" "Version 0.5b"
|
||||
.TH LSATTR 1 "October 1995" "Version 0.5c"
|
||||
.SH NAME
|
||||
lsattr \- list file attributes on a Linux second extended file system
|
||||
.SH SYNOPSIS
|
||||
|
@ -12,7 +12,7 @@ files...
|
|||
]
|
||||
.SH DESCRIPTION
|
||||
.B lsattr
|
||||
lists the files attributes on an second extended file system.
|
||||
lists the file attributes on a second extended file system.
|
||||
.SH OPTIONS
|
||||
.TP
|
||||
.I -R
|
||||
|
|
|
@ -16,12 +16,21 @@
|
|||
* 94/02/27 - Integrated in Ted's distribution
|
||||
*/
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <dirent.h>
|
||||
#ifdef HAVE_ERRNO_H
|
||||
#include <errno.h>
|
||||
#endif
|
||||
#include <fcntl.h>
|
||||
#ifdef HAVE_GETOPT_H
|
||||
#include <getopt.h>
|
||||
#else
|
||||
extern int optind;
|
||||
extern char *optarg;
|
||||
#endif
|
||||
#include <stdio.h>
|
||||
#include <unistd.h>
|
||||
#include <stdlib.h>
|
||||
#include <sys/param.h>
|
||||
#include <sys/stat.h>
|
||||
#include <linux/ext2_fs.h>
|
||||
|
@ -84,26 +93,28 @@ static void lsattr_args (const char * name)
|
|||
|
||||
static int lsattr_dir_proc (const char * dir_name, struct dirent * de, void * private)
|
||||
{
|
||||
char path [MAXPATHLEN];
|
||||
struct stat st;
|
||||
char *path;
|
||||
|
||||
path = malloc(strlen (dir_name) + 1 + strlen (de->d_name) + 1);
|
||||
|
||||
sprintf (path, "%s/%s", dir_name, de->d_name);
|
||||
if (lstat (path, &st) == -1)
|
||||
perror (path);
|
||||
else
|
||||
{
|
||||
if (de->d_name[0] != '.' || all)
|
||||
{
|
||||
else {
|
||||
if (de->d_name[0] != '.' || all) {
|
||||
list_attributes (path);
|
||||
if (S_ISDIR(st.st_mode) && recursive &&
|
||||
strcmp (de->d_name, ".") && strcmp (de->d_name, ".."))
|
||||
{
|
||||
strcmp(de->d_name, ".") &&
|
||||
strcmp(de->d_name, "..")) {
|
||||
printf ("\n%s:\n", path);
|
||||
iterate_on_dir (path, lsattr_dir_proc, (void *) NULL);
|
||||
iterate_on_dir (path, lsattr_dir_proc,
|
||||
(void *) NULL);
|
||||
printf ("\n");
|
||||
}
|
||||
}
|
||||
}
|
||||
free(path);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
|
@ -1,5 +1,8 @@
|
|||
.\" -*- nroff -*-
|
||||
.TH MKE2FS 8 "November 1994" "Version 0.5b"
|
||||
.\" Copyright 1993, 1994, 1995 by Theodore Ts'o. All Rights Reserved.
|
||||
.\" This file may be copied under the terms of the GNU Public License.
|
||||
.\"
|
||||
.TH MKE2FS 8 "October 1995" "Version 0.5c"
|
||||
.SH NAME
|
||||
mke2fs \- create a Linux second extended file system
|
||||
.SH SYNOPSIS
|
||||
|
@ -106,7 +109,7 @@ is no gaurantee that any data will be salvageable.
|
|||
.SH AUTHOR
|
||||
This version of
|
||||
.B mke2fs
|
||||
has been written by Theodore T'so <tytso@mit.edu>.
|
||||
has been written by Theodore Ts'o <tytso@mit.edu>.
|
||||
.SH BUGS
|
||||
.B mke2fs
|
||||
accepts the -f option but currently ignores it because the second
|
||||
|
|
151
misc/mke2fs.c
151
misc/mke2fs.c
|
@ -11,20 +11,35 @@
|
|||
* enforced (but it's not much fun on a character device :-).
|
||||
*/
|
||||
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <fcntl.h>
|
||||
#include <ctype.h>
|
||||
#include <termios.h>
|
||||
#include <time.h>
|
||||
#ifdef HAVE_GETOPT_H
|
||||
#include <getopt.h>
|
||||
#endif
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
#ifdef HAVE_STDLIB_H
|
||||
#include <stdlib.h>
|
||||
#endif
|
||||
#ifdef HAVE_ERRNO_H
|
||||
#include <errno.h>
|
||||
#endif
|
||||
#ifdef HAVE_MNTENT_H
|
||||
#include <mntent.h>
|
||||
#endif
|
||||
#include <malloc.h>
|
||||
#include <sys/ioctl.h>
|
||||
#include <sys/types.h>
|
||||
#include <stdio.h>
|
||||
|
||||
#ifdef HAVE_LINUX_FS_H
|
||||
#include <linux/fs.h>
|
||||
#endif
|
||||
#include <linux/ext2_fs.h>
|
||||
|
||||
#include "et/com_err.h"
|
||||
|
@ -71,72 +86,21 @@ static int log2(int arg)
|
|||
return l;
|
||||
}
|
||||
|
||||
static long valid_offset (int fd, ext2_loff_t offset)
|
||||
{
|
||||
char ch;
|
||||
|
||||
if (ext2_llseek (fd, offset, 0) < 0)
|
||||
return 0;
|
||||
if (read (fd, &ch, 1) < 1)
|
||||
return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int count_blocks (int fd)
|
||||
{
|
||||
ext2_loff_t high, low;
|
||||
|
||||
low = 0;
|
||||
for (high = 1; valid_offset (fd, high); high *= 2)
|
||||
low = high;
|
||||
while (low < high - 1)
|
||||
{
|
||||
const ext2_loff_t mid = (low + high) / 2;
|
||||
|
||||
if (valid_offset (fd, mid))
|
||||
low = mid;
|
||||
else
|
||||
high = mid;
|
||||
}
|
||||
valid_offset (fd, 0);
|
||||
return (low + 1) / 1024;
|
||||
}
|
||||
|
||||
static int get_size(const char *file)
|
||||
{
|
||||
int fd;
|
||||
int size;
|
||||
|
||||
fd = open(file, O_RDWR);
|
||||
if (fd < 0) {
|
||||
com_err("open", errno, "while trying to determine size of %s",
|
||||
file);
|
||||
exit(1);
|
||||
}
|
||||
if (ioctl(fd, BLKGETSIZE, &size) >= 0) {
|
||||
close(fd);
|
||||
return size / (EXT2_BLOCK_SIZE(¶m) / 512);
|
||||
}
|
||||
|
||||
size = count_blocks(fd);
|
||||
close(fd);
|
||||
return size;
|
||||
}
|
||||
|
||||
static void check_mount(NOARGS)
|
||||
{
|
||||
FILE * f;
|
||||
struct mntent * mnt;
|
||||
errcode_t retval;
|
||||
int mount_flags;
|
||||
|
||||
if ((f = setmntent (MOUNTED, "r")) == NULL)
|
||||
retval = ext2fs_check_if_mounted(device_name, &mount_flags);
|
||||
if (retval) {
|
||||
com_err("ext2fs_check_if_mount", retval,
|
||||
"while determining whether %s is mounted.",
|
||||
device_name);
|
||||
return;
|
||||
while ((mnt = getmntent (f)) != NULL)
|
||||
if (strcmp (device_name, mnt->mnt_fsname) == 0)
|
||||
break;
|
||||
endmntent (f);
|
||||
if (!mnt)
|
||||
}
|
||||
if (!(mount_flags & EXT2_MF_MOUNTED))
|
||||
return;
|
||||
|
||||
|
||||
fprintf(stderr, "%s is mounted; will not make a filesystem here!\n",
|
||||
device_name);
|
||||
exit(1);
|
||||
|
@ -147,7 +111,7 @@ static void check_mount(NOARGS)
|
|||
*/
|
||||
static void invalid_block(ext2_filsys fs, blk_t blk)
|
||||
{
|
||||
printf("Bad block %lu out of range; ignored.\n", blk);
|
||||
printf("Bad block %u out of range; ignored.\n", blk);
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -184,7 +148,7 @@ static void test_disk(ext2_filsys fs, badblocks_list *bb_list)
|
|||
errcode_t retval;
|
||||
char buf[1024];
|
||||
|
||||
sprintf(buf, "badblocks %s%s %ld", quiet ? "" : "-s ",
|
||||
sprintf(buf, "badblocks %s%s %d", quiet ? "" : "-s ",
|
||||
fs->device_name,
|
||||
fs->super->s_blocks_count);
|
||||
if (verbose)
|
||||
|
@ -227,7 +191,7 @@ static void handle_bad_blocks(ext2_filsys fs, badblocks_list bb_list)
|
|||
if (badblocks_list_test(bb_list, i)) {
|
||||
fprintf(stderr, "Block %d in primary superblock/group "
|
||||
"descriptor area bad.\n", i);
|
||||
fprintf(stderr, "Blocks %ld through %d must be good "
|
||||
fprintf(stderr, "Blocks %d through %d must be good "
|
||||
"in order to build a filesystem.\n",
|
||||
fs->super->s_first_data_block, must_be_good);
|
||||
fprintf(stderr, "Aborting....\n");
|
||||
|
@ -250,7 +214,7 @@ static void handle_bad_blocks(ext2_filsys fs, badblocks_list bb_list)
|
|||
j)) {
|
||||
if (!group_bad)
|
||||
fprintf(stderr,
|
||||
"Warning: the backup superblock/group descriptors at block %ld contain\n"
|
||||
"Warning: the backup superblock/group descriptors at block %d contain\n"
|
||||
" bad blocks.\n\n",
|
||||
group_block);
|
||||
group_bad++;
|
||||
|
@ -304,7 +268,7 @@ static void new_table_block(ext2_filsys fs, blk_t first_block,
|
|||
retval = io_channel_write_blk(fs->io, blk, count, buf);
|
||||
if (retval)
|
||||
printf("Warning: could not write %d blocks "
|
||||
"starting at %ld for %s: %s\n",
|
||||
"starting at %d for %s: %s\n",
|
||||
count, blk, name,
|
||||
error_message(retval));
|
||||
}
|
||||
|
@ -457,24 +421,24 @@ static void show_stats(ext2_filsys fs)
|
|||
int i, col_left;
|
||||
|
||||
if (param.s_blocks_count != s->s_blocks_count)
|
||||
printf("warning: %ld blocks unused.\n\n",
|
||||
printf("warning: %d blocks unused.\n\n",
|
||||
param.s_blocks_count - s->s_blocks_count);
|
||||
|
||||
printf("%lu inodes, %lu blocks\n", s->s_inodes_count,
|
||||
printf("%u inodes, %u blocks\n", s->s_inodes_count,
|
||||
s->s_blocks_count);
|
||||
printf("%lu blocks (%2.2f%%) reserved for the super user\n",
|
||||
printf("%u blocks (%2.2f%%) reserved for the super user\n",
|
||||
s->s_r_blocks_count,
|
||||
100.0 * s->s_r_blocks_count / s->s_blocks_count);
|
||||
printf("First data block=%lu\n", s->s_first_data_block);
|
||||
printf("Block size=%u (log=%lu)\n", fs->blocksize,
|
||||
printf("First data block=%u\n", s->s_first_data_block);
|
||||
printf("Block size=%u (log=%u)\n", fs->blocksize,
|
||||
s->s_log_block_size);
|
||||
printf("Fragment size=%u (log=%lu)\n", fs->fragsize,
|
||||
printf("Fragment size=%u (log=%u)\n", fs->fragsize,
|
||||
s->s_log_frag_size);
|
||||
printf("%lu block group%s\n", fs->group_desc_count,
|
||||
(fs->group_desc_count > 1) ? "s" : "");
|
||||
printf("%lu blocks per group, %lu fragments per group\n",
|
||||
printf("%u blocks per group, %u fragments per group\n",
|
||||
s->s_blocks_per_group, s->s_frags_per_group);
|
||||
printf("%lu inodes per group\n", s->s_inodes_per_group);
|
||||
printf("%u inodes per group\n", s->s_inodes_per_group);
|
||||
|
||||
if (fs->group_desc_count == 1) {
|
||||
printf("\n");
|
||||
|
@ -490,28 +454,36 @@ static void show_stats(ext2_filsys fs)
|
|||
printf("\n\t");
|
||||
col_left = 8;
|
||||
}
|
||||
printf("%lu", group_block);
|
||||
printf("%u", group_block);
|
||||
if (i != fs->group_desc_count - 1)
|
||||
printf(", ");
|
||||
}
|
||||
printf("\n\n");
|
||||
}
|
||||
|
||||
#define PATH_SET "PATH=/sbin"
|
||||
|
||||
static void PRS(int argc, char *argv[])
|
||||
{
|
||||
char c;
|
||||
int size;
|
||||
char * tmp;
|
||||
char *oldpath;
|
||||
static char newpath[PATH_MAX];
|
||||
int inode_ratio = 4096;
|
||||
int reserved_ratio = 5;
|
||||
errcode_t retval;
|
||||
char *oldpath = getenv("PATH");
|
||||
|
||||
/* Update our PATH to include /sbin */
|
||||
strcpy(newpath, "PATH=/sbin:");
|
||||
if ((oldpath = getenv("PATH")) != NULL)
|
||||
strcat(newpath, oldpath);
|
||||
putenv(newpath);
|
||||
if (oldpath) {
|
||||
char *newpath;
|
||||
|
||||
newpath = malloc(sizeof (PATH_SET) + 1 + strlen (oldpath));
|
||||
strcpy (newpath, PATH_SET);
|
||||
strcat (newpath, ":");
|
||||
strcat (newpath, oldpath);
|
||||
putenv (newpath);
|
||||
} else
|
||||
putenv (PATH_SET);
|
||||
|
||||
setbuf(stdout, NULL);
|
||||
setbuf(stderr, NULL);
|
||||
|
@ -623,10 +595,21 @@ static void PRS(int argc, char *argv[])
|
|||
}
|
||||
if (optind < argc)
|
||||
usage();
|
||||
|
||||
check_mount();
|
||||
|
||||
param.s_log_frag_size = param.s_log_block_size;
|
||||
|
||||
if (!param.s_blocks_count)
|
||||
param.s_blocks_count = get_size(device_name);
|
||||
if (!param.s_blocks_count) {
|
||||
retval = ext2fs_get_device_size(device_name,
|
||||
EXT2_BLOCK_SIZE(¶m),
|
||||
¶m.s_blocks_count);
|
||||
if (retval) {
|
||||
com_err(program_name, 0,
|
||||
"while trying to determine filesystem size");
|
||||
exit(1);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Calculate number of inodes based on the inode ratio
|
||||
|
@ -649,8 +632,6 @@ int main (int argc, char *argv[])
|
|||
|
||||
PRS(argc, argv);
|
||||
|
||||
check_mount();
|
||||
|
||||
/*
|
||||
* Initialize the superblock....
|
||||
*/
|
||||
|
|
|
@ -1,5 +1,8 @@
|
|||
.\" -*- nroff -*-
|
||||
.TH MKLOST+FOUND 8 "November 1994" "Version 0.5b"
|
||||
.\" Copyright 1993, 1994, 1995 by Theodore Ts'o. All Rights Reserved.
|
||||
.\" This file may be copied under the terms of the GNU Public License.
|
||||
.\"
|
||||
.TH MKLOST+FOUND 8 "October 1995" "Version 0.5c"
|
||||
.SH NAME
|
||||
mklost+found \- create a lost+found directory on a mounted Linux
|
||||
second extended file system
|
||||
|
|
|
@ -30,7 +30,7 @@
|
|||
void main (int argc, char ** argv)
|
||||
{
|
||||
char name [EXT2_NAME_LEN];
|
||||
char path [MAXPATHLEN];
|
||||
char path [sizeof (LPF) + 1 + 256];
|
||||
struct stat st;
|
||||
int i, j;
|
||||
int d;
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
.\" Initial revision
|
||||
.\"
|
||||
.\"
|
||||
.TH TUNE2FS 8 "November 1994" "Version 0.5b"
|
||||
.TH TUNE2FS 8 "October 1995" "Version 0.5c"
|
||||
|
||||
.SH NAME
|
||||
tune2fs \- adjust tunable filesystem parameters on second extended filesystems
|
||||
|
@ -98,7 +98,7 @@ has been written by Remy Card <card@masi.ibp.fr>, the developer and maintainer
|
|||
of the ext2 fs.
|
||||
.br
|
||||
.B tune2fs
|
||||
uses the ext2fs library written by Theodore T'so <tytso@mit.edu>.
|
||||
uses the ext2fs library written by Theodore Ts'o <tytso@mit.edu>.
|
||||
.br
|
||||
This manual page was written by Christian Kuhtz <chk@data-hh.Hanse.DE>.
|
||||
.br
|
||||
|
|
|
@ -24,7 +24,9 @@
|
|||
|
||||
#include <fcntl.h>
|
||||
#include <grp.h>
|
||||
#ifdef HAVE_GETOPT_H
|
||||
#include <getopt.h>
|
||||
#endif
|
||||
#include <pwd.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
@ -120,8 +122,10 @@ void main (int argc, char ** argv)
|
|||
gr = getgrnam (optarg);
|
||||
if (gr == NULL)
|
||||
tmp = optarg;
|
||||
else
|
||||
else {
|
||||
resgid = gr->gr_gid;
|
||||
*tmp =0;
|
||||
}
|
||||
}
|
||||
if (*tmp)
|
||||
{
|
||||
|
@ -194,8 +198,10 @@ void main (int argc, char ** argv)
|
|||
pw = getpwnam (optarg);
|
||||
if (pw == NULL)
|
||||
tmp = optarg;
|
||||
else
|
||||
else {
|
||||
resuid = pw->pw_uid;
|
||||
*tmp = 0;
|
||||
}
|
||||
}
|
||||
if (*tmp)
|
||||
{
|
||||
|
|
|
@ -0,0 +1,16 @@
|
|||
Mon Sep 4 23:06:06 1995 Remy Card <card@bbj>
|
||||
|
||||
* Makefile.in (clean, distclean): Use the -f option when removing
|
||||
files.
|
||||
|
||||
Fri Aug 11 10:10:30 1995 Theodore Y. Ts'o <tytso@lurch.mit.edu>
|
||||
|
||||
* test_script: Count up the number of passed and failed tests by
|
||||
tallying the *.ok and *.failed files.
|
||||
|
||||
* run_e2fsck: Create foo.ok and foo.failed files when tests
|
||||
succeed or fail, respectively.
|
||||
|
||||
* test_config (TZ): Set the timezone to be GMT, so that test
|
||||
results are consistent.
|
||||
|
|
@ -0,0 +1,23 @@
|
|||
#
|
||||
# Makefile for the tests directory
|
||||
#
|
||||
|
||||
srcdir = @srcdir@
|
||||
top_srcdir = @top_srcdir@
|
||||
VPATH = @srcdir@
|
||||
top_builddir = ..
|
||||
INSTALL = @INSTALL@
|
||||
|
||||
all:: @DO_TEST_SUITE@
|
||||
|
||||
check::
|
||||
@echo "Running e2fsprogs test suite..."
|
||||
@echo " "
|
||||
@$(srcdir)/test_script $(srcdir)
|
||||
|
||||
clean::
|
||||
$(RM) -f *.log *.new *.failed *.ok test.img
|
||||
|
||||
distclean:: clean
|
||||
$(RM) -f Makefile
|
||||
|
|
@ -0,0 +1,67 @@
|
|||
These images contain various forms of corrupted filesystem which
|
||||
e2fsck will correct. They are used as a regression test for e2fsck.
|
||||
|
||||
The test_script program will automatically run e2fsck against the
|
||||
filesystem images. It will run them two times, and display the exit
|
||||
status for each run. The meaning of the exit status codes are as
|
||||
follows:
|
||||
|
||||
0 No filesystem errors were detected
|
||||
1 Filesystem errors detected, but corrected
|
||||
2 System should be rebooted
|
||||
4 Filesystem errors left uncorrected
|
||||
8 Operational error (generally means internal error,
|
||||
or filesystem error that the e2fsck was not
|
||||
prepared to deal with)
|
||||
16 Usage or syntax error
|
||||
|
||||
During the regression test, the first exit code should be 1, and the
|
||||
second exit code should be 0. In other words, all (with one
|
||||
exception) of the test filesystems in this directory have some sort of
|
||||
filesystem corruption, which e2fsck should fix on the first pass.
|
||||
After the first pass, e2fsck should leave a fully consistent
|
||||
filesystem with no detectable errors found in the second pass. The
|
||||
exception is the okgroup.img filesystem, which contains no errors, and
|
||||
so both exit codes should be 0.
|
||||
|
||||
NOTE: It appears that at least some versions of the original e2fsck do
|
||||
not exit with an exit status code of 1 after correcting filesystem
|
||||
errors. So if you modify the test_script to try running these
|
||||
filesystems against the original e2fsck, you will have to inspect the
|
||||
test_script.log file manually.
|
||||
|
||||
--------------------------------------------------------------
|
||||
Here's a one-line descriptons of the various test images in this
|
||||
directory:
|
||||
|
||||
baddir.img Filesystem with a corrupted directory
|
||||
badbblocks.img Filesystem with illegal blocks in the bad block inode.
|
||||
badinode.img Filesystem with various different corrupted inode
|
||||
entries.
|
||||
badlkcnt.img Filesystem with deleted files with non-zero link count
|
||||
badroot.img Filesystem with a file for a root directory
|
||||
badtable.img Filesystem with blocks shared between the bitmaps and
|
||||
inode table blocks and the bad block inode
|
||||
bbfile.img Filesystem with files containing bad blocks
|
||||
bitmaps.img Filesystem with corrupted inode and block bitmaps
|
||||
dirlink.img Filesystem with a hard link to a directory
|
||||
dup.img Filesystem with blocks claimed by two different files
|
||||
dup2.img Filesystem with blocks claimed by three different files
|
||||
dupfsblks.img Filesystem with blocks claimed by a file and
|
||||
inode/block bitmaps and inode tables
|
||||
dupsuper.img Filesystem with blocks claimed by a file and
|
||||
the superblock / group descriptors
|
||||
end-bitmap.img Filesystem with corruption at the end of the block
|
||||
bitmap
|
||||
expand.img Tests e2fsck's ability to expand lost+found if
|
||||
necessary
|
||||
lpf.img Filesystem with disconnected files and no /lost+found
|
||||
directory
|
||||
mke2fs2b.img Filesystem with corruption similar to that
|
||||
created by mke2fs version 0.2b
|
||||
noroot.img Filesystem with a deleted root directory
|
||||
okgroup.img Filesystem that's exactly 8193 blocks long
|
||||
(otherwise OK)
|
||||
overfsblks.img Filesystem with overlapping inode and block bitmaps
|
||||
|
||||
|
|
@ -0,0 +1 @@
|
|||
. $cmd_dir/run_e2fsck
|
|
@ -0,0 +1,20 @@
|
|||
Pass 1: Checking inodes, blocks, and sizes
|
||||
Remove illegal block(s) in bad block inode? yes
|
||||
|
||||
Illegal block 101 in bad block inode. CLEARED
|
||||
Illegal block 103 in bad block inode. CLEARED
|
||||
Illegal block 234523 in bad block inode. CLEARED
|
||||
Illegal block 200 in bad block inode. CLEARED
|
||||
Pass 2: Checking directory structure
|
||||
Pass 3: Checking directory connectivity
|
||||
Pass 4: Checking reference counts
|
||||
Pass 5: Checking group summary information
|
||||
Fix summary information? yes
|
||||
|
||||
Block bitmap differences: +50. FIXED
|
||||
Free blocks count wrong for group 0 (78, counted=77). FIXED
|
||||
Free blocks count wrong (78, counted=77). FIXED
|
||||
|
||||
test_filesys: ***** FILE SYSTEM WAS MODIFIED *****
|
||||
test_filesys: 11/32 files, 23/100 blocks
|
||||
Exit status is 1
|
|
@ -0,0 +1,7 @@
|
|||
Pass 1: Checking inodes, blocks, and sizes
|
||||
Pass 2: Checking directory structure
|
||||
Pass 3: Checking directory connectivity
|
||||
Pass 4: Checking reference counts
|
||||
Pass 5: Checking group summary information
|
||||
test_filesys: 11/32 files, 23/100 blocks
|
||||
Exit status is 0
|
Binary file not shown.
|
@ -0,0 +1 @@
|
|||
illegal blocks in bad block inode
|
|
@ -0,0 +1,39 @@
|
|||
Pass 1: Checking inodes, blocks, and sizes
|
||||
Directory 12, incorrect size, 182 (counted = 1024). Set size to counted? yes
|
||||
|
||||
Inode 13 is a zero length directory. Clear? yes
|
||||
|
||||
Pass 2: Checking directory structure
|
||||
Entry 'zero' in / (2) has deleted/unused inode 13.
|
||||
Clear? yes
|
||||
|
||||
Directory inode 12, block 0, offset 0: directory corrupted
|
||||
Salvage? yes
|
||||
|
||||
Missing '.' in directory inode 12.
|
||||
Fix? yes
|
||||
|
||||
Missing '..' in directory inode 12.
|
||||
Fix? yes
|
||||
|
||||
Pass 3: Checking directory connectivity
|
||||
'..' in /block.h (12) is . (0), should be / (2).
|
||||
Fix? yes
|
||||
|
||||
Pass 4: Checking reference counts
|
||||
Inode 12 has ref count 1, expecting 2.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Pass 5: Checking group summary information
|
||||
Fix summary information? yes
|
||||
|
||||
Block bitmap differences: -22. FIXED
|
||||
Free blocks count wrong (76, counted=77). FIXED
|
||||
Inode bitmap differences: -13. FIXED
|
||||
Free inodes count wrong for group #0 (19, counted=20). FIXED
|
||||
Directories count wrong for group #0 (4, counted=3). FIXED
|
||||
Free inodes count wrong (19, counted=20). FIXED
|
||||
|
||||
test_filesys: ***** FILE SYSTEM WAS MODIFIED *****
|
||||
test_filesys: 12/32 files, 23/100 blocks
|
||||
Exit status is 1
|
|
@ -0,0 +1,7 @@
|
|||
Pass 1: Checking inodes, blocks, and sizes
|
||||
Pass 2: Checking directory structure
|
||||
Pass 3: Checking directory connectivity
|
||||
Pass 4: Checking reference counts
|
||||
Pass 5: Checking group summary information
|
||||
test_filesys: 12/32 files, 23/100 blocks
|
||||
Exit status is 0
|
Binary file not shown.
|
@ -0,0 +1 @@
|
|||
corrupted directory
|
|
@ -0,0 +1,48 @@
|
|||
Pass 1: Checking inodes, blocks, and sizes
|
||||
Pass 2: Checking directory structure
|
||||
Missing '.' in directory inode 12.
|
||||
Fix? yes
|
||||
|
||||
Missing '..' in directory inode 12.
|
||||
Fix? yes
|
||||
|
||||
First entry in directory inode 13 contains 'X' (inode=11)
|
||||
instead of '.'.
|
||||
Change to be '.'? yes
|
||||
|
||||
Missing '..' in directory inode 14.
|
||||
Fix? yes
|
||||
|
||||
Second entry in directory inode 15 contains 'XX' (inode=11)
|
||||
instead of '..'.
|
||||
Change to be '..'? yes
|
||||
|
||||
Missing '.' in directory inode 16.
|
||||
Fix? yes
|
||||
|
||||
Missing '..' in directory inode 16.
|
||||
Fix? yes
|
||||
|
||||
Pass 3: Checking directory connectivity
|
||||
'..' in /a (12) is . (0), should be / (2).
|
||||
Fix? yes
|
||||
|
||||
'..' in /c (14) is . (0), should be / (2).
|
||||
Fix? yes
|
||||
|
||||
'..' in /d (15) is . (0), should be / (2).
|
||||
Fix? yes
|
||||
|
||||
'..' in /e (16) is . (0), should be / (2).
|
||||
Fix? yes
|
||||
|
||||
Pass 4: Checking reference counts
|
||||
Pass 5: Checking group summary information
|
||||
Fix summary information? yes
|
||||
|
||||
Free blocks count wrong for group 0 (72, counted=73). FIXED
|
||||
Free blocks count wrong (72, counted=73). FIXED
|
||||
|
||||
test_filesys: ***** FILE SYSTEM WAS MODIFIED *****
|
||||
test_filesys: 16/32 files, 27/100 blocks
|
||||
Exit status is 1
|
|
@ -0,0 +1,7 @@
|
|||
Pass 1: Checking inodes, blocks, and sizes
|
||||
Pass 2: Checking directory structure
|
||||
Pass 3: Checking directory connectivity
|
||||
Pass 4: Checking reference counts
|
||||
Pass 5: Checking group summary information
|
||||
test_filesys: 16/32 files, 27/100 blocks
|
||||
Exit status is 0
|
Binary file not shown.
|
@ -0,0 +1 @@
|
|||
bad '.' and '..' entries
|
|
@ -0,0 +1,25 @@
|
|||
Pass 1: Checking inodes, blocks, and sizes
|
||||
Pass 2: Checking directory structure
|
||||
Inode 12 (/motd) has a bad mode (0110444).
|
||||
Clear? yes
|
||||
|
||||
i_fsize for inode 13 (/timings) is 4, should be zero.
|
||||
Clear i_fsize? yes
|
||||
|
||||
i_file_acl for inode 13 (/timings) is 39, should be zero.
|
||||
Clear i_file_acl? yes
|
||||
|
||||
Pass 3: Checking directory connectivity
|
||||
Pass 4: Checking reference counts
|
||||
Pass 5: Checking group summary information
|
||||
Fix summary information? yes
|
||||
|
||||
Block bitmap differences: -25. FIXED
|
||||
Free blocks count wrong for group 0 (76, counted=77). FIXED
|
||||
Free blocks count wrong (76, counted=77). FIXED
|
||||
Free inodes count wrong for group #0 (19, counted=20). FIXED
|
||||
Free inodes count wrong (19, counted=20). FIXED
|
||||
|
||||
test_filesys: ***** FILE SYSTEM WAS MODIFIED *****
|
||||
test_filesys: 12/32 files, 23/100 blocks
|
||||
Exit status is 1
|
|
@ -0,0 +1,7 @@
|
|||
Pass 1: Checking inodes, blocks, and sizes
|
||||
Pass 2: Checking directory structure
|
||||
Pass 3: Checking directory connectivity
|
||||
Pass 4: Checking reference counts
|
||||
Pass 5: Checking group summary information
|
||||
test_filesys: 12/32 files, 23/100 blocks
|
||||
Exit status is 0
|
Binary file not shown.
|
@ -0,0 +1 @@
|
|||
corrupted inode entries
|
|
@ -0,0 +1,17 @@
|
|||
Pass 1: Checking inodes, blocks, and sizes
|
||||
|
||||
Deleted inode detected with non-zero link count.
|
||||
This is probably due to old ext2fs kernel code.
|
||||
Fix inode(s)? yes
|
||||
|
||||
Inode 13 is deleted w/ non-zero link_count. CLEARED
|
||||
Inode 15 is deleted w/ non-zero link_count. CLEARED
|
||||
Inode 16 is deleted w/ non-zero link_count. CLEARED
|
||||
Pass 2: Checking directory structure
|
||||
Pass 3: Checking directory connectivity
|
||||
Pass 4: Checking reference counts
|
||||
Pass 5: Checking group summary information
|
||||
|
||||
test_filesys: ***** FILE SYSTEM WAS MODIFIED *****
|
||||
test_filesys: 29/32 files, 32/100 blocks
|
||||
Exit status is 1
|
|
@ -0,0 +1,7 @@
|
|||
Pass 1: Checking inodes, blocks, and sizes
|
||||
Pass 2: Checking directory structure
|
||||
Pass 3: Checking directory connectivity
|
||||
Pass 4: Checking reference counts
|
||||
Pass 5: Checking group summary information
|
||||
test_filesys: 29/32 files, 32/100 blocks
|
||||
Exit status is 0
|
Binary file not shown.
|
@ -0,0 +1 @@
|
|||
deleted files with non-zero link count
|
|
@ -0,0 +1,25 @@
|
|||
Pass 1: Checking inodes, blocks, and sizes
|
||||
The primary superblock (1) is on the bad block list.
|
||||
|
||||
If the block is really bad, the filesystem can not be fixed.
|
||||
You can clear the this block from the bad block list
|
||||
and hope that block is really OK, but there are no guarantees.
|
||||
|
||||
Clear (and hope for the best)? yes
|
||||
|
||||
Block 2 in the primary group descriptors is on the bad block list
|
||||
|
||||
If the block is really bad, the filesystem can not be fixed.
|
||||
You can clear the this block from the bad block list
|
||||
and hope that block is really OK, but there are no guarantees.
|
||||
|
||||
Clear (and hope for the best)? yes
|
||||
|
||||
Pass 2: Checking directory structure
|
||||
Pass 3: Checking directory connectivity
|
||||
Pass 4: Checking reference counts
|
||||
Pass 5: Checking group summary information
|
||||
|
||||
test_filesys: ***** FILE SYSTEM WAS MODIFIED *****
|
||||
test_filesys: 11/32 files, 22/100 blocks
|
||||
Exit status is 1
|
|
@ -0,0 +1,7 @@
|
|||
Pass 1: Checking inodes, blocks, and sizes
|
||||
Pass 2: Checking directory structure
|
||||
Pass 3: Checking directory connectivity
|
||||
Pass 4: Checking reference counts
|
||||
Pass 5: Checking group summary information
|
||||
test_filesys: 11/32 files, 22/100 blocks
|
||||
Exit status is 0
|
Binary file not shown.
|
@ -0,0 +1 @@
|
|||
bad blocks in the primary superblock and group descriptors
|
|
@ -0,0 +1,37 @@
|
|||
Pass 1: Checking inodes, blocks, and sizes
|
||||
Root inode is not a directory. Clear? yes
|
||||
|
||||
Pass 2: Checking directory structure
|
||||
Entry '..' in ??? (11) has deleted/unused inode 2.
|
||||
Clear? yes
|
||||
|
||||
Pass 3: Checking directory connectivity
|
||||
Root inode not allocated. Rellocate? yes
|
||||
|
||||
Unconnected directory inode 11 (...)
|
||||
Connect to /lost+found? yes
|
||||
|
||||
/lost+found not found. Create? yes
|
||||
|
||||
Pass 4: Checking reference counts
|
||||
Inode 11 has ref count 3, expecting 2.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 12
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 12 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Pass 5: Checking group summary information
|
||||
Fix summary information? yes
|
||||
|
||||
Free blocks count wrong for group 0 (77, counted=76). FIXED
|
||||
Free blocks count wrong (77, counted=76). FIXED
|
||||
Free inodes count wrong for group #0 (20, counted=19). FIXED
|
||||
Directories count wrong for group #0 (2, counted=3). FIXED
|
||||
Free inodes count wrong (20, counted=19). FIXED
|
||||
|
||||
test_filesys: ***** FILE SYSTEM WAS MODIFIED *****
|
||||
test_filesys: 13/32 files, 24/100 blocks
|
||||
Exit status is 1
|
|
@ -0,0 +1,7 @@
|
|||
Pass 1: Checking inodes, blocks, and sizes
|
||||
Pass 2: Checking directory structure
|
||||
Pass 3: Checking directory connectivity
|
||||
Pass 4: Checking reference counts
|
||||
Pass 5: Checking group summary information
|
||||
test_filesys: 13/32 files, 24/100 blocks
|
||||
Exit status is 0
|
Binary file not shown.
|
@ -0,0 +1 @@
|
|||
file in root directory inode
|
|
@ -0,0 +1,29 @@
|
|||
Pass 1: Checking inodes, blocks, and sizes
|
||||
Group 0's block bitmap (3) is bad. Relocate? yes
|
||||
|
||||
Group 0's inode bitmap (4) is bad. Relocate? yes
|
||||
|
||||
WARNING: Severe data loss possible!!!!
|
||||
Bad block 6 in group 0's inode table. Relocate? yes
|
||||
|
||||
WARNING: Severe data loss possible!!!!
|
||||
Bad block 8 in group 0's inode table. Relocate? yes
|
||||
|
||||
Relocating group 0's block bitmap from 3 to 22...
|
||||
Relocating group 0's inode bitmap from 4 to 23...
|
||||
Relocating group 0's inode table from 5 to 24...
|
||||
Restarting e2fsck from the beginning...
|
||||
Pass 1: Checking inodes, blocks, and sizes
|
||||
Pass 2: Checking directory structure
|
||||
Pass 3: Checking directory connectivity
|
||||
Pass 4: Checking reference counts
|
||||
Pass 5: Checking group summary information
|
||||
Fix summary information? yes
|
||||
|
||||
Block bitmap differences: -5 -7 +22 +23 +24 +25 +26 +27. FIXED
|
||||
Free blocks count wrong for group 0 (78, counted=74). FIXED
|
||||
Free blocks count wrong (78, counted=74). FIXED
|
||||
|
||||
test_filesys: ***** FILE SYSTEM WAS MODIFIED *****
|
||||
test_filesys: 11/32 files, 26/100 blocks
|
||||
Exit status is 1
|
|
@ -0,0 +1,7 @@
|
|||
Pass 1: Checking inodes, blocks, and sizes
|
||||
Pass 2: Checking directory structure
|
||||
Pass 3: Checking directory connectivity
|
||||
Pass 4: Checking reference counts
|
||||
Pass 5: Checking group summary information
|
||||
test_filesys: 11/32 files, 26/100 blocks
|
||||
Exit status is 0
|
Binary file not shown.
|
@ -0,0 +1 @@
|
|||
bad blocks in bitmaps and inode table
|
|
@ -0,0 +1,44 @@
|
|||
Pass 1: Checking inodes, blocks, and sizes
|
||||
Group 0's inode bitmap (4) is bad. Relocate? yes
|
||||
|
||||
Relocating group 0's inode bitmap from 4 to 43...
|
||||
Duplicate blocks found... invoking duplicate block passes.
|
||||
Pass 1B: Rescan for duplicate/bad blocks
|
||||
Duplicate/bad block(s) in inode 2: 21
|
||||
Duplicate/bad block(s) in inode 11: 9 10 11 12 13 14 15 16 17 18 19 20
|
||||
Duplicate/bad block(s) in inode 12: 25 26
|
||||
Pass 1C: Scan directories for inodes with dup blocks.
|
||||
Pass 1D: Reconciling duplicate blocks
|
||||
(There are 3 inodes containing duplicate/bad blocks.)
|
||||
|
||||
File /termcap (inode #12, mod time Sun Jan 2 08:29:13 1994)
|
||||
has 2 duplicate blocks, shared with 1 file:
|
||||
<The bad blocks inode> (inode #1, mod time Sun Jul 17 00:47:58 1994)
|
||||
Clone duplicate/bad blocks? yes
|
||||
|
||||
|
||||
File /lost+found (inode #11, mod time Sun Jan 2 08:28:40 1994)
|
||||
has 12 duplicate blocks, shared with 1 file:
|
||||
<The bad blocks inode> (inode #1, mod time Sun Jul 17 00:47:58 1994)
|
||||
Clone duplicate/bad blocks? yes
|
||||
|
||||
|
||||
File / (inode #2, mod time Sun Jan 2 08:29:13 1994)
|
||||
has 1 duplicate blocks, shared with 1 file:
|
||||
<The bad blocks inode> (inode #1, mod time Sun Jul 17 00:47:58 1994)
|
||||
Clone duplicate/bad blocks? yes
|
||||
|
||||
|
||||
Pass 2: Checking directory structure
|
||||
Pass 3: Checking directory connectivity
|
||||
Pass 4: Checking reference counts
|
||||
Pass 5: Checking group summary information
|
||||
Fix summary information? yes
|
||||
|
||||
Block bitmap differences: +43. FIXED
|
||||
Free blocks count wrong for group 0 (57, counted=41). FIXED
|
||||
Free blocks count wrong (57, counted=41). FIXED
|
||||
|
||||
test_filesys: ***** FILE SYSTEM WAS MODIFIED *****
|
||||
test_filesys: 12/32 files, 59/100 blocks
|
||||
Exit status is 1
|
|
@ -0,0 +1,7 @@
|
|||
Pass 1: Checking inodes, blocks, and sizes
|
||||
Pass 2: Checking directory structure
|
||||
Pass 3: Checking directory connectivity
|
||||
Pass 4: Checking reference counts
|
||||
Pass 5: Checking group summary information
|
||||
test_filesys: 12/32 files, 59/100 blocks
|
||||
Exit status is 0
|
Binary file not shown.
|
@ -0,0 +1 @@
|
|||
bad blocks in files
|
|
@ -0,0 +1,13 @@
|
|||
Pass 1: Checking inodes, blocks, and sizes
|
||||
Pass 2: Checking directory structure
|
||||
Pass 3: Checking directory connectivity
|
||||
Pass 4: Checking reference counts
|
||||
Pass 5: Checking group summary information
|
||||
Fix summary information? yes
|
||||
|
||||
Block bitmap differences: +12 -20 +41 -50. FIXED
|
||||
Inode bitmap differences: +11 -15. FIXED
|
||||
|
||||
test_filesys: ***** FILE SYSTEM WAS MODIFIED *****
|
||||
test_filesys: 11/32 files, 22/100 blocks
|
||||
Exit status is 1
|
|
@ -0,0 +1,7 @@
|
|||
Pass 1: Checking inodes, blocks, and sizes
|
||||
Pass 2: Checking directory structure
|
||||
Pass 3: Checking directory connectivity
|
||||
Pass 4: Checking reference counts
|
||||
Pass 5: Checking group summary information
|
||||
test_filesys: 11/32 files, 22/100 blocks
|
||||
Exit status is 0
|
Binary file not shown.
|
@ -0,0 +1 @@
|
|||
corrupted inode and block bitmaps
|
|
@ -0,0 +1,12 @@
|
|||
Pass 1: Checking inodes, blocks, and sizes
|
||||
Pass 2: Checking directory structure
|
||||
Entry 'quux' in /foo (12) is a link to directory /bar (13).
|
||||
Clear? yes
|
||||
|
||||
Pass 3: Checking directory connectivity
|
||||
Pass 4: Checking reference counts
|
||||
Pass 5: Checking group summary information
|
||||
|
||||
test_filesys: ***** FILE SYSTEM WAS MODIFIED *****
|
||||
test_filesys: 13/32 files, 24/100 blocks
|
||||
Exit status is 1
|
|
@ -0,0 +1,7 @@
|
|||
Pass 1: Checking inodes, blocks, and sizes
|
||||
Pass 2: Checking directory structure
|
||||
Pass 3: Checking directory connectivity
|
||||
Pass 4: Checking reference counts
|
||||
Pass 5: Checking group summary information
|
||||
test_filesys: 13/32 files, 24/100 blocks
|
||||
Exit status is 0
|
Binary file not shown.
|
@ -0,0 +1 @@
|
|||
directory hard links
|
|
@ -0,0 +1,34 @@
|
|||
Pass 1: Checking inodes, blocks, and sizes
|
||||
Duplicate blocks found... invoking duplicate block passes.
|
||||
Pass 1B: Rescan for duplicate/bad blocks
|
||||
Duplicate/bad block(s) in inode 12: 25 26
|
||||
Duplicate/bad block(s) in inode 13: 25 26
|
||||
Pass 1C: Scan directories for inodes with dup blocks.
|
||||
Pass 1D: Reconciling duplicate blocks
|
||||
(There are 2 inodes containing duplicate/bad blocks.)
|
||||
|
||||
File /motd (inode #13, mod time Tue Sep 21 03:19:20 1993)
|
||||
has 2 duplicate blocks, shared with 1 file:
|
||||
/termcap (inode #12, mod time Tue Sep 21 03:19:14 1993)
|
||||
Clone duplicate/bad blocks? yes
|
||||
|
||||
|
||||
File /termcap (inode #12, mod time Tue Sep 21 03:19:14 1993)
|
||||
has 2 duplicate blocks, shared with 1 file:
|
||||
/motd (inode #13, mod time Tue Sep 21 03:19:20 1993)
|
||||
Duplicated blocks already reassigned or cloned.
|
||||
|
||||
Pass 2: Checking directory structure
|
||||
Pass 3: Checking directory connectivity
|
||||
Pass 4: Checking reference counts
|
||||
Pass 5: Checking group summary information
|
||||
Fix summary information? yes
|
||||
|
||||
Free blocks count wrong for group 0 (44, counted=60). FIXED
|
||||
Free blocks count wrong (62, counted=60). FIXED
|
||||
Padding at end of block bitmap is not set. Fix? yes
|
||||
|
||||
|
||||
test_filesys: ***** FILE SYSTEM WAS MODIFIED *****
|
||||
test_filesys: 13/16 files, 40/100 blocks
|
||||
Exit status is 1
|
|
@ -0,0 +1,7 @@
|
|||
Pass 1: Checking inodes, blocks, and sizes
|
||||
Pass 2: Checking directory structure
|
||||
Pass 3: Checking directory connectivity
|
||||
Pass 4: Checking reference counts
|
||||
Pass 5: Checking group summary information
|
||||
test_filesys: 13/16 files, 40/100 blocks
|
||||
Exit status is 0
|
Binary file not shown.
|
@ -0,0 +1 @@
|
|||
blocks claimed by two different files
|
|
@ -0,0 +1,42 @@
|
|||
Pass 1: Checking inodes, blocks, and sizes
|
||||
Duplicate blocks found... invoking duplicate block passes.
|
||||
Pass 1B: Rescan for duplicate/bad blocks
|
||||
Duplicate/bad block(s) in inode 12: 25 26
|
||||
Duplicate/bad block(s) in inode 13: 25 26 57 58
|
||||
Duplicate/bad block(s) in inode 14: 57 58
|
||||
Pass 1C: Scan directories for inodes with dup blocks.
|
||||
Pass 1D: Reconciling duplicate blocks
|
||||
(There are 3 inodes containing duplicate/bad blocks.)
|
||||
|
||||
File /pass1.c (inode #14, mod time Tue Sep 21 04:28:37 1993)
|
||||
has 2 duplicate blocks, shared with 1 file:
|
||||
/motd (inode #13, mod time Tue Sep 21 03:19:20 1993)
|
||||
Clone duplicate/bad blocks? yes
|
||||
|
||||
|
||||
File /motd (inode #13, mod time Tue Sep 21 03:19:20 1993)
|
||||
has 4 duplicate blocks, shared with 2 files:
|
||||
/pass1.c (inode #14, mod time Tue Sep 21 04:28:37 1993)
|
||||
/termcap (inode #12, mod time Tue Sep 21 03:19:14 1993)
|
||||
Clone duplicate/bad blocks? yes
|
||||
|
||||
|
||||
File /termcap (inode #12, mod time Tue Sep 21 03:19:14 1993)
|
||||
has 2 duplicate blocks, shared with 1 file:
|
||||
/motd (inode #13, mod time Tue Sep 21 03:19:20 1993)
|
||||
Duplicated blocks already reassigned or cloned.
|
||||
|
||||
Pass 2: Checking directory structure
|
||||
Pass 3: Checking directory connectivity
|
||||
Pass 4: Checking reference counts
|
||||
Pass 5: Checking group summary information
|
||||
Fix summary information? yes
|
||||
|
||||
Free blocks count wrong for group 0 (8, counted=22). FIXED
|
||||
Free blocks count wrong (26, counted=22). FIXED
|
||||
Padding at end of block bitmap is not set. Fix? yes
|
||||
|
||||
|
||||
test_filesys: ***** FILE SYSTEM WAS MODIFIED *****
|
||||
test_filesys: 16/16 files, 78/100 blocks
|
||||
Exit status is 1
|
|
@ -0,0 +1,7 @@
|
|||
Pass 1: Checking inodes, blocks, and sizes
|
||||
Pass 2: Checking directory structure
|
||||
Pass 3: Checking directory connectivity
|
||||
Pass 4: Checking reference counts
|
||||
Pass 5: Checking group summary information
|
||||
test_filesys: 16/16 files, 78/100 blocks
|
||||
Exit status is 0
|
Binary file not shown.
|
@ -0,0 +1 @@
|
|||
blocks claimed by three different files
|
|
@ -0,0 +1,31 @@
|
|||
Pass 1: Checking inodes, blocks, and sizes
|
||||
Remove illegal block(s) in inode 12? yes
|
||||
|
||||
Block #1 (3) is the block bitmap of group 0. CLEARED
|
||||
Block #2 (4) is the inode bitmap of group 0. CLEARED
|
||||
Block #3 (6) is in the inode table of group 0. CLEARED
|
||||
Directory 12, incorrect size, 4096 (counted = 1024). Set size to counted? yes
|
||||
|
||||
Inode 12, i_blocks wrong 8 (counted=2). Set i_blocks to counted? yes
|
||||
|
||||
Pass 2: Checking directory structure
|
||||
Directory inode 12 has a hole at block #1
|
||||
Allocate block? yes
|
||||
|
||||
Directory inode 12 has a hole at block #2
|
||||
Allocate block? yes
|
||||
|
||||
Directory inode 12 has a hole at block #3
|
||||
Allocate block? yes
|
||||
|
||||
Pass 3: Checking directory connectivity
|
||||
Pass 4: Checking reference counts
|
||||
Pass 5: Checking group summary information
|
||||
Fix summary information? yes
|
||||
|
||||
Free blocks count wrong for group 0 (77, counted=74). FIXED
|
||||
Free blocks count wrong (77, counted=74). FIXED
|
||||
|
||||
test_filesys: ***** FILE SYSTEM WAS MODIFIED *****
|
||||
test_filesys: 12/32 files, 26/100 blocks
|
||||
Exit status is 1
|
|
@ -0,0 +1,7 @@
|
|||
Pass 1: Checking inodes, blocks, and sizes
|
||||
Pass 2: Checking directory structure
|
||||
Pass 3: Checking directory connectivity
|
||||
Pass 4: Checking reference counts
|
||||
Pass 5: Checking group summary information
|
||||
test_filesys: 12/32 files, 26/100 blocks
|
||||
Exit status is 0
|
Binary file not shown.
|
@ -0,0 +1 @@
|
|||
blocks claimed by a file and bitmaps or inode tables
|
|
@ -0,0 +1,21 @@
|
|||
Pass 1: Checking inodes, blocks, and sizes
|
||||
Remove illegal block(s) in inode 12? yes
|
||||
|
||||
Block #4 (2) is in the group descriptors of group 0. CLEARED
|
||||
Block #5 (3) is the block bitmap of group 0. CLEARED
|
||||
Block #6 (1) is the superblock in group 0. CLEARED
|
||||
Inode 12, i_blocks wrong 34 (counted=28). Set i_blocks to counted? yes
|
||||
|
||||
Pass 2: Checking directory structure
|
||||
Pass 3: Checking directory connectivity
|
||||
Pass 4: Checking reference counts
|
||||
Pass 5: Checking group summary information
|
||||
Fix summary information? yes
|
||||
|
||||
Block bitmap differences: -29 -30 -31. FIXED
|
||||
Free blocks count wrong for group 0 (61, counted=64). FIXED
|
||||
Free blocks count wrong (61, counted=64). FIXED
|
||||
|
||||
test_filesys: ***** FILE SYSTEM WAS MODIFIED *****
|
||||
test_filesys: 12/32 files, 36/100 blocks
|
||||
Exit status is 1
|
|
@ -0,0 +1,7 @@
|
|||
Pass 1: Checking inodes, blocks, and sizes
|
||||
Pass 2: Checking directory structure
|
||||
Pass 3: Checking directory connectivity
|
||||
Pass 4: Checking reference counts
|
||||
Pass 5: Checking group summary information
|
||||
test_filesys: 12/32 files, 36/100 blocks
|
||||
Exit status is 0
|
Binary file not shown.
|
@ -0,0 +1 @@
|
|||
blocks claimed by a file and superblock or group descriptors
|
|
@ -0,0 +1,14 @@
|
|||
Pass 1: Checking inodes, blocks, and sizes
|
||||
Pass 2: Checking directory structure
|
||||
Pass 3: Checking directory connectivity
|
||||
Pass 4: Checking reference counts
|
||||
Pass 5: Checking group summary information
|
||||
Fix summary information? yes
|
||||
|
||||
Free blocks count wrong for group 0 (44, counted=63). FIXED
|
||||
Padding at end of block bitmap is not set. Fix? yes
|
||||
|
||||
|
||||
test_filesys: ***** FILE SYSTEM WAS MODIFIED *****
|
||||
test_filesys: 12/16 files, 37/100 blocks
|
||||
Exit status is 1
|
|
@ -0,0 +1,7 @@
|
|||
Pass 1: Checking inodes, blocks, and sizes
|
||||
Pass 2: Checking directory structure
|
||||
Pass 3: Checking directory connectivity
|
||||
Pass 4: Checking reference counts
|
||||
Pass 5: Checking group summary information
|
||||
test_filesys: 12/16 files, 37/100 blocks
|
||||
Exit status is 0
|
Binary file not shown.
|
@ -0,0 +1,2 @@
|
|||
corruption at end of block bitmap
|
||||
|
|
@ -0,0 +1,587 @@
|
|||
Pass 1: Checking inodes, blocks, and sizes
|
||||
Deleted inode 2 has zero dtime.
|
||||
Set dtime? yes
|
||||
|
||||
Pass 2: Checking directory structure
|
||||
Entry '..' in /lost+found (11) has deleted/unused inode 2.
|
||||
Clear? yes
|
||||
|
||||
Pass 3: Checking directory connectivity
|
||||
Root inode not allocated. Rellocate? yes
|
||||
|
||||
Unconnected directory inode 11 (...)
|
||||
Connect to /lost+found? yes
|
||||
|
||||
/lost+found not found. Create? yes
|
||||
|
||||
Pass 4: Checking reference counts
|
||||
Inode 11 has ref count 3, expecting 2.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 12
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 12 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 13
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 13 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 14
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 14 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 15
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 15 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 16
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 16 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 17
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 17 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 18
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 18 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 19
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 19 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 20
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 20 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 21
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 21 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 22
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 22 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 23
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 23 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 24
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 24 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 25
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 25 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 26
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 26 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 27
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 27 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 28
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 28 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 29
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 29 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 30
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 30 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 31
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 31 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 32
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 32 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 33
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 33 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 34
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 34 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 35
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 35 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 36
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 36 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 37
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 37 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 38
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 38 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 39
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 39 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 40
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 40 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 41
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 41 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 42
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 42 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 43
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 43 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 44
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 44 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 45
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 45 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 46
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 46 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 47
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 47 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 48
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 48 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 49
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 49 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 50
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 50 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 51
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 51 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 52
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 52 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 53
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 53 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 54
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 54 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 55
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 55 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 56
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 56 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 57
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 57 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 58
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 58 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 59
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 59 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 60
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 60 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 61
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 61 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 62
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 62 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 63
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 63 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 64
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 64 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 65
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 65 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 66
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 66 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 67
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 67 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 68
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 68 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 69
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 69 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 70
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 70 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 71
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 71 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 72
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 72 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 73
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 73 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 74
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 74 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 75
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 75 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 76
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 76 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 77
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 77 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 78
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 78 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 79
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 79 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 80
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 80 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 81
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 81 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 82
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 82 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 83
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 83 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 84
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 84 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 85
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 85 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 86
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 86 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 87
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 87 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 88
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 88 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 89
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 89 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 90
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 90 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 91
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 91 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 92
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 92 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 93
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 93 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 94
|
||||
Connect to /lost+found? yes
|
||||
|
||||
No room in /lost+found; expand /lost+found? yes
|
||||
|
||||
Inode 94 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 95
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 95 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 96
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 96 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 97
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 97 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 98
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 98 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 99
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 99 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 100
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 100 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 102
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 102 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 103
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 103 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Unattached inode 104
|
||||
Connect to /lost+found? yes
|
||||
|
||||
Inode 104 has ref count 2, expecting 1.
|
||||
Set i_nlinks to count? yes
|
||||
|
||||
Pass 5: Checking group summary information
|
||||
Fix summary information? yes
|
||||
|
||||
Block bitmap differences: -33. FIXED
|
||||
Free blocks count wrong for group 0 (68, counted=67). FIXED
|
||||
Free blocks count wrong (68, counted=67). FIXED
|
||||
Free inodes count wrong for group #0 (1, counted=0). FIXED
|
||||
Directories count wrong for group #0 (2, counted=3). FIXED
|
||||
Free inodes count wrong (1, counted=0). FIXED
|
||||
|
||||
test_filesys: ***** FILE SYSTEM WAS MODIFIED *****
|
||||
test_filesys: 104/104 files, 33/100 blocks
|
||||
Exit status is 1
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue