mirror of https://github.com/vitalif/e2fsprogs
Clean up e2fsck problem description messages for typo's and to make them
easier to understand (sorry, translators). Add new @m (multiply-claimed) and @n (invalid) expansions for e2fsck problem descriptions. Add Dutch translation, and update French translation. Add an explanation of how the @-expansion and %-exapansion works in e2fsck/problem.c to make life easier for the translators. Synchronize and update po files.bitmap-optimize
parent
7d9adefed8
commit
7ae1983a23
|
@ -1,3 +1,10 @@
|
|||
2005-06-16 Theodore Ts'o <tytso@mit.edu>
|
||||
|
||||
* message.c: Add @m (multiply-claimed) and @n (invalid)
|
||||
expansions.
|
||||
|
||||
* problem.c: Clean up the problem messages displayed by e2fsck.
|
||||
|
||||
2005-06-05 Theodore Ts'o <tytso@mit.edu>
|
||||
|
||||
* e2fsck.8.in: Add a request to the REPORTING BUGS section of the
|
||||
|
|
|
@ -70,6 +70,8 @@
|
|||
* @j journal
|
||||
* @l lost+found
|
||||
* @L is a link
|
||||
* @m multiply-claimed
|
||||
* @n invalid
|
||||
* @o orphaned
|
||||
* @p problem in
|
||||
* @r root inode
|
||||
|
@ -122,6 +124,8 @@ static const char *abbrevs[] = {
|
|||
N_("hHTREE @d @i"),
|
||||
N_("llost+found"),
|
||||
N_("Lis a link"),
|
||||
N_("mmultiply-claimed"),
|
||||
N_("ninvalid"),
|
||||
N_("oorphaned"),
|
||||
N_("pproblem in"),
|
||||
N_("rroot @i"),
|
||||
|
|
144
e2fsck/problem.c
144
e2fsck/problem.c
|
@ -61,7 +61,7 @@ static const char *prompt[] = {
|
|||
N_("Abort"), /* 11 */
|
||||
N_("Split"), /* 12 */
|
||||
N_("Continue"), /* 13 */
|
||||
N_("Clone duplicate/bad blocks"), /* 14 */
|
||||
N_("Clone multiply-claimed blocks"), /* 14 */
|
||||
N_("Delete file"), /* 15 */
|
||||
N_("Suppress messages"),/* 16 */
|
||||
N_("Unlink"), /* 17 */
|
||||
|
@ -89,7 +89,7 @@ static const char *preen_msg[] = {
|
|||
N_("ABORTED"), /* 11 */
|
||||
N_("SPLIT"), /* 12 */
|
||||
N_("CONTINUING"), /* 13 */
|
||||
N_("DUPLICATE/BAD BLOCKS CLONED"), /* 14 */
|
||||
N_("MULTIPLY-CLAIMED BLOCKS CLONED"), /* 14 */
|
||||
N_("FILE DELETED"), /* 15 */
|
||||
N_("SUPPRESSED"), /* 16 */
|
||||
N_("UNLINKED"), /* 17 */
|
||||
|
@ -156,12 +156,11 @@ static const struct e2fsck_problem problem_table[] = {
|
|||
|
||||
/* Relocate hint */
|
||||
{ PR_0_RELOCATE_HINT,
|
||||
N_("Note: if there is several inode or block bitmap blocks\n"
|
||||
"which require relocation, or one part of the inode table\n"
|
||||
"which must be moved, you may wish to try running e2fsck\n"
|
||||
"with the '-b %S' option first. The problem may lie only\n"
|
||||
"with the primary block group descriptor, and the backup\n"
|
||||
"block group descriptor may be OK.\n\n"),
|
||||
N_("Note: if several inode or block bitmap blocks or part\n"
|
||||
"of the inode table require relocation, you may wish to try\n"
|
||||
"running e2fsck with the '-b %S' option first. The problem\n"
|
||||
"may lie only with the primary block group descriptors, and\n"
|
||||
"the backup block group descriptors may be OK.\n\n"),
|
||||
PROMPT_NONE, PR_PREEN_OK | PR_NOCOLLATE },
|
||||
|
||||
/* Miscellaneous superblock corruption */
|
||||
|
@ -176,7 +175,7 @@ static const struct e2fsck_problem problem_table[] = {
|
|||
|
||||
/* Inode count in superblock is incorrect */
|
||||
{ PR_0_INODE_COUNT_WRONG,
|
||||
N_("@i count in @S is %i, should be %j.\n"),
|
||||
N_("@i count in @S is %i, @s %j.\n"),
|
||||
PROMPT_FIX, 0 },
|
||||
|
||||
{ PR_0_HURD_CLEAR_FILETYPE,
|
||||
|
@ -185,7 +184,7 @@ static const struct e2fsck_problem problem_table[] = {
|
|||
|
||||
/* Journal inode is invalid */
|
||||
{ PR_0_JOURNAL_BAD_INODE,
|
||||
N_("@S has a bad ext3 @j (@i %i).\n"),
|
||||
N_("@S has an @n ext3 @j (@i %i).\n"),
|
||||
PROMPT_CLEAR, PR_PREEN_OK },
|
||||
|
||||
/* The external journal has (unsupported) multiple filesystems */
|
||||
|
@ -233,7 +232,7 @@ static const struct e2fsck_problem problem_table[] = {
|
|||
|
||||
/* Journal has data, but recovery flag is clear */
|
||||
{ PR_0_JOURNAL_RECOVERY_CLEAR,
|
||||
N_("ext3 recovery flag clear, but @j has data.\n"),
|
||||
N_("ext3 recovery flag is clear, but @j has data.\n"),
|
||||
PROMPT_NONE, 0 },
|
||||
|
||||
/* Ask if we should clear the journal */
|
||||
|
@ -278,7 +277,7 @@ static const struct e2fsck_problem problem_table[] = {
|
|||
|
||||
/* Filesystem revision is 0, but feature flags are set */
|
||||
{ PR_0_FS_REV_LEVEL,
|
||||
"@f has feature flag(s) set, but is a revision 0 @f. ",
|
||||
N_("@f has feature flag(s) set, but is a revision 0 @f. "),
|
||||
PROMPT_FIX, PR_PREEN_OK | PR_NO_OK },
|
||||
|
||||
/* Journal superblock has an unknown read-only feature flag set */
|
||||
|
@ -298,7 +297,7 @@ static const struct e2fsck_problem problem_table[] = {
|
|||
|
||||
/* Moving journal to hidden file */
|
||||
{ PR_0_MOVE_JOURNAL,
|
||||
N_("Moving @j from /%s to hidden inode.\n\n"),
|
||||
N_("Moving @j from /%s to hidden @i.\n\n"),
|
||||
PROMPT_NONE, 0 },
|
||||
|
||||
/* Error moving journal to hidden file */
|
||||
|
@ -308,7 +307,7 @@ static const struct e2fsck_problem problem_table[] = {
|
|||
|
||||
/* Clearing V2 journal superblock */
|
||||
{ PR_0_CLEAR_V2_JOURNAL,
|
||||
N_("Found invalid V2 @j @S fields (from V1 journal).\n"
|
||||
N_("Found @n V2 @j @S fields (from V1 @j).\n"
|
||||
"Clearing fields beyond the V1 @j @S...\n\n"),
|
||||
PROMPT_NONE, 0 },
|
||||
|
||||
|
@ -325,7 +324,7 @@ static const struct e2fsck_problem problem_table[] = {
|
|||
|
||||
/* Resize_inode not enabled, but resize inode is non-zero */
|
||||
{ PR_0_CLEAR_RESIZE_INODE,
|
||||
N_("Resize_@i not enabled, but the resize inode is non-zero. "),
|
||||
N_("Resize_@i not enabled, but the resize @i is non-zero. "),
|
||||
PROMPT_CLEAR, 0 },
|
||||
|
||||
/* Resize inode invalid */
|
||||
|
@ -351,7 +350,7 @@ static const struct e2fsck_problem problem_table[] = {
|
|||
|
||||
/* Reserved inode has bad mode */
|
||||
{ PR_1_RESERVED_BAD_MODE,
|
||||
N_("Reserved @i %i %Q has bad mode. "),
|
||||
N_("Reserved @i %i (%Q) has @n mode. "),
|
||||
PROMPT_CLEAR, PR_PREEN_OK },
|
||||
|
||||
/* Deleted inode has zero dtime */
|
||||
|
@ -458,9 +457,8 @@ static const struct e2fsck_problem problem_table[] = {
|
|||
|
||||
/* Bad primary block prompt */
|
||||
{ PR_1_BAD_PRIMARY_BLOCK_PROMPT,
|
||||
N_("You can clear the this @b (and hope for the best) from the\n"
|
||||
"bad @b list and hope that @b is really OK, but there are no\n"
|
||||
"guarantees.\n\n"),
|
||||
N_("You can remove this @b from the bad @b list and hope\n"
|
||||
"that the @b is really OK. But there are no guarantees.\n\n"),
|
||||
PROMPT_CLEAR, PR_PREEN_NOMSG },
|
||||
|
||||
/* Bad primary superblock */
|
||||
|
@ -523,12 +521,12 @@ static const struct e2fsck_problem problem_table[] = {
|
|||
|
||||
/* Error allocating inode bitmap */
|
||||
{ PR_1_ALLOCATE_IBITMAP_ERROR,
|
||||
"@A @i @B (%N): %m\n",
|
||||
N_("@A @i @B (%N): %m\n"),
|
||||
PROMPT_NONE, PR_FATAL },
|
||||
|
||||
/* Error allocating block bitmap */
|
||||
{ PR_1_ALLOCATE_BBITMAP_ERROR,
|
||||
"@A @b @B (%N): %m\n",
|
||||
N_("@A @b @B (%N): %m\n"),
|
||||
PROMPT_NONE, PR_FATAL },
|
||||
|
||||
/* Error allocating icount structure */
|
||||
|
@ -588,17 +586,17 @@ static const struct e2fsck_problem problem_table[] = {
|
|||
|
||||
/* Non-zero size for device, fifo or socket inode */
|
||||
{ PR_1_SET_NONZSIZE,
|
||||
"Special (@v/socket/fifo) @i %i has non-zero size. ",
|
||||
N_("Special (@v/socket/fifo) @i %i has non-zero size. "),
|
||||
PROMPT_FIX, PR_PREEN_OK },
|
||||
|
||||
/* Filesystem revision is 0, but feature flags are set */
|
||||
{ PR_1_FS_REV_LEVEL,
|
||||
"@f has feature flag(s) set, but is a revision 0 @f. ",
|
||||
N_("@f has feature flag(s) set, but is a revision 0 @f. "),
|
||||
PROMPT_FIX, PR_PREEN_OK | PR_NO_OK },
|
||||
|
||||
/* Journal inode is not in use, but contains data */
|
||||
{ PR_1_JOURNAL_INODE_NOT_CLEAR,
|
||||
"@j @i is not in use, but contains data. ",
|
||||
N_("@j @i is not in use, but contains data. "),
|
||||
PROMPT_CLEAR, PR_PREEN_OK },
|
||||
|
||||
/* Journal has bad mode */
|
||||
|
@ -608,7 +606,7 @@ static const struct e2fsck_problem problem_table[] = {
|
|||
|
||||
/* Deal with inodes that were part of orphan linked list */
|
||||
{ PR_1_LOW_DTIME,
|
||||
N_("@i %i was part of the orphaned @i list. "),
|
||||
N_("@i %i was part of the @o @i list. "),
|
||||
PROMPT_FIX, PR_LATCH_LOW_DTIME, 0 },
|
||||
|
||||
/* Deal with inodes that were part of corrupted orphan linked
|
||||
|
@ -619,7 +617,7 @@ static const struct e2fsck_problem problem_table[] = {
|
|||
|
||||
/* Error allocating refcount structure */
|
||||
{ PR_1_ALLOCATE_REFCOUNT,
|
||||
"@A refcount structure (%N): %m\n",
|
||||
N_("@A refcount structure (%N): %m\n"),
|
||||
PROMPT_NONE, PR_FATAL },
|
||||
|
||||
/* Error reading extended attribute block */
|
||||
|
@ -639,7 +637,7 @@ static const struct e2fsck_problem problem_table[] = {
|
|||
|
||||
/* Extended attribute reference count incorrect */
|
||||
{ PR_1_EXTATTR_REFCOUNT,
|
||||
N_("@a @b %b has reference count %B, should be %N. "),
|
||||
N_("@a @b %b has reference count %B, @s %N. "),
|
||||
PROMPT_FIX, 0 },
|
||||
|
||||
/* Error writing Extended Attribute block while fixing refcount */
|
||||
|
@ -649,12 +647,12 @@ static const struct e2fsck_problem problem_table[] = {
|
|||
|
||||
/* Multiple EA blocks not supported */
|
||||
{ PR_1_EA_MULTI_BLOCK,
|
||||
N_("@a @b %b has h_blocks > 1. "),
|
||||
N_("@a @b %b has h_@bs > 1. "),
|
||||
PROMPT_CLEAR, 0},
|
||||
|
||||
/* Error allocating EA region allocation structure */
|
||||
{ PR_1_EA_ALLOC_REGION,
|
||||
N_("Error allocating @a @b %b. "),
|
||||
N_("@A @a @b %b. "),
|
||||
PROMPT_ABORT, 0},
|
||||
|
||||
/* Error EA allocation collision */
|
||||
|
@ -664,12 +662,12 @@ static const struct e2fsck_problem problem_table[] = {
|
|||
|
||||
/* Bad extended attribute name */
|
||||
{ PR_1_EA_BAD_NAME,
|
||||
N_("@a @b %b is corrupt (invalid name). "),
|
||||
N_("@a @b %b is corrupt (@n name). "),
|
||||
PROMPT_CLEAR, 0},
|
||||
|
||||
/* Bad extended attribute value */
|
||||
{ PR_1_EA_BAD_VALUE,
|
||||
N_("@a @b %b is corrupt (invalid value). "),
|
||||
N_("@a @b %b is corrupt (@n value). "),
|
||||
PROMPT_CLEAR, 0},
|
||||
|
||||
/* Inode too big (latch question) */
|
||||
|
@ -703,7 +701,7 @@ static const struct e2fsck_problem problem_table[] = {
|
|||
|
||||
/* Invalid root node in HTREE directory */
|
||||
{ PR_1_HTREE_BADROOT,
|
||||
N_("@h %i has an invalid root node.\n"),
|
||||
N_("@h %i has an @n root node.\n"),
|
||||
PROMPT_CLEAR_HTREE, PR_PREEN_OK },
|
||||
|
||||
/* Unsupported hash version in HTREE directory */
|
||||
|
@ -734,45 +732,45 @@ static const struct e2fsck_problem problem_table[] = {
|
|||
|
||||
/* invalid inode->i_extra_isize */
|
||||
{ PR_1_EXTRA_ISIZE,
|
||||
N_("@i %i has a extra size (%IS) which is invalid\n"),
|
||||
N_("@i %i has a extra size (%IS) which is @n\n"),
|
||||
PROMPT_FIX, PR_PREEN_OK },
|
||||
|
||||
/* invalid ea entry->e_name_len */
|
||||
{ PR_1_ATTR_NAME_LEN,
|
||||
N_("@a in @i %i has a namelen (%N) which is invalid\n"),
|
||||
N_("@a in @i %i has a namelen (%N) which is @n\n"),
|
||||
PROMPT_CLEAR, PR_PREEN_OK },
|
||||
|
||||
/* invalid ea entry->e_value_size */
|
||||
{ PR_1_ATTR_VALUE_SIZE,
|
||||
N_("@a in @i %i has a value size (%N) which is invalid\n"),
|
||||
N_("@a in @i %i has a value size (%N) which is @n\n"),
|
||||
PROMPT_CLEAR, PR_PREEN_OK },
|
||||
|
||||
/* invalid ea entry->e_value_offs */
|
||||
{ PR_1_ATTR_VALUE_OFFSET,
|
||||
N_("@a in @i %i has a value offset (%N) which is invalid\n"),
|
||||
N_("@a in @i %i has a value offset (%N) which is @n\n"),
|
||||
PROMPT_CLEAR, PR_PREEN_OK },
|
||||
|
||||
/* invalid ea entry->e_value_block */
|
||||
{ PR_1_ATTR_VALUE_BLOCK,
|
||||
N_("@a in @i %i has a value block (%N) which is invalid (must be 0)\n"),
|
||||
N_("@a in @i %i has a value @b (%N) which is @n (must be 0)\n"),
|
||||
PROMPT_CLEAR, PR_PREEN_OK },
|
||||
|
||||
/* invalid ea entry->e_hash */
|
||||
{ PR_1_ATTR_HASH,
|
||||
N_("@a in @i %i has a hash (%N) which is invalid (must be 0)\n"),
|
||||
N_("@a in @i %i has a hash (%N) which is @n (must be 0)\n"),
|
||||
PROMPT_CLEAR, PR_PREEN_OK },
|
||||
|
||||
/* Pass 1b errors */
|
||||
|
||||
/* Pass 1B: Rescan for duplicate/bad blocks */
|
||||
{ PR_1B_PASS_HEADER,
|
||||
N_("Duplicate @bs found... invoking duplicate @b passes.\n"
|
||||
"Pass 1B: Rescan for duplicate/bad @bs\n"),
|
||||
N_("\nRunning additional passes to resolve @bs claimed by more than one @i...\n"
|
||||
"Pass 1B: Rescanning for @m @bs\n"),
|
||||
PROMPT_NONE, 0 },
|
||||
|
||||
/* Duplicate/bad block(s) header */
|
||||
{ PR_1B_DUP_BLOCK_HEADER,
|
||||
N_("Duplicate/bad @b(s) in @i %i:"),
|
||||
N_("@m @b(s) in @i %i:"),
|
||||
PROMPT_NONE, 0 },
|
||||
|
||||
/* Duplicate/bad block(s) in inode */
|
||||
|
@ -792,7 +790,7 @@ static const struct e2fsck_problem problem_table[] = {
|
|||
|
||||
/* Error allocating inode bitmap */
|
||||
{ PR_1B_ALLOCATE_IBITMAP_ERROR,
|
||||
N_("@A @i @B (inode_dup_map): %m\n"),
|
||||
N_("@A @i @B (@i_dup_map): %m\n"),
|
||||
PROMPT_NONE, PR_FATAL },
|
||||
|
||||
/* Error while iterating over blocks */
|
||||
|
@ -802,25 +800,25 @@ static const struct e2fsck_problem problem_table[] = {
|
|||
|
||||
/* Error adjusting EA refcount */
|
||||
{ PR_1B_ADJ_EA_REFCOUNT,
|
||||
N_("Error addjusting refcount for @a @b %b (@i %i): %m\n"),
|
||||
N_("Error adjusting refcount for @a @b %b (@i %i): %m\n"),
|
||||
PROMPT_NONE, 0 },
|
||||
|
||||
|
||||
/* Pass 1C: Scan directories for inodes with dup blocks. */
|
||||
/* Pass 1C: Scan directories for inodes with multiply-claimed blocks. */
|
||||
{ PR_1C_PASS_HEADER,
|
||||
N_("Pass 1C: Scan directories for @is with dup @bs.\n"),
|
||||
N_("Pass 1C: Scanning directories for @is with @m @bs.\n"),
|
||||
PROMPT_NONE, 0 },
|
||||
|
||||
|
||||
/* Pass 1D: Reconciling duplicate blocks */
|
||||
/* Pass 1D: Reconciling multiply-claimed blocks */
|
||||
{ PR_1D_PASS_HEADER,
|
||||
N_("Pass 1D: Reconciling duplicate @bs\n"),
|
||||
N_("Pass 1D: Reconciling @m @bs\n"),
|
||||
PROMPT_NONE, 0 },
|
||||
|
||||
/* File has duplicate blocks */
|
||||
{ PR_1D_DUP_FILE,
|
||||
N_("File %Q (@i #%i, mod time %IM) \n"
|
||||
" has %B duplicate @b(s), shared with %N file(s):\n"),
|
||||
" has %B @m @b(s), shared with %N file(s):\n"),
|
||||
PROMPT_NONE, 0 },
|
||||
|
||||
/* List of files sharing duplicate blocks */
|
||||
|
@ -835,12 +833,12 @@ static const struct e2fsck_problem problem_table[] = {
|
|||
|
||||
/* Report of how many duplicate/bad inodes */
|
||||
{ PR_1D_NUM_DUP_INODES,
|
||||
N_("(There are %N @is containing duplicate/bad @bs.)\n\n"),
|
||||
N_("(There are %N @is containing @m @bs.)\n\n"),
|
||||
PROMPT_NONE, 0 },
|
||||
|
||||
/* Duplicated blocks already reassigned or cloned. */
|
||||
{ PR_1D_DUP_BLOCKS_DEALT,
|
||||
N_("Duplicated @bs already reassigned or cloned.\n\n"),
|
||||
N_("@m @bs already reassigned or cloned.\n\n"),
|
||||
PROMPT_NONE, 0 },
|
||||
|
||||
/* Clone duplicate/bad blocks? */
|
||||
|
@ -864,12 +862,12 @@ static const struct e2fsck_problem problem_table[] = {
|
|||
|
||||
/* Bad inode number for '.' */
|
||||
{ PR_2_BAD_INODE_DOT,
|
||||
N_("Bad @i number for '.' in @d @i %i.\n"),
|
||||
N_("@n @i number for '.' in @d @i %i.\n"),
|
||||
PROMPT_FIX, 0 },
|
||||
|
||||
/* Directory entry has bad inode number */
|
||||
{ PR_2_BAD_INO,
|
||||
N_("@E has bad @i #: %Di.\n"),
|
||||
N_("@E has @n @i #: %Di.\n"),
|
||||
PROMPT_CLEAR, 0 },
|
||||
|
||||
/* Directory entry has deleted or unused inode */
|
||||
|
@ -914,12 +912,12 @@ static const struct e2fsck_problem problem_table[] = {
|
|||
|
||||
/* First entry in directory inode doesn't contain '.' */
|
||||
{ PR_2_1ST_NOT_DOT,
|
||||
N_("First @e '%Dn' (inode=%Di) in @d @i %i (%p) @s '.'\n"),
|
||||
N_("First @e '%Dn' (@i=%Di) in @d @i %i (%p) @s '.'\n"),
|
||||
PROMPT_FIX, 0 },
|
||||
|
||||
/* Second entry in directory inode doesn't contain '..' */
|
||||
{ PR_2_2ND_NOT_DOT_DOT,
|
||||
N_("Second @e '%Dn' (inode=%Di) in @d @i %i @s '..'\n"),
|
||||
N_("Second @e '%Dn' (@i=%Di) in @d @i %i @s '..'\n"),
|
||||
PROMPT_FIX, 0 },
|
||||
|
||||
/* i_faddr should be zero */
|
||||
|
@ -949,7 +947,7 @@ static const struct e2fsck_problem problem_table[] = {
|
|||
|
||||
/* inode has bad mode */
|
||||
{ PR_2_BAD_MODE,
|
||||
N_("@i %i (%Q) has a bad mode (%Im).\n"),
|
||||
N_("@i %i (%Q) has @n mode (%Im).\n"),
|
||||
PROMPT_CLEAR, 0 },
|
||||
|
||||
/* directory corrupted */
|
||||
|
@ -1004,7 +1002,7 @@ static const struct e2fsck_problem problem_table[] = {
|
|||
|
||||
/* Final rec_len is wrong */
|
||||
{ PR_2_FINAL_RECLEN,
|
||||
N_("@E has rec_len of %Dr, should be %N.\n"),
|
||||
N_("@E has rec_len of %Dr, @s %N.\n"),
|
||||
PROMPT_FIX, 0 },
|
||||
|
||||
/* Error allocating icount structure */
|
||||
|
@ -1059,7 +1057,7 @@ static const struct e2fsck_problem problem_table[] = {
|
|||
|
||||
/* Directory filetype incorrect */
|
||||
{ PR_2_BAD_FILETYPE,
|
||||
N_("@E has an incorrect filetype (was %Dt, should be %N).\n"),
|
||||
N_("@E has an incorrect filetype (was %Dt, @s %N).\n"),
|
||||
PROMPT_FIX, 0 },
|
||||
|
||||
/* Directory filetype set on filesystem */
|
||||
|
@ -1069,17 +1067,17 @@ static const struct e2fsck_problem problem_table[] = {
|
|||
|
||||
/* Directory filename is null */
|
||||
{ PR_2_NULL_NAME,
|
||||
N_("@E has a zero-length name.\n"),
|
||||
N_("@E has a @z name.\n"),
|
||||
PROMPT_CLEAR, 0 },
|
||||
|
||||
/* Invalid symlink */
|
||||
{ PR_2_INVALID_SYMLINK,
|
||||
N_("Symlink %Q (@i #%i) is invalid.\n"),
|
||||
N_("Symlink %Q (@i #%i) is @n.\n"),
|
||||
PROMPT_CLEAR, 0 },
|
||||
|
||||
/* i_file_acl (extended attribute block) is bad */
|
||||
{ PR_2_FILE_ACL_BAD,
|
||||
N_("@a @b @F invalid (%If).\n"),
|
||||
N_("@a @b @F @n (%If).\n"),
|
||||
PROMPT_CLEAR, 0 },
|
||||
|
||||
/* Filesystem contains large files, but has no such flag in sb */
|
||||
|
@ -1109,7 +1107,7 @@ static const struct e2fsck_problem problem_table[] = {
|
|||
|
||||
/* Clear invalid HTREE directory */
|
||||
{ PR_2_HTREE_CLEAR,
|
||||
N_("Invalid @h %d (%q). "), PROMPT_CLEAR, 0 },
|
||||
N_("@n @h %d (%q). "), PROMPT_CLEAR, 0 },
|
||||
|
||||
/* Bad block in htree interior node */
|
||||
{ PR_2_HTREE_BADBLK,
|
||||
|
@ -1118,22 +1116,22 @@ static const struct e2fsck_problem problem_table[] = {
|
|||
|
||||
/* Error adjusting EA refcount */
|
||||
{ PR_2_ADJ_EA_REFCOUNT,
|
||||
N_("Error addjusting refcount for @a @b %b (@i %i): %m\n"),
|
||||
N_("Error adjusting refcount for @a @b %b (@i %i): %m\n"),
|
||||
PROMPT_NONE, PR_FATAL },
|
||||
|
||||
/* Invalid HTREE root node */
|
||||
{ PR_2_HTREE_BAD_ROOT,
|
||||
N_("@p @h %d: root node is invalid\n"),
|
||||
N_("@p @h %d: root node is @n\n"),
|
||||
PROMPT_CLEAR_HTREE, PR_PREEN_OK },
|
||||
|
||||
/* Invalid HTREE limit */
|
||||
{ PR_2_HTREE_BAD_LIMIT,
|
||||
N_("@p @h %d: node (%B) has bad limit (%N)\n"),
|
||||
N_("@p @h %d: node (%B) has @n limit (%N)\n"),
|
||||
PROMPT_CLEAR_HTREE, PR_PREEN_OK },
|
||||
|
||||
/* Invalid HTREE count */
|
||||
{ PR_2_HTREE_BAD_COUNT,
|
||||
N_("@p @h %d: node (%B) has bad count (%N)\n"),
|
||||
N_("@p @h %d: node (%B) has @n count (%N)\n"),
|
||||
PROMPT_CLEAR_HTREE, PR_PREEN_OK },
|
||||
|
||||
/* HTREE interior node has out-of-order hashes in table */
|
||||
|
@ -1141,9 +1139,9 @@ static const struct e2fsck_problem problem_table[] = {
|
|||
N_("@p @h %d: node (%B) has an unordered hash table\n"),
|
||||
PROMPT_CLEAR_HTREE, PR_PREEN_OK },
|
||||
|
||||
/* Node in HTREE directory has bad depth */
|
||||
/* Node in HTREE directory has invalid depth */
|
||||
{ PR_2_HTREE_BAD_DEPTH,
|
||||
N_("@p @h %d: node (%B) has bad depth\n"),
|
||||
N_("@p @h %d: node (%B) has @n depth\n"),
|
||||
PROMPT_NONE, 0 },
|
||||
|
||||
/* Duplicate directory entry found */
|
||||
|
@ -1245,7 +1243,7 @@ static const struct e2fsck_problem problem_table[] = {
|
|||
|
||||
/* Couldn't fix parent directory -- couldn't find it */
|
||||
{ PR_3_FIX_PARENT_NOFIND,
|
||||
N_("Couldn't fix parent of @i %i: Couldn't find parent @d entry\n\n"),
|
||||
N_("Couldn't fix parent of @i %i: Couldn't find parent @d @e\n\n"),
|
||||
PROMPT_NONE, 0 },
|
||||
|
||||
/* Error allocating inode bitmap */
|
||||
|
@ -1324,12 +1322,12 @@ static const struct e2fsck_problem problem_table[] = {
|
|||
|
||||
/* Unattached zero-length inode */
|
||||
{ PR_4_ZERO_LEN_INODE,
|
||||
"@u @z @i %i. ",
|
||||
N_("@u @z @i %i. "),
|
||||
PROMPT_CLEAR, PR_PREEN_OK|PR_NO_OK },
|
||||
|
||||
/* Unattached inode */
|
||||
{ PR_4_UNATTACHED_INODE,
|
||||
"@u @i %i\n",
|
||||
N_("@u @i %i\n"),
|
||||
PROMPT_CONNECT, 0 },
|
||||
|
||||
/* Inode ref count wrong */
|
||||
|
@ -1341,7 +1339,7 @@ static const struct e2fsck_problem problem_table[] = {
|
|||
N_("WARNING: PROGRAMMING BUG IN E2FSCK!\n"
|
||||
"\tOR SOME BONEHEAD (YOU) IS CHECKING A MOUNTED (LIVE) FILESYSTEM.\n"
|
||||
"@i_link_info[%i] is %N, @i.i_links_count is %Il. "
|
||||
"They should be the same!\n"),
|
||||
"They @s the same!\n"),
|
||||
PROMPT_NONE, 0 },
|
||||
|
||||
/* Pass 5 errors */
|
||||
|
@ -1439,12 +1437,12 @@ static const struct e2fsck_problem problem_table[] = {
|
|||
|
||||
/* Error copying in replacement inode bitmap */
|
||||
{ PR_5_COPY_IBITMAP_ERROR,
|
||||
"Error copying in replacement @i @B: %m\n",
|
||||
N_("Error copying in replacement @i @B: %m\n"),
|
||||
PROMPT_NONE, PR_FATAL },
|
||||
|
||||
/* Error copying in replacement block bitmap */
|
||||
{ PR_5_COPY_BBITMAP_ERROR,
|
||||
"Error copying in replacement @b @B: %m\n",
|
||||
N_("Error copying in replacement @b @B: %m\n"),
|
||||
PROMPT_NONE, PR_FATAL },
|
||||
|
||||
/* Block range not used, but marked in bitmap */
|
||||
|
|
14
po/ChangeLog
14
po/ChangeLog
|
@ -1,3 +1,17 @@
|
|||
2005-06-19 Theodore Ts'o <tytso@mit.edu>
|
||||
|
||||
* at-expand.pl: Add an explanation of how the @-expansion and
|
||||
%-expansion works in e2fsck/problem.c as part of the
|
||||
"translator help".
|
||||
|
||||
* Makefile.in.in: Update e2fsprogs.pot if at-expand.pl has changed.
|
||||
|
||||
* fr.po: Update Franch translation
|
||||
|
||||
2005-06-05 Theodore Ts'o <tytso@mit.edu>
|
||||
|
||||
* nl.po: Add Dutch translation
|
||||
|
||||
2005-05-09 Theodore Ts'o <tytso@mit.edu>
|
||||
|
||||
* rw.po: Add Rwandan translation
|
||||
|
|
|
@ -1 +1 @@
|
|||
cs de es fr it sv tr pl rw
|
||||
cs de es fr it nl pl rw sv tr
|
||||
|
|
|
@ -99,7 +99,8 @@ stamp-po: $(srcdir)/$(DOMAIN).pot
|
|||
|
||||
# This target rebuilds $(DOMAIN).pot; it is an expensive operation.
|
||||
# Note that $(DOMAIN).pot is not touched if it doesn't need to be changed.
|
||||
$(DOMAIN).pot-update: $(POTFILES) $(srcdir)/POTFILES.in remove-potcdate.sed
|
||||
$(DOMAIN).pot-update: $(POTFILES) $(srcdir)/POTFILES.in remove-potcdate.sed \
|
||||
$(srcdir)/at-expand.pl
|
||||
$(XGETTEXT) --default-domain=$(DOMAIN) --directory=$(top_srcdir) \
|
||||
--add-comments=TRANSLATORS: $(XGETTEXT_OPTIONS) \
|
||||
--files-from=$(srcdir)/POTFILES.in \
|
||||
|
|
|
@ -1,10 +1,71 @@
|
|||
#!/usr/bin/perl
|
||||
|
||||
my @translator_help = (
|
||||
"#. The strings in e2fsck's problem.c can be very hard to translate,\n",
|
||||
"#. since the strings are expanded in two different ways. First of all,\n",
|
||||
"#. there is an \@-expansion, where strings like \"\@i\" are expanded to\n",
|
||||
"#. \"inode\", and so on. In order to make it easier for translators, the\n",
|
||||
"#. e2fsprogs po template file has been enhanced with comments that show\n",
|
||||
"#. the \@-expansion, for the strings in the problem.c file.\n",
|
||||
"#.\n",
|
||||
"#. Translators are free to use the \@-expansion facility if they so\n",
|
||||
"#. choose, by providing translations for strings in e2fsck/message.c.\n",
|
||||
"#. These translation can completely replace an expansion; for example,\n",
|
||||
"#. if \"bblock\" (which indicated that \"\@b\" would be expanded to \"block\")\n",
|
||||
"#. is translated as \"ddatenverlust\", then \"\@d\" will be expanded to\n",
|
||||
"#. \"datenverlust\". Alternatively, translators can simply not use the\n",
|
||||
"#. \@-expansion facility at all.\n",
|
||||
"#.\n",
|
||||
"#. The second expansion which is done for e2fsck's problem.c messages is\n",
|
||||
"#. a dynamic %-expansion, which expands %i as an inode number, and so\n",
|
||||
"#. on. A table of these expansions can be found below. Note that\n",
|
||||
"#. %-expressions that begin with \"%D\" and \"%I\" are two-character\n",
|
||||
"#. expansions; so for example, \"%Iu\" expands to the inode's user id\n",
|
||||
"#. ownership field (inode->i_uid).\n",
|
||||
"#. \n",
|
||||
"#. %b <blk> block number\n",
|
||||
"#. %B <blkcount> integer\n",
|
||||
"#. %c <blk2> block number\n",
|
||||
"#. %Di <dirent> -> ino inode number\n",
|
||||
"#. %Dn <dirent> -> name string\n",
|
||||
"#. %Dr <dirent> -> rec_len\n",
|
||||
"#. %Dl <dirent> -> name_len\n",
|
||||
"#. %Dt <dirent> -> filetype\n",
|
||||
"#. %d <dir> inode number\n",
|
||||
"#. %g <group> integer\n",
|
||||
"#. %i <ino> inode number\n",
|
||||
"#. %Is <inode> -> i_size\n",
|
||||
"#. %IS <inode> -> i_extra_isize\n",
|
||||
"#. %Ib <inode> -> i_blocks\n",
|
||||
"#. %Il <inode> -> i_links_count\n",
|
||||
"#. %Im <inode> -> i_mode\n",
|
||||
"#. %IM <inode> -> i_mtime\n",
|
||||
"#. %IF <inode> -> i_faddr\n",
|
||||
"#. %If <inode> -> i_file_acl\n",
|
||||
"#. %Id <inode> -> i_dir_acl\n",
|
||||
"#. %Iu <inode> -> i_uid\n",
|
||||
"#. %Ig <inode> -> i_gid\n",
|
||||
"#. %j <ino2> inode number\n",
|
||||
"#. %m <com_err error message>\n",
|
||||
"#. %N <num>\n",
|
||||
"#. %p ext2fs_get_pathname of directory <ino>\n",
|
||||
"#. %P ext2fs_get_pathname of <dirent>->ino with <ino2> as\n",
|
||||
"#. the containing directory. (If dirent is NULL\n",
|
||||
"#. then return the pathname of directory <ino2>)\n",
|
||||
"#. %q ext2fs_get_pathname of directory <dir>\n",
|
||||
"#. %Q ext2fs_get_pathname of directory <ino> with <dir> as\n",
|
||||
"#. the containing directory.\n",
|
||||
"#. %s <str> miscellaneous string\n",
|
||||
"#. %S backup superblock\n",
|
||||
"#. %X <num> hexadecimal format\n",
|
||||
"#.\n");
|
||||
|
||||
my $is_problem_file = 0;
|
||||
my $save_msg;
|
||||
my $msg_accum = "";
|
||||
my $msg;
|
||||
my $expanded = 0;
|
||||
my $lines = 0;
|
||||
|
||||
sub do_expand {
|
||||
$msg =~ s/\@a/extended attribute/g;
|
||||
|
@ -26,6 +87,8 @@ sub do_expand {
|
|||
$msg =~ s/\@h/HTREE directory inode/g;
|
||||
$msg =~ s/\@l/lost+found/g;
|
||||
$msg =~ s/\@L/is a link/g;
|
||||
$msg =~ s/\@m/multiply-claimed/g;
|
||||
$msg =~ s/\@n/invalid/g;
|
||||
$msg =~ s/\@o/orphaned/g;
|
||||
$msg =~ s/\@p/problem in/g;
|
||||
$msg =~ s/\@r/root inode/g;
|
||||
|
@ -39,6 +102,10 @@ sub do_expand {
|
|||
|
||||
|
||||
while (<>) {
|
||||
$lines++;
|
||||
if ($lines == 6) {
|
||||
print @translator_help;
|
||||
}
|
||||
if (/^#: /)
|
||||
{
|
||||
$is_problem_file = (/^#: e2fsck\/problem/) ? 1 : 0;
|
||||
|
@ -52,7 +119,7 @@ while (<>) {
|
|||
}
|
||||
&do_expand();
|
||||
if ($msg ne "") {
|
||||
$msg_accum = $msg_accum . "#. \@-expand: $msg\n";
|
||||
$msg_accum = $msg_accum . "#. \@-expanded: $msg\n";
|
||||
}
|
||||
next;
|
||||
}
|
||||
|
@ -63,7 +130,7 @@ while (<>) {
|
|||
$expanded++;
|
||||
}
|
||||
&do_expand();
|
||||
$msg_accum = $msg_accum . "#. \@-expand: $msg\n";
|
||||
$msg_accum = $msg_accum . "#. \@-expanded: $msg\n";
|
||||
next;
|
||||
}
|
||||
if (/^msgstr / && $is_problem_file) {
|
||||
|
|
1372
po/e2fsprogs.pot
1372
po/e2fsprogs.pot
File diff suppressed because it is too large
Load Diff
|
@ -14,7 +14,7 @@ Fix? yes
|
|||
Entry 'root' in /test (14) is a link to the root inode.
|
||||
Clear? yes
|
||||
|
||||
Entry 'badino' in /test (14) has bad inode #: 123456.
|
||||
Entry 'badino' in /test (14) has invalid inode #: 123456.
|
||||
Clear? yes
|
||||
|
||||
Entry 'dot' in /test (14) is a link to '.' Clear? yes
|
||||
|
|
|
@ -4,7 +4,7 @@ Pass 1: Checking inodes, blocks, and sizes
|
|||
Inode 12, i_blocks is 2, should be 0. Fix? yes
|
||||
|
||||
Pass 2: Checking directory structure
|
||||
Inode 12 (/motd) has a bad mode (0110444).
|
||||
Inode 12 (/motd) has invalid mode (0110444).
|
||||
Clear? yes
|
||||
|
||||
i_file_acl for inode 13 (/timings) is 39, should be zero.
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
Superblock has a bad ext3 journal (inode 8).
|
||||
Superblock has an invalid ext3 journal (inode 8).
|
||||
Clear? yes
|
||||
|
||||
*** ext3 journal has been deleted - filesystem is now ext2 only ***
|
||||
|
|
|
@ -4,18 +4,16 @@ 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 (and hope for the best) from the
|
||||
bad block list and hope that block is really OK, but there are no
|
||||
guarantees.
|
||||
You can remove this block from the bad block list and hope
|
||||
that the block is really OK. But there are no guarantees.
|
||||
|
||||
Clear? 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 (and hope for the best) from the
|
||||
bad block list and hope that block is really OK, but there are no
|
||||
guarantees.
|
||||
You can remove this block from the bad block list and hope
|
||||
that the block is really OK. But there are no guarantees.
|
||||
|
||||
Clear? yes
|
||||
|
||||
|
|
|
@ -4,29 +4,30 @@ 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.)
|
||||
|
||||
Running additional passes to resolve blocks claimed by more than one inode...
|
||||
Pass 1B: Rescanning for multiply-claimed blocks
|
||||
Multiply-claimed block(s) in inode 2: 21
|
||||
Multiply-claimed block(s) in inode 11: 9 10 11 12 13 14 15 16 17 18 19 20
|
||||
Multiply-claimed block(s) in inode 12: 25 26
|
||||
Pass 1C: Scanning directories for inodes with multiply-claimed blocks.
|
||||
Pass 1D: Reconciling multiply-claimed blocks
|
||||
(There are 3 inodes containing multiply-claimed blocks.)
|
||||
|
||||
File / (inode #2, mod time Sun Jan 2 08:29:13 1994)
|
||||
has 1 duplicate block(s), shared with 1 file(s):
|
||||
has 1 multiply-claimed block(s), shared with 1 file(s):
|
||||
<The bad blocks inode> (inode #1, mod time Sun Jul 17 00:47:58 1994)
|
||||
Clone duplicate/bad blocks? yes
|
||||
Clone multiply-claimed blocks? yes
|
||||
|
||||
File /lost+found (inode #11, mod time Sun Jan 2 08:28:40 1994)
|
||||
has 12 duplicate block(s), shared with 1 file(s):
|
||||
has 12 multiply-claimed block(s), shared with 1 file(s):
|
||||
<The bad blocks inode> (inode #1, mod time Sun Jul 17 00:47:58 1994)
|
||||
Clone duplicate/bad blocks? yes
|
||||
Clone multiply-claimed blocks? yes
|
||||
|
||||
File /termcap (inode #12, mod time Sun Jan 2 08:29:13 1994)
|
||||
has 2 duplicate block(s), shared with 1 file(s):
|
||||
has 2 multiply-claimed block(s), shared with 1 file(s):
|
||||
<The bad blocks inode> (inode #1, mod time Sun Jul 17 00:47:58 1994)
|
||||
Clone duplicate/bad blocks? yes
|
||||
Clone multiply-claimed blocks? yes
|
||||
|
||||
Pass 2: Checking directory structure
|
||||
Pass 3: Checking directory connectivity
|
||||
|
|
|
@ -1,23 +1,24 @@
|
|||
Filesystem did not have a UUID; generating one.
|
||||
|
||||
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.)
|
||||
|
||||
Running additional passes to resolve blocks claimed by more than one inode...
|
||||
Pass 1B: Rescanning for multiply-claimed blocks
|
||||
Multiply-claimed block(s) in inode 12: 25 26
|
||||
Multiply-claimed block(s) in inode 13: 25 26
|
||||
Pass 1C: Scanning directories for inodes with multiply-claimed blocks.
|
||||
Pass 1D: Reconciling multiply-claimed blocks
|
||||
(There are 2 inodes containing multiply-claimed blocks.)
|
||||
|
||||
File /termcap (inode #12, mod time Tue Sep 21 03:19:14 1993)
|
||||
has 2 duplicate block(s), shared with 1 file(s):
|
||||
has 2 multiply-claimed block(s), shared with 1 file(s):
|
||||
/motd (inode #13, mod time Tue Sep 21 03:19:20 1993)
|
||||
Clone duplicate/bad blocks? yes
|
||||
Clone multiply-claimed blocks? yes
|
||||
|
||||
File /motd (inode #13, mod time Tue Sep 21 03:19:20 1993)
|
||||
has 2 duplicate block(s), shared with 1 file(s):
|
||||
has 2 multiply-claimed block(s), shared with 1 file(s):
|
||||
/termcap (inode #12, mod time Tue Sep 21 03:19:14 1993)
|
||||
Duplicated blocks already reassigned or cloned.
|
||||
Multiply-claimed blocks already reassigned or cloned.
|
||||
|
||||
Pass 2: Checking directory structure
|
||||
Pass 3: Checking directory connectivity
|
||||
|
|
|
@ -1,30 +1,31 @@
|
|||
Filesystem did not have a UUID; generating one.
|
||||
|
||||
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.)
|
||||
|
||||
Running additional passes to resolve blocks claimed by more than one inode...
|
||||
Pass 1B: Rescanning for multiply-claimed blocks
|
||||
Multiply-claimed block(s) in inode 12: 25 26
|
||||
Multiply-claimed block(s) in inode 13: 25 26 57 58
|
||||
Multiply-claimed block(s) in inode 14: 57 58
|
||||
Pass 1C: Scanning directories for inodes with multiply-claimed blocks.
|
||||
Pass 1D: Reconciling multiply-claimed blocks
|
||||
(There are 3 inodes containing multiply-claimed blocks.)
|
||||
|
||||
File /termcap (inode #12, mod time Tue Sep 21 03:19:14 1993)
|
||||
has 2 duplicate block(s), shared with 1 file(s):
|
||||
has 2 multiply-claimed block(s), shared with 1 file(s):
|
||||
/motd (inode #13, mod time Tue Sep 21 03:19:20 1993)
|
||||
Clone duplicate/bad blocks? yes
|
||||
Clone multiply-claimed blocks? yes
|
||||
|
||||
File /motd (inode #13, mod time Tue Sep 21 03:19:20 1993)
|
||||
has 4 duplicate block(s), shared with 2 file(s):
|
||||
has 4 multiply-claimed block(s), shared with 2 file(s):
|
||||
/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
|
||||
Clone multiply-claimed blocks? yes
|
||||
|
||||
File /pass1.c (inode #14, mod time Tue Sep 21 04:28:37 1993)
|
||||
has 2 duplicate block(s), shared with 1 file(s):
|
||||
has 2 multiply-claimed block(s), shared with 1 file(s):
|
||||
/motd (inode #13, mod time Tue Sep 21 03:19:20 1993)
|
||||
Duplicated blocks already reassigned or cloned.
|
||||
Multiply-claimed blocks already reassigned or cloned.
|
||||
|
||||
Pass 2: Checking directory structure
|
||||
Pass 3: Checking directory connectivity
|
||||
|
|
|
@ -1,26 +1,27 @@
|
|||
Pass 1: Checking inodes, blocks, and sizes
|
||||
Inode 16, i_blocks is 22, should be 24. Fix? yes
|
||||
|
||||
Duplicate blocks found... invoking duplicate block passes.
|
||||
Pass 1B: Rescan for duplicate/bad blocks
|
||||
Duplicate/bad block(s) in inode 11: 24 24
|
||||
Duplicate/bad block(s) in inode 14: 69 69
|
||||
Duplicate/bad block(s) in inode 16: 99 99
|
||||
Pass 1C: Scan directories for inodes with dup blocks.
|
||||
Pass 1D: Reconciling duplicate blocks
|
||||
(There are 3 inodes containing duplicate/bad blocks.)
|
||||
|
||||
Running additional passes to resolve blocks claimed by more than one inode...
|
||||
Pass 1B: Rescanning for multiply-claimed blocks
|
||||
Multiply-claimed block(s) in inode 11: 24 24
|
||||
Multiply-claimed block(s) in inode 14: 69 69
|
||||
Multiply-claimed block(s) in inode 16: 99 99
|
||||
Pass 1C: Scanning directories for inodes with multiply-claimed blocks.
|
||||
Pass 1D: Reconciling multiply-claimed blocks
|
||||
(There are 3 inodes containing multiply-claimed blocks.)
|
||||
|
||||
File /lost+found (inode #11, mod time Mon Sep 20 03:26:36 1993)
|
||||
has 2 duplicate block(s), shared with 0 file(s):
|
||||
Clone duplicate/bad blocks? yes
|
||||
has 2 multiply-claimed block(s), shared with 0 file(s):
|
||||
Clone multiply-claimed blocks? yes
|
||||
|
||||
File /pass1.c (inode #14, mod time Tue Sep 21 04:28:37 1993)
|
||||
has 2 duplicate block(s), shared with 0 file(s):
|
||||
Clone duplicate/bad blocks? yes
|
||||
has 2 multiply-claimed block(s), shared with 0 file(s):
|
||||
Clone multiply-claimed blocks? yes
|
||||
|
||||
File /e2fsck (inode #16, mod time Tue Sep 21 04:32:22 1993)
|
||||
has 2 duplicate block(s), shared with 0 file(s):
|
||||
Clone duplicate/bad blocks? yes
|
||||
has 2 multiply-claimed block(s), shared with 0 file(s):
|
||||
Clone multiply-claimed blocks? yes
|
||||
|
||||
Pass 2: Checking directory structure
|
||||
Directory inode 11, block 12, offset 0: directory corrupted
|
||||
|
|
|
@ -1,18 +1,19 @@
|
|||
Resize inode not valid. Recreate? yes
|
||||
|
||||
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 7: 4 5 6 7
|
||||
Duplicate/bad block(s) in inode 12: 4 5 6 7
|
||||
Pass 1C: Scan directories for inodes with dup blocks.
|
||||
Pass 1D: Reconciling duplicate blocks
|
||||
(There are 1 inodes containing duplicate/bad blocks.)
|
||||
|
||||
Running additional passes to resolve blocks claimed by more than one inode...
|
||||
Pass 1B: Rescanning for multiply-claimed blocks
|
||||
Multiply-claimed block(s) in inode 7: 4 5 6 7
|
||||
Multiply-claimed block(s) in inode 12: 4 5 6 7
|
||||
Pass 1C: Scanning directories for inodes with multiply-claimed blocks.
|
||||
Pass 1D: Reconciling multiply-claimed blocks
|
||||
(There are 1 inodes containing multiply-claimed blocks.)
|
||||
|
||||
File /debugfs (inode #12, mod time Mon Apr 11 00:00:00 2005)
|
||||
has 4 duplicate block(s), shared with 1 file(s):
|
||||
has 4 multiply-claimed block(s), shared with 1 file(s):
|
||||
<The group descriptor inode> (inode #7, mod time Mon Apr 11 06:13:20 2005)
|
||||
Clone duplicate/bad blocks? yes
|
||||
Clone multiply-claimed blocks? yes
|
||||
|
||||
Pass 2: Checking directory structure
|
||||
Pass 3: Checking directory connectivity
|
||||
|
|
|
@ -5,33 +5,34 @@ Inode 12, i_size is 4096, should be 5120. Fix? yes
|
|||
|
||||
Inode 13, i_size is 0, should be 2048. Fix? yes
|
||||
|
||||
Duplicate blocks found... invoking duplicate block passes.
|
||||
Pass 1B: Rescan for duplicate/bad blocks
|
||||
Duplicate/bad block(s) in inode 12: 3 4 6 1
|
||||
Duplicate/bad block(s) in inode 13: 2 3
|
||||
Duplicate/bad block(s) in inode 14: 2
|
||||
Pass 1C: Scan directories for inodes with dup blocks.
|
||||
Pass 1D: Reconciling duplicate blocks
|
||||
(There are 3 inodes containing duplicate/bad blocks.)
|
||||
|
||||
Running additional passes to resolve blocks claimed by more than one inode...
|
||||
Pass 1B: Rescanning for multiply-claimed blocks
|
||||
Multiply-claimed block(s) in inode 12: 3 4 6 1
|
||||
Multiply-claimed block(s) in inode 13: 2 3
|
||||
Multiply-claimed block(s) in inode 14: 2
|
||||
Pass 1C: Scanning directories for inodes with multiply-claimed blocks.
|
||||
Pass 1D: Reconciling multiply-claimed blocks
|
||||
(There are 3 inodes containing multiply-claimed blocks.)
|
||||
|
||||
File /foo (inode #12, mod time Thu Apr 28 17:57:53 1994)
|
||||
has 4 duplicate block(s), shared with 2 file(s):
|
||||
has 4 multiply-claimed block(s), shared with 2 file(s):
|
||||
<filesystem metadata>
|
||||
/bar (inode #13, mod time Thu Aug 5 07:17:17 1999)
|
||||
Clone duplicate/bad blocks? yes
|
||||
Clone multiply-claimed blocks? yes
|
||||
|
||||
File /bar (inode #13, mod time Thu Aug 5 07:17:17 1999)
|
||||
has 2 duplicate block(s), shared with 3 file(s):
|
||||
has 2 multiply-claimed block(s), shared with 3 file(s):
|
||||
<filesystem metadata>
|
||||
/foo (inode #12, mod time Thu Apr 28 17:57:53 1994)
|
||||
/quux (inode #14, mod time Thu Aug 5 07:18:09 1999)
|
||||
Clone duplicate/bad blocks? yes
|
||||
Clone multiply-claimed blocks? yes
|
||||
|
||||
File /quux (inode #14, mod time Thu Aug 5 07:18:09 1999)
|
||||
has 1 duplicate block(s), shared with 2 file(s):
|
||||
has 1 multiply-claimed block(s), shared with 2 file(s):
|
||||
<filesystem metadata>
|
||||
/bar (inode #13, mod time Thu Aug 5 07:17:17 1999)
|
||||
Clone duplicate/bad blocks? yes
|
||||
Clone multiply-claimed blocks? yes
|
||||
|
||||
Pass 2: Checking directory structure
|
||||
Directory inode 12, block 1, offset 0: directory corrupted
|
||||
|
|
|
@ -1,17 +1,18 @@
|
|||
Filesystem did not have a UUID; generating one.
|
||||
|
||||
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: 2 3 1
|
||||
Pass 1C: Scan directories for inodes with dup blocks.
|
||||
Pass 1D: Reconciling duplicate blocks
|
||||
(There are 1 inodes containing duplicate/bad blocks.)
|
||||
|
||||
Running additional passes to resolve blocks claimed by more than one inode...
|
||||
Pass 1B: Rescanning for multiply-claimed blocks
|
||||
Multiply-claimed block(s) in inode 12: 2 3 1
|
||||
Pass 1C: Scanning directories for inodes with multiply-claimed blocks.
|
||||
Pass 1D: Reconciling multiply-claimed blocks
|
||||
(There are 1 inodes containing multiply-claimed blocks.)
|
||||
|
||||
File /termcap (inode #12, mod time Sun Jan 2 08:29:13 1994)
|
||||
has 3 duplicate block(s), shared with 1 file(s):
|
||||
has 3 multiply-claimed block(s), shared with 1 file(s):
|
||||
<filesystem metadata>
|
||||
Clone duplicate/bad blocks? yes
|
||||
Clone multiply-claimed blocks? yes
|
||||
|
||||
Pass 2: Checking directory structure
|
||||
Pass 3: Checking directory connectivity
|
||||
|
|
|
@ -3,7 +3,7 @@ Pass 2: Checking directory structure
|
|||
Problem in HTREE directory inode 12929: node (531) has bad max hash
|
||||
Problem in HTREE directory inode 12929: node (993) referenced twice
|
||||
Problem in HTREE directory inode 12929: node (1061) has bad min hash
|
||||
Problem in HTREE directory inode 12929: node (1062) has bad depth
|
||||
Problem in HTREE directory inode 12929: node (1062) has invalid depth
|
||||
Problem in HTREE directory inode 12929: node (1062) has bad max hash
|
||||
Problem in HTREE directory inode 12929: node (1062) not referenced
|
||||
Invalid HTREE directory inode 12929 (/test2). Clear? yes
|
||||
|
|
|
@ -20,10 +20,10 @@ Pass 2: Checking directory structure
|
|||
Problem in HTREE directory inode 80065: node (0) has an unordered hash table
|
||||
Clear HTree index? yes
|
||||
|
||||
Problem in HTREE directory inode 86737: node (0) has bad limit (511)
|
||||
Problem in HTREE directory inode 86737: node (0) has invalid limit (511)
|
||||
Clear HTree index? yes
|
||||
|
||||
Problem in HTREE directory inode 93409: node (0) has bad count (234)
|
||||
Problem in HTREE directory inode 93409: node (0) has invalid count (234)
|
||||
Clear HTree index? yes
|
||||
|
||||
Problem in HTREE directory inode 73393: node (1) has bad min hash
|
||||
|
|
|
@ -1,9 +1,8 @@
|
|||
Note: if there is several inode or block bitmap blocks
|
||||
which require relocation, or one part of the inode table
|
||||
which must be moved, you may wish to try running e2fsck
|
||||
with the '-b 8193' option first. The problem may lie only
|
||||
with the primary block group descriptor, and the backup
|
||||
block group descriptor may be OK.
|
||||
Note: if several inode or block bitmap blocks or part
|
||||
of the inode table require relocation, you may wish to try
|
||||
running e2fsck with the '-b 8193' option first. The problem
|
||||
may lie only with the primary block group descriptors, and
|
||||
the backup block group descriptors may be OK.
|
||||
|
||||
Block bitmap for group 0 is not in group. (block 4096)
|
||||
Relocate? yes
|
||||
|
|
|
@ -1,9 +1,8 @@
|
|||
Note: if there is several inode or block bitmap blocks
|
||||
which require relocation, or one part of the inode table
|
||||
which must be moved, you may wish to try running e2fsck
|
||||
with the '-b 8193' option first. The problem may lie only
|
||||
with the primary block group descriptor, and the backup
|
||||
block group descriptor may be OK.
|
||||
Note: if several inode or block bitmap blocks or part
|
||||
of the inode table require relocation, you may wish to try
|
||||
running e2fsck with the '-b 8193' option first. The problem
|
||||
may lie only with the primary block group descriptors, and
|
||||
the backup block group descriptors may be OK.
|
||||
|
||||
Inode bitmap for group 0 is not in group. (block 4000)
|
||||
Relocate? yes
|
||||
|
|
|
@ -1,9 +1,8 @@
|
|||
Note: if there is several inode or block bitmap blocks
|
||||
which require relocation, or one part of the inode table
|
||||
which must be moved, you may wish to try running e2fsck
|
||||
with the '-b 8193' option first. The problem may lie only
|
||||
with the primary block group descriptor, and the backup
|
||||
block group descriptor may be OK.
|
||||
Note: if several inode or block bitmap blocks or part
|
||||
of the inode table require relocation, you may wish to try
|
||||
running e2fsck with the '-b 8193' option first. The problem
|
||||
may lie only with the primary block group descriptors, and
|
||||
the backup block group descriptors may be OK.
|
||||
|
||||
Inode table for group 0 is not in group. (block 40000)
|
||||
WARNING: SEVERE DATA LOSS POSSIBLE.
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
Superblock has a bad ext3 journal (inode 8).
|
||||
Superblock has an invalid ext3 journal (inode 8).
|
||||
Clear? yes
|
||||
|
||||
*** ext3 journal has been deleted - filesystem is now ext2 only ***
|
||||
|
|
|
@ -1,8 +1,7 @@
|
|||
which require relocation, or one part of the inode table
|
||||
which must be moved, you may wish to try running e2fsck
|
||||
with the '-b 8193' option first. The problem may lie only
|
||||
with the primary block group descriptor, and the backup
|
||||
block group descriptor may be OK.
|
||||
of the inode table require relocation, you may wish to try
|
||||
running e2fsck with the '-b 8193' option first. The problem
|
||||
may lie only with the primary block group descriptors, and
|
||||
the backup block group descriptors may be OK.
|
||||
|
||||
test_filesys: Block bitmap for group 0 is not in group. (block 0)
|
||||
|
||||
|
|
|
@ -22,7 +22,7 @@ Inode 13 ref count is 4, should be 3. Fix? yes
|
|||
i_file_acl for inode 28 (...) is 4294967295, should be zero.
|
||||
Clear? yes
|
||||
|
||||
Inode 28 (...) has a bad mode (0177777).
|
||||
Inode 28 (...) has invalid mode (0177777).
|
||||
Clear? yes
|
||||
|
||||
Pass 5: Checking group summary information
|
||||
|
|
Loading…
Reference in New Issue