diff options
author | Theodore Ts'o <tytso@mit.edu> | 2020-03-21 22:34:30 -0400 |
---|---|---|
committer | Theodore Ts'o <tytso@mit.edu> | 2020-03-21 22:34:30 -0400 |
commit | 8fd92e9af006da392d667775b8bbe0db9e8639d2 (patch) | |
tree | 0916e5d01faee9f883b62c80e436f53764acfbcb | |
parent | 1126208873090c4a85c123b325a81d1505ed2f17 (diff) | |
parent | 29d22c467547f11f4db31331549ee4e304eeb220 (diff) | |
download | e2fsprogs-8fd92e9af006da392d667775b8bbe0db9e8639d2.tar.gz |
Merge tag 'v1.45.6' into next
v1.45.6
-rw-r--r-- | README | 2 | ||||
l--------- | RELEASE-NOTES | 2 | ||||
-rw-r--r-- | contrib/android/basefs_allocator.c | 121 | ||||
-rw-r--r-- | contrib/android/fsmap.c | 58 | ||||
-rw-r--r-- | debian/changelog | 26 | ||||
-rw-r--r-- | debian/libext2fs2.symbols | 2 | ||||
-rw-r--r-- | debugfs/Android.bp | 1 | ||||
-rw-r--r-- | doc/RelNotes/v1.45.6.txt | 62 | ||||
-rw-r--r-- | doc/libext2fs.texinfo | 8 | ||||
-rw-r--r-- | e2fsck/Android.bp | 10 | ||||
-rw-r--r-- | e2fsprogs.lsm | 8 | ||||
-rw-r--r-- | e2fsprogs.spec | 2 | ||||
-rw-r--r-- | lib/Android.bp | 1 | ||||
-rw-r--r-- | lib/blkid/Android.bp | 1 | ||||
-rw-r--r-- | lib/e2p/Android.bp | 1 | ||||
-rw-r--r-- | lib/e2p/e2p.h | 2 | ||||
-rw-r--r-- | lib/e2p/feature.c | 18 | ||||
-rw-r--r-- | lib/et/Android.bp | 1 | ||||
-rw-r--r-- | lib/ext2fs/Android.bp | 1 | ||||
-rw-r--r-- | lib/ext2fs/gen_bitmap.c | 4 | ||||
-rw-r--r-- | lib/support/Android.bp | 1 | ||||
-rw-r--r-- | lib/uuid/Android.bp | 1 | ||||
-rw-r--r-- | misc/Android.bp | 33 | ||||
-rw-r--r-- | misc/mke2fs.8.in | 11 | ||||
-rw-r--r-- | misc/tune2fs.8.in | 8 | ||||
-rw-r--r-- | po/e2fsprogs.pot | 627 | ||||
-rw-r--r-- | po/ms.po | 284 | ||||
-rw-r--r-- | resize/Android.bp | 48 | ||||
-rw-r--r-- | util/android_types.h | 4 | ||||
-rwxr-xr-x | util/gen-android-files | 7 | ||||
-rw-r--r-- | version.h | 2 |
31 files changed, 832 insertions, 525 deletions
@@ -1,4 +1,4 @@ - This is the new version (1.45.5) of the second extended file + This is the new version (1.45.6) of the second extended file system management programs. From time to time, I release new versions of e2fsprogs, to fix diff --git a/RELEASE-NOTES b/RELEASE-NOTES index df4968224..9387cc6db 120000 --- a/RELEASE-NOTES +++ b/RELEASE-NOTES @@ -1 +1 @@ -doc/RelNotes/v1.45.5.txt
\ No newline at end of file +doc/RelNotes/v1.45.6.txt
\ No newline at end of file diff --git a/contrib/android/basefs_allocator.c b/contrib/android/basefs_allocator.c index 658a75147..5c92ddc2d 100644 --- a/contrib/android/basefs_allocator.c +++ b/contrib/android/basefs_allocator.c @@ -9,6 +9,8 @@ struct base_fs_allocator { struct ext2fs_hashmap *entries; struct basefs_entry *cur_entry; + /* The next expected logical block to allocate for cur_entry. */ + blk64_t next_lblk; /* Blocks which are definitely owned by a single inode in BaseFS. */ ext2fs_block_bitmap exclusive_block_map; /* Blocks which are available to the first inode that requests it. */ @@ -39,6 +41,28 @@ static void fs_free_blocks_range(ext2_filsys fs, } } +/* + * Free any blocks in the bitmap that were reserved but never used. This is + * needed to free dedup_block_map and ensure the free block bitmap is + * internally consistent. + */ +static void fs_free_blocks_bitmap(ext2_filsys fs, ext2fs_block_bitmap bitmap) +{ + blk64_t block = 0; + blk64_t start = fs->super->s_first_data_block; + blk64_t end = ext2fs_blocks_count(fs->super) - 1; + errcode_t retval; + + for (;;) { + retval = ext2fs_find_first_set_block_bitmap2(bitmap, start, end, + &block); + if (retval) + break; + ext2fs_unmark_block_bitmap2(fs->block_map, block); + start = block + 1; + } +} + static void basefs_allocator_free(ext2_filsys fs, struct base_fs_allocator *allocator) { @@ -53,6 +77,7 @@ static void basefs_allocator_free(ext2_filsys fs, } ext2fs_hashmap_free(entries); } + fs_free_blocks_bitmap(fs, allocator->dedup_block_map); ext2fs_free_block_bitmap(allocator->exclusive_block_map); ext2fs_free_block_bitmap(allocator->dedup_block_map); free(allocator); @@ -191,29 +216,66 @@ out: } /* Try and acquire the next usable block from the Base FS map. */ -static int get_next_block(ext2_filsys fs, struct base_fs_allocator *allocator, - struct block_range_list* list, blk64_t *ret) +static errcode_t get_next_block(ext2_filsys fs, struct base_fs_allocator *allocator, + struct block_range_list* list, blk64_t *ret) { blk64_t block; ext2fs_block_bitmap exclusive_map = allocator->exclusive_block_map; ext2fs_block_bitmap dedup_map = allocator->dedup_block_map; - while (list->head) { + if (!list->head) + return EXT2_ET_BLOCK_ALLOC_FAIL; + + block = consume_next_block(list); + if (block >= ext2fs_blocks_count(fs->super)) + return EXT2_ET_BLOCK_ALLOC_FAIL; + if (ext2fs_test_block_bitmap2(exclusive_map, block)) { + ext2fs_unmark_block_bitmap2(exclusive_map, block); + *ret = block; + return 0; + } + if (ext2fs_test_block_bitmap2(dedup_map, block)) { + ext2fs_unmark_block_bitmap2(dedup_map, block); + *ret = block; + return 0; + } + return EXT2_ET_BLOCK_ALLOC_FAIL; +} + +/* + * BaseFS lists blocks in logical block order. However, the allocator hook is + * only called if a block needs to be allocated. In the case of a deduplicated + * block, or a hole, the hook is not invoked. This means the next block + * allocation request will be out of sequence. For example, consider if BaseFS + * specifies the following (0 being a hole): + * 1 2 3 0 4 5 + * + * If the new file has a hole at logical block 0, we could accidentally + * shift the entire expected block list as follows: + * 0 1 2 0 3 4 + * + * To account for this, we track the next expected logical block in the + * allocator. If the current request is for a later logical block, we skip and + * free the intermediate physical blocks that would have been allocated. This + * ensures the original block assignment is respected. + */ +static void skip_blocks(ext2_filsys fs, struct base_fs_allocator *allocator, + struct blk_alloc_ctx *ctx) +{ + blk64_t block; + struct block_range_list *list = &allocator->cur_entry->blocks; + ext2fs_block_bitmap exclusive_map = allocator->exclusive_block_map; + + while (list->head && allocator->next_lblk < ctx->lblk) { block = consume_next_block(list); if (block >= ext2fs_blocks_count(fs->super)) continue; if (ext2fs_test_block_bitmap2(exclusive_map, block)) { ext2fs_unmark_block_bitmap2(exclusive_map, block); - *ret = block; - return 0; - } - if (ext2fs_test_block_bitmap2(dedup_map, block)) { - ext2fs_unmark_block_bitmap2(dedup_map, block); - *ret = block; - return 0; + ext2fs_unmark_block_bitmap2(fs->block_map, block); } + allocator->next_lblk++; } - return -1; } static errcode_t basefs_block_allocator(ext2_filsys fs, blk64_t goal, @@ -225,6 +287,10 @@ static errcode_t basefs_block_allocator(ext2_filsys fs, blk64_t goal, ext2fs_block_bitmap dedup_map = allocator->dedup_block_map; if (e && ctx && (ctx->flags & BLOCK_ALLOC_DATA)) { + if (allocator->next_lblk < ctx->lblk) + skip_blocks(fs, allocator, ctx); + allocator->next_lblk = ctx->lblk + 1; + if (!get_next_block(fs, allocator, &e->blocks, ret)) return 0; } @@ -234,17 +300,28 @@ static errcode_t basefs_block_allocator(ext2_filsys fs, blk64_t goal, ext2fs_mark_block_bitmap2(fs->block_map, *ret); return 0; } - if (retval == EXT2_ET_BLOCK_ALLOC_FAIL) { - /* Try to steal a block from the dedup pool. */ - retval = ext2fs_find_first_set_block_bitmap2(dedup_map, - fs->super->s_first_data_block, - ext2fs_blocks_count(fs->super) - 1, ret); - if (!retval) { - ext2fs_unmark_block_bitmap2(dedup_map, *ret); + if (retval != EXT2_ET_BLOCK_ALLOC_FAIL) + return retval; + + /* Try to steal a block from the dedup pool. */ + retval = ext2fs_find_first_set_block_bitmap2(dedup_map, + fs->super->s_first_data_block, + ext2fs_blocks_count(fs->super) - 1, ret); + if (!retval) { + ext2fs_unmark_block_bitmap2(dedup_map, *ret); + return 0; + } + + /* + * As a last resort, take any block from our file's list. This + * risks bloating the diff, but means we are more likely to + * successfully build an image. + */ + while (e->blocks.head) { + if (!get_next_block(fs, allocator, &e->blocks, ret)) return 0; - } } - return retval; + return EXT2_ET_BLOCK_ALLOC_FAIL; } void base_fs_alloc_cleanup(ext2_filsys fs) @@ -264,10 +341,12 @@ errcode_t base_fs_alloc_set_target(ext2_filsys fs, const char *target_path, if (mode != S_IFREG) return 0; - if (allocator) + if (allocator) { allocator->cur_entry = ext2fs_hashmap_lookup(allocator->entries, target_path, strlen(target_path)); + allocator->next_lblk = 0; + } return 0; } diff --git a/contrib/android/fsmap.c b/contrib/android/fsmap.c index 36adb7f0a..9ee8472dc 100644 --- a/contrib/android/fsmap.c +++ b/contrib/android/fsmap.c @@ -23,11 +23,51 @@ static int walk_block(ext2_filsys fs EXT2FS_ATTR((unused)), blk64_t *blocknr, return format->add_block(fs, *blocknr, blockcnt < 0, format->private); } +static errcode_t ino_iter_extents(ext2_filsys fs, ext2_ino_t ino, + ext2_extent_handle_t extents, + struct walk_ext_priv_data *pdata) +{ + blk64_t block; + errcode_t retval; + blk64_t next_lblk = 0; + int op = EXT2_EXTENT_ROOT; + struct ext2fs_extent extent; + struct fsmap_format *format = pdata->format; + + for (;;) { + retval = ext2fs_extent_get(extents, op, &extent); + if (retval) + break; + + op = EXT2_EXTENT_NEXT; + + if ((extent.e_flags & EXT2_EXTENT_FLAGS_SECOND_VISIT) || + !(extent.e_flags & EXT2_EXTENT_FLAGS_LEAF)) + continue; + + for (; next_lblk < extent.e_lblk; next_lblk++) + format->add_block(fs, 0, 0, format->private); + + block = extent.e_pblk; + for (; next_lblk < extent.e_lblk + extent.e_len; next_lblk++) + format->add_block(fs, block++, 0, format->private); + } + + if (retval == EXT2_ET_EXTENT_NO_NEXT) + retval = 0; + if (retval) { + com_err(__func__, retval, ("getting extents of ino \"%u\""), + ino); + } + return retval; +} + static errcode_t ino_iter_blocks(ext2_filsys fs, ext2_ino_t ino, struct walk_ext_priv_data *pdata) { errcode_t retval; struct ext2_inode inode; + ext2_extent_handle_t extents; struct fsmap_format *format = pdata->format; retval = ext2fs_read_inode(fs, ino, &inode); @@ -38,10 +78,20 @@ static errcode_t ino_iter_blocks(ext2_filsys fs, ext2_ino_t ino, return format->inline_data(&(inode.i_block[0]), format->private); - retval = ext2fs_block_iterate3(fs, ino, 0, NULL, walk_block, pdata); - if (retval) - com_err(__func__, retval, _("listing blocks of ino \"%u\""), - ino); + retval = ext2fs_extent_open(fs, ino, &extents); + if (retval == EXT2_ET_INODE_NOT_EXTENT) { + retval = ext2fs_block_iterate3(fs, ino, BLOCK_FLAG_READ_ONLY, + NULL, walk_block, pdata); + if (retval) { + com_err(__func__, retval, _("listing blocks of ino \"%u\""), + ino); + } + return retval; + } + + retval = ino_iter_extents(fs, ino, extents, pdata); + + ext2fs_extent_free(extents); return retval; } diff --git a/debian/changelog b/debian/changelog index b388f1231..4fd1eca47 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,27 @@ +e2fsprogs (1.45.6-1) unstable; urgency=medium + + * New upstream release + * Fixed a number of potential out of bounds memory accesses caused by + fuzzed / malicious file systems. + * Fix a spurious complaint from e2fsck when a directory which previously + had more than 32000 subdirectories has the number of subdirectories + drops below 32000. + * Improve e2fsck's ability to deal with file systems with a *very* large + number of directories. + * Debugfs will ignore lines in its command files which start with a + comment character ("#"). + * Fix debugfs so it correctly prints inode numbers > 2**31. + * Filefrag now supports very large files (with > 4 billion blocks), as + well as block sizes up to 1 GiB. + * Mke2fs -d now correctly sets permission with files where the owner + permissions are not rwx. + * Updated and clarified various man pages + (Closes: #953493, #953494, #951808) + * Drop as unneeded libattr1-dev as a build dependency (Closes: #953926) + * Update the Malay translation from the translation project. + + -- Theodore Y. Ts'o <tytso@mit.edu> Fri, 20 Mar 2020 23:49:33 -0400 + e2fsprogs (1.45.5-2) unstable; urgency=medium * Fix com_err support on Hurd, which has POSIX E* error code starting at @@ -9,7 +33,7 @@ e2fsprogs (1.45.5-2) unstable; urgency=medium e2fsprogs (1.45.5-1) unstable; urgency=medium - * New upstream feature + * New upstream release * E2fsck will no longer force a full file system check if time-based forced checks are disabled and the last mount time or last write time in the superblock are in the future. diff --git a/debian/libext2fs2.symbols b/debian/libext2fs2.symbols index 024630fad..e4952481a 100644 --- a/debian/libext2fs2.symbols +++ b/debian/libext2fs2.symbols @@ -6,6 +6,7 @@ libe2p.so.2 libext2fs2 #MINVER# e2p_encmode2string@Base 1.43 e2p_encoding2str@Base 1.45.1 e2p_feature2string@Base 1.37 + e2p_feature_to_string@Base 1.45.6 e2p_get_encoding_flags@Base 1.45 e2p_hash2string@Base 1.37 e2p_is_null_uuid@Base 1.37 @@ -480,6 +481,7 @@ libext2fs.so.2 libext2fs2 #MINVER# ext2fs_read_inode_full@Base 1.37 ext2fs_remove_exit_fn@Base 1.43 ext2fs_reserve_super_and_bgd@Base 1.37 + ext2fs_resize_array@Base 1.45.6 ext2fs_resize_block_bitmap2@Base 1.42 ext2fs_resize_block_bitmap@Base 1.37 ext2fs_resize_generic_bitmap@Base 1.37 diff --git a/debugfs/Android.bp b/debugfs/Android.bp index 9f9a9f0ce..b9f299b5f 100644 --- a/debugfs/Android.bp +++ b/debugfs/Android.bp @@ -66,6 +66,7 @@ cc_binary { cc_binary { name: "debugfs_static", static_executable: true, + host_supported: true, defaults: ["debugfs-defaults"], static_libs: debugfs_libs, diff --git a/doc/RelNotes/v1.45.6.txt b/doc/RelNotes/v1.45.6.txt new file mode 100644 index 000000000..ac822bfba --- /dev/null +++ b/doc/RelNotes/v1.45.6.txt @@ -0,0 +1,62 @@ +E2fsprogs 1.45.6 (March 20, 2020) +================================== + +Updates/Fixes since v1.45.5: + +UI and Features +--------------- + +Debugfs will ignore lines in its command files which start with a +comment character ("#"). + + +Fixes +----- + +Fixed a number of potential out of bounds memory accesses caused by +fuzzed / malicious file systems. (Addresses Google Bug: #147849134) + +Fix a spurious complaint from e2fsck when a directory which previously +had more than 32000 subdirectories has the number of subdirectories +drops below 32000. + +Fix an ismounted check when an LVM device is renamed while the device is +mounted. + +Mke2fs -d now correctly sets permission with files where the owner +permissions are not rwx. + +Improve e2fsck's ability to deal with file systems with very large +number of directories, such that various data structures take more than +2GiB of memory. Use better structure packing to improve the memory +efficiency of these data structures. + +Fix debugfs so it correctly prints inode numbers > 2**31. + +Filefrag now supports very large files (with > 4 billion blocks), as +well as block sizes up to 1 GiB. + +Updated and clarified various man pages. (Addresses Debian Bugs: +#953493, #953494, #951808) + + + +Performance, Internal Implementation, Development Support etc. +-------------------------------------------------------------- + +Reserved the error code EXT2_ET_NO_GDESC (which will be used in +e2fsprogs v1.46+) + +Added a thread-safe variant of e2p_feature2string(), +e2p_feature_to_string() to the libe2p library. + +Fixed portability problems caused by gcc 10. + +Fixed portability problem in libcom_err with GNU Hurd. + +Fixed various Debian packaging issues. (Addresses-Debian-Bug: #953926) + +Synchronized changes from Android's AOSP e2fsprogs tree. + +Update the Malay translation from the translation project. + diff --git a/doc/libext2fs.texinfo b/doc/libext2fs.texinfo index 3ad28efa0..51012eb63 100644 --- a/doc/libext2fs.texinfo +++ b/doc/libext2fs.texinfo @@ -1,7 +1,7 @@ \input texinfo @c -*-texinfo-*- @c %**start of header @setfilename libext2fs.info -@settitle The EXT2FS Library (version 1.45.5) +@settitle The EXT2FS Library (version 1.45.6) @synindex tp fn @comment %**end of header @@ -60,8 +60,8 @@ by the author. @title The EXT2FS Library @subtitle The EXT2FS Library -@subtitle Version 1.45.5 -@subtitle January 2020 +@subtitle Version 1.45.6 +@subtitle March 2020 @author by Theodore Ts'o @@ -101,7 +101,7 @@ by the Foundation. @top The EXT2FS Library -This manual documents the EXT2FS Library, version 1.45.5. +This manual documents the EXT2FS Library, version 1.45.6. @menu * Introduction to the EXT2FS Library:: diff --git a/e2fsck/Android.bp b/e2fsck/Android.bp index 5c802ac6d..d410a5e39 100644 --- a/e2fsck/Android.bp +++ b/e2fsck/Android.bp @@ -67,3 +67,13 @@ cc_binary { static_libs: e2fsck_libs, } + +cc_binary { + name: "e2fsck_ramdisk", + stem: "e2fsck", + static_executable: true, + ramdisk: true, + defaults: ["e2fsck-defaults"], + system_shared_libs: [], + static_libs: e2fsck_libs, +} diff --git a/e2fsprogs.lsm b/e2fsprogs.lsm index e90b44e93..fe9d65e7b 100644 --- a/e2fsprogs.lsm +++ b/e2fsprogs.lsm @@ -1,15 +1,15 @@ Begin3 Title: EXT2 Filesystem utilities -Version: 1.45.5 -Entered-date: 2020-01-07 +Version: 1.45.6 +Entered-date: 2020-03-20 Description: The filesystem utilities for the EXT2, EXT3, and EXT4 filesystems, including e2fsck, mke2fs, dumpe2fs, and others. Keywords: utilities, filesystem, Ext2fs, ext3, ext4 Author: tytso@mit.edu (Theodore Tso) Maintained-by: tytso@mit.edu (Theodore Tso) Primary-site: ftp.kernel.org /pub/linux/kernel/people/tytso/e2fsprogs - 7756kB e2fsprogs-1.45.5.tar.gz - 1kB e2fsprogs-1.45.5.lsm + 7756kB e2fsprogs-1.45.6.tar.gz + 1kB e2fsprogs-1.45.6.lsm Alternate-site: download.sourceforge.net /pub/sourceforge/e2fsprogs Platforms: linux 1.2.x/1.3.x/2.0.x/2.1.x/2.2.x/2.3.x/2.4.x/2.5.x/2.6.x/3.x/4.x Copying-policy: GPL-2/LGPL-2 diff --git a/e2fsprogs.spec b/e2fsprogs.spec index ca35cc270..7026601bb 100644 --- a/e2fsprogs.spec +++ b/e2fsprogs.spec @@ -5,7 +5,7 @@ Summary: Utilities for managing ext2/ext3/ext4 filesystems Name: e2fsprogs -Version: 1.45.4 +Version: 1.45.6 Release: 0 License: GPLv2 Group: System Environment/Base diff --git a/lib/Android.bp b/lib/Android.bp index 77f69da77..d877475a5 100644 --- a/lib/Android.bp +++ b/lib/Android.bp @@ -7,6 +7,7 @@ cc_library_headers { name: "libext2-headers", host_supported: true, vendor_available: true, + ramdisk_available: true, recovery_available: true, target: { windows: { diff --git a/lib/blkid/Android.bp b/lib/blkid/Android.bp index 5a02736aa..ccfdf8b98 100644 --- a/lib/blkid/Android.bp +++ b/lib/blkid/Android.bp @@ -3,6 +3,7 @@ cc_library { name: "libext2_blkid", host_supported: true, + ramdisk_available: true, recovery_available: true, unique_host_soname: true, defaults: ["e2fsprogs-defaults"], diff --git a/lib/e2p/Android.bp b/lib/e2p/Android.bp index d74ba6856..aa09ad060 100644 --- a/lib/e2p/Android.bp +++ b/lib/e2p/Android.bp @@ -3,6 +3,7 @@ cc_library { name: "libext2_e2p", host_supported: true, + ramdisk_available: true, recovery_available: true, unique_host_soname: true, defaults: ["e2fsprogs-defaults"], diff --git a/lib/e2p/e2p.h b/lib/e2p/e2p.h index c3a6b2587..ae7dd74dd 100644 --- a/lib/e2p/e2p.h +++ b/lib/e2p/e2p.h @@ -50,6 +50,8 @@ int setversion (int fd, unsigned long version); void e2p_list_journal_super(FILE *f, char *journal_sb_buf, int exp_block_size, int flags); +void e2p_feature_to_string(int compat, unsigned int mask, char *buf, + size_t buf_len); const char *e2p_feature2string(int compat, unsigned int mask); const char *e2p_jrnl_feature2string(int compat, unsigned int mask); int e2p_string2feature(char *string, int *compat, unsigned int *mask); diff --git a/lib/e2p/feature.c b/lib/e2p/feature.c index 965ba33be..229106021 100644 --- a/lib/e2p/feature.c +++ b/lib/e2p/feature.c @@ -137,17 +137,20 @@ static struct feature jrnl_feature_list[] = { { 0, 0, 0 }, }; -const char *e2p_feature2string(int compat, unsigned int mask) +void e2p_feature_to_string(int compat, unsigned int mask, char *buf, + size_t buf_len) { struct feature *f; - static char buf[20]; char fchar; int fnum; for (f = feature_list; f->string; f++) { if ((compat == f->compat) && - (mask == f->mask)) - return f->string; + (mask == f->mask)) { + strncpy(buf, f->string, buf_len); + buf[buf_len - 1] = 0; + return; + } } switch (compat) { case E2P_FEATURE_COMPAT: @@ -165,6 +168,13 @@ const char *e2p_feature2string(int compat, unsigned int mask) } for (fnum = 0; mask >>= 1; fnum++); sprintf(buf, "FEATURE_%c%d", fchar, fnum); +} + +const char *e2p_feature2string(int compat, unsigned int mask) +{ + static char buf[20]; + + e2p_feature_to_string(compat, mask, buf, sizeof(buf) / sizeof(buf[0])); return buf; } diff --git a/lib/et/Android.bp b/lib/et/Android.bp index 3414639a7..7df5bf600 100644 --- a/lib/et/Android.bp +++ b/lib/et/Android.bp @@ -3,6 +3,7 @@ cc_library { name: "libext2_com_err", host_supported: true, + ramdisk_available: true, recovery_available: true, unique_host_soname: true, defaults: ["e2fsprogs-defaults"], diff --git a/lib/ext2fs/Android.bp b/lib/ext2fs/Android.bp index 909c4fa89..8a46c025f 100644 --- a/lib/ext2fs/Android.bp +++ b/lib/ext2fs/Android.bp @@ -3,6 +3,7 @@ cc_library { name: "libext2fs", host_supported: true, + ramdisk_available: true, recovery_available: true, unique_host_soname: true, defaults: ["e2fsprogs-defaults"], diff --git a/lib/ext2fs/gen_bitmap.c b/lib/ext2fs/gen_bitmap.c index c94c21b66..1536d4b3e 100644 --- a/lib/ext2fs/gen_bitmap.c +++ b/lib/ext2fs/gen_bitmap.c @@ -418,7 +418,7 @@ errcode_t ext2fs_get_generic_bitmap_range(ext2fs_generic_bitmap gen_bmap, if ((start < bmap->start) || (start+num-1 > bmap->real_end)) return EXT2_ET_INVALID_ARGUMENT; - memcpy(out, bmap->bitmap + (start >> 3), (num+7) >> 3); + memcpy(out, bmap->bitmap + ((start - bmap->start) >> 3), (num+7) >> 3); return 0; } @@ -435,7 +435,7 @@ errcode_t ext2fs_set_generic_bitmap_range(ext2fs_generic_bitmap gen_bmap, if ((start < bmap->start) || (start+num-1 > bmap->real_end)) return EXT2_ET_INVALID_ARGUMENT; - memcpy(bmap->bitmap + (start >> 3), in, (num+7) >> 3); + memcpy(bmap->bitmap + ((start - bmap->start) >> 3), in, (num+7) >> 3); return 0; } diff --git a/lib/support/Android.bp b/lib/support/Android.bp index 2bc07b7f8..14f2f2397 100644 --- a/lib/support/Android.bp +++ b/lib/support/Android.bp @@ -3,6 +3,7 @@ cc_library { name: "libext2_quota", host_supported: true, + ramdisk_available: true, recovery_available: true, unique_host_soname: true, defaults: ["e2fsprogs-defaults"], diff --git a/lib/uuid/Android.bp b/lib/uuid/Android.bp index 7d4dfcacc..37b44673f 100644 --- a/lib/uuid/Android.bp +++ b/lib/uuid/Android.bp @@ -3,6 +3,7 @@ cc_library { name: "libext2_uuid", host_supported: true, + ramdisk_available: true, recovery_available: true, vendor_available: true, unique_host_soname: true, diff --git a/misc/Android.bp b/misc/Android.bp index dea2f9fe4..a93bea4d5 100644 --- a/misc/Android.bp +++ b/misc/Android.bp @@ -143,6 +143,16 @@ cc_binary { static_libs: tune2fs_libs, } +cc_binary { + name: "tune2fs_ramdisk", + stem: "tune2fs", + static_executable: true, + ramdisk: true, + defaults: ["tune2fs-defaults"], + system_shared_libs: [], + static_libs: tune2fs_libs, +} + cc_library_static { name: "libtune2fs", defaults: ["tune2fs-defaults"], @@ -174,7 +184,7 @@ cc_binary { // Build chattr cc_binary { - name: "chattr", + name: "chattr-e2fsprogs", host_supported: true, defaults: ["e2fsprogs-defaults"], @@ -201,7 +211,7 @@ lsattr_libs = [ ] cc_binary { - name: "lsattr", + name: "lsattr-e2fsprogs", host_supported: true, defaults: ["lsattr-defaults"], @@ -288,3 +298,22 @@ cc_binary { ], system_shared_libs: ["libc", "libdl"], } + +//########################################################################## +// Build e2freefrag + +cc_binary { + name: "e2freefrag", + host_supported: true, + defaults: ["e2fsprogs-defaults"], + + srcs: [ + "e2freefrag.c", + ], + header_libs: ["libext2-headers"], + shared_libs: [ + "libext2fs", + "libext2_com_err", + ], + system_shared_libs: ["libc", "libdl"], +} diff --git a/misc/mke2fs.8.in b/misc/mke2fs.8.in index 5bcee25ec..e6bfc6d6f 100644 --- a/misc/mke2fs.8.in +++ b/misc/mke2fs.8.in @@ -484,13 +484,10 @@ space in the filesystem and can also negatively impact performance. It is not possible to change this value after the filesystem is created. .IP -In kernels after 2.6.10 and some -earlier vendor kernels it is possible to utilize inodes larger than -128 bytes to store -extended attributes for improved performance. -Extended attributes -stored in large inodes are not visible with older kernels, and such -filesystems will not be mountable with 2.4 kernels at all. +File systems with an inode size of 128 bytes do not support timestamps +beyond January 19, 2038. Inodes which are 256 bytes or larger will +support extended timestamps, project id's, and the ability to store some +extended attributes in the inode table for improved performance. .IP The default inode size is controlled by the .BR mke2fs.conf (5) diff --git a/misc/tune2fs.8.in b/misc/tune2fs.8.in index 74eebb6a8..3cf1f5eda 100644 --- a/misc/tune2fs.8.in +++ b/misc/tune2fs.8.in @@ -299,7 +299,13 @@ consistency first using .BR e2fsck (8). This operation can also take a while and the file system can be corrupted and data lost if it is interrupted while in the middle of -converting the file system. +converting the file system. Backing up the file system before changing +inode size is recommended. +.IP +File systems with an inode size of 128 bytes do not support timestamps +beyond January 19, 2038. Inodes which are 256 bytes or larger will +support extended timestamps, project id's, and the ability to store some +extended attributes in the inode table for improved performance. .TP .B \-j Add an ext3 journal to the filesystem. If the diff --git a/po/e2fsprogs.pot b/po/e2fsprogs.pot index 0ad3b291f..a5c9115ee 100644 --- a/po/e2fsprogs.pot +++ b/po/e2fsprogs.pot @@ -77,9 +77,9 @@ #, fuzzy msgid "" msgstr "" -"Project-Id-Version: e2fsprogs v1.45.5\n" +"Project-Id-Version: e2fsprogs v1.45.6\n" "Report-Msgid-Bugs-To: tytso@alum.mit.edu\n" -"POT-Creation-Date: 2020-01-05 23:49-0500\n" +"POT-Creation-Date: 2020-03-20 23:47-0400\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -105,7 +105,7 @@ msgstr "" #: e2fsck/badblocks.c:72 e2fsck/scantest.c:107 e2fsck/unix.c:1571 #: e2fsck/unix.c:1685 misc/badblocks.c:1251 misc/badblocks.c:1259 #: misc/badblocks.c:1273 misc/badblocks.c:1285 misc/dumpe2fs.c:431 -#: misc/dumpe2fs.c:688 misc/dumpe2fs.c:692 misc/e2image.c:1430 +#: misc/dumpe2fs.c:692 misc/dumpe2fs.c:696 misc/e2image.c:1430 #: misc/e2image.c:1627 misc/e2image.c:1648 misc/mke2fs.c:236 #: misc/tune2fs.c:2808 misc/tune2fs.c:2907 resize/main.c:414 #, c-format @@ -130,7 +130,7 @@ msgstr "" msgid "Warning: illegal block %u found in bad block inode. Cleared.\n" msgstr "" -#: e2fsck/dirinfo.c:331 +#: e2fsck/dirinfo.c:332 msgid "while freeing dir_info tdb file" msgstr "" @@ -162,15 +162,15 @@ msgstr "" msgid "Error writing block %lu (%s). " msgstr "" -#: e2fsck/emptydir.c:57 +#: e2fsck/emptydir.c:56 msgid "empty dirblocks" msgstr "" -#: e2fsck/emptydir.c:62 +#: e2fsck/emptydir.c:61 msgid "empty dir map" msgstr "" -#: e2fsck/emptydir.c:98 +#: e2fsck/emptydir.c:97 #, c-format msgid "Empty directory block %u (#%d) in inode %u\n" msgstr "" @@ -180,12 +180,12 @@ msgstr "" msgid "%s: %s filename nblocks blocksize\n" msgstr "" -#: e2fsck/extend.c:44 +#: e2fsck/extend.c:45 #, c-format msgid "Illegal number of blocks!\n" msgstr "" -#: e2fsck/extend.c:50 +#: e2fsck/extend.c:51 #, c-format msgid "Couldn't allocate block buffer (size=%d)\n" msgstr "" @@ -527,7 +527,7 @@ msgstr "" msgid "while hashing entry with e_value_inum = %u" msgstr "" -#: e2fsck/pass1.c:775 e2fsck/pass2.c:1009 +#: e2fsck/pass1.c:775 e2fsck/pass2.c:1010 msgid "reading directory block" msgstr "" @@ -605,11 +605,11 @@ msgstr "" msgid "inode table" msgstr "" -#: e2fsck/pass2.c:307 +#: e2fsck/pass2.c:308 msgid "Pass 2" msgstr "" -#: e2fsck/pass2.c:1082 e2fsck/pass2.c:1249 +#: e2fsck/pass2.c:1083 e2fsck/pass2.c:1250 msgid "Can not continue." msgstr "" @@ -629,7 +629,7 @@ msgstr "" msgid "inode loop detection bitmap" msgstr "" -#: e2fsck/pass4.c:277 +#: e2fsck/pass4.c:289 msgid "Pass 4" msgstr "" @@ -2759,57 +2759,62 @@ msgstr "" msgid "@d exceeds max links, but no DIR_NLINK feature in @S.\n" msgstr "" -#: e2fsck/problem.c:2016 +#: e2fsck/problem.c:2014 +#. @-expanded: directory inode %i ref count set to overflow but could be exact value %N. +msgid "@d @i %i ref count set to overflow but could be exact value %N. " +msgstr "" + +#: e2fsck/problem.c:2021 #. @-expanded: Pass 5: Checking group summary information\n msgid "Pass 5: Checking @g summary information\n" msgstr "" -#: e2fsck/problem.c:2021 +#: e2fsck/problem.c:2026 #. @-expanded: Padding at end of inode bitmap is not set. msgid "Padding at end of @i @B is not set. " msgstr "" -#: e2fsck/problem.c:2026 +#: e2fsck/problem.c:2031 #. @-expanded: Padding at end of block bitmap is not set. msgid "Padding at end of @b @B is not set. " msgstr "" -#: e2fsck/problem.c:2031 +#: e2fsck/problem.c:2036 #. @-expanded: block bitmap differences: msgid "@b @B differences: " msgstr "" -#: e2fsck/problem.c:2053 +#: e2fsck/problem.c:2058 #. @-expanded: inode bitmap differences: msgid "@i @B differences: " msgstr "" -#: e2fsck/problem.c:2075 +#: e2fsck/problem.c:2080 #. @-expanded: Free inodes count wrong for group #%g (%i, counted=%j).\n msgid "Free @is count wrong for @g #%g (%i, counted=%j).\n" msgstr "" -#: e2fsck/problem.c:2080 +#: e2fsck/problem.c:2085 #. @-expanded: Directories count wrong for group #%g (%i, counted=%j).\n msgid "Directories count wrong for @g #%g (%i, counted=%j).\n" msgstr "" -#: e2fsck/problem.c:2085 +#: e2fsck/problem.c:2090 #. @-expanded: Free inodes count wrong (%i, counted=%j).\n msgid "Free @is count wrong (%i, counted=%j).\n" msgstr "" -#: e2fsck/problem.c:2090 +#: e2fsck/problem.c:2095 #. @-expanded: Free blocks count wrong for group #%g (%b, counted=%c).\n msgid "Free @bs count wrong for @g #%g (%b, counted=%c).\n" msgstr "" -#: e2fsck/problem.c:2095 +#: e2fsck/problem.c:2100 #. @-expanded: Free blocks count wrong (%b, counted=%c).\n msgid "Free @bs count wrong (%b, counted=%c).\n" msgstr "" -#: e2fsck/problem.c:2100 +#: e2fsck/problem.c:2105 #. @-expanded: PROGRAMMING ERROR: filesystem (#%N) bitmap endpoints (%b, %c) don't match calculated bitmap #. @-expanded: endpoints (%i, %j)\n msgid "" @@ -2817,81 +2822,81 @@ msgid "" "endpoints (%i, %j)\n" msgstr "" -#: e2fsck/problem.c:2106 +#: e2fsck/problem.c:2111 msgid "Internal error: fudging end of bitmap (%N)\n" msgstr "" -#: e2fsck/problem.c:2112 +#: e2fsck/problem.c:2117 #, no-c-format #. @-expanded: Error copying in replacement inode bitmap: %m\n msgid "Error copying in replacement @i @B: %m\n" msgstr "" -#: e2fsck/problem.c:2118 +#: e2fsck/problem.c:2123 #, no-c-format #. @-expanded: Error copying in replacement block bitmap: %m\n msgid "Error copying in replacement @b @B: %m\n" msgstr "" -#: e2fsck/problem.c:2148 +#: e2fsck/problem.c:2153 #, no-c-format #. @-expanded: group %g block(s) in use but group is marked BLOCK_UNINIT\n msgid "@g %g @b(s) in use but @g is marked BLOCK_UNINIT\n" msgstr "" -#: e2fsck/problem.c:2154 +#: e2fsck/problem.c:2159 #, no-c-format #. @-expanded: group %g inode(s) in use but group is marked INODE_UNINIT\n msgid "@g %g @i(s) in use but @g is marked INODE_UNINIT\n" msgstr "" -#: e2fsck/problem.c:2160 +#: e2fsck/problem.c:2165 #, no-c-format #. @-expanded: group %g inode bitmap does not match checksum.\n msgid "@g %g @i @B does not match checksum.\n" msgstr "" -#: e2fsck/problem.c:2166 +#: e2fsck/problem.c:2171 #, no-c-format #. @-expanded: group %g block bitmap does not match checksum.\n msgid "@g %g @b @B does not match checksum.\n" msgstr "" -#: e2fsck/problem.c:2173 +#: e2fsck/problem.c:2178 #. @-expanded: Recreate journal msgid "Recreate @j" msgstr "" -#: e2fsck/problem.c:2178 +#: e2fsck/problem.c:2183 msgid "Update quota info for quota type %N" msgstr "" -#: e2fsck/problem.c:2184 +#: e2fsck/problem.c:2189 #, no-c-format #. @-expanded: Error setting block group checksum info: %m\n msgid "Error setting @b @g checksum info: %m\n" msgstr "" -#: e2fsck/problem.c:2190 +#: e2fsck/problem.c:2195 #, no-c-format msgid "Error writing file system info: %m\n" msgstr "" -#: e2fsck/problem.c:2196 +#: e2fsck/problem.c:2201 #, no-c-format msgid "Error flushing writes to storage device: %m\n" msgstr "" -#: e2fsck/problem.c:2201 +#: e2fsck/problem.c:2206 msgid "Error writing quota info for quota type %N: %m\n" msgstr "" -#: e2fsck/problem.c:2364 +#: e2fsck/problem.c:2369 #, c-format msgid "Unhandled error code (0x%x)!\n" msgstr "" -#: e2fsck/problem.c:2494 e2fsck/problem.c:2498 +#: e2fsck/problem.c:2499 e2fsck/problem.c:2503 msgid "IGNORED" msgstr "" @@ -2901,7 +2906,7 @@ msgstr "" #: e2fsck/scantest.c:79 #, c-format -msgid "Memory used: %d, elapsed time: %6.3f/%6.3f/%6.3f\n" +msgid "Memory used: %lu, elapsed time: %6.3f/%6.3f/%6.3f\n" msgstr "" #: e2fsck/scantest.c:98 @@ -3100,7 +3105,7 @@ msgid_plural "%12u files\n" msgstr[0] "" msgstr[1] "" -#: e2fsck/unix.c:238 misc/badblocks.c:1002 misc/tune2fs.c:2998 misc/util.c:129 +#: e2fsck/unix.c:238 misc/badblocks.c:1002 misc/tune2fs.c:2997 misc/util.c:129 #: resize/main.c:354 #, c-format msgid "while determining whether %s is mounted." @@ -3328,7 +3333,7 @@ msgid "while reading MMP block" msgstr "" #: e2fsck/unix.c:1302 e2fsck/unix.c:1354 misc/e2undo.c:236 misc/e2undo.c:281 -#: misc/mke2fs.c:2696 misc/mke2fs.c:2747 misc/tune2fs.c:2725 +#: misc/mke2fs.c:2694 misc/mke2fs.c:2745 misc/tune2fs.c:2725 #: misc/tune2fs.c:2770 resize/main.c:188 resize/main.c:233 #, c-format msgid "" @@ -3337,13 +3342,13 @@ msgid "" "\n" msgstr "" -#: e2fsck/unix.c:1343 misc/e2undo.c:270 misc/mke2fs.c:2736 misc/tune2fs.c:2759 +#: e2fsck/unix.c:1343 misc/e2undo.c:270 misc/mke2fs.c:2734 misc/tune2fs.c:2759 #: resize/main.c:222 #, c-format msgid "while trying to delete %s" msgstr "" -#: e2fsck/unix.c:1369 misc/mke2fs.c:2762 resize/main.c:243 +#: e2fsck/unix.c:1369 misc/mke2fs.c:2760 resize/main.c:243 msgid "while trying to setup undo file\n" msgstr "" @@ -3430,117 +3435,117 @@ msgstr "" msgid "Get a newer version of e2fsck!" msgstr "" -#: e2fsck/unix.c:1749 +#: e2fsck/unix.c:1748 #, c-format msgid "while checking journal for %s" msgstr "" -#: e2fsck/unix.c:1752 +#: e2fsck/unix.c:1751 msgid "Cannot proceed with file system check" msgstr "" -#: e2fsck/unix.c:1763 +#: e2fsck/unix.c:1762 msgid "" "Warning: skipping journal recovery because doing a read-only filesystem " "check.\n" msgstr "" -#: e2fsck/unix.c:1775 +#: e2fsck/unix.c:1774 #, c-format msgid "unable to set superblock flags on %s\n" msgstr "" -#: e2fsck/unix.c:1781 +#: e2fsck/unix.c:1780 #, c-format msgid "Journal checksum error found in %s\n" msgstr "" -#: e2fsck/unix.c:1785 +#: e2fsck/unix.c:1784 #, c-format msgid "Journal corrupted in %s\n" msgstr "" -#: e2fsck/unix.c:1789 +#: e2fsck/unix.c:1788 #, c-format msgid "while recovering journal of %s" msgstr "" -#: e2fsck/unix.c:1811 +#: e2fsck/unix.c:1810 #, c-format msgid "%s has unsupported feature(s):" msgstr "" -#: e2fsck/unix.c:1826 +#: e2fsck/unix.c:1825 #, c-format msgid "%s has unsupported encoding: %0x\n" msgstr "" -#: e2fsck/unix.c:1876 +#: e2fsck/unix.c:1875 #, c-format msgid "%s: %s while reading bad blocks inode\n" msgstr "" -#: e2fsck/unix.c:1879 +#: e2fsck/unix.c:1878 msgid "This doesn't bode well, but we'll try to go on...\n" msgstr "" -#: e2fsck/unix.c:1919 +#: e2fsck/unix.c:1918 #, c-format msgid "Creating journal (%d blocks): " msgstr "" -#: e2fsck/unix.c:1929 +#: e2fsck/unix.c:1928 msgid " Done.\n" msgstr "" -#: e2fsck/unix.c:1931 +#: e2fsck/unix.c:1930 msgid "" "\n" "*** journal has been regenerated ***\n" msgstr "" -#: e2fsck/unix.c:1937 +#: e2fsck/unix.c:1936 msgid "aborted" msgstr "" -#: e2fsck/unix.c:1939 +#: e2fsck/unix.c:1938 #, c-format msgid "%s: e2fsck canceled.\n" msgstr "" -#: e2fsck/unix.c:1966 +#: e2fsck/unix.c:1965 msgid "Restarting e2fsck from the beginning...\n" msgstr "" -#: e2fsck/unix.c:1970 +#: e2fsck/unix.c:1969 msgid "while resetting context" msgstr "" -#: e2fsck/unix.c:2029 +#: e2fsck/unix.c:2028 #, c-format msgid "" "\n" "%s: ***** FILE SYSTEM ERRORS CORRECTED *****\n" msgstr "" -#: e2fsck/unix.c:2031 +#: e2fsck/unix.c:2030 #, c-format msgid "%s: File system was modified.\n" msgstr "" -#: e2fsck/unix.c:2035 e2fsck/util.c:71 +#: e2fsck/unix.c:2034 e2fsck/util.c:71 #, c-format msgid "" "\n" "%s: ***** FILE SYSTEM WAS MODIFIED *****\n" msgstr "" -#: e2fsck/unix.c:2040 +#: e2fsck/unix.c:2039 #, c-format msgid "%s: ***** REBOOT SYSTEM *****\n" msgstr "" -#: e2fsck/unix.c:2050 e2fsck/util.c:77 +#: e2fsck/unix.c:2049 e2fsck/util.c:77 #, c-format msgid "" "\n" @@ -3548,96 +3553,96 @@ msgid "" "\n" msgstr "" -#: e2fsck/util.c:196 misc/util.c:93 +#: e2fsck/util.c:195 misc/util.c:93 msgid "yY" msgstr "" -#: e2fsck/util.c:197 misc/util.c:112 +#: e2fsck/util.c:196 misc/util.c:112 msgid "nN" msgstr "" -#: e2fsck/util.c:198 +#: e2fsck/util.c:197 msgid "aA" msgstr "" -#: e2fsck/util.c:202 +#: e2fsck/util.c:201 msgid " ('a' enables 'yes' to all) " msgstr "" -#: e2fsck/util.c:219 +#: e2fsck/util.c:218 msgid "<y>" msgstr "" -#: e2fsck/util.c:221 +#: e2fsck/util.c:220 msgid "<n>" msgstr "" -#: e2fsck/util.c:223 +#: e2fsck/util.c:222 msgid " (y/n)" msgstr "" -#: e2fsck/util.c:246 +#: e2fsck/util.c:245 msgid "cancelled!\n" msgstr "" -#: e2fsck/util.c:279 +#: e2fsck/util.c:278 msgid "yes to all\n" msgstr "" -#: e2fsck/util.c:281 +#: e2fsck/util.c:280 msgid "yes\n" msgstr "" -#: e2fsck/util.c:283 +#: e2fsck/util.c:282 msgid "no\n" msgstr "" -#: e2fsck/util.c:293 +#: e2fsck/util.c:292 #, c-format msgid "" "%s? no\n" "\n" msgstr "" -#: e2fsck/util.c:297 +#: e2fsck/util.c:296 #, c-format msgid "" "%s? yes\n" "\n" msgstr "" -#: e2fsck/util.c:301 +#: e2fsck/util.c:300 msgid "yes" msgstr "" -#: e2fsck/util.c:301 +#: e2fsck/util.c:300 msgid "no" msgstr "" -#: e2fsck/util.c:317 +#: e2fsck/util.c:316 #, c-format msgid "e2fsck_read_bitmaps: illegal bitmap block(s) for %s" msgstr "" -#: e2fsck/util.c:322 +#: e2fsck/util.c:321 msgid "reading inode and block bitmaps" msgstr "" -#: e2fsck/util.c:334 +#: e2fsck/util.c:333 #, c-format msgid "while retrying to read bitmaps for %s" msgstr "" -#: e2fsck/util.c:346 +#: e2fsck/util.c:345 msgid "writing block and inode bitmaps" msgstr "" -#: e2fsck/util.c:351 +#: e2fsck/util.c:350 #, c-format msgid "while rewriting block and inode bitmaps for %s" msgstr "" -#: e2fsck/util.c:363 +#: e2fsck/util.c:362 #, c-format msgid "" "\n" @@ -3646,37 +3651,37 @@ msgid "" "\t(i.e., without -a or -p options)\n" msgstr "" -#: e2fsck/util.c:444 +#: e2fsck/util.c:442 #, c-format -msgid "Memory used: %luk/%luk (%luk/%luk), " +msgid "Memory used: %lluk/%lluk (%lluk/%lluk), " msgstr "" #: e2fsck/util.c:448 #, c-format -msgid "Memory used: %lu, " +msgid "Memory used: %lluk, " msgstr "" -#: e2fsck/util.c:455 +#: e2fsck/util.c:454 #, c-format msgid "time: %5.2f/%5.2f/%5.2f\n" msgstr "" -#: e2fsck/util.c:460 +#: e2fsck/util.c:459 #, c-format msgid "elapsed time: %6.3f\n" msgstr "" -#: e2fsck/util.c:495 e2fsck/util.c:509 +#: e2fsck/util.c:494 e2fsck/util.c:508 #, c-format msgid "while reading inode %lu in %s" msgstr "" -#: e2fsck/util.c:523 e2fsck/util.c:536 +#: e2fsck/util.c:522 e2fsck/util.c:535 #, c-format msgid "while writing inode %lu in %s" msgstr "" -#: e2fsck/util.c:792 +#: e2fsck/util.c:793 msgid "" "UNEXPECTED INCONSISTENCY: the filesystem is being modified while fsck is " "running.\n" @@ -4234,30 +4239,30 @@ msgstr "" msgid "Couldn't find journal superblock magic numbers" msgstr "" -#: misc/dumpe2fs.c:468 +#: misc/dumpe2fs.c:470 msgid "failed to alloc MMP buffer\n" msgstr "" -#: misc/dumpe2fs.c:479 +#: misc/dumpe2fs.c:481 #, c-format msgid "reading MMP block %llu from '%s'\n" msgstr "" -#: misc/dumpe2fs.c:507 misc/mke2fs.c:800 misc/tune2fs.c:2039 +#: misc/dumpe2fs.c:511 misc/mke2fs.c:798 misc/tune2fs.c:2039 msgid "Couldn't allocate memory to parse options!\n" msgstr "" -#: misc/dumpe2fs.c:533 +#: misc/dumpe2fs.c:537 #, c-format msgid "Invalid superblock parameter: %s\n" msgstr "" -#: misc/dumpe2fs.c:548 +#: misc/dumpe2fs.c:552 #, c-format msgid "Invalid blocksize parameter: %s\n" msgstr "" -#: misc/dumpe2fs.c:559 +#: misc/dumpe2fs.c:563 #, c-format msgid "" "\n" @@ -4271,27 +4276,27 @@ msgid "" "\tblocksize=<blocksize>\n" msgstr "" -#: misc/dumpe2fs.c:649 misc/mke2fs.c:1889 +#: misc/dumpe2fs.c:653 misc/mke2fs.c:1887 #, c-format msgid "\tUsing %s\n" msgstr "" -#: misc/dumpe2fs.c:694 misc/e2image.c:1629 misc/tune2fs.c:2925 +#: misc/dumpe2fs.c:698 misc/e2image.c:1629 misc/tune2fs.c:2925 #: resize/main.c:416 msgid "Couldn't find valid filesystem superblock.\n" msgstr "" -#: misc/dumpe2fs.c:716 +#: misc/dumpe2fs.c:720 #, c-format msgid "%s: MMP feature not enabled.\n" msgstr "" -#: misc/dumpe2fs.c:747 +#: misc/dumpe2fs.c:751 #, c-format msgid "while trying to read '%s' bitmaps\n" msgstr "" -#: misc/dumpe2fs.c:756 +#: misc/dumpe2fs.c:760 msgid "" "*** Run e2fsck now!\n" "\n" @@ -4571,7 +4576,7 @@ msgstr "" msgid "e2label: not an ext2 filesystem\n" msgstr "" -#: misc/e2label.c:97 misc/tune2fs.c:3129 +#: misc/e2label.c:97 misc/tune2fs.c:3128 #, c-format msgid "Warning: label too long, truncating.\n" msgstr "" @@ -4791,7 +4796,7 @@ msgid "" "mount_time sb_uuid label\n" msgstr "" -#: misc/findsuper.c:264 +#: misc/findsuper.c:265 #, c-format msgid "" "\n" @@ -4906,7 +4911,7 @@ msgstr "" msgid "%s: %s.\n" msgstr "" -#: misc/fuse2fs.c:3777 misc/fuse2fs.c:3792 misc/tune2fs.c:3025 +#: misc/fuse2fs.c:3777 misc/fuse2fs.c:3792 misc/tune2fs.c:3024 #, c-format msgid "Please run e2fsck -fy %s.\n" msgstr "" @@ -5029,7 +5034,7 @@ msgid "" "Could not write %d blocks in inode table starting at %llu: %s\n" msgstr "" -#: misc/mke2fs.c:456 misc/mke2fs.c:2809 misc/mke2fs.c:3214 +#: misc/mke2fs.c:456 misc/mke2fs.c:2807 misc/mke2fs.c:3212 msgid "done \n" msgstr "" @@ -5093,176 +5098,176 @@ msgstr "" msgid "while writing journal superblock" msgstr "" -#: misc/mke2fs.c:665 +#: misc/mke2fs.c:664 #, c-format msgid "Creating filesystem with %llu %dk blocks and %u inodes\n" msgstr "" -#: misc/mke2fs.c:673 +#: misc/mke2fs.c:672 #, c-format msgid "" "warning: %llu blocks unused.\n" "\n" msgstr "" -#: misc/mke2fs.c:678 +#: misc/mke2fs.c:675 #, c-format -msgid "Filesystem label=%s\n" +msgid "Filesystem label=%.*s\n" msgstr "" -#: misc/mke2fs.c:681 +#: misc/mke2fs.c:679 #, c-format msgid "OS type: %s\n" msgstr "" -#: misc/mke2fs.c:683 +#: misc/mke2fs.c:681 #, c-format msgid "Block size=%u (log=%u)\n" msgstr "" -#: misc/mke2fs.c:686 +#: misc/mke2fs.c:684 #, c-format msgid "Cluster size=%u (log=%u)\n" msgstr "" -#: misc/mke2fs.c:690 +#: misc/mke2fs.c:688 #, c-format msgid "Fragment size=%u (log=%u)\n" msgstr "" -#: misc/mke2fs.c:692 +#: misc/mke2fs.c:690 #, c-format msgid "Stride=%u blocks, Stripe width=%u blocks\n" msgstr "" -#: misc/mke2fs.c:694 +#: misc/mke2fs.c:692 #, c-format msgid "%u inodes, %llu blocks\n" msgstr "" -#: misc/mke2fs.c:696 +#: misc/mke2fs.c:694 #, c-format msgid "%llu blocks (%2.2f%%) reserved for the super user\n" msgstr "" -#: misc/mke2fs.c:699 +#: misc/mke2fs.c:697 #, c-format msgid "First data block=%u\n" msgstr "" -#: misc/mke2fs.c:701 +#: misc/mke2fs.c:699 #, c-format msgid "Root directory owner=%u:%u\n" msgstr "" -#: misc/mke2fs.c:703 +#: misc/mke2fs.c:701 #, c-format msgid "Maximum filesystem blocks=%lu\n" msgstr "" -#: misc/mke2fs.c:707 +#: misc/mke2fs.c:705 #, c-format msgid "%u block groups\n" msgstr "" -#: misc/mke2fs.c:709 +#: misc/mke2fs.c:707 #, c-format msgid "%u block group\n" msgstr "" -#: misc/mke2fs.c:711 +#: misc/mke2fs.c:709 #, c-format msgid "%u blocks per group, %u clusters per group\n" msgstr "" -#: misc/mke2fs.c:714 +#: misc/mke2fs.c:712 #, c-format msgid "%u blocks per group, %u fragments per group\n" msgstr "" -#: misc/mke2fs.c:716 +#: misc/mke2fs.c:714 #, c-format msgid "%u inodes per group\n" msgstr "" -#: misc/mke2fs.c:725 +#: misc/mke2fs.c:723 #, c-format msgid "Filesystem UUID: %s\n" msgstr "" -#: misc/mke2fs.c:726 +#: misc/mke2fs.c:724 msgid "Superblock backups stored on blocks: " msgstr "" -#: misc/mke2fs.c:822 +#: misc/mke2fs.c:820 #, c-format msgid "%s requires '-O 64bit'\n" msgstr "" -#: misc/mke2fs.c:828 +#: misc/mke2fs.c:826 #, c-format msgid "'%s' must be before 'resize=%u'\n" msgstr "" -#: misc/mke2fs.c:841 +#: misc/mke2fs.c:839 #, c-format msgid "Invalid desc_size: '%s'\n" msgstr "" -#: misc/mke2fs.c:855 +#: misc/mke2fs.c:853 #, c-format msgid "Invalid hash seed: %s\n" msgstr "" -#: misc/mke2fs.c:867 +#: misc/mke2fs.c:865 #, c-format msgid "Invalid offset: %s\n" msgstr "" -#: misc/mke2fs.c:881 misc/tune2fs.c:2067 +#: misc/mke2fs.c:879 misc/tune2fs.c:2067 #, c-format msgid "Invalid mmp_update_interval: %s\n" msgstr "" -#: misc/mke2fs.c:898 +#: misc/mke2fs.c:896 #, c-format msgid "Invalid # of backup superblocks: %s\n" msgstr "" -#: misc/mke2fs.c:920 +#: misc/mke2fs.c:918 #, c-format msgid "Invalid stride parameter: %s\n" msgstr "" -#: misc/mke2fs.c:935 +#: misc/mke2fs.c:933 #, c-format msgid "Invalid stripe-width parameter: %s\n" msgstr "" -#: misc/mke2fs.c:958 +#: misc/mke2fs.c:956 #, c-format msgid "Invalid resize parameter: %s\n" msgstr "" -#: misc/mke2fs.c:965 +#: misc/mke2fs.c:963 msgid "The resize maximum must be greater than the filesystem size.\n" msgstr "" -#: misc/mke2fs.c:989 +#: misc/mke2fs.c:987 msgid "On-line resizing not supported with revision 0 filesystems\n" msgstr "" -#: misc/mke2fs.c:1015 misc/mke2fs.c:1024 +#: misc/mke2fs.c:1013 misc/mke2fs.c:1022 #, c-format msgid "Invalid root_owner: '%s'\n" msgstr "" -#: misc/mke2fs.c:1069 +#: misc/mke2fs.c:1067 #, c-format msgid "Invalid encoding: %s" msgstr "" -#: misc/mke2fs.c:1087 +#: misc/mke2fs.c:1085 #, c-format msgid "" "\n" @@ -5291,7 +5296,7 @@ msgid "" "\n" msgstr "" -#: misc/mke2fs.c:1114 +#: misc/mke2fs.c:1112 #, c-format msgid "" "\n" @@ -5299,52 +5304,52 @@ msgid "" "\n" msgstr "" -#: misc/mke2fs.c:1125 +#: misc/mke2fs.c:1123 #, c-format msgid "error: Invalid encoding flag: %s\n" msgstr "" -#: misc/mke2fs.c:1131 +#: misc/mke2fs.c:1129 #, c-format msgid "" "error: An encoding must be explicitly specified when passing encoding-flags\n" msgstr "" -#: misc/mke2fs.c:1179 +#: misc/mke2fs.c:1177 #, c-format msgid "" "Syntax error in mke2fs config file (%s, line #%d)\n" "\t%s\n" msgstr "" -#: misc/mke2fs.c:1192 misc/tune2fs.c:1068 +#: misc/mke2fs.c:1190 misc/tune2fs.c:1068 #, c-format msgid "Invalid filesystem option set: %s\n" msgstr "" -#: misc/mke2fs.c:1204 misc/tune2fs.c:417 +#: misc/mke2fs.c:1202 misc/tune2fs.c:417 #, c-format msgid "Invalid mount option set: %s\n" msgstr "" -#: misc/mke2fs.c:1340 +#: misc/mke2fs.c:1338 #, c-format msgid "" "\n" "Your mke2fs.conf file does not define the %s filesystem type.\n" msgstr "" -#: misc/mke2fs.c:1344 +#: misc/mke2fs.c:1342 msgid "" "You probably need to install an updated mke2fs.conf file.\n" "\n" msgstr "" -#: misc/mke2fs.c:1348 +#: misc/mke2fs.c:1346 msgid "Aborting...\n" msgstr "" -#: misc/mke2fs.c:1389 +#: misc/mke2fs.c:1387 #, c-format msgid "" "\n" @@ -5352,154 +5357,154 @@ msgid "" "\n" msgstr "" -#: misc/mke2fs.c:1571 +#: misc/mke2fs.c:1569 msgid "Couldn't allocate memory for new PATH.\n" msgstr "" -#: misc/mke2fs.c:1608 +#: misc/mke2fs.c:1606 #, c-format msgid "Couldn't init profile successfully (error: %ld).\n" msgstr "" -#: misc/mke2fs.c:1641 +#: misc/mke2fs.c:1639 #, c-format msgid "invalid block size - %s" msgstr "" -#: misc/mke2fs.c:1645 +#: misc/mke2fs.c:1643 #, c-format msgid "Warning: blocksize %d not usable on most systems.\n" msgstr "" -#: misc/mke2fs.c:1661 +#: misc/mke2fs.c:1659 #, c-format msgid "invalid cluster size - %s" msgstr "" -#: misc/mke2fs.c:1674 +#: misc/mke2fs.c:1672 msgid "'-R' is deprecated, use '-E' instead" msgstr "" -#: misc/mke2fs.c:1688 misc/tune2fs.c:1796 +#: misc/mke2fs.c:1686 misc/tune2fs.c:1796 #, c-format msgid "bad error behavior - %s" msgstr "" -#: misc/mke2fs.c:1700 +#: misc/mke2fs.c:1698 msgid "Illegal number for blocks per group" msgstr "" -#: misc/mke2fs.c:1705 +#: misc/mke2fs.c:1703 msgid "blocks per group must be multiple of 8" msgstr "" -#: misc/mke2fs.c:1713 +#: misc/mke2fs.c:1711 msgid "Illegal number for flex_bg size" msgstr "" -#: misc/mke2fs.c:1719 +#: misc/mke2fs.c:1717 msgid "flex_bg size must be a power of 2" msgstr "" -#: misc/mke2fs.c:1724 +#: misc/mke2fs.c:1722 #, c-format msgid "flex_bg size (%lu) must be less than or equal to 2^31" msgstr "" -#: misc/mke2fs.c:1734 +#: misc/mke2fs.c:1732 #, c-format msgid "invalid inode ratio %s (min %d/max %d)" msgstr "" -#: misc/mke2fs.c:1744 +#: misc/mke2fs.c:1742 #, c-format msgid "invalid inode size - %s" msgstr "" -#: misc/mke2fs.c:1757 +#: misc/mke2fs.c:1755 msgid "" "Warning: -K option is deprecated and should not be used anymore. Use '-E " "nodiscard' extended option instead!\n" msgstr "" -#: misc/mke2fs.c:1768 +#: misc/mke2fs.c:1766 msgid "in malloc for bad_blocks_filename" msgstr "" -#: misc/mke2fs.c:1777 +#: misc/mke2fs.c:1775 #, c-format msgid "" "Warning: label too long; will be truncated to '%s'\n" "\n" msgstr "" -#: misc/mke2fs.c:1786 +#: misc/mke2fs.c:1784 #, c-format msgid "invalid reserved blocks percent - %s" msgstr "" -#: misc/mke2fs.c:1801 +#: misc/mke2fs.c:1799 #, c-format msgid "bad num inodes - %s" msgstr "" -#: misc/mke2fs.c:1814 +#: misc/mke2fs.c:1812 msgid "while allocating fs_feature string" msgstr "" -#: misc/mke2fs.c:1831 +#: misc/mke2fs.c:1829 #, c-format msgid "bad revision level - %s" msgstr "" -#: misc/mke2fs.c:1836 +#: misc/mke2fs.c:1834 #, c-format msgid "while trying to create revision %d" msgstr "" -#: misc/mke2fs.c:1850 +#: misc/mke2fs.c:1848 msgid "The -t option may only be used once" msgstr "" -#: misc/mke2fs.c:1858 +#: misc/mke2fs.c:1856 msgid "The -T option may only be used once" msgstr "" -#: misc/mke2fs.c:1914 misc/mke2fs.c:3298 +#: misc/mke2fs.c:1912 misc/mke2fs.c:3296 #, c-format msgid "while trying to open journal device %s\n" msgstr "" -#: misc/mke2fs.c:1920 +#: misc/mke2fs.c:1918 #, c-format msgid "Journal dev blocksize (%d) smaller than minimum blocksize %d\n" msgstr "" -#: misc/mke2fs.c:1926 +#: misc/mke2fs.c:1924 #, c-format msgid "Using journal device's blocksize: %d\n" msgstr "" -#: misc/mke2fs.c:1937 +#: misc/mke2fs.c:1935 #, c-format msgid "invalid blocks '%s' on device '%s'" msgstr "" -#: misc/mke2fs.c:1967 +#: misc/mke2fs.c:1965 msgid "filesystem" msgstr "" -#: misc/mke2fs.c:1985 resize/main.c:497 +#: misc/mke2fs.c:1983 resize/main.c:497 msgid "while trying to determine filesystem size" msgstr "" -#: misc/mke2fs.c:1991 +#: misc/mke2fs.c:1989 msgid "" "Couldn't determine device size; you must specify\n" "the size of the filesystem\n" msgstr "" -#: misc/mke2fs.c:1998 +#: misc/mke2fs.c:1996 msgid "" "Device size reported to be zero. Invalid partition specified, or\n" "\tpartition table wasn't reread after running fdisk, due to\n" @@ -5507,142 +5512,142 @@ msgid "" "\tto re-read your partition table.\n" msgstr "" -#: misc/mke2fs.c:2015 +#: misc/mke2fs.c:2013 msgid "Filesystem larger than apparent device size." msgstr "" -#: misc/mke2fs.c:2035 +#: misc/mke2fs.c:2033 msgid "Failed to parse fs types list\n" msgstr "" -#: misc/mke2fs.c:2085 +#: misc/mke2fs.c:2083 msgid "The HURD does not support the filetype feature.\n" msgstr "" -#: misc/mke2fs.c:2090 +#: misc/mke2fs.c:2088 msgid "The HURD does not support the huge_file feature.\n" msgstr "" -#: misc/mke2fs.c:2095 +#: misc/mke2fs.c:2093 msgid "The HURD does not support the metadata_csum feature.\n" msgstr "" -#: misc/mke2fs.c:2100 +#: misc/mke2fs.c:2098 msgid "The HURD does not support the ea_inode feature.\n" msgstr "" -#: misc/mke2fs.c:2110 +#: misc/mke2fs.c:2108 msgid "while trying to determine hardware sector size" msgstr "" -#: misc/mke2fs.c:2116 +#: misc/mke2fs.c:2114 msgid "while trying to determine physical sector size" msgstr "" -#: misc/mke2fs.c:2148 +#: misc/mke2fs.c:2146 msgid "while setting blocksize; too small for device\n" msgstr "" -#: misc/mke2fs.c:2153 +#: misc/mke2fs.c:2151 #, c-format msgid "" "Warning: specified blocksize %d is less than device physical sectorsize %d\n" msgstr "" -#: misc/mke2fs.c:2177 +#: misc/mke2fs.c:2175 #, c-format msgid "" "%s: Size of device (0x%llx blocks) %s too big to be expressed\n" "\tin 32 bits using a blocksize of %d.\n" msgstr "" -#: misc/mke2fs.c:2191 +#: misc/mke2fs.c:2189 #, c-format msgid "" "%s: Size of device (0x%llx blocks) %s too big to create\n" "\ta filesystem using a blocksize of %d.\n" msgstr "" -#: misc/mke2fs.c:2213 +#: misc/mke2fs.c:2211 msgid "fs_types for mke2fs.conf resolution: " msgstr "" -#: misc/mke2fs.c:2220 +#: misc/mke2fs.c:2218 msgid "Filesystem features not supported with revision 0 filesystems\n" msgstr "" -#: misc/mke2fs.c:2228 +#: misc/mke2fs.c:2226 msgid "Sparse superblocks not supported with revision 0 filesystems\n" msgstr "" -#: misc/mke2fs.c:2238 +#: misc/mke2fs.c:2236 msgid "Journals not supported with revision 0 filesystems\n" msgstr "" -#: misc/mke2fs.c:2251 +#: misc/mke2fs.c:2249 #, c-format msgid "invalid reserved blocks percent - %lf" msgstr "" -#: misc/mke2fs.c:2268 +#: misc/mke2fs.c:2266 msgid "" "Extents MUST be enabled for a 64-bit filesystem. Pass -O extents to " "rectify.\n" msgstr "" -#: misc/mke2fs.c:2288 +#: misc/mke2fs.c:2286 msgid "The cluster size may not be smaller than the block size.\n" msgstr "" -#: misc/mke2fs.c:2294 +#: misc/mke2fs.c:2292 msgid "specifying a cluster size requires the bigalloc feature" msgstr "" -#: misc/mke2fs.c:2314 +#: misc/mke2fs.c:2312 #, c-format msgid "warning: Unable to get device geometry for %s\n" msgstr "" -#: misc/mke2fs.c:2317 +#: misc/mke2fs.c:2315 #, c-format msgid "%s alignment is offset by %lu bytes.\n" msgstr "" -#: misc/mke2fs.c:2319 +#: misc/mke2fs.c:2317 #, c-format msgid "" "This may result in very poor performance, (re)-partitioning suggested.\n" msgstr "" -#: misc/mke2fs.c:2340 +#: misc/mke2fs.c:2338 #, c-format msgid "%d-byte blocks too big for system (max %d)" msgstr "" -#: misc/mke2fs.c:2344 +#: misc/mke2fs.c:2342 #, c-format msgid "" "Warning: %d-byte blocks too big for system (max %d), forced to continue\n" msgstr "" -#: misc/mke2fs.c:2352 +#: misc/mke2fs.c:2350 #, c-format msgid "" "Suggestion: Use Linux kernel >= 3.18 for improved stability of the metadata " "and journal checksum features.\n" msgstr "" -#: misc/mke2fs.c:2398 +#: misc/mke2fs.c:2396 #, c-format msgid "Unknown filename encoding from profile: %s" msgstr "" -#: misc/mke2fs.c:2409 +#: misc/mke2fs.c:2407 #, c-format msgid "Unknown encoding flags from profile: %s" msgstr "" -#: misc/mke2fs.c:2434 +#: misc/mke2fs.c:2432 #, c-format msgid "" "\n" @@ -5652,28 +5657,28 @@ msgid "" "\n" msgstr "" -#: misc/mke2fs.c:2449 +#: misc/mke2fs.c:2447 #, c-format msgid "%d byte inodes are too small for project quota" msgstr "" -#: misc/mke2fs.c:2465 +#: misc/mke2fs.c:2463 msgid "" "The encrypt and casefold features are not compatible.\n" "They can not be both enabled simultaneously.\n" msgstr "" -#: misc/mke2fs.c:2480 +#: misc/mke2fs.c:2478 msgid "Can't support bigalloc feature without extents feature" msgstr "" -#: misc/mke2fs.c:2487 +#: misc/mke2fs.c:2485 msgid "" "The resize_inode and meta_bg features are not compatible.\n" "They can not be both enabled simultaneously.\n" msgstr "" -#: misc/mke2fs.c:2495 +#: misc/mke2fs.c:2493 msgid "" "\n" "Warning: the bigalloc feature is still under development\n" @@ -5681,39 +5686,39 @@ msgid "" "\n" msgstr "" -#: misc/mke2fs.c:2507 +#: misc/mke2fs.c:2505 msgid "reserved online resize blocks not supported on non-sparse filesystem" msgstr "" -#: misc/mke2fs.c:2516 +#: misc/mke2fs.c:2514 msgid "blocks per group count out of range" msgstr "" -#: misc/mke2fs.c:2538 +#: misc/mke2fs.c:2536 msgid "Flex_bg feature not enabled, so flex_bg size may not be specified" msgstr "" -#: misc/mke2fs.c:2550 +#: misc/mke2fs.c:2548 #, c-format msgid "invalid inode size %d (min %d/max %d)" msgstr "" -#: misc/mke2fs.c:2565 +#: misc/mke2fs.c:2563 #, c-format msgid "%d byte inodes are too small for inline data; specify larger size" msgstr "" -#: misc/mke2fs.c:2580 +#: misc/mke2fs.c:2578 #, c-format msgid "too many inodes (%llu), raise inode ratio?" msgstr "" -#: misc/mke2fs.c:2587 +#: misc/mke2fs.c:2585 #, c-format msgid "too many inodes (%llu), specify < 2^32 inodes" msgstr "" -#: misc/mke2fs.c:2601 +#: misc/mke2fs.c:2599 #, c-format msgid "" "inode_size (%u) * inodes_count (%u) too big for a\n" @@ -5721,153 +5726,153 @@ msgid "" "\tor lower inode count (-N).\n" msgstr "" -#: misc/mke2fs.c:2788 +#: misc/mke2fs.c:2786 msgid "Discarding device blocks: " msgstr "" -#: misc/mke2fs.c:2804 +#: misc/mke2fs.c:2802 msgid "failed - " msgstr "" -#: misc/mke2fs.c:2863 +#: misc/mke2fs.c:2861 msgid "while initializing quota context" msgstr "" -#: misc/mke2fs.c:2870 +#: misc/mke2fs.c:2868 msgid "while writing quota inodes" msgstr "" -#: misc/mke2fs.c:2895 +#: misc/mke2fs.c:2893 #, c-format msgid "bad error behavior in profile - %s" msgstr "" -#: misc/mke2fs.c:2971 +#: misc/mke2fs.c:2969 msgid "in malloc for android_sparse_params" msgstr "" -#: misc/mke2fs.c:2985 +#: misc/mke2fs.c:2983 msgid "while setting up superblock" msgstr "" -#: misc/mke2fs.c:3001 +#: misc/mke2fs.c:2999 msgid "" "Extents are not enabled. The file extent tree can be checksummed, whereas " "block maps cannot. Not enabling extents reduces the coverage of metadata " "checksumming. Pass -O extents to rectify.\n" msgstr "" -#: misc/mke2fs.c:3008 +#: misc/mke2fs.c:3006 msgid "" "64-bit filesystem support is not enabled. The larger fields afforded by " "this feature enable full-strength checksumming. Pass -O 64bit to rectify.\n" msgstr "" -#: misc/mke2fs.c:3016 +#: misc/mke2fs.c:3014 msgid "The metadata_csum_seed feature requires the metadata_csum feature.\n" msgstr "" -#: misc/mke2fs.c:3040 +#: misc/mke2fs.c:3038 msgid "Discard succeeded and will return 0s - skipping inode table wipe\n" msgstr "" -#: misc/mke2fs.c:3139 +#: misc/mke2fs.c:3137 #, c-format msgid "unknown os - %s" msgstr "" -#: misc/mke2fs.c:3202 +#: misc/mke2fs.c:3200 msgid "Allocating group tables: " msgstr "" -#: misc/mke2fs.c:3210 +#: misc/mke2fs.c:3208 msgid "while trying to allocate filesystem tables" msgstr "" -#: misc/mke2fs.c:3219 +#: misc/mke2fs.c:3217 msgid "" "\n" "\twhile converting subcluster bitmap" msgstr "" -#: misc/mke2fs.c:3225 +#: misc/mke2fs.c:3223 #, c-format msgid "%s may be further corrupted by superblock rewrite\n" msgstr "" -#: misc/mke2fs.c:3266 +#: misc/mke2fs.c:3264 #, c-format msgid "while zeroing block %llu at end of filesystem" msgstr "" -#: misc/mke2fs.c:3279 +#: misc/mke2fs.c:3277 msgid "while reserving blocks for online resize" msgstr "" -#: misc/mke2fs.c:3291 misc/tune2fs.c:1504 +#: misc/mke2fs.c:3289 misc/tune2fs.c:1504 msgid "journal" msgstr "" -#: misc/mke2fs.c:3303 +#: misc/mke2fs.c:3301 #, c-format msgid "Adding journal to device %s: " msgstr "" -#: misc/mke2fs.c:3310 +#: misc/mke2fs.c:3308 #, c-format msgid "" "\n" "\twhile trying to add journal to device %s" msgstr "" -#: misc/mke2fs.c:3315 misc/mke2fs.c:3344 misc/mke2fs.c:3382 +#: misc/mke2fs.c:3313 misc/mke2fs.c:3342 misc/mke2fs.c:3380 #: misc/mk_hugefiles.c:600 misc/tune2fs.c:1533 misc/tune2fs.c:1552 msgid "done\n" msgstr "" -#: misc/mke2fs.c:3321 +#: misc/mke2fs.c:3319 msgid "Skipping journal creation in super-only mode\n" msgstr "" -#: misc/mke2fs.c:3331 +#: misc/mke2fs.c:3329 #, c-format msgid "Creating journal (%u blocks): " msgstr "" -#: misc/mke2fs.c:3340 +#: misc/mke2fs.c:3338 msgid "" "\n" "\twhile trying to create journal" msgstr "" -#: misc/mke2fs.c:3352 misc/tune2fs.c:1133 +#: misc/mke2fs.c:3350 misc/tune2fs.c:1133 msgid "" "\n" "Error while enabling multiple mount protection feature." msgstr "" -#: misc/mke2fs.c:3357 +#: misc/mke2fs.c:3355 #, c-format msgid "Multiple mount protection is enabled with update interval %d seconds.\n" msgstr "" -#: misc/mke2fs.c:3373 +#: misc/mke2fs.c:3371 msgid "Copying files into the device: " msgstr "" -#: misc/mke2fs.c:3379 +#: misc/mke2fs.c:3377 msgid "while populating file system" msgstr "" -#: misc/mke2fs.c:3386 +#: misc/mke2fs.c:3384 msgid "Writing superblocks and filesystem accounting information: " msgstr "" -#: misc/mke2fs.c:3393 +#: misc/mke2fs.c:3391 msgid "while writing out and closing file system" msgstr "" -#: misc/mke2fs.c:3396 +#: misc/mke2fs.c:3394 msgid "" "done\n" "\n" @@ -6443,7 +6448,7 @@ msgstr "" msgid "Resizing inodes could take some time." msgstr "" -#: misc/tune2fs.c:3010 +#: misc/tune2fs.c:3009 #, c-format msgid "" "Warning: The journal is dirty. You may wish to replay the journal like:\n" @@ -6454,153 +6459,153 @@ msgid "" "by journal recovery.\n" msgstr "" -#: misc/tune2fs.c:3021 +#: misc/tune2fs.c:3020 #, c-format msgid "Recovering journal.\n" msgstr "" -#: misc/tune2fs.c:3040 +#: misc/tune2fs.c:3039 #, c-format msgid "Setting maximal mount count to %d\n" msgstr "" -#: misc/tune2fs.c:3046 +#: misc/tune2fs.c:3045 #, c-format msgid "Setting current mount count to %d\n" msgstr "" -#: misc/tune2fs.c:3051 +#: misc/tune2fs.c:3050 #, c-format msgid "Setting error behavior to %d\n" msgstr "" -#: misc/tune2fs.c:3056 +#: misc/tune2fs.c:3055 #, c-format msgid "Setting reserved blocks gid to %lu\n" msgstr "" -#: misc/tune2fs.c:3061 +#: misc/tune2fs.c:3060 #, c-format msgid "interval between checks is too big (%lu)" msgstr "" -#: misc/tune2fs.c:3068 +#: misc/tune2fs.c:3067 #, c-format msgid "Setting interval between checks to %lu seconds\n" msgstr "" -#: misc/tune2fs.c:3075 +#: misc/tune2fs.c:3074 #, c-format msgid "Setting reserved blocks percentage to %g%% (%llu blocks)\n" msgstr "" -#: misc/tune2fs.c:3081 +#: misc/tune2fs.c:3080 #, c-format msgid "reserved blocks count is too big (%llu)" msgstr "" -#: misc/tune2fs.c:3088 +#: misc/tune2fs.c:3087 #, c-format msgid "Setting reserved blocks count to %llu\n" msgstr "" -#: misc/tune2fs.c:3093 +#: misc/tune2fs.c:3092 msgid "" "\n" "The filesystem already has sparse superblocks.\n" msgstr "" -#: misc/tune2fs.c:3096 +#: misc/tune2fs.c:3095 msgid "" "\n" "Setting the sparse superblock flag not supported\n" "for filesystems with the meta_bg feature enabled.\n" msgstr "" -#: misc/tune2fs.c:3106 +#: misc/tune2fs.c:3105 #, c-format msgid "" "\n" "Sparse superblock flag set. %s" msgstr "" -#: misc/tune2fs.c:3111 +#: misc/tune2fs.c:3110 msgid "" "\n" "Clearing the sparse superblock flag not supported.\n" msgstr "" -#: misc/tune2fs.c:3119 +#: misc/tune2fs.c:3118 #, c-format msgid "Setting time filesystem last checked to %s\n" msgstr "" -#: misc/tune2fs.c:3125 +#: misc/tune2fs.c:3124 #, c-format msgid "Setting reserved blocks uid to %lu\n" msgstr "" -#: misc/tune2fs.c:3157 +#: misc/tune2fs.c:3156 msgid "Error in using clear_mmp. It must be used with -f\n" msgstr "" -#: misc/tune2fs.c:3175 +#: misc/tune2fs.c:3174 msgid "" "The quota feature may only be changed when the filesystem is unmounted.\n" msgstr "" -#: misc/tune2fs.c:3193 +#: misc/tune2fs.c:3192 msgid "Setting the UUID on this filesystem could take some time." msgstr "" -#: misc/tune2fs.c:3208 +#: misc/tune2fs.c:3207 msgid "The UUID may only be changed when the filesystem is unmounted.\n" msgstr "" -#: misc/tune2fs.c:3211 +#: misc/tune2fs.c:3210 msgid "" "If you only use kernels newer than v4.4, run 'tune2fs -O metadata_csum_seed' " "and re-run this command.\n" msgstr "" -#: misc/tune2fs.c:3241 +#: misc/tune2fs.c:3240 msgid "Invalid UUID format\n" msgstr "" -#: misc/tune2fs.c:3257 +#: misc/tune2fs.c:3256 msgid "Need to update journal superblock.\n" msgstr "" -#: misc/tune2fs.c:3279 +#: misc/tune2fs.c:3278 msgid "The inode size may only be changed when the filesystem is unmounted.\n" msgstr "" -#: misc/tune2fs.c:3286 +#: misc/tune2fs.c:3285 msgid "" "Changing the inode size not supported for filesystems with the flex_bg\n" "feature enabled.\n" msgstr "" -#: misc/tune2fs.c:3304 +#: misc/tune2fs.c:3303 #, c-format msgid "Setting inode size %lu\n" msgstr "" -#: misc/tune2fs.c:3308 +#: misc/tune2fs.c:3307 msgid "Failed to change inode size\n" msgstr "" -#: misc/tune2fs.c:3322 +#: misc/tune2fs.c:3321 #, c-format msgid "Setting stride size to %d\n" msgstr "" -#: misc/tune2fs.c:3327 +#: misc/tune2fs.c:3326 #, c-format msgid "Setting stripe width to %d\n" msgstr "" -#: misc/tune2fs.c:3334 +#: misc/tune2fs.c:3333 #, c-format msgid "Setting extended default mount options to '%s'\n" msgstr "" @@ -7099,7 +7104,7 @@ msgid "Should never happen: resize inode corrupt!\n" msgstr "" #: lib/ext2fs/ext2_err.c:11 -msgid "EXT2FS Library version 1.45.5" +msgid "EXT2FS Library version 1.45.6" msgstr "" #: lib/ext2fs/ext2_err.c:12 @@ -7814,6 +7819,10 @@ msgstr "" msgid "Inode containing extended attribute value is corrupted" msgstr "" +#: lib/ext2fs/ext2_err.c:190 +msgid "Group descriptors not loaded" +msgstr "" + #: lib/support/prof_err.c:11 msgid "Profile version 0.0" msgstr "" @@ -7938,68 +7947,68 @@ msgstr "" msgid "Bad magic value in profile_file_data_t" msgstr "" -#: lib/support/plausible.c:118 +#: lib/support/plausible.c:114 #, c-format -msgid "\tlast mounted on %s on %s" +msgid "\tlast mounted on %.*s on %s" msgstr "" -#: lib/support/plausible.c:121 +#: lib/support/plausible.c:117 #, c-format msgid "\tlast mounted on %s" msgstr "" -#: lib/support/plausible.c:124 +#: lib/support/plausible.c:120 #, c-format msgid "\tcreated on %s" msgstr "" -#: lib/support/plausible.c:127 +#: lib/support/plausible.c:123 #, c-format msgid "\tlast modified on %s" msgstr "" -#: lib/support/plausible.c:161 +#: lib/support/plausible.c:157 #, c-format msgid "Found a %s partition table in %s\n" msgstr "" -#: lib/support/plausible.c:191 +#: lib/support/plausible.c:187 #, c-format msgid "The file %s does not exist and no size was specified.\n" msgstr "" -#: lib/support/plausible.c:199 +#: lib/support/plausible.c:195 #, c-format msgid "Creating regular file %s\n" msgstr "" -#: lib/support/plausible.c:202 +#: lib/support/plausible.c:198 #, c-format msgid "Could not open %s: %s\n" msgstr "" -#: lib/support/plausible.c:205 +#: lib/support/plausible.c:201 msgid "" "\n" "The device apparently does not exist; did you specify it correctly?\n" msgstr "" -#: lib/support/plausible.c:227 +#: lib/support/plausible.c:223 #, c-format msgid "%s is not a block special device.\n" msgstr "" -#: lib/support/plausible.c:249 +#: lib/support/plausible.c:245 #, c-format msgid "%s contains a %s file system labelled '%s'\n" msgstr "" -#: lib/support/plausible.c:252 +#: lib/support/plausible.c:248 #, c-format msgid "%s contains a %s file system\n" msgstr "" -#: lib/support/plausible.c:276 +#: lib/support/plausible.c:272 #, c-format msgid "%s contains `%s' data\n" msgstr "" @@ -1,7 +1,7 @@ # e2fsprogs Bahasa Melayu (Malay) (ms). -# Copyright (C) 2008, 2009, 2015, 2018, 2019 Theodore Tso (msgids) +# Copyright (C) 2008, 2009, 2015, 2018, 2019, 2020 Theodore Tso (msgids) # This file is distributed under the same license as the e2fsprogs package. -# Sharuzzaman Ahmat Raslan <sharuzzaman@gmail.com>, 2008, 2009, 2015, 2018, 2019. +# Sharuzzaman Ahmat Raslan <sharuzzaman@gmail.com>, 2008, 2009, 2015, 2018, 2019, 2020. # #. The strings in e2fsck's problem.c can be very hard to translate, #. since the strings are expanded in two different ways. First of all, @@ -77,7 +77,7 @@ msgstr "" "Project-Id-Version: e2fsprogs 1.45.3\n" "Report-Msgid-Bugs-To: tytso@alum.mit.edu\n" "POT-Creation-Date: 2019-07-14 20:56-0400\n" -"PO-Revision-Date: 2019-12-27 12:44+0800\n" +"PO-Revision-Date: 2020-03-18 13:02+0800\n" "Last-Translator: Sharuzzaman Ahmat Raslan <sharuzzaman@gmail.com>\n" "Language-Team: Malay <translation-team-ms@lists.sourceforge.net>\n" "Language: ms\n" @@ -86,7 +86,7 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "X-Bugs: Report translation errors to the Language-Team address.\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Poedit 2.2.4\n" +"X-Generator: Poedit 2.3\n" #: e2fsck/badblocks.c:23 misc/mke2fs.c:220 #, c-format @@ -132,10 +132,8 @@ msgid "Warning: illegal block %u found in bad block inode. Cleared.\n" msgstr "Amaran: blok tidak sah %u terdapat di dalam blok inode buruk. Dibersihkan.\n" #: e2fsck/dirinfo.c:331 -#, fuzzy -#| msgid "while reading root inode" msgid "while freeing dir_info tdb file" -msgstr "Ralat apabila membaca fail." +msgstr "ketika membebaskan fail dir_info tdb" #: e2fsck/ehandler.c:55 #, c-format @@ -170,7 +168,7 @@ msgstr "Ralat membaca blok %lu (%s) ketika %s. " #: e2fsck/emptydir.c:57 #, fuzzy msgid "empty dirblocks" -msgstr "kosong" +msgstr "Makro adalah kosong" #: e2fsck/emptydir.c:62 #, fuzzy @@ -205,7 +203,7 @@ msgstr "fail kosong biasa" #: e2fsck/flushb.c:35 #, fuzzy, c-format msgid "Usage: %s disk\n" -msgstr "Penggunaan: %s [PILIHAN]\n" +msgstr "Penggunaan: %s [-r] [-t]\n" #: e2fsck/flushb.c:64 #, c-format @@ -265,7 +263,7 @@ msgstr "%s: fail terlalu pendek untuk menjadi fail gmon\n" #: e2fsck/journal.c:972 misc/fuse2fs.c:3792 #, fuzzy, c-format msgid "%s: recovering journal\n" -msgstr "ketika mendapatkan semula jurnal ext3 bagi %s" +msgstr "%s adalah bukan peranti jurnal.\n" #: e2fsck/journal.c:974 #, c-format @@ -353,7 +351,7 @@ msgstr "" #: e2fsck/message.c:133 #, fuzzy msgid "llost+found" -msgstr "\"%s\" tidak dijumpai" +msgstr "/@l tidak dijumpai." #: e2fsck/message.c:134 #, fuzzy @@ -373,9 +371,8 @@ msgid "oorphaned" msgstr "" #: e2fsck/message.c:138 -#, fuzzy msgid "pproblem in" -msgstr "Sedang Diguna" +msgstr "pproblem dalam" #: e2fsck/message.c:139 msgid "qquota" @@ -384,7 +381,7 @@ msgstr "" #: e2fsck/message.c:140 #, fuzzy msgid "rroot @i" -msgstr "@u @z @i %i. " +msgstr "<i>(tiada cadangan)</i>" #: e2fsck/message.c:141 #, fuzzy @@ -475,7 +472,7 @@ msgstr "direktori" #: e2fsck/message.c:331 #, fuzzy msgid "character device" -msgstr "peranti tidak sah %s %s" +msgstr "aksara tidak sah" #: e2fsck/message.c:333 #, fuzzy @@ -485,7 +482,7 @@ msgstr "%s adalah bukan peranti khas.\n" #: e2fsck/message.c:335 #, fuzzy msgid "named pipe" -msgstr "fail dinamakan" +msgstr "(paip)" #: e2fsck/message.c:337 msgid "symbolic link" @@ -532,7 +529,7 @@ msgstr "pengguna" #: e2fsck/message.c:485 #, fuzzy msgid "group" -msgstr "tak dapat menukar ke kumpulan null" +msgstr "Pemerihal kumpulan kelihatan buruk..." #: e2fsck/message.c:488 msgid "project" @@ -580,7 +577,7 @@ msgstr "membaca direktori %s" #: e2fsck/pass1.c:1224 #, fuzzy msgid "in-use inode map" -msgstr "Tidak dapat memetakan nama \"%s\" ke menu\n" +msgstr "Guna%" #: e2fsck/pass1.c:1235 #, fuzzy @@ -595,13 +592,13 @@ msgstr "fail kosong biasa" #: e2fsck/pass1.c:1254 misc/e2image.c:1282 #, fuzzy msgid "in-use block map" -msgstr "Tidak dapat memetakan nama \"%s\" ke menu\n" +msgstr "Peta terjemahan: sintaks tidak betul" #: e2fsck/pass1.c:1263 #, fuzzy #| msgid "meta-data blocks" msgid "metadata block map" -msgstr "Tidak dapat memetakan nama \"%s\" ke menu\n" +msgstr "Peta terjemahan: sintaks tidak betul" #: e2fsck/pass1.c:1325 #, fuzzy @@ -635,7 +632,7 @@ msgstr "ketika menetapkan inod blok buruk" #: e2fsck/pass1.c:2239 #, fuzzy msgid "imagic inode map" -msgstr "Tidak dapat memetakan nama \"%s\" ke menu\n" +msgstr "Peta terjemahan: sintaks tidak betul" #: e2fsck/pass1.c:2270 msgid "multiply claimed block map" @@ -658,7 +655,7 @@ msgstr " Bitmap block di" #: e2fsck/pass1.c:4066 #, fuzzy msgid "inode bitmap" -msgstr ", Bitmap inode di" +msgstr "ketika menulis inod bitmap" #: e2fsck/pass1.c:4072 #, fuzzy @@ -680,7 +677,7 @@ msgstr "" #: e2fsck/pass3.c:77 #, fuzzy msgid "inode done bitmap" -msgstr ", Bitmap inode di" +msgstr "ketika menulis inod bitmap" #: e2fsck/pass3.c:86 #, fuzzy @@ -695,17 +692,17 @@ msgstr "Ulangan 3: Memeriksa sambungan @d\n" #: e2fsck/pass3.c:344 #, fuzzy msgid "inode loop detection bitmap" -msgstr ", Bitmap inode di" +msgstr "ketika menulis inod bitmap" #: e2fsck/pass4.c:277 #, fuzzy msgid "Pass 4" -msgstr "Katalaluan tidak diketahui?!?" +msgstr "--menunggu-- (lalu %d)\n" #: e2fsck/pass5.c:79 #, fuzzy msgid "Pass 5" -msgstr "Katalaluan tidak diketahui?!?" +msgstr "--menunggu-- (lalu %d)\n" #: e2fsck/pass5.c:102 msgid "check_inode_bitmap_checksum: Memory allocation error" @@ -752,7 +749,7 @@ msgstr "ketika mencipta /lost+found" #: e2fsck/problem.c:59 #, fuzzy msgid "Create" -msgstr "tidak dapat mencipta paip" +msgstr "tak dapat memcipta fail biasa %s" #: e2fsck/problem.c:60 msgid "Salvage" @@ -930,15 +927,13 @@ msgstr "" #. @-expanded: block bitmap for group %g is not in group. (block %b)\n #: e2fsck/problem.c:115 -#, fuzzy msgid "@b @B for @g %g is not in @g. (@b %b)\n" -msgstr "%s adalah nama hos yang tidak sah" +msgstr "@b @B untuk @g %g tiada didalam @g. (@b %b)\n" #. @-expanded: inode bitmap for group %g is not in group. (block %b)\n #: e2fsck/problem.c:119 -#, fuzzy msgid "@i @B for @g %g is not in @g. (@b %b)\n" -msgstr "%s adalah nama hos yang tidak sah" +msgstr "@i @B untuk @g %g tiada didalam @g. (@b %b)\n" #. @-expanded: inode table for group %g is not in group. (block %b)\n #. @-expanded: WARNING: SEVERE DATA LOSS POSSIBLE.\n @@ -997,9 +992,8 @@ msgstr "" #. @-expanded: superblock first_data_block = %b, should have been %c\n #: e2fsck/problem.c:160 -#, fuzzy msgid "@S first_data_@b = %b, should have been %c\n" -msgstr " Semua data anda yang dipilih telah" +msgstr "@S first_data_@b = %b, sepatutnya adalah %c\n" #. @-expanded: filesystem did not have a UUID; generating one.\n #. @-expanded: \n @@ -1135,7 +1129,7 @@ msgstr "Fail Telah Ada dalam Senarai" #: e2fsck/problem.c:281 #, fuzzy, no-c-format msgid "@I @o @i %i in @S.\n" -msgstr "@i %i (%Q) adalah @I FIFO.\n" +msgstr "@A baru @d @b untuk @i %i (%s): %m\n" #. @-expanded: illegal inode %i in orphaned inode list.\n #: e2fsck/problem.c:287 @@ -1190,7 +1184,7 @@ msgstr "" #: e2fsck/problem.c:325 #, fuzzy msgid "Run @j anyway" -msgstr "mke2fs dipaksa juga.\n" +msgstr "ketika cuba untuk melaksana '%s'" #. @-expanded: Recovery flag not set in backup superblock, so running journal anyway.\n #: e2fsck/problem.c:330 @@ -1223,7 +1217,7 @@ msgstr "" #: e2fsck/problem.c:352 #, fuzzy msgid "Resize @i not valid. " -msgstr "Tidak dapat mengubah saiz tetingkap suntingan" +msgstr "ketika cuba untuk mengulangsaiz %s" #. @-expanded: superblock last mount time (%t,\n #. @-expanded: \tnow = %T) is in the future.\n @@ -1401,7 +1395,7 @@ msgstr "" #: e2fsck/problem.c:512 #, fuzzy msgid "Invalid %U @q @i %i. " -msgstr "@u @z @i %i. " +msgstr "@i %i (%Q) adalah @I FIFO.\n" #. @-expanded: superblock would have too many inodes (%N).\n #: e2fsck/problem.c:517 @@ -1454,7 +1448,7 @@ msgstr "" #: e2fsck/problem.c:562 #, fuzzy, no-c-format msgid "@i %i is a @z @d. " -msgstr "@u @z @i %i. " +msgstr "/@l adalah bukan sejenis @d (ino=%i)\n" #. @-expanded: group %g's block bitmap at %b conflicts with some other fs block.\n #: e2fsck/problem.c:567 @@ -1614,7 +1608,7 @@ msgstr "&Cari Bantuan" msgid "@A @b buffer for relocating %s\n" msgstr "" "\n" -"Buffer tidak ditulis ke %s: %s\n" +"Buffer ditulis ke %s\n" #. @-expanded: Relocating group %g's %s from %b to %c...\n #: e2fsck/problem.c:702 @@ -2289,7 +2283,9 @@ msgstr "" #: e2fsck/problem.c:1344 #, fuzzy, no-c-format msgid "Couldn't clone file: %m\n" -msgstr "Tidak dapat membuka fail profil" +msgstr "" +"Tidak dapat membaiki induk untuk @i %i: %m\n" +"\n" #. @-expanded: Pass 1E: Optimizing extent trees\n #: e2fsck/problem.c:1350 @@ -2308,7 +2304,7 @@ msgstr "Gagal untuk mengoptima direktori %q (%d): %m" #, fuzzy #| msgid "Optimizing directories: " msgid "Optimizing @x trees: " -msgstr "\t\tX: " +msgstr "Mengoptimakan direktori" #: e2fsck/problem.c:1376 msgid "Internal error: max extent tree depth too large (%b; expected=%c).\n" @@ -2354,7 +2350,7 @@ msgstr "" #: e2fsck/problem.c:1414 #, fuzzy msgid "@E @L to '.' " -msgstr "@E adalah salinan '.' @e.\n" +msgstr "/@l tidak dijumpai." #. @-expanded: entry '%Dn' in %p (%i) points to inode (%Di) located in a bad block.\n #: e2fsck/problem.c:1419 @@ -2498,7 +2494,7 @@ msgstr "" #: e2fsck/problem.c:1550 #, fuzzy, no-c-format msgid "@A icount structure: %m\n" -msgstr "Tidak dapat mengembang /@l: %m\n" +msgstr "Jenis beg struktur PKCS tidak diketahui." #. @-expanded: Error iterating over directory blocks: %m\n #: e2fsck/problem.c:1556 @@ -2952,7 +2948,7 @@ msgstr "" #: e2fsck/problem.c:1992 #, fuzzy msgid "@a @i %i ref count is %N, @s %n. " -msgstr "i_frag @F %N, @s sifar.\n" +msgstr "i_fsize @F %N, @s sifar.\n" #. @-expanded: directory exceeds max links, but no DIR_NLINK feature in superblock.\n #: e2fsck/problem.c:1997 @@ -3099,9 +3095,7 @@ msgstr "DIABAIKAN" #: e2fsck/quota.c:30 e2fsck/quota.c:37 e2fsck/quota.c:50 e2fsck/quota.c:59 #, fuzzy msgid "in move_quota_inode" -msgstr "" -"\n" -" Jadual inode di" +msgstr "tak dapat pindahkan %s ke %s" #: e2fsck/scantest.c:79 #, c-format @@ -3222,7 +3216,7 @@ msgstr[0] "ketika menetapkan inod blok buruk" #, fuzzy, c-format msgid "%12u large file\n" msgid_plural "%12u large files\n" -msgstr[0] "%12u fifo\n" +msgstr[0] "%s adalah terlalu besar" #: e2fsck/unix.c:202 #, fuzzy, c-format @@ -3232,19 +3226,19 @@ msgid "" msgid_plural "" "\n" "%12u regular files\n" -msgstr[0] "fail biasa" +msgstr[0] "fail kosong biasa" #: e2fsck/unix.c:204 #, fuzzy, c-format msgid "%12u directory\n" msgid_plural "%12u directories\n" -msgstr[0] "%12u fifo\n" +msgstr[0] "direktori" #: e2fsck/unix.c:206 #, fuzzy, c-format msgid "%12u character device file\n" msgid_plural "%12u character device files\n" -msgstr[0] "Fail \"%s\" adalah sebuah fail peranti" +msgstr[0] "fail khas aksara" #: e2fsck/unix.c:209 #, fuzzy, c-format @@ -3262,7 +3256,7 @@ msgstr[0] "%12u fifo\n" #, fuzzy, c-format msgid "%12u link\n" msgid_plural "%12u links\n" -msgstr[0] "%12u fifo\n" +msgstr[0] "Pautan ke %s\n" #: e2fsck/unix.c:215 #, fuzzy, c-format @@ -3280,13 +3274,13 @@ msgstr[0] "pautan simbolik" #, fuzzy, c-format msgid "%12u socket\n" msgid_plural "%12u sockets\n" -msgstr[0] "%12u fifo\n" +msgstr[0] "soket" #: e2fsck/unix.c:225 #, fuzzy, c-format msgid "%12u file\n" msgid_plural "%12u files\n" -msgstr[0] "%12u fifo\n" +msgstr[0] "Fail:" #: e2fsck/unix.c:238 misc/badblocks.c:1002 misc/tune2fs.c:2986 misc/util.c:129 #: resize/main.c:354 @@ -3297,7 +3291,7 @@ msgstr "ketika menentukan sama ada %s telah dilekapkan." #: e2fsck/unix.c:259 #, fuzzy, c-format msgid "Warning! %s is mounted.\n" -msgstr "\tterakhir dilekapkan pada %s pada %s" +msgstr "\tterakhir dilekapkan pada %s" #: e2fsck/unix.c:262 #, fuzzy, c-format @@ -3314,7 +3308,7 @@ msgstr "%s dilekapkan;" #, fuzzy, c-format #| msgid "%s is mounted. " msgid "%s is in use.\n" -msgstr "opsyen `-%s' sudah luput; guna `-%c %.*s%.*s%s'" +msgstr "Guna%" #: e2fsck/unix.c:272 msgid "" @@ -3408,7 +3402,7 @@ msgstr "Versi EA tidak sah.\n" #, fuzzy #| msgid "Invalid resize parameter: %s\n" msgid "Invalid readahead buffer size.\n" -msgstr "saiz blok tidak sah - %s" +msgstr "Tidak dapat memperoleh saiz buffer paip" #: e2fsck/unix.c:757 #, c-format @@ -3498,7 +3492,7 @@ msgstr "" msgid "" "E2FSCK_JBD_DEBUG \"%s\" not an integer\n" "\n" -msgstr "`%s' adalah bukan integer positif yang sah" +msgstr "integer diluar julat: %s" #: e2fsck/unix.c:1151 #, fuzzy, c-format @@ -3516,7 +3510,7 @@ msgstr "" #: e2fsck/unix.c:1259 e2fsck/unix.c:1264 #, fuzzy msgid "while checking MMP block" -msgstr "ketika menulis bitmap blok" +msgstr "ketika memeriksa kewarasan blok inode buruk" #: e2fsck/unix.c:1266 #, c-format @@ -3528,7 +3522,7 @@ msgstr "" #: e2fsck/unix.c:1282 #, fuzzy msgid "while reading MMP block" -msgstr "ketika menulis bitmap blok" +msgstr "Ralat apabila membaca fail." #: e2fsck/unix.c:1302 e2fsck/unix.c:1354 misc/e2undo.c:236 misc/e2undo.c:281 #: misc/mke2fs.c:2696 misc/mke2fs.c:2747 misc/tune2fs.c:2713 @@ -3637,7 +3631,7 @@ msgstr "" #: e2fsck/unix.c:1749 #, fuzzy, c-format msgid "while checking journal for %s" -msgstr "ketika mendapatkan semula jurnal ext3 bagi %s" +msgstr "ketika mengosongkan inod jurnal" #: e2fsck/unix.c:1752 #, fuzzy @@ -3664,13 +3658,13 @@ msgstr "Superblok jurnal tidak dijumpai!\n" #, fuzzy, c-format #| msgid "Journal removed\n" msgid "Journal corrupted in %s\n" -msgstr "jurnal" +msgstr "Menambah jurnal ke peranti %s:" #: e2fsck/unix.c:1789 #, fuzzy, c-format #| msgid "while recovering ext3 journal of %s" msgid "while recovering journal of %s" -msgstr "ketika mendapatkan semula jurnal ext3 bagi %s" +msgstr "ketika membaca superblok jurnal" #: e2fsck/unix.c:1811 #, c-format @@ -3755,7 +3749,7 @@ msgstr "" #, fuzzy, c-format #| msgid "%s: ***** REBOOT LINUX *****\n" msgid "%s: ***** REBOOT SYSTEM *****\n" -msgstr "%s: ***** ULANGBOOT LINUX *****\n" +msgstr "(dan ulangboot selepas itu!)\n" #: e2fsck/unix.c:2050 e2fsck/util.c:77 #, c-format @@ -3794,7 +3788,7 @@ msgstr "Tiada" #: e2fsck/util.c:223 #, fuzzy msgid " (y/n)" -msgstr "Teruskan juga? (y,t)" +msgstr "\t\tY: " #: e2fsck/util.c:246 msgid "cancelled!\n" @@ -3896,7 +3890,7 @@ msgstr "masa lepas: %6.3f\n" #: e2fsck/util.c:495 e2fsck/util.c:509 #, fuzzy, c-format msgid "while reading inode %lu in %s" -msgstr "Ralat membaca blok %lu (%s) ketika %s. " +msgstr "ketika membaca inod jurnal" #: e2fsck/util.c:523 e2fsck/util.c:536 #, fuzzy, c-format @@ -3910,7 +3904,7 @@ msgstr "" #: misc/badblocks.c:75 #, fuzzy msgid "done \n" -msgstr "selesai \n" +msgstr "selesai \n" #: misc/badblocks.c:100 #, c-format @@ -3941,7 +3935,7 @@ msgstr "Gagal untuk mendapatkan data rawak." #: misc/badblocks.c:355 #, fuzzy msgid "Testing with pattern 0x" -msgstr "Corak" +msgstr "Tiada corak carian semasa" #: misc/badblocks.c:387 misc/badblocks.c:460 msgid "during seek" @@ -4097,7 +4091,7 @@ msgstr "ketika membaca dalam senarai blok buruk dari fail" #: misc/badblocks.c:1305 #, fuzzy msgid "input file - bad format" -msgstr "fail masukan mengecil" +msgstr "%s: fail input adalah fail output" #: misc/badblocks.c:1313 misc/badblocks.c:1322 msgid "while adding to in-memory bad block list" @@ -4203,7 +4197,7 @@ msgstr "ketika menulis jadual inod" #: misc/create_inode.c:152 misc/create_inode.c:176 #, fuzzy, c-format msgid "while listing attributes of \"%s\"" -msgstr "tak dapat menyenaraikan direktori tersedia-tersenarai: %s" +msgstr "gagal mendapatkan atribut bagi %s" #: misc/create_inode.c:163 #, fuzzy, c-format @@ -4243,7 +4237,7 @@ msgstr "ketika mengumpukkan penimbal" #: misc/create_inode.c:294 #, fuzzy, c-format msgid "while creating inode \"%s\"" -msgstr "ketika mencipta direktori root" +msgstr "Mencipta inode jurnal:" #: misc/create_inode.c:360 #, fuzzy, c-format @@ -4277,29 +4271,29 @@ msgstr "" #, fuzzy, c-format #| msgid "while creating root dir" msgid "while scanning directory \"%s\"" -msgstr "ketika menetapkan versi pada %s" +msgstr "ketika cuba untuk memadam %s" #: misc/create_inode.c:825 #, fuzzy, c-format #| msgid "while trying to stat %s" msgid "while lstat \"%s\"" -msgstr "tak dapat lstat %s" +msgstr "ketika membuka %s" #: misc/create_inode.c:875 #, fuzzy, c-format msgid "while creating special file \"%s\"" -msgstr "Mencipta fail biasa %s\n" +msgstr "tak boleh mencipta fail istimewa %s" #: misc/create_inode.c:884 #, fuzzy msgid "malloc failed" -msgstr "malloc() gagal. Tidak dapat memperuntukkan memori yang cukup." +msgstr "Gagal" #: misc/create_inode.c:892 #, fuzzy, c-format #| msgid "while trying to resize %s" msgid "while trying to read link \"%s\"" -msgstr "ketika cuba untuk memadam %s" +msgstr "tak dapat membaca pautan simbolik %s" #: misc/create_inode.c:899 msgid "symlink increased in size between lstat() and readlink()" @@ -4313,7 +4307,7 @@ msgstr "ketika menulis jadual inod" #: misc/create_inode.c:921 #, fuzzy, c-format msgid "while writing file \"%s\"" -msgstr "Ralat menulis fail sementara: %s" +msgstr "Ralat menulis fail salinan %s: %s" #: misc/create_inode.c:934 #, fuzzy, c-format @@ -4431,7 +4425,7 @@ msgstr "" #, fuzzy #| msgid ", Inode bitmap at " msgid " Inode bitmap at " -msgstr ", Bitmap inode di" +msgstr "ketika menulis inod bitmap" #: misc/dumpe2fs.c:273 msgid "" @@ -4478,12 +4472,12 @@ msgstr "ketika membaca inod jurnal" #: misc/dumpe2fs.c:379 #, fuzzy msgid "while opening journal inode" -msgstr "ketika mengosongkan inod jurnal" +msgstr "ketika membaca inod jurnal" #: misc/dumpe2fs.c:385 #, fuzzy msgid "while reading journal super block" -msgstr "ketika membaca superblok jurnal" +msgstr "ketika membaca inod jurnal" #: misc/dumpe2fs.c:392 #, fuzzy @@ -4573,7 +4567,7 @@ msgstr "" #: misc/e2image.c:110 #, fuzzy, c-format msgid " %s -I device image-file\n" -msgstr "_Kerangka pada fail imej:" +msgstr "\"%s\" adalah sebuah fail peranti" #: misc/e2image.c:111 #, c-format @@ -4599,7 +4593,7 @@ msgstr "ketika menulis bitmap blok" #: misc/e2image.c:198 #, fuzzy msgid "error in generic_write()" -msgstr "Penghurai ASN1: Ralat menghurai generik." +msgstr "ralat menulis" #: misc/e2image.c:215 msgid "Error: header size is bigger than wrt_size\n" @@ -4639,7 +4633,7 @@ msgstr "" #: misc/e2image.c:568 #, fuzzy, c-format msgid "%llu / %llu blocks (%d%%)" -msgstr "inod (%llu) mesti kurang dari %u" +msgstr "inode (%llu) mesti kurang dari %u" #: misc/e2image.c:599 misc/e2image.c:639 #, fuzzy @@ -4774,7 +4768,7 @@ msgstr "" #: misc/e2image.c:1596 #, fuzzy msgid "checking if mounted" -msgstr " Dilekapkan pada\n" +msgstr "Dilekapkan pada" #: misc/e2image.c:1603 msgid "" @@ -4791,22 +4785,22 @@ msgstr "" #: misc/e2image.c:1663 #, fuzzy msgid "Can not stat output\n" -msgstr "ketika cuba untuk stat %s" +msgstr "Keluaran:\n" #: misc/e2image.c:1673 #, fuzzy, c-format msgid "Image (%s) is compressed\n" -msgstr "Imej" +msgstr "Terdapat ralat memuatkan gambar bulan: %s" #: misc/e2image.c:1676 #, fuzzy, c-format msgid "Image (%s) is encrypted\n" -msgstr "_Kerangka pada fail imej:" +msgstr "Terdapat ralat memuatkan gambar bulan: %s" #: misc/e2image.c:1679 #, fuzzy, c-format msgid "Image (%s) is corrupted\n" -msgstr "_Kerangka pada fail imej:" +msgstr "Terdapat ralat memuatkan gambar bulan: %s" #: misc/e2image.c:1683 #, c-format @@ -4858,7 +4852,7 @@ msgstr "e2label: ralat membaca superblok\n" #: misc/e2label.c:72 #, fuzzy, c-format msgid "e2label: not an ext2 filesystem\n" -msgstr "Sistem fail " +msgstr "sistemfail" #: misc/e2label.c:97 misc/tune2fs.c:3117 #, c-format @@ -4927,7 +4921,7 @@ msgstr "" #: misc/e2undo.c:340 #, fuzzy, c-format msgid "illegal offset - %s" -msgstr "%s: opsyen tidak dibenarkan -- %c\n" +msgstr "%s: pilihan salah -- %c\n" #: misc/e2undo.c:364 #, c-format @@ -4980,7 +4974,7 @@ msgstr "" #, fuzzy, c-format #| msgid "Error while determining whether %s is mounted.\n" msgid "Error while determining whether %s is mounted." -msgstr "Ralat ketika menentukan sama ada %s telah dilekapkan.\n" +msgstr "ketika menentukan sama ada %s telah dilekapkan." #: misc/e2undo.c:439 msgid "e2undo should only be run on unmounted filesystems" @@ -5100,7 +5094,7 @@ msgstr "" msgid "" "\n" "%11Lu: finished with errno %d\n" -msgstr "Program tempatan [%d] selesai." +msgstr "Selesai dengan %s (status keluar %d)\n" #: misc/fsck.c:343 #, c-format @@ -5249,7 +5243,7 @@ msgstr "" #, fuzzy, c-format #| msgid "Usage: %s [-RVadlv] [files...]\n" msgid "Usage: %s [-RVadlpv] [files...]\n" -msgstr "Penggunaan: %s [-RVadlv] [fail...]\n" +msgstr "Penggunaan: %s [PILIHAN]... FAIL\n" #: misc/lsattr.c:86 #, c-format @@ -5428,7 +5422,7 @@ msgstr "Label sistemfail=%s\n" #: misc/mke2fs.c:681 #, fuzzy, c-format msgid "OS type: %s\n" -msgstr "Jenis OS:" +msgstr "OS tidak diketahui - %s" #: misc/mke2fs.c:683 #, c-format @@ -5453,7 +5447,7 @@ msgstr "" #: misc/mke2fs.c:694 #, fuzzy, c-format msgid "%u inodes, %llu blocks\n" -msgstr "inod (%llu) mesti kurang dari %u" +msgstr "inode (%llu) mesti kurang dari %u" #: misc/mke2fs.c:696 #, c-format @@ -5513,7 +5507,7 @@ msgstr "" #: misc/mke2fs.c:822 #, fuzzy, c-format msgid "%s requires '-O 64bit'\n" -msgstr "Pilihan \"%s\" memerlukan hujah" +msgstr "%s: pilihan `%s' memerlukan hujah\n" #: misc/mke2fs.c:828 #, c-format @@ -5544,7 +5538,7 @@ msgstr "jarakmasa `%s' tidak sah" #, fuzzy, c-format #| msgid "Invalid superblock parameter: %s\n" msgid "Invalid # of backup superblocks: %s\n" -msgstr "tak dapat backup %s" +msgstr "%s: Tak dapat backup fail ini" #: misc/mke2fs.c:920 #, c-format @@ -5572,7 +5566,7 @@ msgstr "" #: misc/mke2fs.c:1015 misc/mke2fs.c:1024 #, fuzzy, c-format msgid "Invalid root_owner: '%s'\n" -msgstr "Pemilik tidak sah" +msgstr "Ralat mencipta root @d (%s): %m\n" #: misc/mke2fs.c:1069 #, fuzzy, c-format @@ -5691,7 +5685,7 @@ msgstr "" #: misc/mke2fs.c:1661 #, fuzzy, c-format msgid "invalid cluster size - %s" -msgstr "saiz pecahan tidak sah - %s" +msgstr "saiz blok tidak sah - %s" #: misc/mke2fs.c:1674 msgid "'-R' is deprecated, use '-E' instead" @@ -6047,7 +6041,7 @@ msgstr " Blok bebas: " #: misc/mke2fs.c:2804 #, fuzzy msgid "failed - " -msgstr "GAGAL" +msgstr "Gagal" #: misc/mke2fs.c:2863 #, fuzzy @@ -6182,7 +6176,7 @@ msgstr "Mengosongkan peranti jurnal:" #: misc/mke2fs.c:3379 #, fuzzy msgid "while populating file system" -msgstr "Ralat apabila membaca fail." +msgstr "Abai fail tetapan sistem" #: misc/mke2fs.c:3386 msgid "Writing superblocks and filesystem accounting information: " @@ -6214,7 +6208,7 @@ msgstr "" #: misc/mk_hugefiles.c:583 #, fuzzy msgid "Huge files will be zero'ed\n" -msgstr " %d fail," +msgstr "Ke Fail" #: misc/mk_hugefiles.c:584 #, fuzzy, c-format @@ -6366,7 +6360,7 @@ msgstr "enable/disable" #: misc/tune2fs.c:497 #, fuzzy, c-format msgid "' to disable 64-bit mode.\n" -msgstr "enable/disable" +msgstr "MOD" #: misc/tune2fs.c:1035 msgid "" @@ -6433,7 +6427,7 @@ msgstr "" #: misc/tune2fs.c:1174 #, fuzzy msgid "while reading MMP block." -msgstr "ketika menulis bitmap blok" +msgstr "Ralat apabila membaca fail." #: misc/tune2fs.c:1206 msgid "" @@ -6699,7 +6693,7 @@ msgstr "" #: misc/tune2fs.c:2622 #, fuzzy msgid "Failed to read inode bitmap\n" -msgstr ", Bitmap inode di" +msgstr "ketika menulis inod bitmap" #: misc/tune2fs.c:2627 #, fuzzy @@ -6780,7 +6774,7 @@ msgstr "" #: misc/tune2fs.c:3009 #, fuzzy, c-format msgid "Recovering journal.\n" -msgstr "ketika mendapatkan semula jurnal ext3 bagi %s" +msgstr "jurnal" #: misc/tune2fs.c:3028 #, c-format @@ -6911,7 +6905,7 @@ msgstr "Menetapkan saiz inod %lu\n" #: misc/tune2fs.c:3296 #, fuzzy msgid "Failed to change inode size\n" -msgstr "saiz inode tidak sah - %s" +msgstr "gagal menukar hakmilik %s ke %s\n" #: misc/tune2fs.c:3310 #, c-format @@ -7040,12 +7034,12 @@ msgstr "Sijil buruk" #: misc/uuidd.c:173 #, fuzzy msgid "connect" -msgstr "IDENT: connect() gagal: %s." +msgstr "IDENT: connect() gagal" #: misc/uuidd.c:192 #, fuzzy msgid "write" -msgstr "Tidak dapat menulis salinan: %s" +msgstr "Tidak dapat menulis diluar daripada %s" #: misc/uuidd.c:200 #, fuzzy @@ -7055,7 +7049,7 @@ msgstr "Kiraan Perkataan" #: misc/uuidd.c:206 #, fuzzy msgid "bad response length" -msgstr "\t\t\tKekangan Panjang Laluan: %d\n" +msgstr "panjang pita tidak sah" #: misc/uuidd.c:271 #, c-format @@ -7090,7 +7084,7 @@ msgstr "" #: misc/uuidd.c:381 #, fuzzy, c-format msgid "Generated time UUID: %s\n" -msgstr "tak memperolehi setem masa bagi %s" +msgstr "masa dalam %s: %ld.%06ld (%ld%%)\n" #: misc/uuidd.c:391 #, c-format @@ -7111,7 +7105,7 @@ msgstr "Format UUID tidak sah\n" #: misc/uuidd.c:433 #, fuzzy, c-format msgid "Invalid operation %d\n" -msgstr "nilai $ tidak sah: %d" +msgstr "Nyahbuat tindakan terakhir" #: misc/uuidd.c:477 misc/uuidd.c:499 #, fuzzy, c-format @@ -7232,7 +7226,7 @@ msgstr "" #: resize/main.c:507 #, fuzzy, c-format msgid "Invalid new size: %s\n" -msgstr "saiz inode tidak sah - %s" +msgstr "saiz blok tidak sah - %s" #: resize/main.c:526 msgid "New size too large to be expressed in 32 bits\n" @@ -7297,12 +7291,12 @@ msgstr "Sistemfail telah mempunyai jurnal.\n" #: resize/main.c:613 #, fuzzy, c-format msgid "Converting the filesystem to 64-bit.\n" -msgstr "Sistem fail " +msgstr "sistemfail" #: resize/main.c:615 #, fuzzy, c-format msgid "Converting the filesystem to 32-bit.\n" -msgstr "Sistem fail " +msgstr "sistemfail" #: resize/main.c:617 #, c-format @@ -7404,7 +7398,7 @@ msgstr "" #, fuzzy, c-format #| msgid "inodes (%llu) must be less than %u" msgid "inodes (%llu) must be less than %u\n" -msgstr "inod (%llu) mesti kurang dari %u" +msgstr "inode (%llu) mesti kurang dari %u" #: resize/resize2fs.c:1038 msgid "reserved blocks" @@ -7550,12 +7544,12 @@ msgstr "" #: lib/ext2fs/ext2_err.c:38 #, fuzzy msgid "Can't write an inode bitmap" -msgstr ", Bitmap inode di" +msgstr "Tidak dapat menulis diluar daripada %s" #: lib/ext2fs/ext2_err.c:39 #, fuzzy msgid "Can't read an inode bitmap" -msgstr ", Bitmap inode di" +msgstr "ketika menulis inod bitmap" #: lib/ext2fs/ext2_err.c:40 #, fuzzy @@ -7570,9 +7564,7 @@ msgstr " Bitmap block di" #: lib/ext2fs/ext2_err.c:42 #, fuzzy msgid "Can't write an inode table" -msgstr "" -"\n" -" Jadual inode di" +msgstr "Tidak dapat menulis diluar daripada %s" #: lib/ext2fs/ext2_err.c:43 #, fuzzy @@ -7606,12 +7598,12 @@ msgstr "" #: lib/ext2fs/ext2_err.c:49 #, fuzzy msgid "No free space in the directory" -msgstr "ruang (i.e., ` ')" +msgstr "direktori" #: lib/ext2fs/ext2_err.c:50 #, fuzzy msgid "Inode bitmap not loaded" -msgstr ", Bitmap inode di" +msgstr "ketika menulis inod bitmap" #: lib/ext2fs/ext2_err.c:51 #, fuzzy @@ -7776,7 +7768,7 @@ msgstr "Terlalu banyak ralat, keluar" #: lib/ext2fs/ext2_err.c:87 #, fuzzy msgid "File not found by ext2_lookup" -msgstr "Ralat ditemui dalam fail .nanorc" +msgstr "/@l tidak dijumpai." #: lib/ext2fs/ext2_err.c:88 #, fuzzy @@ -7791,7 +7783,7 @@ msgstr "Menulis bitmap blok" #: lib/ext2fs/ext2_err.c:90 #, fuzzy msgid "Ext2 directory already exists" -msgstr "Seksyen telah wujud" +msgstr "%s wujud tapi ianya bukan direktori" #: lib/ext2fs/ext2_err.c:91 msgid "Unimplemented ext2 library function" @@ -7800,7 +7792,7 @@ msgstr "" #: lib/ext2fs/ext2_err.c:92 #, fuzzy msgid "User cancel requested" -msgstr "pengguna" +msgstr "Batal" #: lib/ext2fs/ext2_err.c:93 #, fuzzy @@ -7862,7 +7854,7 @@ msgstr " Penghurai kumpulan di" #: lib/ext2fs/ext2_err.c:105 #, fuzzy msgid "Resize inode is corrupt" -msgstr "Tidak dapat mengubah saiz tetingkap bawah" +msgstr "ketika cuba untuk mengulangsaiz %s" #: lib/ext2fs/ext2_err.c:106 msgid "Tried to set block bmap with missing indirect block" @@ -7871,22 +7863,22 @@ msgstr "" #: lib/ext2fs/ext2_err.c:107 #, fuzzy msgid "TDB: Success" -msgstr "tdb_fetch %s gagal\n" +msgstr "Berjaya." #: lib/ext2fs/ext2_err.c:108 #, fuzzy msgid "TDB: Corrupt database" -msgstr "tdb_fetch %s gagal\n" +msgstr "Pengkalan data tidak dinyatakan" #: lib/ext2fs/ext2_err.c:109 #, fuzzy msgid "TDB: IO Error" -msgstr "tdb_open %s gagal\n" +msgstr "ralat" #: lib/ext2fs/ext2_err.c:110 #, fuzzy msgid "TDB: Locking error" -msgstr "tdb_open %s gagal\n" +msgstr "Ralat decode" #: lib/ext2fs/ext2_err.c:111 #, fuzzy @@ -7896,7 +7888,7 @@ msgstr "nano tidak cukup memori!" #: lib/ext2fs/ext2_err.c:112 #, fuzzy msgid "TDB: Record exists" -msgstr "tdb_open %s gagal\n" +msgstr "Rekod melimpah" #: lib/ext2fs/ext2_err.c:113 msgid "TDB: Lock exists on other keys" @@ -7915,7 +7907,7 @@ msgstr "pengguna %s tidak wujud" #: lib/ext2fs/ext2_err.c:116 #, fuzzy msgid "TDB: Write not permitted" -msgstr "tdb_fetch %s gagal\n" +msgstr "Tidak dapat menulis diluar daripada %s" #: lib/ext2fs/ext2_err.c:117 #, fuzzy @@ -8018,7 +8010,7 @@ msgstr "# Loggokan extent:\n" #: lib/ext2fs/ext2_err.c:138 #, fuzzy msgid "No 'down' extent" -msgstr "Turun" +msgstr "Skrol Bawah" #: lib/ext2fs/ext2_err.c:139 #, fuzzy @@ -8050,7 +8042,7 @@ msgstr "" #: lib/ext2fs/ext2_err.c:145 #, fuzzy msgid "Extent length is invalid" -msgstr "panjang konteks `%s' tidak sah" +msgstr "Panjang stride tidak sah" #: lib/ext2fs/ext2_err.c:146 msgid "I/O Channel does not support 64-bit block numbers" @@ -8067,7 +8059,7 @@ msgstr "" #: lib/ext2fs/ext2_err.c:149 #, fuzzy msgid "MMP: invalid magic number" -msgstr "jumlah hujah tidak sah" +msgstr "nombor versi tidak sah `%s'" #: lib/ext2fs/ext2_err.c:150 msgid "MMP: device currently active" @@ -8139,7 +8131,7 @@ msgstr "Perkara yang sama bagi hujah pilihan.\n" #: lib/ext2fs/ext2_err.c:166 #, fuzzy msgid "Ext2 file already exists" -msgstr "Seksyen telah wujud" +msgstr "Fail `%s' telah pun dibaca.\n" #: lib/ext2fs/ext2_err.c:167 #, fuzzy @@ -8208,33 +8200,27 @@ msgstr "" #: lib/ext2fs/ext2_err.c:182 #, fuzzy msgid "Journal flags inconsistent" -msgstr "jurnal" +msgstr "ketika membaca penanda pada %s" #: lib/ext2fs/ext2_err.c:183 -#, fuzzy msgid "Undo file corrupt" -msgstr "Nyahbuat" +msgstr "Undur fail yang rosak" #: lib/ext2fs/ext2_err.c:184 -#, fuzzy msgid "Wrong undo file for this filesystem" -msgstr "Penggunaan: %s <fail transaksi> <sistemfail>\n" +msgstr "Fail undur yang salah untuk sistem fail ini" #: lib/ext2fs/ext2_err.c:185 -#, fuzzy msgid "File system is corrupted" -msgstr "" -"\n" -"%s: ***** SISTEM FAIL TELAH DIUBAHSUAI *****\n" +msgstr "Sistem fail rosak" #: lib/ext2fs/ext2_err.c:186 msgid "Bad CRC detected in file system" msgstr "" #: lib/ext2fs/ext2_err.c:187 -#, fuzzy msgid "The journal superblock is corrupt" -msgstr "ketika membaca superblok jurnal" +msgstr "Superblock jurnal ini rosak" #: lib/ext2fs/ext2_err.c:188 msgid "Inode is corrupted" @@ -8298,7 +8284,7 @@ msgstr "" #: lib/support/prof_err.c:24 msgid "Profile section header not at top level" -msgstr "" +msgstr "Profail seksyen pengepala tidak di peringkat tertinggi" #: lib/support/prof_err.c:25 msgid "Syntax error in profile section header" diff --git a/resize/Android.bp b/resize/Android.bp index d55e24c21..8acdcf620 100644 --- a/resize/Android.bp +++ b/resize/Android.bp @@ -1,10 +1,16 @@ // Copyright 2017 The Android Open Source Project -cc_binary { - name: "resize2fs", - host_supported: true, - defaults: ["e2fsprogs-defaults"], +resize2fs_libs = [ + "libext2fs", + "libext2_com_err", + "libext2_e2p", + "libext2_uuid", + "libext2_blkid", +] +cc_defaults { + name: "resize2fs-defaults", + defaults: ["e2fsprogs-defaults"], srcs: [ "extent.c", "resize2fs.c", @@ -13,12 +19,32 @@ cc_binary { "sim_progress.c", "resource_track.c", ], - shared_libs: [ - "libext2fs", - "libext2_com_err", - "libext2_e2p", - "libext2_uuid", - "libext2_blkid", - ], +} + +cc_binary { + name: "resize2fs", + host_supported: true, + defaults: ["resize2fs-defaults"], + + // Host binaries can be compiled statically to be re-used in other environments. + // For android binaries, we keep shared libraries to keep the binary size smaller. + target: { + host: { + static_libs: resize2fs_libs, + }, + android: { + shared_libs: resize2fs_libs, + }, + }, system_shared_libs: ["libc", "libdl"], } + +cc_binary { + name: "resize2fs_ramdisk", + stem: "resize2fs", + static_executable: true, + ramdisk: true, + defaults: ["resize2fs-defaults"], + system_shared_libs: [], + static_libs: resize2fs_libs, +} diff --git a/util/android_types.h b/util/android_types.h index a8d7cff1f..5f05903da 100644 --- a/util/android_types.h +++ b/util/android_types.h @@ -4,8 +4,8 @@ * also defined the types that we need. */ #if (!defined(_LINUX_TYPES_H) && !defined(_BLKID_TYPES_H) && \ - !defined(_EXT2_TYPES_H)) -#define _EXT2_TYPES_H + !defined(_EXT2_TYPES_H) && !defined(_UUID_TYPES_H)) +#define _LINUX_TYPES_H typedef unsigned char __u8; typedef __signed__ char __s8; diff --git a/util/gen-android-files b/util/gen-android-files index 937496bca..cab4e8d4b 100755 --- a/util/gen-android-files +++ b/util/gen-android-files @@ -37,9 +37,16 @@ rm -f $MK_CMDS cp lib/blkid/blkid.h.in lib/blkid/blkid.h cp lib/uuid/uuid.h.in lib/uuid/uuid.h + cp util/android_types.h lib/ext2fs/ext2_types.h cp util/android_types.h lib/blkid/blkid_types.h cp util/android_types.h lib/uuid/uuid_types.h +# Copied header files having exactly same content results in debug output +# differences on RBE. Hence modify the #define's appropriately. +sed -i 's/#define _LINUX_TYPES_H/#define _BLKID_TYPES_H/g' lib/blkid/blkid_types.h +sed -i 's/#define _LINUX_TYPES_H/#define _EXT2_TYPES_H/g' lib/ext2fs/ext2_types.h +sed -i 's/#define _LINUX_TYPES_H/#define _UUID_TYPES_H/g' lib/uuid/uuid_types.h + cp util/android_config.h lib/config.h cp misc/e2freefrag.c debugfs/ cp e2fsck/recovery.c e2fsck/revoke.c debugfs/ @@ -8,4 +8,4 @@ */ #define E2FSPROGS_VERSION "1.46-WIP" -#define E2FSPROGS_DATE "09-Oct-2019" +#define E2FSPROGS_DATE "20-Mar-2020" |