From: Karel Zak Date: Wed, 6 Dec 2006 23:26:12 +0000 (+0100) Subject: Imported from util-linux-2.12 tarball. X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=df1dddf9ffcfc1e291de809c0e8b9060bfea02ee;p=util-linux Imported from util-linux-2.12 tarball. --- diff --git a/HISTORY b/HISTORY index 978a683b..4050dbc1 100644 --- a/HISTORY +++ b/HISTORY @@ -1,3 +1,67 @@ +util-linux 2.12 + +* losetup: -p option specifies fd for passphrase +* fdisk: sgi layout fix +* mount: -p option specifies fd for passphrase +* mount: recognize some PCDOS floppies +* umount: in "umount name", first try to interpret "name" as a mount point + +util-linux 2.12pre + +* Catalan messages (Antoni Bella Perez) +* Danish messages (Claus Hindsgaul) +* Dutch messages (Taco Witte) +* Finnish messages (Lauri Nurmi) +* French messages (Michel Robitaille) +* German messages (Michael Piefel) +* Slovenian messages (Primoz Peterlin) +* Spanish messages (Santiago Vila Doncel) +* Swedish messages (Christian Rose) +* Turkish messages (Nilgün Belma Bugüner) +* cfdisk: localize the Y/N answer, improve printing localized messages +* cfdisk: make various variables long long - some disks are close to 2 TB +* cfdisk: use BLKGETSIZE64 +* fdisk: make various variables unsigned to lengthen the life of 32-bit vars +* fdisk: some sgi fixes (Phillip Kesling) +* fdisk: k=1000, K=1024 +* fdisk: removed last occurrences of HDIO_REQ +* fdisk: use BLKGETSIZE64 +* hwclock: fix rtc test (Heiko Zuerker) +* login: set a timeout on printing the timeout message (Robert Ambrose) +* md5: x86_64 fix (mmj) +* more: POSIX fixes +* mount: do not supply MS_MGC_VAL when there are conflicting flags +* mount: ncp and smb are called smbfs and ncpfs - global change +* mount: add support for xvm mount by label (Eric Sandeen) +* mount: correct hfs magic recognition +* mount: keep original umask - it influences the mount call (mmj) +* raw.8: documented unbinding of raw devices +* readprofile: fixed off-by eight error (Werner Almesberger) +* script: add -c option (Wayne Davison) +* sfdisk.8: added an example of partitioning with logical partitions +* sfdisk: only add a AA55 signature for DOS-type partition tables +* tailf: new (Rik Faith) + +util-linux 2.11z + +* Catalan messages (Antoni Bella Perez) +* Danish messages (Claus Hindsgaul) +* Dutch messages (Taco Witte) +* Finnish messages (Lauri Nurmi) +* French messages (Michel Robitaille) - HURRAY! +* German messages (Michael Piefel) +* Slovenian messages (Primoz Peterlin) +* Spanish messages (Santiago Vila Doncel) +* Swedish messages (Christian Rose) +* Turkish messages (Nilgün Belma Bugüner) +* getopt: replaced getopt-1.1.2 by getopt-1.1.3 (Frodo Looijaard) +* mkcramfs: change default blocksize for ia64 and alpha +* more.help: removed (it is built-in now, and translated) +* mount: add -i option (inhibit calling external mount programs) +* mount: change default: do resolve symlinks +* readprofile: look for System.map also in /boot/System.map-`uname -r` (mmj) +* sfdisk: also translate "start" and "end"; s/MB/MiB/ + util-linux 2.11y * Danish messages (Claus Hindsgaul) diff --git a/Makefile b/Makefile index fd430618..dd4b84e8 100644 --- a/Makefile +++ b/Makefile @@ -10,7 +10,7 @@ include ./MCONFIG SUBDIRS=po \ lib \ - getopt-1.1.2 \ + getopt \ disk-utils \ login-utils \ misc-utils \ diff --git a/VERSION b/VERSION index 91052170..3e162f02 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -2.11y +2.12 diff --git a/configure b/configure index e67be05a..5c0f3e48 100755 --- a/configure +++ b/configure @@ -25,6 +25,7 @@ # F6. For agetty.c: is updwtmp() available? # F7. For pg.c: are fseeko() and ftello() available? # F8. For fsck.cramfs.c: is lchown() available? +# F9. For cfdisk.c: is rpmatch() available? # # 1. For sys-utils/cytune.c: do we need ? # 2. For cfdisk, setterm, more, ul: do we have ncurses? How installed? @@ -53,7 +54,7 @@ echo '#define util_linux_version "util-linux-'$VERSION'"' >> defines.h echo >> defines.h CC=${CC-cc} -CFLAGS=${CFLAGS-"-O"} +CFLAGS=${CFLAGS-"-O2"} LDFLAGS=${LDFLAGS-"-s"} echo CC=$CC >> make_include echo CFLAGS=$CFLAGS >> make_include @@ -334,6 +335,26 @@ else fi rm -f conftest conftest.c +# +# F9. For cfdisk.c: is rpmatch() available? +# +echo ' +#define _SVID_SOURCE +#include +int main(int a, char **v){ + rpmatch("y"); + exit(0); +} +' > conftest.c +eval $compile +if test -s conftest; then + echo "#define HAVE_rpmatch" >> defines.h + echo "You have rpmatch()" +else + echo "You don't have rpmatch()" +fi +rm -f conftest conftest.c + # # 1. cytune.c may need struct tq_struct # @@ -651,7 +672,8 @@ program MOUNTPROG { if rpcgen -h -o conftest.h conftest.x 2> conferrs && \ rpcgen -c -o conftestx.c conftest.x 2>> conferrs && \ rpcgen -l -o conftestl.c conftest.x 2>> conferrs && \ - cc -c conftestx.c 2>> conferrs && cc -c conftestl.c 2>> conferrs && \ + $CC $CFLAGS -c conftestx.c 2>> conferrs && \ + $CC $CFLAGS -c conftestl.c 2>> conferrs && \ test ! -s conferrs then echo "HAVE_GOOD_RPC=yes" >> make_include diff --git a/disk-utils/mkfs.cramfs.c b/disk-utils/mkfs.cramfs.c index a88819b6..32755715 100644 --- a/disk-utils/mkfs.cramfs.c +++ b/disk-utils/mkfs.cramfs.c @@ -46,7 +46,14 @@ static const char *progname = "mkcramfs"; static int verbose = 0; +#ifdef __ia64__ +#define PAGE_CACHE_SIZE (16384) +#elif defined __alpha__ +#define PAGE_CACHE_SIZE (8192) +#else #define PAGE_CACHE_SIZE (4096) +#endif + /* The kernel assumes PAGE_CACHE_SIZE as block size. */ static unsigned int blksize = PAGE_CACHE_SIZE; /* settable via -b option */ static long total_blocks = 0, total_nodes = 1; /* pre-count the root node */ diff --git a/disk-utils/raw.8 b/disk-utils/raw.8 index 4fd91fac..6fbdb855 100644 --- a/disk-utils/raw.8 +++ b/disk-utils/raw.8 @@ -43,6 +43,8 @@ device, or with the .I \-a option to query all bound raw devices. .PP +Unbinding can be done by specifying major and minor 0. +.PP Once bound to a block device, a raw device can be opened, read and written, just like the block device it is bound to. However, the raw device does not behave exactly like the block device. In particular, diff --git a/fdisk/cfdisk.c b/fdisk/cfdisk.c index 6ffd80bd..389e6bfc 100644 --- a/fdisk/cfdisk.c +++ b/fdisk/cfdisk.c @@ -82,14 +82,8 @@ #include "xstrncpy.h" #include "common.h" -#if defined(__GNUC__) || defined(HAS_LONG_LONG) -typedef long long ext2_loff_t; -#else -typedef long ext2_loff_t; -#endif - -extern ext2_loff_t ext2_llseek(unsigned int fd, ext2_loff_t offset, - unsigned int origin); +extern long long ext2_llseek(unsigned int fd, long long offset, + unsigned int origin); #define VERSION UTIL_LINUX_VERSION @@ -195,12 +189,13 @@ struct partition { int heads = 0; int sectors = 0; -int cylinders = 0; +long long cylinders = 0; int cylinder_size = 0; /* heads * sectors */ -int total_size = 0; /* actual_size rounded down */ -unsigned long actual_size = 0; /* set using ioctl */ +long long total_size = 0; /* actual_size rounded down */ +long long actual_size = 0; /* set using ioctl */ /* explicitly given user values */ -int user_heads = 0, user_sectors = 0, user_cylinders = 0; +int user_heads = 0, user_sectors = 0; +long long user_cylinders = 0; /* kernel values; ignore the cylinders */ int kern_heads = 0, kern_sectors = 0; /* partition-table derived values */ @@ -208,7 +203,7 @@ int pt_heads = 0, pt_sectors = 0; static void -set_hsc0(unsigned char *h, unsigned char *s, int *c, int sector) { +set_hsc0(unsigned char *h, unsigned char *s, int *c, long long sector) { if (sector >= 1024*cylinder_size) sector = 1024*cylinder_size - 1; *s = sector % sectors + 1; @@ -219,7 +214,8 @@ set_hsc0(unsigned char *h, unsigned char *s, int *c, int sector) { } static void -set_hsc(unsigned char *h, unsigned char *s, unsigned char *c, int sector) { +set_hsc(unsigned char *h, unsigned char *s, unsigned char *c, + long long sector) { int cc; set_hsc0(h, s, &cc, sector); @@ -228,12 +224,12 @@ set_hsc(unsigned char *h, unsigned char *s, unsigned char *c, int sector) { } static void -set_hsc_begin(struct partition *p, int sector) { +set_hsc_begin(struct partition *p, long long sector) { set_hsc(& p->head, & p->sector, & p->cyl, sector); } static void -set_hsc_end(struct partition *p, int sector) { +set_hsc_end(struct partition *p, long long sector) { set_hsc(& p->end_head, & p->end_sector, & p->end_cyl, sector); } @@ -257,8 +253,9 @@ store4_little_endian(unsigned char *cp, unsigned int val) { static unsigned int read4_little_endian(unsigned char *cp) { - return (uint)(cp[0]) + ((uint)(cp[1]) << 8) - + ((uint)(cp[2]) << 16) + ((uint)(cp[3]) << 24); + return (unsigned int)(cp[0]) + ((unsigned int)(cp[1]) << 8) + + ((unsigned int)(cp[2]) << 16) + + ((unsigned int)(cp[3]) << 24); } static void @@ -296,9 +293,9 @@ typedef union { } partition_table; typedef struct { - int first_sector; /* first sector in partition */ - int last_sector; /* last sector in partition */ - int offset; /* offset from first sector to start of data */ + long long first_sector; /* first sector in partition */ + long long last_sector; /* last sector in partition */ + long offset; /* offset from first sector to start of data */ int flags; /* active == 0x80 */ int id; /* filesystem type */ int num; /* number of partition -- primary vs. logical */ @@ -351,7 +348,7 @@ int FLAGS_START = 16; int PTYPE_START = 28; int FSTYPE_START = 38; int LABEL_START = 54; -int SIZE_START = 70; +int SIZE_START = 68; int COMMAND_LINE_X = 5; static void die_x(int ret); @@ -570,16 +567,16 @@ die_x(int ret) { } static void -read_sector(char *buffer, int sect_num) { - if (ext2_llseek(fd, ((ext2_loff_t) sect_num)*SECTOR_SIZE, SEEK_SET) < 0) +read_sector(char *buffer, long long sect_num) { + if (ext2_llseek(fd, sect_num*SECTOR_SIZE, SEEK_SET) < 0) fatal(_("Cannot seek on disk drive"), 2); if (read(fd, buffer, SECTOR_SIZE) != SECTOR_SIZE) fatal(_("Cannot read disk drive"), 2); } static void -write_sector(char *buffer, int sect_num) { - if (ext2_llseek(fd, ((ext2_loff_t) sect_num)*SECTOR_SIZE, SEEK_SET) < 0) +write_sector(char *buffer, long long sect_num) { + if (ext2_llseek(fd, sect_num*SECTOR_SIZE, SEEK_SET) < 0) fatal(_("Cannot seek on disk drive"), 2); if (write(fd, buffer, SECTOR_SIZE) != SECTOR_SIZE) fatal(_("Cannot write disk drive"), 2); @@ -603,10 +600,9 @@ get_dos_label(int i) { #define DOS_OSTYPE_SZ 8 #define DOS_LABEL_SZ 11 #define DOS_FSTYPE_SZ 8 - ext2_loff_t offset; + long long offset; - offset = ((ext2_loff_t) p_info[i].first_sector + p_info[i].offset) - * SECTOR_SIZE; + offset = (p_info[i].first_sector + p_info[i].offset) * SECTOR_SIZE; if (ext2_llseek(fd, offset, SEEK_SET) == offset && read(fd, §or, sizeof(sector)) == sizeof(sector)) { dos_copy_to_info(p_info[i].ostype, OSTYPESZ, @@ -664,11 +660,11 @@ get_linux_label(int i) { } xfsb; char *label; - ext2_loff_t offset; + long long offset; int j; - offset = ((ext2_loff_t) p_info[i].first_sector + p_info[i].offset) - * SECTOR_SIZE + 1024; + offset = (p_info[i].first_sector + p_info[i].offset) * SECTOR_SIZE + + 1024; if (ext2_llseek(fd, offset, SEEK_SET) == offset && read(fd, &e2fsb, sizeof(e2fsb)) == sizeof(e2fsb) && e2fsb.s_magic[0] + (e2fsb.s_magic[1]<<8) == EXT2_SUPER_MAGIC) { @@ -684,8 +680,7 @@ get_linux_label(int i) { return; } - offset = ((ext2_loff_t) p_info[i].first_sector + p_info[i].offset) - * SECTOR_SIZE + 0; + offset = (p_info[i].first_sector + p_info[i].offset) * SECTOR_SIZE + 0; if (ext2_llseek(fd, offset, SEEK_SET) == offset && read(fd, &xfsb, sizeof(xfsb)) == sizeof(xfsb) && !strcmp(xfsb.s_magic, XFS_SUPER_MAGIC)) { @@ -698,8 +693,8 @@ get_linux_label(int i) { } /* reiserfs? */ - offset = ((ext2_loff_t) p_info[i].first_sector + p_info[i].offset) - * SECTOR_SIZE + REISERFS_DISK_OFFSET_IN_BYTES; + offset = (p_info[i].first_sector + p_info[i].offset) * SECTOR_SIZE + + REISERFS_DISK_OFFSET_IN_BYTES; if (ext2_llseek(fd, offset, SEEK_SET) == offset && read(fd, &reiserfsb, 1024) == 1024 && is_reiserfs_magic_string(&reiserfsb)) { @@ -802,7 +797,7 @@ remove_part(int i) { } static void -insert_empty_part(int i, int first, int last) { +insert_empty_part(int i, long long first, long long last) { int p; for (p = num_parts; p > i; p--) @@ -877,8 +872,8 @@ del_part(int i) { } static int -add_part(int num, int id, int flags, int first, int last, int offset, - int want_label, char **errmsg) { +add_part(int num, int id, int flags, long long first, long long last, + long long offset, int want_label, char **errmsg) { int i, pri = 0, log = 0; if (num_parts == MAXIMUM_PARTS) { @@ -1141,6 +1136,9 @@ menuUpdate( int y, int x, struct MenuItem *menuItems, int itemLength, #endif if (lenName >= sizeof(buff)) { /* truncate ridiculously long string */ xstrncpy(buff, mi, sizeof(buff)); + } else if (lenName >= itemLength) { + snprintf(buff, sizeof(buff), + (menuType & MENU_BUTTON) ? "[%s]" : "%s", mi); } else { snprintf(buff, sizeof(buff), (menuType & MENU_BUTTON) ? "[%*s%-*s]" : "%*s%-*s", @@ -1377,13 +1375,13 @@ static void new_part(int i) { char response[LINE_LENGTH], def[LINE_LENGTH]; char c; - int first = p_info[i].first_sector; - int last = p_info[i].last_sector; - int offset = 0; + long long first = p_info[i].first_sector; + long long last = p_info[i].last_sector; + long long offset = 0; int flags = 0; int id = LINUX; int num = -1; - int num_sects = last - first + 1; + long long num_sects = last - first + 1; int len, ext, j; char *errmsg; double sectors_per_MB = K*K / 512.0; @@ -1495,6 +1493,21 @@ get_kernel_geometry(void) { #endif } +static int +said_yes(char answer) { +#ifdef HAVE_rpmatch + char reply[2]; + int yn; + + reply[0] = answer; + reply[1] = 0; + yn = rpmatch(reply); /* 1: yes, 0: no, -1: ? */ + if (yn >= 0) + return yn; +#endif + return (answer == 'y' || answer == 'Y'); +} + static void get_partition_table_geometry(partition_table *bufp) { struct partition *p; @@ -1515,7 +1528,7 @@ get_partition_table_geometry(partition_table *bufp) { putchar(BELL); refresh(); cont = getch(); - if ((cont != 'y') && (cont != 'Y')) + if (cont == EOF || !said_yes(cont)) die_x(3); zero_table = TRUE; return; @@ -1558,7 +1571,7 @@ decide_on_geometry(void) { kern_sectors ? kern_sectors : 63); cylinder_size = heads*sectors; cylinders = actual_size/cylinder_size; - if (user_cylinders > 0 && user_cylinders <= 0x7fffffff/cylinder_size) + if (user_cylinders > 0) cylinders = user_cylinders; total_size = cylinder_size*cylinders; @@ -1586,7 +1599,9 @@ clear_p_info(void) { static void fill_p_info(void) { - int pn, i, bs, bsz; + int pn, i; + long long bs, bsz; + unsigned long long bytes; struct partition *p; partition_table buffer; partition_info tmp_ext = { 0, 0, 0, 0, FREE_SPACE, PRIMARY }; @@ -1615,8 +1630,15 @@ fill_p_info(void) { ioctl(fd, BLKFLSBUF); /* ignore errors */ /* e.g. Permission Denied */ - if (ioctl(fd, BLKGETSIZE, &actual_size)) - fatal(_("Cannot get disk size"), 3); + if (ioctl(fd, BLKGETSIZE64, &bytes) == 0) + actual_size = (bytes >> 9); + else { + unsigned long sz = 0; + + if (ioctl(fd, BLKGETSIZE, &sz)) + fatal(_("Cannot get disk size"), 3); + actual_size = sz; + } read_sector(buffer.c.b, 0); @@ -1695,7 +1717,7 @@ fill_p_info(void) { static void fill_part_table(struct partition *p, partition_info *pi) { - int begin; + long long begin; p->boot_ind = pi->flags; p->sys_ind = pi->id; @@ -1948,7 +1970,7 @@ print_raw_table(void) { static void print_p_info_entry(FILE *fp, partition_info *p) { - int size; + long long size; char part_str[40]; if (p->id == UNUSABLE) @@ -1965,17 +1987,17 @@ print_p_info_entry(FILE *fp, partition_info *p) { fp_printf(fp, " "); - fp_printf(fp, "%8d%c", p->first_sector, + fp_printf(fp, "%11lld%c", p->first_sector, ((p->first_sector/cylinder_size) != ((float)p->first_sector/cylinder_size) ? '*' : ' ')); - fp_printf(fp, "%8d%c", p->last_sector, + fp_printf(fp, "%11lld%c", p->last_sector, (((p->last_sector+1)/cylinder_size) != ((float)(p->last_sector+1)/cylinder_size) ? '*' : ' ')); - fp_printf(fp, "%7d%c", p->offset, + fp_printf(fp, "%6ld%c", p->offset, ((((p->first_sector == 0 || IS_LOGICAL(p->num)) && (p->offset != sectors)) || (p->first_sector != 0 && IS_PRIMARY(p->num) && @@ -1983,30 +2005,30 @@ print_p_info_entry(FILE *fp, partition_info *p) { '#' : ' ')); size = p->last_sector - p->first_sector + 1; - fp_printf(fp, "%8d%c", size, + fp_printf(fp, "%11lld%c", size, ((size/cylinder_size) != ((float)size/cylinder_size) ? '*' : ' ')); - fp_printf(fp, " "); + /* fp_printf(fp, " "); */ if (p->id == UNUSABLE) - sprintf(part_str, "%.17s", _("Unusable")); + sprintf(part_str, "%.15s", _("Unusable")); else if (p->id == FREE_SPACE) - sprintf(part_str, "%.17s", _("Free Space")); + sprintf(part_str, "%.15s", _("Free Space")); else if (partition_type_name(p->id)) - sprintf(part_str, "%.17s (%02X)", partition_type_name(p->id), p->id); + sprintf(part_str, "%.15s (%02X)", partition_type_name(p->id), p->id); else - sprintf(part_str, "%.17s (%02X)", _("Unknown"), p->id); - fp_printf(fp, "%-22.22s", part_str); + sprintf(part_str, "%.15s (%02X)", _("Unknown"), p->id); + fp_printf(fp, "%-20.20s", part_str); fp_printf(fp, " "); if (p->flags == ACTIVE_FLAG) - fp_printf(fp, _("Boot (%02X)"), p->flags); + fp_printf(fp, _("Boot"), p->flags); else if (p->flags != 0) - fp_printf(fp, _("Unknown (%02X)"), p->flags); + fp_printf(fp, _("(%02X)"), p->flags); else - fp_printf(fp, _("None (%02X)"), p->flags); + fp_printf(fp, _("None"), p->flags); fp_printf(fp, "\n"); } @@ -2043,9 +2065,9 @@ print_p_info(void) { fp_printf(fp, _("Partition Table for %s\n"), disk_device); fp_printf(fp, "\n"); - fp_printf(fp, _(" First Last\n")); - fp_printf(fp, _(" # Type Sector Sector Offset Length Filesystem Type (ID) Flags\n")); - fp_printf(fp, _("-- ------- -------- --------- ------ --------- ---------------------- ---------\n")); + fp_printf(fp, _(" First Last\n")); + fp_printf(fp, _(" # Type Sector Sector Offset Length Filesystem Type (ID) Flag\n")); + fp_printf(fp, _("-- ------- ----------- ----------- ------ ----------- -------------------- ----\n")); for (i = 0; i < num_parts; i++) { if (pext && (p_info[i].first_sector >= ext_info.first_sector)) { @@ -2065,7 +2087,7 @@ print_p_info(void) { static void print_part_entry(FILE *fp, int num, partition_info *pi) { - int first = 0, start = 0, end = 0, size = 0; + long long first = 0, start = 0, end = 0, size = 0; unsigned char ss, es, sh, eh; int sc, ec; int flags = 0, id = 0; @@ -2090,7 +2112,7 @@ print_part_entry(FILE *fp, int num, partition_info *pi) { set_hsc0(&eh, &es, &ec, end); } - fp_printf(fp, "%2d 0x%02X %4d %4d %4d 0x%02X %4d %4d %4d %8d %9d\n", + fp_printf(fp, "%2d 0x%02X %4d %4d %4d 0x%02X %4d %4d %4d %11lld %11lld\n", num+1, flags, sh, ss, sc, id, eh, es, ec, first, size); } @@ -2128,9 +2150,9 @@ print_part_table(void) { fp_printf(fp, _("Partition Table for %s\n"), disk_device); fp_printf(fp, "\n"); /* Three-line heading. Read "Start Sector" etc vertically. */ - fp_printf(fp, _(" ---Starting--- ----Ending---- Start Number of\n")); - fp_printf(fp, _(" # Flags Head Sect Cyl ID Head Sect Cyl Sector Sectors\n")); - fp_printf(fp, _("-- ----- ---- ---- ---- ---- ---- ---- ---- -------- ---------\n")); + fp_printf(fp, _(" ---Starting--- ----Ending---- Start Number of\n")); + fp_printf(fp, _(" # Flags Head Sect Cyl ID Head Sect Cyl Sector Sectors\n")); + fp_printf(fp, _("-- ----- ---- ---- ---- ---- ---- ---- ---- ----------- -----------\n")); for (i = 0; i < 4; i++) { for (j = 0; @@ -2259,7 +2281,8 @@ change_geometry(void) { int done = FALSE; char def[LINE_LENGTH]; char response[LINE_LENGTH]; - int tmp_val, max_cyls, i; + long long tmp_val; + int i; while (!done) { static struct MenuItem menuGeometry[]= @@ -2278,7 +2301,7 @@ change_geometry(void) { switch (toupper( menuSimple(menuGeometry, 3) )) { case 'C': - sprintf(def, "%ld", actual_size/cylinder_size); + sprintf(def, "%llu", actual_size/cylinder_size); mvaddstr(COMMAND_LINE_Y, COMMAND_LINE_X, _("Enter the number of cylinders: ")); i = get_string(response, LINE_LENGTH, def); @@ -2286,9 +2309,8 @@ change_geometry(void) { user_cylinders = actual_size/cylinder_size; ret_val = TRUE; } else if (i > 0) { - tmp_val = atoi(response); - max_cyls = 0x7fffffff / cylinder_size; - if (tmp_val > 0 && tmp_val <= max_cyls) { + tmp_val = atoll(response); + if (tmp_val > 0) { user_cylinders = tmp_val; ret_val = TRUE; } else @@ -2300,7 +2322,7 @@ change_geometry(void) { mvaddstr(COMMAND_LINE_Y, COMMAND_LINE_X, _("Enter the number of heads: ")); if (get_string(response, LINE_LENGTH, def) > 0) { - tmp_val = atoi(response); + tmp_val = atoll(response); if (tmp_val > 0 && tmp_val <= MAX_HEADS) { user_heads = tmp_val; ret_val = TRUE; @@ -2313,7 +2335,7 @@ change_geometry(void) { mvaddstr(COMMAND_LINE_Y, COMMAND_LINE_X, _("Enter the number of sectors per track: ")); if (get_string(response, LINE_LENGTH, def) > 0) { - tmp_val = atoi(response); + tmp_val = atoll(response); if (tmp_val > 0 && tmp_val <= MAX_SECTORS) { user_sectors = tmp_val; ret_val = TRUE; @@ -2337,7 +2359,7 @@ change_geometry(void) { } if (ret_val) { - int disk_end; + long long disk_end; disk_end = total_size-1; @@ -2448,9 +2470,10 @@ change_id(int i) { static void draw_partition(int i) { - int size, j; + int j; int y = i + DISK_TABLE_START + 2 - (cur_part/NUM_ON_SCREEN)*NUM_ON_SCREEN; char *t; + long long size; double fsize; if (!arrow_cursor) { @@ -2512,13 +2535,13 @@ draw_partition(int i) { size = p_info[i].last_sector - p_info[i].first_sector + 1; fsize = (double) size * SECTOR_SIZE; if (display_units == SECTORS) - mvprintw(y, SIZE_START, "%9d", size); + mvprintw(y, SIZE_START, "%11lld", size); else if (display_units == CYLINDERS) - mvprintw(y, SIZE_START, "%9d", size/cylinder_size); + mvprintw(y, SIZE_START, "%11lld", size/cylinder_size); else if (display_units == MEGABYTES) - mvprintw(y, SIZE_START, "%9.2f", ceiling((100*fsize)/(K*K))/100); + mvprintw(y, SIZE_START, "%11.2f", ceiling((100*fsize)/(K*K))/100); else if (display_units == GIGABYTES) - mvprintw(y, SIZE_START, "%9.2f", ceiling((100*fsize)/(K*K*K))/100); + mvprintw(y, SIZE_START, "%11.2f", ceiling((100*fsize)/(K*K*K))/100); if (size % cylinder_size != 0 || p_info[i].first_sector % cylinder_size != 0) mvprintw(y, COLUMNS-1, "*"); @@ -2573,16 +2596,16 @@ draw_screen(void) { mvaddstr(HEADER_START+2, (COLS-strlen(line))/2, line); { long long bytes = actual_size*(long long) SECTOR_SIZE; - long megabytes = bytes/1000000; + long long megabytes = bytes/1000000; if (megabytes < 10000) - sprintf(line, _("Size: %lld bytes, %ld MB"), + sprintf(line, _("Size: %lld bytes, %lld MB"), bytes, megabytes); else - sprintf(line, _("Size: %lld bytes, %ld.%ld GB"), + sprintf(line, _("Size: %lld bytes, %lld.%lld GB"), bytes, megabytes/1000, (megabytes/100)%10); } mvaddstr(HEADER_START+3, (COLS-strlen(line))/2, line); - sprintf(line, _("Heads: %d Sectors per Track: %d Cylinders: %d"), + sprintf(line, _("Heads: %d Sectors per Track: %d Cylinders: %lld"), heads, sectors, cylinders); mvaddstr(HEADER_START+4, (COLS-strlen(line))/2, line); @@ -2592,13 +2615,13 @@ draw_screen(void) { mvaddstr(DISK_TABLE_START, FSTYPE_START, _("FS Type")); mvaddstr(DISK_TABLE_START, LABEL_START+1, _("[Label]")); if (display_units == SECTORS) - mvaddstr(DISK_TABLE_START, SIZE_START, _(" Sectors")); + mvaddstr(DISK_TABLE_START, SIZE_START, _(" Sectors")); else if (display_units == CYLINDERS) - mvaddstr(DISK_TABLE_START, SIZE_START, _("Cylinders")); + mvaddstr(DISK_TABLE_START, SIZE_START, _(" Cylinders")); else if (display_units == MEGABYTES) - mvaddstr(DISK_TABLE_START, SIZE_START, _("Size (MB)")); + mvaddstr(DISK_TABLE_START, SIZE_START, _(" Size (MB)")); else if (display_units == GIGABYTES) - mvaddstr(DISK_TABLE_START, SIZE_START, _("Size (GB)")); + mvaddstr(DISK_TABLE_START, SIZE_START, _(" Size (GB)")); move(DISK_TABLE_START+1, 1); for (i = 1; i < COLS-1; i++) @@ -2651,8 +2674,7 @@ do_curses_fdisk(void) { int done = FALSE; char command; - static struct MenuItem menuMain[]= - { + static struct MenuItem menuMain[] = { { 'b', N_("Bootable"), N_("Toggle bootable flag of the current partition") }, { 'd', N_("Delete"), N_("Delete the current partition") }, { 'g', N_("Geometry"), N_("Change disk geometry (experts only)") }, @@ -2860,7 +2882,7 @@ main(int argc, char **argv) arrow_cursor = TRUE; break; case 'c': - user_cylinders = cylinders = atoi(optarg); + user_cylinders = cylinders = atoll(optarg); if (cylinders <= 0) { fprintf(stderr, "%s: %s\n", argv[0], _("Illegal cylinders value")); exit(1); diff --git a/fdisk/common.h b/fdisk/common.h index 0e5da96c..f3886395 100644 --- a/fdisk/common.h +++ b/fdisk/common.h @@ -2,10 +2,11 @@ /* including fails */ #include -#define BLKRRPART _IO(0x12,95) /* re-read partition table */ -#define BLKGETSIZE _IO(0x12,96) /* return device size */ -#define BLKFLSBUF _IO(0x12,97) /* flush buffer cache */ -#define BLKSSZGET _IO(0x12,104) /* get block device sector size */ +#define BLKRRPART _IO(0x12,95) /* re-read partition table */ +#define BLKGETSIZE _IO(0x12,96) /* return device size */ +#define BLKFLSBUF _IO(0x12,97) /* flush buffer cache */ +#define BLKSSZGET _IO(0x12,104) /* get block device sector size */ +#define BLKGETSIZE64 _IOR(0x12,114,8) /* 8 = sizeof(u64) */ /* including also fails */ struct hd_geometry { diff --git a/fdisk/fdisk.c b/fdisk/fdisk.c index 32b6bc39..32756a36 100644 --- a/fdisk/fdisk.c +++ b/fdisk/fdisk.c @@ -6,18 +6,8 @@ * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation: either version 1 or * (at your option) any later version. - * - * For detailed old history, see older versions. - * Contributions before 2001 by faith@cs.unc.edu, Michael Bischoff, - * LeBlanc@mcc.ac.uk, martin@cs.unc.edu, leisner@sdsp.mc.xerox.com, - * esr@snark.thyrsus.com, aeb@cwi.nl, quinlan@yggdrasil.com, - * fasten@cs.bonn.edu, orschaer@cip.informatik.uni-erlangen.de, - * jj@sunsite.mff.cuni.cz, fasten@shw.com, ANeuper@GUUG.de, - * kgw@suse.de, kalium@gmx.de, dhuggins@linuxcare.com, - * michal@ellpspace.math.ualberta.ca and probably others. */ - #include #include #include @@ -71,7 +61,7 @@ static void delete_partition(int i); /* A valid partition table sector ends in 0x55 0xaa */ static unsigned int part_table_flag(char *b) { - return ((uint) b[510]) + (((uint) b[511]) << 8); + return ((unsigned int) b[510]) + (((unsigned int) b[511]) << 8); } int @@ -97,8 +87,9 @@ store4_little_endian(unsigned char *cp, unsigned int val) { static unsigned int read4_little_endian(unsigned char *cp) { - return (uint)(cp[0]) + ((uint)(cp[1]) << 8) - + ((uint)(cp[2]) << 16) + ((uint)(cp[3]) << 24); + return (unsigned int)(cp[0]) + ((unsigned int)(cp[1]) << 8) + + ((unsigned int)(cp[2]) << 16) + + ((unsigned int)(cp[3]) << 24); } static void @@ -141,9 +132,9 @@ char MBRbuffer[MAX_SECTOR_SIZE]; struct pte { struct partition *part_table; /* points into sectorbuffer */ struct partition *ext_pointer; /* points into sectorbuffer */ - char changed; /* boolean */ - uint offset; /* disk sector number */ - char *sectorbuffer; /* disk sector contents */ + char changed; /* boolean */ + unsigned int offset; /* disk sector number */ + char *sectorbuffer; /* disk sector contents */ } ptes[MAXIMUM_PARTS]; char *disk_device, /* must be specified */ @@ -158,11 +149,11 @@ int fd, /* the disk */ dos_changed = 0, partitions = 4; /* maximum partition + 1 */ -uint user_cylinders, user_heads, user_sectors; -uint pt_heads, pt_sectors; -uint kern_heads, kern_sectors; +unsigned int user_cylinders, user_heads, user_sectors; +unsigned int pt_heads, pt_sectors; +unsigned int kern_heads, kern_sectors; -uint heads, +unsigned int heads, sectors, cylinders, sector_size = DEFAULT_SECTOR_SIZE, @@ -172,7 +163,7 @@ uint heads, display_in_cyl_units = 1, extended_offset = 0; /* offset of link pointers */ -unsigned long total_number_of_sectors; +unsigned long long total_number_of_sectors; #define dos_label (!sun_label && !sgi_label && !aix_label && !osf_label) int sun_label = 0; /* looking at sun disklabel */ @@ -247,21 +238,21 @@ void fatal(enum failure why) { } static void -seek_sector(int fd, uint secno) { - ext2_loff_t offset = (ext2_loff_t) secno * sector_size; - if (ext2_llseek(fd, offset, SEEK_SET) == (ext2_loff_t) -1) +seek_sector(int fd, unsigned int secno) { + long long offset = (long long) secno * sector_size; + if (ext2_llseek(fd, offset, SEEK_SET) == (long long) -1) fatal(unable_to_seek); } static void -read_sector(int fd, uint secno, char *buf) { +read_sector(int fd, unsigned int secno, char *buf) { seek_sector(fd, secno); if (read(fd, buf, sector_size) != sector_size) fatal(unable_to_read); } static void -write_sector(int fd, uint secno, char *buf) { +write_sector(int fd, unsigned int secno, char *buf) { seek_sector(fd, secno); if (write(fd, buf, sector_size) != sector_size) fatal(unable_to_write); @@ -269,7 +260,7 @@ write_sector(int fd, uint secno, char *buf) { /* Allocate a buffer and read a partition table sector */ static void -read_pte(int fd, int pno, uint offset) { +read_pte(int fd, int pno, unsigned int offset) { struct pte *pe = &ptes[pno]; pe->offset = offset; @@ -487,7 +478,7 @@ char *partition_type(unsigned char type) void list_types(struct systypes *sys) { - uint last[4], done = 0, next = 0, size; + unsigned int last[4], done = 0, next = 0, size; int i; for (i = 0; sys[i].name; i++); @@ -533,9 +524,10 @@ clear_partition(struct partition *p) { } static void -set_partition(int i, int doext, uint start, uint stop, int sysid) { +set_partition(int i, int doext, unsigned int start, unsigned int stop, + int sysid) { struct partition *p; - uint offset; + unsigned int offset; if (doext) { p = ptes[i].ext_pointer; @@ -809,7 +801,7 @@ get_partition_table_geometry(void) { void get_geometry(int fd, struct geom *g) { int sec_fac; - unsigned long longsectors; + unsigned long long bytes; /* really u64 */ get_sectorsize(fd); sec_fac = sector_size / 512; @@ -828,15 +820,23 @@ get_geometry(int fd, struct geom *g) { pt_sectors ? pt_sectors : kern_sectors ? kern_sectors : 63; - if (ioctl(fd, BLKGETSIZE, &longsectors)) - longsectors = 0; + if (ioctl(fd, BLKGETSIZE64, &bytes) == 0) { + /* got bytes */ + } else { + unsigned long longsectors; + + if (ioctl(fd, BLKGETSIZE, &longsectors)) + longsectors = 0; + bytes = ((unsigned long long) longsectors) << 9; + } + + total_number_of_sectors = (bytes >> 9); sector_offset = 1; if (dos_compatible_flag) sector_offset = sectors; - cylinders = longsectors / (heads * sectors); - cylinders /= sec_fac; + cylinders = total_number_of_sectors / (heads * sectors * sec_fac); if (!cylinders) cylinders = user_cylinders; @@ -845,8 +845,6 @@ get_geometry(int fd, struct geom *g) { g->sectors = sectors; g->cylinders = cylinders; } - - total_number_of_sectors = longsectors; } /* @@ -1048,10 +1046,11 @@ read_hex(struct systypes *sys) * * There is no default if DFLT is not between LOW and HIGH. */ -uint -read_int(uint low, uint dflt, uint high, uint base, char *mesg) +unsigned int +read_int(unsigned int low, unsigned int dflt, unsigned int high, + unsigned int base, char *mesg) { - uint i; + unsigned int i; int default_ok = 1; static char *ms = NULL; static int mslen = 0; @@ -1066,10 +1065,10 @@ read_int(uint low, uint dflt, uint high, uint base, char *mesg) default_ok = 0; if (default_ok) - snprintf(ms, mslen, _("%s (%d-%d, default %d): "), + snprintf(ms, mslen, _("%s (%u-%u, default %u): "), mesg, low, high, dflt); else - snprintf(ms, mslen, "%s (%d-%d): ", + snprintf(ms, mslen, "%s (%u-%u): ", mesg, low, high); while (1) { @@ -1095,8 +1094,10 @@ read_int(uint low, uint dflt, uint high, uint base, char *mesg) if (!display_in_cyl_units) i *= heads * sectors; break; - case 'k': case 'K': + absolute = 1024; + break; + case 'k': absolute = 1000; break; case 'm': @@ -1131,7 +1132,7 @@ read_int(uint low, uint dflt, uint high, uint base, char *mesg) } } if (use_default) - printf(_("Using default value %d\n"), i = dflt); + printf(_("Using default value %u\n"), i = dflt); if (i >= low && i <= high) break; else @@ -1335,7 +1336,15 @@ change_sysid(void) { int i, sys, origsys; struct partition *p; - i = get_existing_partition(0, partitions); + /* If sgi_label then don't use get_existing_partition, + let the user select a partition, since get_existing_partition() + only works for Linux like partition tables. */ + if (!sgi_label) { + i = get_existing_partition(0, partitions); + } else { + i = get_partition(0, partitions); + } + if (i == -1) return; p = ptes[i].part_table; @@ -1404,8 +1413,9 @@ change_sysid(void) { * Jan. 1990 (version 1.2.1 by Gordon W. Ross Aug. 1990; Modified by S. * Lubkin Oct. 1991). */ -static void long2chs(ulong ls, uint *c, uint *h, uint *s) { - int spc = heads * sectors; +static void +long2chs(ulong ls, unsigned int *c, unsigned int *h, unsigned int *s) { + int spc = heads * sectors; *c = ls / spc; ls = ls % spc; @@ -1414,10 +1424,10 @@ static void long2chs(ulong ls, uint *c, uint *h, uint *s) { } static void check_consistency(struct partition *p, int partition) { - uint pbc, pbh, pbs; /* physical beginning c, h, s */ - uint pec, peh, pes; /* physical ending c, h, s */ - uint lbc, lbh, lbs; /* logical beginning c, h, s */ - uint lec, leh, les; /* logical ending c, h, s */ + unsigned int pbc, pbh, pbs; /* physical beginning c, h, s */ + unsigned int pec, peh, pes; /* physical ending c, h, s */ + unsigned int lbc, lbh, lbs; /* logical beginning c, h, s */ + unsigned int lec, leh, les; /* logical ending c, h, s */ if (!heads || !sectors || (partition >= 4)) return; /* do not check extended partitions */ @@ -1478,7 +1488,7 @@ static void check_consistency(struct partition *p, int partition) { static void list_disk_geometry(void) { - long long bytes = (long long) total_number_of_sectors * 512; + long long bytes = (total_number_of_sectors << 9); long megabytes = bytes/1000000; if (megabytes < 10000) @@ -1490,7 +1500,7 @@ list_disk_geometry(void) { printf(_("%d heads, %d sectors/track, %d cylinders"), heads, sectors, cylinders); if (units_per_sector == 1) - printf(_(", total %lu sectors"), + printf(_(", total %llu sectors"), total_number_of_sectors / (sector_size/512)); printf("\n"); printf(_("Units = %s of %d * %d = %d bytes\n\n"), @@ -1507,7 +1517,7 @@ static int wrong_p_order(int *prev) { struct pte *pe; struct partition *p; - uint last_p_start_pos = 0, p_start_pos; + unsigned int last_p_start_pos = 0, p_start_pos; int i, last_i = 0; for (i = 0 ; i < partitions; i++) { @@ -1665,7 +1675,7 @@ list_table(int xtra) { if (w < 5) w = 5; - printf(_("%*s Boot Start End Blocks Id System\n"), + printf(_("%*s Boot Start End Blocks Id System\n"), w+1, _("Device")); for (i = 0; i < partitions; i++) { @@ -1684,14 +1694,14 @@ list_table(int xtra) { if (sector_size > 1024) pblocks *= (sector_size / 1024); printf( - "%s %c %9ld %9ld %9ld%c %2x %s\n", + "%s %c %11lu %11lu %11lu%c %2x %s\n", partname(disk_device, i+1, w+2), /* boot flag */ !p->boot_ind ? ' ' : p->boot_ind == ACTIVE_FLAG ? '*' : '?', -/* start */ (long) cround(get_partition_start(pe)), -/* end */ (long) cround(get_partition_start(pe) + psects +/* start */ (unsigned long) cround(get_partition_start(pe)), +/* end */ (unsigned long) cround(get_partition_start(pe) + psects - (psects ? 1 : 0)), -/* odd flag on end */ (long) pblocks, podd ? '+' : ' ', +/* odd flag on end */ (unsigned long) pblocks, podd ? '+' : ' ', /* type id */ p->sys_ind, /* type name */ (type = partition_type(p->sys_ind)) ? type : _("Unknown")); @@ -1715,12 +1725,12 @@ x_list_table(int extend) { printf(_("\nDisk %s: %d heads, %d sectors, %d cylinders\n\n"), disk_device, heads, sectors, cylinders); - printf(_("Nr AF Hd Sec Cyl Hd Sec Cyl Start Size ID\n")); + printf(_("Nr AF Hd Sec Cyl Hd Sec Cyl Start Size ID\n")); for (i = 0 ; i < partitions; i++) { pe = &ptes[i]; p = (extend ? pe->ext_pointer : pe->part_table); if (p != NULL) { - printf("%2d %02x%4d%4d%5d%4d%4d%5d%9d%9d %02x\n", + printf("%2d %02x%4d%4d%5d%4d%4d%5d%11u%11u %02x\n", i + 1, p->boot_ind, p->head, sector(p->sector), cylinder(p->sector, p->cyl), p->end_head, @@ -1734,7 +1744,7 @@ x_list_table(int extend) { } static void -fill_bounds(uint *first, uint *last) { +fill_bounds(unsigned int *first, unsigned int *last) { int i; struct pte *pe = &ptes[0]; struct partition *p; @@ -1752,8 +1762,9 @@ fill_bounds(uint *first, uint *last) { } static void -check(int n, uint h, uint s, uint c, uint start) { - uint total, real_s, real_c; +check(int n, unsigned int h, unsigned int s, unsigned int c, + unsigned int start) { + unsigned int total, real_s, real_c; real_s = sector(s) - 1; real_c = cylinder(s, c); @@ -1779,8 +1790,8 @@ check(int n, uint h, uint s, uint c, uint start) { static void verify(void) { int i, j; - uint total = 1; - uint first[partitions], last[partitions]; + unsigned int total = 1; + unsigned int first[partitions], last[partitions]; struct partition *p; if (warn_geometry()) @@ -1824,7 +1835,7 @@ verify(void) { if (extended_offset) { struct pte *pex = &ptes[ext_index]; - uint e_last = get_start_sect(pex->part_table) + + unsigned int e_last = get_start_sect(pex->part_table) + get_nr_sects(pex->part_table) - 1; for (i = 4; i < partitions; i++) { @@ -1855,7 +1866,8 @@ add_partition(int n, int sys) { int i, read = 0; struct partition *p = ptes[n].part_table; struct partition *q = ptes[ext_index].part_table; - uint start, stop = 0, limit, temp, + long long llimit; + unsigned int start, stop = 0, limit, temp, first[partitions], last[partitions]; if (p && p->sys_ind) { @@ -1866,10 +1878,13 @@ add_partition(int n, int sys) { fill_bounds(first, last); if (n < 4) { start = sector_offset; - if (display_in_cyl_units) - limit = heads * sectors * cylinders - 1; + if (display_in_cyl_units || !total_number_of_sectors) + llimit = heads * sectors * cylinders - 1; else - limit = total_number_of_sectors - 1; + llimit = total_number_of_sectors - 1; + limit = llimit; + if (limit != llimit) + limit = 0x7fffffff; if (extended_offset) { first[ext_index] = extended_offset; last[ext_index] = get_start_sect(q) + @@ -1903,8 +1918,8 @@ add_partition(int n, int sys) { read = 0; } if (!read && start == temp) { - uint i; - i = start; + unsigned int i = start; + start = read_int(cround(i), cround(i), cround(limit), 0, mesg); if (display_in_cyl_units) { @@ -2174,7 +2189,7 @@ static void move_begin(int i) { struct pte *pe = &ptes[i]; struct partition *p = pe->part_table; - uint new, first; + unsigned int new, first; if (warn_geometry()) return; @@ -2575,7 +2590,15 @@ main(int argc, char **argv) { unknown_command(c); break; case 'd': - j = get_existing_partition(1, partitions); + /* If sgi_label then don't use get_existing_partition, + let the user select a partition, since + get_existing_partition() only works for Linux-like + partition tables */ + if (!sgi_label) { + j = get_existing_partition(1, partitions); + } else { + j = get_partition(1, partitions); + } if (j >= 0) delete_partition(j); break; diff --git a/fdisk/fdisk.h b/fdisk/fdisk.h index 82bf4685..6daadd90 100644 --- a/fdisk/fdisk.h +++ b/fdisk/fdisk.h @@ -26,15 +26,8 @@ #define cround(n) (display_in_cyl_units ? ((n)/units_per_sector)+1 : (n)) #define scround(x) (((x)+units_per_sector-1)/units_per_sector) -#if defined(__GNUC__) || defined(HAS_LONG_LONG) -typedef long long ext2_loff_t; -#else -typedef long ext2_loff_t; -#endif - -extern ext2_loff_t ext2_llseek(unsigned int fd, - ext2_loff_t offset, - unsigned int origin); +extern long long ext2_llseek(unsigned int fd, long long offset, + unsigned int origin); struct partition { unsigned char boot_ind; /* 0x80 - active */ @@ -62,12 +55,9 @@ struct geom { }; /* prototypes for fdisk.c */ -extern char *disk_device, - *line_ptr; -extern int fd, - partitions; -extern uint display_in_cyl_units, - units_per_sector; +extern char *disk_device, *line_ptr; +extern int fd, partitions; +extern unsigned int display_in_cyl_units, units_per_sector; extern void change_units(void); extern void fatal(enum failure why); extern void get_geometry(int fd, struct geom *); @@ -80,7 +70,8 @@ extern int read_hex(struct systypes *sys); extern void reread_partition_table(int leave); extern struct partition *get_part_table(int); extern int valid_part_table_flag(unsigned char *b); -extern uint read_int(uint low, uint dflt, uint high, uint base, char *mesg); +extern unsigned int read_int(unsigned int low, unsigned int dflt, + unsigned int high, unsigned int base, char *mesg); #define PLURAL 0 diff --git a/fdisk/fdiskaixlabel.c b/fdisk/fdiskaixlabel.c index 395de53e..4f6167f9 100644 --- a/fdisk/fdiskaixlabel.c +++ b/fdisk/fdiskaixlabel.c @@ -4,7 +4,6 @@ Internationalization */ #include /* stderr */ -#include /* uint */ #include /* strstr */ #include /* write */ diff --git a/fdisk/fdiskaixlabel.h b/fdisk/fdiskaixlabel.h index ca6919d7..45e53aaf 100644 --- a/fdisk/fdiskaixlabel.h +++ b/fdisk/fdiskaixlabel.h @@ -21,7 +21,7 @@ typedef struct { #define aixlabel ((aix_partition *)MBRbuffer) extern char MBRbuffer[MAX_SECTOR_SIZE]; extern char changed[MAXIMUM_PARTS]; -extern uint heads, sectors, cylinders; +extern unsigned int heads, sectors, cylinders; extern int show_begin; extern int aix_label; extern char *partition_type(unsigned char type); diff --git a/fdisk/fdiskbsdlabel.c b/fdisk/fdiskbsdlabel.c index 6895e606..fe203911 100644 --- a/fdisk/fdiskbsdlabel.c +++ b/fdisk/fdiskbsdlabel.c @@ -266,7 +266,7 @@ xbsd_delete_part (void) static void xbsd_new_part (void) { - uint begin, end; + unsigned int begin, end; char mesg[256]; int i; @@ -566,7 +566,7 @@ xbsd_write_bootstrap (void) sector = get_start_sect(xbsd_part); #endif - if (ext2_llseek (fd, (ext2_loff_t) sector * SECTOR_SIZE, SEEK_SET) == -1) + if (ext2_llseek (fd, (long long) sector * SECTOR_SIZE, SEEK_SET) == -1) fatal (unable_to_seek); if (BSD_BBSIZE != write (fd, disklabelbuffer, BSD_BBSIZE)) fatal (unable_to_write); @@ -735,7 +735,7 @@ xbsd_readlabel (struct partition *p, struct xbsd_disklabel *d) sector = 0; #endif - if (ext2_llseek (fd, (ext2_loff_t) sector * SECTOR_SIZE, SEEK_SET) == -1) + if (ext2_llseek (fd, (long long) sector * SECTOR_SIZE, SEEK_SET) == -1) fatal (unable_to_seek); if (BSD_BBSIZE != read (fd, disklabelbuffer, BSD_BBSIZE)) fatal (unable_to_read); @@ -762,7 +762,7 @@ xbsd_readlabel (struct partition *p, struct xbsd_disklabel *d) static int xbsd_writelabel (struct partition *p, struct xbsd_disklabel *d) { - int sector; + unsigned int sector; #if !defined (__alpha__) && !defined (__powerpc__) && !defined (__hppa__) sector = get_start_sect(p) + BSD_LABELSECTOR; @@ -781,12 +781,12 @@ xbsd_writelabel (struct partition *p, struct xbsd_disklabel *d) #if defined (__alpha__) && BSD_LABELSECTOR == 0 alpha_bootblock_checksum (disklabelbuffer); - if (ext2_llseek (fd, (ext2_loff_t) 0, SEEK_SET) == -1) + if (ext2_llseek (fd, (long long) 0, SEEK_SET) == -1) fatal (unable_to_seek); if (BSD_BBSIZE != write (fd, disklabelbuffer, BSD_BBSIZE)) fatal (unable_to_write); #else - if (ext2_llseek (fd, (ext2_loff_t) sector * SECTOR_SIZE + BSD_LABELOFFSET, + if (ext2_llseek (fd, (long long) sector * SECTOR_SIZE + BSD_LABELOFFSET, SEEK_SET) == -1) fatal (unable_to_seek); if (sizeof (struct xbsd_disklabel) != write (fd, d, sizeof (struct xbsd_disklabel))) diff --git a/fdisk/fdisksgilabel.c b/fdisk/fdisksgilabel.c index f5f7373d..2359e17b 100644 --- a/fdisk/fdisksgilabel.c +++ b/fdisk/fdisksgilabel.c @@ -6,11 +6,14 @@ * This file may be modified and redistributed under * the terms of the GNU Public License. * - * Sat Mar 20 EST 1999 Arnaldo Carvalho de Melo + * 1999-03-20 Arnaldo Carvalho de Melo * Internationalization + * + * 2003-03-20 Phillip Kesling + * Some fixes */ #include /* stderr */ -#include /* uint */ +#include /* exit */ #include /* strstr */ #include /* write */ #include /* ioctl */ @@ -33,40 +36,39 @@ static short volumes=1; * only dealing with free blocks here */ -typedef struct { int first; int last; } freeblocks; +typedef struct { unsigned int first; unsigned int last; } freeblocks; static freeblocks freelist[17]; /* 16 partitions can produce 17 vacant slots */ static void -setfreelist( int i, int f, int l ) { +setfreelist(int i, unsigned int f, unsigned int l) { freelist[i].first = f; freelist[i].last = l; } static void -add2freelist( int f, int l ) { +add2freelist(unsigned int f, unsigned int l) { int i = 0; - for( ; i<17 ; i++ ) { - if(freelist[i].last==0) break; - } - setfreelist( i, f, l ); + for ( ; i < 17 ; i++) + if (freelist[i].last == 0) + break; + setfreelist(i, f, l); } static void clearfreelist(void) { - int i = 0; - for( ; i<17 ; i++ ) { - setfreelist( i, 0, 0 ); - } + int i; + + for (i = 0; i < 17 ; i++) + setfreelist(i, 0, 0); } -static int -isinfreelist( int b ) { - int i = 0; - for( ; i<17 ; i++ ) { - if (freelist[i].first <= b && freelist[i].last >= b) { +static unsigned int +isinfreelist(unsigned int b) { + int i; + + for (i = 0; i < 17 ; i++) + if (freelist[i].first <= b && freelist[i].last >= b) return freelist[i].last; - } - } return 0; } /* return last vacant block of this stride (never 0). */ @@ -103,130 +105,132 @@ __swap16(unsigned short x) { static inline __u32 __swap32(__u32 x) { - return (((__u32)(x) & 0xFF) << 24) | (((__u32)(x) & 0xFF00) << 8) | (((__u32)(x) & 0xFF0000) >> 8) | (((__u32)(x) & 0xFF000000) >> 24); + return (((x & 0xFF) << 24) | + ((x & 0xFF00) << 8) | + ((x & 0xFF0000) >> 8) | + ((x & 0xFF000000) >> 24)); } static int sgi_get_nsect(void) { - return SSWAP16(sgilabel->devparam.nsect); + return SSWAP16(sgilabel->devparam.nsect); } static int sgi_get_ntrks(void) { - return SSWAP16(sgilabel->devparam.ntrks); + return SSWAP16(sgilabel->devparam.ntrks); } #if 0 static int sgi_get_head_vol0(void) { - return SSWAP16(sgilabel->devparam.head_vol0); + return SSWAP16(sgilabel->devparam.head_vol0); } static int sgi_get_bytes(void) { - return SSWAP16(sgilabel->devparam.bytes); + return SSWAP16(sgilabel->devparam.bytes); } -#endif static int sgi_get_pcylcount(void) { - return SSWAP16(sgilabel->devparam.pcylcount); + return SSWAP16(sgilabel->devparam.pcylcount); } +#endif void sgi_nolabel() { - sgilabel->magic = 0; - sgi_label = 0; - partitions = 4; + sgilabel->magic = 0; + sgi_label = 0; + partitions = 4; } static unsigned int -two_s_complement_32bit_sum(unsigned int* base, int size /* in bytes */ ) { - int i=0; - unsigned int sum=0; +two_s_complement_32bit_sum(unsigned int *base, int size /* in bytes */) { + int i = 0; + unsigned int sum = 0; - size = size / sizeof( unsigned int ); - for( i=0; i 512) { - fprintf(stderr, - _("According to MIPS Computer Systems, Inc the " - "Label must not contain more than 512 bytes\n")); - exit(1); - } - - if (sgilabel->magic != SGI_LABEL_MAGIC && - sgilabel->magic != SGI_LABEL_MAGIC_SWAPPED) { - sgi_label = 0; - other_endian = 0; - return 0; - } - - other_endian = (sgilabel->magic == SGI_LABEL_MAGIC_SWAPPED); - /* - * test for correct checksum - */ - if( two_s_complement_32bit_sum( (unsigned int*)sgilabel, - sizeof(*sgilabel) ) ) - { - fprintf( stderr, _("Detected sgi disklabel with wrong checksum.\n")); - } else - { - heads = sgi_get_ntrks(); - cylinders = sgi_get_pcylcount(); - sectors = sgi_get_nsect(); - } - update_units(); - sgi_label = 1; - partitions= 16; - volumes = 15; - return 1; + if (sizeof(sgilabel) > 512) { + fprintf(stderr, + _("According to MIPS Computer Systems, Inc the " + "Label must not contain more than 512 bytes\n")); + exit(1); + } + + if (sgilabel->magic != SGI_LABEL_MAGIC && + sgilabel->magic != SGI_LABEL_MAGIC_SWAPPED) { + sgi_label = 0; + other_endian = 0; + return 0; + } + + other_endian = (sgilabel->magic == SGI_LABEL_MAGIC_SWAPPED); + /* + * test for correct checksum + */ + if (two_s_complement_32bit_sum((unsigned int*)sgilabel, + sizeof(*sgilabel))) { + fprintf(stderr, + _("Detected sgi disklabel with wrong checksum.\n")); + } + update_units(); + sgi_label = 1; + partitions= 16; + volumes = 15; + return 1; } void -sgi_list_table( int xtra ) { - int i, w; - int kpi = 0; /* kernel partition ID */ - char *type; - - w = strlen( disk_device ); - - if( xtra ) { - printf(_("\nDisk %s (SGI disk label): %d heads, %d sectors\n" - "%d cylinders, %d physical cylinders\n" - "%d extra sects/cyl, interleave %d:1\n" - "%s\n" - "Units = %s of %d * 512 bytes\n\n"), - disk_device, heads, sectors, cylinders, - SSWAP16(sgiparam.pcylcount), - SSWAP16(sgiparam.sparecyl), - SSWAP16(sgiparam.ilfact), - (char *)sgilabel, - str_units(PLURAL), units_per_sector); - } else { - printf( _("\nDisk %s (SGI disk label): " - "%d heads, %d sectors, %d cylinders\n" - "Units = %s of %d * 512 bytes\n\n"), - disk_device, heads, sectors, cylinders, - str_units(PLURAL), units_per_sector ); - } - printf(_("----- partitions -----\n" - "Pt# %*s Info Start End Sectors Id System\n"), - w + 1, _("Device")); - for (i = 0 ; i < partitions; i++) { - if( sgi_get_num_sectors(i) || debug ) { - __u32 start = sgi_get_start_sector(i); - __u32 len = sgi_get_num_sectors(i); - kpi++; /* only count nonempty partitions */ - printf( - "%2d: %s %4s %9ld %9ld %9ld %2x %s\n", +sgi_list_table(int xtra) { + int i, w, wd; + int kpi = 0; /* kernel partition ID */ + char *type; + + if (xtra) { + printf(_("\nDisk %s (SGI disk label): %d heads, %d sectors\n" + "%d cylinders, %d physical cylinders\n" + "%d extra sects/cyl, interleave %d:1\n" + "%s\n" + "Units = %s of %d * 512 bytes\n\n"), + disk_device, heads, sectors, cylinders, + SSWAP16(sgiparam.pcylcount), + SSWAP16(sgiparam.sparecyl), + SSWAP16(sgiparam.ilfact), + (char *)sgilabel, + str_units(PLURAL), units_per_sector); + } else { + printf(_("\nDisk %s (SGI disk label): " + "%d heads, %d sectors, %d cylinders\n" + "Units = %s of %d * 512 bytes\n\n"), + disk_device, heads, sectors, cylinders, + str_units(PLURAL), units_per_sector); + } + + w = strlen(disk_device); + wd = strlen(_("Device")); + if (w < wd) + w = wd; + + printf(_("----- partitions -----\n" + "Pt# %*s Info Start End Sectors Id System\n"), + w + 2, _("Device")); + for (i = 0 ; i < partitions; i++) { + if (sgi_get_num_sectors(i) || debug) { + __u32 start = sgi_get_start_sector(i); + __u32 len = sgi_get_num_sectors(i); + kpi++; /* only count nonempty partitions */ + printf( + "%2d: %s %4s %9ld %9ld %9ld %2x %s\n", /* fdisk part number */ i+1, -/* device */ partname(disk_device, kpi, w+2), +/* device */ partname(disk_device, kpi, w+3), /* flags */ (sgi_get_swappartition() == i) ? "swap" : /* flags */ (sgi_get_bootpartition() == i) ? "boot" : " ", /* start */ (long) scround(start), @@ -234,96 +238,95 @@ sgi_list_table( int xtra ) { /* no odd flag on end */ (long) len, /* type id */ sgi_get_sysid(i), /* type name */ (type = partition_type(sgi_get_sysid(i))) - ? type : _("Unknown")); + ? type : _("Unknown")); + } } - } - printf(_("----- Bootinfo -----\nBootfile: %s\n" - "----- Directory Entries -----\n"), - sgilabel->boot_file ); - for (i = 0 ; i < volumes; i++) - { - if (sgilabel->directory[i].vol_file_size) - { - __u32 start = SSWAP32(sgilabel->directory[i].vol_file_start); - __u32 len = SSWAP32(sgilabel->directory[i].vol_file_size); - char*name = sgilabel->directory[i].vol_file_name; - printf(_("%2d: %-10s sector%5u size%8u\n"), - i, name, (unsigned int) start, (unsigned int) len); + printf(_("----- Bootinfo -----\nBootfile: %s\n" + "----- Directory Entries -----\n"), + sgilabel->boot_file); + for (i = 0 ; i < volumes; i++) { + if (sgilabel->directory[i].vol_file_size) { + __u32 start = SSWAP32(sgilabel->directory[i].vol_file_start); + __u32 len = SSWAP32(sgilabel->directory[i].vol_file_size); + char *name = sgilabel->directory[i].vol_file_name; + printf(_("%2d: %-10s sector%5u size%8u\n"), + i, name, (unsigned int) start, + (unsigned int) len); + } } - } } -int -sgi_get_start_sector( int i ) { - return SSWAP32(sgilabel->partitions[i].start_sector); +unsigned int +sgi_get_start_sector(int i) { + return SSWAP32(sgilabel->partitions[i].start_sector); } -int -sgi_get_num_sectors( int i ) { - return SSWAP32(sgilabel->partitions[i].num_sectors); +unsigned int +sgi_get_num_sectors(int i) { + return SSWAP32(sgilabel->partitions[i].num_sectors); } int -sgi_get_sysid( int i ) +sgi_get_sysid(int i) { - return SSWAP32(sgilabel->partitions[i].id); + return SSWAP32(sgilabel->partitions[i].id); } int sgi_get_bootpartition(void) { - return SSWAP16(sgilabel->boot_part); + return SSWAP16(sgilabel->boot_part); } int sgi_get_swappartition(void) { - return SSWAP16(sgilabel->swap_part); + return SSWAP16(sgilabel->swap_part); } void -sgi_set_bootpartition( int i ) +sgi_set_bootpartition(int i) { - sgilabel->boot_part = SSWAP16(((short)i)); + sgilabel->boot_part = SSWAP16(((short)i)); } -static int +static unsigned int sgi_get_lastblock(void) { - return heads * sectors * cylinders; + return heads * sectors * cylinders; } void -sgi_set_swappartition( int i ) { - sgilabel->swap_part = SSWAP16(((short)i)); +sgi_set_swappartition(int i) { + sgilabel->swap_part = SSWAP16(((short)i)); } static int -sgi_check_bootfile( const char* aFile ) { - if( strlen( aFile ) < 3 ) /* "/a\n" is minimum */ - { - printf( _("\nInvalid Bootfile!\n" - "\tThe bootfile must be an absolute non-zero pathname,\n" - "\te.g. \"/unix\" or \"/unix.save\".\n") ); - return 0; - } else - if( strlen( aFile ) > 16 ) - { - printf( _("\n\tName of Bootfile too long: 16 bytes maximum.\n") ); - return 0; - } else - if( aFile[0] != '/' ) - { - printf( _("\n\tBootfile must have a fully qualified pathname.\n") ); - return 0; - } - if( strncmp( aFile, sgilabel->boot_file, 16 ) ) - { - printf( _("\n\tBe aware, that the bootfile is not checked for existence.\n\t" - "SGI's default is \"/unix\" and for backup \"/unix.save\".\n") ); - /* filename is correct and did change */ - return 1; - } - return 0; /* filename did not change */ +sgi_check_bootfile(const char* aFile) { + if (strlen(aFile) < 3) /* "/a\n" is minimum */ { + printf(_("\nInvalid Bootfile!\n" + "\tThe bootfile must be an absolute non-zero pathname,\n" + "\te.g. \"/unix\" or \"/unix.save\".\n")); + return 0; + } else { + if (strlen(aFile) > 16) { + printf(_("\n\tName of Bootfile too long: " + "16 bytes maximum.\n")); + return 0; + } else { + if (aFile[0] != '/') { + printf(_("\n\tBootfile must have a " + "fully qualified pathname.\n")); + return 0; + } + } + } + if (strncmp(aFile, sgilabel->boot_file, 16)) { + printf(_("\n\tBe aware, that the bootfile is not checked for existence.\n\t" + "SGI's default is \"/unix\" and for backup \"/unix.save\".\n")); + /* filename is correct and did change */ + return 1; + } + return 0; /* filename did not change */ } const char * @@ -332,532 +335,512 @@ sgi_get_bootfile(void) { } void -sgi_set_bootfile( const char* aFile ) -{ - int i = 0; - if( sgi_check_bootfile( aFile ) ) - { - while( i<16 ) - { - if( (aFile[i] != '\n') /* in principle caught again by next line */ - && (strlen( aFile ) > i ) ) - sgilabel->boot_file[i] = aFile[i]; - else - sgilabel->boot_file[i] = 0; - i++; +sgi_set_bootfile(const char* aFile) { + int i = 0; + + if (sgi_check_bootfile(aFile)) { + while (i < 16) { + if ((aFile[i] != '\n') /* in principle caught again by next line */ + && (strlen(aFile) > i)) + sgilabel->boot_file[i] = aFile[i]; + else + sgilabel->boot_file[i] = 0; + i++; + } + printf(_("\n\tBootfile is changed to \"%s\".\n"), + sgilabel->boot_file); } - printf( _("\n\tBootfile is changed to \"%s\".\n"), sgilabel->boot_file ); - } } void -create_sgiinfo(void) -{ - /* I keep SGI's habit to write the sgilabel to the second block */ - sgilabel->directory[0].vol_file_start = SSWAP32( 2 ); - sgilabel->directory[0].vol_file_size = SSWAP32( sizeof( sgiinfo ) ); - strncpy( sgilabel->directory[0].vol_file_name, "sgilabel", 8 ); +create_sgiinfo(void) { + /* I keep SGI's habit to write the sgilabel to the second block */ + sgilabel->directory[0].vol_file_start = SSWAP32(2); + sgilabel->directory[0].vol_file_size = SSWAP32(sizeof(sgiinfo)); + strncpy(sgilabel->directory[0].vol_file_name, "sgilabel", 8); } -sgiinfo * fill_sgiinfo(void); +sgiinfo *fill_sgiinfo(void); void -sgi_write_table(void) -{ - sgilabel->csum = 0; - sgilabel->csum = SSWAP32( two_s_complement_32bit_sum( - (unsigned int*)sgilabel, - sizeof(*sgilabel) ) ); - assert( two_s_complement_32bit_sum( - (unsigned int*)sgilabel, sizeof(*sgilabel) ) == 0 ); - if( lseek(fd, 0, SEEK_SET) < 0 ) - fatal(unable_to_seek); - if( write(fd, sgilabel, SECTOR_SIZE) != SECTOR_SIZE ) - fatal(unable_to_write); - if( ! strncmp( sgilabel->directory[0].vol_file_name, "sgilabel",8 ) ) - { - /* - * keep this habbit of first writing the "sgilabel". - * I never tested whether it works without (AN 981002). - */ - sgiinfo*info = fill_sgiinfo(); /* fills the block appropriately */ - int infostartblock = SSWAP32( sgilabel->directory[0].vol_file_start ); - if( ext2_llseek(fd, (ext2_loff_t)infostartblock* - SECTOR_SIZE, SEEK_SET) < 0 ) - fatal(unable_to_seek); - if( write(fd, info, SECTOR_SIZE) != SECTOR_SIZE ) - fatal(unable_to_write); - free( info ); - } +sgi_write_table(void) { + sgilabel->csum = 0; + sgilabel->csum = SSWAP32(two_s_complement_32bit_sum( + (unsigned int*)sgilabel, + sizeof(*sgilabel))); + assert(two_s_complement_32bit_sum( + (unsigned int*)sgilabel, sizeof(*sgilabel)) == 0); + if (lseek(fd, 0, SEEK_SET) < 0) + fatal(unable_to_seek); + if (write(fd, sgilabel, SECTOR_SIZE) != SECTOR_SIZE) + fatal(unable_to_write); + if (! strncmp(sgilabel->directory[0].vol_file_name, "sgilabel", 8)) { + /* + * keep this habit of first writing the "sgilabel". + * I never tested whether it works without (AN 981002). + */ + sgiinfo *info = fill_sgiinfo(); + int infostartblock = SSWAP32(sgilabel->directory[0].vol_file_start); + if (ext2_llseek(fd, (long long)infostartblock* + SECTOR_SIZE, SEEK_SET) < 0) + fatal(unable_to_seek); + if (write(fd, info, SECTOR_SIZE) != SECTOR_SIZE) + fatal(unable_to_write); + free(info); + } } static int -compare_start( int *x, int *y ) { - /* - * sort according to start sectors - * and prefers largest partition: - * entry zero is entire disk entry - */ - int i = *x; - int j = *y; - int a = sgi_get_start_sector(i); - int b = sgi_get_start_sector(j); - int c = sgi_get_num_sectors(i); - int d = sgi_get_num_sectors(j); - if( a == b ) - { - return( d - c ); - } - return( a - b ); +compare_start(int *x, int *y) { + /* + * sort according to start sectors + * and prefers largest partition: + * entry zero is entire disk entry + */ + unsigned int i = *x; + unsigned int j = *y; + unsigned int a = sgi_get_start_sector(i); + unsigned int b = sgi_get_start_sector(j); + unsigned int c = sgi_get_num_sectors(i); + unsigned int d = sgi_get_num_sectors(j); + + if (a == b) + return (d > c) ? 1 : (d == c) ? 0 : -1; + return (a > b) ? 1 : -1; } static int sgi_gaps(void) { - /* - * returned value is: - * = 0 : disk is properly filled to the rim - * < 0 : there is an overlap - * > 0 : there is still some vacant space - */ - return verify_sgi(0); + /* + * returned value is: + * = 0 : disk is properly filled to the rim + * < 0 : there is an overlap + * > 0 : there is still some vacant space + */ + return verify_sgi(0); } int -verify_sgi( int verbose ) +verify_sgi(int verbose) { - int Index[16]; /* list of valid partitions */ - int sortcount = 0; /* number of used partitions, i.e. non-zero lengths */ - int entire = 0, i = 0; /* local counters */ - int start = 0; - int gap = 0; /* count unused blocks */ - int lastblock = sgi_get_lastblock(); - /* - */ - clearfreelist(); - for( i=0; i<16; i++ ) - { - if( sgi_get_num_sectors(i)!=0 ) - { - Index[sortcount++]=i; - if( sgi_get_sysid(i) == ENTIRE_DISK ) - { - if( entire++ == 1 ) - { - if(verbose) - printf(_("More than one entire disk entry present.\n")); + int Index[16]; /* list of valid partitions */ + int sortcount = 0; /* number of used partitions, i.e. non-zero lengths */ + int entire = 0, i = 0; + unsigned int start = 0; + long long gap = 0; /* count unused blocks */ + unsigned int lastblock = sgi_get_lastblock(); + + clearfreelist(); + for (i=0; i<16; i++) { + if (sgi_get_num_sectors(i) != 0) { + Index[sortcount++]=i; + if (sgi_get_sysid(i) == ENTIRE_DISK) { + if (entire++ == 1) { + if (verbose) + printf(_("More than one entire disk entry present.\n")); + } + } } - } - } - } - if( sortcount == 0 ) - { - if(verbose) - printf(_("No partitions defined\n")); - return lastblock; - } - qsort( Index, sortcount, sizeof(Index[0]), (void*)compare_start ); - if( sgi_get_sysid( Index[0] ) == ENTIRE_DISK ) - { - if( ( Index[0] != 10 ) && verbose ) - printf( _("IRIX likes when Partition 11 covers the entire disk.\n") ); - if( ( sgi_get_start_sector( Index[0] ) != 0 ) && verbose ) - printf( _("The entire disk partition should start at block 0,\nnot " - "at diskblock %d.\n"), sgi_get_start_sector(Index[0] ) ); - if(debug) /* I do not understand how some disks fulfil it */ - if( ( sgi_get_num_sectors( Index[0] ) != lastblock ) && verbose ) - printf( _("The entire disk partition is only %d diskblock large,\n" - "but the disk is %d diskblocks long.\n"), - sgi_get_num_sectors( Index[0] ), lastblock ); - lastblock = sgi_get_num_sectors( Index[0] ); - } else - { - if( verbose ) - printf( _("One Partition (#11) should cover the entire disk.\n") ); - if(debug>2) - printf( "sysid=%d\tpartition=%d\n", - sgi_get_sysid( Index[0] ), Index[0]+1 ); - } - for( i=1, start=0; i 0) ? 1 : (lastblock == 0) ? 0 : -1; } - /* We cannot handle several "entire disk" entries. */ - if( sgi_get_sysid( Index[i] ) == ENTIRE_DISK ) continue; - if( start > sgi_get_start_sector( Index[i] ) ) - { - if( verbose ) - printf( _("The Partition %d and %d overlap by %d sectors.\n"), - Index[i-1]+1, Index[i]+1, - start - sgi_get_start_sector( Index[i] ) ); - if( gap > 0 ) gap = -gap; - if( gap == 0 ) gap = -1; - } - if( start < sgi_get_start_sector( Index[i] ) ) - { - if( verbose ) - printf( _("Unused gap of %8d sectors - sectors %8d-%d\n"), - sgi_get_start_sector( Index[i] ) - start, - start, sgi_get_start_sector( Index[i] )-1 ); - gap += sgi_get_start_sector( Index[i] ) - start; - add2freelist( start, sgi_get_start_sector( Index[i] ) ); - } - start = sgi_get_start_sector( Index[i] ) - + sgi_get_num_sectors( Index[i] ); - if(debug>1) - { - if( verbose ) - printf( "%2d:%12d\t%12d\t%12d\n", Index[i], - sgi_get_start_sector(Index[i]), - sgi_get_num_sectors(Index[i]), - sgi_get_sysid(Index[i]) ); + qsort(Index, sortcount, sizeof(Index[0]), (void*)compare_start); + if (sgi_get_sysid(Index[0]) == ENTIRE_DISK) { + if ((Index[0] != 10) && verbose) + printf(_("IRIX likes when Partition 11 covers the entire disk.\n")); + if ((sgi_get_start_sector(Index[0]) != 0) && verbose) + printf(_("The entire disk partition should start " + "at block 0,\n" + "not at diskblock %d.\n"), + sgi_get_start_sector(Index[0])); + if (debug) /* I do not understand how some disks fulfil it */ + if ((sgi_get_num_sectors(Index[0]) != lastblock) && verbose) + printf(_("The entire disk partition is only %d diskblock large,\n" + "but the disk is %d diskblocks long.\n"), + sgi_get_num_sectors(Index[0]), lastblock); + lastblock = sgi_get_num_sectors(Index[0]); + } else { + if (verbose) + printf(_("One Partition (#11) should cover the entire disk.\n")); + if (debug>2) + printf("sysid=%d\tpartition=%d\n", + sgi_get_sysid(Index[0]), Index[0]+1); } - } - if( ( start < lastblock ) ) - { - if( verbose ) - printf( _("Unused gap of %8d sectors - sectors %8d-%d\n"), - lastblock - start, start, lastblock-1 ); - gap += lastblock - start; - add2freelist( start, lastblock ); - } - /* - * Done with arithmetics - * Go for details now - */ - if( verbose ) - { - if( !sgi_get_num_sectors( sgi_get_bootpartition() ) ) - { - printf( _("\nThe boot partition does not exist.\n") ); + for (i=1, start=0; i sgi_get_start_sector(Index[i])) { + if (verbose) + printf(_("The Partition %d and %d overlap by %d sectors.\n"), + Index[i-1]+1, Index[i]+1, + start - sgi_get_start_sector(Index[i])); + if (gap > 0) gap = -gap; + if (gap == 0) gap = -1; + } + if (start < sgi_get_start_sector(Index[i])) { + if (verbose) + printf(_("Unused gap of %8u sectors - sectors %8u-%u\n"), + sgi_get_start_sector(Index[i]) - start, + start, sgi_get_start_sector(Index[i])-1); + gap += sgi_get_start_sector(Index[i]) - start; + add2freelist(start, sgi_get_start_sector(Index[i])); + } + start = sgi_get_start_sector(Index[i]) + + sgi_get_num_sectors(Index[i]); + if (debug > 1) { + if (verbose) + printf("%2d:%12d\t%12d\t%12d\n", Index[i], + sgi_get_start_sector(Index[i]), + sgi_get_num_sectors(Index[i]), + sgi_get_sysid(Index[i])); + } } - if( !sgi_get_num_sectors( sgi_get_swappartition() ) ) - { - printf( _("\nThe swap partition does not exist.\n") ); - } else - if( ( sgi_get_sysid( sgi_get_swappartition() ) != SGI_SWAP ) - && ( sgi_get_sysid( sgi_get_swappartition() ) != LINUX_SWAP ) ) - { - printf( _("\nThe swap partition has no swap type.\n") ); + if (start < lastblock) { + if (verbose) + printf(_("Unused gap of %8u sectors - sectors %8u-%u\n"), + lastblock - start, start, lastblock-1); + gap += lastblock - start; + add2freelist(start, lastblock); } - if( sgi_check_bootfile( "/unix" ) ) - { - printf( _("\tYou have chosen an unusual boot file name.\n") ); + /* + * Done with arithmetics + * Go for details now + */ + if (verbose) { + if (!sgi_get_num_sectors(sgi_get_bootpartition())) { + printf(_("\nThe boot partition does not exist.\n")); + } + if (!sgi_get_num_sectors(sgi_get_swappartition())) { + printf(_("\nThe swap partition does not exist.\n")); + } else { + if ((sgi_get_sysid(sgi_get_swappartition()) != SGI_SWAP) + && (sgi_get_sysid(sgi_get_swappartition()) != LINUX_SWAP)) + printf(_("\nThe swap partition has no swap type.\n")); + } + if (sgi_check_bootfile("/unix")) + printf(_("\tYou have chosen an unusual boot file name.\n")); } - } - return gap; + return (gap > 0) ? 1 : (gap == 0) ? 0 : -1; } void -sgi_change_sysid( int i, int sys ) +sgi_change_sysid(int i, int sys) { - if( sgi_get_num_sectors(i) == 0 ) /* caught already before, ... */ - { - printf(_("Sorry You may change the Tag of non-empty partitions.\n")); - return; - } - if( ((sys != ENTIRE_DISK ) && (sys != SGI_VOLHDR)) - && (sgi_get_start_sector(i)<1) ) - { - read_chars( - _("It is highly recommended that the partition at offset 0\n" - "is of type \"SGI volhdr\", the IRIX system will rely on it to\n" - "retrieve from its directory standalone tools like sash and fx.\n" - "Only the \"SGI volume\" entire disk section may violate this.\n" - "Type YES if you are sure about tagging this partition differently.\n")); - if (strcmp (line_ptr, _("YES\n"))) - return; - } - sgilabel->partitions[i].id = SSWAP32(sys); + if (sgi_get_num_sectors(i) == 0) /* caught already before, ... */ { + printf(_("Sorry You may change the Tag of non-empty partitions.\n")); + return; + } + if (((sys != ENTIRE_DISK) && (sys != SGI_VOLHDR)) + && (sgi_get_start_sector(i)<1)) { + read_chars( + _("It is highly recommended that the partition at offset 0\n" + "is of type \"SGI volhdr\", the IRIX system will rely on it to\n" + "retrieve from its directory standalone tools like sash and fx.\n" + "Only the \"SGI volume\" entire disk section may violate this.\n" + "Type YES if you are sure about tagging this partition differently.\n")); + if (strcmp (line_ptr, _("YES\n"))) + return; + } + sgilabel->partitions[i].id = SSWAP32(sys); } /* returns partition index of first entry marked as entire disk */ static int sgi_entire(void) { - int i=0; - for( i=0; i<16; i++ ) - if( sgi_get_sysid(i) == SGI_VOLUME ) - return i; - return -1; + int i; + + for (i=0; i<16; i++) + if (sgi_get_sysid(i) == SGI_VOLUME) + return i; + return -1; } static void -sgi_set_partition( int i, uint start, uint length, int sys ) { - sgilabel->partitions[i].id = - SSWAP32( sys ); - sgilabel->partitions[i].num_sectors = - SSWAP32( length ); - sgilabel->partitions[i].start_sector = - SSWAP32( start ); - set_changed(i); - if( sgi_gaps() < 0 ) /* rebuild freelist */ - printf(_("Do You know, You got a partition overlap on the disk?\n")); +sgi_set_partition(int i, unsigned int start, unsigned int length, int sys) { + sgilabel->partitions[i].id = SSWAP32(sys); + sgilabel->partitions[i].num_sectors = SSWAP32(length); + sgilabel->partitions[i].start_sector = SSWAP32(start); + set_changed(i); + if (sgi_gaps() < 0) /* rebuild freelist */ + printf(_("Do You know, You got a partition overlap on the disk?\n")); } static void sgi_set_entire(void) { - int n; - for( n=10; nsys_ind ) - { - old[i].sysid = get_part_table(i)->sys_ind; - old[i].start = get_start_sect( get_part_table(i) ); - old[i].nsect = get_nr_sects( get_part_table(i) ); - printf( _("Trying to keep parameters of partition %d.\n"), i ); - if( debug ) - printf( _("ID=%02x\tSTART=%d\tLENGTH=%d\n"), - old[i].sysid, old[i].start, old[i].nsect ); - } + struct hd_geometry geometry; + struct { + unsigned int start; + unsigned int nsect; + int sysid; + } old[4]; + int i=0; + long longsectors; /* the number of sectors on the device */ + int res; /* the result from the ioctl */ + int sec_fac; /* the sector factor */ + + sec_fac = sector_size / 512; /* determine the sector factor */ + + fprintf(stderr, + _("Building a new SGI disklabel. Changes will remain in memory only,\n" + "until you decide to write them. After that, of course, the previous\n" + "content will be unrecoverably lost.\n\n")); + + other_endian = (BYTE_ORDER == LITTLE_ENDIAN); + + res = ioctl(fd, BLKGETSIZE, &longsectors); + + if (!ioctl(fd, HDIO_GETGEO, &geometry)) { + heads = geometry.heads; + sectors = geometry.sectors; + if (res == 0) { + /* the get device size ioctl was successful */ + cylinders = longsectors / (heads * sectors); + cylinders /= sec_fac; + } else { + /* otherwise print error and use truncated version */ + cylinders = geometry.cylinders; + fprintf(stderr, + _("Warning: BLKGETSIZE ioctl failed on %s. " + "Using geometry cylinder value of %d.\n" + "This value may be truncated for devices" + " > 33.8 GB.\n"), disk_device, cylinders); + } } - } - memset(MBRbuffer, 0, sizeof(MBRbuffer)); - sgilabel->magic = SSWAP32(SGI_LABEL_MAGIC); - sgilabel->boot_part = SSWAP16(0); - sgilabel->swap_part = SSWAP16(1); - - /* sizeof(sgilabel->boot_file) = 16 > 6 */ - memset(sgilabel->boot_file, 0, 16); - strcpy(sgilabel->boot_file, "/unix"); - - sgilabel->devparam.skew = (0); - sgilabel->devparam.gap1 = (0); - sgilabel->devparam.gap2 = (0); - sgilabel->devparam.sparecyl = (0); - sgilabel->devparam.pcylcount = SSWAP16(geometry.cylinders); - sgilabel->devparam.head_vol0 = SSWAP16(0); - sgilabel->devparam.ntrks = SSWAP16(geometry.heads); - /* tracks/cylinder (heads) */ - sgilabel->devparam.cmd_tag_queue_depth = (0); - sgilabel->devparam.unused0 = (0); - sgilabel->devparam.unused1 = SSWAP16(0); - sgilabel->devparam.nsect = SSWAP16(geometry.sectors); - /* sectors/track */ - sgilabel->devparam.bytes = SSWAP16(512); - sgilabel->devparam.ilfact = SSWAP16(1); - sgilabel->devparam.flags = SSWAP32(TRACK_FWD|\ - IGNORE_ERRORS|RESEEK); - sgilabel->devparam.datarate = SSWAP32(0); - sgilabel->devparam.retries_on_error = SSWAP32(1); - sgilabel->devparam.ms_per_word = SSWAP32(0); - sgilabel->devparam.xylogics_gap1 = SSWAP16(0); - sgilabel->devparam.xylogics_syncdelay = SSWAP16(0); - sgilabel->devparam.xylogics_readdelay = SSWAP16(0); - sgilabel->devparam.xylogics_gap2 = SSWAP16(0); - sgilabel->devparam.xylogics_readgate = SSWAP16(0); - sgilabel->devparam.xylogics_writecont = SSWAP16(0); - memset( &(sgilabel->directory), 0, sizeof(struct volume_directory)*15 ); - memset( &(sgilabel->partitions), 0, sizeof(struct sgi_partition)*16 ); - sgi_label = 1; - partitions = 16; - volumes = 15; - sgi_set_entire(); - sgi_set_volhdr(); - for (i = 0; i < 4; i++) - { - if( old[i].sysid ) - { - sgi_set_partition( i, old[i].start, old[i].nsect, old[i].sysid ); + for (i = 0; i < 4; i++) { + old[i].sysid = 0; + if (valid_part_table_flag(MBRbuffer)) { + if (get_part_table(i)->sys_ind) { + old[i].sysid = get_part_table(i)->sys_ind; + old[i].start = get_start_sect(get_part_table(i)); + old[i].nsect = get_nr_sects(get_part_table(i)); + printf(_("Trying to keep parameters of partition %d.\n"), i); + if (debug) + printf(_("ID=%02x\tSTART=%d\tLENGTH=%d\n"), + old[i].sysid, old[i].start, old[i].nsect); + } + } + } + + memset(MBRbuffer, 0, sizeof(MBRbuffer)); + sgilabel->magic = SSWAP32(SGI_LABEL_MAGIC); + sgilabel->boot_part = SSWAP16(0); + sgilabel->swap_part = SSWAP16(1); + + /* sizeof(sgilabel->boot_file) = 16 > 6 */ + memset(sgilabel->boot_file, 0, 16); + strcpy(sgilabel->boot_file, "/unix"); + + sgilabel->devparam.skew = (0); + sgilabel->devparam.gap1 = (0); + sgilabel->devparam.gap2 = (0); + sgilabel->devparam.sparecyl = (0); + sgilabel->devparam.pcylcount = SSWAP16(geometry.cylinders); + sgilabel->devparam.head_vol0 = SSWAP16(0); + sgilabel->devparam.ntrks = SSWAP16(geometry.heads); + /* tracks/cylinder (heads) */ + sgilabel->devparam.cmd_tag_queue_depth = (0); + sgilabel->devparam.unused0 = (0); + sgilabel->devparam.unused1 = SSWAP16(0); + sgilabel->devparam.nsect = SSWAP16(geometry.sectors); + /* sectors/track */ + sgilabel->devparam.bytes = SSWAP16(512); + sgilabel->devparam.ilfact = SSWAP16(1); + sgilabel->devparam.flags = SSWAP32(TRACK_FWD|\ + IGNORE_ERRORS|RESEEK); + sgilabel->devparam.datarate = SSWAP32(0); + sgilabel->devparam.retries_on_error = SSWAP32(1); + sgilabel->devparam.ms_per_word = SSWAP32(0); + sgilabel->devparam.xylogics_gap1 = SSWAP16(0); + sgilabel->devparam.xylogics_syncdelay = SSWAP16(0); + sgilabel->devparam.xylogics_readdelay = SSWAP16(0); + sgilabel->devparam.xylogics_gap2 = SSWAP16(0); + sgilabel->devparam.xylogics_readgate = SSWAP16(0); + sgilabel->devparam.xylogics_writecont = SSWAP16(0); + memset(&(sgilabel->directory), 0, sizeof(struct volume_directory)*15); + memset(&(sgilabel->partitions), 0, sizeof(struct sgi_partition)*16); + sgi_label = 1; + partitions = 16; + volumes = 15; + sgi_set_entire(); + sgi_set_volhdr(); + for (i = 0; i < 4; i++) { + if (old[i].sysid) { + sgi_set_partition(i, old[i].start, old[i].nsect, old[i].sysid); + } } - } } void sgi_set_ilfact(void) { - /* do nothing in the beginning */ + /* do nothing in the beginning */ } void sgi_set_rspeed(void) { - /* do nothing in the beginning */ + /* do nothing in the beginning */ } void sgi_set_pcylcount(void) { - /* do nothing in the beginning */ + /* do nothing in the beginning */ } void sgi_set_xcyl(void) { - /* do nothing in the beginning */ + /* do nothing in the beginning */ } void sgi_set_ncyl(void) { - /* do nothing in the beginning */ + /* do nothing in the beginning */ } /* _____________________________________________________________ */ -sgiinfo* +sgiinfo * fill_sgiinfo(void) { - sgiinfo*info=calloc( 1, sizeof(sgiinfo) ); - info->magic=SSWAP32(SGI_INFO_MAGIC); - info->b1=SSWAP32(-1); - info->b2=SSWAP16(-1); - info->b3=SSWAP16(1); - /* You may want to replace this string !!!!!!! */ - strcpy( info->scsi_string, "IBM OEM 0662S12 3 30" ); - strcpy( info->serial, "0000" ); - info->check1816 = SSWAP16(18*256 +16 ); - strcpy( info->installer, "Sfx version 5.3, Oct 18, 1994" ); - return info; + sgiinfo*info=calloc(1, sizeof(sgiinfo)); + info->magic=SSWAP32(SGI_INFO_MAGIC); + info->b1=SSWAP32(-1); + info->b2=SSWAP16(-1); + info->b3=SSWAP16(1); + /* You may want to replace this string !!!!!!! */ + strcpy(info->scsi_string, "IBM OEM 0662S12 3 30"); + strcpy(info->serial, "0000"); + info->check1816 = SSWAP16(18*256 +16); + strcpy(info->installer, "Sfx version 5.3, Oct 18, 1994"); + return info; } diff --git a/fdisk/fdisksgilabel.h b/fdisk/fdisksgilabel.h index cdad01a9..a230196b 100644 --- a/fdisk/fdisksgilabel.h +++ b/fdisk/fdisksgilabel.h @@ -104,7 +104,7 @@ typedef struct { #define sgilabel ((sgi_partition *)MBRbuffer) #define sgiparam (sgilabel->devparam) extern char MBRbuffer[MAX_SECTOR_SIZE]; -extern uint heads, sectors, cylinders; +extern unsigned int heads, sectors, cylinders, sector_size; extern int show_begin; extern int sgi_label; extern char *partition_type(unsigned char type); @@ -118,8 +118,8 @@ extern void sgi_nolabel( void ); extern int check_sgi_label( void ); extern void sgi_list_table( int xtra ); extern void sgi_change_sysid( int i, int sys ); -extern int sgi_get_start_sector( int i ); -extern int sgi_get_num_sectors( int i ); +extern unsigned int sgi_get_start_sector( int i ); +extern unsigned int sgi_get_num_sectors( int i ); extern int sgi_get_sysid( int i ); extern void sgi_delete_partition( int i ); extern void sgi_add_partition( int n, int sys ); diff --git a/fdisk/fdisksunlabel.c b/fdisk/fdisksunlabel.c index 8d6a2041..edfe4b9b 100644 --- a/fdisk/fdisksunlabel.c +++ b/fdisk/fdisksunlabel.c @@ -11,7 +11,7 @@ */ #include /* stderr */ -#include /* uint */ +#include /* qsort */ #include /* strstr */ #include /* write */ #include /* ioctl */ @@ -99,7 +99,7 @@ void guess_device_type(int fd) { } static void -set_sun_partition(int i, uint start, uint stop, int sysid) { +set_sun_partition(int i, unsigned int start, unsigned int stop, int sysid) { sunlabel->infos[i].id = sysid; sunlabel->partitions[i].start_cylinder = SSWAP32(start / (heads * sectors)); @@ -296,11 +296,7 @@ void create_sunlabel(void) } } if (!p || floppy) { -#ifdef HDIO_REQ - if (!ioctl(fd, HDIO_REQ, &geometry)) { -#else if (!ioctl(fd, HDIO_GETGEO, &geometry)) { -#endif heads = geometry.heads; sectors = geometry.sectors; cylinders = geometry.cylinders; @@ -396,7 +392,7 @@ toggle_sunflags(int i, unsigned char mask) { } static void -fetch_sun(uint *starts, uint *lens, uint *start, uint *stop) { +fetch_sun(unsigned int *starts, unsigned int *lens, unsigned int *start, unsigned int *stop) { int i, continuous = 1; *start = 0; *stop = cylinders * heads * sectors; for (i = 0; i < partitions; i++) { @@ -422,7 +418,7 @@ fetch_sun(uint *starts, uint *lens, uint *start, uint *stop) { } } -static uint *verify_sun_starts; +static unsigned int *verify_sun_starts; static int verify_sun_cmp(int *a, int *b) { @@ -434,7 +430,7 @@ verify_sun_cmp(int *a, int *b) { void verify_sun(void) { - uint starts[8], lens[8], start, stop; + unsigned int starts[8], lens[8], start, stop; int i,j,k,starto,endo; int array[8]; @@ -496,8 +492,8 @@ verify_sun(void) { void add_sun_partition(int n, int sys) { - uint start, stop, stop2; - uint starts[8], lens[8]; + unsigned int start, stop, stop2; + unsigned int starts[8], lens[8]; int whole_disk = 0; char mesg[256]; @@ -606,15 +602,16 @@ and is of type `Whole disk'\n"); void sun_delete_partition(int i) { + unsigned int nsec; + if (i == 2 && sunlabel->infos[i].id == WHOLE_DISK && !sunlabel->partitions[i].start_cylinder && - SSWAP32(sunlabel->partitions[i].num_sectors) + (nsec = SSWAP32(sunlabel->partitions[i].num_sectors)) == heads * sectors * cylinders) printf(_("If you want to maintain SunOS/Solaris compatibility, " "consider leaving this\n" "partition as Whole disk (5), starting at 0, with %u " - "sectors\n"), - (uint) SSWAP32(sunlabel->partitions[i].num_sectors)); + "sectors\n"), nsec); sunlabel->infos[i].id = 0; sunlabel->partitions[i].num_sectors = 0; } diff --git a/fdisk/fdisksunlabel.h b/fdisk/fdisksunlabel.h index 647a2cec..81bd72c0 100644 --- a/fdisk/fdisksunlabel.h +++ b/fdisk/fdisksunlabel.h @@ -38,7 +38,7 @@ typedef struct { /* fdisk.c */ extern char MBRbuffer[MAX_SECTOR_SIZE]; -extern uint heads, sectors, cylinders; +extern unsigned int heads, sectors, cylinders; extern int show_begin; extern int sun_label; extern char *partition_type(unsigned char type); diff --git a/fdisk/i386_sys_types.c b/fdisk/i386_sys_types.c index 5ecf2cc5..740d2a73 100644 --- a/fdisk/i386_sys_types.c +++ b/fdisk/i386_sys_types.c @@ -14,10 +14,10 @@ struct systypes i386_sys_types[] = { {0x08, N_("AIX")}, /* AIX boot (AIX -- PS/2 port) or SplitDrive */ {0x09, N_("AIX bootable")}, /* AIX data or Coherent */ {0x0a, N_("OS/2 Boot Manager")},/* OS/2 Boot Manager */ - {0x0b, N_("Win95 FAT32")}, - {0x0c, N_("Win95 FAT32 (LBA)")},/* LBA really is `Extended Int 13h' */ - {0x0e, N_("Win95 FAT16 (LBA)")}, - {0x0f, N_("Win95 Ext'd (LBA)")}, + {0x0b, N_("W95 FAT32")}, + {0x0c, N_("W95 FAT32 (LBA)")},/* LBA really is `Extended Int 13h' */ + {0x0e, N_("W95 FAT16 (LBA)")}, + {0x0f, N_("W95 Ext'd (LBA)")}, {0x10, N_("OPUS")}, {0x11, N_("Hidden FAT12")}, {0x12, N_("Compaq diagnostics")}, @@ -25,9 +25,9 @@ struct systypes i386_sys_types[] = { {0x16, N_("Hidden FAT16")}, {0x17, N_("Hidden HPFS/NTFS")}, {0x18, N_("AST SmartSleep")}, - {0x1b, N_("Hidden Win95 FAT32")}, - {0x1c, N_("Hidden Win95 FAT32 (LBA)")}, - {0x1e, N_("Hidden Win95 FAT16 (LBA)")}, + {0x1b, N_("Hidden W95 FAT32")}, + {0x1c, N_("Hidden W95 FAT32 (LBA)")}, + {0x1e, N_("Hidden W95 FAT16 (LBA)")}, {0x24, N_("NEC DOS")}, {0x39, N_("Plan 9")}, {0x3c, N_("PartitionMagic recovery")}, diff --git a/fdisk/llseek.c b/fdisk/llseek.c index 953f2bc3..e2e6427c 100644 --- a/fdisk/llseek.c +++ b/fdisk/llseek.c @@ -10,13 +10,7 @@ #include #include -#if defined(__GNUC__) || defined(HAS_LONG_LONG) -typedef long long ext2_loff_t; -#else -typedef long ext2_loff_t; -#endif - -extern ext2_loff_t ext2_llseek (unsigned int, ext2_loff_t, unsigned int); +extern long long ext2_llseek (unsigned int, long long, unsigned int); #ifdef __linux__ @@ -33,19 +27,19 @@ extern ext2_loff_t ext2_llseek (unsigned int, ext2_loff_t, unsigned int); #include /* for __NR__llseek */ static int _llseek (unsigned int, unsigned long, - unsigned long, ext2_loff_t *, unsigned int); + unsigned long, long long *, unsigned int); #ifdef __NR__llseek static _syscall5(int,_llseek,unsigned int,fd,unsigned long,offset_high, - unsigned long, offset_low,ext2_loff_t *,result, + unsigned long, offset_low,long long *,result, unsigned int, origin) #else /* no __NR__llseek on compilation machine - might give it explicitly */ static int _llseek (unsigned int fd, unsigned long oh, - unsigned long ol, ext2_loff_t *result, + unsigned long ol, long long *result, unsigned int origin) { errno = ENOSYS; return -1; @@ -53,26 +47,26 @@ static int _llseek (unsigned int fd, unsigned long oh, #endif -static ext2_loff_t my_llseek (unsigned int fd, ext2_loff_t offset, +static long long my_llseek (unsigned int fd, long long offset, unsigned int origin) { - ext2_loff_t result; + long long result; int retval; retval = _llseek (fd, ((unsigned long long) offset) >> 32, ((unsigned long long) offset) & 0xffffffff, &result, origin); - return (retval == -1 ? (ext2_loff_t) retval : result); + return (retval == -1 ? (long long) retval : result); } #endif /* __alpha__ */ #endif /* HAVE_LLSEEK */ -ext2_loff_t ext2_llseek (unsigned int fd, ext2_loff_t offset, +long long ext2_llseek (unsigned int fd, long long offset, unsigned int origin) { - ext2_loff_t result; + long long result; static int do_compat = 0; if (!do_compat) { @@ -90,8 +84,8 @@ ext2_loff_t ext2_llseek (unsigned int fd, ext2_loff_t offset, */ } - if ((sizeof(off_t) >= sizeof(ext2_loff_t)) || - (offset < ((ext2_loff_t) 1 << ((sizeof(off_t)*8) -1)))) + if ((sizeof(off_t) >= sizeof(long long)) || + (offset < ((long long) 1 << ((sizeof(off_t)*8) -1)))) return lseek(fd, (off_t) offset, origin); errno = EINVAL; @@ -100,11 +94,11 @@ ext2_loff_t ext2_llseek (unsigned int fd, ext2_loff_t offset, #else /* !linux */ -ext2_loff_t ext2_llseek (unsigned int fd, ext2_loff_t offset, +long long ext2_llseek (unsigned int fd, long long offset, unsigned int origin) { - if ((sizeof(off_t) < sizeof(ext2_loff_t)) && - (offset >= ((ext2_loff_t) 1 << ((sizeof(off_t)*8) -1)))) { + if ((sizeof(off_t) < sizeof(long long)) && + (offset >= ((long long) 1 << ((sizeof(off_t)*8) -1)))) { errno = EINVAL; return -1; } diff --git a/fdisk/sfdisk.8 b/fdisk/sfdisk.8 index 4947e2c4..8fe8448d 100644 --- a/fdisk/sfdisk.8 +++ b/fdisk/sfdisk.8 @@ -5,7 +5,7 @@ .\" -- May be distributed under the GNU General Public License .\" The `DRDOS Warning' was taken from a net post by Stephen Tweedie. .\" -.TH SFDISK 8 "1 September 1995" "Linux 1.3.23" "Linux Programmer's Manual" +.TH SFDISK 8 "1 September 1995" "Linux" "Linux Programmer's Manual" .SH NAME sfdisk \- Partition table manipulator for Linux .SH SYNOPSIS @@ -158,7 +158,7 @@ and exit immediately. .BR \-? " or " \-\-help Print a usage message and exit immediately. .TP -.BR \-T " or " \-\-list-types +.BR \-T " or " \-\-list\-types Print the recognized types (system Id's). .TP .BR \-s " or " \-\-show\-size @@ -207,7 +207,7 @@ like `/my_equipment/disks/2/5' or so). .BI \-A "number" Make the indicated partition(s) active, and all others inactive. .TP -.BI \-c " or " \-\-id " number [Id]" +.BI \-c "\fR or " \-\-id " number [Id]" If no Id argument given: print the partition Id of the indicated partition. If an Id argument is present: change the type (Id) of the indicated partition to the given value. @@ -265,7 +265,7 @@ Certain Disk Managers and boot loaders (such as OSBS, but not LILO or the OS/2 Boot Manager) also live in this empty space, so maybe you want this option if you use one. .TP -.BR \-E " or " \-\-DOS-extended +.BR \-E " or " \-\-DOS\-extended Take the starting sector numbers of "inner" extended partitions to be relative to the starting cylinder boundary of the outer one, (like some versions of DOS do) rather than to the starting sector @@ -431,6 +431,29 @@ EOF .RE will partition /dev/hdc just as indicated above. +The command +.RS +.nf +.if t .ft CW +sfdisk /dev/hdb << EOF +,3,L +,60,L +,19,S +,,E +,130,L +,130,L +,130,L +,,L +EOF +.if t .ft R +.fi +.RE +will partition /dev/hdb into two Linux partitions of 3 and 60 +cylinders, a swap space of 19 cylinders, and an extended partition +covering the rest. Inside the extended partition there are four +Linux logical partitions, three of 130 cylinders and one +covering the rest. + With the \-x option, the number of input lines must be a multiple of 4: you have to list the two empty partitions that you never want using two blank lines. Without the \-x option, you give one line @@ -482,7 +505,7 @@ start of the next partition. Mind you, as long as I keep a little free disk space after any DRDOS partition, I don't have any other problems with the two coexisting on the one drive.' -A. V. Le Blanc writes in README.esfdisk: `Dr. DOS 5.0 and 6.0 has been +A. V. Le Blanc writes in README.efdisk: `Dr. DOS 5.0 and 6.0 has been reported to have problems cooperating with Linux, and with this version of efdisk in particular. This efdisk sets the system type to hexadecimal 81. Dr. DOS seems to confuse diff --git a/fdisk/sfdisk.c b/fdisk/sfdisk.c index a57446c7..6500131d 100644 --- a/fdisk/sfdisk.c +++ b/fdisk/sfdisk.c @@ -132,8 +132,8 @@ fatal(char *s, ...) { */ #if !defined (__alpha__) && !defined (__ia64__) && !defined (__x86_64__) && !defined (__s390x__) static -_syscall5(int, _llseek, uint, fd, ulong, hi, ulong, lo, - loff_t *, res, uint, wh); +_syscall5(int, _llseek, unsigned int, fd, ulong, hi, ulong, lo, + loff_t *, res, unsigned int, wh); #endif static int @@ -154,8 +154,8 @@ sseek(char *dev, unsigned int fd, unsigned long s) { if (in != out) { error(_("seek error: wanted 0x%08x%08x, got 0x%08x%08x\n"), - (uint)(in>>32), (uint)(in & 0xffffffff), - (uint)(out>>32), (uint)(out & 0xffffffff)); + (unsigned int)(in>>32), (unsigned int)(in & 0xffffffff), + (unsigned int)(out>>32), (unsigned int)(out & 0xffffffff)); return 0; } return 1; @@ -882,9 +882,9 @@ out_partition_header(char *dev, int format, struct geometry G) { printf(_(" Device Boot Start End #blocks Id System\n")); break; case F_MEGABYTE: - printf(_("Units = megabytes of 1048576 bytes, blocks of 1024 bytes" + printf(_("Units = mebibytes of 1048576 bytes, blocks of 1024 bytes" ", counting from %d\n\n"), increment); - printf(_(" Device Boot Start End MB #blocks Id System\n")); + printf(_(" Device Boot Start End MiB #blocks Id System\n")); break; } } @@ -1269,7 +1269,7 @@ partitions_ok(struct disk_desc *z) { b = p->p.begin_chs; aa = chs_to_longchs(a); bb = chs_to_longchs(b); - if (!chs_ok(b, PNO(p), "start")) + if (!chs_ok(b, PNO(p), _("start"))) return 0; if(a.s && !is_equal_chs(a, b)) warn(_("partition %s: start: (c,h,s) expected (%ld,%ld,%ld) found (%ld,%ld,%ld)\n"), @@ -1278,7 +1278,7 @@ partitions_ok(struct disk_desc *z) { b = p->p.end_chs; aa = chs_to_longchs(a); bb = chs_to_longchs(b); - if (!chs_ok(b, PNO(p), "end")) + if (!chs_ok(b, PNO(p), _("end"))) return 0; if(a.s && !is_equal_chs(a, b)) warn(_("partition %s: end: (c,h,s) expected (%ld,%ld,%ld) found (%ld,%ld,%ld)\n"), @@ -1568,9 +1568,11 @@ write_partitions(char *dev, int fd, struct disk_desc *z) { s = get_sector(dev, fd, p->sector); if (!s) return 0; s->to_be_written = 1; - copy_from_part(&(p->p), s->data + p->offset); - s->data[510] = 0x55; - s->data[511] = 0xaa; + if (p->ptype == DOS_TYPE) { + copy_from_part(&(p->p), s->data + p->offset); + s->data[510] = 0x55; + s->data[511] = 0xaa; + } } if (save_sector_file) { if (!save_sectors(dev, fd)) { @@ -2719,7 +2721,8 @@ set_active (struct disk_desc *z, char *pnam) { int pno; pno = asc_to_index(pnam, z); - z->partitions[pno].p.bootable = 0x80; + if (z->partitions[pno].ptype == DOS_TYPE) + z->partitions[pno].p.bootable = 0x80; } static void @@ -2755,7 +2758,8 @@ do_activate (char **av, int ac, char *arg) { } else { /* clear `active byte' everywhere */ for (pno=0; pno < z->partno; pno++) - z->partitions[pno].p.bootable = 0; + if (z->partitions[pno].ptype == DOS_TYPE) + z->partitions[pno].p.bootable = 0; /* then set where desired */ if (ac == 1) diff --git a/getopt-1.1.2/COPYING b/getopt/COPYING similarity index 100% rename from getopt-1.1.2/COPYING rename to getopt/COPYING diff --git a/getopt-1.1.2/Changelog b/getopt/Changelog similarity index 67% rename from getopt-1.1.2/Changelog rename to getopt/Changelog index 339c5bb1..f37fa66a 100644 --- a/getopt-1.1.2/Changelog +++ b/getopt/Changelog @@ -1,5 +1,15 @@ +20030123: Bumped up version number to 1.1.3 +20030123: Changed WITH_GETTEXT option to WITHOUT_GETTEXT +20030123: Renamed example programs to have the string getopt- prepended +20030123: Manpage: all minus signs are now escaped +20030123: Sync with util-linux (2.11y) +20010329: Bumped up version number to 1.1.2 +20010329: Sync with util-linux +20010311: Bumped up version number to 1.1.1 +20010311: Fixed stupid compilation error if NLS not selected +20000630: Bumped up version number to 1.1.0 20000630: Ported the Native Language Support patches from util-linux - They are written by Arkadiusz Mi¶kiewicz + They are written by Arkadiusz Mi¶kiewicz 20000627: Bumped up version number to 1.0.6 20000627: A few manpage tweaks 20000616: Introduced DESTDIR and directory creation in the Makefile. diff --git a/getopt-1.1.2/Makefile b/getopt/Makefile similarity index 90% rename from getopt-1.1.2/Makefile rename to getopt/Makefile index 6b50f849..a8a8e9d6 100644 --- a/getopt-1.1.2/Makefile +++ b/getopt/Makefile @@ -50,4 +50,5 @@ install: getopt $(INSTALLDIR) $(USRBINDIR) $(MAN1DIR) $(GETOPTDIR) $(INSTALLBIN) getopt $(USRBINDIR) $(INSTALLMAN) getopt.1 $(MAN1DIR) - $(INSTALLBIN) parse.bash parse.tcsh test.bash test.tcsh $(GETOPTDIR) + $(INSTALLBIN) getopt-parse.bash getopt-parse.tcsh \ + getopt-test.bash getopt-test.tcsh $(GETOPTDIR) diff --git a/getopt-1.1.2/README b/getopt/README similarity index 100% rename from getopt-1.1.2/README rename to getopt/README diff --git a/getopt-1.1.2/TODO b/getopt/TODO similarity index 86% rename from getopt-1.1.2/TODO rename to getopt/TODO index 70f2ea9c..94d975db 100644 --- a/getopt-1.1.2/TODO +++ b/getopt/TODO @@ -4,3 +4,5 @@ already, depending on quoting conventions). (zsh seems OK). Perhaps a nice configure script? Add a `test' target in Makefile. + +Resync po-files with util-linux diff --git a/getopt-1.1.2/getopt-1.1.2.lsm b/getopt/getopt-1.1.3.lsm similarity index 64% rename from getopt-1.1.2/getopt-1.1.2.lsm rename to getopt/getopt-1.1.3.lsm index 95be2591..5849700d 100644 --- a/getopt-1.1.2/getopt-1.1.2.lsm +++ b/getopt/getopt-1.1.3.lsm @@ -1,7 +1,7 @@ Begin3 Title: Getopt -Version: 1.1.2 -Entered-date: 29MAR01 +Version: 1.1.3 +Entered-date: 23JAN02 Description: An improved implementation of getopt(1), a program to parse options within a shell script. Fully compatible with other getopt(1) implementations, but with many additions like @@ -9,11 +9,8 @@ Description: An improved implementation of getopt(1), a program to parse Keywords: getopt script parse bash tcsh Author: frodol@dds.nl (Frodo Looijaard) Primary-site: http://huizen.dds.nl/~frodol - 28kB getopt-1.1.2.tar.gz - 689 getopt-1.1.2.lsm -Alternate-site: sunsite.unc.edu /pub/Linux/utils/shell - 28kB getopt-1.1.2.tar.gz - 689 getopt-1.1.2.lsm + 28kB getopt-1.1.3.tar.gz + 689 getopt-1.1.3.lsm Copying-policy: GPL End diff --git a/getopt-1.1.2/parse.bash b/getopt/getopt-parse.bash old mode 100644 new mode 100755 similarity index 100% rename from getopt-1.1.2/parse.bash rename to getopt/getopt-parse.bash diff --git a/getopt-1.1.2/parse.tcsh b/getopt/getopt-parse.tcsh old mode 100644 new mode 100755 similarity index 100% rename from getopt-1.1.2/parse.tcsh rename to getopt/getopt-parse.tcsh diff --git a/getopt-1.1.2/test.bash b/getopt/getopt-test.bash old mode 100644 new mode 100755 similarity index 100% rename from getopt-1.1.2/test.bash rename to getopt/getopt-test.bash diff --git a/getopt-1.1.2/test.tcsh b/getopt/getopt-test.tcsh old mode 100644 new mode 100755 similarity index 100% rename from getopt-1.1.2/test.tcsh rename to getopt/getopt-test.tcsh diff --git a/getopt-1.1.2/getopt.1 b/getopt/getopt.1 similarity index 81% rename from getopt-1.1.2/getopt.1 rename to getopt/getopt.1 index 29e4e1d7..202884b1 100644 --- a/getopt-1.1.2/getopt.1 +++ b/getopt/getopt.1 @@ -4,9 +4,9 @@ getopt \- parse command options (enhanced) .SH SYNOPSIS .BR getopt " optstring parameters" -.BR getopt " [options] [" -- "] optstring parameters" +.BR getopt " [options] [" \-\- "] optstring parameters" -.BR getopt " [options] " -o | --options " optstring [options] [" -- "] parameters" +.BR getopt " [options] " \-o | \-\-options " optstring [options] [" \-\- "] parameters" .SH DESCRIPTION .B getopt is used to break up @@ -24,7 +24,7 @@ is called with can be divided into two parts: options which modify the way getopt will parse .RI ( options and -.I -o|--options optstring +.I \-o|\-\-options optstring in the .BR SYNOPSIS), and the parameters which are to be @@ -32,13 +32,13 @@ parsed .RI ( parameters in the .BR SYNOPSIS). -The second part will start at the first non-option parameter +The second part will start at the first non\-option parameter that is not an option argument, or after the first occurence of -.RB ` -- '. +.RB ` \-\- '. If no -.RB ` -o ' +.RB ` \-o ' or -.RB ` --options ' +.RB ` \-\-options ' option is found in the first part, the first parameter of the second part is used as the short options string. @@ -46,7 +46,7 @@ If the environment variable .B GETOPT_COMPATIBLE is set, or if its first parameter is not an option (does not start with a -.RB ` - ', +.RB ` \- ', this is the first format in the .BR SYNOPSIS), .B getopt @@ -59,8 +59,8 @@ for more information). Traditional implementations of .BR getopt (1) -are unable to cope with whitespace and other (shell-specific) special characters -in arguments and non-option parameters. To solve this problem, this +are unable to cope with whitespace and other (shell\-specific) special characters +in arguments and non\-option parameters. To solve this problem, this implementation can generate quoted output which must once again be interpreted by the shell (usually by using the @@ -74,16 +74,16 @@ or third format in the To determine whether this enhanced version of .BR getopt (1) is installed, a special test option -.RB ( -T ) +.RB ( \-T ) can be used. .SH OPTIONS -.IP "-a, --alternative" +.IP "\-a, \-\-alternative" Allow long options to start with a single -.RB ` - '. -.IP "-h, --help" +.RB ` \- '. +.IP "\-h, \-\-help" Output a small usage guide and exit succesfully. No other output is generated. -.IP "-l, --longoptions longopts" -The long (multi-character) options to be recognized. +.IP "\-l, \-\-longoptions longopts" +The long (multi\-character) options to be recognized. More than one option name may be specified at once, by separating the names with commas. This option may be given more than once, the @@ -93,19 +93,19 @@ Each long option name in .I longopts may be followed by one colon to indicate it has a required argument,and by two colons to indicate it has an optional argument. -.IP "-n, --name progname" +.IP "\-n, \-\-name progname" The name that will be used by the .BR getopt (3) routines when it reports errors. Note that errors of .BR getopt (1) are still reported as coming from getopt. -.IP "-o, --options shortopts" -The short (one-character) options to be recognized. If this options is not +.IP "\-o, \-\-options shortopts" +The short (one\-character) options to be recognized. If this option is not found, the first parameter of .B getopt that does not start with a -.RB ` - ' +.RB ` \- ' (and is not an option argument) is used as the short options string. Each short option character in @@ -115,20 +115,20 @@ and by two colons to indicate it has an optional argument. The first character of shortopts may be .RB ` + ' or -.RB ` - ' +.RB ` \- ' to influence the way options are parsed and output is generated (see section .B SCANNING MODES for details). -.IP "-q, --quiet" +.IP "\-q, \-\-quiet" Disable error reporting by getopt(3). -.IP "-Q, --quiet-output" +.IP "\-Q, \-\-quiet\-output" Do not generate normal output. Errors are still reported by .BR getopt (3), unless you also use -.IR -q . -.IP "-s, --shell shell" -Set quoting conventions to those of shell. If no -s argument is found, +.IR \-q . +.IP "\-s, \-\-shell shell" +Set quoting conventions to those of shell. If no \-s argument is found, the .SM BASH conventions are used. Valid arguments are currently @@ -137,12 +137,12 @@ conventions are used. Valid arguments are currently .RB ` csh ', and .RB ` tcsh '. -.IP "-u, --unquoted" -Do not quote the output. Note that whitespace and special (shell-dependent) +.IP "\-u, \-\-unquoted" +Do not quote the output. Note that whitespace and special (shell\-dependent) characters can cause havoc in this mode (like they do with other .BR getopt (1) implementations). -.IP "-T --test" +.IP "\-T \-\-test" Test if your .BR getopt (1) is this enhanced version or an old version. This generates no output, @@ -152,9 +152,9 @@ and this version if the environment variable .B GETOPT_COMPATIBLE is set, will return -.RB ` -- ' +.RB ` \-\- ' and error status 0. -.IP "-V, --version" +.IP "\-V, \-\-version" Output version information and exit succesfully. No other output is generated. .SH PARSING This section specifies the format of the second part of the parameters of @@ -179,10 +179,10 @@ routines. The parameters are parsed from left to right. Each parameter is classified as a short option, a long option, an argument to an option, -or a non-option parameter. +or a non\-option parameter. A simple short option is a -.RB ` - ' +.RB ` \- ' followed by a short option character. If the option has a required argument, it may be written directly after the option character or as the next parameter (ie. separated by whitespace on the @@ -191,12 +191,12 @@ option has an optional argument, it must be written directly after the option character if present. It is possible to specify several short options after one -.RB ` - ', +.RB ` \- ', as long as all (except possibly the last) do not have required or optional arguments. A long option normally begins with -.RB ` -- ' +.RB ` \-\- ' followed by the long option name. If the option has a required argument, it may be written directly after the long option name, separated by @@ -214,29 +214,29 @@ Long options may be abbreviated, as long as the abbreviation is not ambiguous. Each parameter not starting with a -.RB ` - ', +.RB ` \- ', and not a required argument of -a previous option, is a non-option parameter. Each parameter after +a previous option, is a non\-option parameter. Each parameter after a -.RB ` -- ' -parameter is always interpreted as a non-option parameter. +.RB ` \-\- ' +parameter is always interpreted as a non\-option parameter. If the environment variable .B POSIXLY_CORRECT is set, or if the short option string started with a .RB ` + ', all remaining parameters are interpreted -as non-option parameters as soon as the first non-option parameter is +as non\-option parameters as soon as the first non\-option parameter is found. .SH OUTPUT Output is generated for each element described in the previous section. Output is done in the same order as the elements are specified in the input, except -for non-option parameters. Output can be done in +for non\-option parameters. Output can be done in .I compatible .RI ( unquoted ) mode, or in such way that whitespace and other special characters within -arguments and non-option parameters are preserved (see +arguments and non\-option parameters are preserved (see .BR QUOTING ). When the output is processed in the shell script, it will seem to be composed of distinct elements that can be processed one by one (by using the @@ -247,10 +247,10 @@ or special characters. If there are problems parsing the parameters, for example because a required argument is not found or an option is not recognized, an error will be reported on stderr, there will be no output for the offending -element, and a non-zero error status is returned. +element, and a non\-zero error status is returned. For a short option, a single -.RB ` - ' +.RB ` \- ' and the option character are generated as one parameter. If the option has an argument, the next parameter will be the argument. If the option takes an optional argument, @@ -262,36 +262,36 @@ Note that many other implemetations do not support optional arguments. If several short options were specified after a single -.RB ` - ', +.RB ` \- ', each will be present in the output as a separate parameter. For a long option, -.RB ` -- ' +.RB ` \-\- ' and the full option name are generated as one parameter. This is done regardless whether the option was abbreviated or specified with a single -.RB ` - ' +.RB ` \- ' in the input. Arguments are handled as with short options. -Normally, no non-option parameters output is generated until all options +Normally, no non\-option parameters output is generated until all options and their arguments have been generated. Then -.RB ` -- ' +.RB ` \-\- ' is generated as a -single parameter, and after it the non-option parameters in the order +single parameter, and after it the non\-option parameters in the order they were found, each as a separate parameter. Only if the first character of the short options string was a -.RB ` - ', -non-option parameter output is generated at the place they are found in the +.RB ` \- ', +non\-option parameter output is generated at the place they are found in the input (this is not supported if the first format of the .B SYNOPSIS is used; in that case all preceding occurences of -.RB ` - ' +.RB ` \- ' and .RB ` + ' are ignored). .SH QUOTING In compatible mode, whitespace or 'special' characters in arguments or -non-option parameters are not handled correctly. As the output is +non\-option parameters are not handled correctly. As the output is fed to the shell script, the script does not know how it is supposed to break the output into separate parameters. To circumvent this problem, this implementation offers quoting. The idea is that output @@ -305,11 +305,11 @@ Quoting is not enabled if the environment variable is set, if the first form of the .B SYNOPSIS is used, or if the option -.RB ` -u ' +.RB ` \-u ' is found. Different shells use different quoting conventions. You can use the -.RB ` -s ' +.RB ` \-s ' option to select the shell you are using. The following shells are currently supported: .RB ` sh ', @@ -317,13 +317,13 @@ currently supported: .RB ` csh ' and .RB ` tcsh '. -Actually, only two `flavors' are distinguished: sh-like quoting conventions -and csh-like quoting conventions. Chances are that if you use another shell +Actually, only two `flavors' are distinguished: sh\-like quoting conventions +and csh\-like quoting conventions. Chances are that if you use another shell script language, one of these flavors can still be used. .SH "SCANNING MODES" The first character of the short options string may be a -.RB ` - ' +.RB ` \- ' or a .RB ` + ' to indicate a special scanning mode. If the first calling form @@ -337,20 +337,20 @@ If the first character is .RB ` + ', or if the environment variable .B POSIXLY_CORRECT -is set, parsing stops as soon as the first non-option parameter +is set, parsing stops as soon as the first non\-option parameter (ie. a parameter that does not start with a -.RB ` - ') +.RB ` \- ') is found that is not an option argument. The remaining parameters are all interpreted as -non-option parameters. +non\-option parameters. If the first character is a -.RB ` - ', -non-option parameters are outputed at the place where they are found; in normal +.RB ` \- ', +non\-option parameters are outputed at the place where they are found; in normal operation, they are all collected at the end of output after a -.RB ` -- ' +.RB ` \-\- ' parameter has been generated. Note that this -.RB ` -- ' +.RB ` \-\- ' parameter is still generated, but it will always be the last parameter in this mode. .SH COMPATIBILITY @@ -361,10 +361,10 @@ other versions. Usually you can just replace them with this version without any modifications, and with some advantages. If the first character of the first parameter of getopt is not a -.RB ` - ', +.RB ` \- ', getopt goes into compatibility mode. It will interpret its first parameter as the string of short options, and all other arguments will be parsed. It -will still do parameter shuffling (ie. all non-option parameters are outputed +will still do parameter shuffling (ie. all non\-option parameters are outputed at the end), unless the environment variable .B POSIXLY_CORRECT is set. @@ -379,7 +379,7 @@ offers 100% compatibility for `difficult' programs. Usually, though, neither is needed. In compatibility mode, leading -.RB ` - ' +.RB ` \- ' and .RB ` + ' characters in the short options string are ignored. @@ -395,10 +395,10 @@ returns errors, .B 2 if it does not understand its own parameters, .B 3 -if an internal error occurs like out-of-memory, and +if an internal error occurs like out\-of\-memory, and .B 4 if it is called with -.BR -T . +.BR \-T . .SH EXAMPLES Example scripts for (ba)sh and (t)csh are provided with the .BR getopt (1) @@ -413,9 +413,9 @@ This environment variable is examined by the routines. If it is set, parsing stops as soon as a parameter is found that is not an option or an option argument. All remaining -parameters are also interpreted as non-option parameters, regardless +parameters are also interpreted as non\-option parameters, regardless whether they start with a -.RB ` - '. +.RB ` \- '. .IP GETOPT_COMPATIBLE Forces .B getopt diff --git a/getopt-1.1.2/getopt.c b/getopt/getopt.c similarity index 99% rename from getopt-1.1.2/getopt.c rename to getopt/getopt.c index 95c3b34e..a22332ad 100644 --- a/getopt-1.1.2/getopt.c +++ b/getopt/getopt.c @@ -34,7 +34,7 @@ * No important changes * Version 1.1.0: Tue Jun 30 2000 * Added NLS support (partly written by Arkadiusz Mikiewicz - * ) + * ) */ #include @@ -49,7 +49,7 @@ #include "getopt.h" #endif -#include "../lib/nls.h" +#include "nls.h" /* NON_OPT is the code that is returned when a non-option is found in '+' mode */ @@ -371,9 +371,12 @@ int main(int argc, char *argv[]) int opt; int compatible=0; +#if WITHOUT_GETTEXT +#else setlocale(LC_ALL,""); bindtextdomain(PACKAGE, LOCALEDIR); textdomain(PACKAGE); +#endif init_longopt(); @@ -438,7 +441,7 @@ int main(int argc, char *argv[]) quote=0; break; case 'V': - printf(_("getopt (enhanced) 1.1.2\n")); + printf(_("getopt (enhanced) 1.1.3\n")); exit(0); case '?': case ':': diff --git a/getopt-1.1.2/gnu/getopt.c b/getopt/gnu/getopt.c similarity index 100% rename from getopt-1.1.2/gnu/getopt.c rename to getopt/gnu/getopt.c diff --git a/getopt-1.1.2/gnu/getopt.h b/getopt/gnu/getopt.h similarity index 100% rename from getopt-1.1.2/gnu/getopt.h rename to getopt/gnu/getopt.h diff --git a/getopt-1.1.2/gnu/getopt1.c b/getopt/gnu/getopt1.c similarity index 100% rename from getopt-1.1.2/gnu/getopt1.c rename to getopt/gnu/getopt1.c diff --git a/hwclock/rtc.c b/hwclock/rtc.c index b13a46a8..bc9733b8 100644 --- a/hwclock/rtc.c +++ b/hwclock/rtc.c @@ -332,7 +332,7 @@ static struct clock_ops rtc = { struct clock_ops * probe_for_rtc_clock(){ int rtc_fd = open_rtc(); - if (rtc_fd > 0) { + if (rtc_fd >= 0) { close(rtc_fd); return &rtc; } diff --git a/lib/md5.h b/lib/md5.h index b211ed24..83ec5b09 100644 --- a/lib/md5.h +++ b/lib/md5.h @@ -1,7 +1,7 @@ #ifndef MD5_H #define MD5_H -#if defined (__alpha__) || defined (__ia64__) +#if defined (__alpha__) || defined (__ia64__) || defined (__x86_64__) typedef unsigned int uint32; #else typedef unsigned long uint32; diff --git a/login-utils/login.c b/login-utils/login.c index 8088878a..da9b72fd 100644 --- a/login-utils/login.c +++ b/login-utils/login.c @@ -1252,17 +1252,35 @@ getloginname(void) { } #endif -void -timedout(int sig) { - struct termio ti; - - fprintf(stderr, _("Login timed out after %d seconds\n"), timeout); +/* + * Robert Ambrose writes: + * A couple of my users have a problem with login processes hanging around + * soaking up pts's. What they seem to hung up on is trying to write out the + * message 'Login timed out after %d seconds' when the connection has already + * been dropped. + * What I did was add a second timeout while trying to write the message so + * the process just exits if the second timeout expires. + */ + +static void +timedout2(int sig) { + struct termio ti; - /* reset echo */ - ioctl(0, TCGETA, &ti); - ti.c_lflag |= ECHO; - ioctl(0, TCSETA, &ti); - exit(0); /* %% */ + /* reset echo */ + ioctl(0, TCGETA, &ti); + ti.c_lflag |= ECHO; + ioctl(0, TCSETA, &ti); + exit(0); /* %% */ +} + +static void +timedout(int sig) { + signal(SIGALRM, timedout2); + alarm(10); + fprintf(stderr, _("Login timed out after %d seconds\n"), timeout); + signal(SIGALRM, SIG_IGN); + alarm(0); + timedout2(0); } #ifndef USE_PAM diff --git a/misc-utils/README.script b/misc-utils/README.script deleted file mode 100644 index 83dfcc5d..00000000 --- a/misc-utils/README.script +++ /dev/null @@ -1,7 +0,0 @@ -Here is a working version of the BSD script command which captures -the output of a terminal session in a file. - -If you have libc-4.2 you don't need cfmakeraw.c or paths.h - -Rick Sladkey -jrs@world.std.com diff --git a/misc-utils/script.1 b/misc-utils/script.1 index 6e987732..b8e54377 100644 --- a/misc-utils/script.1 +++ b/misc-utils/script.1 @@ -40,6 +40,7 @@ .Sh SYNOPSIS .Nm script .Op Fl a +.Op Fl c Ar COMMAND .Op Fl f .Op Fl q .Op Fl t @@ -69,6 +70,10 @@ Append the output to or .Pa typescript , retaining the prior contents. +.It Fl c Ar COMMAND +Run the COMMAND rather than an interactive shell. +This makes it easy for a script to capture the output of a program that +behaves differently when its stdout is not a tty. .It Fl f Flush output after each write. This is nice for telecooperation: One person does `mkfifo foo; script -f foo' and another can diff --git a/misc-utils/script.c b/misc-utils/script.c index ec98ea1a..fc913f43 100644 --- a/misc-utils/script.c +++ b/misc-utils/script.c @@ -91,6 +91,7 @@ int l; char line[] = "/dev/ptyXX"; #endif int aflg = 0; +char *cflg = NULL; int fflg = 0; int qflg = 0; int tflg = 0; @@ -135,11 +136,14 @@ main(int argc, char **argv) { } } - while ((ch = getopt(argc, argv, "afqt")) != -1) + while ((ch = getopt(argc, argv, "ac:fqt")) != -1) switch((char)ch) { case 'a': aflg++; break; + case 'c': + cflg = optarg; + break; case 'f': fflg++; break; @@ -284,7 +288,9 @@ dooutput() { void doshell() { - /*** + char *shname; + +#if 0 int t; t = open(_PATH_TTY, O_RDWR); @@ -292,7 +298,8 @@ doshell() { (void) ioctl(t, TIOCNOTTY, (char *)0); (void) close(t); } - ***/ +#endif + getslave(); (void) close(master); (void) fclose(fscript); @@ -300,11 +307,18 @@ doshell() { (void) dup2(slave, 1); (void) dup2(slave, 2); (void) close(slave); -#ifdef __linux__ - execl(shell, strrchr(shell, '/') + 1, "-i", 0); -#else - execl(shell, "sh", "-i", 0); -#endif + + shname = strrchr(shell, '/'); + if (shname) + shname++; + else + shname = shell; + + if (cflg) + execl(shell, shname, "-c", cflg, 0); + else + execl(shell, shname, "-i", 0); + perror(shell); fail(); } diff --git a/mount/Makefile b/mount/Makefile index 5e5ca58a..96434941 100644 --- a/mount/Makefile +++ b/mount/Makefile @@ -72,7 +72,7 @@ mount.o: $(LIB)/setproctitle.h mount.o umount.o getusername.o: getusername.h -mount.o umount.o losetup.o lomount.o: lomount.h loop.h +mount.o umount.o losetup.o lomount.o: lomount.h loop.h my_dev_t.h swapon.o: swap_constants.h swapargs.h @@ -118,12 +118,9 @@ nfsmount.o: nfs_mount4.h swapargs.h: sh swap.configure -loop.h: - sh mk_loop_h - clean: rm -f a.out core *~ *.o swapargs.h $(PROGS) $(MAYBE) - rm -f loop.h nfs_mountversion.h + rm -f nfs_mountversion.h clobber distclean realclean: clean rm -f $(GEN_FILES) diff --git a/mount/bind.c b/mount/bind.c deleted file mode 100644 index 4af72a9c..00000000 --- a/mount/bind.c +++ /dev/null @@ -1,11 +0,0 @@ -#include -#include - -main(int argc, char **argv) { - int ret; - - ret = mount(argv[1], argv[2], "bind", MS_MGC_VAL, NULL); - if (ret) - perror("bind"); - return ret; -} diff --git a/mount/fstab.c b/mount/fstab.c index 408042c1..85a5d2df 100644 --- a/mount/fstab.c +++ b/mount/fstab.c @@ -27,49 +27,49 @@ static int var_mtab_is_a_symlink = 0; static void get_mtab_info(void) { - struct stat mtab_stat; - - if (!have_mtab_info) { - if (lstat(MOUNTED, &mtab_stat)) - var_mtab_does_not_exist = 1; - else if (S_ISLNK(mtab_stat.st_mode)) - var_mtab_is_a_symlink = 1; - have_mtab_info = 1; - } + struct stat mtab_stat; + + if (!have_mtab_info) { + if (lstat(MOUNTED, &mtab_stat)) + var_mtab_does_not_exist = 1; + else if (S_ISLNK(mtab_stat.st_mode)) + var_mtab_is_a_symlink = 1; + have_mtab_info = 1; + } } int mtab_does_not_exist(void) { - get_mtab_info(); - return var_mtab_does_not_exist; + get_mtab_info(); + return var_mtab_does_not_exist; } int mtab_is_a_symlink(void) { - get_mtab_info(); - return var_mtab_is_a_symlink; + get_mtab_info(); + return var_mtab_is_a_symlink; } int mtab_is_writable() { - static int ret = -1; - - /* Should we write to /etc/mtab upon an update? - Probably not if it is a symlink to /proc/mounts, since that - would create a file /proc/mounts in case the proc filesystem - is not mounted. */ - if (mtab_is_a_symlink()) - return 0; - - if (ret == -1) { - int fd = open(MOUNTED, O_RDWR | O_CREAT, 0644); - if (fd >= 0) { - close(fd); - ret = 1; - } else - ret = 0; - } - return ret; + static int ret = -1; + + /* Should we write to /etc/mtab upon an update? + Probably not if it is a symlink to /proc/mounts, since that + would create a file /proc/mounts in case the proc filesystem + is not mounted. */ + if (mtab_is_a_symlink()) + return 0; + + if (ret == -1) { + int fd = open(MOUNTED, O_RDWR | O_CREAT, 0644); + if (fd >= 0) { + close(fd); + ret = 1; + } else + ret = 0; + } + return ret; } /* Contents of mtab and fstab ---------------------------------*/ @@ -82,16 +82,16 @@ static void read_mounttable(void), read_fstab(void); struct mntentchn * mtab_head() { - if (!got_mtab) - read_mounttable(); - return &mounttable; + if (!got_mtab) + read_mounttable(); + return &mounttable; } struct mntentchn * fstab_head() { - if (!got_fstab) - read_fstab(); - return &fstab; + if (!got_fstab) + read_fstab(); + return &fstab; } static void @@ -100,7 +100,7 @@ read_mntentchn(mntFILE *mfp, const char *fnam, struct mntentchn *mc0) { struct mntent *mnt; while ((mnt = my_getmntent (mfp)) != NULL) { - if (!streq (mnt->mnt_type, MNTTYPE_IGNORE)) { + if (!streq(mnt->mnt_type, MNTTYPE_IGNORE)) { mc->nxt = (struct mntentchn *) xmalloc(sizeof(*mc)); mc->nxt->prev = mc; mc = mc->nxt; @@ -125,48 +125,50 @@ read_mntentchn(mntFILE *mfp, const char *fnam, struct mntentchn *mc0) { */ static void read_mounttable() { - mntFILE *mfp; - const char *fnam; - struct mntentchn *mc = &mounttable; - - got_mtab = 1; - mc->nxt = mc->prev = NULL; - - fnam = MOUNTED; - mfp = my_setmntent (fnam, "r"); - if (mfp == NULL || mfp->mntent_fp == NULL) { - int errsv = errno; - fnam = PROC_MOUNTS; - mfp = my_setmntent (fnam, "r"); - if (mfp == NULL || mfp->mntent_fp == NULL) { - error(_("warning: can't open %s: %s"), MOUNTED, strerror (errsv)); - return; - } - if (verbose) - printf (_("mount: could not open %s - using %s instead\n"), - MOUNTED, PROC_MOUNTS); - } - read_mntentchn(mfp, fnam, mc); + mntFILE *mfp; + const char *fnam; + struct mntentchn *mc = &mounttable; + + got_mtab = 1; + mc->nxt = mc->prev = NULL; + + fnam = MOUNTED; + mfp = my_setmntent (fnam, "r"); + if (mfp == NULL || mfp->mntent_fp == NULL) { + int errsv = errno; + fnam = PROC_MOUNTS; + mfp = my_setmntent (fnam, "r"); + if (mfp == NULL || mfp->mntent_fp == NULL) { + error(_("warning: can't open %s: %s"), + MOUNTED, strerror (errsv)); + return; + } + if (verbose) + printf (_("mount: could not open %s - " + "using %s instead\n"), + MOUNTED, PROC_MOUNTS); + } + read_mntentchn(mfp, fnam, mc); } static void read_fstab() { - mntFILE *mfp = NULL; - const char *fnam; - struct mntentchn *mc = &fstab; - - got_fstab = 1; - mc->nxt = mc->prev = NULL; - - fnam = _PATH_FSTAB; - mfp = my_setmntent (fnam, "r"); - if (mfp == NULL || mfp->mntent_fp == NULL) { - int errsv = errno; - error(_("warning: can't open %s: %s"), - _PATH_FSTAB, strerror (errsv)); - return; - } - read_mntentchn(mfp, fnam, mc); + mntFILE *mfp = NULL; + const char *fnam; + struct mntentchn *mc = &fstab; + + got_fstab = 1; + mc->nxt = mc->prev = NULL; + + fnam = _PATH_FSTAB; + mfp = my_setmntent (fnam, "r"); + if (mfp == NULL || mfp->mntent_fp == NULL) { + int errsv = errno; + error(_("warning: can't open %s: %s"), + _PATH_FSTAB, strerror (errsv)); + return; + } + read_mntentchn(mfp, fnam, mc); } @@ -177,30 +179,62 @@ getmntfile (const char *name) { mc0 = mtab_head(); for (mc = mc0->nxt; mc && mc != mc0; mc = mc->nxt) - if (streq (mc->m.mnt_dir, name) || - streq (mc->m.mnt_fsname, name)) + if (streq(mc->m.mnt_dir, name) || + streq(mc->m.mnt_fsname, name)) return mc; return NULL; } /* - * Given the name NAME, and the place MCPREV we found it last time, + * Given the directory name NAME, and the place MCPREV we found it last time, * try to find more occurrences. */ struct mntentchn * -getmntfilesbackward (const char *name, struct mntentchn *mcprev) { +getmntdirbackward (const char *name, struct mntentchn *mcprev) { struct mntentchn *mc, *mc0; mc0 = mtab_head(); if (!mcprev) mcprev = mc0; for (mc = mcprev->prev; mc && mc != mc0; mc = mc->prev) - if (streq (mc->m.mnt_dir, name) || - streq (mc->m.mnt_fsname, name)) + if (streq(mc->m.mnt_dir, name)) return mc; return NULL; } +/* + * Given the device name NAME, and the place MCPREV we found it last time, + * try to find more occurrences. + */ +struct mntentchn * +getmntdevbackward (const char *name, struct mntentchn *mcprev) { + struct mntentchn *mc, *mc0; + + mc0 = mtab_head(); + if (!mcprev) + mcprev = mc0; + for (mc = mcprev->prev; mc && mc != mc0; mc = mc->prev) + if (streq(mc->m.mnt_fsname, name)) + return mc; + return NULL; +} + +/* + * Given the name NAME, check that it occurs precisely once as dir or dev. + */ +int +is_mounted_once(const char *name) { + struct mntentchn *mc, *mc0; + int ct = 0; + + mc0 = mtab_head(); + for (mc = mc0->prev; mc && mc != mc0; mc = mc->prev) + if (streq(mc->m.mnt_dir, name) || + streq(mc->m.mnt_fsname, name)) + ct++; + return (ct == 1); +} + /* Given the name FILE, try to find the option "loop=FILE" in mtab. */ struct mntentchn * getmntoptfile (const char *file) { @@ -251,29 +285,29 @@ getfsspecfile (const char *spec, const char *file) { /* first attempt: names occur precisely as given */ for (mc = mc0->nxt; mc && mc != mc0; mc = mc->nxt) - if (streq (mc->m.mnt_dir, file) && - streq (mc->m.mnt_fsname, spec)) + if (streq(mc->m.mnt_dir, file) && + streq(mc->m.mnt_fsname, spec)) return mc; /* second attempt: names found after symlink resolution */ for (mc = mc0->nxt; mc && mc != mc0; mc = mc->nxt) - if ((streq (mc->m.mnt_dir, file) || - streq (canonicalize(mc->m.mnt_dir), file)) - && (streq (mc->m.mnt_fsname, spec) || - streq (canonicalize(mc->m.mnt_fsname), spec))) + if ((streq(mc->m.mnt_dir, file) || + streq(canonicalize(mc->m.mnt_dir), file)) + && (streq(mc->m.mnt_fsname, spec) || + streq(canonicalize(mc->m.mnt_fsname), spec))) return mc; /* third attempt: names found after LABEL= or UUID= resolution */ for (mc = mc0->nxt; mc && mc != mc0; mc = mc->nxt) { if (!strncmp (mc->m.mnt_fsname, "LABEL=", 6) && - (streq (mc->m.mnt_dir, file) || - streq (canonicalize(mc->m.mnt_dir), file))) { + (streq(mc->m.mnt_dir, file) || + streq(canonicalize(mc->m.mnt_dir), file))) { if (has_label(spec, mc->m.mnt_fsname+6)) return mc; } if (!strncmp (mc->m.mnt_fsname, "UUID=", 5) && - (streq (mc->m.mnt_dir, file) || - streq (canonicalize(mc->m.mnt_dir), file))) { + (streq(mc->m.mnt_dir, file) || + streq(canonicalize(mc->m.mnt_dir), file))) { if (has_uuid(spec, mc->m.mnt_fsname+5)) return mc; } @@ -288,7 +322,7 @@ getfsfile (const char *file) { mc0 = fstab_head(); for (mc = mc0->nxt; mc && mc != mc0; mc = mc->nxt) - if (streq (mc->m.mnt_dir, file)) + if (streq(mc->m.mnt_dir, file)) return mc; return NULL; } @@ -300,7 +334,7 @@ getfsspec (const char *spec) { mc0 = fstab_head(); for (mc = mc0->nxt; mc && mc != mc0; mc = mc->nxt) - if (streq (mc->m.mnt_fsname, spec)) + if (streq(mc->m.mnt_fsname, spec)) return mc; return NULL; } @@ -529,7 +563,7 @@ update_mtab (const char *dir, struct mntent *instead) { /* find last occurrence of dir */ for (mc = mc0->prev; mc && mc != mc0; mc = mc->prev) - if (streq (mc->m.mnt_dir, dir)) + if (streq(mc->m.mnt_dir, dir)) break; if (mc && mc != mc0) { if (instead == NULL) { diff --git a/mount/fstab.h b/mount/fstab.h index 820f418a..b55b6b5b 100644 --- a/mount/fstab.h +++ b/mount/fstab.h @@ -12,6 +12,7 @@ int mtab_is_writable(void); int mtab_does_not_exist(void); int mtab_is_a_symlink(void); +int is_mounted_once(const char *name); struct mntentchn { struct mntentchn *nxt, *prev; @@ -21,7 +22,8 @@ struct mntentchn { struct mntentchn *mtab_head (void); struct mntentchn *getmntfile (const char *name); struct mntentchn *getmntoptfile (const char *file); -struct mntentchn *getmntfilesbackward (const char *file, struct mntentchn *mc); +struct mntentchn *getmntdirbackward (const char *dir, struct mntentchn *mc); +struct mntentchn *getmntdevbackward (const char *dev, struct mntentchn *mc); struct mntentchn *fstab_head (void); struct mntentchn *getfsfile (const char *file); diff --git a/mount/h/loop.h b/mount/h/loop.h deleted file mode 100644 index 1bd7fa87..00000000 --- a/mount/h/loop.h +++ /dev/null @@ -1,37 +0,0 @@ -/* - * include/linux/loop.h - * - * Written by Theodore Ts'o, 3/29/93. - * - * Copyright 1993 by Theodore Ts'o. Redistribution of this file is - * permitted under the GNU Public License. - */ - -#define LO_NAME_SIZE 64 -#define LO_KEY_SIZE 32 - -struct loop_info { - int lo_number; /* ioctl r/o */ - dev_t lo_device; /* ioctl r/o */ - unsigned long lo_inode; /* ioctl r/o */ - dev_t lo_rdevice; /* ioctl r/o */ - int lo_offset; - int lo_encrypt_type; - int lo_encrypt_key_size; /* ioctl w/o */ - int lo_flags; /* ioctl r/o */ - char lo_name[LO_NAME_SIZE]; - unsigned char lo_encrypt_key[LO_KEY_SIZE]; /* ioctl w/o */ - unsigned long lo_init[2]; - char reserved[4]; -}; - -#define LO_CRYPT_NONE 0 -#define LO_CRYPT_XOR 1 -#define LO_CRYPT_DES 2 -#define LO_CRYPT_IDEA 3 -#define MAX_LO_CRYPT 4 - -#define LOOP_SET_FD 0x4C00 -#define LOOP_CLR_FD 0x4C01 -#define LOOP_SET_STATUS 0x4C02 -#define LOOP_GET_STATUS 0x4C03 diff --git a/mount/linux_fs.h b/mount/linux_fs.h index 310f7964..874eb8fd 100644 --- a/mount/linux_fs.h +++ b/mount/linux_fs.h @@ -151,12 +151,12 @@ struct cramfs_super_block { #define HFS_SUPER_MAGIC 0x4244 struct hfs_super_block { - u_char s_magic[2]; + u_char s_magic[2]; /* drSigWord */ u_char s_dummy[18]; - u_char s_blksize[4]; + u_char s_blksize[4]; /* drAlBlkSiz */ }; -#define hfsmagic(s) assemble2le(s.s_magic) -#define hfsblksize(s) assemble4le(s.s_blksize) +#define hfsmagic(s) assemble2be(s.s_magic) +#define hfsblksize(s) assemble4be(s.s_blksize) #define HPFS_SUPER_MAGIC 0xf995e849 struct hpfs_super_block { @@ -226,7 +226,17 @@ assemble2le(unsigned char *p) { return (p[0] | (p[1] << 8)); } +static inline int +assemble2be(unsigned char *p) { + return (p[1] | (p[0] << 8)); +} + static inline int assemble4le(unsigned char *p) { return (p[0] | (p[1] << 8) | (p[2] << 16) | (p[3] << 24)); } + +static inline int +assemble4be(unsigned char *p) { + return (p[3] | (p[2] << 8) | (p[1] << 16) | (p[0] << 24)); +} diff --git a/mount/lomount.c b/mount/lomount.c index 97cd9a09..0874f3ea 100644 --- a/mount/lomount.c +++ b/mount/lomount.c @@ -2,13 +2,18 @@ /* Added vfs mount options - aeb - 960223 */ /* Removed lomount - aeb - 960224 */ -/* 1999-02-22 Arkadiusz Mi¶kiewicz +/* + * 1999-02-22 Arkadiusz Mi¶kiewicz * - added Native Language Support - * Sun Mar 21 1999 - Arnaldo Carvalho de Melo + * 1999-03-21 Arnaldo Carvalho de Melo * - fixed strerr(errno) in gettext calls + * 2000-09-24 Marc Mutz + * - added -p option to pass passphrases via fd's to losetup/mount. + * Used for encryption in non-interactive environments. + * The idea behind xgetpass() is stolen from GnuPG, v.1.0.3. */ -#define PROC_DEVICES "/proc/devices" +#define LOOPMAJOR 7 /* * losetup.c - setup and control loop devices @@ -36,93 +41,114 @@ extern char *xstrdup (const char *s); /* not: #include "sundries.h" */ extern void error (const char *fmt, ...); /* idem */ #ifdef LOOP_SET_FD -struct crypt_type_struct { - int id; - char *name; -} crypt_type_tbl[] = { - { LO_CRYPT_NONE, "no" }, - { LO_CRYPT_NONE, "none" }, - { LO_CRYPT_XOR, "xor" }, - { LO_CRYPT_DES, "DES" }, - { -1, NULL } -}; - -static int -crypt_type (const char *name) { - int i; - - if (name) { - for (i = 0; crypt_type_tbl[i].id != -1; i++) - if (!strcasecmp (name, crypt_type_tbl[i].name)) - return crypt_type_tbl[i].id; - } - return -1; + +static int +loop_info64_to_old(const struct loop_info64 *info64, struct loop_info *info) +{ + memset(info, 0, sizeof(*info)); + info->lo_number = info64->lo_number; + info->lo_device = info64->lo_device; + info->lo_inode = info64->lo_inode; + info->lo_rdevice = info64->lo_rdevice; + info->lo_offset = info64->lo_offset; + info->lo_encrypt_type = info64->lo_encrypt_type; + info->lo_encrypt_key_size = info64->lo_encrypt_key_size; + info->lo_flags = info64->lo_flags; + info->lo_init[0] = info64->lo_init[0]; + info->lo_init[1] = info64->lo_init[1]; + if (info->lo_encrypt_type == LO_CRYPT_CRYPTOAPI) + memcpy(info->lo_name, info64->lo_crypt_name, LO_NAME_SIZE); + else + memcpy(info->lo_name, info64->lo_file_name, LO_NAME_SIZE); + memcpy(info->lo_encrypt_key, info64->lo_encrypt_key, LO_KEY_SIZE); + + /* error in case values were truncated */ + if (info->lo_device != info64->lo_device || + info->lo_rdevice != info64->lo_rdevice || + info->lo_inode != info64->lo_inode || + info->lo_offset != info64->lo_offset) + return -EOVERFLOW; + + return 0; } #ifdef MAIN -static char * -crypt_name (int id) { - int i; - - for (i = 0; crypt_type_tbl[i].id != -1; i++) - if (id == crypt_type_tbl[i].id) - return crypt_type_tbl[i].name; - return "undefined"; -} static int -show_loop (char *device) { +show_loop(char *device) { struct loop_info loopinfo; - int fd; + struct loop_info64 loopinfo64; + int fd, errsv; - if ((fd = open (device, O_RDONLY)) < 0) { + if ((fd = open(device, O_RDONLY)) < 0) { int errsv = errno; fprintf(stderr, _("loop: can't open device %s: %s\n"), device, strerror (errsv)); return 2; } - if (ioctl (fd, LOOP_GET_STATUS, &loopinfo) < 0) { - int errsv = errno; - fprintf(stderr, _("loop: can't get info on device %s: %s\n"), - device, strerror (errsv)); + + if (ioctl(fd, LOOP_GET_STATUS64, &loopinfo64) == 0) { + + loopinfo64.lo_file_name[LO_NAME_SIZE-2] = '*'; + loopinfo64.lo_file_name[LO_NAME_SIZE-1] = 0; + loopinfo64.lo_crypt_name[LO_NAME_SIZE-1] = 0; + + printf("%s: [%04llx]:%llu (%s)", + device, loopinfo64.lo_device, loopinfo64.lo_inode, + loopinfo64.lo_file_name); + + if (loopinfo64.lo_offset) + printf(_(", offset %lld"), loopinfo64.lo_offset); + + if (loopinfo64.lo_sizelimit) + printf(_(", sizelimit %lld"), loopinfo64.lo_sizelimit); + + if (loopinfo64.lo_encrypt_type || + loopinfo64.lo_crypt_name[0]) { + char *e = loopinfo64.lo_crypt_name; + + if (*e == 0 && loopinfo64.lo_encrypt_type == 1) + e = "XOR"; + printf(_(", encryption %s (type %d)"), + e, loopinfo64.lo_encrypt_type); + } + printf("\n"); close (fd); - return 1; + return 0; } - printf (_("%s: [%04x]:%ld (%s) offset %d, %s encryption\n"), - device, loopinfo.lo_device, loopinfo.lo_inode, - loopinfo.lo_name, loopinfo.lo_offset, - crypt_name (loopinfo.lo_encrypt_type)); - close (fd); - return 0; + if (ioctl(fd, LOOP_GET_STATUS, &loopinfo) == 0) { + printf ("%s: [%04x]:%ld (%s)", + device, loopinfo.lo_device, loopinfo.lo_inode, + loopinfo.lo_name); + + if (loopinfo.lo_offset) + printf(_(", offset %d"), loopinfo.lo_offset); + + if (loopinfo.lo_encrypt_type) + printf(_(", encryption type %d\n"), + loopinfo.lo_encrypt_type); + + printf("\n"); + close (fd); + return 0; + } + + errsv = errno; + fprintf(stderr, _("loop: can't get info on device %s: %s\n"), + device, strerror (errsv)); + close (fd); + return 1; } #endif int is_loop_device (const char *device) { struct stat statbuf; - int loopmajor; -#if 1 - loopmajor = 7; -#else - FILE *procdev; - char line[100], *cp; - - loopmajor = 0; - if ((procdev = fopen(PROC_DEVICES, "r")) != NULL) { - while (fgets (line, sizeof(line), procdev)) { - if ((cp = strstr (line, " loop\n")) != NULL) { - *cp='\0'; - loopmajor=atoi(line); - break; - } - } - fclose(procdev); - } -#endif - return (loopmajor && stat(device, &statbuf) == 0 && + + return (stat(device, &statbuf) == 0 && S_ISBLK(statbuf.st_mode) && - major(statbuf.st_rdev) == loopmajor); + major(statbuf.st_rdev) == LOOPMAJOR); } #define SIZE(a) (sizeof(a)/sizeof(a[0])) @@ -134,10 +160,9 @@ find_unused_loop_device (void) { So, we just try /dev/loop[0-7]. */ char dev[20]; char *loop_formats[] = { "/dev/loop%d", "/dev/loop/%d" }; - int i, j, fd, somedev = 0, someloop = 0, loop_known = 0; + int i, j, fd, somedev = 0, someloop = 0; struct stat statbuf; struct loop_info loopinfo; - FILE *procdev; for (j = 0; j < SIZE(loop_formats); j++) { for(i = 0; i < 256; i++) { @@ -160,73 +185,103 @@ find_unused_loop_device (void) { } } - /* Nothing found. Why not? */ - if ((procdev = fopen(PROC_DEVICES, "r")) != NULL) { - char line[100]; - while (fgets (line, sizeof(line), procdev)) - if (strstr (line, " loop\n")) { - loop_known = 1; - break; - } - fclose(procdev); - if (!loop_known) - loop_known = -1; - } - if (!somedev) error(_("mount: could not find any device /dev/loop#")); else if (!someloop) { - if (loop_known == 1) - error(_( - "mount: Could not find any loop device.\n" - " Maybe /dev/loop# has a wrong major number?")); - else if (loop_known == -1) - error(_( - "mount: Could not find any loop device, and, according to %s,\n" - " this kernel does not know about the loop device.\n" - " (If so, then recompile or `insmod loop.o'.)"), - PROC_DEVICES); - else error(_( - "mount: Could not find any loop device. Maybe this kernel does not know\n" - " about the loop device (then recompile or `insmod loop.o'), or\n" - " maybe /dev/loop# has the wrong major number?")); + "mount: Could not find any loop device. Maybe this kernel " + "does not know\n" + " about the loop device? (If so, recompile or " + "`modprobe loop'.)")); } else error(_("mount: could not find any free loop device")); return 0; } +/* + * A function to read the passphrase either from the terminal or from + * an open file descriptor. + */ +static char * +xgetpass(int pfd, const char *prompt) { + char *pass; + int buflen, i; + + if (pfd < 0) /* terminal */ + return getpass(prompt); + + pass = NULL; + buflen = 0; + for (i=0; ; i++) { + if (i >= buflen-1) { + /* we're running out of space in the buffer. + * Make it bigger: */ + char *tmppass = pass; + buflen += 128; + pass = realloc(tmppass, buflen); + if (pass == NULL) { + /* realloc failed. Stop reading. */ + error("Out of memory while reading passphrase"); + pass = tmppass; /* the old buffer hasn't changed */ + break; + } + } + if (read(pfd, pass+i, 1) != 1 || pass[i] == '\n') + break; + } + if (pass == NULL) + return ""; + else { + pass[i] = 0; + return pass; + } +} + +static int +digits_only(const char *s) { + while (*s) + if (!isdigit(*s++)) + return 0; + return 1; +} + int -set_loop (const char *device, const char *file, int offset, - const char *encryption, int *loopro) { - struct loop_info loopinfo; - int fd, ffd, mode, i; +set_loop(const char *device, const char *file, int offset, + const char *encryption, int pfd, int *loopro) { + struct loop_info64 loopinfo64; + int fd, ffd, mode; char *pass; mode = (*loopro ? O_RDONLY : O_RDWR); - if ((ffd = open (file, mode)) < 0) { + if ((ffd = open(file, mode)) < 0) { if (!*loopro && errno == EROFS) - ffd = open (file, mode = O_RDONLY); + ffd = open(file, mode = O_RDONLY); if (ffd < 0) { - perror (file); + perror(file); return 1; } } - if ((fd = open (device, mode)) < 0) { + if ((fd = open(device, mode)) < 0) { perror (device); return 1; } *loopro = (mode == O_RDONLY); - memset (&loopinfo, 0, sizeof (loopinfo)); - xstrncpy (loopinfo.lo_name, file, LO_NAME_SIZE); - if (encryption && (loopinfo.lo_encrypt_type = crypt_type (encryption)) - < 0) { - fprintf (stderr, _("Unsupported encryption type %s\n"), - encryption); - return 1; + memset(&loopinfo64, 0, sizeof(loopinfo64)); + + xstrncpy(loopinfo64.lo_file_name, file, LO_NAME_SIZE); + + if (encryption && *encryption) { + if (digits_only(encryption)) { + loopinfo64.lo_encrypt_type = atoi(encryption); + } else { + loopinfo64.lo_encrypt_type = LO_CRYPT_CRYPTOAPI; + snprintf(loopinfo64.lo_crypt_name, LO_NAME_SIZE, + "%s", encryption); + } } - loopinfo.lo_offset = offset; + + loopinfo64.lo_offset = offset; #ifdef MCL_FUTURE /* @@ -241,53 +296,55 @@ set_loop (const char *device, const char *file, int offset, } #endif - switch (loopinfo.lo_encrypt_type) { + switch (loopinfo64.lo_encrypt_type) { case LO_CRYPT_NONE: - loopinfo.lo_encrypt_key_size = 0; + loopinfo64.lo_encrypt_key_size = 0; break; case LO_CRYPT_XOR: - pass = getpass (_("Password: ")); - xstrncpy (loopinfo.lo_encrypt_key, pass, LO_KEY_SIZE); - loopinfo.lo_encrypt_key_size = strlen(loopinfo.lo_encrypt_key); - break; - case LO_CRYPT_DES: - pass = getpass (_("Password: ")); - strncpy (loopinfo.lo_encrypt_key, pass, 8); - loopinfo.lo_encrypt_key[8] = 0; - loopinfo.lo_encrypt_key_size = 8; - pass = getpass (_("Init (up to 16 hex digits): ")); - for (i = 0; i < 16 && pass[i]; i++) - if (isxdigit (pass[i])) { - loopinfo.lo_init[i >> 3] |= (pass[i] > '9' ? - (islower (pass[i]) ? toupper (pass[i]) : - pass[i])-'A'+10 : pass[i]-'0') << (i&7) * 4; - } else { - fprintf (stderr, _("Non-hex digit '%c'.\n"), - pass[i]); - return 1; - } + pass = getpass(_("Password: ")); + xstrncpy(loopinfo64.lo_encrypt_key, pass, LO_KEY_SIZE); + loopinfo64.lo_encrypt_key_size = + strlen(loopinfo64.lo_encrypt_key); break; default: - fprintf (stderr, - _("Don't know how to get key for encryption system %d\n"), - loopinfo.lo_encrypt_type); - return 1; + pass = xgetpass(pfd, _("Password: ")); + xstrncpy(loopinfo64.lo_encrypt_key, pass, LO_KEY_SIZE); + loopinfo64.lo_encrypt_key_size = LO_KEY_SIZE; } - if (ioctl (fd, LOOP_SET_FD, ffd) < 0) { - perror ("ioctl: LOOP_SET_FD"); + + if (ioctl(fd, LOOP_SET_FD, ffd) < 0) { + perror("ioctl: LOOP_SET_FD"); return 1; } - if (ioctl (fd, LOOP_SET_STATUS, &loopinfo) < 0) { - (void) ioctl (fd, LOOP_CLR_FD, 0); - perror ("ioctl: LOOP_SET_STATUS"); - return 1; + close (ffd); + + if (ioctl(fd, LOOP_SET_STATUS64, &loopinfo64) < 0) { + struct loop_info loopinfo; + int errsv = errno; + + errno = loop_info64_to_old(&loopinfo64, &loopinfo); + if (errno) { + errno = errsv; + perror("ioctl: LOOP_SET_STATUS64"); + goto fail; + } + + if (ioctl(fd, LOOP_SET_STATUS, &loopinfo) < 0) { + perror("ioctl: LOOP_SET_STATUS"); + goto fail; + } } + close (fd); - close (ffd); if (verbose > 1) printf(_("set_loop(%s,%s,%d): success\n"), device, file, offset); return 0; + + fail: + (void) ioctl (fd, LOOP_CLR_FD, 0); + close (fd); + return 1; } int @@ -388,29 +445,34 @@ error (const char *fmt, ...) { int main(int argc, char **argv) { - char *offset, *encryption; - int delete,off,c; + char *offset, *encryption, *passfd; + int delete, off, c; int res = 0; int ro = 0; + int pfd = -1; setlocale(LC_ALL, ""); bindtextdomain(PACKAGE, LOCALEDIR); textdomain(PACKAGE); delete = off = 0; - offset = encryption = NULL; + offset = encryption = passfd = NULL; progname = argv[0]; - while ((c = getopt(argc,argv,"de:o:v")) != -1) { + while ((c = getopt(argc,argv,"de:E:o:p:v")) != -1) { switch (c) { case 'd': delete = 1; break; + case 'E': case 'e': encryption = optarg; break; case 'o': offset = optarg; break; + case 'p': + passfd = optarg; + break; case 'v': verbose = 1; break; @@ -430,7 +492,10 @@ main(int argc, char **argv) { } else { if (offset && sscanf(offset,"%d",&off) != 1) usage(); - res = set_loop(argv[optind],argv[optind+1],off,encryption,&ro); + if (passfd && sscanf(passfd,"%d",&pfd) != 1) + usage(); + res = set_loop(argv[optind], argv[optind+1], off, + encryption, pfd, &ro); } return res; } diff --git a/mount/lomount.h b/mount/lomount.h index 1a93c693..d81fc3b5 100644 --- a/mount/lomount.h +++ b/mount/lomount.h @@ -1,5 +1,6 @@ extern int verbose; -extern int set_loop (const char *, const char *, int, const char *, int *); -extern int del_loop (const char *); -extern int is_loop_device (const char *); -extern char * find_unused_loop_device (void); +extern int set_loop(const char *, const char *, int, const char *, + int, int *); +extern int del_loop(const char *); +extern int is_loop_device(const char *); +extern char * find_unused_loop_device(void); diff --git a/mount/loop.h b/mount/loop.h new file mode 100644 index 00000000..951a5d18 --- /dev/null +++ b/mount/loop.h @@ -0,0 +1,51 @@ +#define LO_CRYPT_NONE 0 +#define LO_CRYPT_XOR 1 +#define LO_CRYPT_DES 2 +#define LO_CRYPT_CRYPTOAPI 18 + +#define LOOP_SET_FD 0x4C00 +#define LOOP_CLR_FD 0x4C01 +#define LOOP_SET_STATUS 0x4C02 +#define LOOP_GET_STATUS 0x4C03 +#define LOOP_SET_STATUS64 0x4C04 +#define LOOP_GET_STATUS64 0x4C05 + +#define LO_NAME_SIZE 64 +#define LO_KEY_SIZE 32 + +#include "my_dev_t.h" + +struct loop_info { + int lo_number; + my_dev_t lo_device; + unsigned long lo_inode; + my_dev_t lo_rdevice; + int lo_offset; + int lo_encrypt_type; + int lo_encrypt_key_size; + int lo_flags; + char lo_name[LO_NAME_SIZE]; + unsigned char lo_encrypt_key[LO_KEY_SIZE]; + unsigned long lo_init[2]; + char reserved[4]; +}; + +/* + * Where to get __u8, __u32, __u64? Let us use unsigned char/int/long long + * and get punished when someone comes with 128-bit long longs. + */ +struct loop_info64 { + unsigned long long lo_device; + unsigned long long lo_inode; + unsigned long long lo_rdevice; + unsigned long long lo_offset; + unsigned long long lo_sizelimit; /* bytes, 0 == max available */ + unsigned int lo_number; + unsigned int lo_encrypt_type; + unsigned int lo_encrypt_key_size; + unsigned int lo_flags; + unsigned char lo_file_name[LO_NAME_SIZE]; + unsigned char lo_crypt_name[LO_NAME_SIZE]; + unsigned char lo_encrypt_key[LO_KEY_SIZE]; + unsigned long long lo_init[2]; +}; diff --git a/mount/losetup.8 b/mount/losetup.8 index d364f4f1..9a42d70a 100644 --- a/mount/losetup.8 +++ b/mount/losetup.8 @@ -1,15 +1,18 @@ -.TH LOSETUP 8 "Nov 24 1993" "Linux" "MAINTENANCE COMMANDS" +.TH LOSETUP 8 "2003-07-01" "Linux" "MAINTENANCE COMMANDS" .SH NAME losetup \- set up and control loop devices .SH SYNOPSIS .ad l .B losetup [ -.B \-e +.RB [ \-e | \-E ] .I encryption ] [ .B \-o .I offset +] [ +.B \-p +.I pfd ] .I loop_device file .br @@ -25,27 +28,41 @@ is used to associate loop devices with regular files or block devices, to detach loop devices and to query the status of a loop device. If only the \fIloop_device\fP argument is given, the status of the corresponding loop device is shown. + +.SS "Encryption" +It is possible to specify transfer functions (for encryption/decryption +or other purposes) using one of the +.B \-E +and +.B \-e +options. +There are two mechanisms to specify the desired encryption: by number +and by name. If an encryption is specified by number then one +has to make sure that the Linux kernel knows about the encryption with that +number, probably by patching the kernel. Standard numbers that are +always present are 0 (no encryption) and 1 (XOR encryption). +When the cryptoloop module is loaded (or compiled in), it uses number 18. +This cryptoloop module wil take the name of an arbitrary encryption type +and finds the module that knows how to perform that encryption. +(Thus, either one uses a number different from 18 with the +.B \-E +option, or one uses a name with the +.B \-e +option.) .SH OPTIONS .IP \fB\-d\fP -detach the file or device associated with the specified loop device. -.IP "\fB\-e \fIencryption\fP" -.RS -enable data encryption. The following keywords are recognized: -.IP \fBNONE\fP -use no encryption (default). -.PD 0 -.IP \fBXOR\fP -use a simple XOR encryption. -.IP \fBDES\fP -use DES encryption. DES encryption is only available if the optional -DES package has been added to the kernel. DES encryption uses an additional -start value that is used to protect passwords against dictionary -attacks. -.PD -.RE +Detach the file or device associated with the specified loop device. +.IP "\fB\-E \fIencryption_type\fP" +Enable data encryption with specified number. +.IP "\fB\-e \fIencryption_name\fP" +Enable data encryption with specified name. .IP "\fB\-o \fIoffset\fP" -the data start is moved \fIoffset\fP bytes into the specified file or +The data start is moved \fIoffset\fP bytes into the specified file or device. +.IP "\fB\-p \fInum\fP" +Read the passphrase from file descriptor with number +.I num +instead of from the terminal. .SH RETURN VALUE .B losetup returns 0 on success, nonzero on failure. When @@ -57,7 +74,7 @@ from determining the status of the device. .SH FILES .nf -/dev/loop0,/dev/loop1,... loop devices (major=7) +/dev/loop0, /dev/loop1, ... loop devices (major=7) .fi .SH EXAMPLE If you are using the loadable module you must have the module loaded @@ -65,18 +82,23 @@ first with the command .IP # insmod loop.o .LP +Maybe also encryption modules are needed. +.IP +# insmod des.o +# insmod cryptoloop.o +.LP The following commands can be used as an example of using the loop device. .nf .IP -dd if=/dev/zero of=/file bs=1k count=100 -losetup -e des /dev/loop0 /file +# dd if=/dev/zero of=/file bs=1k count=100 +# losetup -e des /dev/loop0 /file Password: Init (up to 16 hex digits): -mkfs -t ext2 /dev/loop0 100 -mount -t ext2 /dev/loop0 /mnt +# mkfs -t ext2 /dev/loop0 100 +# mount -t ext2 /dev/loop0 /mnt ... -umount /dev/loop0 -losetup -d /dev/loop0 +# umount /dev/loop0 +# losetup -d /dev/loop0 .fi .LP If you are using the loadable module you may remove the module with @@ -87,8 +109,8 @@ the command .fi .SH RESTRICTION DES encryption is painfully slow. On the other hand, XOR is terribly weak. -.SH AUTHORS -.nf -Original version: Theodore Ts'o -Original DES by: Eric Young -.fi +.\" .SH AUTHORS +.\" .nf +.\" Original version: Theodore Ts'o +.\" Original DES by: Eric Young +.\" .fi diff --git a/mount/mk_loop_h b/mount/mk_loop_h deleted file mode 100644 index 86e76f35..00000000 --- a/mount/mk_loop_h +++ /dev/null @@ -1,34 +0,0 @@ -#!/bin/sh -# -# Figure out (i) the type of dev_t (ii) the defines for loop stuff -# - -rm -f loop.h - -# Since 1.3.79 there is an include file -# that defines __kernel_dev_t. -# (The file itself appeared in 1.3.78, but there it defined __dev_t.) -# If it exists, we use it, or, rather, which -# avoids namespace pollution. Otherwise we guess that __kernel_dev_t -# is an unsigned short (which is true on i386, but false on alpha). - -if [ -f /usr/include/linux/posix_types.h ]; then - echo '#include ' >> loop.h - echo '#undef dev_t' >> loop.h - echo '#define dev_t __kernel_dev_t' >> loop.h -else - echo '#undef dev_t' >> loop.h - echo '#define dev_t unsigned short' >> loop.h -fi - -# Next we have to find the loop stuff itself. -# First try kernel source, then a private version. - -if [ -f /usr/include/linux/loop.h ]; then - echo '#include ' >> loop.h -else - echo '#include "h/loop.h"' >> loop.h -fi - -echo '#undef dev_t' >> loop.h - diff --git a/mount/mntent.c b/mount/mntent.c index a9a334fe..f48da3dd 100644 --- a/mount/mntent.c +++ b/mount/mntent.c @@ -8,6 +8,7 @@ #include #include /* for index */ #include /* for isdigit */ +#include /* for umask */ #include "mntent.h" #include "sundries.h" /* for xmalloc */ #include "nls.h" @@ -95,8 +96,10 @@ unmangle(char *s) { mntFILE * my_setmntent (const char *file, char *mode) { mntFILE *mfp = xmalloc(sizeof(*mfp)); + mode_t old_umask = umask(077); mfp->mntent_fp = fopen (file, mode); + umask(old_umask); mfp->mntent_file = xstrdup(file); mfp->mntent_errs = (mfp->mntent_fp == NULL); mfp->mntent_softerrs = 0; diff --git a/mount/mount.8 b/mount/mount.8 index 32a5e850..794cc32f 100644 --- a/mount/mount.8 +++ b/mount/mount.8 @@ -224,6 +224,7 @@ maintain a list of currently mounted file systems in the file If no arguments are given to .BR mount , this list is printed. + When the .I proc filesystem is mounted (say at @@ -241,7 +242,8 @@ option below). It is possible to replace by a symbolic link to .IR /proc/mounts , but some information is lost that way, and in particular -working with the loop device will be less convenient. +working with the loop device will be less convenient, +and using the "user" option will fail. .SH OPTIONS The full set of options used by an invocation of @@ -295,6 +297,9 @@ flag to determine what the command is trying to do. It can also be used to add entries for devices that were mounted earlier with the -n option. .TP +.B \-i +Don't call the /sbin/mount. helper even if it exists. +.TP .B \-l Add the ext2, ext3 and XFS labels in the mount output. Mount must have permission to read the disk device (e.g. be suid root) for this to work. @@ -310,6 +315,12 @@ This is necessary for example when .I /etc is on a read-only file system. .TP +.BI \-p " num" +In case of a loop mount with encryption, read the passphrase from +file descriptor +.I num +instead of from the terminal. +.TP .B \-s Tolerate sloppy mount options rather than failing. This will ignore mount options not supported by a filesystem type. Not all filesystems @@ -402,7 +413,7 @@ treat all types in a uniform way, mount will execute the program Since various versions of the .I smbmount program have different calling conventions, -.I /sbin/mount.smb +.I /sbin/mount.smbfs may have to be a shell script that sets up the desired call. The type @@ -1095,6 +1106,8 @@ decimal. (Octal is indicated by a leading 0.) .TP .B unhide Also show hidden and associated files. +(If the ordinary files and the associated or hidden files have +the same filenames, this may make the ordinary files inaccessible.) .TP .B block=[512|1024|2048] Set the block size to the indicated value. @@ -1116,11 +1129,21 @@ The `cruft' option is set automatically if the entire CDROM has a weird size (negative, or more than 800MB). It is also set when volume sequence numbers other than 0 or 1 are seen. .TP -.B session=x +.BI session= x Select number of session on multisession CD. (Since 2.3.4.) .TP -.B sbsector=xxx +.BI sbsector= xxx Session begins from sector xxx. (Since 2.3.4.) +.LP +The following options are the same as for vfat and specifying them only makes +sense when using discs encoded using Microsoft's Joliet extensions. +.TP +.BI iocharset= value +Character set to use for converting 16 bit Unicode characters on CD +to 8 bit characters. The default is iso8859-1. +.TP +.B utf8 +Convert 16 bit Unicode characters on CD to UTF-8. .SH "Mount options for minix" None. @@ -1133,16 +1156,16 @@ file system detects an inconsistency, it reports an error and sets the file system read-only. The file system can be made writeable again by remounting it. -.SH "Mount options for ncp" +.SH "Mount options for ncpfs" Just like -.IR nfs ", the " ncp +.IR nfs ", the " ncpfs implementation expects a binary argument (a .IR "struct ncp_mount_data" ) to the mount system call. This argument is constructed by .BR ncpmount (8) and the current version of .B mount -(2.6h) does not know anything about ncp. +(2.12) does not know anything about ncpfs. .SH "Mount options for nfs" Instead of a textual option string, parsed by the kernel, the @@ -1346,14 +1369,14 @@ None. .SH "Mount options for smbfs" Just like -.IR nfs ", the " smb +.IR nfs ", the " smbfs implementation expects a binary argument (a .IR "struct smb_mount_data" ) to the mount system call. This argument is constructed by .BR smbmount (8) and the current version of .B mount -(2.9w) does not know anything about smb. +(2.12) does not know anything about smbfs. .SH "Mount options for sysv" None. diff --git a/mount/mount.c b/mount/mount.c index 1da75d93..6059460c 100644 --- a/mount/mount.c +++ b/mount/mount.c @@ -80,6 +80,9 @@ /* True for fake mount (-f). */ static int fake = 0; +/* True if we are allowed to call /sbin/mount.${FSTYPE} */ +static int external_allowed = 1; + /* Don't write a entry in /etc/mtab (-n). */ static int nomtab = 0; @@ -110,6 +113,9 @@ static int mounttype = 0; /* True if ruid != euid. */ static int suid = 0; +/* Contains the fd to read the passphrase from, if any. */ +static int pfd = -1; + /* Map from -o and fstab option strings to the flag argument to mount(2). */ struct opt_map { const char *opt; /* option name */ @@ -447,11 +453,16 @@ static int mountcount = 0; */ static int do_mount_syscall (struct mountargs *args) { - int ret = mount (args->spec, args->node, args->type, - MS_MGC_VAL | (args->flags), args->data); - if (ret == 0) - mountcount++; - return ret; + int flags = args->flags; + int ret; + + if ((flags & MS_MGC_MSK) == 0) + flags |= MS_MGC_VAL; + + ret = mount (args->spec, args->node, args->type, flags, args->data); + if (ret == 0) + mountcount++; + return ret; } /* @@ -593,7 +604,8 @@ loop_check(char **spec, char **type, int *flags, if (verbose) printf(_("mount: going to use the loop device %s\n"), *loopdev); offset = opt_offset ? strtoul(opt_offset, NULL, 0) : 0; - if (set_loop (*loopdev, *loopfile, offset, opt_encryption, &loopro)) { + if (set_loop(*loopdev, *loopfile, offset, + opt_encryption, pfd, &loopro)) { if (verbose) printf(_("mount: failed setting up loop device\n")); return EX_FAIL; @@ -651,6 +663,14 @@ update_mtab_entry(char *spec, char *node, char *type, char *opts, } } +static void +set_pfd(char *s) { + if (!isdigit(*s)) + die(EX_USAGE, + _("mount: argument to -p or --pass-fd must be a number")); + pfd = atoi(optarg); +} + static void cdrom_setspeed(char *spec) { #define CDROM_SELECT_SPEED 0x5322 /* Set the CD-ROM speed */ @@ -673,7 +693,6 @@ cdrom_setspeed(char *spec) { * If there is a special mount program for this type, exec it. * returns: 0: no exec was done, 1: exec was done, status has result */ -#define ALWAYS_STAT static int check_special_mountprog(char *spec, char *node, char *type, int flags, @@ -682,16 +701,10 @@ check_special_mountprog(char *spec, char *node, char *type, int flags, struct stat statbuf; int res; - if (type && -#ifndef ALWAYS_STAT - (streq (type, "smb") || streq (type, "ncp") - /* these are incorrect but perhaps used by smbmount or so */ - || streq (type, "smbfs") || streq (type, "ncpfs") - ) -#else - (strlen (type) < 100) -#endif - ) { + if (!external_allowed) + return 0; + + if (type && strlen(type) < 100) { sprintf(mountprog, "/sbin/mount.%s", type); if (stat(mountprog, &statbuf) == 0) { res = fork(); @@ -767,7 +780,7 @@ try_mount_one (const char *spec0, const char *node0, char *types0, if (mount_all && (flags & MS_NOAUTO)) return 0; - suid_check (spec, node, &flags, &user); + suid_check(spec, node, &flags, &user); mount_opts = extra_opts; @@ -775,18 +788,19 @@ try_mount_one (const char *spec0, const char *node0, char *types0, cdrom_setspeed(spec); if (!(flags & MS_REMOUNT)) { - /* don't set up a (new) loop device if we only remount - this left + /* + * Don't set up a (new) loop device if we only remount - this left * stale assignments of files to loop devices. Nasty when used for * encryption. */ - res = loop_check (&spec, &types, &flags, &loop, &loopdev, &loopfile); + res = loop_check(&spec, &types, &flags, &loop, &loopdev, &loopfile); if (res) return res; } /* * Call mount.TYPE for types that require a separate mount program. - * For the moment these types are ncp and smb. Maybe also vxfs. + * For the moment these types are ncpfs and smbfs. Maybe also vxfs. * All such special things must occur isolated in the types string. */ if (check_special_mountprog (spec, node, types, flags, extra_opts, &status)) @@ -1136,10 +1150,10 @@ mount_one (const char *spec, const char *node, char *types, const char *opts, printf(_("mount: no type was given - " "I'll assume nfs because of the colon\n")); } else if(!strncmp(spec, "//", 2)) { - types = "smb"; + types = "smbfs"; if (verbose) printf(_("mount: no type was given - " - "I'll assume smb because of the // prefix\n")); + "I'll assume smbfs because of the // prefix\n")); } } @@ -1356,6 +1370,7 @@ static struct option longopts[] = { { "rw", 0, 0, 'w' }, { "options", 1, 0, 'o' }, { "test-opts", 1, 0, 'O' }, + { "pass-fd", 1, 0, 'p' }, { "types", 1, 0, 't' }, { "bind", 0, 0, 128 }, { "replace", 0, 0, 129 }, @@ -1365,6 +1380,7 @@ static struct option longopts[] = { { "move", 0, 0, 133 }, { "guess-fstype", 1, 0, 134 }, { "rbind", 0, 0, 135 }, + { "internal-only", 0, 0, 'i' }, { NULL, 0, 0, 0 } }; @@ -1392,7 +1408,7 @@ usage (FILE *fp, int n) { " mount --move olddir newdir\n" "A device can be given by name, say /dev/hda1 or /dev/cdrom,\n" "or by label, using -L label or by uuid, using -U uuid .\n" - "Other options: [-nfFrsvw] [-o options].\n" + "Other options: [-nfFrsvw] [-o options] [-p passwdfd].\n" "For many more details, say man 8 mount .\n" )); /* @@ -1431,7 +1447,7 @@ main (int argc, char *argv[]) { initproctitle(argc, argv); #endif - while ((c = getopt_long (argc, argv, "afFhlL:no:O:rsU:vVwt:", + while ((c = getopt_long (argc, argv, "afFhilL:no:O:p:rsU:vVwt:", longopts, NULL)) != -1) { switch (c) { case 'a': /* mount everything in fstab */ @@ -1446,6 +1462,9 @@ main (int argc, char *argv[]) { case 'h': /* help */ usage (stdout, 0); break; + case 'i': + external_allowed = 0; + break; case 'l': list_with_volumelabel = 1; break; @@ -1467,6 +1486,9 @@ main (int argc, char *argv[]) { else test_opts = xstrdup(optarg); break; + case 'p': /* fd on which to read passwd */ + set_pfd(optarg); + break; case 'r': /* mount readonly */ readonly = 1; readwrite = 0; diff --git a/mount/mount.smb b/mount/mount.smbfs similarity index 90% rename from mount/mount.smb rename to mount/mount.smbfs index 845f3106..990b6954 100644 --- a/mount/mount.smb +++ b/mount/mount.smbfs @@ -1,11 +1,11 @@ #!/bin/csh # -# /sbin/mount.smb +# /sbin/mount.smbfs # by Greg Galperin, MAR99 # ver 1.1 MAR99 GRG docs update: must escape special chars like $ # ver 1.0 MAR99 GRG original version # -# Intent is to allow calls to mount with -t smb to work properly +# Intent is to allow calls to mount with -t smbfs to work properly # (either manually or from an automounter). # # bugs: @@ -17,7 +17,7 @@ # To use this from autofs: # # have an entry of the form -# key -fstype=smb,-Uadministrator,-Ppassword ://host/share +# key -fstype=smbfs,-Uadministrator,-Ppassword ://host/share # in the appropriate /etc/auto.mountpoint file. # # This makes access to /mountpoint/key/ access smb //host/share/ @@ -32,7 +32,7 @@ # ########################################################################### # -# I get called in the form: /sbin/mount.smb //host/shr /mnt/tmp -o rw,arg1,arg2 +# I get called as: /sbin/mount.smbfs //host/shr /mnt/tmp -o rw,arg1,arg2 # # It looks like mount tacks on either "rw" or "ro" as the first argument, # so I'm going to count on having exactly 5 arguments. diff --git a/mount/mount_by_label.c b/mount/mount_by_label.c index e2afcf01..524ec7ca 100644 --- a/mount/mount_by_label.c +++ b/mount/mount_by_label.c @@ -125,6 +125,40 @@ uuidcache_init_evms(void) { return 1; } +/* + * xvm is a proprietary sgi volume manager, it goes into /proc/partitions + * like this: + * + * 4 0 2210817 xvm/local/vol/myvolume/data/block + * 4 1 2210817 xvm/local/vol/myvolume/rt/block + * 4 2 2210817 xvm/local/vol/myvolume/log/block + * 4 3 2210818 xvm/local/vol/discs3/data/block + * + * The heuristics here are that the device should start with "xvm," + * but should not end in "log/block" or "rt/block" - those are + * special devices for the xfs filesystem external log & realtime device. + */ + +/* + * XVM support - Eric Sandeen + * Return 1 if this looks like an xvm device that should be scanned + */ +static int +is_xvm(char *ptname) +{ + /* + * Scan anything with "xvm" and "data" in its name. + * That might pick up non-data xvm subvols if the + * volumename contains the string 'data' but + * that should be harmless. + */ + + if (strstr(ptname, "xvm") && strstr(ptname, "data")) + return 1; + + return 0; +} + static void uuidcache_init(void) { char line[100]; @@ -193,7 +227,8 @@ uuidcache_init(void) { /* devfs has .../disc and .../part1 etc. */ for(s = ptname; *s; s++); - if (isdigit(s[-1])) { + if (isdigit(s[-1]) || is_xvm(ptname)) { + /* * Note: this is a heuristic only - there is no reason * why these devices should live in /dev. diff --git a/mount/mount_guess_fstype.c b/mount/mount_guess_fstype.c index 96b14d71..ab47b455 100644 --- a/mount/mount_guess_fstype.c +++ b/mount/mount_guess_fstype.c @@ -297,6 +297,8 @@ do_guess_fstype(const char *device) { else if ((!strncmp(xsb.fatsb.s_os, "MSDOS", 5) || !strncmp(xsb.fatsb.s_os, "MSWIN", 5) || !strncmp(xsb.fatsb.s_os, "MTOOL", 5) || + !strncmp(xsb.fatsb.s_os, "IBM", 3) || + !strncmp(xsb.fatsb.s_os, "DRDOS", 5) || !strncmp(xsb.fatsb.s_os, "mkdosfs", 7) || !strncmp(xsb.fatsb.s_os, "kmkdosfs", 8) || /* Michal Svec: created by fdformat, old msdos utility for @@ -359,13 +361,10 @@ do_guess_fstype(const char *device) { goto io_error; /* also check if block size is equal to 512 bytes, - since the hfs driver currently only has support - for block sizes of 512 bytes long, and to be - more accurate (sb magic is only a short int) */ - if ((hfsmagic(hfssb) == HFS_SUPER_MAGIC && - hfsblksize(hfssb) == 0x20000) || - (swapped(hfsmagic(hfssb)) == HFS_SUPER_MAGIC && - hfsblksize(hfssb) == 0x200)) + or a multiple. (I see 1536 here.) */ + if (hfsmagic(hfssb) == HFS_SUPER_MAGIC && /* always BE */ + hfsblksize(hfssb) != 0 && + (hfsblksize(hfssb) & 0x1ff) == 0) type = "hfs"; } diff --git a/mount/my_dev_t.h b/mount/my_dev_t.h new file mode 100644 index 00000000..5ef97154 --- /dev/null +++ b/mount/my_dev_t.h @@ -0,0 +1,7 @@ +/* silliness to get dev_t defined as the kernel defines it */ +/* glibc uses a different dev_t */ +/* maybe we need __kernel_old_dev_t -- later */ +/* for ancient systems use "unsigned short" */ + +#include +#define my_dev_t __kernel_dev_t diff --git a/mount/pivot_root.c b/mount/pivot_root.c index faa0e4d5..a844b480 100644 --- a/mount/pivot_root.c +++ b/mount/pivot_root.c @@ -2,8 +2,8 @@ /* Written 2000 by Werner Almesberger */ - #include +#include /* needed for below */ #ifdef __ia64__ # include diff --git a/mount/realpath.c b/mount/realpath.c index 61832efd..988d923c 100644 --- a/mount/realpath.c +++ b/mount/realpath.c @@ -13,7 +13,7 @@ * GNU Library Public License for more details. */ -#undef resolve_symlinks +#define resolve_symlinks /* * This routine is part of libc. We include it nevertheless, diff --git a/mount/umount.c b/mount/umount.c index 29feff4f..eed00d8e 100644 --- a/mount/umount.c +++ b/mount/umount.c @@ -400,15 +400,23 @@ umount_one (const char *spec, const char *node, const char *type, * In both cases, it is best to try the last occurrence first. */ static int -umount_one_bw (const char *file, struct mntentchn *mc) { - int res = 1; - - while (res && mc) { - res = umount_one(mc->m.mnt_fsname, mc->m.mnt_dir, - mc->m.mnt_type, mc->m.mnt_opts, mc); - mc = getmntfilesbackward (file, mc); - } - return res; +umount_one_bw (const char *file, struct mntentchn *mc0) { + struct mntentchn *mc; + int res = 1; + + mc = mc0; + while (res && mc) { + res = umount_one(mc->m.mnt_fsname, mc->m.mnt_dir, + mc->m.mnt_type, mc->m.mnt_opts, mc); + mc = getmntdirbackward(file, mc); + } + mc = mc0; + while (res && mc) { + res = umount_one(mc->m.mnt_fsname, mc->m.mnt_dir, + mc->m.mnt_type, mc->m.mnt_opts, mc); + mc = getmntdevbackward(file, mc); + } + return res; } /* Unmount all filesystems of type VFSTYPES found in mtab. Since we are @@ -525,7 +533,6 @@ get_value(string_list list, char *s) { } return 0; } -/*=======================================================================*/ static int umount_file (char *arg) { @@ -534,19 +541,25 @@ umount_file (char *arg) { string_list options; int fstab_has_user, fstab_has_users, fstab_has_owner, ok; - file = canonicalize (arg); /* mtab paths are canonicalized */ + file = canonicalize(arg); /* mtab paths are canonicalized */ if (verbose > 1) printf(_("Trying to umount %s\n"), file); - mc = getmntfilesbackward (file, NULL); + mc = getmntdirbackward(file, NULL); + if (!mc) + mc = getmntdevbackward(file, NULL); if (!mc && verbose) printf(_("Could not find %s in mtab\n"), file); if (suid) { if (!mc) - die (2, _("umount: %s is not mounted (according to mtab)"), file); - if (getmntfilesbackward (file, mc)) - die (2, _("umount: it seems %s is mounted multiple times"), file); + die(2, + _("umount: %s is not mounted (according to mtab)"), + file); + if (!is_mounted_once(file)) + die(2, + _("umount: it seems %s is mounted multiple times"), + file); /* If fstab contains the two lines /dev/sda1 /mnt/zip auto user,noauto 0 0 diff --git a/po/POTFILES.in b/po/POTFILES.in index f0c110aa..17559942 100644 --- a/po/POTFILES.in +++ b/po/POTFILES.in @@ -21,7 +21,7 @@ fdisk/i386_sys_types.c fdisk/llseek.c fdisk/partname.c fdisk/sfdisk.c -getopt-1.1.2/getopt.c +getopt/getopt.c hwclock/clock-ppc.c hwclock/cmos.c hwclock/hwclock.c @@ -65,7 +65,6 @@ misc-utils/script.c misc-utils/setterm.c misc-utils/whereis.c misc-utils/write.c -mount/bind.c mount/fstab.c mount/getusername.c mount/lomount.c diff --git a/po/ca.po b/po/ca.po index 78b41aeb..66184747 100644 --- a/po/ca.po +++ b/po/ca.po @@ -1,24 +1,23 @@ # translation of util-linux.po to Catalan -# Copyright (C) 2002 Free Software Foundation, Inc. +# Copyright (C) 2002, 2003 Free Software Foundation, Inc. +# Antoni Bella Perez , 2002, 2003. # # Permission is granted to freely copy and distribute # this file and modified versions, provided that this # header is not removed and modified versions are marked # as such. # -# Antoni Bella Perez , 2002. -# msgid "" msgstr "" -"Project-Id-Version: util-linux-2.11u\n" -"POT-Creation-Date: 2002-11-25 00:47+0100\n" -"PO-Revision-Date: 2002-09-12 00:59+0200\n" +"Project-Id-Version: util-linux-2.11z\n" +"POT-Creation-Date: 2003-02-05 06:31-0500\n" +"PO-Revision-Date: 2003-03-26 09:29+0100\n" "Last-Translator: Antoni Bella Perez \n" "Language-Team: Catalan \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: KBabel 1.0beta2\n" +"X-Generator: KBabel 1.0.1\n" #: disk-utils/blockdev.c:60 msgid "set read-only" @@ -50,11 +49,11 @@ msgstr "obtindre la mida" #: disk-utils/blockdev.c:79 msgid "set readahead" -msgstr "inicialitzar la lectura avançada" +msgstr "establir 'readahead'" #: disk-utils/blockdev.c:82 msgid "get readahead" -msgstr "obtindre la lectura avançada" +msgstr "obtindre 'readahead'" #: disk-utils/blockdev.c:85 msgid "flush buffers" @@ -117,7 +116,7 @@ msgstr "useu:\n" #: disk-utils/fdformat.c:31 msgid "Formatting ... " -msgstr "Formatant ... " +msgstr "S'està formatant... " #: disk-utils/fdformat.c:49 disk-utils/fdformat.c:84 msgid "done\n" @@ -125,7 +124,7 @@ msgstr "fet\n" #: disk-utils/fdformat.c:60 msgid "Verifying ... " -msgstr "Verificant ... " +msgstr "S'està verificant... " #: disk-utils/fdformat.c:71 msgid "Read: " @@ -143,7 +142,7 @@ msgid "" "Continuing ... " msgstr "" "dades incorrectes al cilindre %d\n" -"Continuant ... " +"Continuant... " #: disk-utils/fdformat.c:94 #, c-format @@ -152,13 +151,13 @@ msgstr "useu: %s [ -n ] dispositiu\n" #: disk-utils/fdformat.c:116 disk-utils/fsck.minix.c:1291 #: disk-utils/isosize.c:179 disk-utils/mkfs.bfs.c:119 disk-utils/mkfs.c:55 -#: disk-utils/mkfs.cramfs.c:771 disk-utils/mkfs.minix.c:638 +#: disk-utils/mkfs.cramfs.c:778 disk-utils/mkfs.minix.c:638 #: disk-utils/mkswap.c:461 disk-utils/setfdprm.c:128 hwclock/hwclock.c:1175 #: misc-utils/cal.c:248 misc-utils/ddate.c:181 misc-utils/kill.c:188 #: misc-utils/rename.c:79 misc-utils/script.c:132 #, c-format msgid "%s from %s\n" -msgstr "%s des de %s\n" +msgstr "%s provinent de %s\n" #: disk-utils/fdformat.c:130 #, c-format @@ -176,7 +175,7 @@ msgstr "%s cares, %d pistes, %d segons/pista. Capacitat total %d kB.\n" #: disk-utils/fdformat.c:142 msgid "Double" -msgstr "Densitat doble" +msgstr "Doble densitat" #: disk-utils/fdformat.c:142 msgid "Single" @@ -192,10 +191,10 @@ msgid "" " file file to test\n" msgstr "" "usar: %s [-hv] [-x dir] fitxer\n" -" -h mostrà aquesta ajuda\n" +" -h mostra aquesta ajuda\n" " -x dir extreu a dins del dir\n" " -v mostra més missatges\n" -" file fitxer a provar\n" +" fitxer fitxer a comprovar\n" #: disk-utils/fsck.cramfs.c:191 #, c-format @@ -265,7 +264,7 @@ msgstr "%s: cramfs invàlid, màgia errònia\n" #: disk-utils/fsck.cramfs.c:554 #, c-format msgid "%s: warning--file length too long, padded image?\n" -msgstr "%s: atenció; longitud del fitxer massa llarga. Imatge desplaçada?\n" +msgstr "%s: atenció; longitud del fitxer massa llarga, imatge desplaçada?\n" #: disk-utils/fsck.cramfs.c:564 #, c-format @@ -306,7 +305,7 @@ msgstr "%s està muntat.\t " #: disk-utils/fsck.minix.c:309 msgid "Do you really want to continue" -msgstr "N'esteu segur de que desitgeu continuar?" +msgstr "N'esteu segur que desitgeu continuar?" #: disk-utils/fsck.minix.c:313 msgid "check aborted.\n" @@ -371,7 +370,7 @@ msgstr "No es pot escriure el mapa de zona" #: disk-utils/fsck.minix.c:548 msgid "Unable to write inodes" -msgstr "No es pot escriure els ínodes" +msgstr "No es poden escriure els ínodes" #: disk-utils/fsck.minix.c:577 msgid "seek failed" @@ -399,7 +398,7 @@ msgstr "Camp s_zmap_blocks incorrecte en el superbloc" #: disk-utils/fsck.minix.c:612 msgid "Unable to allocate buffer for inode map" -msgstr "No es pot assignar memòria temporal pel mapa de ínodes" +msgstr "No es pot assignar memòria temporal per al mapa de ínodes" #: disk-utils/fsck.minix.c:620 msgid "Unable to allocate buffer for inodes" @@ -407,11 +406,11 @@ msgstr "No es pot assignar memòria temporal per als ínodes" #: disk-utils/fsck.minix.c:623 msgid "Unable to allocate buffer for inode count" -msgstr "No es pot assignar memòria temporal per al número de ínodes" +msgstr "No es pot assignar memòria temporal per al nombre de ínodes" #: disk-utils/fsck.minix.c:626 msgid "Unable to allocate buffer for zone count" -msgstr "No es pot assignar memòria temporal per al número de zones" +msgstr "No es pot assignar memòria temporal per al nombre de zones" #: disk-utils/fsck.minix.c:628 msgid "Unable to read inode map" @@ -423,7 +422,7 @@ msgstr "No es pot llegir el mapa de zones" #: disk-utils/fsck.minix.c:632 msgid "Unable to read inodes" -msgstr "No es pot llegir els ínodes" +msgstr "No es poden llegir els ínodes" #: disk-utils/fsck.minix.c:634 msgid "Warning: Firstzone != Norm_firstzone\n" @@ -442,7 +441,7 @@ msgstr "%ld blocs\n" #: disk-utils/fsck.minix.c:641 disk-utils/mkfs.minix.c:522 #, c-format msgid "Firstdatazone=%ld (%ld)\n" -msgstr "Primerazonadedades=%ld (%ld)\n" +msgstr "Primerazonadades=%ld (%ld)\n" #: disk-utils/fsck.minix.c:642 disk-utils/mkfs.minix.c:523 #, c-format @@ -475,7 +474,7 @@ msgstr "L'ínode %d està marcat com a no usat, però és usat pel fitxer '%s'\n #: disk-utils/fsck.minix.c:664 disk-utils/fsck.minix.c:716 msgid "Mark in use" -msgstr "Marcar en us" +msgstr "Marcar en ús" #: disk-utils/fsck.minix.c:686 disk-utils/fsck.minix.c:736 #, c-format @@ -484,7 +483,7 @@ msgstr "El fitxer `%s' té el mode %05o\n" #: disk-utils/fsck.minix.c:693 disk-utils/fsck.minix.c:742 msgid "Warning: inode count too big.\n" -msgstr "Atenció: número de ínodes massa gran.\n" +msgstr "Atenció: nombre d'ínodes massa gran.\n" #: disk-utils/fsck.minix.c:755 msgid "root inode isn't a directory" @@ -513,8 +512,7 @@ msgstr "Correcte" #: disk-utils/fsck.minix.c:973 disk-utils/fsck.minix.c:1041 #, c-format msgid "The directory '%s' contains a bad inode number for file '%.*s'." -msgstr "" -"El directori `%s' conté un número de ínode incorrecte per al fitxer '%.*s'." +msgstr "El directori `%s' conté un nombre d'ínode incorrecte per al fitxer '%.*s'." #: disk-utils/fsck.minix.c:976 disk-utils/fsck.minix.c:1044 msgid " Remove" @@ -561,12 +559,12 @@ msgstr "No s'ha esborrat el mode del ínode %d." #: disk-utils/fsck.minix.c:1157 disk-utils/fsck.minix.c:1213 #, c-format msgid "Inode %d not used, marked used in the bitmap." -msgstr "El ínode %d no s'usa; marcat com en us en el mapa de bits." +msgstr "L'ínode %d no s'usa; marcat com en ús en el mapa de bits." #: disk-utils/fsck.minix.c:1163 disk-utils/fsck.minix.c:1219 #, c-format msgid "Inode %d used, marked unused in the bitmap." -msgstr "S'està usant el ínode %d; marcat com a no en us en el mapa de bits." +msgstr "S'està usant el ínode %d; marcat com a no en ús en el mapa de bits." #: disk-utils/fsck.minix.c:1169 disk-utils/fsck.minix.c:1224 #, c-format @@ -580,7 +578,7 @@ msgstr "Establir i_nlinks als comptats" #: disk-utils/fsck.minix.c:1183 disk-utils/fsck.minix.c:1238 #, c-format msgid "Zone %d: marked in use, no file uses it." -msgstr "Zona %d: marcada com en us; cap fitxer no l'utilitza." +msgstr "Zona %d: marcada com en ús; cap fitxer no l'utilitza." #: disk-utils/fsck.minix.c:1184 disk-utils/fsck.minix.c:1240 msgid "Unmark" @@ -589,12 +587,12 @@ msgstr "Eliminar marca" #: disk-utils/fsck.minix.c:1189 disk-utils/fsck.minix.c:1245 #, c-format msgid "Zone %d: in use, counted=%d\n" -msgstr "Zona %d: en us, comptada=%d\n" +msgstr "Zona %d: en ús, comptada=%d\n" #: disk-utils/fsck.minix.c:1192 disk-utils/fsck.minix.c:1248 #, c-format msgid "Zone %d: not in use, counted=%d\n" -msgstr "Zona %d: no en us, comptada=%d\n" +msgstr "Zona %d: no en ús, comptada=%d\n" #: disk-utils/fsck.minix.c:1220 msgid "Set" @@ -631,8 +629,7 @@ msgstr "Forçant comprovació del sistema de fitxers en %s.\n" #: disk-utils/fsck.minix.c:1350 #, c-format msgid "Filesystem on %s is dirty, needs checking.\n" -msgstr "" -"Al sistema de fitxers en %s hi han elements estranys, s'han de comprovar.\n" +msgstr "Al sistema de fitxers en %s hi han elements estranys, s'han de comprovar.\n" #: disk-utils/fsck.minix.c:1379 #, c-format @@ -751,7 +748,7 @@ msgstr "no es pot aconseguir la mida de %s" #: disk-utils/mkfs.bfs.c:192 #, c-format msgid "blocks argument too large, max is %lu" -msgstr "el número de blocs es massa gran, el màxim és de %lu" +msgstr "el nombre de blocs es massa gran, el màxim és de %lu" #: disk-utils/mkfs.bfs.c:207 msgid "too many inodes - max is 512" @@ -833,12 +830,10 @@ msgstr "error tancant %s" #: disk-utils/mkfs.c:76 msgid "Usage: mkfs [-V] [-t fstype] [fs-options] device [size]\n" -msgstr "" -"Useu: mkfs [-V] [-t tipus_sis._fitx.] [opcions_sis._fitx.] dispositiu " -"[mida]\n" +msgstr "Useu: mkfs [-V] [-t tipus_sis._fitx.] [opcions_sis._fitx.] dispositiu [mida]\n" -#: disk-utils/mkfs.c:90 fdisk/cfdisk.c:370 getopt-1.1.2/getopt.c:89 -#: getopt-1.1.2/getopt.c:99 login-utils/wall.c:237 +#: disk-utils/mkfs.c:90 fdisk/cfdisk.c:370 getopt/getopt.c:89 +#: getopt/getopt.c:99 login-utils/wall.c:237 #, c-format msgid "%s: Out of memory!\n" msgstr "%s: Memòria esgotada\n" @@ -848,8 +843,8 @@ msgstr "%s: Memòria esgotada\n" msgid "mkfs version %s (%s)\n" msgstr "mkfs versió %s (%s)\n" -#: disk-utils/mkfs.cramfs.c:117 -#, fuzzy, c-format +#: disk-utils/mkfs.cramfs.c:124 +#, c-format msgid "" "usage: %s [-v] [-b blksz] [-e edition] [-i file] [-n name] dirname outfile\n" " -h print this help\n" @@ -865,93 +860,86 @@ msgid "" " dirname root of the filesystem to be compressed\n" " outfile output file\n" msgstr "" -"useu: %s [-h] [-v] [-e edició] [-i fitxer] [-n nom] nom_dir fitxer_eixida\n" +"useu: %s [-v] [-b blksz] [-e edició] [-i fitxer] [-n nom] nom_dir fitxer_eixida\n" " -h mostra aquesta ajuda\n" " -v més missatges\n" " -E converteix els avisos en errors (estatus d'eixida no cero)\n" " -e edició estableix el nombre d'edició (part de fsid)\n" " -i fitxer insereix una imatge de fitxer al sistema de fitxers (requereix\n" -" Linux >= 2.4.0)\n" +" >= 2.4.0)\n" " -n nom estableix el nom del sistema de fitxers cramfs\n" -" -p desplaça %d octets pel codi d'arrencada\n" -" -s ordena les entrades d directori (opció antiga, ignorar)\n" -" -z crear buits explícits (requereix Linux >= 2.3.39)\n" +" -p desplaça %d octets per al codi d'arrencada\n" +" -s ordena les entrades de directori (opció antiga, ignorar)\n" +" -z crear buits explícits (requereix >= 2.3.39)\n" " nom_dir arrel del sistema de fitxers que serà comprimit\n" " fit._eix. fitxer d'eixida\n" -#: disk-utils/mkfs.cramfs.c:328 +#: disk-utils/mkfs.cramfs.c:335 #, c-format msgid "" "Very long (%u bytes) filename `%s' found.\n" " Please increase MAX_INPUT_NAMELEN in mkcramfs.c and recompile. Exiting.\n" msgstr "" "Trobo que és massa llarg (%u octets), nom del fitxer `%s'.\n" -" Si us plau, incrementeu MAX_INPUT_NAMELEN en mkcramfs.c i recompileu. " -"Sortint.\n" +" Si us plau, incrementeu MAX_INPUT_NAMELEN en mkcramfs.c i recompileu. Sortint.\n" -#: disk-utils/mkfs.cramfs.c:456 +#: disk-utils/mkfs.cramfs.c:463 msgid "filesystem too big. Exiting.\n" msgstr "sistema de fitxers massa gran. Sortint.\n" -#: disk-utils/mkfs.cramfs.c:507 -msgid "" -"Exceeded MAXENTRIES. Raise this value in mkcramfs.c and recompile. " -"Exiting.\n" +#: disk-utils/mkfs.cramfs.c:514 +msgid "Exceeded MAXENTRIES. Raise this value in mkcramfs.c and recompile. Exiting.\n" msgstr "" "S'han excedit les MAXENTRIES. Incrementeu aquest valor en mkcramfs.c i\n" "recompileu. Sortint.\n" #. (I don't think this can happen with zlib.) -#: disk-utils/mkfs.cramfs.c:615 +#: disk-utils/mkfs.cramfs.c:622 #, c-format msgid "AIEEE: block \"compressed\" to > 2*blocklength (%ld)\n" msgstr "CARAM: bloc \"comprimit\" a > 2*longituddelbloc (%ld)\n" -#: disk-utils/mkfs.cramfs.c:634 +#: disk-utils/mkfs.cramfs.c:641 #, c-format msgid "%6.2f%% (%+d bytes)\t%s\n" msgstr "%6.2f%% (%+d octets)\t%s\n" -#: disk-utils/mkfs.cramfs.c:812 +#: disk-utils/mkfs.cramfs.c:819 #, c-format -msgid "" -"warning: guestimate of required size (upper bound) is %LdMB, but maximum " -"image size is %uMB. We might die prematurely.\n" -msgstr "" -"atenció: s'estima que la mida requerida (cota superior) és %LdMB, però la " -"mida màxima de la imatge és %uMB. Podria abortar prematurament.\n" +msgid "warning: guestimate of required size (upper bound) is %LdMB, but maximum image size is %uMB. We might die prematurely.\n" +msgstr "atenció: s'estima que la mida requerida (cota superior) és %LdMB, però la mida màxima de la imatge és %uMB. Podria abortar prematurament.\n" -#: disk-utils/mkfs.cramfs.c:853 +#: disk-utils/mkfs.cramfs.c:860 #, c-format msgid "Including: %s\n" msgstr "Incloguent: %s\n" -#: disk-utils/mkfs.cramfs.c:859 +#: disk-utils/mkfs.cramfs.c:866 #, c-format msgid "Directory data: %d bytes\n" msgstr "Dades del directori: %d octets\n" -#: disk-utils/mkfs.cramfs.c:867 +#: disk-utils/mkfs.cramfs.c:874 #, c-format msgid "Everything: %d kilobytes\n" msgstr "Tot: %d kilooctets\n" -#: disk-utils/mkfs.cramfs.c:872 +#: disk-utils/mkfs.cramfs.c:879 #, c-format msgid "Super block: %d bytes\n" msgstr "Super bloc: %d octets\n" -#: disk-utils/mkfs.cramfs.c:879 +#: disk-utils/mkfs.cramfs.c:886 #, c-format msgid "CRC: %x\n" msgstr "CRC: %x\n" -#: disk-utils/mkfs.cramfs.c:884 +#: disk-utils/mkfs.cramfs.c:891 #, c-format msgid "not enough space allocated for ROM image (%Ld allocated, %d used)\n" msgstr "no hi ha prou espai per a l'imatge ROM (assignat %Ld, emprat %d)\n" -#: disk-utils/mkfs.cramfs.c:896 +#: disk-utils/mkfs.cramfs.c:903 #, c-format msgid "ROM image write failed (%d %d)\n" msgstr "ha fallat l'escriptura de l'imatge ROM (%d %d)\n" @@ -960,43 +948,36 @@ msgstr "ha fallat l'escriptura de l'imatge ROM (%d %d)\n" #. screen too quickly.) #. (can't happen when reading from ext2fs) #. bytes, not chars: think UTF8. -#: disk-utils/mkfs.cramfs.c:905 +#: disk-utils/mkfs.cramfs.c:912 msgid "warning: filenames truncated to 255 bytes.\n" msgstr "atenció: els noms dels fitxers es trunquen a 255 octets.\n" -#: disk-utils/mkfs.cramfs.c:908 +#: disk-utils/mkfs.cramfs.c:915 msgid "warning: files were skipped due to errors.\n" msgstr "atenció: s'han saltat fitxers degut a errors.\n" -#: disk-utils/mkfs.cramfs.c:911 +#: disk-utils/mkfs.cramfs.c:918 #, c-format msgid "warning: file sizes truncated to %luMB (minus 1 byte).\n" msgstr "atenció: les mides es trunquen a %luMB (menys 1 octet).\n" -#: disk-utils/mkfs.cramfs.c:916 +#: disk-utils/mkfs.cramfs.c:923 #, c-format -msgid "" -"warning: uids truncated to %u bits. (This may be a security concern.)\n" -msgstr "" -"atenció: els uids es trunquen a %u bits, (Podria ser un problema de " -"seguretat).\n" +msgid "warning: uids truncated to %u bits. (This may be a security concern.)\n" +msgstr "atenció: els uids es trunquen a %u bits, (Podria ser un problema de seguretat).\n" -#: disk-utils/mkfs.cramfs.c:921 +#: disk-utils/mkfs.cramfs.c:928 #, c-format -msgid "" -"warning: gids truncated to %u bits. (This may be a security concern.)\n" -msgstr "" -"atenció: els gids es trunquen a %u bits. (Podria ser un problema de " -"seguretat).\n" +msgid "warning: gids truncated to %u bits. (This may be a security concern.)\n" +msgstr "atenció: els gids es trunquen a %u bits. (Podria ser un problema de seguretat).\n" -#: disk-utils/mkfs.cramfs.c:926 +#: disk-utils/mkfs.cramfs.c:933 #, c-format msgid "" "WARNING: device numbers truncated to %u bits. This almost certainly means\n" "that some device files will be wrong.\n" msgstr "" -"ATENCIÓ: els nombres de dispositiu es trunquen a %u bits. Amb seguretat " -"que\n" +"ATENCIÓ: els nombres de dispositiu es trunquen a %u bits. Amb seguretat que\n" "es deu a fitxers de dispositius erronis.\n" #: disk-utils/mkfs.minix.c:175 @@ -1023,7 +1004,7 @@ msgstr "Error cercant en write_tables" #: disk-utils/mkfs.minix.c:268 msgid "unable to write inode map" -msgstr "No es pot escriure el mapa de ínodes" +msgstr "No es pot escriure el mapa dels ínodes" #: disk-utils/mkfs.minix.c:270 msgid "unable to write zone map" @@ -1031,7 +1012,7 @@ msgstr "No es pot escriure el mapa de zones" #: disk-utils/mkfs.minix.c:272 msgid "unable to write inodes" -msgstr "No es pot escriure els ínodes" +msgstr "No es poden escriure els ínodes" #: disk-utils/mkfs.minix.c:281 msgid "write failed in write_block" @@ -1078,9 +1059,7 @@ msgstr "Error cercant en check_blocks" #: disk-utils/mkfs.minix.c:586 msgid "bad blocks before data-area: cannot make fs" -msgstr "" -"Blocs incorrectes abans de l'àrea de dades: no es pot crear el sistema de " -"fitxers" +msgstr "Blocs incorrectes abans de l'àrea de dades: no es pot crear el sistema de fitxers" #: disk-utils/mkfs.minix.c:592 disk-utils/mkfs.minix.c:614 #, c-format @@ -1127,9 +1106,7 @@ msgstr "la mida de la pàgina %d especificada pel usuari es incorrecte\n" #: disk-utils/mkswap.c:187 #, c-format msgid "Using user-specified page size %d, instead of the system values %d/%d\n" -msgstr "" -"S'utilitza la mida de la pàgina %d especificada pel usuari, en comptes dels " -"valors del sistema %d/%d\n" +msgstr "S'utilitza la mida de la pàgina %d especificada pel usuari, en comptes dels valors del sistema %d/%d\n" #: disk-utils/mkswap.c:191 #, c-format @@ -1145,8 +1122,8 @@ msgstr "Useu: %s [-c] [-v0|-v1] [-pMIDA_PÀG] /dev/_nom_ [blocs]\n" msgid "too many bad pages" msgstr "hi han masses pàgines incorrectes" -#: disk-utils/mkswap.c:363 misc-utils/look.c:182 misc-utils/setterm.c:1130 -#: text-utils/more.c:2065 text-utils/more.c:2076 +#: disk-utils/mkswap.c:363 misc-utils/look.c:182 misc-utils/setterm.c:1145 +#: text-utils/more.c:2064 text-utils/more.c:2075 msgid "Out of memory" msgstr "Memòria esgotada" @@ -1208,12 +1185,12 @@ msgstr "" #: disk-utils/mkswap.c:615 msgid "Unable to set up swap-space: unreadable" -msgstr "No es pot configurar l'espai d'intercanvi: no es pot llegir-la" +msgstr "No es pot configurar l'espai d'intercanvi: no es pot llegir" #: disk-utils/mkswap.c:616 -#, fuzzy, c-format +#, c-format msgid "Setting up swapspace version %d, size = %llu kB\n" -msgstr "Configurant l'espai d'intercanvi versió %d, mida = %lu KiB\n" +msgstr "Configurant l'espai d'intercanvi versió %d, mida = %llu KiB\n" #: disk-utils/mkswap.c:622 msgid "unable to rewind swap-device" @@ -1221,7 +1198,7 @@ msgstr "No es pot rebobinar el dispositiu d'intercanvi" #: disk-utils/mkswap.c:625 msgid "unable to write signature page" -msgstr "no es pot escriure pàgina de la firma" +msgstr "no es pot escriure la pàgina de la firma" #: disk-utils/mkswap.c:633 msgid "fsync failed" @@ -1249,11 +1226,8 @@ msgstr " %s [ -p ] nom del dispositiu\n" #: disk-utils/setfdprm.c:102 #, c-format -msgid "" -" %s [ -p ] dev size sect heads tracks stretch gap rate spec1 fmt_gap\n" -msgstr "" -" %s [ -p ] dispositiu mida sectors capçals pistes stretch interval tassa " -"spec1 format_interval\n" +msgid " %s [ -p ] dev size sect heads tracks stretch gap rate spec1 fmt_gap\n" +msgstr " %s [ -p ] dispositiu mida sectors capçals pistes stretch interval tassa spec1 format_interval\n" #: disk-utils/setfdprm.c:105 #, c-format @@ -1265,11 +1239,11 @@ msgstr " %s [ -c | -y | -n | -d ] dispositiu\n" msgid " %s [ -c | -y | -n ] dev\n" msgstr " %s [ -c | -y | -n ] dispositiu\n" -#: fdisk/cfdisk.c:395 fdisk/cfdisk.c:2003 +#: fdisk/cfdisk.c:395 fdisk/cfdisk.c:1993 msgid "Unusable" msgstr "Inutilitzable" -#: fdisk/cfdisk.c:397 fdisk/cfdisk.c:2005 +#: fdisk/cfdisk.c:397 fdisk/cfdisk.c:1995 msgid "Free Space" msgstr "Espai lliure" @@ -1312,9 +1286,7 @@ msgstr "S'ha modificat el disc.\n" #: fdisk/cfdisk.c:429 msgid "Reboot the system to ensure the partition table is correctly updated.\n" -msgstr "" -"Reinicieu el sistema per a assegurar-vos de que la taula de particions ha " -"estat actualitzada correctament.\n" +msgstr "Reinicieu el sistema per a assegurar-vos de que la taula de particions ha estat actualitzada correctament.\n" #: fdisk/cfdisk.c:432 msgid "" @@ -1326,7 +1298,7 @@ msgstr "" "\n" "ATENCIÓ: Si heu creat o modificat alguna de les\n" "particions de DOS 6.x, si us plau consulteu la pàgina\n" -"del manual de cfdis per a informació addicional.\n" +"del manual de cfdisk per a informació addicional.\n" #: fdisk/cfdisk.c:527 msgid "FATAL ERROR" @@ -1370,7 +1342,7 @@ msgstr "La partició acaba despres de la fí del disc" #: fdisk/cfdisk.c:910 msgid "Partition ends in the final partial cylinder" -msgstr "" +msgstr "La partició acaba en l'últim cilindre parcial" #: fdisk/cfdisk.c:934 msgid "logical partitions not in disk order" @@ -1385,16 +1357,12 @@ msgid "enlarged logical partitions overlap" msgstr "solapament de les particions lògiques ampliades" #: fdisk/cfdisk.c:969 -msgid "" -"!!!! Internal error creating logical drive with no extended partition !!!!" -msgstr "" -"!!!! Error intern al crear una unitat lògica sense partició estesa !!!!" +msgid "!!!! Internal error creating logical drive with no extended partition !!!!" +msgstr "!!!! Error intern al crear una unitat lògica sense partició estesa !!!!" #: fdisk/cfdisk.c:980 fdisk/cfdisk.c:992 -msgid "" -"Cannot create logical drive here -- would create two extended partitions" -msgstr "" -"No es pot crear una unitat lògica aquí; es crearan dos particions esteses" +msgid "Cannot create logical drive here -- would create two extended partitions" +msgstr "No es pot crear una unitat lògica aquí; es crearan dos particions esteses" #: fdisk/cfdisk.c:1140 msgid "Menu item too long. Menu may look odd." @@ -1404,703 +1372,677 @@ msgstr "Ítem del menú massa llarg; l'aspecte del menú pot ser estrany." msgid "Menu without direction. Defaulting horizontal." msgstr "Menú sense direcció; l'opció per defecte és horitzontal." -#: fdisk/cfdisk.c:1334 +#: fdisk/cfdisk.c:1324 msgid "Illegal key" msgstr "Tecla no permesa" -#: fdisk/cfdisk.c:1357 +#: fdisk/cfdisk.c:1347 msgid "Press a key to continue" msgstr "Premeu una tecla per a continuar" -#: fdisk/cfdisk.c:1404 fdisk/cfdisk.c:1974 fdisk/cfdisk.c:2505 -#: fdisk/cfdisk.c:2507 +#: fdisk/cfdisk.c:1394 fdisk/cfdisk.c:1964 fdisk/cfdisk.c:2495 +#: fdisk/cfdisk.c:2497 msgid "Primary" msgstr "Primària" -#: fdisk/cfdisk.c:1404 +#: fdisk/cfdisk.c:1394 msgid "Create a new primary partition" msgstr "Crear una nova partició primària" -#: fdisk/cfdisk.c:1405 fdisk/cfdisk.c:1974 fdisk/cfdisk.c:2504 -#: fdisk/cfdisk.c:2507 +#: fdisk/cfdisk.c:1395 fdisk/cfdisk.c:1964 fdisk/cfdisk.c:2494 +#: fdisk/cfdisk.c:2497 msgid "Logical" msgstr "Lògica" -#: fdisk/cfdisk.c:1405 +#: fdisk/cfdisk.c:1395 msgid "Create a new logical partition" msgstr "Crear una nova partició lògica" -#: fdisk/cfdisk.c:1406 fdisk/cfdisk.c:1461 fdisk/cfdisk.c:2179 +#: fdisk/cfdisk.c:1396 fdisk/cfdisk.c:1451 fdisk/cfdisk.c:2169 msgid "Cancel" msgstr "Cancel·lar" -#: fdisk/cfdisk.c:1406 fdisk/cfdisk.c:1461 +#: fdisk/cfdisk.c:1396 fdisk/cfdisk.c:1451 msgid "Don't create a partition" msgstr "No crear cap partició" -#: fdisk/cfdisk.c:1422 +#: fdisk/cfdisk.c:1412 msgid "!!! Internal error !!!" msgstr "!!! Error intern !!!" -#: fdisk/cfdisk.c:1425 +#: fdisk/cfdisk.c:1415 msgid "Size (in MB): " msgstr "Mida (en MB): " -#: fdisk/cfdisk.c:1459 +#: fdisk/cfdisk.c:1449 msgid "Beginning" msgstr "Principi" -#: fdisk/cfdisk.c:1459 +#: fdisk/cfdisk.c:1449 msgid "Add partition at beginning of free space" msgstr "Afegir partició al principi de l'espai lliure" -#: fdisk/cfdisk.c:1460 +#: fdisk/cfdisk.c:1450 msgid "End" msgstr "Final" -#: fdisk/cfdisk.c:1460 +#: fdisk/cfdisk.c:1450 msgid "Add partition at end of free space" msgstr "Afegir partició al final de l'espai lliure" -#: fdisk/cfdisk.c:1478 +#: fdisk/cfdisk.c:1468 msgid "No room to create the extended partition" msgstr "No hi ha espai per a crear la partició estesa" -#: fdisk/cfdisk.c:1522 +#: fdisk/cfdisk.c:1512 msgid "No partition table or unknown signature on partition table" msgstr "No hi ha taula de partició o aquesta té una firma desconeguda" -#: fdisk/cfdisk.c:1524 +#: fdisk/cfdisk.c:1514 msgid "Do you wish to start with a zero table [y/N] ?" msgstr "Desitgeu començar amb una taula buida [s/N]?" -#: fdisk/cfdisk.c:1576 +#: fdisk/cfdisk.c:1566 msgid "You specified more cylinders than fit on disk" msgstr "Heu especificat més cilindres dels que caben al disc" -#: fdisk/cfdisk.c:1606 +#: fdisk/cfdisk.c:1596 msgid "Cannot open disk drive" msgstr "No es pot obrir la unitat de disc" -#: fdisk/cfdisk.c:1608 fdisk/cfdisk.c:1787 +#: fdisk/cfdisk.c:1598 fdisk/cfdisk.c:1777 msgid "Opened disk read-only - you have no permission to write" msgstr "El disc obert és de sols lectura; no teniu permís per a escriure-hi" -#: fdisk/cfdisk.c:1629 +#: fdisk/cfdisk.c:1619 msgid "Cannot get disk size" msgstr "No es pot obtindre la mida del disc" -#: fdisk/cfdisk.c:1654 +#: fdisk/cfdisk.c:1644 msgid "Bad primary partition" msgstr "Partició primària incorrecta" -#: fdisk/cfdisk.c:1684 +#: fdisk/cfdisk.c:1674 msgid "Bad logical partition" msgstr "Partició lògica incorrecta" -#: fdisk/cfdisk.c:1799 +#: fdisk/cfdisk.c:1789 msgid "Warning!! This may destroy data on your disk!" msgstr "Atenció: Això pot destruir les dades del vostre disc!" -#: fdisk/cfdisk.c:1803 +#: fdisk/cfdisk.c:1793 msgid "Are you sure you want write the partition table to disk? (yes or no): " -msgstr "" -"Esteu segurs de que voleu escriure la taula de particions al disc? (si o " -"no): " +msgstr "Esteu segurs de que voleu escriure la taula de particions al disc? (si o no): " -#: fdisk/cfdisk.c:1809 +#: fdisk/cfdisk.c:1799 msgid "no" msgstr "no" -#: fdisk/cfdisk.c:1810 +#: fdisk/cfdisk.c:1800 msgid "Did not write partition table to disk" msgstr "No s'ha escrit la taula de particions al disc" -#: fdisk/cfdisk.c:1812 +#: fdisk/cfdisk.c:1802 msgid "yes" msgstr "si" -#: fdisk/cfdisk.c:1815 +#: fdisk/cfdisk.c:1805 msgid "Please enter `yes' or `no'" msgstr "Si us plau escriviu `si' o `no'" -#: fdisk/cfdisk.c:1819 +#: fdisk/cfdisk.c:1809 msgid "Writing partition table to disk..." msgstr "Escrivint la taula de particions al disc..." -#: fdisk/cfdisk.c:1844 fdisk/cfdisk.c:1848 +#: fdisk/cfdisk.c:1834 fdisk/cfdisk.c:1838 msgid "Wrote partition table to disk" msgstr "Taula de particions del disc, escrita" -#: fdisk/cfdisk.c:1846 -msgid "" -"Wrote partition table, but re-read table failed. Reboot to update table." -msgstr "" -"S'ha escrit la taula de particions, però la nova lectura de la taula ha " -"fallat. Reinicieu per a actualitzar-la." +#: fdisk/cfdisk.c:1836 +msgid "Wrote partition table, but re-read table failed. Reboot to update table." +msgstr "S'ha escrit la taula de particions, però la nova lectura de la taula ha fallat. Reinicieu per a actualitzar-la." -#: fdisk/cfdisk.c:1856 +#: fdisk/cfdisk.c:1846 msgid "No primary partitions are marked bootable. DOS MBR cannot boot this." -msgstr "" -"No hi han particions primàries marcades com a d'arrencada. Així la MBR del " -"DOS no podrà arrencar." +msgstr "No hi han particions primàries marcades com a d'arrencada. Així la MBR del DOS no podrà arrencar." -#: fdisk/cfdisk.c:1858 -msgid "" -"More than one primary partition is marked bootable. DOS MBR cannot boot this." -msgstr "" -"Hi ha més d'una partició primària marcada com d'arrencada. Així la MBR del " -"DOS no podrà arrencar." +#: fdisk/cfdisk.c:1848 +msgid "More than one primary partition is marked bootable. DOS MBR cannot boot this." +msgstr "Hi ha més d'una partició primària marcada com d'arrencada. Així la MBR del DOS no podrà arrencar." -#: fdisk/cfdisk.c:1916 fdisk/cfdisk.c:2035 fdisk/cfdisk.c:2119 +#: fdisk/cfdisk.c:1906 fdisk/cfdisk.c:2025 fdisk/cfdisk.c:2109 msgid "Enter filename or press RETURN to display on screen: " -msgstr "" -"Escriviu el nom del fitxer o premeu Intro per a visualitzar-lo en pantalla: " +msgstr "Escriviu el nom del fitxer o premeu Intro per a visualitzar-lo en pantalla: " -#: fdisk/cfdisk.c:1925 fdisk/cfdisk.c:2043 fdisk/cfdisk.c:2127 +#: fdisk/cfdisk.c:1915 fdisk/cfdisk.c:2033 fdisk/cfdisk.c:2117 #, c-format msgid "Cannot open file '%s'" msgstr "No es pot obrir el fitxer '%s'" -#: fdisk/cfdisk.c:1936 +#: fdisk/cfdisk.c:1926 #, c-format msgid "Disk Drive: %s\n" msgstr "Unitat de disc: %s\n" -#: fdisk/cfdisk.c:1938 +#: fdisk/cfdisk.c:1928 msgid "Sector 0:\n" msgstr "Sector 0:\n" -#: fdisk/cfdisk.c:1945 +#: fdisk/cfdisk.c:1935 #, c-format msgid "Sector %d:\n" msgstr "Sector %d:\n" -#: fdisk/cfdisk.c:1965 +#: fdisk/cfdisk.c:1955 msgid " None " msgstr " Cap " -#: fdisk/cfdisk.c:1967 +#: fdisk/cfdisk.c:1957 msgid " Pri/Log" msgstr " Pri/Lòg" -#: fdisk/cfdisk.c:1969 +#: fdisk/cfdisk.c:1959 msgid " Primary" msgstr " Primària" -#: fdisk/cfdisk.c:1971 +#: fdisk/cfdisk.c:1961 msgid " Logical" msgstr " Lògica" #. odd flag on end #. type id #. type name -#: fdisk/cfdisk.c:2009 fdisk/fdisk.c:1392 fdisk/fdisk.c:1697 +#: fdisk/cfdisk.c:1999 fdisk/fdisk.c:1392 fdisk/fdisk.c:1697 #: fdisk/fdisksgilabel.c:237 fdisk/fdisksunlabel.c:692 fdisk/sfdisk.c:581 msgid "Unknown" msgstr "Desconegut" -#: fdisk/cfdisk.c:2015 +#: fdisk/cfdisk.c:2005 #, c-format msgid "Boot (%02X)" msgstr "Arren.(%02X)" -#: fdisk/cfdisk.c:2017 fdisk/cfdisk.c:2513 +#: fdisk/cfdisk.c:2007 fdisk/cfdisk.c:2503 #, c-format msgid "Unknown (%02X)" msgstr "Desconegut (%02X)" -#: fdisk/cfdisk.c:2019 +#: fdisk/cfdisk.c:2009 #, c-format msgid "None (%02X)" msgstr "Cap (%02X)" -#: fdisk/cfdisk.c:2054 fdisk/cfdisk.c:2138 +#: fdisk/cfdisk.c:2044 fdisk/cfdisk.c:2128 #, c-format msgid "Partition Table for %s\n" msgstr "Taula de particions per a %s\n" -#: fdisk/cfdisk.c:2056 +#: fdisk/cfdisk.c:2046 msgid " First Last\n" -msgstr " Primer Últim\n" +msgstr " Primer Últim\n" -#: fdisk/cfdisk.c:2057 -msgid "" -" # Type Sector Sector Offset Length Filesystem Type (ID) Flags\n" -msgstr "" -" # Tipus Sector Sector Despl. Longitud (ID) Sistema Fitxers " -"Etiqueta\n" +#: fdisk/cfdisk.c:2047 +msgid " # Type Sector Sector Offset Length Filesystem Type (ID) Flags\n" +msgstr " # Tipus sector sector Despl. Longitud (ID) Sistema Fitxers Etiqueta\n" -#: fdisk/cfdisk.c:2058 -msgid "" -"-- ------- -------- --------- ------ --------- ---------------------- " -"---------\n" -msgstr "" -"-- ------- -------- --------- ------ --------- ---------------------- " -"---------\n" +#: fdisk/cfdisk.c:2048 +msgid "-- ------- -------- --------- ------ --------- ---------------------- ---------\n" +msgstr "-- ------- -------- --------- ------ --------- ---------------------- ---------\n" #. Three-line heading. Read "Start Sector" etc vertically. -#: fdisk/cfdisk.c:2141 +#: fdisk/cfdisk.c:2131 msgid " ---Starting--- ----Ending---- Start Number of\n" -msgstr " ----Inici---- -----Final---- Sector Número de\n" +msgstr " ----Inici----- -----Final---- Sector Nombre de\n" -#: fdisk/cfdisk.c:2142 +#: fdisk/cfdisk.c:2132 msgid " # Flags Head Sect Cyl ID Head Sect Cyl Sector Sectors\n" -msgstr " # Indi. Cap. Sec. Cil. ID Capç.Sec. Cil. Sector Sectors\n" +msgstr " # Indi. Cap. Sec. Cil. ID Cap. Sec. Cil. d'inici sectors\n" -#: fdisk/cfdisk.c:2143 +#: fdisk/cfdisk.c:2133 msgid "-- ----- ---- ---- ---- ---- ---- ---- ---- -------- ---------\n" msgstr "-- ----- ---- ---- ---- ---- ---- ---- ---- -------- ---------\n" -#: fdisk/cfdisk.c:2176 +#: fdisk/cfdisk.c:2166 msgid "Raw" msgstr "En cru" -#: fdisk/cfdisk.c:2176 +#: fdisk/cfdisk.c:2166 msgid "Print the table using raw data format" msgstr "Imprimir la taula utilitzant el format de dades en cru" -#: fdisk/cfdisk.c:2177 fdisk/cfdisk.c:2279 +#: fdisk/cfdisk.c:2167 fdisk/cfdisk.c:2269 msgid "Sectors" msgstr "Sectors" -#: fdisk/cfdisk.c:2177 +#: fdisk/cfdisk.c:2167 msgid "Print the table ordered by sectors" msgstr "Imprimir la taula ordenada per sectors" -#: fdisk/cfdisk.c:2178 +#: fdisk/cfdisk.c:2168 msgid "Table" msgstr "Taula" -#: fdisk/cfdisk.c:2178 +#: fdisk/cfdisk.c:2168 msgid "Just print the partition table" msgstr "Sols imprimir la taula de particions" -#: fdisk/cfdisk.c:2179 +#: fdisk/cfdisk.c:2169 msgid "Don't print the table" msgstr "No imprimir la taula" -#: fdisk/cfdisk.c:2207 +#: fdisk/cfdisk.c:2197 msgid "Help Screen for cfdisk" msgstr "Pantalla d'ajuda per a cfdisk" -#: fdisk/cfdisk.c:2209 +#: fdisk/cfdisk.c:2199 msgid "This is cfdisk, a curses based disk partitioning program, which" -msgstr "" -"Això és el cfdisk, un programa per al particionament del disc basat en " -"curses," +msgstr "Això és el cfdisk, un programa per al particionament del disc basat en" -#: fdisk/cfdisk.c:2210 +#: fdisk/cfdisk.c:2200 msgid "allows you to create, delete and modify partitions on your hard" -msgstr "aquest us permetrà crear, suprimir i modificar particions en el vostre" +msgstr "curses, el qual us permetrà crear, suprimir i modificar particions en" -#: fdisk/cfdisk.c:2211 +#: fdisk/cfdisk.c:2201 msgid "disk drive." -msgstr "disc dur." +msgstr "el vostre disc dur." -#: fdisk/cfdisk.c:2213 +#: fdisk/cfdisk.c:2203 msgid "Copyright (C) 1994-1999 Kevin E. Martin & aeb" msgstr "Copyright (C) 1994-1999 Kevin E. Martin & aeb" -#: fdisk/cfdisk.c:2215 +#: fdisk/cfdisk.c:2205 msgid "Command Meaning" -msgstr "Comandament Significat" +msgstr "Comandament Significat" -#: fdisk/cfdisk.c:2216 +#: fdisk/cfdisk.c:2206 msgid "------- -------" -msgstr "------- -------" +msgstr "----------- ----------" -#: fdisk/cfdisk.c:2217 +#: fdisk/cfdisk.c:2207 msgid " b Toggle bootable flag of the current partition" -msgstr " b Fixa l'etiqueta d'arrencada en l'actual partició" +msgstr " b Fixa l'etiqueta d'arrencada en la partició actual" -#: fdisk/cfdisk.c:2218 +#: fdisk/cfdisk.c:2208 msgid " d Delete the current partition" msgstr " d Suprimeix l'actual partició" -#: fdisk/cfdisk.c:2219 +#: fdisk/cfdisk.c:2209 msgid " g Change cylinders, heads, sectors-per-track parameters" -msgstr "" -" g Canvia paràmetres de cilindres, capçals i sectors per pista" +msgstr " g Canvia paràmetres de cilindres, capçals i sectors per pista" -#: fdisk/cfdisk.c:2220 +#: fdisk/cfdisk.c:2210 msgid " WARNING: This option should only be used by people who" msgstr " ATENCIÓ: Aquesta opció sols hauria de ser usada per gent" -#: fdisk/cfdisk.c:2221 +#: fdisk/cfdisk.c:2211 msgid " know what they are doing." msgstr " que conegui el funcionament de la mateixa." -#: fdisk/cfdisk.c:2222 +#: fdisk/cfdisk.c:2212 msgid " h Print this screen" msgstr " h Imprimeix aquesta pantalla" -#: fdisk/cfdisk.c:2223 +#: fdisk/cfdisk.c:2213 msgid " m Maximize disk usage of the current partition" msgstr " m Maximitza l'utilització de disc de la partició actual" -#: fdisk/cfdisk.c:2224 +#: fdisk/cfdisk.c:2214 msgid " Note: This may make the partition incompatible with" msgstr " Nota: Aquesta opció pot fer la partició incompatible" -#: fdisk/cfdisk.c:2225 +#: fdisk/cfdisk.c:2215 msgid " DOS, OS/2, ..." msgstr " amb DOS, OS/2, ..." -#: fdisk/cfdisk.c:2226 +#: fdisk/cfdisk.c:2216 msgid " n Create new partition from free space" msgstr " n Crea una nova partició des de l'espai lliure" -#: fdisk/cfdisk.c:2227 +#: fdisk/cfdisk.c:2217 msgid " p Print partition table to the screen or to a file" -msgstr "" -" p Imprimeix la taula de particions en la pantalla o en un fitxer" +msgstr " p Imprimeix la taula de particions en la pantalla o en un fitxer" -#: fdisk/cfdisk.c:2228 +#: fdisk/cfdisk.c:2218 msgid " There are several different formats for the partition" msgstr " Hi han diversos formats diferents per a la partició" -#: fdisk/cfdisk.c:2229 +#: fdisk/cfdisk.c:2219 msgid " that you can choose from:" msgstr " entre els que podeu escollir:" -#: fdisk/cfdisk.c:2230 +#: fdisk/cfdisk.c:2220 msgid " r - Raw data (exactly what would be written to disk)" -msgstr "" -" r - Dades en cru (exactament el que s'escriuria al disc)" +msgstr " r - Dades en cru (exactament el que s'escriurà al disc)" -#: fdisk/cfdisk.c:2231 +#: fdisk/cfdisk.c:2221 msgid " s - Table ordered by sectors" msgstr " s - Taula ordenada per sectors" -#: fdisk/cfdisk.c:2232 +#: fdisk/cfdisk.c:2222 msgid " t - Table in raw format" msgstr " t - Taula en format en cru" -#: fdisk/cfdisk.c:2233 +#: fdisk/cfdisk.c:2223 msgid " q Quit program without writing partition table" -msgstr " q Sortir del programa sense escriure la taula de particions" +msgstr " q Surt del programa sense escriure la taula de particions" -#: fdisk/cfdisk.c:2234 +#: fdisk/cfdisk.c:2224 msgid " t Change the filesystem type" -msgstr " t Canviar el tipus del sistema de fitxers" +msgstr " t Canvia el tipus del sistema de fitxers" -#: fdisk/cfdisk.c:2235 +#: fdisk/cfdisk.c:2225 msgid " u Change units of the partition size display" -msgstr " u Canviar les unitats de la mida visualitzava de la partició" +msgstr " u Canvia les unitats de la mida visualitzava de la partició" -#: fdisk/cfdisk.c:2236 +#: fdisk/cfdisk.c:2226 msgid " Rotates through MB, sectors and cylinders" msgstr " Alterna entre MB, sectors i cilindres" -#: fdisk/cfdisk.c:2237 +#: fdisk/cfdisk.c:2227 msgid " W Write partition table to disk (must enter upper case W)" msgstr " W Escriu la taula de particions al disc (W en majúscula)" -#: fdisk/cfdisk.c:2238 +#: fdisk/cfdisk.c:2228 msgid " Since this might destroy data on the disk, you must" msgstr " Donat que això destruirà les dades del disc, haureu" -#: fdisk/cfdisk.c:2239 +#: fdisk/cfdisk.c:2229 msgid " either confirm or deny the write by entering `yes' or" -msgstr " de confirmar o denegar escrivint `si' o" +msgstr " de confirmar o denegar escrivint `si' o" -#: fdisk/cfdisk.c:2240 +#: fdisk/cfdisk.c:2230 msgid " `no'" -msgstr " `no'" +msgstr " `no'" -#: fdisk/cfdisk.c:2241 +#: fdisk/cfdisk.c:2231 msgid "Up Arrow Move cursor to the previous partition" -msgstr "Cursor amunt Desplaçar el cursor a l'anterior partició" +msgstr "Fletxa amunt Desplaça el cursor a l'anterior partició" -#: fdisk/cfdisk.c:2242 +#: fdisk/cfdisk.c:2232 msgid "Down Arrow Move cursor to the next partition" -msgstr "Cursor avall Desplaçar el cursor a la següent partició" +msgstr "Fletxa avall Desplaça el cursor a la següent partició" -#: fdisk/cfdisk.c:2243 +#: fdisk/cfdisk.c:2233 msgid "CTRL-L Redraws the screen" -msgstr "Ctrl-L Redibuixar la pantalla" +msgstr "Ctrl-L Redibuixa la pantalla" -#: fdisk/cfdisk.c:2244 +#: fdisk/cfdisk.c:2234 msgid " ? Print this screen" -msgstr " ? Imprimir aquesta pantalla" +msgstr " ? Imprimeix aquesta pantalla" -#: fdisk/cfdisk.c:2246 +#: fdisk/cfdisk.c:2236 msgid "Note: All of the commands can be entered with either upper or lower" msgstr "Nota: Tots els comandaments es poden escriure en majúscules o" -#: fdisk/cfdisk.c:2247 +#: fdisk/cfdisk.c:2237 msgid "case letters (except for Writes)." msgstr "minúscules (excepte W per a escriure)." -#: fdisk/cfdisk.c:2277 fdisk/cfdisk.c:2607 fdisk/fdisksunlabel.c:322 +#: fdisk/cfdisk.c:2267 fdisk/cfdisk.c:2597 fdisk/fdisksunlabel.c:322 #: fdisk/fdisksunlabel.c:324 msgid "Cylinders" msgstr "Cilindres" -#: fdisk/cfdisk.c:2277 +#: fdisk/cfdisk.c:2267 msgid "Change cylinder geometry" msgstr "Canviar la geometria dels cilindres" -#: fdisk/cfdisk.c:2278 fdisk/fdisksunlabel.c:319 +#: fdisk/cfdisk.c:2268 fdisk/fdisksunlabel.c:319 msgid "Heads" msgstr "Capçals" -#: fdisk/cfdisk.c:2278 +#: fdisk/cfdisk.c:2268 msgid "Change head geometry" msgstr "Canviar la geometria dels capçals" -#: fdisk/cfdisk.c:2279 +#: fdisk/cfdisk.c:2269 msgid "Change sector geometry" msgstr "Canviar la geometria dels sectors" -#: fdisk/cfdisk.c:2280 +#: fdisk/cfdisk.c:2270 msgid "Done" msgstr "Fet" -#: fdisk/cfdisk.c:2280 +#: fdisk/cfdisk.c:2270 msgid "Done with changing geometry" msgstr "S'ha finalitzat el canvi de geometria" -#: fdisk/cfdisk.c:2293 +#: fdisk/cfdisk.c:2283 msgid "Enter the number of cylinders: " -msgstr "Escriviu el número de cilindres: " +msgstr "Escriviu el nombre de cilindres: " -#: fdisk/cfdisk.c:2305 fdisk/cfdisk.c:2875 +#: fdisk/cfdisk.c:2295 fdisk/cfdisk.c:2865 msgid "Illegal cylinders value" msgstr "Valor dels cilindres no permes" -#: fdisk/cfdisk.c:2311 +#: fdisk/cfdisk.c:2301 msgid "Enter the number of heads: " msgstr "Escriviu el nombre de capçals: " -#: fdisk/cfdisk.c:2318 fdisk/cfdisk.c:2885 +#: fdisk/cfdisk.c:2308 fdisk/cfdisk.c:2875 msgid "Illegal heads value" msgstr "Valor dels capçals no permes" -#: fdisk/cfdisk.c:2324 +#: fdisk/cfdisk.c:2314 msgid "Enter the number of sectors per track: " -msgstr "Escriviu el número de sectors per pista: " +msgstr "Escriviu el nombre de sectors per pista: " -#: fdisk/cfdisk.c:2331 fdisk/cfdisk.c:2892 +#: fdisk/cfdisk.c:2321 fdisk/cfdisk.c:2882 msgid "Illegal sectors value" msgstr "Valor dels sectors no permes" -#: fdisk/cfdisk.c:2434 +#: fdisk/cfdisk.c:2424 msgid "Enter filesystem type: " msgstr "Escriviu el tipus del sistema de fitxers: " -#: fdisk/cfdisk.c:2452 +#: fdisk/cfdisk.c:2442 msgid "Cannot change FS Type to empty" msgstr "No es pot canviar el tipus del sistema de fitxers a buit" -#: fdisk/cfdisk.c:2454 +#: fdisk/cfdisk.c:2444 msgid "Cannot change FS Type to extended" msgstr "No es pot canviar el tipus del sistema de fitxers a estes" -#: fdisk/cfdisk.c:2482 fdisk/fdisksunlabel.c:45 +#: fdisk/cfdisk.c:2472 fdisk/fdisksunlabel.c:45 msgid "Boot" msgstr "Arrencada" -#: fdisk/cfdisk.c:2484 +#: fdisk/cfdisk.c:2474 #, c-format msgid "Unk(%02X)" msgstr "Desc.(%02X)" -#: fdisk/cfdisk.c:2487 fdisk/cfdisk.c:2490 +#: fdisk/cfdisk.c:2477 fdisk/cfdisk.c:2480 msgid ", NC" msgstr ", NC" -#: fdisk/cfdisk.c:2495 fdisk/cfdisk.c:2498 +#: fdisk/cfdisk.c:2485 fdisk/cfdisk.c:2488 msgid "NC" msgstr "NC" -#: fdisk/cfdisk.c:2506 +#: fdisk/cfdisk.c:2496 msgid "Pri/Log" msgstr "Pri/Lòg" -#: fdisk/cfdisk.c:2582 +#: fdisk/cfdisk.c:2572 #, c-format msgid "Disk Drive: %s" msgstr "Unitat de disc: %s" -#: fdisk/cfdisk.c:2588 +#: fdisk/cfdisk.c:2578 #, c-format msgid "Size: %lld bytes, %ld MB" msgstr "Mida: %lld octets, %ld MB" -#: fdisk/cfdisk.c:2591 +#: fdisk/cfdisk.c:2581 #, c-format msgid "Size: %lld bytes, %ld.%ld GB" msgstr "Mida: %lld octets, %ld.%ld GB" -#: fdisk/cfdisk.c:2595 +#: fdisk/cfdisk.c:2585 #, c-format msgid "Heads: %d Sectors per Track: %d Cylinders: %d" msgstr "Capçals: %d Sectors per pista: %d Cilindres: %d" -#: fdisk/cfdisk.c:2599 +#: fdisk/cfdisk.c:2589 msgid "Name" msgstr "Nom" -#: fdisk/cfdisk.c:2600 +#: fdisk/cfdisk.c:2590 msgid "Flags" msgstr "Etiquetes" -#: fdisk/cfdisk.c:2601 +#: fdisk/cfdisk.c:2591 msgid "Part Type" msgstr "Tipus part." -#: fdisk/cfdisk.c:2602 +#: fdisk/cfdisk.c:2592 msgid "FS Type" msgstr "Tipus Sis.Fitx." -#: fdisk/cfdisk.c:2603 +#: fdisk/cfdisk.c:2593 msgid "[Label]" msgstr "[Etiqueta]" -#: fdisk/cfdisk.c:2605 +#: fdisk/cfdisk.c:2595 msgid " Sectors" msgstr " Sectors" -#: fdisk/cfdisk.c:2609 +#: fdisk/cfdisk.c:2599 msgid "Size (MB)" msgstr "Mida (MB)" -#: fdisk/cfdisk.c:2611 +#: fdisk/cfdisk.c:2601 msgid "Size (GB)" msgstr "Mida (GB)" -#: fdisk/cfdisk.c:2666 +#: fdisk/cfdisk.c:2656 msgid "Bootable" msgstr "Arrencada" -#: fdisk/cfdisk.c:2666 +#: fdisk/cfdisk.c:2656 msgid "Toggle bootable flag of the current partition" msgstr "Establir l'etiqueta de la partició actual com d'arrencada" -#: fdisk/cfdisk.c:2667 +#: fdisk/cfdisk.c:2657 msgid "Delete" msgstr "Suprimir" -#: fdisk/cfdisk.c:2667 +#: fdisk/cfdisk.c:2657 msgid "Delete the current partition" msgstr "Suprimir l'actual partició" -#: fdisk/cfdisk.c:2668 +#: fdisk/cfdisk.c:2658 msgid "Geometry" msgstr "Geometria" -#: fdisk/cfdisk.c:2668 +#: fdisk/cfdisk.c:2658 msgid "Change disk geometry (experts only)" msgstr "Canviar la geometria del disc (sols usuaris experts)" -#: fdisk/cfdisk.c:2669 +#: fdisk/cfdisk.c:2659 msgid "Help" msgstr "Ajuda" -#: fdisk/cfdisk.c:2669 +#: fdisk/cfdisk.c:2659 msgid "Print help screen" msgstr "Imprimir pantalla d'ajuda" -#: fdisk/cfdisk.c:2670 +#: fdisk/cfdisk.c:2660 msgid "Maximize" msgstr "Maximitza" -#: fdisk/cfdisk.c:2670 +#: fdisk/cfdisk.c:2660 msgid "Maximize disk usage of the current partition (experts only)" -msgstr "" -"Maximitzar la utilització del disc en la partició actual (sols usuaris " -"experts)" +msgstr "Maximitzar la utilització del disc en la partició actual (sols usuaris experts)" -#: fdisk/cfdisk.c:2671 +#: fdisk/cfdisk.c:2661 msgid "New" msgstr "Nova" -#: fdisk/cfdisk.c:2671 +#: fdisk/cfdisk.c:2661 msgid "Create new partition from free space" msgstr "Crear una nova partició des de l'espai lliure" -#: fdisk/cfdisk.c:2672 +#: fdisk/cfdisk.c:2662 msgid "Print" msgstr "Imprimir" -#: fdisk/cfdisk.c:2672 +#: fdisk/cfdisk.c:2662 msgid "Print partition table to the screen or to a file" msgstr "Imprimir la taula de particions en la pantalla o en un fitxer" -#: fdisk/cfdisk.c:2673 +#: fdisk/cfdisk.c:2663 msgid "Quit" msgstr "Sortir" -#: fdisk/cfdisk.c:2673 +#: fdisk/cfdisk.c:2663 msgid "Quit program without writing partition table" msgstr "Sortir del programa sense escriure la taula de particions" -#: fdisk/cfdisk.c:2674 +#: fdisk/cfdisk.c:2664 msgid "Type" msgstr "Tipus" -#: fdisk/cfdisk.c:2674 +#: fdisk/cfdisk.c:2664 msgid "Change the filesystem type (DOS, Linux, OS/2 and so on)" msgstr "Canviar el tipus del sistema de fitxers (DOS, Linux, OS/2, etc.)" -#: fdisk/cfdisk.c:2675 +#: fdisk/cfdisk.c:2665 msgid "Units" msgstr "Unitats" -#: fdisk/cfdisk.c:2675 +#: fdisk/cfdisk.c:2665 msgid "Change units of the partition size display (MB, sect, cyl)" msgstr "Canviar les unitats de la mida de la partició (MB, sect., cil.)" -#: fdisk/cfdisk.c:2676 +#: fdisk/cfdisk.c:2666 msgid "Write" msgstr "Escriure" -#: fdisk/cfdisk.c:2676 +#: fdisk/cfdisk.c:2666 msgid "Write partition table to disk (this might destroy data)" msgstr "Escriure la taula de particions al disc (això pot destruir les dades)" -#: fdisk/cfdisk.c:2722 +#: fdisk/cfdisk.c:2712 msgid "Cannot make this partition bootable" msgstr "No es pot fer aquesta partició arrencable" -#: fdisk/cfdisk.c:2732 +#: fdisk/cfdisk.c:2722 msgid "Cannot delete an empty partition" msgstr "No es pot suprimir una partició buida" -#: fdisk/cfdisk.c:2752 fdisk/cfdisk.c:2754 +#: fdisk/cfdisk.c:2742 fdisk/cfdisk.c:2744 msgid "Cannot maximize this partition" msgstr "No es pot maximitzar aquesta partició" -#: fdisk/cfdisk.c:2762 +#: fdisk/cfdisk.c:2752 msgid "This partition is unusable" msgstr "Aquesta partició és inutilitzable" -#: fdisk/cfdisk.c:2764 +#: fdisk/cfdisk.c:2754 msgid "This partition is already in use" -msgstr "Aquesta partició ja està en us" +msgstr "Aquesta partició ja està en ús" -#: fdisk/cfdisk.c:2781 +#: fdisk/cfdisk.c:2771 msgid "Cannot change the type of an empty partition" msgstr "No es pot canviar el tipus d'una partició buida" -#: fdisk/cfdisk.c:2808 fdisk/cfdisk.c:2814 +#: fdisk/cfdisk.c:2798 fdisk/cfdisk.c:2804 msgid "No more partitions" msgstr "No hi ha més particions" -#: fdisk/cfdisk.c:2821 +#: fdisk/cfdisk.c:2811 msgid "Illegal command" msgstr "Comandament no permès" -#: fdisk/cfdisk.c:2831 -#, fuzzy +#: fdisk/cfdisk.c:2821 msgid "Copyright (C) 1994-2002 Kevin E. Martin & aeb\n" -msgstr "Copyright (C) 1994-2000 Kevin E. Martin & aeb\n" +msgstr "Copyright (C) 1994-2002 Kevin E. Martin & aeb\n" #. Unfortunately, xgettext does not handle multi-line strings #. so, let's use explicit \n's instead -#: fdisk/cfdisk.c:2838 +#: fdisk/cfdisk.c:2828 #, c-format msgid "" "\n" @@ -2120,19 +2062,19 @@ msgid "" "\n" msgstr "" "\n" -"Usant:\n" -"Imprimir versió:\n" +"Usar:\n" +"Imprimir la versió:\n" " %s -v\n" -"Imprimir taula de particions:\n" +"Imprimir la taula de particions:\n" " %s -P {r|s|t} [opcions] dispositiu\n" -"Us interactiu:\n" +"Ús interactiu:\n" " %s [opcions] dispositiu\n" "\n" "Opcions:\n" -"-a: Emprar fletxa en comptes del ressaltat.\n" -"-z: Començar amb una taula de particions a zero en comptes de llegir\n" +"-a: Empra la fletxa en comptes del ressaltat.\n" +"-z: Comença amb una taula de particions a zero en comptes de llegir\n" " la del disc.\n" -"-c C -h H -s S: Modificar la idea del nucli sobre el nombre de cilindres,\n" +"-c C -h H -s S: Modifica la idea del nucli sobre el nombre de cilindres,\n" " el nombre de capçals i el nombre de sectors per pista.\n" "\n" @@ -2147,15 +2089,14 @@ msgid "" "-u: give Start and End in sector (instead of cylinder) units\n" "-b 2048: (for certain MO disks) use 2048-byte sectors\n" msgstr "" -"Useu: fdisk [-b SSZ] [-u] DISK Canviar la taula de particions\n" -" fdisk -l [-b SSZ] [-u] DISK Llista la(es) taula(es) de partició" -"(ons)\n" -" fdisk -s PARTICIÓ Augmentar l'espai en blocs\n" +"Useu: fdisk [-b SSZ] [-u] DISK Canvia la taula de particions\n" +" fdisk -l [-b SSZ] [-u] DISK Llista la(es) taula(es) de partició(ons)\n" +" fdisk -s PARTICIÓ Augmenta l'espai en blocs\n" " fdisk -v Dona la versió del fdisk\n" "Aquest DISC estarà sota /dev/hdb o /dev/sda i la PARTICIÓ serà quelcom\n" "a /dev/hda7\n" "-u: Dona el principi i final de la unitat en sectors (no en cilindres)\n" -"-b 2048: (pels discs MO) usa 2048 octets per sector\n" +"-b 2048: (per als discs MO) usa 2048 octets per sector\n" #: fdisk/fdisk.c:209 msgid "" @@ -2167,10 +2108,10 @@ msgid "" " ...\n" msgstr "" "Useu: fdisk [-l] [-b SSZ] [-u] dispositiu\n" -"P.e.: fdisk /dev/hda (per al primer disc IDE)\n" -" o: fdisk /dev/sdc (per al tercer disc SCSI)\n" -" o: fdisk /dev/eda (per a la primera unitat PS/2 ESDI)\n" -" o: fdisk /dev/rd/c0d0 o: fdisk /dev/ida/c0d0 (pels dispositius RAID)\n" +"P.ex.: fdisk /dev/hda (per al primer disc IDE)\n" +" o: fdisk /dev/sdc (per al tercer disc SCSI)\n" +" o: fdisk /dev/eda (per a la primera unitat PS/2 ESDI)\n" +" o: fdisk /dev/rd/c0d0 o: fdisk /dev/ida/c0d0 (per als dispositius RAID)\n" " ...\n" #: fdisk/fdisk.c:218 @@ -2438,8 +2379,7 @@ msgstr "Atenció: enllaç d'apuntador addicional en la taula de particions %d\n" #: fdisk/fdisk.c:666 #, c-format msgid "Warning: ignoring extra data in partition table %d\n" -msgstr "" -"Atenció: s'ignoren les dades addicionals en la taula de particions %d\n" +msgstr "Atenció: s'ignoren les dades addicionals en la taula de particions %d\n" #: fdisk/fdisk.c:711 msgid "" @@ -2471,12 +2411,8 @@ msgstr "" "Empreu el comandament 'b' per anar al mode BSD.\n" #: fdisk/fdisk.c:927 -msgid "" -"Device contains neither a valid DOS partition table, nor Sun, SGI or OSF " -"disklabel\n" -msgstr "" -"El dispositiu no conté una taula de particions DOS vàlida, així com tampoc " -"una etiqueta de disc Sun, SGI o OSF\n" +msgid "Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel\n" +msgstr "El dispositiu no conté una taula de particions DOS vàlida, així com tampoc una etiqueta de disc Sun, SGI o OSF\n" #: fdisk/fdisk.c:944 msgid "Internal error\n" @@ -2489,12 +2425,8 @@ msgstr "S'ignorarà la partició estesa addicional %d\n" #: fdisk/fdisk.c:969 #, c-format -msgid "" -"Warning: invalid flag 0x%04x of partition table %d will be corrected by w" -"(rite)\n" -msgstr "" -"Atenció: etiqueta 0x%04x invàlida de la taula de particions %d serà " -"corregida amb w(rite)\n" +msgid "Warning: invalid flag 0x%04x of partition table %d will be corrected by w(rite)\n" +msgstr "Atenció: etiqueta 0x%04x invàlida de la taula de particions %d serà corregida amb w(rite)\n" #: fdisk/fdisk.c:991 msgid "" @@ -2524,7 +2456,7 @@ msgstr "El valor està fora del rang.\n" #: fdisk/fdisk.c:1148 msgid "Partition number" -msgstr "Número de partició" +msgstr "Nombre de partició" #: fdisk/fdisk.c:1159 #, c-format @@ -2532,18 +2464,17 @@ msgid "Warning: partition %d has empty type\n" msgstr "Atenció: la partició %d és del tipus buit\n" #: fdisk/fdisk.c:1181 fdisk/fdisk.c:1207 -#, fuzzy, c-format +#, c-format msgid "Selected partition %d\n" -msgstr "S'ignorarà la partició estesa addicional %d\n" +msgstr "S'ha seleccionat la partició %d\n" #: fdisk/fdisk.c:1184 -#, fuzzy msgid "No partition is defined yet!\n" -msgstr "No hi han particions definides\n" +msgstr "No hi ha cap partició definida!\n" #: fdisk/fdisk.c:1210 msgid "All primary partitions have been defined already!\n" -msgstr "" +msgstr "Ja s'han definit totes les particions primàries!\n" #: fdisk/fdisk.c:1220 msgid "cylinder" @@ -2654,9 +2585,9 @@ msgid "should be (%d, %d, 1)\n" msgstr "ha de ser (%d, %d, 1)\n" #: fdisk/fdisk.c:1469 -#, fuzzy, c-format +#, c-format msgid "Partition %i does not end on cylinder boundary.\n" -msgstr "La partició %d no acaba en un límit de cilindre.\n" +msgstr "La partició %i no acaba en un límit de cilindre.\n" #: fdisk/fdisk.c:1473 #, c-format @@ -2664,34 +2595,32 @@ msgid "should be (%d, %d, %d)\n" msgstr "ha de ser (%d, %d, %d)\n" #: fdisk/fdisk.c:1485 -#, fuzzy, c-format +#, c-format msgid "" "\n" "Disk %s: %ld MB, %lld bytes\n" -msgstr "%s: No mida (%ld vs %ld) octets\n" +msgstr "" +"\n" +"Disc %s: %ld MiB, %lld octets\n" #: fdisk/fdisk.c:1488 -#, fuzzy, c-format +#, c-format msgid "" "\n" "Disk %s: %ld.%ld GB, %lld bytes\n" msgstr "" "\n" -"Disc %s: %d capçals, %d sectors, %d cilindres\n" -"\n" +"Disc %s: %ld.%ld GiB, %lld octets\n" #: fdisk/fdisk.c:1490 -#, fuzzy, c-format +#, c-format msgid "%d heads, %d sectors/track, %d cylinders" -msgstr "" -"\n" -"Disc %s: %d capçals, %d sectors, %d cilindres\n" -"\n" +msgstr "%d capçals, %d sectors/pista, %d cilindres" #: fdisk/fdisk.c:1493 #, c-format msgid ", total %lu sectors" -msgstr "" +msgstr ", total %lu sectors" #: fdisk/fdisk.c:1496 #, c-format @@ -2699,6 +2628,8 @@ msgid "" "Units = %s of %d * %d = %d bytes\n" "\n" msgstr "" +"Unitats = %s de %d * %d = %d octets\n" +"\n" #: fdisk/fdisk.c:1604 msgid "" @@ -2798,8 +2729,7 @@ msgstr "%d sectors no assignats\n" #: fdisk/fdisk.c:1862 fdisk/fdisksgilabel.c:661 fdisk/fdisksunlabel.c:507 #, c-format msgid "Partition %d is already defined. Delete it before re-adding it.\n" -msgstr "" -"La partició %d ja està definida. Esborreu-la abans de tornar-la a afegir.\n" +msgstr "La partició %d ja està definida. Esborreu-la abans de tornar-la a afegir.\n" #: fdisk/fdisk.c:1886 fdisk/fdiskbsdlabel.c:284 fdisk/fdisksgilabel.c:683 #: fdisk/fdisksunlabel.c:522 @@ -2835,7 +2765,7 @@ msgstr "" #: fdisk/fdisk.c:2023 fdisk/fdiskbsdlabel.c:618 msgid "The maximum number of partitions has been created\n" -msgstr "S'ha creat el màxim número de particions\n" +msgstr "S'ha creat el màxim nombre de particions\n" #: fdisk/fdisk.c:2031 msgid "You must delete some partition and add an extended partition first\n" @@ -2863,7 +2793,7 @@ msgstr "e estesa" #: fdisk/fdisk.c:2057 #, c-format msgid "Invalid partition number for type `%c'\n" -msgstr "Número de partició invàlida pel tipus `%c'\n" +msgstr "Nombre de partició no vàlid per al tipus `%c'\n" #: fdisk/fdisk.c:2093 msgid "" @@ -2921,20 +2851,19 @@ msgstr "Comandament expert (m per a l'ajuda): " #: fdisk/fdisk.c:2216 msgid "Number of cylinders" -msgstr "Número de cilindres" +msgstr "Nombre de cilindres" #: fdisk/fdisk.c:2243 msgid "Number of heads" -msgstr "Número de capçals" +msgstr "Nombre de capçals" #: fdisk/fdisk.c:2268 msgid "Number of sectors" -msgstr "Número de sectors" +msgstr "Nombre de sectors" #: fdisk/fdisk.c:2271 msgid "Warning: setting sector offset for DOS compatiblity\n" -msgstr "" -"Atenció: establint desplaçament del sector per a la compatibilitat amb DOS\n" +msgstr "Atenció: establint desplaçament del sector per a la compatibilitat amb DOS\n" #: fdisk/fdisk.c:2346 #, c-format @@ -2958,25 +2887,17 @@ msgstr "%c: comandament desconegut\n" #: fdisk/fdisk.c:2466 msgid "This kernel finds the sector size itself - -b option ignored\n" -msgstr "" -"Aquest nucli cerca la mida del sector por si mateix; l'opció -b serà " -"ignorada\n" +msgstr "Aquest nucli cerca la mida del sector por si mateix; l'opció -b serà ignorada\n" #: fdisk/fdisk.c:2470 -msgid "" -"Warning: the -b (set sector size) option should be used with one specified " -"device\n" -msgstr "" -"Atenció: l'opció -b (estableix la mida del sector) ha de ser usada amb un " -"dispositiu específic\n" +msgid "Warning: the -b (set sector size) option should be used with one specified device\n" +msgstr "Atenció: l'opció -b (estableix la mida del sector) ha de ser usada amb un dispositiu específic\n" #. OSF label, and no DOS label #: fdisk/fdisk.c:2529 #, c-format msgid "Detected an OSF/1 disklabel on %s, entering disklabel mode.\n" -msgstr "" -"A l'entrar el mode d'etiqueta, s'ha detectat una etiqueta de disc OSF/1 en %" -"s.\n" +msgstr "A l'entrar el mode d'etiqueta, s'ha detectat una etiqueta de disc OSF/1 en %s.\n" #: fdisk/fdisk.c:2539 msgid "Command (m for help): " @@ -3006,8 +2927,7 @@ msgid "" "\n" msgstr "" "\n" -"\tHo sento, no hi ha menú d'usuaris experts per a les taules de particions " -"SGI.\n" +"\tHo sento, no hi ha menú d'usuaris experts per a les taules de particions SGI.\n" "\n" #: fdisk/fdiskaixlabel.c:28 @@ -3387,17 +3307,12 @@ msgid "Linux RAID" msgstr "Linux RAID" #: fdisk/fdisksgilabel.c:158 -msgid "" -"According to MIPS Computer Systems, Inc the Label must not contain more than " -"512 bytes\n" -msgstr "" -"Segons la MIPS Computer Systems, Inc. l'etiqueta no pot contindre més de 512 " -"octets\n" +msgid "According to MIPS Computer Systems, Inc the Label must not contain more than 512 bytes\n" +msgstr "Segons la MIPS Computer Systems, Inc. l'etiqueta no pot contindre més de 512 octets\n" #: fdisk/fdisksgilabel.c:177 msgid "Detected sgi disklabel with wrong checksum.\n" -msgstr "" -"Detectada una etiqueta de disc sgi amb una suma de comprovació incorrecta.\n" +msgstr "Detectada una etiqueta de disc sgi amb una suma de comprovació incorrecta.\n" #: fdisk/fdisksgilabel.c:200 #, c-format @@ -3482,8 +3397,7 @@ msgid "" "\tBootfile must have a fully qualified pathname.\n" msgstr "" "\n" -"\tEl fitxer d'arrencada ha de tindre un nom de ruta completament " -"qualificat.\n" +"\tEl fitxer d'arrencada ha de tindre un nom de ruta completament qualificat.\n" #: fdisk/fdisksgilabel.c:321 msgid "" @@ -3493,8 +3407,7 @@ msgid "" msgstr "" "\n" "\tTingueu en compte que no es comprova l'existència del fitxer d'arrencada.\n" -"\tEl valor per defecte SGI és \"/unix\" i per a la còpia de seguretat \"/" -"unix.save\".\n" +"\tEl valor per defecte SGI és \"/unix\" i per a la còpia de seguretat \"/unix.save\".\n" #: fdisk/fdisksgilabel.c:349 #, c-format @@ -3624,8 +3537,7 @@ msgstr "El disc sencer ja està cobert amb particions.\n" #: fdisk/fdisksgilabel.c:680 msgid "You got a partition overlap on the disk. Fix it first!\n" -msgstr "" -"S'ha produït un solapament de particions en el disc. Corregiu això primer!\n" +msgstr "S'ha produït un solapament de particions en el disc. Corregiu això primer!\n" #: fdisk/fdisksgilabel.c:689 fdisk/fdisksgilabel.c:718 msgid "" @@ -3637,8 +3549,7 @@ msgstr "" #: fdisk/fdisksgilabel.c:705 msgid "You will get a partition overlap on the disk. Fix it first!\n" -msgstr "" -"Es produirà un solapament de particions en el disc. Corregiu això primer!\n" +msgstr "Es produirà un solapament de particions en el disc. Corregiu això primer!\n" #: fdisk/fdisksgilabel.c:710 #, c-format @@ -3832,8 +3743,7 @@ msgid "" "If you want to maintain SunOS/Solaris compatibility, consider leaving this\n" "partition as Whole disk (5), starting at 0, with %u sectors\n" msgstr "" -"Si desitgeu mantindre la compatibilitat amb SunOS/Solaris, considereu el " -"deixar\n" +"Si desitgeu mantindre la compatibilitat amb SunOS/Solaris, considereu el deixar\n" "aquesta partició com a Disc sencer (5), començant en 0, amb %u sectors\n" #: fdisk/fdisksunlabel.c:626 @@ -3889,11 +3799,11 @@ msgstr "%*s Etiqu. Comença Acaba Blocs Id Sistema\n" #: fdisk/fdisksunlabel.c:701 msgid "Number of alternate cylinders" -msgstr "Número de cilindres alternatius" +msgstr "Nombre de cilindres alternatius" #: fdisk/fdisksunlabel.c:734 msgid "Number of physical cylinders" -msgstr "Número de cilindres físics" +msgstr "Nombre de cilindres físics" #: fdisk/i386_sys_types.c:7 msgid "FAT12" @@ -4304,8 +4214,7 @@ msgstr "no es pot fer stat al fitxer de restaurar la partició (%s)\n" #: fdisk/sfdisk.c:319 msgid "partition restore file has wrong size - not restoring\n" -msgstr "" -"mida incorrecte del fitxer de restitució de la partició - no es restituirà\n" +msgstr "mida incorrecte del fitxer de restitució de la partició - no es restituirà\n" #: fdisk/sfdisk.c:323 msgid "out of memory?\n" @@ -4374,7 +4283,7 @@ msgid "" "Warning: unlikely number of sectors (%lu) - usually at most 63\n" "This will give problems with all software that uses C/H/S addressing.\n" msgstr "" -"Atenció: número improbable de sectors (%lu); normalment com a molt 63\n" +"Atenció: improbable nombre de sectors (%lu); normalment com a molt 63\n" "Això donarà problemes amb el programari que usi adreces Cil./Capç./Sector\n" #: fdisk/sfdisk.c:456 @@ -4388,29 +4297,18 @@ msgstr "" #: fdisk/sfdisk.c:538 #, c-format -msgid "" -"%s of partition %s has impossible value for head: %lu (should be in 0-%lu)\n" -msgstr "" -"%s de partició %s té un valor imposible per al capçal: %lu (hauria d'estar " -"entre 0 i %lu)\n" +msgid "%s of partition %s has impossible value for head: %lu (should be in 0-%lu)\n" +msgstr "%s de partició %s té un valor imposible per al capçal: %lu (hauria d'estar entre 0 i %lu)\n" #: fdisk/sfdisk.c:543 #, c-format -msgid "" -"%s of partition %s has impossible value for sector: %lu (should be in 1-%" -"lu)\n" -msgstr "" -"%s de partició %s té un valor imposible per al sector: %lu (hauria d'estar " -"entre 1 i %lu)\n" +msgid "%s of partition %s has impossible value for sector: %lu (should be in 1-%lu)\n" +msgstr "%s de partició %s té un valor imposible per al sector: %lu (hauria d'estar entre 1 i %lu)\n" #: fdisk/sfdisk.c:548 #, c-format -msgid "" -"%s of partition %s has impossible value for cylinders: %lu (should be in 0-%" -"lu)\n" -msgstr "" -"%s de partició %s té un valor imposible pels cilindres: %lu (hauria d'estar " -"entre 0 i %lu)\n" +msgid "%s of partition %s has impossible value for cylinders: %lu (should be in 0-%lu)\n" +msgstr "%s de partició %s té un valor imposible per als cilindres: %lu (hauria d'estar entre 0 i %lu)\n" #: fdisk/sfdisk.c:588 msgid "" @@ -4444,7 +4342,7 @@ msgstr "%s: aquesta partició no existeix\n" #: fdisk/sfdisk.c:813 msgid "unrecognized format - using sectors\n" -msgstr "Format no reconegut - usant els sectors\n" +msgstr "Format no reconegut; usant els sectors\n" #: fdisk/sfdisk.c:852 #, c-format @@ -4498,34 +4396,30 @@ msgstr " Disp. Arr. Comença Acaba #blocs Id Sistema\n" #: fdisk/sfdisk.c:885 #, c-format msgid "" -"Units = megabytes of 1048576 bytes, blocks of 1024 bytes, counting from %d\n" +"Units = mebibytes of 1048576 bytes, blocks of 1024 bytes, counting from %d\n" "\n" msgstr "" -"Unitats = megaoctets de 1048576 octets, blocs de 1024 octets, contant des de " -"%d\n" +"Unitats = MiB de 1048576 octets, blocs de 1024 octets, comptant des de %d\n" "\n" #: fdisk/sfdisk.c:887 -msgid " Device Boot Start End MB #blocks Id System\n" +msgid " Device Boot Start End MiB #blocks Id System\n" msgstr " Disp. Arr. Comen. Acaba MB #blocs Id Sistema\n" #: fdisk/sfdisk.c:1047 #, c-format msgid "\t\tstart: (c,h,s) expected (%ld,%ld,%ld) found (%ld,%ld,%ld)\n" -msgstr "" -"\t\tcomença: (cil.,capç.,sect.) esperat (%ld,%ld,%ld) trobat (%ld,%ld,%ld)\n" +msgstr "\t\tcomença: (cil.,capç.,sect.) esperat (%ld,%ld,%ld) trobat (%ld,%ld,%ld)\n" #: fdisk/sfdisk.c:1054 #, c-format msgid "\t\tend: (c,h,s) expected (%ld,%ld,%ld) found (%ld,%ld,%ld)\n" -msgstr "" -"\t\tacaba: (cil.,capç.,sect.) esperat (%ld,%ld,%ld) trobat (%ld,%ld,%ld)\n" +msgstr "\t\tacaba: (cil.,capç.,sect.) esperat (%ld,%ld,%ld) trobat (%ld,%ld,%ld)\n" #: fdisk/sfdisk.c:1057 #, c-format msgid "partition ends on cylinder %ld, beyond the end of the disk\n" -msgstr "" -"la partició cava en el cilindre %ld, més enllà de l'acabament del disc\n" +msgstr "la partició cava en el cilindre %ld, més enllà de l'acabament del disc\n" #: fdisk/sfdisk.c:1067 msgid "No partitions found\n" @@ -4554,8 +4448,7 @@ msgstr "estranyament, sols hi han definides %d particions.\n" #: fdisk/sfdisk.c:1131 #, c-format msgid "Warning: partition %s has size 0 but is not marked Empty\n" -msgstr "" -"Atenció: la partició %s té una mida 0 però no està marcada com a buida\n" +msgstr "Atenció: la partició %s té una mida 0 però no està marcada com a buida\n" #: fdisk/sfdisk.c:1134 #, c-format @@ -4630,8 +4523,7 @@ msgid "" "This does not matter for LILO, but the DOS MBR will not boot this disk.\n" msgstr "" "Atenció: hi ha més d'una partició primària marcada com d'arrencada (activa)\n" -"Això no és problema per al LILO, però el MBR del DOS no arrencarà aquest " -"disc.\n" +"Això no és problema per al LILO, però el MBR del DOS no arrencarà aquest disc.\n" #: fdisk/sfdisk.c:1252 msgid "" @@ -4647,29 +4539,30 @@ msgid "" "This does not matter for LILO, but the DOS MBR will not boot this disk.\n" msgstr "" "Atenció: no hi ha cap partició primària marcada com d'arrencada (activa).\n" -"Això no és problema per al LILO, però el MBR de DOS no arrencarà aquest " -"disc.\n" +"Això no és problema per al LILO, però el MBR de DOS no arrencarà aquest disc.\n" + +#: fdisk/sfdisk.c:1272 +msgid "start" +msgstr "començament" #: fdisk/sfdisk.c:1275 #, c-format -msgid "" -"partition %s: start: (c,h,s) expected (%ld,%ld,%ld) found (%ld,%ld,%ld)\n" -msgstr "" -"partició %s: començament: (cil.,capç.,sect.) s'esperava (%ld,%ld,%ld) s'ha " -"trobat (%ld,%ld,%ld)\n" +msgid "partition %s: start: (c,h,s) expected (%ld,%ld,%ld) found (%ld,%ld,%ld)\n" +msgstr "partició %s: començament: (cil.,capç.,sect.) s'esperava (%ld,%ld,%ld) s'ha trobat (%ld,%ld,%ld)\n" + +#: fdisk/sfdisk.c:1281 +msgid "end" +msgstr "acaba" #: fdisk/sfdisk.c:1284 #, c-format msgid "partition %s: end: (c,h,s) expected (%ld,%ld,%ld) found (%ld,%ld,%ld)\n" -msgstr "" -"partició %s: acaba: (cil.,capç.,sect.) s'esperava (%ld,%ld,%ld) s'ha trovat " -"(%ld,%ld,%ld)\n" +msgstr "partició %s: acaba: (cil.,capç.,sect.) s'esperava (%ld,%ld,%ld) s'ha trovat (%ld,%ld,%ld)\n" #: fdisk/sfdisk.c:1287 #, c-format msgid "partition %s ends on cylinder %ld, beyond the end of the disk\n" -msgstr "" -"La partició %s acaba en el cilindre %ld, més enllà de l'acabament del disc\n" +msgstr "La partició %s acaba en el cilindre %ld, més enllà de l'acabament del disc\n" #: fdisk/sfdisk.c:1312 #, c-format @@ -4778,13 +4671,12 @@ msgstr "No queda més espai\n" #: fdisk/sfdisk.c:2012 msgid "Illegal type\n" -msgstr "Tipus no permes\n" +msgstr "Tipus no permés\n" #: fdisk/sfdisk.c:2044 #, c-format msgid "Warning: given size (%lu) exceeds max allowable size (%lu)\n" -msgstr "" -"Atenció: la mida aconseguida (%lu) excedeix la màxima acceptable de (%lu)\n" +msgstr "Atenció: la mida aconseguida (%lu) excedeix la màxima acceptable de (%lu)\n" #: fdisk/sfdisk.c:2050 msgid "Warning: empty partition\n" @@ -4822,10 +4714,8 @@ msgid "" "Usually you only need to specify and (and perhaps ).\n" msgstr "" "Entrada en el següent format; els camps absents tenen un valor per defecte.\n" -" " -"\n" -"Normalment sols necessitarieu especificar i (i potser " -").\n" +" \n" +"Normalment sols necessitarieu especificar i (i potser ).\n" #: fdisk/sfdisk.c:2225 msgid "version" @@ -4850,8 +4740,7 @@ msgstr " -s [o --show-size]: Mostra la mida d'una partició" #: fdisk/sfdisk.c:2235 msgid " -c [or --id]: print or change partition Id" -msgstr "" -" -c [o --id]: Imprimeix o canvia l'identificador de la partició" +msgstr " -c [o --id]: Imprimeix o canvia l'identificador de la partició" #: fdisk/sfdisk.c:2236 msgid " -l [or --list]: list partitions of each device" @@ -4859,22 +4748,15 @@ msgstr " -l [o --list]: Mostra les particions de cada dispositiu" #: fdisk/sfdisk.c:2237 msgid " -d [or --dump]: idem, but in a format suitable for later input" -msgstr "" -" -d [o --dump]: Igual, però amb un format adequat per l'entrada " -"posterior" +msgstr " -d [o --dump]: Igual, però amb un format adequat per l'entrada posterior" #: fdisk/sfdisk.c:2238 msgid " -i [or --increment]: number cylinders etc. from 1 instead of from 0" -msgstr "" -" -i [o --increment]: Número de cilindres, etc. des de 1 en comptes de 0" +msgstr " -i [o --increment]: Nombre de cilindres, etc. des de 1 en comptes de 0" #: fdisk/sfdisk.c:2239 -msgid "" -" -uS, -uB, -uC, -uM: accept/report in units of sectors/blocks/cylinders/" -"MB" -msgstr "" -" -uS, -uB, -uC, -uM: Accepta/reporta en unitats de sectors/blocs/" -"cilindres/MB" +msgid " -uS, -uB, -uC, -uM: accept/report in units of sectors/blocks/cylinders/MB" +msgstr " -uS, -uB, -uC, -uM: Accepta/reporta en unitats de sectors/blocs/cilindres/MB" #: fdisk/sfdisk.c:2240 msgid " -T [or --list-types]:list the known partition types" @@ -4882,13 +4764,11 @@ msgstr " -T [o --list-types]: Llista els tipus de particions conegudes" #: fdisk/sfdisk.c:2241 msgid " -D [or --DOS]: for DOS-compatibility: waste a little space" -msgstr "" -" -D [o --DOS]: Per compatibilitat amb DOS: es perd una mica d'espai" +msgstr " -D [o --DOS]: Per compatibilitat amb DOS: es perd una mica d'espai" #: fdisk/sfdisk.c:2242 msgid " -R [or --re-read]: make kernel reread partition table" -msgstr "" -" -R [o --re-read]: Fa que el nucli rellegeixi la taula de particions" +msgstr " -R [o --re-read]: Fa que el nucli rellegeixi la taula de particions" #: fdisk/sfdisk.c:2243 msgid " -N# : change only the partition with number #" @@ -4899,10 +4779,8 @@ msgid " -n : do not actually write to disk" msgstr " -n : No escriu realment al disc" #: fdisk/sfdisk.c:2245 -msgid "" -" -O file : save the sectors that will be overwritten to file" -msgstr "" -" -O fitxer : Desa els sectors que es sobreescriuran en un fitxer" +msgid " -O file : save the sectors that will be overwritten to file" +msgstr " -O fitxer : Desa els sectors que es sobreescriuran en un fitxer" #: fdisk/sfdisk.c:2246 msgid " -I file : restore these sectors again" @@ -4922,24 +4800,19 @@ msgstr "opcions perilloses:" #: fdisk/sfdisk.c:2250 msgid " -g [or --show-geometry]: print the kernel's idea of the geometry" -msgstr "" -" -g [o --show-geometry]: Imprimeix la idea del nucli de la geometria" +msgstr " -g [o --show-geometry]: Imprimeix la idea del nucli de la geometria" #: fdisk/sfdisk.c:2251 msgid "" " -x [or --show-extended]: also list extended partitions on output\n" " or expect descriptors for them on input" msgstr "" -" -x [o --show-extended]: També mostra en l'eixida les particions " -"esteses\n" +" -x [o --show-extended]: També mostra en l'eixida les particions esteses\n" " o espera els seus descriptors en l'entrada" #: fdisk/sfdisk.c:2253 -msgid "" -" -L [or --Linux]: do not complain about things irrelevant for Linux" -msgstr "" -" -L [o --Linux]: No mostra avisos sobre aspectes irrellevants per " -"a Linux" +msgid " -L [or --Linux]: do not complain about things irrelevant for Linux" +msgstr " -L [o --Linux]: No mostra avisos sobre aspectes irrellevants per a Linux" #: fdisk/sfdisk.c:2254 msgid " -q [or --quiet]: suppress warning messages" @@ -4951,16 +4824,15 @@ msgstr " Podeu modificar la geometria detectada usant:" #: fdisk/sfdisk.c:2256 msgid " -C# [or --cylinders #]:set the number of cylinders to use" -msgstr "" -" -C# [o --cylinders #]: Estableix el número de cilindres que s'usaran" +msgstr " -C# [o --cylinders #]: Estableix el nombre de cilindres que s'usaran" #: fdisk/sfdisk.c:2257 msgid " -H# [or --heads #]: set the number of heads to use" -msgstr " -H# [o --heads #]: Estableix el número de capçals que s'usaran" +msgstr " -H# [o --heads #]: Estableix el nombre de capçals que s'usaran" #: fdisk/sfdisk.c:2258 msgid " -S# [or --sectors #]: set the number of sectors to use" -msgstr " -S# [o --sectors #]: Estableix el número de sectors que s'usaran" +msgstr " -S# [o --sectors #]: Estableix el nombre de sectors que s'usaran" #: fdisk/sfdisk.c:2259 msgid "You can disable all consistency checking with:" @@ -4968,8 +4840,7 @@ msgstr "Podeu desactivar tota comprovació de consistència amb:" #: fdisk/sfdisk.c:2260 msgid " -f [or --force]: do what I say, even if it is stupid" -msgstr "" -" -f [o --force]: Farà el que li digueu, encara que sigui estúpid" +msgstr " -f [o --force]: Farà el que li digueu, encara que sigui estúpid" #: fdisk/sfdisk.c:2266 msgid "Usage:" @@ -4983,8 +4854,7 @@ msgstr "%s dispositiu\t\t enumera les particions actives del dispositiu\n" #: fdisk/sfdisk.c:2268 #, c-format msgid "%s device n1 n2 ... activate partitions n1 ..., inactivate the rest\n" -msgstr "" -"%s dispositiu n1 n2 ... activar particions n1 ..., desactivar la resta\n" +msgstr "%s dispositiu n1 n2 ... activar particions n1 ..., desactivar la resta\n" #: fdisk/sfdisk.c:2269 #, c-format @@ -5002,7 +4872,7 @@ msgstr "total: %d blocs\n" #: fdisk/sfdisk.c:2576 msgid "usage: sfdisk --print-id device partition-number\n" -msgstr "useu: sfdisk --print-id dispositiu número_partició\n" +msgstr "useu: sfdisk --print-id dispositiu partició_número\n" #: fdisk/sfdisk.c:2578 msgid "usage: sfdisk --change-id device partition-number Id\n" @@ -5010,7 +4880,7 @@ msgstr "useu: sfdisk --change-id dispositiu número_partició Id\n" #: fdisk/sfdisk.c:2580 msgid "usage: sfdisk --id device partition-number [Id]\n" -msgstr "useu: sfdisk --id dispositiu número_partició [Id]\n" +msgstr "useu: sfdisk --id dispositiu partició_número [Id]\n" #: fdisk/sfdisk.c:2587 msgid "can specify only one device (except with -l or -s)\n" @@ -5075,7 +4945,7 @@ msgstr "Identificador dolent %lx\n" #: fdisk/sfdisk.c:2863 msgid "This disk is currently in use.\n" -msgstr "Aquest disc està actualment en us.\n" +msgstr "Aquest disc està actualment en ús.\n" #: fdisk/sfdisk.c:2880 #, c-format @@ -5099,9 +4969,9 @@ msgid "" "Use the --no-reread flag to suppress this check.\n" msgstr "" "\n" -"Aquest disc està actualment en us - reparticionar-lo probablement sigui\n" -"una mala idea. Desmonteu tots els sistemes de fitxers i efectueu un\n" -"swapoff en el disc des de les particions esteses.\n" +"Aquest disc està actualment en ús; reparticionar-lo probablement sigui\n" +"una mala idea. Desmunteu tots els sistemes de fitxers i efectueu un\n" +"swapoff en totes les particions d'intercanvi del disc.\n" "Useu l'etiqueta --no-reread per a suprimir aquesta comprovació.\n" #: fdisk/sfdisk.c:2895 @@ -5180,97 +5050,91 @@ msgstr "" "\tdd if=/dev/zero of=/dev/foo7 bs=512 count=1\n" "(Mireu fdisk(8).)\n" -#: getopt-1.1.2/getopt.c:233 +#: getopt/getopt.c:233 msgid "Try `getopt --help' for more information.\n" msgstr "Escolliu `getopt --help' per a obtindre més informació.\n" -#: getopt-1.1.2/getopt.c:299 +#: getopt/getopt.c:299 msgid "empty long option after -l or --long argument" msgstr "opció llarga buida després de l'argument -l o --long" -#: getopt-1.1.2/getopt.c:319 +#: getopt/getopt.c:319 msgid "unknown shell after -s or --shell argument" msgstr "intèrpret d'ordres desconegut després de l'argument -s o --shell" -#: getopt-1.1.2/getopt.c:324 +#: getopt/getopt.c:324 msgid "Usage: getopt optstring parameters\n" msgstr "Useu: getopt cadena_d'opcions paràmetres\n" -#: getopt-1.1.2/getopt.c:325 +#: getopt/getopt.c:325 msgid " getopt [options] [--] optstring parameters\n" msgstr " getopt [opcions] [--] cadena_d'opcions paràmetres\n" -#: getopt-1.1.2/getopt.c:326 +#: getopt/getopt.c:326 msgid " getopt [options] -o|--options optstring [options] [--]\n" msgstr " getopt [opcions] -o|--options cadena_d'opcions [opcions] [--]\n" -#: getopt-1.1.2/getopt.c:327 +#: getopt/getopt.c:327 msgid " parameters\n" msgstr " paràmetres\n" -#: getopt-1.1.2/getopt.c:328 -msgid "" -" -a, --alternative Allow long options starting with single -\n" -msgstr "" -" -a, --alternative Permet opcions llargues amb un sol " -"començament -\n" +#: getopt/getopt.c:328 +msgid " -a, --alternative Allow long options starting with single -\n" +msgstr " -a, --alternative Permet opcions llargues amb un sol començament -\n" -#: getopt-1.1.2/getopt.c:329 +#: getopt/getopt.c:329 msgid " -h, --help This small usage guide\n" -msgstr " -h, --help Aquesta petita guia d'us\n" +msgstr " -h, --help Aquesta petita guia d'ús\n" -#: getopt-1.1.2/getopt.c:330 +#: getopt/getopt.c:330 msgid " -l, --longoptions=longopts Long options to be recognized\n" -msgstr "" -" -l, --longoptions=opc_llarg Opcions llargues per a ser reconegudes\n" +msgstr " -l, --longoptions=opc_llarg Opcions llargues per a ser reconegudes\n" -#: getopt-1.1.2/getopt.c:331 -msgid "" -" -n, --name=progname The name under which errors are reported\n" -msgstr "" -" -n, --name=nom_programa El nom sota el qual s'informa dels errors\n" +#: getopt/getopt.c:331 +msgid " -n, --name=progname The name under which errors are reported\n" +msgstr " -n, --name=nom_programa El nom sota el qual s'informa dels errors\n" -#: getopt-1.1.2/getopt.c:332 +#: getopt/getopt.c:332 msgid " -o, --options=optstring Short options to be recognized\n" msgstr " -o, --options=cadena_opcions Opcions curtes per a ser reconegudes\n" -#: getopt-1.1.2/getopt.c:333 +#: getopt/getopt.c:333 msgid " -q, --quiet Disable error reporting by getopt(3)\n" msgstr "" " -q, --quiet Deshabilita els informes d'error mitjançant\n" " getopt(3)\n" -#: getopt-1.1.2/getopt.c:334 +#: getopt/getopt.c:334 msgid " -Q, --quiet-output No normal output\n" msgstr " -Q, --quiet-output No hi ha eixida normal\n" -#: getopt-1.1.2/getopt.c:335 +#: getopt/getopt.c:335 msgid " -s, --shell=shell Set shell quoting conventions\n" msgstr "" " -s, --shell=shell Estableix les convencions amb que es crida a\n" " l'interpret d'ordres\n" -#: getopt-1.1.2/getopt.c:336 +#: getopt/getopt.c:336 msgid " -T, --test Test for getopt(1) version\n" msgstr " -T, --test Provar per a la versió getopt(1)\n" -#: getopt-1.1.2/getopt.c:337 +#: getopt/getopt.c:337 msgid " -u, --unqote Do not quote the output\n" msgstr " -u, --unqote No posa entre cometes l'eixida\n" -#: getopt-1.1.2/getopt.c:338 +#: getopt/getopt.c:338 msgid " -V, --version Output version information\n" msgstr " -V, --version Mostra la informació de la versió\n" -#: getopt-1.1.2/getopt.c:392 getopt-1.1.2/getopt.c:453 +#: getopt/getopt.c:395 getopt/getopt.c:456 msgid "missing optstring argument" msgstr "falta l'argument cadena_opcions" -#: getopt-1.1.2/getopt.c:441 -msgid "getopt (enhanced) 1.1.2\n" -msgstr "getopt (millorat) 1.1.2\n" +#: getopt/getopt.c:444 +msgid "getopt (enhanced) 1.1.3\n" +msgstr "getopt (millorat) 1.1.3\n" -#: getopt-1.1.2/getopt.c:447 +#: getopt/getopt.c:450 msgid "internal error, contact the author." msgstr "error intern; contacteu amb l'autor." @@ -5308,8 +5172,7 @@ msgstr "Ha fallat l'obtenció del permís perque no s'ha intentat.\n" #: hwclock/cmos.c:597 #, c-format msgid "%s is unable to get I/O port access: the iopl(3) call failed.\n" -msgstr "" -"%s no pot aconseguir l'accés al port de E/S: la crida iopl(3) ha fallat.\n" +msgstr "%s no pot aconseguir l'accés al port de E/S: la crida iopl(3) ha fallat.\n" #: hwclock/cmos.c:600 msgid "Probably you need root privileges.\n" @@ -5367,16 +5230,12 @@ msgstr "...rebuda la senyal del rellotge\n" #: hwclock/hwclock.c:399 #, c-format msgid "Invalid values in hardware clock: %4d/%.2d/%.2d %.2d:%.2d:%.2d\n" -msgstr "" -"Valors incorrectes en el rellotge del maquinari: %4d/%.2d/%.2d %.2d:%.2d:" -"%.2d\n" +msgstr "Valors incorrectes en el rellotge del maquinari: %4d/%.2d/%.2d %.2d:%.2d:%.2d\n" #: hwclock/hwclock.c:407 #, c-format msgid "Hw clock time : %4d/%.2d/%.2d %.2d:%.2d:%.2d = %ld seconds since 1969\n" -msgstr "" -"Hora del maquinari : %4d/%.2d/%.2d %.2d:%.2d:%.2d = %ld segons després de " -"1969\n" +msgstr "Hora del maquinari : %4d/%.2d/%.2d %.2d:%.2d:%.2d = %ld segons després de 1969\n" #: hwclock/hwclock.c:435 #, c-format @@ -5386,8 +5245,7 @@ msgstr "Hora llegida des del maquinari : %4d/%.2d/%.2d %02d:%02d:%02d\n" #: hwclock/hwclock.c:462 #, c-format msgid "Setting Hardware Clock to %.2d:%.2d:%.2d = %ld seconds since 1969\n" -msgstr "" -"Establint l'hora del maquinari en %.2d:%.2d:%.2d = %ld segons des de 1969\n" +msgstr "Establint l'hora del maquinari en %.2d:%.2d:%.2d = %ld segons des de 1969\n" #: hwclock/hwclock.c:468 msgid "Clock not changed - testing only.\n" @@ -5403,12 +5261,8 @@ msgstr "" "Augmentant el retard fins al següent segon complet.\n" #: hwclock/hwclock.c:545 -msgid "" -"The Hardware Clock registers contain values that are either invalid (e.g. " -"50th day of month) or beyond the range we can handle (e.g. Year 2095).\n" -msgstr "" -"Els registres del rellotge del maquinari conté valores invàlids (p.e. dia 50 " -"del mes) o excedeixen el rang que poden usar (p.e. l'any 2095).\n" +msgid "The Hardware Clock registers contain values that are either invalid (e.g. 50th day of month) or beyond the range we can handle (e.g. Year 2095).\n" +msgstr "Els registres del rellotge del maquinari conté valores invàlids (p.e. dia 50 del mes) o excedeixen el rang que poden usar (p.e. l'any 2095).\n" #: hwclock/hwclock.c:555 #, c-format @@ -5438,9 +5292,7 @@ msgstr "Emetent les dades del comandament: %s\n" #: hwclock/hwclock.c:614 msgid "Unable to run 'date' program in /bin/sh shell. popen() failed" -msgstr "" -"No es pot executar el programa 'date' en l'interpret de comandaments /bin/" -"sh. popen() ha fallat" +msgstr "No es pot executar el programa 'date' en l'interpret de comandaments /bin/sh. popen() ha fallat" #: hwclock/hwclock.c:622 #, c-format @@ -5465,15 +5317,13 @@ msgstr "" #: hwclock/hwclock.c:636 #, c-format msgid "" -"The date command issued by %s returned something other than an integer where " -"the converted time value was expected.\n" +"The date command issued by %s returned something other than an integer where the converted time value was expected.\n" "The command was:\n" " %s\n" "The response was:\n" " %s\n" msgstr "" -"El comandament date executat per %s retorna quelcom altre a un valor enter " -"quan s'esperava el valor de l'hora convertida.\n" +"El comandament date executat per %s retorna quelcom altre a un valor enter quan s'esperava el valor de l'hora convertida.\n" "El comandament fou:\n" " %s\n" "La resposta fou:\n" @@ -5485,12 +5335,8 @@ msgid "date string %s equates to %ld seconds since 1969.\n" msgstr "la cadena de la data %s equival a %ld segons des de 1969.\n" #: hwclock/hwclock.c:679 -msgid "" -"The Hardware Clock does not contain a valid time, so we cannot set the " -"System Time from it.\n" -msgstr "" -"El rellotge de maquinari no conté una hora vàlida, pel que no es pot " -"establir l'hora del sistema a partir d'aquest valor.\n" +msgid "The Hardware Clock does not contain a valid time, so we cannot set the System Time from it.\n" +msgstr "El rellotge de maquinari no conté una hora vàlida, pel que no es pot establir l'hora del sistema a partir d'aquest valor.\n" #: hwclock/hwclock.c:701 msgid "Calling settimeofday:\n" @@ -5508,9 +5354,7 @@ msgstr "\ttz.tz_minuteswest = %d\n" #: hwclock/hwclock.c:707 msgid "Not setting system clock because running in test mode.\n" -msgstr "" -"No configuro el rellotge del sistema donat que l'execució és en mode de " -"prova.\n" +msgstr "No configuro el rellotge del sistema donat que l'execució és en mode de prova.\n" #: hwclock/hwclock.c:716 msgid "Must be superuser to set system clock.\n" @@ -5521,12 +5365,8 @@ msgid "settimeofday() failed" msgstr "settimeofday() ha fallat" #: hwclock/hwclock.c:749 -msgid "" -"Not adjusting drift factor because the Hardware Clock previously contained " -"garbage.\n" -msgstr "" -"No s'ajusta el factor de desfase donat que el rellotge del maquinari " -"contenia prèviament desperdicis.\n" +msgid "Not adjusting drift factor because the Hardware Clock previously contained garbage.\n" +msgstr "No s'ajusta el factor de desfase donat que el rellotge del maquinari contenia prèviament desperdicis.\n" #: hwclock/hwclock.c:754 msgid "" @@ -5538,22 +5378,16 @@ msgstr "" "una calibració des del començament.\n" #: hwclock/hwclock.c:760 -msgid "" -"Not adjusting drift factor because it has been less than a day since the " -"last calibration.\n" -msgstr "" -"No s'ajusta el factor de desfase donat que fa menys d'un dia de la la última " -"calibració.\n" +msgid "Not adjusting drift factor because it has been less than a day since the last calibration.\n" +msgstr "No s'ajusta el factor de desfase donat que fa menys d'un dia de la la última calibració.\n" #: hwclock/hwclock.c:808 #, c-format msgid "" -"Clock drifted %.1f seconds in the past %d seconds in spite of a drift factor " -"of %f seconds/day.\n" +"Clock drifted %.1f seconds in the past %d seconds in spite of a drift factor of %f seconds/day.\n" "Adjusting drift factor by %f seconds/day\n" msgstr "" -"El rellotje s'ha desfasat %.1f segons en els últims %d segons, tot i emprar " -"un factor de desfase de %f segons diaris.\n" +"El rellotje s'ha desfasat %.1f segons en els últims %d segons, tot i emprar un factor de desfase de %f segons diaris.\n" "Ajustan el factor de desfase en %f segons diaris\n" #: hwclock/hwclock.c:859 @@ -5564,9 +5398,7 @@ msgstr "El temps des de l'últim ajust és de %d segons\n" #: hwclock/hwclock.c:861 #, c-format msgid "Need to insert %d seconds and refer time back %.6f seconds ago\n" -msgstr "" -"Necessiteu inserir %d segons i refer la referència de l'hora tants %.6f " -"segons enradera\n" +msgstr "Necessiteu inserir %d segons i refer la referència de l'hora tants %.6f segons enradera\n" #: hwclock/hwclock.c:890 msgid "Not updating adjtime file because of testing mode.\n" @@ -5586,17 +5418,12 @@ msgid "Drift adjustment parameters not updated.\n" msgstr "Paràmetres d'ajustament del desfase no actualitzats.\n" #: hwclock/hwclock.c:956 -msgid "" -"The Hardware Clock does not contain a valid time, so we cannot adjust it.\n" -msgstr "" -"El rellotje de maquinari no conté una hora vàlida, pel que no es pot ajustar-" -"la.\n" +msgid "The Hardware Clock does not contain a valid time, so we cannot adjust it.\n" +msgstr "El rellotje de maquinari no conté una hora vàlida, pel que no es pot ajustar.\n" #: hwclock/hwclock.c:988 msgid "Needed adjustment is less than one second, so not setting clock.\n" -msgstr "" -"L' ajustament necessari és inferior a un segon, pel que no s'estableix el " -"rellotge.\n" +msgstr "L' ajustament necessari és inferior a un segon, pel que no s'estableix al rellotge.\n" #: hwclock/hwclock.c:1014 #, c-format @@ -5613,13 +5440,11 @@ msgstr "No es pot establir el rellotge del sistema.\n" #: hwclock/hwclock.c:1142 msgid "" -"The kernel keeps an epoch value for the Hardware Clock only on an Alpha " -"machine.\n" +"The kernel keeps an epoch value for the Hardware Clock only on an Alpha machine.\n" "This copy of hwclock was built for a machine other than Alpha\n" "(and thus is presumably not running on an Alpha now). No action taken.\n" msgstr "" -"El nucli té un valor de època per al rellotge de maquinari sols en les " -"màquines Alpha.\n" +"El nucli té un valor de època per al rellotge de maquinari sols en les màquines Alpha.\n" "Aquesta còpia de hwclock es va compilar per a una màquina no Alpha (pel que\n" "possiblement ara no s'executa en una màquina Alpha). No es pren cap acció.\n" @@ -5633,12 +5458,8 @@ msgid "Kernel is assuming an epoch value of %lu\n" msgstr "El nucli assumeix un valor de època de %lu\n" #: hwclock/hwclock.c:1156 -msgid "" -"To set the epoch value, you must use the 'epoch' option to tell to what " -"value to set it.\n" -msgstr "" -"Per a establir el valor de època, haureu d'usar l'opció 'epoch' per a " -"indicar a quin valor s'ha d'establir.\n" +msgid "To set the epoch value, you must use the 'epoch' option to tell to what value to set it.\n" +msgstr "Per a establir el valor de època, haureu d'usar l'opció 'epoch' per a indicar a quin valor s'ha d'establir.\n" #: hwclock/hwclock.c:1159 #, c-format @@ -5705,8 +5526,7 @@ msgstr "" " --date Especifica el temps en que es desitja establir el RTC\n" " --epoch=any Especifica l'any que correspon al començament del valor de\n" " l'època del RTC\n" -" --noadjfile No accedir a /etc/adjtime. Requereix l'us de --utc o --" -"localtime\n" +" --noadjfile No accedir a /etc/adjtime. Requereix l'ús de --utc o --localtime\n" #: hwclock/hwclock.c:1223 msgid "" @@ -5731,21 +5551,13 @@ msgstr "" #: hwclock/hwclock.c:1410 #, c-format -msgid "" -"%s: The --utc and --localtime options are mutually exclusive. You specified " -"both.\n" -msgstr "" -"%s: Les opcions --utc i --localtime s'exclouen mutuament. Les heu " -"especificat totes dues.\n" +msgid "%s: The --utc and --localtime options are mutually exclusive. You specified both.\n" +msgstr "%s: Les opcions --utc i --localtime s'exclouen mutuament. Les heu especificat totes dues.\n" #: hwclock/hwclock.c:1417 #, c-format -msgid "" -"%s: The --adjust and --noadjfile options are mutually exclusive. You " -"specified both.\n" -msgstr "" -"%s: Les opcions --adjust i --noadjfile s'exclouen mutuament. Les heu " -"especificat totes dues.\n" +msgid "%s: The --adjust and --noadjfile options are mutually exclusive. You specified both.\n" +msgstr "%s: Les opcions --adjust i --noadjfile s'exclouen mutuament. Les heu especificat totes dues.\n" #: hwclock/hwclock.c:1424 #, c-format @@ -5765,26 +5577,16 @@ msgid "Sorry, only the superuser can change the System Clock.\n" msgstr "Ho sento, sols el superusuari port canviar el rellotge del sistema.\n" #: hwclock/hwclock.c:1464 -msgid "" -"Sorry, only the superuser can change the Hardware Clock epoch in the " -"kernel.\n" -msgstr "" -"Ho sento, sols el superusuari pot canviar el valor de època del rellotge de " -"maquinari en el nucli.\n" +msgid "Sorry, only the superuser can change the Hardware Clock epoch in the kernel.\n" +msgstr "Ho sento, sols el superusuari pot canviar el valor de època del rellotge de maquinari en el nucli.\n" #: hwclock/hwclock.c:1484 msgid "Cannot access the Hardware Clock via any known method.\n" -msgstr "" -"No es pot accedir al rellotge de maquinari mitjançant un dels mètodes " -"coneguts.\n" +msgstr "No es pot accedir al rellotge de maquinari mitjançant un dels mètodes coneguts.\n" #: hwclock/hwclock.c:1488 -msgid "" -"Use the --debug option to see the details of our search for an access " -"method.\n" -msgstr "" -"Useu l'opció --debug per a veure els detalls de la recerca d'un mètode " -"d'accés.\n" +msgid "Use the --debug option to see the details of our search for an access method.\n" +msgstr "Useu l'opció --debug per a veure els detalls de la recerca d'un mètode d'accés.\n" #: hwclock/kd.c:43 msgid "Waiting in loop for time from KDGHWCLK to change\n" @@ -5794,7 +5596,7 @@ msgstr "Esperant en bucle a que canviï l'hora de KDGHWCLK\n" msgid "KDGHWCLK ioctl to read time failed" msgstr "Falla de ioctl KDGHWCLK al llegir l'hora" -#: hwclock/kd.c:67 hwclock/rtc.c:187 +#: hwclock/kd.c:67 hwclock/rtc.c:186 msgid "Timed out waiting for time change.\n" msgstr "Temps excedit durant l'espera del canvi d'hora.\n" @@ -5819,110 +5621,95 @@ msgstr "No es pot obrir /dev/tty1 o /dev/vc/1" msgid "KDGHWCLK ioctl failed" msgstr "Falla de ioctl KDGHWCLK" -#: hwclock/rtc.c:115 hwclock/rtc.c:208 +#: hwclock/rtc.c:114 hwclock/rtc.c:207 #, c-format msgid "open() of %s failed" msgstr "Falla de open() de %s" -#: hwclock/rtc.c:149 +#: hwclock/rtc.c:148 #, c-format msgid "ioctl() to %s to read the time failed.\n" msgstr "La comprovació de ioctl() en %s ha fallat al llegir l'hora.\n" -#: hwclock/rtc.c:171 +#: hwclock/rtc.c:170 #, c-format msgid "Waiting in loop for time from %s to change\n" msgstr "Esperant en bucle per a canviar l'hora des de %s\n" -#: hwclock/rtc.c:226 +#: hwclock/rtc.c:225 #, c-format msgid "%s does not have interrupt functions. " msgstr "%s no té funcions d'interrupció. " -#: hwclock/rtc.c:235 +#: hwclock/rtc.c:234 #, c-format msgid "read() to %s to wait for clock tick failed" -msgstr "" -"La comprovació de read() en %s ha fallat a l'esperar la senyal del rellotge" +msgstr "La comprovació de read() en %s ha fallat a l'esperar la senyal del rellotge" -#: hwclock/rtc.c:244 +#: hwclock/rtc.c:243 #, c-format msgid "ioctl() to %s to turn off update interrupts failed" -msgstr "" -"La comprovació de ioctl() en %s ha fallat al desactivar les interrupcions " -"d'actualització" +msgstr "La comprovació de ioctl() en %s ha fallat al desactivar les interrupcions d'actualització" -#: hwclock/rtc.c:247 +#: hwclock/rtc.c:246 #, c-format msgid "ioctl() to %s to turn on update interrupts failed unexpectedly" -msgstr "" -"La comprovació de ioctl() en %s ha fallat inesperadament a l'activar les " -"interrupcions d'actualització" +msgstr "La comprovació de ioctl() en %s ha fallat inesperadament a l'activar les interrupcions d'actualització" -#: hwclock/rtc.c:306 +#: hwclock/rtc.c:305 #, c-format msgid "ioctl() to %s to set the time failed.\n" msgstr "La comprovació de ioctl() en %s ha fallat a l'establir l'hora.\n" -#: hwclock/rtc.c:312 +#: hwclock/rtc.c:311 #, c-format msgid "ioctl(%s) was successful.\n" msgstr "La comprovació de ioctl(%s) ha finalitzat correctament.\n" -#: hwclock/rtc.c:341 +#: hwclock/rtc.c:340 #, c-format msgid "Open of %s failed" msgstr "Error obrint %s" -#: hwclock/rtc.c:359 hwclock/rtc.c:405 +#: hwclock/rtc.c:358 hwclock/rtc.c:404 #, c-format -msgid "" -"To manipulate the epoch value in the kernel, we must access the Linux 'rtc' " -"device driver via the device special file %s. This file does not exist on " -"this system.\n" -msgstr "" -"Per a modificar el valor de època del nucli, heu d'accedir al controlador " -"del dispositiu 'rtc' de Linux mitjançant el fitxer especial de dispositiu %" -"s. Aquest fitxer no existeix en aquest sistema.\n" +msgid "To manipulate the epoch value in the kernel, we must access the Linux 'rtc' device driver via the device special file %s. This file does not exist on this system.\n" +msgstr "Per a modificar el valor de època del nucli, heu d'accedir al controlador del dispositiu 'rtc' de Linux mitjançant el fitxer especial de dispositiu %s. Aquest fitxer no existeix en aquest sistema.\n" -#: hwclock/rtc.c:364 hwclock/rtc.c:410 +#: hwclock/rtc.c:363 hwclock/rtc.c:409 #, c-format msgid "Unable to open %s" msgstr "No es pot obrir %s" -#: hwclock/rtc.c:371 +#: hwclock/rtc.c:370 #, c-format msgid "ioctl(RTC_EPOCH_READ) to %s failed" msgstr "La comprovació de ioctl(RTC_EPOCH_READ) en %s ha fallat" -#: hwclock/rtc.c:377 +#: hwclock/rtc.c:376 #, c-format msgid "we have read epoch %ld from %s with RTC_EPOCH_READ ioctl.\n" -msgstr "" -"s'ha llegit el valor de època %ld des de %s amb ioctl RTC_EPOCH_READ.\n" +msgstr "s'ha llegit el valor de època %ld des de %s amb ioctl RTC_EPOCH_READ.\n" #. kernel would not accept this epoch value #. Hmm - bad habit, deciding not to do what the user asks #. just because one believes that the kernel might not like it. -#: hwclock/rtc.c:397 +#: hwclock/rtc.c:396 #, c-format msgid "The epoch value may not be less than 1900. You requested %ld\n" msgstr "El valor de època no pot ser inferior a 1900. Heu requerit %ld\n" -#: hwclock/rtc.c:415 +#: hwclock/rtc.c:414 #, c-format msgid "setting epoch to %ld with RTC_EPOCH_SET ioctl to %s.\n" msgstr "establint la època a %ld amb ioctl RTC_EPOCH_SET en %s.\n" -#: hwclock/rtc.c:420 +#: hwclock/rtc.c:419 #, c-format -msgid "" -"The kernel device driver for %s does not have the RTC_EPOCH_SET ioctl.\n" -msgstr "" -"El controlador de dispositiu del nucli per a %s no té el ioctl " -"RTC_EPOCH_SET.\n" +msgid "The kernel device driver for %s does not have the RTC_EPOCH_SET ioctl.\n" +msgstr "El controlador de dispositiu del nucli per a %s no té el ioctl RTC_EPOCH_SET.\n" -#: hwclock/rtc.c:423 +#: hwclock/rtc.c:422 #, c-format msgid "ioctl(RTC_EPOCH_SET) to %s failed" msgstr "La comprovació de ioctl(RTC_EPOCH_SET) de %s ha fallat" @@ -6059,22 +5846,16 @@ msgstr "%s: desbordament de l'entrada" #: login-utils/agetty.c:1195 #, c-format msgid "" -"Usage: %s [-hiLmw] [-l login_program] [-t timeout] [-I initstring] [-H " -"login_host] baud_rate,... line [termtype]\n" -"or\t[-hiLmw] [-l login_program] [-t timeout] [-I initstring] [-H login_host] " -"line baud_rate,... [termtype]\n" +"Usage: %s [-hiLmw] [-l login_program] [-t timeout] [-I initstring] [-H login_host] baud_rate,... line [termtype]\n" +"or\t[-hiLmw] [-l login_program] [-t timeout] [-I initstring] [-H login_host] line baud_rate,... [termtype]\n" msgstr "" -"Useu: %s [-hiLmw] [-l programa_d'accés] [-t temps_espera] [-I " -"cadena_inicialització] [-H host_d'accés] velocitat_baudis,... línia " -"[tipus_terminal]\n" +"Useu: %s [-hiLmw] [-l programa_d'accés] [-t temps_espera] [-I cadena_inicialització] [-H host_d'accés] velocitat_baudis,... línia [tipus_terminal]\n" "o be\n" -"\t [-hiLmw] [-l programa_d'accés] [-t temps_espera] [-I " -"cadena_inicialització] [-H host_d'accés] línia velocitat_baudis,... " -"[tipus_terminal]\n" +"\t [-hiLmw] [-l programa_d'accés] [-t temps_espera] [-I cadena_inicialització] [-H host_d'accés] línia velocitat_baudis,... [tipus_terminal]\n" #: login-utils/checktty.c:104 login-utils/checktty.c:125 msgid "login: memory low, login may fail\n" -msgstr "login: poca memòria; l'accés pot fallar\n" +msgstr "login: poca memòria; l'accés podria fallar\n" #: login-utils/checktty.c:105 msgid "can't malloc for ttyclass" @@ -6125,7 +5906,7 @@ msgstr "Canviant informació del finger per a %s.\n" msgid "Password error." msgstr "Error de contrasenya." -#: login-utils/chfn.c:176 login-utils/chsh.c:167 login-utils/login.c:780 +#: login-utils/chfn.c:176 login-utils/chsh.c:167 login-utils/login.c:774 #: login-utils/newgrp.c:48 login-utils/simpleinit.c:338 mount/lomount.c:249 #: mount/lomount.c:254 msgid "Password: " @@ -6179,8 +5960,7 @@ msgstr "Els caràcters de control no estan permesos.\n" #: login-utils/chfn.c:476 msgid "Finger information *NOT* changed. Try again later.\n" -msgstr "" -"*NO* s'ha canviat la informació del finger. Probeu-ho altra vegada després.\n" +msgstr "*NO* s'ha canviat la informació del finger. Probeu-ho altra vegada després.\n" #: login-utils/chfn.c:479 msgid "Finger information changed.\n" @@ -6193,9 +5973,7 @@ msgstr "l'assignació de memòria (malloc) ha fallat" #: login-utils/chsh.c:130 #, c-format msgid "%s: Your shell is not in /etc/shells, shell change denied\n" -msgstr "" -"%s: El vostre intèrpret d'ordres no està en /etc/shells; canvi de " -"l'intèrpret d'ordres denegat\n" +msgstr "%s: El vostre intèrpret d'ordres no està en /etc/shells; canvi de l'intèrpret d'ordres denegat\n" #: login-utils/chsh.c:137 #, c-format @@ -6224,8 +6002,7 @@ msgid "" "Usage: %s [ -s shell ] [ --list-shells ] [ --help ] [ --version ]\n" " [ username ]\n" msgstr "" -"Useu: %s [ -s intèrpret_d'ordres ] [ --list-shells ] [ --help ] [ --" -"version ]\n" +"Useu: %s [ -s intèrpret_d'ordres ] [ --list-shells ] [ --help ] [ --version ]\n" " [ nom_d'usuari ]\n" #: login-utils/chsh.c:303 @@ -6349,29 +6126,29 @@ msgstr "" "\n" "interromput %10.10s %5.5s \n" -#: login-utils/login.c:260 +#: login-utils/login.c:254 #, c-format msgid "FATAL: can't reopen tty: %s" msgstr "Error FATAL: no es pot reobrir tty: %s" -#: login-utils/login.c:291 +#: login-utils/login.c:285 msgid "FATAL: bad tty" -msgstr "" +msgstr "ERROR FATAL: terminal errònia" -#: login-utils/login.c:424 +#: login-utils/login.c:418 msgid "login: -h for super-user only.\n" msgstr "login: -h sols per al superusuari.\n" -#: login-utils/login.c:451 +#: login-utils/login.c:445 msgid "usage: login [-fp] [username]\n" msgstr "useu: login [-fp] [nom_usuari]\n" -#: login-utils/login.c:544 +#: login-utils/login.c:538 #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "login: PAM ha fallat; avortant: %s\n" -#: login-utils/login.c:546 +#: login-utils/login.c:540 #, c-format msgid "Couldn't initialize PAM: %s" msgstr "No es pot inicialitzar PAM: %s" @@ -6382,42 +6159,42 @@ msgstr "No es pot inicialitzar PAM: %s" #. * PAM doesn't have an interface to specify the "Password: " string #. * (yet). #. -#: login-utils/login.c:563 +#: login-utils/login.c:557 msgid "login: " -msgstr "entrada: " +msgstr "accés: " -#: login-utils/login.c:603 +#: login-utils/login.c:597 #, c-format msgid "FAILED LOGIN %d FROM %s FOR %s, %s" -msgstr "ENTRADA HA FALLAT %d DES DE %s PER A %s, %s" +msgstr "ACCÉS INFRUCTUÓS %d DES DE %s PER A %s, %s" -#: login-utils/login.c:607 +#: login-utils/login.c:601 msgid "" "Login incorrect\n" "\n" msgstr "" -"Entrada incorrecta\n" +"Accés incorrecte\n" "\n" -#: login-utils/login.c:616 +#: login-utils/login.c:610 #, c-format msgid "TOO MANY LOGIN TRIES (%d) FROM %s FOR %s, %s" -msgstr "MASSES INTENTS D'ENTRADA (%d) DES DE %s PER A %s, %s" +msgstr "MASSES INTENTS D'ACCÉS (%d) DES DE %s PER A %s, %s" -#: login-utils/login.c:620 +#: login-utils/login.c:614 #, c-format msgid "FAILED LOGIN SESSION FROM %s FOR %s, %s" -msgstr "SESSIONS D'ENTRADA FALLIDES DES DE %s PER A %s, %s" +msgstr "SESSIONS D'ACCÉS FALLIDES DES DE %s PER A %s, %s" -#: login-utils/login.c:624 +#: login-utils/login.c:618 msgid "" "\n" "Login incorrect\n" msgstr "" "\n" -"Entrada incorrecta\n" +"Accés incorrecte\n" -#: login-utils/login.c:646 login-utils/login.c:653 login-utils/login.c:687 +#: login-utils/login.c:640 login-utils/login.c:647 login-utils/login.c:681 msgid "" "\n" "Session setup problem, abort.\n" @@ -6425,44 +6202,44 @@ msgstr "" "\n" "Problema a l'iniciar la sessió, avortat.\n" -#: login-utils/login.c:647 +#: login-utils/login.c:641 #, c-format msgid "NULL user name in %s:%d. Abort." msgstr "Nom d'usuari NUL en %s:%d. Avortat." -#: login-utils/login.c:654 +#: login-utils/login.c:648 #, c-format msgid "Invalid user name \"%s\" in %s:%d. Abort." msgstr "Nom d'usuari invàlid \"%s\" en %s:%d. Avortat." -#: login-utils/login.c:673 +#: login-utils/login.c:667 msgid "login: Out of memory\n" msgstr "login: Memòria esgotada\n" -#: login-utils/login.c:715 +#: login-utils/login.c:709 msgid "Illegal username" msgstr "Nom d'usuari ilegal" -#: login-utils/login.c:758 +#: login-utils/login.c:752 #, c-format msgid "%s login refused on this terminal.\n" -msgstr "Entrada %s refusada en aquest terminal.\n" +msgstr "Accés %s refusat en aquest terminal.\n" -#: login-utils/login.c:763 +#: login-utils/login.c:757 #, c-format msgid "LOGIN %s REFUSED FROM %s ON TTY %s" -msgstr "ENTRADA %s REFUSADA DES DE %s EN TTY %s" +msgstr "ACCÉS %s REFUSAT DES DE %s EN LA TTY %s" -#: login-utils/login.c:767 +#: login-utils/login.c:761 #, c-format msgid "LOGIN %s REFUSED ON TTY %s" -msgstr "ENTRADA %s REFUSADA EN TTY %s" +msgstr "ACCÉS %s REFUSAT EN LA TTY %s" -#: login-utils/login.c:820 +#: login-utils/login.c:814 msgid "Login incorrect\n" -msgstr "Entrada incorrecta\n" +msgstr "Accés incorrecte\n" -#: login-utils/login.c:842 +#: login-utils/login.c:836 msgid "" "Too many users logged on already.\n" "Try again later.\n" @@ -6470,153 +6247,153 @@ msgstr "" "Masses usuaris en actiu en el sistema.\n" "Probeu-ho més tard.\n" -#: login-utils/login.c:846 +#: login-utils/login.c:840 msgid "You have too many processes running.\n" msgstr "Teniu masses processos en execució.\n" -#: login-utils/login.c:1070 +#: login-utils/login.c:1064 #, c-format msgid "DIALUP AT %s BY %s" msgstr "DIALUP EN %s PER %s" -#: login-utils/login.c:1077 +#: login-utils/login.c:1071 #, c-format msgid "ROOT LOGIN ON %s FROM %s" -msgstr "ENTRADA DE ROOT EN %s DES DE %s" +msgstr "ACCÉS DE ROOT EN %s DES DE %s" -#: login-utils/login.c:1080 +#: login-utils/login.c:1074 #, c-format msgid "ROOT LOGIN ON %s" -msgstr "ENTRADA DE ROOT EN %s" +msgstr "ACCÉS DE ROOT EN %s" -#: login-utils/login.c:1083 +#: login-utils/login.c:1077 #, c-format msgid "LOGIN ON %s BY %s FROM %s" -msgstr "ENTRADA EN %s PER %s DES DE %s" +msgstr "ACCCÉS EN %s PER %s DES DE %s" -#: login-utils/login.c:1086 +#: login-utils/login.c:1080 #, c-format msgid "LOGIN ON %s BY %s" -msgstr "ENTRADA EN %s PER %s" +msgstr "ACCÉS EN %s PER %s" -#: login-utils/login.c:1098 +#: login-utils/login.c:1092 msgid "You have new mail.\n" msgstr "Teniu correu nou.\n" -#: login-utils/login.c:1100 +#: login-utils/login.c:1094 msgid "You have mail.\n" msgstr "Teniu correu.\n" #. error in fork() -#: login-utils/login.c:1118 +#: login-utils/login.c:1112 #, c-format msgid "login: failure forking: %s" msgstr "login: falla l'establiment del canvi: %s" -#: login-utils/login.c:1155 +#: login-utils/login.c:1149 #, c-format msgid "TIOCSCTTY failed: %m" msgstr "TIOCSCTTY ha fallat: %m" -#: login-utils/login.c:1161 +#: login-utils/login.c:1155 msgid "setuid() failed" msgstr "setuid() ha fallat" -#: login-utils/login.c:1167 +#: login-utils/login.c:1161 #, c-format msgid "No directory %s!\n" msgstr "No hi ha cap directori %s\n" -#: login-utils/login.c:1171 +#: login-utils/login.c:1165 msgid "Logging in with home = \"/\".\n" -msgstr "Entrant amb el directori inicial = \"/\".\n" +msgstr "Accedint amb el directori inicial = \"/\".\n" -#: login-utils/login.c:1179 +#: login-utils/login.c:1173 msgid "login: no memory for shell script.\n" msgstr "login: memòria esgotada per a l'script de l'ntèrpret d'ordres.\n" -#: login-utils/login.c:1206 +#: login-utils/login.c:1200 #, c-format msgid "login: couldn't exec shell script: %s.\n" -msgstr "login: no he pogut executar l'script de l'ntèrpret d'ordres: %s.\n" +msgstr "login: no s'ha pogut executar l'script de l'ntèrpret d'ordres: %s.\n" -#: login-utils/login.c:1209 +#: login-utils/login.c:1203 #, c-format msgid "login: no shell: %s.\n" msgstr "login: no hi ha intèrpret d'ordres: %s.\n" -#: login-utils/login.c:1224 +#: login-utils/login.c:1218 #, c-format msgid "" "\n" "%s login: " msgstr "" "\n" -"Entrada de %s: " +"Accés de %s: " -#: login-utils/login.c:1235 +#: login-utils/login.c:1229 msgid "login name much too long.\n" -msgstr "nom d'entrada massa llarg.\n" +msgstr "nom d'accés massa llarg.\n" -#: login-utils/login.c:1236 +#: login-utils/login.c:1230 msgid "NAME too long" msgstr "NOM massa llarg" -#: login-utils/login.c:1243 +#: login-utils/login.c:1237 msgid "login names may not start with '-'.\n" -msgstr "els noms d'entrada no poden començar per '-'.\n" +msgstr "els noms d'accés no poden començar per '-'.\n" -#: login-utils/login.c:1253 +#: login-utils/login.c:1247 msgid "too many bare linefeeds.\n" msgstr "masses salts de pàgina solitaris.\n" -#: login-utils/login.c:1254 +#: login-utils/login.c:1248 msgid "EXCESSIVE linefeeds" msgstr "MASSES salts de pàgina" -#: login-utils/login.c:1265 +#: login-utils/login.c:1259 #, c-format msgid "Login timed out after %d seconds\n" -msgstr "L'entrada ha esgotat el temps d'espera després de %d segons\n" +msgstr "L'intent d'accés ha esgotat el temps d'espera després de %d segons\n" -#: login-utils/login.c:1354 +#: login-utils/login.c:1348 #, c-format msgid "Last login: %.*s " -msgstr "Última entrada: %.*s " +msgstr "Últim accés: %.*s " -#: login-utils/login.c:1358 +#: login-utils/login.c:1352 #, c-format msgid "from %.*s\n" msgstr "des de %.*s\n" -#: login-utils/login.c:1361 +#: login-utils/login.c:1355 #, c-format msgid "on %.*s\n" msgstr "en %.*s\n" -#: login-utils/login.c:1381 +#: login-utils/login.c:1375 #, c-format msgid "LOGIN FAILURE FROM %s, %s" -msgstr "ENTRADA FALLIDA DES DE %s, %s" +msgstr "ACCÉS FALLIT DES DE %s, %s" -#: login-utils/login.c:1384 +#: login-utils/login.c:1378 #, c-format msgid "LOGIN FAILURE ON %s, %s" -msgstr "ENTRADA FALLIDA EN %s, %s" +msgstr "ACCÉS FALLIT EN %s, %s" -#: login-utils/login.c:1388 +#: login-utils/login.c:1382 #, c-format msgid "%d LOGIN FAILURES FROM %s, %s" -msgstr "%d ENTRADES FALLIDES DES DE %s, %s" +msgstr "%d FALLES EN L'ACCÉS DES DE %s, %s" -#: login-utils/login.c:1391 +#: login-utils/login.c:1385 #, c-format msgid "%d LOGIN FAILURES ON %s, %s" -msgstr "%d ENTRADES FALLIDES EN %s, %s" +msgstr "%d FALLES EN L'ACCÉS EN %s, %s" #: login-utils/mesg.c:89 msgid "is y\n" -msgstr "és s\n" +msgstr "és y\n" #: login-utils/mesg.c:92 msgid "is n\n" @@ -6640,7 +6417,7 @@ msgstr "newgrp: No existeix tal grup." #: login-utils/newgrp.c:90 msgid "newgrp: Permission denied" -msgstr "newgrp: Permis denegat" +msgstr "newgrp: Permís denegat" #: login-utils/newgrp.c:97 msgid "newgrp: setuid" @@ -6652,9 +6429,7 @@ msgstr "No hi ha intèrpret d'ordres" #: login-utils/passwd.c:161 msgid "The password must have at least 6 characters, try again.\n" -msgstr "" -"La contrasenya ha de tindre com a mínim 6 caràcters, probeu-ho altra " -"vegada.\n" +msgstr "La contrasenya ha de tindre com a mínim 6 caràcters, probeu-ho altra vegada.\n" #: login-utils/passwd.c:174 msgid "" @@ -6672,11 +6447,11 @@ msgstr "No podeu tornar a usar l'antiga contrasenya.\n" #: login-utils/passwd.c:188 msgid "Please don't use something like your username as password!\n" -msgstr "Si us plau no useu tal com el vostre nom d'usuari com a contrasenya.\n" +msgstr "Si us plau, no useu tal com el vostre nom d'usuari com a contrasenya.\n" #: login-utils/passwd.c:199 login-utils/passwd.c:206 msgid "Please don't use something like your realname as password!\n" -msgstr "Si us plau no useu tal com el vostre nom real com a contrasenya.\n" +msgstr "Si us plau, no useu tal com el vostre nom real com a contrasenya.\n" #: login-utils/passwd.c:224 msgid "Usage: passwd [username [password]]\n" @@ -6697,7 +6472,7 @@ msgstr "No es pot executar %s: %s\n" #: login-utils/passwd.c:312 msgid "Cannot find login name" -msgstr "No es pot trobar el nom d'entada" +msgstr "No es pot trobar el nom d'accés" #: login-utils/passwd.c:319 login-utils/passwd.c:326 msgid "Only root can change the password for others.\n" @@ -6714,7 +6489,7 @@ msgstr "No es pot trobar enlloc el nom d'usuari. `%s' és realment un usuari?" #: login-utils/passwd.c:343 msgid "Sorry, I can only change local passwords. Use yppasswd instead." -msgstr "Ho sento, sos es poden canviar les contrasenyes locals. Useu yppasswd." +msgstr "Ho sento, sols es poden canviar les contrasenyes locals. Useu yppasswd." #: login-utils/passwd.c:349 msgid "UID and username does not match, imposter!" @@ -6761,7 +6536,7 @@ msgstr "CONTRASENYA DEL ROOT CANVIADA" #: login-utils/passwd.c:406 #, c-format msgid "password changed by root, user %s" -msgstr "contrasenya canviada pel root; usuari %s" +msgstr "contrasenya canviada per al root; usuari %s" #: login-utils/passwd.c:413 msgid "calling setpwnam to set password.\n" @@ -6807,7 +6582,7 @@ msgstr "El sistema s'aturarà dintre de 5 minuts" #: login-utils/shutdown.c:340 msgid "Login is therefore prohibited." -msgstr "Pel que l'entrada està prohibida." +msgstr "Pel que l'accés està prohibit." #: login-utils/shutdown.c:362 #, c-format @@ -6899,7 +6674,7 @@ msgstr "No es pot executar swapoff, s'espera que umount ho faci." #: login-utils/shutdown.c:594 msgid "Cannot fork for umount, trying manually." -msgstr "No es pot establir un canvi per a umount, provar manualment." +msgstr "No es pot establir un canvi per a umount, provar-ho manualment." #: login-utils/shutdown.c:603 #, c-format @@ -6929,8 +6704,7 @@ msgstr "l'execució de l'intèrpret d'ordres en mode d'usuari únic ha fallat\n" #: login-utils/simpleinit.c:138 msgid "fork of single user shell failed\n" -msgstr "" -"l'establiment del canvi a un sol usuari a l'intèrpret d'ordres ha fallat\n" +msgstr "l'establiment del canvi a un sol usuari a l'intèrpret d'ordres ha fallat\n" #: login-utils/simpleinit.c:206 msgid "error opening fifo\n" @@ -6938,7 +6712,7 @@ msgstr "error obrint fifo\n" #: login-utils/simpleinit.c:210 msgid "error setting close-on-exec on /dev/initctl" -msgstr "" +msgstr "error d'inicialització close-on-exec sobre /dev/initctl" #: login-utils/simpleinit.c:257 msgid "error running finalprog\n" @@ -6973,7 +6747,7 @@ msgstr "l'obertura del directori ha fallat.\n" msgid "fork failed\n" msgstr "l'establiment del canvi ha fallat\n" -#: login-utils/simpleinit.c:537 text-utils/more.c:1709 +#: login-utils/simpleinit.c:537 text-utils/more.c:1708 msgid "exec failed\n" msgstr "l'execució (exec) ha fallat\n" @@ -7035,8 +6809,7 @@ msgstr "%s: no es pot enllaçar %s: %s\n" #: login-utils/vipw.c:195 #, c-format msgid "%s: can't unlock %s: %s (your changes are still in %s)\n" -msgstr "" -"%s: no es pot desbloquejar %s: %s (els vostres canvis encara estan en %s)\n" +msgstr "%s: no es pot desbloquejar %s: %s (els vostres canvis encara estan en %s)\n" #: login-utils/vipw.c:218 #, c-format @@ -7084,7 +6857,7 @@ msgstr "Missatge de difusió general des de %s@%s" #: login-utils/wall.c:204 #, c-format msgid "%s: will not read %s - use stdin.\n" -msgstr "%s: no es pot llegir %s - usant l'entrada estàndard.\n" +msgstr "%s: no es pot llegir %s; usant l'entrada estàndard.\n" #: login-utils/wall.c:209 #, c-format @@ -7174,11 +6947,8 @@ msgid "logger: unknown priority name: %s.\n" msgstr "logger: nom amb prioritat desconeguda: %s.\n" #: misc-utils/logger.c:286 -msgid "" -"usage: logger [-is] [-f file] [-p pri] [-t tag] [-u socket] [ message ... ]\n" -msgstr "" -"useu: logger [-is] [-f fitxer] [-p pri] [-t etiqueta] [-u connector] " -"[ missatge ... ]\n" +msgid "usage: logger [-is] [-f file] [-p pri] [-t tag] [-u socket] [ message ... ]\n" +msgstr "useu: logger [-is] [-f fitxer] [-p pri] [-t etiqueta] [-u connector] [ missatge ... ]\n" #: misc-utils/look.c:348 msgid "usage: look [-dfa] [-t char] string [file]\n" @@ -7274,12 +7044,12 @@ msgstr "useu: script [-a] [-f] [-q] [-t] [fitxer]\n" msgid "Script started, file is %s\n" msgstr "Script executat, el fitxer és %s\n" -#: misc-utils/script.c:255 +#: misc-utils/script.c:264 #, c-format msgid "Script started on %s" msgstr "Script executat sobre (%s)" -#: misc-utils/script.c:327 +#: misc-utils/script.c:338 #, c-format msgid "" "\n" @@ -7288,210 +7058,210 @@ msgstr "" "\n" "Script finalitzat (%s)" -#: misc-utils/script.c:335 +#: misc-utils/script.c:345 #, c-format msgid "Script done, file is %s\n" msgstr "Script finalitzat, el fitxer és %s\n" -#: misc-utils/script.c:346 +#: misc-utils/script.c:356 msgid "openpty failed\n" msgstr "openpty ha fallat\n" -#: misc-utils/script.c:380 +#: misc-utils/script.c:390 msgid "Out of pty's\n" msgstr "No queden pty\n" #. Print error message about arguments, and the command's syntax. -#: misc-utils/setterm.c:743 +#: misc-utils/setterm.c:744 #, c-format msgid "%s: Argument error, usage\n" msgstr "%s: Argument erroni, usant\n" -#: misc-utils/setterm.c:746 +#: misc-utils/setterm.c:747 msgid " [ -term terminal_name ]\n" msgstr " [ -term nom_terminal ]\n" -#: misc-utils/setterm.c:747 +#: misc-utils/setterm.c:748 msgid " [ -reset ]\n" msgstr " [ -reset ]\n" -#: misc-utils/setterm.c:748 +#: misc-utils/setterm.c:749 msgid " [ -initialize ]\n" msgstr " [ -initialize ]\n" -#: misc-utils/setterm.c:749 +#: misc-utils/setterm.c:750 msgid " [ -cursor [on|off] ]\n" msgstr " [ -cursor [on|off] ]\n" -#: misc-utils/setterm.c:751 +#: misc-utils/setterm.c:752 msgid " [ -snow [on|off] ]\n" msgstr " [ -snow [on|off] ]\n" -#: misc-utils/setterm.c:752 +#: misc-utils/setterm.c:753 msgid " [ -softscroll [on|off] ]\n" msgstr " [ -softscroll [on|off] ]\n" -#: misc-utils/setterm.c:754 +#: misc-utils/setterm.c:755 msgid " [ -repeat [on|off] ]\n" msgstr " [ -repeat [on|off] ]\n" -#: misc-utils/setterm.c:755 +#: misc-utils/setterm.c:756 msgid " [ -appcursorkeys [on|off] ]\n" msgstr " [ -appcursorkeys [on|off] ]\n" -#: misc-utils/setterm.c:756 +#: misc-utils/setterm.c:757 msgid " [ -linewrap [on|off] ]\n" msgstr " [ -linewrap [on|off] ]\n" -#: misc-utils/setterm.c:757 +#: misc-utils/setterm.c:758 msgid " [ -default ]\n" msgstr " [ -default ]\n" -#: misc-utils/setterm.c:758 +#: misc-utils/setterm.c:759 msgid " [ -foreground black|blue|green|cyan" msgstr " [ -foreground black|blue|green|cyan" -#: misc-utils/setterm.c:759 misc-utils/setterm.c:761 +#: misc-utils/setterm.c:760 misc-utils/setterm.c:762 msgid "|red|magenta|yellow|white|default ]\n" msgstr "|red|magenta|yellow|white|default ]\n" -#: misc-utils/setterm.c:760 +#: misc-utils/setterm.c:761 msgid " [ -background black|blue|green|cyan" msgstr " [ -background black|blue|green|cyan" -#: misc-utils/setterm.c:762 +#: misc-utils/setterm.c:763 msgid " [ -ulcolor black|grey|blue|green|cyan" msgstr " [ -ulcolor black|grey|blue|green|cyan" -#: misc-utils/setterm.c:763 misc-utils/setterm.c:765 misc-utils/setterm.c:767 -#: misc-utils/setterm.c:769 +#: misc-utils/setterm.c:764 misc-utils/setterm.c:766 misc-utils/setterm.c:768 +#: misc-utils/setterm.c:770 msgid "|red|magenta|yellow|white ]\n" msgstr "|red|magenta|yellow|white ]\n" -#: misc-utils/setterm.c:764 +#: misc-utils/setterm.c:765 msgid " [ -ulcolor bright blue|green|cyan" msgstr " [ -ulcolor bright blue|green|cyan" -#: misc-utils/setterm.c:766 +#: misc-utils/setterm.c:767 msgid " [ -hbcolor black|grey|blue|green|cyan" msgstr " [ -hbcolor black|grey|blue|green|cyan" -#: misc-utils/setterm.c:768 +#: misc-utils/setterm.c:769 msgid " [ -hbcolor bright blue|green|cyan" msgstr " [ -hbcolor bright blue|green|cyan" -#: misc-utils/setterm.c:771 +#: misc-utils/setterm.c:772 msgid " [ -standout [ attr ] ]\n" msgstr " [ -standout [ attr ] ]\n" -#: misc-utils/setterm.c:773 +#: misc-utils/setterm.c:774 msgid " [ -inversescreen [on|off] ]\n" msgstr " [ -inversescreen [on|off] ]\n" -#: misc-utils/setterm.c:774 +#: misc-utils/setterm.c:775 msgid " [ -bold [on|off] ]\n" msgstr " [ -bold [on|off] ]\n" -#: misc-utils/setterm.c:775 +#: misc-utils/setterm.c:776 msgid " [ -half-bright [on|off] ]\n" msgstr " [ -half-bright [on|off] ]\n" -#: misc-utils/setterm.c:776 +#: misc-utils/setterm.c:777 msgid " [ -blink [on|off] ]\n" msgstr " [ -blink [on|off] ]\n" -#: misc-utils/setterm.c:777 +#: misc-utils/setterm.c:778 msgid " [ -reverse [on|off] ]\n" msgstr " [ -reverse [on|off] ]\n" -#: misc-utils/setterm.c:778 +#: misc-utils/setterm.c:779 msgid " [ -underline [on|off] ]\n" msgstr " [ -underline [on|off] ]\n" -#: misc-utils/setterm.c:779 +#: misc-utils/setterm.c:780 msgid " [ -store ]\n" msgstr " [ -store ]\n" -#: misc-utils/setterm.c:780 +#: misc-utils/setterm.c:781 msgid " [ -clear [all|rest] ]\n" msgstr " [ -clear [all|rest] ]\n" -#: misc-utils/setterm.c:781 +#: misc-utils/setterm.c:782 msgid " [ -tabs [ tab1 tab2 tab3 ... ] ] (tabn = 1-160)\n" msgstr " [ -tabs [ tab1 tab2 tab3 ... ] ] (tabn = 1-160)\n" -#: misc-utils/setterm.c:782 +#: misc-utils/setterm.c:783 msgid " [ -clrtabs [ tab1 tab2 tab3 ... ] ] (tabn = 1-160)\n" msgstr " [ -clrtabs [ tab1 tab2 tab3 ... ] ] (tabn = 1-160)\n" -#: misc-utils/setterm.c:783 +#: misc-utils/setterm.c:784 msgid " [ -regtabs [1-160] ]\n" msgstr " [ -regtabs [1-160] ]\n" -#: misc-utils/setterm.c:784 +#: misc-utils/setterm.c:785 msgid " [ -blank [0-60] ]\n" msgstr " [ -blank [0-60] ]\n" -#: misc-utils/setterm.c:785 +#: misc-utils/setterm.c:786 msgid " [ -dump [1-NR_CONSOLES] ]\n" msgstr " [ -dump [1-NÚM_CONSOLES] ]\n" -#: misc-utils/setterm.c:786 +#: misc-utils/setterm.c:787 msgid " [ -append [1-NR_CONSOLES] ]\n" msgstr " [ -append [1-NÚM_CONSOLES] ]\n" -#: misc-utils/setterm.c:787 +#: misc-utils/setterm.c:788 msgid " [ -file dumpfilename ]\n" msgstr " [ -file nom_fitxer_abocar ]\n" -#: misc-utils/setterm.c:788 +#: misc-utils/setterm.c:789 msgid " [ -msg [on|off] ]\n" msgstr " [ -msg [on|off] ]\n" -#: misc-utils/setterm.c:789 +#: misc-utils/setterm.c:790 msgid " [ -msglevel [0-8] ]\n" msgstr " [ -msglevel [0-8] ]\n" -#: misc-utils/setterm.c:790 +#: misc-utils/setterm.c:791 msgid " [ -powersave [on|vsync|hsync|powerdown|off] ]\n" msgstr " [ -powersave [on|vsync|hsync|powerdown|off] ]\n" -#: misc-utils/setterm.c:791 +#: misc-utils/setterm.c:792 msgid " [ -powerdown [0-60] ]\n" msgstr " [ -powerdown [0-60] ]\n" -#: misc-utils/setterm.c:792 +#: misc-utils/setterm.c:793 msgid " [ -blength [0-2000] ]\n" msgstr " [ -blength [0-2000] ]\n" -#: misc-utils/setterm.c:793 +#: misc-utils/setterm.c:794 msgid " [ -bfreq freqnumber ]\n" msgstr " [ -bfreq número_freqüència ]\n" -#: misc-utils/setterm.c:1048 +#: misc-utils/setterm.c:1049 msgid "cannot (un)set powersave mode\n" msgstr "no es pot (des)activar el mode d'estalvi d'energia\n" -#: misc-utils/setterm.c:1087 misc-utils/setterm.c:1095 +#: misc-utils/setterm.c:1088 misc-utils/setterm.c:1096 #, c-format msgid "klogctl error: %s\n" msgstr "Error de klogctl: %s\n" -#: misc-utils/setterm.c:1134 +#: misc-utils/setterm.c:1149 #, c-format msgid "Error reading %s\n" msgstr "Error llegint %s\n" -#: misc-utils/setterm.c:1149 +#: misc-utils/setterm.c:1164 msgid "Error writing screendump\n" msgstr "Error escrivint un abocat de pantalla\n" -#: misc-utils/setterm.c:1163 +#: misc-utils/setterm.c:1178 #, c-format msgid "couldn't read %s, and cannot ioctl dump\n" msgstr "no es pot llegir %s, i no es pot efectuar un abocat de ioctl\n" -#: misc-utils/setterm.c:1229 +#: misc-utils/setterm.c:1244 #, c-format msgid "%s: $TERM is not defined.\n" msgstr "%s: $TERM no està definit.\n" @@ -7506,7 +7276,7 @@ msgstr "write: no es pot trobar el nom de la vostra tty\n" #: misc-utils/write.c:110 msgid "write: you have write permission turned off.\n" -msgstr "write: teniu el permis d'escriptura desactivat.\n" +msgstr "write: teniu el permís d'escriptura desactivat.\n" #: misc-utils/write.c:131 #, c-format @@ -7547,61 +7317,55 @@ msgstr "Missatge des de %s@%s (com a %s) el %s a les %s ..." msgid "Message from %s@%s on %s at %s ..." msgstr "Missatge des de %s@%s el %s a les %s ..." -#: mount/fstab.c:113 +#: mount/fstab.c:114 #, c-format msgid "warning: error reading %s: %s" msgstr "advertència: error al llegir %s: %s" -#: mount/fstab.c:141 mount/fstab.c:164 +#: mount/fstab.c:142 mount/fstab.c:165 #, c-format msgid "warning: can't open %s: %s" msgstr "advertència: no es pot obrir %s: %s" -#: mount/fstab.c:145 +#: mount/fstab.c:146 #, c-format msgid "mount: could not open %s - using %s instead\n" -msgstr "mount: no es pot obrir %s - en el seu lloc s'usarà %s\n" +msgstr "mount: no es pot obrir %s; en el seu lloc s'usarà %s\n" #. linktargetfile does not exist (as a file) #. and we cannot create it. Read-only filesystem? #. Too many files open in the system? #. Filesystem full? -#: mount/fstab.c:387 +#: mount/fstab.c:413 #, c-format msgid "can't create lock file %s: %s (use -n flag to override)" -msgstr "" -"no es pot crear el fitxer de blocat %s: %s (useu l'etiqueta -n per a " -"modificar aquest valor)" +msgstr "no es pot crear el fitxer de blocat %s: %s (useu l'etiqueta -n per a modificar aquest valor)" -#: mount/fstab.c:399 +#: mount/fstab.c:425 #, c-format msgid "can't link lock file %s: %s (use -n flag to override)" -msgstr "" -"no es pot enllaçar el fitxer de blocat %s: %s (useu l'etiqueta -n per a " -"modificar aquest valor)" +msgstr "no es pot enllaçar el fitxer de blocat %s: %s (useu l'etiqueta -n per a modificar aquest valor)" -#: mount/fstab.c:411 +#: mount/fstab.c:437 #, c-format msgid "can't open lock file %s: %s (use -n flag to override)" -msgstr "" -"no es pot obrir el fitxer de blocat %s: %s (useu l'etiqueta -n per a " -"modificar aquest valor)" +msgstr "no es pot obrir el fitxer de blocat %s: %s (useu l'etiqueta -n per a modificar aquest valor)" -#: mount/fstab.c:426 +#: mount/fstab.c:452 #, c-format msgid "Can't lock lock file %s: %s\n" msgstr "No es pot blocar al fitxer de blocat %s: %s\n" -#: mount/fstab.c:439 +#: mount/fstab.c:465 #, c-format msgid "can't lock lock file %s: %s" msgstr "no es pot blocar al fitxer de blocat %s: %s" -#: mount/fstab.c:441 +#: mount/fstab.c:467 msgid "timed out" msgstr "temps d'espera excedit" -#: mount/fstab.c:448 +#: mount/fstab.c:474 #, c-format msgid "" "Cannot create link %s\n" @@ -7610,22 +7374,22 @@ msgstr "" "No es pot crear l'enllaç %s\n" "Potser hi hagi un fitxer de blocat obsolet?\n" -#: mount/fstab.c:497 mount/fstab.c:533 +#: mount/fstab.c:523 mount/fstab.c:559 #, c-format msgid "cannot open %s (%s) - mtab not updated" msgstr "no es pot obrir %s (%s) - mtab no actualitzat" -#: mount/fstab.c:541 +#: mount/fstab.c:567 #, c-format msgid "error writing %s: %s" msgstr "error escrivint %s: %s" -#: mount/fstab.c:549 +#: mount/fstab.c:575 #, c-format msgid "error changing mode of %s: %s\n" msgstr "error al canviar el mode de %s: %s\n" -#: mount/fstab.c:567 +#: mount/fstab.c:593 #, c-format msgid "can't rename %s to %s: %s\n" msgstr "no es pot reanomenar %s per %s: %s\n" @@ -7722,8 +7486,7 @@ msgstr "del_loop(%s): correcte\n" #: mount/lomount.c:317 msgid "This mount was compiled without loop support. Please recompile.\n" -msgstr "" -"Aquest mount s'ha compilat sense suport loop. Si us plau recompileu-lo.\n" +msgstr "Aquest mount s'ha compilat sense suport loop. Si us plau, recompileu-lo.\n" #: mount/lomount.c:354 #, c-format @@ -7745,9 +7508,7 @@ msgstr "no hi ha prou memòria" #: mount/lomount.c:443 msgid "No loop support was available at compile time. Please recompile.\n" -msgstr "" -"En temps de compilació el suport loop no estava disponible. Si us plau " -"recompileu.\n" +msgstr "Quan es va compilar el suport loop no estava disponible. Si us plau, recompileu.\n" #: mount/mntent.c:165 #, c-format @@ -7763,162 +7524,158 @@ msgstr "[mntent]: la línia %d de %s és incorrecta%s\n" msgid "; rest of file ignored" msgstr "; la resta del fitxer s'ignorarà" -#: mount/mount.c:385 +#: mount/mount.c:388 #, c-format msgid "mount: according to mtab, %s is already mounted on %s" msgstr "mount: segons mtab, %s ja està muntat en %s" -#: mount/mount.c:389 +#: mount/mount.c:392 #, c-format msgid "mount: according to mtab, %s is mounted on %s" msgstr "mount: segons mtab, %s està muntat en %s" -#: mount/mount.c:410 +#: mount/mount.c:413 #, c-format msgid "mount: can't open %s for writing: %s" msgstr "mount: no es pot obrir %s per a escriptura: %s" -#: mount/mount.c:425 mount/mount.c:644 +#: mount/mount.c:428 mount/mount.c:647 #, c-format msgid "mount: error writing %s: %s" msgstr "mount: error escrivint %s: %s" -#: mount/mount.c:432 +#: mount/mount.c:435 #, c-format msgid "mount: error changing mode of %s: %s" msgstr "mount: error al canviar el mode de %s: %s" -#: mount/mount.c:478 +#: mount/mount.c:481 #, c-format msgid "%s looks like swapspace - not mounted" msgstr "%s sembla espai d'intercanvi - no muntat" -#: mount/mount.c:538 +#: mount/mount.c:541 msgid "mount failed" msgstr "el muntatge ha fallat" -#: mount/mount.c:540 +#: mount/mount.c:543 #, c-format msgid "mount: only root can mount %s on %s" msgstr "mount: sols l'usuari root pot muntar %s en %s" -#: mount/mount.c:568 +#: mount/mount.c:571 msgid "mount: loop device specified twice" msgstr "mount: el dispositiu loop està especificat dues vegades" -#: mount/mount.c:573 +#: mount/mount.c:576 msgid "mount: type specified twice" msgstr "mount: el tipus està especificat dues vegades" -#: mount/mount.c:585 +#: mount/mount.c:588 msgid "mount: skipping the setup of a loop device\n" msgstr "mount: saltant-se la configuració d'un dispositiu loop\n" -#: mount/mount.c:594 +#: mount/mount.c:597 #, c-format msgid "mount: going to use the loop device %s\n" msgstr "mount: s'usarà el dispositiu loop %s\n" -#: mount/mount.c:598 +#: mount/mount.c:601 msgid "mount: failed setting up loop device\n" msgstr "mount: falla al configurar el dispositiu loop\n" -#: mount/mount.c:602 +#: mount/mount.c:605 msgid "mount: setup loop device successfully\n" msgstr "mount: configuració correcta del dispositiu loop\n" -#: mount/mount.c:639 +#: mount/mount.c:642 #, c-format msgid "mount: can't open %s: %s" msgstr "mount: no es pot obrir %s: %s" -#: mount/mount.c:662 +#: mount/mount.c:665 #, c-format msgid "mount: cannot open %s for setting speed" msgstr "mount: no es pot obrir %s per a establir-ne la velocitat" -#: mount/mount.c:665 +#: mount/mount.c:668 #, c-format msgid "mount: cannot set speed: %s" msgstr "mount : no es pot establir la velocitat de: %s" -#: mount/mount.c:726 mount/mount.c:1300 +#: mount/mount.c:722 mount/mount.c:1296 #, c-format msgid "mount: cannot fork: %s" msgstr "mount: no es pot establir el canvi: %s" -#: mount/mount.c:806 +#: mount/mount.c:802 msgid "mount: this version was compiled without support for the type `nfs'" -msgstr "" -"mount: aquesta versió ha estat compilada sense suport per al tipus `nfs'" +msgstr "mount: aquesta versió ha estat compilada sense suport per al tipus `nfs'" -#: mount/mount.c:845 +#: mount/mount.c:841 msgid "mount: failed with nfs mount version 4, trying 3..\n" msgstr "mount : falla al muntar la versió 4 de nfs, escolliu la 3...\n" -#: mount/mount.c:856 -msgid "" -"mount: I could not determine the filesystem type, and none was specified" -msgstr "" -"mount: no es pot determinar el tipus del sistema de fitxers i no n'heu " -"especificat cap" +#: mount/mount.c:852 +msgid "mount: I could not determine the filesystem type, and none was specified" +msgstr "mount: no es pot determinar el tipus del sistema de fitxers i no n'heu especificat cap" -#: mount/mount.c:859 +#: mount/mount.c:855 msgid "mount: you must specify the filesystem type" msgstr "mount: haureu d'especificar el tipus del sistema de fitxers" #. should not happen -#: mount/mount.c:862 +#: mount/mount.c:858 msgid "mount: mount failed" msgstr "mount: el muntatge ha fallat" -#: mount/mount.c:868 mount/mount.c:903 +#: mount/mount.c:864 mount/mount.c:899 #, c-format msgid "mount: mount point %s is not a directory" msgstr "mount: el punt de muntatge %s no és un directori" -#: mount/mount.c:870 +#: mount/mount.c:866 msgid "mount: permission denied" msgstr "mount: permís denegat" -#: mount/mount.c:872 +#: mount/mount.c:868 msgid "mount: must be superuser to use mount" msgstr "mount: haureu de ser un superusuari per a usar mount" #. heuristic: if /proc/version exists, then probably proc is mounted #. proc mounted? -#: mount/mount.c:876 mount/mount.c:880 +#: mount/mount.c:872 mount/mount.c:876 #, c-format msgid "mount: %s is busy" msgstr "mount: %s està ocupat" #. no #. yes, don't mention it -#: mount/mount.c:882 +#: mount/mount.c:878 msgid "mount: proc already mounted" msgstr "mount: proc ja està muntat" -#: mount/mount.c:884 +#: mount/mount.c:880 #, c-format msgid "mount: %s already mounted or %s busy" msgstr "mount: %s ja està muntat o %s està ocupat" -#: mount/mount.c:890 +#: mount/mount.c:886 #, c-format msgid "mount: mount point %s does not exist" msgstr "mount: el punt de muntatge %s no existeix" -#: mount/mount.c:892 +#: mount/mount.c:888 #, c-format msgid "mount: mount point %s is a symbolic link to nowhere" msgstr "mount: el punt de muntatge %s és un enllaç simbòlic sense destí" -#: mount/mount.c:895 +#: mount/mount.c:891 #, c-format msgid "mount: special device %s does not exist" msgstr "mount: el dispositiu especial %s no existeix" -#: mount/mount.c:905 +#: mount/mount.c:901 #, c-format msgid "" "mount: special device %s does not exist\n" @@ -7927,12 +7684,12 @@ msgstr "" "mount: el dispositiu especial %s no existeix\n" " (una ruta prefixada no és un directori)\n" -#: mount/mount.c:918 +#: mount/mount.c:914 #, c-format msgid "mount: %s not mounted already, or bad option" msgstr "mount: %s encara no està muntat o una opció és incorrecta" -#: mount/mount.c:920 +#: mount/mount.c:916 #, c-format msgid "" "mount: wrong fs type, bad option, bad superblock on %s,\n" @@ -7941,150 +7698,144 @@ msgstr "" "mount: tipus del sistema de fitxers incorrecte, opció incorrecta,\n" " superbloc incorrecte en %s o masses sistemes de fitxers muntats" -#: mount/mount.c:954 +#: mount/mount.c:950 msgid "mount table full" msgstr "taula de dispositius muntats completa" -#: mount/mount.c:956 +#: mount/mount.c:952 #, c-format msgid "mount: %s: can't read superblock" msgstr "mount: %s: no es pot llegir el superbloc" -#: mount/mount.c:960 +#: mount/mount.c:956 #, c-format msgid "mount: %s: unknown device" msgstr "umount: %s: dispositiu desconegut" -#: mount/mount.c:965 +#: mount/mount.c:961 #, c-format msgid "mount: fs type %s not supported by kernel" msgstr "mount: el tipus del sistema de fitxers %s no està suportat pel nucli" -#: mount/mount.c:977 +#: mount/mount.c:973 #, c-format msgid "mount: probably you meant %s" msgstr "mount: probablement volíeu referir-vos a %s" -#: mount/mount.c:979 +#: mount/mount.c:975 msgid "mount: maybe you meant iso9660 ?" msgstr "mount: potser volíeu referir-vos a iso9660 ?" -#: mount/mount.c:982 +#: mount/mount.c:978 #, c-format msgid "mount: %s has wrong device number or fs type %s not supported" -msgstr "" -"mount: %s té un número de dispositiu incorrecte o el tipus del sistema de " -"fitxers %s no està suportat" +msgstr "mount: %s té un número de dispositiu incorrecte o el tipus del sistema de fitxers %s no està suportat" #. strange ... -#: mount/mount.c:988 +#: mount/mount.c:984 #, c-format msgid "mount: %s is not a block device, and stat fails?" msgstr "mount: %s no és un dispositiu de blocs, i stat falla?" -#: mount/mount.c:990 +#: mount/mount.c:986 #, c-format msgid "" "mount: the kernel does not recognize %s as a block device\n" " (maybe `insmod driver'?)" msgstr "" -"mount: el nucli no reconeix %s coma un dispositiu de blocs\n" -" (potser `insmod controlador'?)" +"mount: el nucli no reconeix %s com a un dispositiu de blocs\n" +" (potser fent `insmod controlador'?)" -#: mount/mount.c:993 +#: mount/mount.c:989 #, c-format msgid "mount: %s is not a block device (maybe try `-o loop'?)" -msgstr "mount: %s no és un dispositiu de blocs (probeu amb `-o loop')" +msgstr "mount: %s no és un dispositiu de blocs (proveu amb `-o loop')" -#: mount/mount.c:996 +#: mount/mount.c:992 #, c-format msgid "mount: %s is not a block device" msgstr "mount: %s no és un dispositiu de blocs" -#: mount/mount.c:999 +#: mount/mount.c:995 #, c-format msgid "mount: %s is not a valid block device" msgstr "mount: %s no és un dispositiu de blocs vàlid" #. pre-linux 1.1.38, 1.1.41 and later #. linux 1.1.38 and later -#: mount/mount.c:1002 +#: mount/mount.c:998 msgid "block device " msgstr "dispositiu de blocs " -#: mount/mount.c:1004 +#: mount/mount.c:1000 #, c-format msgid "mount: cannot mount %s%s read-only" -msgstr "mount : impossible de muntar %s%s com a sols lectura" +msgstr "mount : no es pot muntar %s%s com a sols lectura" -#: mount/mount.c:1008 +#: mount/mount.c:1004 #, c-format msgid "mount: %s%s is write-protected but explicit `-w' flag given" -msgstr "" -"mount : %s%s està protegit contra escriptura, a més dona l'etiqueta " -"explicita `-w'" +msgstr "mount : %s%s està protegit contra escriptura però se li ha donat l'etiqueta explicita `-w'" -#: mount/mount.c:1024 +#: mount/mount.c:1020 #, c-format msgid "mount: %s%s is write-protected, mounting read-only" -msgstr "" -"mount: %s%s està protegit contra escriptura; es muntarà en sols lectura" +msgstr "mount: %s%s està protegit contra escriptura; es muntarà en sols lectura" -#: mount/mount.c:1111 +#: mount/mount.c:1107 #, c-format msgid "mount: the label %s occurs on both %s and %s\n" msgstr "mount: l'etiqueta %s apareix en %s i %s\n" -#: mount/mount.c:1115 +#: mount/mount.c:1111 #, c-format msgid "mount: %s duplicate - not mounted" -msgstr "mount: %s duplicada - no serà muntada" +msgstr "mount: %s duplicada; no es muntarà" -#: mount/mount.c:1125 +#: mount/mount.c:1121 #, c-format msgid "mount: going to mount %s by %s\n" msgstr "mount: muntant %s per %s\n" -#: mount/mount.c:1126 +#: mount/mount.c:1122 msgid "UUID" msgstr "UUID" -#: mount/mount.c:1126 +#: mount/mount.c:1122 msgid "label" msgstr "etiqueta" -#: mount/mount.c:1128 mount/mount.c:1573 +#: mount/mount.c:1124 mount/mount.c:1573 msgid "mount: no such partition found" msgstr "mount: no troba aquesta partició" -#: mount/mount.c:1136 +#: mount/mount.c:1132 msgid "mount: no type was given - I'll assume nfs because of the colon\n" -msgstr "mount: no s'ha especificat cap tipus - assumiré nfs pels dos punts\n" +msgstr "mount: no s'ha especificat cap tipus; s'assumeix nfs per als dos punts\n" -#: mount/mount.c:1141 +#: mount/mount.c:1137 msgid "mount: no type was given - I'll assume smb because of the // prefix\n" -msgstr "mount: no s'ha especificat cap tipus; s'assumeix smb, pel prefix //\n" +msgstr "mount: no s'ha especificat cap tipus; s'assumeix smb per al prefix //\n" #. #. * Retry in the background. #. -#: mount/mount.c:1157 +#: mount/mount.c:1153 #, c-format msgid "mount: backgrounding \"%s\"\n" msgstr "mount: executant en segon plà \"%s\"\n" -#: mount/mount.c:1168 +#: mount/mount.c:1164 #, c-format msgid "mount: giving up \"%s\"\n" msgstr "mount: abandonant \"%s\"\n" -#: mount/mount.c:1245 +#: mount/mount.c:1241 #, c-format msgid "mount: %s already mounted on %s\n" msgstr "mount: %s ja està muntat en %s\n" -#: mount/mount.c:1376 -#, fuzzy +#: mount/mount.c:1373 msgid "" "Usage: mount -V : print version\n" " mount -h : print this help\n" @@ -8113,9 +7864,9 @@ msgstr "" " mount : llista els sistemes de fitxers muntats\n" " mount -l : ídem, incloguen les etiquetes de volumen\n" "Fins aquí la part informativa. Seguim amb el muntatge.\n" -"El comandament és `mount [-t tipus_sis._fitx.] quelcom lloc'.\n" -"Els detalls en el /etc/fstab poden ser omesos.\n" -" mount -a : munta tot el indicat en el /etc/fstab\n" +"El comandament és `mount [-t tipus_sis._fitx.] alguna_cosa lloc'.\n" +"Els detalls en /etc/fstab es poden ometre.\n" +" mount -a [-t|-O] : munta tot l'indicat en /etc/fstab\n" " mount dispositiu : munta el dispositiu en el lloc conegut\n" " mount directori : munta el dispositiu conegut aquí\n" " mount -t tipus disp dir : comandament mount ordinari\n" @@ -8124,25 +7875,25 @@ msgstr "" "un arbre de directoris ja visible en un altre lloc\n" " mount --bind dir_antic dir_nou\n" "o moure un subarbre:\n" -" mount --move antic dir_nou\n" -"Es pot donar un dispositiu mitjançant el nom, diguen /dev/hda1 o\n" +" mount --move dir_antic dir_nou\n" +"Es pot donar un dispositiu mitjançant el nom, posem-hi /dev/hda1 o\n" "/dev/cdrom o mitjançant l'etiqueta, usant -L etiqueta o mitjançant uuid,\n" -"usant -U uuid.D'altres opcions: [-nfFrsvw] [-o opcions].\n" +"usant -U uuid. D'altres opcions: [-nfFrsvw] [-o opcions].\n" "Per a més detalls, escriviu man 8 mount.\n" #: mount/mount.c:1549 msgid "mount: only root can do that" -msgstr "mount: sols el root pot fer això" +msgstr "mount: sols l'usuari root pot fer això" #: mount/mount.c:1554 #, c-format msgid "mount: no %s found - creating it..\n" -msgstr "mount: no s'ha trobat a %s - s'està creant...\n" +msgstr "mount: no s'ha trobat %s; s'està creant...\n" #: mount/mount.c:1568 #, c-format msgid "mount: the label %s occurs on both %s and %s - not mounted\n" -msgstr "mount: l'etiqueta %s apareix en %s i %s - no s'ha muntat\n" +msgstr "mount: l'etiqueta %s apareix en %s i %s; no s'ha muntat\n" #: mount/mount.c:1575 #, c-format @@ -8163,42 +7914,39 @@ msgstr "mount: no es pot trobar %s en %s" msgid "mount: can't find %s in %s or %s" msgstr "mount: no es pot trobar %s en %s o %s" -#: mount/mount_by_label.c:259 +#: mount/mount_by_label.c:153 #, c-format -msgid "" -"mount: could not open %s, so UUID and LABEL conversion cannot be done.\n" -msgstr "" -"mount : impossible obrir %s, donat que la conversió UUID i LABEL no s'ha " -"fet.\n" +msgid "mount: could not open %s, so UUID and LABEL conversion cannot be done.\n" +msgstr "mount : impossible obrir %s, donat que la conversió UUID i LABEL no s'ha fet.\n" -#: mount/mount_by_label.c:378 +#: mount/mount_by_label.c:272 msgid "mount: bad UUID" msgstr "mount: UUID incorrecte" -#: mount/mount_guess_fstype.c:484 +#: mount/mount_guess_fstype.c:486 msgid "mount: error while guessing filesystem type\n" msgstr "mount: error a l'intentar endevinar el tipus del sistema de fitxers\n" -#: mount/mount_guess_fstype.c:493 +#: mount/mount_guess_fstype.c:495 #, c-format msgid "mount: you didn't specify a filesystem type for %s\n" msgstr "mount: no heu especificat un tipus de sistema de fitxers per a %s\n" -#: mount/mount_guess_fstype.c:496 +#: mount/mount_guess_fstype.c:498 #, c-format msgid " I will try all types mentioned in %s or %s\n" msgstr " Es provarà amb tots els tipus indicats en %s o %s\n" -#: mount/mount_guess_fstype.c:499 +#: mount/mount_guess_fstype.c:501 msgid " and it looks like this is swapspace\n" msgstr " i sembla que això és espai d'intercanvi\n" -#: mount/mount_guess_fstype.c:501 +#: mount/mount_guess_fstype.c:503 #, c-format msgid " I will try type %s\n" msgstr " Provaré amb el tipus %s\n" -#: mount/mount_guess_fstype.c:589 +#: mount/mount_guess_fstype.c:591 #, c-format msgid "Trying %s\n" msgstr "Provant amb %s\n" @@ -8293,7 +8041,7 @@ msgid "bug in xstrndup call" msgstr "error en la crida xstrndup" #: mount/swapon.c:64 -#, fuzzy, c-format +#, c-format msgid "" "usage: %s [-hV]\n" " %s -a [-e] [-v]\n" @@ -8301,7 +8049,7 @@ msgid "" " %s [-s]\n" msgstr "" "useu: %s [-hV]\n" -" %s -a [-v]\n" +" %s -a [-e] [-v]\n" " %s [-v] [-p prioritat] especial ...\n" " %s [-s]\n" @@ -8329,9 +8077,7 @@ msgstr "swapon: no es pot executar stat per a %s: %s\n" #: mount/swapon.c:193 #, c-format msgid "swapon: warning: %s has insecure permissions %04o, %04o suggested\n" -msgstr "" -"swapon: atenció: %s teniu els permisos %04o que no son segurs, es " -"suggereixen %04o\n" +msgstr "swapon: atenció: %s teniu els permisos %04o que no son segurs, es suggereixen %04o\n" #: mount/swapon.c:205 #, c-format @@ -8433,18 +8179,16 @@ msgstr "%s desmuntat\n" #: mount/umount.c:426 msgid "umount: cannot find list of filesystems to unmount" -msgstr "" -"umount: no es pot trobar la llista dels sistemes de fitxers per a desmuntar" +msgstr "umount: no es pot trobar la llista dels sistemes de fitxers per a desmuntar" #: mount/umount.c:457 -#, fuzzy msgid "" "Usage: umount [-hV]\n" " umount -a [-f] [-r] [-n] [-v] [-t vfstypes] [-O opts]\n" " umount [-f] [-r] [-n] [-v] special | node...\n" msgstr "" "Useu: umount [-hV]\n" -" umount -a [-f] [-r] [-n] [-v] [-t tipus_sist._fitx._virtuals]\n" +" umount -a [-f] [-r] [-n] [-v] [-t tipus_sist._fitx._virtuals] [-O opcions]\n" " umount [-f] [-r] [-n] [-v] especial | node...\n" #: mount/umount.c:539 @@ -8488,8 +8232,7 @@ msgstr "umount: sols el root pot fer això" #: sys-utils/ctrlaltdel.c:27 msgid "You must be root to set the Ctrl-Alt-Del behaviour.\n" -msgstr "" -"Haureu de ser el root per a establir el comportament de Ctrl-Alt-Supr.\n" +msgstr "Haureu de ser el root per a establir el comportament de Ctrl-Alt-Supr.\n" #: sys-utils/ctrlaltdel.c:42 msgid "Usage: ctrlaltdel hard|soft\n" @@ -8501,19 +8244,16 @@ msgid "" "File %s, For threshold value %lu, Maximum characters in fifo were %d,\n" "and the maximum transfer rate in characters/second was %f\n" msgstr "" -"Fitxer %s, per al valor del llindar %lu, el màxim de caràcters en fifo fou " -"de %d\n" +"Fitxer %s, per al valor del llindar %lu, el màxim de caràcters en fifo fou de %d\n" "i la velocitat de transferència màxima en caracteres per segon fou de %f\n" #: sys-utils/cytune.c:131 #, c-format msgid "" -"File %s, For threshold value %lu and timrout value %lu, Maximum characters " -"in fifo were %d,\n" +"File %s, For threshold value %lu and timrout value %lu, Maximum characters in fifo were %d,\n" "and the maximum transfer rate in characters/second was %f\n" msgstr "" -"Fitxer %s, per al valor del llindar %lu i el valor de temps en espera %lu, " -"el màxim de caràcters en fifo fou de %d\n" +"Fitxer %s, per al valor del llindar %lu i el valor de temps en espera %lu, el màxim de caràcters en fifo fou de %d\n" "i la velocitat de transferència màxima en caracteres per segon fou de %f\n" #: sys-utils/cytune.c:195 @@ -8543,12 +8283,8 @@ msgstr "Valor de l'hora per defecte invàlid: %s\n" #: sys-utils/cytune.c:244 #, c-format -msgid "" -"Usage: %s [-q [-i interval]] ([-s value]|[-S value]) ([-t value]|[-T value]) " -"[-g|-G] file [file...]\n" -msgstr "" -"Useu: %s [-q [-i interval]] ([-s valor]|[-S valor]) ([-t valor]|[-T valor]) " -"[-g|-G] fitxer [fitxer...]\n" +msgid "Usage: %s [-q [-i interval]] ([-s value]|[-S value]) ([-t value]|[-T value]) [-g|-G] file [file...]\n" +msgstr "Useu: %s [-q [-i interval]] ([-s valor]|[-S valor]) ([-t valor]|[-T valor]) [-g|-G] fitxer [fitxer...]\n" #: sys-utils/cytune.c:256 sys-utils/cytune.c:275 sys-utils/cytune.c:295 #: sys-utils/cytune.c:345 @@ -8601,11 +8337,8 @@ msgstr "No es pot emetre CYGETMON en %s: %s\n" #: sys-utils/cytune.c:424 #, c-format -msgid "" -"%s: %lu ints, %lu/%lu chars; fifo: %lu thresh, %lu tmout, %lu max, %lu now\n" -msgstr "" -"%s: %lu enters, %lu/%lu caràcters; fifo: %lu llindar, %lu temps_espera, %lu " -"màxim, %lu ara\n" +msgid "%s: %lu ints, %lu/%lu chars; fifo: %lu thresh, %lu tmout, %lu max, %lu now\n" +msgstr "%s: %lu enters, %lu/%lu caràcters; fifo: %lu llindar, %lu temps_espera, %lu màxim, %lu ara\n" #: sys-utils/cytune.c:430 #, c-format @@ -8614,18 +8347,15 @@ msgstr " %f enters/seg.; %f rebut, %f enviat (caràcters/seg.)\n" #: sys-utils/cytune.c:435 #, c-format -msgid "" -"%s: %lu ints, %lu chars; fifo: %lu thresh, %lu tmout, %lu max, %lu now\n" -msgstr "" -"%s: %lu enters, %lu caràcters; fifo: %lu llindar, %lu temps_espera, %lu " -"màxim, %lu ara\n" +msgid "%s: %lu ints, %lu chars; fifo: %lu thresh, %lu tmout, %lu max, %lu now\n" +msgstr "%s: %lu enters, %lu caràcters; fifo: %lu llindar, %lu temps_espera, %lu màxim, %lu ara\n" #: sys-utils/cytune.c:441 #, c-format msgid " %f int/sec; %f rec (char/sec)\n" msgstr " %f enters/seg.; %f rebut (caràcters/seg.)\n" -#: sys-utils/dmesg.c:37 +#: sys-utils/dmesg.c:38 #, c-format msgid "Usage: %s [-c] [-n level] [-s bufsize]\n" msgstr "Useu: %s [-c] [-n nivell] [-s mida_memòria_temporal]\n" @@ -8732,11 +8462,8 @@ msgstr " %s -h per a l'ajuda.\n" #: sys-utils/ipcs.c:129 #, c-format -msgid "" -"%s provides information on ipc facilities for which you have read access.\n" -msgstr "" -"%s proveeix d'informació sobre els recursos ipc per als quals teniu accés de " -"lectura.\n" +msgid "%s provides information on ipc facilities for which you have read access.\n" +msgstr "%s proveeix d'informació sobre els recursos ipc per als quals teniu accés de lectura.\n" #: sys-utils/ipcs.c:131 msgid "" @@ -8778,9 +8505,7 @@ msgstr "" #: sys-utils/ipcs.c:135 msgid "-i id [-s -q -m] : details on resource identified by id\n" -msgstr "" -"-i id [-s -q -m] : detalls sobre els recursos identificats per " -"l'identificador\n" +msgstr "-i id [-s -q -m] : detalls sobre els recursos identificats per l'identificador\n" #: sys-utils/ipcs.c:267 msgid "kernel not configured for shared memory\n" @@ -8795,7 +8520,7 @@ msgstr "------ Límits de la memòria compartida --------\n" #: sys-utils/ipcs.c:278 #, c-format msgid "max number of segments = %ld\n" -msgstr "nombre màx. de segments = %ld\n" +msgstr "màx. nombre de segments = %ld\n" #: sys-utils/ipcs.c:280 #, c-format @@ -9167,9 +8892,9 @@ msgid "mode=%#o\taccess_perms=%#o\n" msgstr "mode=%#o\taccess_perms=%#o\n" #: sys-utils/ipcs.c:612 -#, fuzzy, c-format +#, c-format msgid "bytes=%ld\tlpid=%d\tcpid=%d\tnattch=%ld\n" -msgstr "octets=%d\tlpid=%d\tcpid=%d\tnattch=%ld\n" +msgstr "octets=%ld\tlpid=%d\tcpid=%d\tnattch=%ld\n" #: sys-utils/ipcs.c:615 #, c-format @@ -9271,14 +8996,11 @@ msgstr "pid" #: sys-utils/rdev.c:69 msgid "usage: rdev [ -rv ] [ -o OFFSET ] [ IMAGE [ VALUE [ OFFSET ] ] ]" -msgstr "" -"useu: rdev [ -rv ] [ -o DESPLAÇAMENT ] [ IMATGE [ VALOR [ DESPLAÇAMENT ] ] ]" +msgstr "useu: rdev [ -rv ] [ -o DESPLAÇAMENT ] [ IMATGE [ VALOR [ DESPLAÇAMENT ] ] ]" #: sys-utils/rdev.c:70 -msgid "" -" rdev /dev/fd0 (or rdev /linux, etc.) displays the current ROOT device" -msgstr "" -" rdev /dev/fd0 (o rdev /linux, etc.) mostra a l'actual dispositiu ROOT" +msgid " rdev /dev/fd0 (or rdev /linux, etc.) displays the current ROOT device" +msgstr " rdev /dev/fd0 (o rdev /linux, etc.) mostra a l'actual dispositiu ROOT" #: sys-utils/rdev.c:71 msgid " rdev /dev/fd0 /dev/hda2 sets ROOT to /dev/hda2" @@ -9286,9 +9008,7 @@ msgstr " rdev /dev/fd0 /dev/hda2 estableix el ROOT en /dev/hda2" #: sys-utils/rdev.c:72 msgid " rdev -R /dev/fd0 1 set the ROOTFLAGS (readonly status)" -msgstr "" -" rdev -R /dev/fd0 1 estableix el ROOTFLAGS (estat de sols " -"lectura)" +msgstr " rdev -R /dev/fd0 1 estableix el ROOTFLAGS (estat de sols lectura)" #: sys-utils/rdev.c:73 msgid " rdev -r /dev/fd0 627 set the RAMDISK size" @@ -9296,8 +9016,7 @@ msgstr " rdev -r /dev/fd0 627 estableix la mida del RAMDISK" #: sys-utils/rdev.c:74 msgid " rdev -v /dev/fd0 1 set the bootup VIDEOMODE" -msgstr "" -" rdev -v /dev/fd0 1 estableix el VIDEOMODE de l'arrencada" +msgstr " rdev -v /dev/fd0 1 estableix el VIDEOMODE de l'arrencada" #: sys-utils/rdev.c:75 msgid " rdev -o N ... use the byte offset N" @@ -9316,28 +9035,30 @@ msgid " vidmode ... same as rdev -v" msgstr " vidmode ... el mateix que rdev -v" #: sys-utils/rdev.c:79 -msgid "" -"Note: video modes are: -3=Ask, -2=Extended, -1=NormalVga, 1=key1, 2=key2,..." +msgid "Note: video modes are: -3=Ask, -2=Extended, -1=NormalVga, 1=key1, 2=key2,..." msgstr "" "Nota: els modes de vídeo són: -3=Ask, -2=Extended, -1=NormalVga,\n" " 1=tecla1, 2=tecla2, ... " #: sys-utils/rdev.c:80 msgid " use -R 1 to mount root readonly, -R 0 for read/write." -msgstr "" -" usar -R 1 per a muntar l'arrel a sols lectura; -R 0 a lectura/" -"escriptura." +msgstr " usar -R 1 per a muntar l'arrel a sols lectura; -R 0 a lectura/escriptura." #: sys-utils/rdev.c:247 msgid "missing comma" msgstr "falta una coma" -#: sys-utils/readprofile.c:60 +#: sys-utils/readprofile.c:67 +msgid "out of memory" +msgstr "memòria esgotada" + +#: sys-utils/readprofile.c:113 #, c-format msgid "" "%s: Usage: \"%s [options]\n" -"\t -m (default = \"%s\")\n" -"\t -p (default = \"%s\")\n" +"\t -m (defaults: \"%s\" and\n" +"\t\t\t\t \"%s\")\n" +"\t -p (default: \"%s\")\n" "\t -M set the profiling multiplier to \n" "\t -i print only info about the sampling step\n" "\t -v print verbose data\n" @@ -9348,55 +9069,49 @@ msgid "" "\t -V print version and exit\n" msgstr "" "%s: Useu: \"%s [opcions]\n" -" -m (Valor predeterminat = \"%s\")\n" -" -p (Valor predeterminat = \"%s\")\n" -" -M Estableix el multiplicador del perfil en \n" -" -i Sols mostra la informació sobre el pas de mostreig\n" -" -v Mostra dades detallades\n" -" -a Mostra tots els símbols, fins i tot si el nombre és 0\n" -" -b Mostra els histogrames individuals dels comptadors\n" -" -r Restableix tots els comptadors (sols el root)\n" -" -n Desactiva la detecció auto. de l'ordre dels octets\n" -" -V Mostra la versió i surt\n" - -#: sys-utils/readprofile.c:84 -msgid "out of memory" -msgstr "memòria esgotada" +"\t -m (Valor predeterminat = \"%s\" i \t\t\t\t \"%s\")\n" +"\t -p (Valor predeterminat = \"%s\")\n" +"\t -M Estableix el multiplicador del perfil en \n" +"\t -i Sols mostra la informació sobre el pas de mostreig\n" +"\t -v Mostra dades detallades\n" +"\t -a Mostra tots els símbols, fins i tot si el nombre és 0\n" +"\t -b Mostra els histogrames individuals dels comptadors\n" +"\t -r Restableix tots els comptadors (sols el root)\n" +"\t -n Desactiva la detecció auto. de l'ordre dels octets\n" +"\t -V Mostra la versió i surt\n" -#: sys-utils/readprofile.c:147 +#: sys-utils/readprofile.c:186 #, c-format -msgid "%s Version %s\n" -msgstr "%s Versió %s\n" +msgid "%s version %s\n" +msgstr "%s versió %s\n" -#: sys-utils/readprofile.c:231 +#: sys-utils/readprofile.c:272 #, c-format msgid "Sampling_step: %i\n" msgstr "Passa de probes: %i\n" -#: sys-utils/readprofile.c:244 sys-utils/readprofile.c:268 +#: sys-utils/readprofile.c:293 sys-utils/readprofile.c:317 #, c-format msgid "%s: %s(%i): wrong map line\n" msgstr "%s: %s(%i): línia del mapa incorrecta\n" -#: sys-utils/readprofile.c:256 +#: sys-utils/readprofile.c:305 #, c-format msgid "%s: can't find \"_stext\" in %s\n" msgstr "%s: no es pot trobar \"_stext\" en %s\n" -#: sys-utils/readprofile.c:282 +#: sys-utils/readprofile.c:331 #, c-format msgid "%s: profile address out of range. Wrong map file?\n" msgstr "%s adreça del perfil fora del rang. Fitxer `map' incorrecte?\n" -#: sys-utils/readprofile.c:323 +#: sys-utils/readprofile.c:372 msgid "total" msgstr "total" #: sys-utils/renice.c:68 -msgid "" -"usage: renice priority [ [ -p ] pids ] [ [ -g ] pgrps ] [ [ -u ] users ]\n" -msgstr "" -"useu: renice prioritat [ [ -p ] pids ] [ [ -g ] pgrps ] [ [ -u ] usuaris ]\n" +msgid "usage: renice priority [ [ -p ] pids ] [ [ -g ] pgrps ] [ [ -u ] users ]\n" +msgstr "useu: renice prioritat [ [ -p ] pids ] [ [ -g ] pgrps ] [ [ -u ] usuaris ]\n" #: sys-utils/renice.c:97 #, c-format @@ -9433,8 +9148,7 @@ msgid "" " -a [on|off] | -o [on|off] | -C [on|off] | -q [on|off] | -s | \n" " -T [on|off] ]\n" msgstr "" -"Useu: %s [ -i | -t | -c | -w " -"|\n" +"Useu: %s [ -i | -t | -c | -w |\n" " -a [on|off] | -o [on|off] | -C [on|off] | -q [on|off] | -s | \n" " -T [on|off] ]\n" @@ -9539,11 +9253,8 @@ msgid "hexdump: bad skip value.\n" msgstr "hexdump: valor del salt incorrecte.\n" #: text-utils/hexsyntax.c:131 -msgid "" -"hexdump: [-bcCdovx] [-e fmt] [-f fmt_file] [-n length] [-s skip] [file ...]\n" -msgstr "" -"hexdump: [-bcCdovx] [-e fmt] [-f fitxer_fmt] [-n longitud] [-s ometre] " -"[fitxer ...]\n" +msgid "hexdump: [-bcCdovx] [-e fmt] [-f fmt_file] [-n length] [-s skip] [file ...]\n" +msgstr "hexdump: [-bcCdovx] [-e fmt] [-f fitxer_fmt] [-n longitud] [-s ometre] [fitxer ...]\n" #: text-utils/more.c:263 #, c-format @@ -9600,14 +9311,13 @@ msgid "...back 1 page" msgstr "...retrocedir 1 pàgina" #: text-utils/more.c:1313 -#, fuzzy msgid "...skipping one line" -msgstr "...ometent la línia %d" +msgstr "...ometent una línia" #: text-utils/more.c:1315 -#, fuzzy, c-format +#, c-format msgid "...skipping %d lines" -msgstr "...ometent la línia %d" +msgstr "...ometent %d línies" #: text-utils/more.c:1352 msgid "" @@ -9622,61 +9332,83 @@ msgstr "" #: text-utils/more.c:1390 msgid "" "\n" -"Most commands optionally preceded by integer argument k. Defaults in " -"brackets.\n" +"Most commands optionally preceded by integer argument k. Defaults in brackets.\n" "Star (*) indicates argument becomes new default.\n" msgstr "" - -#: text-utils/more.c:1395 -msgid "" -"\t\t\tDisplay next k lines of text [current screen size]\n" -"z\t\t\tDisplay next k lines of text [current screen size]*\n" -"\t\tDisplay next k lines of text [1]*\n" -"d or ctrl-D\t\tScroll k lines [current scroll size, initially 11]*\n" -"q or Q or \tExit from more\n" -"s\t\t\tSkip forward k lines of text [1]\n" -"f\t\t\tSkip forward k screenfuls of text [1]\n" -"b or ctrl-B\t\tSkip backwards k screenfuls of text [1]\n" -"'\t\t\tGo to place where previous search started\n" -"=\t\t\tDisplay current line number\n" -"/\tSearch for kth occurrence of regular expression [1]\n" -"n\t\t\tSearch for kth occurrence of last r.e [1]\n" -"! or :!\tExecute in a subshell\n" -"v\t\t\tStart up /usr/bin/vi at current line\n" -"ctrl-L\t\t\tRedraw screen\n" -":n\t\t\tGo to kth next file [1]\n" -":p\t\t\tGo to kth previous file [1]\n" -":f\t\t\tDisplay current file name and line number\n" -".\t\t\tRepeat previous command\n" -msgstr "" - -#: text-utils/more.c:1445 text-utils/more.c:1450 +"\n" +"La majoria de comandaments són precedits opcionalment per un argument k enter. Per omissió entre parèntesis.\n" +"L'asterisc (*) indica que l'argument esdevé el nou per omissió.\n" + +# a.b: Falta arranjar això de "kth" +#: text-utils/more.c:1397 +msgid "" +" Display next k lines of text [current screen size]\n" +"z Display next k lines of text [current screen size]*\n" +" Display next k lines of text [1]*\n" +"d or ctrl-D Scroll k lines [current scroll size, initially 11]*\n" +"q or Q or Exit from more\n" +"s Skip forward k lines of text [1]\n" +"f Skip forward k screenfuls of text [1]\n" +"b or ctrl-B Skip backwards k screenfuls of text [1]\n" +"' Go to place where previous search started\n" +"= Display current line number\n" +"/ Search for kth occurrence of regular expression [1]\n" +"n Search for kth occurrence of last r.e [1]\n" +"! or :! Execute in a subshell\n" +"v Start up /usr/bin/vi at current line\n" +"ctrl-L Redraw screen\n" +":n Go to kth next file [1]\n" +":p Go to kth previous file [1]\n" +":f Display current file name and line number\n" +". Repeat previous command\n" +msgstr "" +" Mostra les següents k línies de text [la mida de la pantalla]\n" +"z Mostra les següents k línies de text [la mida de la pantalla]*\n" +" Mostra les següents k línies de text [1]*\n" +"d o ctrl-D Desplaça k línies [actualment són 11]*\n" +"q o Q o Surt de more\n" +"s Salta endavant k línies de text [1]\n" +"f Salta endavant k pantalles de text [1]\n" +"b o ctrl-B Salta endarrera k pantalles de text [1]\n" +"' Vés a on va començar l'anterior recerca\n" +"= Mostra el número de la línia actual\n" +"/ Cerca l'ocurrència k-enèssima de l'exp.reg. [1]\n" +"n Cerca l'ocurrència k-enèssima de l'última exp.reg. [1]\n" +"! o :! Executa en una subshell\n" +"v Engega /usr/bin/vi a la línia actual\n" +"ctrl-L Redibuixa la pantalla\n" +":n Vés al k-enèssim fitxer següent [1]\n" +":p Vés al k-enèssim fitxer anterior [1]\n" +":f Mostra el nom del fitxer i el número de línia\n" +". Repeteix el comandament anterior\n" + +#: text-utils/more.c:1444 text-utils/more.c:1449 msgid "[Press 'h' for instructions.]" msgstr "[Prémer 'h' per a les instruccions.]" -#: text-utils/more.c:1484 +#: text-utils/more.c:1483 #, c-format msgid "\"%s\" line %d" msgstr "\"%s\" línia %d" -#: text-utils/more.c:1486 +#: text-utils/more.c:1485 #, c-format msgid "[Not a file] line %d" msgstr "[No és un fitxer] línia %d" -#: text-utils/more.c:1570 +#: text-utils/more.c:1569 msgid " Overflow\n" msgstr " Desbordament\n" -#: text-utils/more.c:1617 +#: text-utils/more.c:1616 msgid "...skipping\n" msgstr "...ometent\n" -#: text-utils/more.c:1647 +#: text-utils/more.c:1646 msgid "Regular expression botch" msgstr "Error en l'expressió regular" -#: text-utils/more.c:1659 +#: text-utils/more.c:1658 msgid "" "\n" "Pattern not found\n" @@ -9684,15 +9416,15 @@ msgstr "" "\n" "Patró no trobat\n" -#: text-utils/more.c:1662 text-utils/pg.c:1141 text-utils/pg.c:1292 +#: text-utils/more.c:1661 text-utils/pg.c:1145 text-utils/pg.c:1296 msgid "Pattern not found" msgstr "Patró no trobat" -#: text-utils/more.c:1723 +#: text-utils/more.c:1722 msgid "can't fork\n" msgstr "no es pot establir el canvi\n" -#: text-utils/more.c:1762 +#: text-utils/more.c:1761 msgid "" "\n" "...Skipping " @@ -9700,19 +9432,19 @@ msgstr "" "\n" "...Saltant " -#: text-utils/more.c:1767 +#: text-utils/more.c:1766 msgid "...Skipping to file " msgstr "...Saltant al fitxer " -#: text-utils/more.c:1769 +#: text-utils/more.c:1768 msgid "...Skipping back to file " msgstr "...Retrocedint al fitxer " -#: text-utils/more.c:2049 +#: text-utils/more.c:2048 msgid "Line too long" msgstr "Línia massa llarga" -#: text-utils/more.c:2092 +#: text-utils/more.c:2091 msgid "No previous command to substitute for" msgstr "No hi ha cap comandament previ a substituir" @@ -9745,14 +9477,12 @@ msgstr "hexdump: nombre total d'octets amb diversos caràcters de conversió.\n" #: text-utils/parse.c:483 #, c-format msgid "hexdump: bad byte count for conversion character %s.\n" -msgstr "" -"hexdump: nombre total d'octets incorrecte per al caràcter de conversió %s.\n" +msgstr "hexdump: nombre total d'octets incorrecte per al caràcter de conversió %s.\n" #: text-utils/parse.c:490 #, c-format msgid "hexdump: %%s requires a precision or a byte count.\n" -msgstr "" -"hexdump: %%s requereix un valor de precisió o un nombre total d'octets.\n" +msgstr "hexdump: %%s requereix un valor de precisió o un nombre total d'octets.\n" #: text-utils/parse.c:496 #, c-format @@ -9764,40 +9494,38 @@ msgstr "hexdump: format incorrecte {%s}\n" msgid "hexdump: bad conversion character %%%s.\n" msgstr "hexdump: caràcter de conversió %%%s incorrecte.\n" -#: text-utils/pg.c:253 +#: text-utils/pg.c:257 #, c-format -msgid "" -"%s: Usage: %s [-number] [-p string] [-cefnrs] [+line] [+/pattern/] [files]\n" -msgstr "" -"%s: Useu: %s [-número] [-p cadena] [-cefnrs] [+línia] [+/patró/] [fitxers]\n" +msgid "%s: Usage: %s [-number] [-p string] [-cefnrs] [+line] [+/pattern/] [files]\n" +msgstr "%s: Useu: %s [-número] [-p cadena] [-cefnrs] [+línia] [+/patró/] [fitxers]\n" -#: text-utils/pg.c:262 +#: text-utils/pg.c:266 #, c-format msgid "%s: option requires an argument -- %s\n" msgstr "%s: l'opció requereix un argument -- %s\n" -#: text-utils/pg.c:270 +#: text-utils/pg.c:274 #, c-format msgid "%s: illegal option -- %s\n" msgstr "%s: opció ilegal -- %s\n" -#: text-utils/pg.c:387 +#: text-utils/pg.c:391 msgid "...skipping forward\n" msgstr "...saltant endavant\n" -#: text-utils/pg.c:389 +#: text-utils/pg.c:393 msgid "...skipping backward\n" msgstr "...saltant enradera\n" -#: text-utils/pg.c:411 +#: text-utils/pg.c:415 msgid "No next file" msgstr "No hi ha fitxer següent" -#: text-utils/pg.c:415 +#: text-utils/pg.c:419 msgid "No previous file" msgstr "No hi ha fitxer anterior" -#: text-utils/pg.c:945 +#: text-utils/pg.c:949 #, c-format msgid "%s: Read error from %s file\n" msgstr "%s: Error de lectura del fitxer %s\n" @@ -9805,50 +9533,50 @@ msgstr "%s: Error de lectura del fitxer %s\n" #. #. * Most likely '\0' in input. #. -#: text-utils/pg.c:951 +#: text-utils/pg.c:955 #, c-format msgid "%s: Unexpected EOF in %s file\n" msgstr "%s: EOF inesperat en el fitxer %s\n" -#: text-utils/pg.c:954 +#: text-utils/pg.c:958 #, c-format msgid "%s: Unknown error in %s file\n" msgstr "%s: Error desconegut en el fitxer %s\n" -#: text-utils/pg.c:1049 +#: text-utils/pg.c:1053 #, c-format msgid "%s: Cannot create tempfile\n" msgstr "%s: No es pot cerar el fitxer temporal\n" -#: text-utils/pg.c:1058 text-utils/pg.c:1233 +#: text-utils/pg.c:1062 text-utils/pg.c:1237 msgid "RE error: " msgstr "Error RE:" -#: text-utils/pg.c:1215 +#: text-utils/pg.c:1219 msgid "(EOF)" msgstr "(EOF)" -#: text-utils/pg.c:1241 +#: text-utils/pg.c:1245 msgid "No remembered search string" msgstr "No es recorda la cadena de recerca" -#: text-utils/pg.c:1324 +#: text-utils/pg.c:1328 msgid "Cannot open " msgstr "No es pot obrir" -#: text-utils/pg.c:1372 +#: text-utils/pg.c:1376 msgid "saved" msgstr "desat" -#: text-utils/pg.c:1479 +#: text-utils/pg.c:1483 msgid ": !command not allowed in rflag mode.\n" msgstr ": no es permet !comandament en el mode rflag.\n" -#: text-utils/pg.c:1511 +#: text-utils/pg.c:1515 msgid "fork() failed, try again later\n" msgstr "la crida del sistema fork() ha fallat, proveu-ho després\n" -#: text-utils/pg.c:1716 +#: text-utils/pg.c:1720 msgid "(Next file: " msgstr "(Següent fitxer: " @@ -9885,20 +9613,3 @@ msgstr "Línia d'entrada massa llarga.\n" #: text-utils/ul.c:599 msgid "Out of memory when growing buffer.\n" msgstr "Memòria esgotada a l'augmentar la mida de la memòria temporal.\n" - -#~ msgid "Partition %i does not end on cylinder boundary:\n" -#~ msgstr "La partició %i no acaba en el límit del cilindre:\n" - -#~ msgid "Can't open help file" -#~ msgstr "No es pot obrir el fitxer d'ajuda" - -#~ msgid "" -#~ "\n" -#~ "Disk %s: %d heads, %d sectors, %d cylinders\n" -#~ "Units = %s of %d * %d bytes\n" -#~ "\n" -#~ msgstr "" -#~ "\n" -#~ "Disc %s: %d capçals, %d sectors, %d cilindres\n" -#~ "Unitats = %s de %d * %d octets\n" -#~ "\n" diff --git a/po/cat-id-tbl.c b/po/cat-id-tbl.c index 28f6663b..53e4eda8 100644 --- a/po/cat-id-tbl.c +++ b/po/cat-id-tbl.c @@ -388,19 +388,20 @@ More than one primary partition is marked bootable. DOS MBR cannot boot this.", {" Primary", 314}, {" Logical", 315}, {"Unknown", 316}, - {"Boot (%02X)", 317}, - {"Unknown (%02X)", 318}, - {"None (%02X)", 319}, + {"Boot", 317}, + {"(%02X)", 318}, + {"None", 319}, {"Partition Table for %s\n", 320}, - {" First Last\n", 321}, + {" First Last\n", 321}, {"\ - # Type Sector Sector Offset Length Filesystem Type (ID) Flags\n", 322}, + # Type Sector Sector Offset Length Filesystem Type (ID) \ +Flag\n", 322}, {"\ --- ------- -------- --------- ------ --------- ---------------------- \ ----------\n", 323}, - {" ---Starting--- ----Ending---- Start Number of\n", 324}, - {" # Flags Head Sect Cyl ID Head Sect Cyl Sector Sectors\n", 325}, - {"-- ----- ---- ---- ---- ---- ---- ---- ---- -------- ---------\n", 326}, +-- ------- ----------- ----------- ------ ----------- -------------------- \ +----\n", 323}, + {" ---Starting--- ----Ending---- Start Number of\n", 324}, + {" # Flags Head Sect Cyl ID Head Sect Cyl Sector Sectors\n", 325}, + {"-- ----- ---- ---- ---- ---- ---- ---- ---- ----------- -----------\n", 326}, {"Raw", 327}, {"Print the table using raw data format", 328}, {"Sectors", 329}, @@ -461,54 +462,55 @@ More than one primary partition is marked bootable. DOS MBR cannot boot this.", {"Enter filesystem type: ", 384}, {"Cannot change FS Type to empty", 385}, {"Cannot change FS Type to extended", 386}, - {"Boot", 387}, - {"Unk(%02X)", 388}, - {", NC", 389}, - {"NC", 390}, - {"Pri/Log", 391}, + {"Unk(%02X)", 387}, + {", NC", 388}, + {"NC", 389}, + {"Pri/Log", 390}, + {"Unknown (%02X)", 391}, {"Disk Drive: %s", 392}, - {"Size: %lld bytes, %ld MB", 393}, - {"Size: %lld bytes, %ld.%ld GB", 394}, - {"Heads: %d Sectors per Track: %d Cylinders: %d", 395}, + {"Size: %lld bytes, %lld MB", 393}, + {"Size: %lld bytes, %lld.%lld GB", 394}, + {"Heads: %d Sectors per Track: %d Cylinders: %lld", 395}, {"Name", 396}, {"Flags", 397}, {"Part Type", 398}, {"FS Type", 399}, {"[Label]", 400}, - {" Sectors", 401}, - {"Size (MB)", 402}, - {"Size (GB)", 403}, - {"Bootable", 404}, - {"Toggle bootable flag of the current partition", 405}, - {"Delete", 406}, - {"Delete the current partition", 407}, - {"Geometry", 408}, - {"Change disk geometry (experts only)", 409}, - {"Help", 410}, - {"Print help screen", 411}, - {"Maximize", 412}, - {"Maximize disk usage of the current partition (experts only)", 413}, - {"New", 414}, - {"Create new partition from free space", 415}, - {"Print", 416}, - {"Print partition table to the screen or to a file", 417}, - {"Quit", 418}, - {"Quit program without writing partition table", 419}, - {"Type", 420}, - {"Change the filesystem type (DOS, Linux, OS/2 and so on)", 421}, - {"Units", 422}, - {"Change units of the partition size display (MB, sect, cyl)", 423}, - {"Write", 424}, - {"Write partition table to disk (this might destroy data)", 425}, - {"Cannot make this partition bootable", 426}, - {"Cannot delete an empty partition", 427}, - {"Cannot maximize this partition", 428}, - {"This partition is unusable", 429}, - {"This partition is already in use", 430}, - {"Cannot change the type of an empty partition", 431}, - {"No more partitions", 432}, - {"Illegal command", 433}, - {"Copyright (C) 1994-2002 Kevin E. Martin & aeb\n", 434}, + {" Sectors", 401}, + {" Cylinders", 402}, + {" Size (MB)", 403}, + {" Size (GB)", 404}, + {"Bootable", 405}, + {"Toggle bootable flag of the current partition", 406}, + {"Delete", 407}, + {"Delete the current partition", 408}, + {"Geometry", 409}, + {"Change disk geometry (experts only)", 410}, + {"Help", 411}, + {"Print help screen", 412}, + {"Maximize", 413}, + {"Maximize disk usage of the current partition (experts only)", 414}, + {"New", 415}, + {"Create new partition from free space", 416}, + {"Print", 417}, + {"Print partition table to the screen or to a file", 418}, + {"Quit", 419}, + {"Quit program without writing partition table", 420}, + {"Type", 421}, + {"Change the filesystem type (DOS, Linux, OS/2 and so on)", 422}, + {"Units", 423}, + {"Change units of the partition size display (MB, sect, cyl)", 424}, + {"Write", 425}, + {"Write partition table to disk (this might destroy data)", 426}, + {"Cannot make this partition bootable", 427}, + {"Cannot delete an empty partition", 428}, + {"Cannot maximize this partition", 429}, + {"This partition is unusable", 430}, + {"This partition is already in use", 431}, + {"Cannot change the type of an empty partition", 432}, + {"No more partitions", 433}, + {"Illegal command", 434}, + {"Copyright (C) 1994-2002 Kevin E. Martin & aeb\n", 435}, {"\ \n\ Usage:\n\ @@ -524,7 +526,7 @@ Options:\n\ -z: Start with a zero partition table, instead of reading the pt from disk;\n\ -c C -h H -s S: Override the kernel's idea of the number of cylinders,\n\ the number of heads and the number of sectors/track.\n\ -\n", 435}, +\n", 436}, {"\ Usage: fdisk [-b SSZ] [-u] DISK Change partition table\n\ fdisk -l [-b SSZ] [-u] DISK List partition table(s)\n\ @@ -533,65 +535,65 @@ Usage: fdisk [-b SSZ] [-u] DISK Change partition table\n\ Here DISK is something like /dev/hdb or /dev/sda\n\ and PARTITION is something like /dev/hda7\n\ -u: give Start and End in sector (instead of cylinder) units\n\ --b 2048: (for certain MO disks) use 2048-byte sectors\n", 436}, +-b 2048: (for certain MO disks) use 2048-byte sectors\n", 437}, {"\ Usage: fdisk [-l] [-b SSZ] [-u] device\n\ E.g.: fdisk /dev/hda (for the first IDE disk)\n\ or: fdisk /dev/sdc (for the third SCSI disk)\n\ or: fdisk /dev/eda (for the first PS/2 ESDI drive)\n\ or: fdisk /dev/rd/c0d0 or: fdisk /dev/ida/c0d0 (for RAID devices)\n\ - ...\n", 437}, - {"Unable to open %s\n", 438}, - {"Unable to read %s\n", 439}, - {"Unable to seek on %s\n", 440}, - {"Unable to write %s\n", 441}, - {"BLKGETSIZE ioctl failed on %s\n", 442}, - {"Unable to allocate any more memory\n", 443}, - {"Fatal error\n", 444}, - {"Command action", 445}, - {" a toggle a read only flag", 446}, - {" b edit bsd disklabel", 447}, - {" c toggle the mountable flag", 448}, - {" d delete a partition", 449}, - {" l list known partition types", 450}, - {" m print this menu", 451}, - {" n add a new partition", 452}, - {" o create a new empty DOS partition table", 453}, - {" p print the partition table", 454}, - {" q quit without saving changes", 455}, - {" s create a new empty Sun disklabel", 456}, - {" t change a partition's system id", 457}, - {" u change display/entry units", 458}, - {" v verify the partition table", 459}, - {" w write table to disk and exit", 460}, - {" x extra functionality (experts only)", 461}, - {" a select bootable partition", 462}, - {" b edit bootfile entry", 463}, - {" c select sgi swap partition", 464}, - {" a toggle a bootable flag", 465}, - {" c toggle the dos compatibility flag", 466}, - {" a change number of alternate cylinders", 467}, - {" c change number of cylinders", 468}, - {" d print the raw data in the partition table", 469}, - {" e change number of extra sectors per cylinder", 470}, - {" h change number of heads", 471}, - {" i change interleave factor", 472}, - {" o change rotation speed (rpm)", 473}, - {" r return to main menu", 474}, - {" s change number of sectors/track", 475}, - {" y change number of physical cylinders", 476}, - {" b move beginning of data in a partition", 477}, - {" e list extended partitions", 478}, - {" g create an IRIX (SGI) partition table", 479}, - {" f fix partition order", 480}, - {"You must set", 481}, - {"heads", 482}, - {"sectors", 483}, - {"cylinders", 484}, + ...\n", 438}, + {"Unable to open %s\n", 439}, + {"Unable to read %s\n", 440}, + {"Unable to seek on %s\n", 441}, + {"Unable to write %s\n", 442}, + {"BLKGETSIZE ioctl failed on %s\n", 443}, + {"Unable to allocate any more memory\n", 444}, + {"Fatal error\n", 445}, + {"Command action", 446}, + {" a toggle a read only flag", 447}, + {" b edit bsd disklabel", 448}, + {" c toggle the mountable flag", 449}, + {" d delete a partition", 450}, + {" l list known partition types", 451}, + {" m print this menu", 452}, + {" n add a new partition", 453}, + {" o create a new empty DOS partition table", 454}, + {" p print the partition table", 455}, + {" q quit without saving changes", 456}, + {" s create a new empty Sun disklabel", 457}, + {" t change a partition's system id", 458}, + {" u change display/entry units", 459}, + {" v verify the partition table", 460}, + {" w write table to disk and exit", 461}, + {" x extra functionality (experts only)", 462}, + {" a select bootable partition", 463}, + {" b edit bootfile entry", 464}, + {" c select sgi swap partition", 465}, + {" a toggle a bootable flag", 466}, + {" c toggle the dos compatibility flag", 467}, + {" a change number of alternate cylinders", 468}, + {" c change number of cylinders", 469}, + {" d print the raw data in the partition table", 470}, + {" e change number of extra sectors per cylinder", 471}, + {" h change number of heads", 472}, + {" i change interleave factor", 473}, + {" o change rotation speed (rpm)", 474}, + {" r return to main menu", 475}, + {" s change number of sectors/track", 476}, + {" y change number of physical cylinders", 477}, + {" b move beginning of data in a partition", 478}, + {" e list extended partitions", 479}, + {" g create an IRIX (SGI) partition table", 480}, + {" f fix partition order", 481}, + {"You must set", 482}, + {"heads", 483}, + {"sectors", 484}, + {"cylinders", 485}, {"\ %s%s.\n\ -You can do this from the extra functions menu.\n", 485}, - {" and ", 486}, +You can do this from the extra functions menu.\n", 486}, + {" and ", 487}, {"\ \n\ The number of cylinders for this disk is set to %d.\n\ @@ -599,168 +601,168 @@ There is nothing wrong with that, but this is larger than 1024,\n\ and could in certain setups cause problems with:\n\ 1) software that runs at boot time (e.g., old versions of LILO)\n\ 2) booting and partitioning software from other OSs\n\ - (e.g., DOS FDISK, OS/2 FDISK)\n", 487}, - {"Bad offset in primary extended partition\n", 488}, - {"Warning: deleting partitions after %d\n", 489}, - {"Warning: extra link pointer in partition table %d\n", 490}, - {"Warning: ignoring extra data in partition table %d\n", 491}, + (e.g., DOS FDISK, OS/2 FDISK)\n", 488}, + {"Bad offset in primary extended partition\n", 489}, + {"Warning: deleting partitions after %d\n", 490}, + {"Warning: extra link pointer in partition table %d\n", 491}, + {"Warning: ignoring extra data in partition table %d\n", 492}, {"\ Building a new DOS disklabel. Changes will remain in memory only,\n\ until you decide to write them. After that, of course, the previous\n\ content won't be recoverable.\n\ -\n", 492}, - {"Note: sector size is %d (not %d)\n", 493}, - {"You will not be able to write the partition table.\n", 494}, +\n", 493}, + {"Note: sector size is %d (not %d)\n", 494}, + {"You will not be able to write the partition table.\n", 495}, {"\ This disk has both DOS and BSD magic.\n\ -Give the 'b' command to go to BSD mode.\n", 495}, +Give the 'b' command to go to BSD mode.\n", 496}, {"\ Device contains neither a valid DOS partition table, nor Sun, SGI or OSF \ -disklabel\n", 496}, - {"Internal error\n", 497}, - {"Ignoring extra extended partition %d\n", 498}, +disklabel\n", 497}, + {"Internal error\n", 498}, + {"Ignoring extra extended partition %d\n", 499}, {"\ Warning: invalid flag 0x%04x of partition table %d will be corrected by w\ -(rite)\n", 499}, +(rite)\n", 500}, {"\ \n\ -got EOF thrice - exiting..\n", 500}, - {"Hex code (type L to list codes): ", 501}, - {"%s (%d-%d, default %d): ", 502}, - {"Using default value %d\n", 503}, - {"Value out of range.\n", 504}, - {"Partition number", 505}, - {"Warning: partition %d has empty type\n", 506}, - {"Selected partition %d\n", 507}, - {"No partition is defined yet!\n", 508}, - {"All primary partitions have been defined already!\n", 509}, - {"cylinder", 510}, - {"sector", 511}, - {"Changing display/entry units to %s\n", 512}, - {"WARNING: Partition %d is an extended partition\n", 513}, - {"DOS Compatibility flag is set\n", 514}, - {"DOS Compatibility flag is not set\n", 515}, - {"Partition %d does not exist yet!\n", 516}, +got EOF thrice - exiting..\n", 501}, + {"Hex code (type L to list codes): ", 502}, + {"%s (%u-%u, default %u): ", 503}, + {"Using default value %u\n", 504}, + {"Value out of range.\n", 505}, + {"Partition number", 506}, + {"Warning: partition %d has empty type\n", 507}, + {"Selected partition %d\n", 508}, + {"No partition is defined yet!\n", 509}, + {"All primary partitions have been defined already!\n", 510}, + {"cylinder", 511}, + {"sector", 512}, + {"Changing display/entry units to %s\n", 513}, + {"WARNING: Partition %d is an extended partition\n", 514}, + {"DOS Compatibility flag is set\n", 515}, + {"DOS Compatibility flag is not set\n", 516}, + {"Partition %d does not exist yet!\n", 517}, {"\ Type 0 means free space to many systems\n\ (but not to Linux). Having partitions of\n\ type 0 is probably unwise. You can delete\n\ -a partition using the `d' command.\n", 517}, +a partition using the `d' command.\n", 518}, {"\ You cannot change a partition into an extended one or vice versa\n\ -Delete it first.\n", 518}, +Delete it first.\n", 519}, {"\ Consider leaving partition 3 as Whole disk (5),\n\ as SunOS/Solaris expects it and even Linux likes it.\n\ -\n", 519}, +\n", 520}, {"\ Consider leaving partition 9 as volume header (0),\n\ and partition 11 as entire volume (6)as IRIX expects it.\n\ -\n", 520}, - {"Changed system type of partition %d to %x (%s)\n", 521}, - {"Partition %d has different physical/logical beginnings (non-Linux?):\n", 522}, - {" phys=(%d, %d, %d) ", 523}, - {"logical=(%d, %d, %d)\n", 524}, - {"Partition %d has different physical/logical endings:\n", 525}, - {"Partition %i does not start on cylinder boundary:\n", 526}, - {"should be (%d, %d, 1)\n", 527}, - {"Partition %i does not end on cylinder boundary.\n", 528}, - {"should be (%d, %d, %d)\n", 529}, +\n", 521}, + {"Changed system type of partition %d to %x (%s)\n", 522}, + {"Partition %d has different physical/logical beginnings (non-Linux?):\n", 523}, + {" phys=(%d, %d, %d) ", 524}, + {"logical=(%d, %d, %d)\n", 525}, + {"Partition %d has different physical/logical endings:\n", 526}, + {"Partition %i does not start on cylinder boundary:\n", 527}, + {"should be (%d, %d, 1)\n", 528}, + {"Partition %i does not end on cylinder boundary.\n", 529}, + {"should be (%d, %d, %d)\n", 530}, {"\ \n\ -Disk %s: %ld MB, %lld bytes\n", 530}, +Disk %s: %ld MB, %lld bytes\n", 531}, {"\ \n\ -Disk %s: %ld.%ld GB, %lld bytes\n", 531}, - {"%d heads, %d sectors/track, %d cylinders", 532}, - {", total %lu sectors", 533}, +Disk %s: %ld.%ld GB, %lld bytes\n", 532}, + {"%d heads, %d sectors/track, %d cylinders", 533}, + {", total %llu sectors", 534}, {"\ Units = %s of %d * %d = %d bytes\n\ -\n", 534}, +\n", 535}, {"\ Nothing to do. Ordering is correct already.\n\ -\n", 535}, - {"%*s Boot Start End Blocks Id System\n", 536}, - {"Device", 537}, +\n", 536}, + {"%*s Boot Start End Blocks Id System\n", 537}, + {"Device", 538}, {"\ \n\ -Partition table entries are not in disk order\n", 538}, +Partition table entries are not in disk order\n", 539}, {"\ \n\ Disk %s: %d heads, %d sectors, %d cylinders\n\ -\n", 539}, - {"Nr AF Hd Sec Cyl Hd Sec Cyl Start Size ID\n", 540}, - {"Warning: partition %d contains sector 0\n", 541}, - {"Partition %d: head %d greater than maximum %d\n", 542}, - {"Partition %d: sector %d greater than maximum %d\n", 543}, - {"Partitions %d: cylinder %d greater than maximum %d\n", 544}, - {"Partition %d: previous sectors %d disagrees with total %d\n", 545}, - {"Warning: bad start-of-data in partition %d\n", 546}, - {"Warning: partition %d overlaps partition %d.\n", 547}, - {"Warning: partition %d is empty\n", 548}, - {"Logical partition %d not entirely in partition %d\n", 549}, - {"Total allocated sectors %d greater than the maximum %d\n", 550}, - {"%d unallocated sectors\n", 551}, - {"Partition %d is already defined. Delete it before re-adding it.\n", 552}, - {"First %s", 553}, - {"Sector %d is already allocated\n", 554}, - {"No free sectors available\n", 555}, - {"Last %s or +size or +sizeM or +sizeK", 556}, +\n", 540}, + {"Nr AF Hd Sec Cyl Hd Sec Cyl Start Size ID\n", 541}, + {"Warning: partition %d contains sector 0\n", 542}, + {"Partition %d: head %d greater than maximum %d\n", 543}, + {"Partition %d: sector %d greater than maximum %d\n", 544}, + {"Partitions %d: cylinder %d greater than maximum %d\n", 545}, + {"Partition %d: previous sectors %d disagrees with total %d\n", 546}, + {"Warning: bad start-of-data in partition %d\n", 547}, + {"Warning: partition %d overlaps partition %d.\n", 548}, + {"Warning: partition %d is empty\n", 549}, + {"Logical partition %d not entirely in partition %d\n", 550}, + {"Total allocated sectors %d greater than the maximum %d\n", 551}, + {"%d unallocated sectors\n", 552}, + {"Partition %d is already defined. Delete it before re-adding it.\n", 553}, + {"First %s", 554}, + {"Sector %d is already allocated\n", 555}, + {"No free sectors available\n", 556}, + {"Last %s or +size or +sizeM or +sizeK", 557}, {"\ \tSorry - this fdisk cannot handle AIX disk labels.\n\ \tIf you want to add DOS-type partitions, create\n\ \ta new empty DOS partition table first. (Use o.)\n\ -\tWARNING: This will destroy the present disk contents.\n", 557}, - {"The maximum number of partitions has been created\n", 558}, - {"You must delete some partition and add an extended partition first\n", 559}, +\tWARNING: This will destroy the present disk contents.\n", 558}, + {"The maximum number of partitions has been created\n", 559}, + {"You must delete some partition and add an extended partition first\n", 560}, {"\ Command action\n\ %s\n\ - p primary partition (1-4)\n", 560}, - {"l logical (5 or over)", 561}, - {"e extended", 562}, - {"Invalid partition number for type `%c'\n", 563}, + p primary partition (1-4)\n", 561}, + {"l logical (5 or over)", 562}, + {"e extended", 563}, + {"Invalid partition number for type `%c'\n", 564}, {"\ The partition table has been altered!\n\ -\n", 564}, - {"Calling ioctl() to re-read partition table.\n", 565}, +\n", 565}, + {"Calling ioctl() to re-read partition table.\n", 566}, {"\ \n\ WARNING: Re-reading the partition table failed with error %d: %s.\n\ The kernel still uses the old table.\n\ -The new table will be used at the next reboot.\n", 566}, +The new table will be used at the next reboot.\n", 567}, {"\ \n\ WARNING: If you have created or modified any DOS 6.x\n\ partitions, please see the fdisk manual page for additional\n\ -information.\n", 567}, - {"Syncing disks.\n", 568}, - {"Partition %d has no data area\n", 569}, - {"New beginning of data", 570}, - {"Expert command (m for help): ", 571}, - {"Number of cylinders", 572}, - {"Number of heads", 573}, - {"Number of sectors", 574}, - {"Warning: setting sector offset for DOS compatiblity\n", 575}, - {"Disk %s doesn't contain a valid partition table\n", 576}, - {"Cannot open %s\n", 577}, - {"cannot open %s\n", 578}, - {"%c: unknown command\n", 579}, - {"This kernel finds the sector size itself - -b option ignored\n", 580}, +information.\n", 568}, + {"Syncing disks.\n", 569}, + {"Partition %d has no data area\n", 570}, + {"New beginning of data", 571}, + {"Expert command (m for help): ", 572}, + {"Number of cylinders", 573}, + {"Number of heads", 574}, + {"Number of sectors", 575}, + {"Warning: setting sector offset for DOS compatiblity\n", 576}, + {"Disk %s doesn't contain a valid partition table\n", 577}, + {"Cannot open %s\n", 578}, + {"cannot open %s\n", 579}, + {"%c: unknown command\n", 580}, + {"This kernel finds the sector size itself - -b option ignored\n", 581}, {"\ Warning: the -b (set sector size) option should be used with one specified \ -device\n", 581}, - {"Detected an OSF/1 disklabel on %s, entering disklabel mode.\n", 582}, - {"Command (m for help): ", 583}, +device\n", 582}, + {"Detected an OSF/1 disklabel on %s, entering disklabel mode.\n", 583}, + {"Command (m for help): ", 584}, {"\ \n\ -The current boot file is: %s\n", 584}, - {"Please enter the name of the new boot file: ", 585}, - {"Boot file unchanged\n", 586}, +The current boot file is: %s\n", 585}, + {"Please enter the name of the new boot file: ", 586}, + {"Boot file unchanged\n", 587}, {"\ \n\ \tSorry, no experts menu for SGI partition tables available.\n\ -\n", 587}, +\n", 588}, {"\ \n\ \tThere is a valid AIX label on this disk.\n\ @@ -773,94 +775,94 @@ The current boot file is: %s\n", 584}, \t erase the other disks as well, if unmirrored.)\n\ \t3. Before deleting this physical volume be sure\n\ \t to remove the disk logically from your AIX\n\ -\t machine. (Otherwise you become an AIXpert).", 588}, +\t machine. (Otherwise you become an AIXpert).", 589}, {"\ \n\ -BSD label for device: %s\n", 589}, - {" d delete a BSD partition", 590}, - {" e edit drive data", 591}, - {" i install bootstrap", 592}, - {" l list known filesystem types", 593}, - {" n add a new BSD partition", 594}, - {" p print BSD partition table", 595}, - {" s show complete disklabel", 596}, - {" t change a partition's filesystem id", 597}, - {" u change units (cylinders/sectors)", 598}, - {" w write disklabel to disk", 599}, - {" x link BSD partition to non-BSD partition", 600}, - {"Partition %s has invalid starting sector 0.\n", 601}, - {"Reading disklabel of %s at sector %d.\n", 602}, - {"There is no *BSD partition on %s.\n", 603}, - {"BSD disklabel command (m for help): ", 604}, - {"type: %s\n", 605}, - {"type: %d\n", 606}, - {"disk: %.*s\n", 607}, - {"label: %.*s\n", 608}, - {"flags:", 609}, - {" removable", 610}, - {" ecc", 611}, - {" badsect", 612}, - {"bytes/sector: %ld\n", 613}, - {"sectors/track: %ld\n", 614}, - {"tracks/cylinder: %ld\n", 615}, - {"sectors/cylinder: %ld\n", 616}, - {"cylinders: %ld\n", 617}, - {"rpm: %d\n", 618}, - {"interleave: %d\n", 619}, - {"trackskew: %d\n", 620}, - {"cylinderskew: %d\n", 621}, - {"headswitch: %ld\t\t# milliseconds\n", 622}, - {"track-to-track seek: %ld\t# milliseconds\n", 623}, - {"drivedata: ", 624}, +BSD label for device: %s\n", 590}, + {" d delete a BSD partition", 591}, + {" e edit drive data", 592}, + {" i install bootstrap", 593}, + {" l list known filesystem types", 594}, + {" n add a new BSD partition", 595}, + {" p print BSD partition table", 596}, + {" s show complete disklabel", 597}, + {" t change a partition's filesystem id", 598}, + {" u change units (cylinders/sectors)", 599}, + {" w write disklabel to disk", 600}, + {" x link BSD partition to non-BSD partition", 601}, + {"Partition %s has invalid starting sector 0.\n", 602}, + {"Reading disklabel of %s at sector %d.\n", 603}, + {"There is no *BSD partition on %s.\n", 604}, + {"BSD disklabel command (m for help): ", 605}, + {"type: %s\n", 606}, + {"type: %d\n", 607}, + {"disk: %.*s\n", 608}, + {"label: %.*s\n", 609}, + {"flags:", 610}, + {" removable", 611}, + {" ecc", 612}, + {" badsect", 613}, + {"bytes/sector: %ld\n", 614}, + {"sectors/track: %ld\n", 615}, + {"tracks/cylinder: %ld\n", 616}, + {"sectors/cylinder: %ld\n", 617}, + {"cylinders: %ld\n", 618}, + {"rpm: %d\n", 619}, + {"interleave: %d\n", 620}, + {"trackskew: %d\n", 621}, + {"cylinderskew: %d\n", 622}, + {"headswitch: %ld\t\t# milliseconds\n", 623}, + {"track-to-track seek: %ld\t# milliseconds\n", 624}, + {"drivedata: ", 625}, {"\ \n\ -%d partitions:\n", 625}, - {"# start end size fstype [fsize bsize cpg]\n", 626}, - {"Writing disklabel to %s.\n", 627}, - {"%s contains no disklabel.\n", 628}, - {"Do you want to create a disklabel? (y/n) ", 629}, - {"bytes/sector", 630}, - {"sectors/track", 631}, - {"tracks/cylinder", 632}, - {"sectors/cylinder", 633}, - {"Must be <= sectors/track * tracks/cylinder (default).\n", 634}, - {"rpm", 635}, - {"interleave", 636}, - {"trackskew", 637}, - {"cylinderskew", 638}, - {"headswitch", 639}, - {"track-to-track seek", 640}, - {"Bootstrap: %sboot -> boot%s (%s): ", 641}, - {"Bootstrap overlaps with disk label!\n", 642}, - {"Bootstrap installed on %s.\n", 643}, - {"Partition (a-%c): ", 644}, - {"This partition already exists.\n", 645}, - {"Warning: too many partitions (%d, maximum is %d).\n", 646}, +%d partitions:\n", 626}, + {"# start end size fstype [fsize bsize cpg]\n", 627}, + {"Writing disklabel to %s.\n", 628}, + {"%s contains no disklabel.\n", 629}, + {"Do you want to create a disklabel? (y/n) ", 630}, + {"bytes/sector", 631}, + {"sectors/track", 632}, + {"tracks/cylinder", 633}, + {"sectors/cylinder", 634}, + {"Must be <= sectors/track * tracks/cylinder (default).\n", 635}, + {"rpm", 636}, + {"interleave", 637}, + {"trackskew", 638}, + {"cylinderskew", 639}, + {"headswitch", 640}, + {"track-to-track seek", 641}, + {"Bootstrap: %sboot -> boot%s (%s): ", 642}, + {"Bootstrap overlaps with disk label!\n", 643}, + {"Bootstrap installed on %s.\n", 644}, + {"Partition (a-%c): ", 645}, + {"This partition already exists.\n", 646}, + {"Warning: too many partitions (%d, maximum is %d).\n", 647}, {"\ \n\ -Syncing disks.\n", 647}, - {"SGI volhdr", 648}, - {"SGI trkrepl", 649}, - {"SGI secrepl", 650}, - {"SGI raw", 651}, - {"SGI bsd", 652}, - {"SGI sysv", 653}, - {"SGI volume", 654}, - {"SGI efs", 655}, - {"SGI lvol", 656}, - {"SGI rlvol", 657}, - {"SGI xfs", 658}, - {"SGI xfslog", 659}, - {"SGI xlv", 660}, - {"SGI xvm", 661}, - {"Linux swap", 662}, - {"Linux native", 663}, - {"Linux LVM", 664}, - {"Linux RAID", 665}, +Syncing disks.\n", 648}, + {"SGI volhdr", 649}, + {"SGI trkrepl", 650}, + {"SGI secrepl", 651}, + {"SGI raw", 652}, + {"SGI bsd", 653}, + {"SGI sysv", 654}, + {"SGI volume", 655}, + {"SGI efs", 656}, + {"SGI lvol", 657}, + {"SGI rlvol", 658}, + {"SGI xfs", 659}, + {"SGI xfslog", 660}, + {"SGI xlv", 661}, + {"SGI xvm", 662}, + {"Linux swap", 663}, + {"Linux native", 664}, + {"Linux LVM", 665}, + {"Linux RAID", 666}, {"\ According to MIPS Computer Systems, Inc the Label must not contain more than \ -512 bytes\n", 666}, - {"Detected sgi disklabel with wrong checksum.\n", 667}, +512 bytes\n", 667}, + {"Detected sgi disklabel with wrong checksum.\n", 668}, {"\ \n\ Disk %s (SGI disk label): %d heads, %d sectors\n\ @@ -868,141 +870,145 @@ Disk %s (SGI disk label): %d heads, %d sectors\n\ %d extra sects/cyl, interleave %d:1\n\ %s\n\ Units = %s of %d * 512 bytes\n\ -\n", 668}, +\n", 669}, {"\ \n\ Disk %s (SGI disk label): %d heads, %d sectors, %d cylinders\n\ Units = %s of %d * 512 bytes\n\ -\n", 669}, +\n", 670}, {"\ ----- partitions -----\n\ -Pt# %*s Info Start End Sectors Id System\n", 670}, +Pt# %*s Info Start End Sectors Id System\n", 671}, {"\ ----- Bootinfo -----\n\ Bootfile: %s\n\ ------ Directory Entries -----\n", 671}, - {"%2d: %-10s sector%5u size%8u\n", 672}, +----- Directory Entries -----\n", 672}, + {"%2d: %-10s sector%5u size%8u\n", 673}, {"\ \n\ Invalid Bootfile!\n\ \tThe bootfile must be an absolute non-zero pathname,\n\ -\te.g. \"/unix\" or \"/unix.save\".\n", 673}, +\te.g. \"/unix\" or \"/unix.save\".\n", 674}, {"\ \n\ -\tName of Bootfile too long: 16 bytes maximum.\n", 674}, +\tName of Bootfile too long: 16 bytes maximum.\n", 675}, {"\ \n\ -\tBootfile must have a fully qualified pathname.\n", 675}, +\tBootfile must have a fully qualified pathname.\n", 676}, {"\ \n\ \tBe aware, that the bootfile is not checked for existence.\n\ -\tSGI's default is \"/unix\" and for backup \"/unix.save\".\n", 676}, +\tSGI's default is \"/unix\" and for backup \"/unix.save\".\n", 677}, {"\ \n\ -\tBootfile is changed to \"%s\".\n", 677}, - {"More than one entire disk entry present.\n", 678}, - {"No partitions defined\n", 679}, - {"IRIX likes when Partition 11 covers the entire disk.\n", 680}, +\tBootfile is changed to \"%s\".\n", 678}, + {"More than one entire disk entry present.\n", 679}, + {"No partitions defined\n", 680}, + {"IRIX likes when Partition 11 covers the entire disk.\n", 681}, {"\ The entire disk partition should start at block 0,\n\ -not at diskblock %d.\n", 681}, +not at diskblock %d.\n", 682}, {"\ The entire disk partition is only %d diskblock large,\n\ -but the disk is %d diskblocks long.\n", 682}, - {"One Partition (#11) should cover the entire disk.\n", 683}, - {"Partition %d does not start on cylinder boundary.\n", 684}, - {"Partition %d does not end on cylinder boundary.\n", 685}, - {"The Partition %d and %d overlap by %d sectors.\n", 686}, - {"Unused gap of %8d sectors - sectors %8d-%d\n", 687}, +but the disk is %d diskblocks long.\n", 683}, + {"One Partition (#11) should cover the entire disk.\n", 684}, + {"Partition %d does not start on cylinder boundary.\n", 685}, + {"Partition %d does not end on cylinder boundary.\n", 686}, + {"The Partition %d and %d overlap by %d sectors.\n", 687}, + {"Unused gap of %8u sectors - sectors %8u-%u\n", 688}, {"\ \n\ -The boot partition does not exist.\n", 688}, +The boot partition does not exist.\n", 689}, {"\ \n\ -The swap partition does not exist.\n", 689}, +The swap partition does not exist.\n", 690}, {"\ \n\ -The swap partition has no swap type.\n", 690}, - {"\tYou have chosen an unusual boot file name.\n", 691}, - {"Sorry You may change the Tag of non-empty partitions.\n", 692}, +The swap partition has no swap type.\n", 691}, + {"\tYou have chosen an unusual boot file name.\n", 692}, + {"Sorry You may change the Tag of non-empty partitions.\n", 693}, {"\ It is highly recommended that the partition at offset 0\n\ is of type \"SGI volhdr\", the IRIX system will rely on it to\n\ retrieve from its directory standalone tools like sash and fx.\n\ Only the \"SGI volume\" entire disk section may violate this.\n\ -Type YES if you are sure about tagging this partition differently.\n", 693}, - {"YES\n", 694}, - {"Do You know, You got a partition overlap on the disk?\n", 695}, - {"Attempting to generate entire disk entry automatically.\n", 696}, - {"The entire disk is already covered with partitions.\n", 697}, - {"You got a partition overlap on the disk. Fix it first!\n", 698}, +Type YES if you are sure about tagging this partition differently.\n", 694}, + {"YES\n", 695}, + {"Do You know, You got a partition overlap on the disk?\n", 696}, + {"Attempting to generate entire disk entry automatically.\n", 697}, + {"The entire disk is already covered with partitions.\n", 698}, + {"You got a partition overlap on the disk. Fix it first!\n", 699}, {"\ It is highly recommended that eleventh partition\n\ -covers the entire disk and is of type `SGI volume'\n", 699}, - {"You will get a partition overlap on the disk. Fix it first!\n", 700}, - {" Last %s", 701}, +covers the entire disk and is of type `SGI volume'\n", 700}, + {"You will get a partition overlap on the disk. Fix it first!\n", 701}, + {" Last %s", 702}, {"\ Building a new SGI disklabel. Changes will remain in memory only,\n\ until you decide to write them. After that, of course, the previous\n\ content will be unrecoverably lost.\n\ -\n", 702}, - {"Trying to keep parameters of partition %d.\n", 703}, - {"ID=%02x\tSTART=%d\tLENGTH=%d\n", 704}, - {"Empty", 705}, - {"SunOS root", 706}, - {"SunOS swap", 707}, - {"SunOS usr", 708}, - {"Whole disk", 709}, - {"SunOS stand", 710}, - {"SunOS var", 711}, - {"SunOS home", 712}, - {"Linux raid autodetect", 713}, +\n", 703}, + {"\ +Warning: BLKGETSIZE ioctl failed on %s. Using geometry cylinder value of %\ +d.\n\ +This value may be truncated for devices > 33.8 GB.\n", 704}, + {"Trying to keep parameters of partition %d.\n", 705}, + {"ID=%02x\tSTART=%d\tLENGTH=%d\n", 706}, + {"Empty", 707}, + {"SunOS root", 708}, + {"SunOS swap", 709}, + {"SunOS usr", 710}, + {"Whole disk", 711}, + {"SunOS stand", 712}, + {"SunOS var", 713}, + {"SunOS home", 714}, + {"Linux raid autodetect", 715}, {"\ Detected sun disklabel with wrong checksum.\n\ Probably you'll have to set all the values,\n\ e.g. heads, sectors, cylinders and partitions\n\ -or force a fresh label (s command in main menu)\n", 714}, - {"Autoconfigure found a %s%s%s\n", 715}, +or force a fresh label (s command in main menu)\n", 716}, + {"Autoconfigure found a %s%s%s\n", 717}, {"\ Building a new sun disklabel. Changes will remain in memory only,\n\ until you decide to write them. After that, of course, the previous\n\ content won't be recoverable.\n\ -\n", 716}, +\n", 718}, {"\ Drive type\n\ ? auto configure\n\ - 0 custom (with hardware detected defaults)", 717}, - {"Select type (? for auto, 0 for custom): ", 718}, - {"Autoconfigure failed.\n", 719}, - {"Sectors/track", 720}, - {"Alternate cylinders", 721}, - {"Physical cylinders", 722}, - {"Rotation speed (rpm)", 723}, - {"Interleave factor", 724}, - {"Extra sectors per cylinder", 725}, - {"You may change all the disk params from the x menu", 726}, - {"3,5\" floppy", 727}, - {"Linux custom", 728}, - {"Partition %d doesn't end on cylinder boundary\n", 729}, - {"Partition %d overlaps with others in sectors %d-%d\n", 730}, - {"Unused gap - sectors 0-%d\n", 731}, - {"Unused gap - sectors %d-%d\n", 732}, + 0 custom (with hardware detected defaults)", 719}, + {"Select type (? for auto, 0 for custom): ", 720}, + {"Autoconfigure failed.\n", 721}, + {"Sectors/track", 722}, + {"Alternate cylinders", 723}, + {"Physical cylinders", 724}, + {"Rotation speed (rpm)", 725}, + {"Interleave factor", 726}, + {"Extra sectors per cylinder", 727}, + {"You may change all the disk params from the x menu", 728}, + {"3,5\" floppy", 729}, + {"Linux custom", 730}, + {"Partition %d doesn't end on cylinder boundary\n", 731}, + {"Partition %d overlaps with others in sectors %d-%d\n", 732}, + {"Unused gap - sectors 0-%d\n", 733}, + {"Unused gap - sectors %d-%d\n", 734}, {"\ Other partitions already cover the whole disk.\n\ -Delete some/shrink them before retry.\n", 733}, +Delete some/shrink them before retry.\n", 735}, {"\ You haven't covered the whole disk with the 3rd partition, but your value\n\ %d %s covers some other partition. Your entry has been changed\n\ -to %d %s\n", 734}, +to %d %s\n", 736}, {"\ If you want to maintain SunOS/Solaris compatibility, consider leaving this\n\ -partition as Whole disk (5), starting at 0, with %u sectors\n", 735}, +partition as Whole disk (5), starting at 0, with %u sectors\n", 737}, {"\ It is highly recommended that the partition at offset 0\n\ is UFS, EXT2FS filesystem or SunOS swap. Putting Linux swap\n\ there may destroy your partition table and bootblock.\n\ Type YES if you're very sure you would like that partition\n\ -tagged with 82 (Linux swap): ", 736}, +tagged with 82 (Linux swap): ", 738}, {"\ \n\ Disk %s (Sun disk label): %d heads, %d sectors, %d rpm\n\ @@ -1010,459 +1016,461 @@ Disk %s (Sun disk label): %d heads, %d sectors, %d rpm\n\ %d extra sects/cyl, interleave %d:1\n\ %s\n\ Units = %s of %d * 512 bytes\n\ -\n", 737}, +\n", 739}, {"\ \n\ Disk %s (Sun disk label): %d heads, %d sectors, %d cylinders\n\ Units = %s of %d * 512 bytes\n\ -\n", 738}, - {"%*s Flag Start End Blocks Id System\n", 739}, - {"Number of alternate cylinders", 740}, - {"Number of physical cylinders", 741}, - {"FAT12", 742}, - {"XENIX root", 743}, - {"XENIX usr", 744}, - {"FAT16 <32M", 745}, - {"Extended", 746}, - {"FAT16", 747}, - {"HPFS/NTFS", 748}, - {"AIX", 749}, - {"AIX bootable", 750}, - {"OS/2 Boot Manager", 751}, - {"Win95 FAT32", 752}, - {"Win95 FAT32 (LBA)", 753}, - {"Win95 FAT16 (LBA)", 754}, - {"Win95 Ext'd (LBA)", 755}, - {"OPUS", 756}, - {"Hidden FAT12", 757}, - {"Compaq diagnostics", 758}, - {"Hidden FAT16 <32M", 759}, - {"Hidden FAT16", 760}, - {"Hidden HPFS/NTFS", 761}, - {"AST SmartSleep", 762}, - {"Hidden Win95 FAT32", 763}, - {"Hidden Win95 FAT32 (LBA)", 764}, - {"Hidden Win95 FAT16 (LBA)", 765}, - {"NEC DOS", 766}, - {"Plan 9", 767}, - {"PartitionMagic recovery", 768}, - {"Venix 80286", 769}, - {"PPC PReP Boot", 770}, - {"SFS", 771}, - {"QNX4.x", 772}, - {"QNX4.x 2nd part", 773}, - {"QNX4.x 3rd part", 774}, - {"OnTrack DM", 775}, - {"OnTrack DM6 Aux1", 776}, - {"CP/M", 777}, - {"OnTrack DM6 Aux3", 778}, - {"OnTrackDM6", 779}, - {"EZ-Drive", 780}, - {"Golden Bow", 781}, - {"Priam Edisk", 782}, - {"SpeedStor", 783}, - {"GNU HURD or SysV", 784}, - {"Novell Netware 286", 785}, - {"Novell Netware 386", 786}, - {"DiskSecure Multi-Boot", 787}, - {"PC/IX", 788}, - {"Old Minix", 789}, - {"Minix / old Linux", 790}, - {"OS/2 hidden C: drive", 791}, - {"Linux extended", 792}, - {"NTFS volume set", 793}, - {"Amoeba", 794}, - {"Amoeba BBT", 795}, - {"BSD/OS", 796}, - {"IBM Thinkpad hibernation", 797}, - {"FreeBSD", 798}, - {"OpenBSD", 799}, - {"NeXTSTEP", 800}, - {"Darwin UFS", 801}, - {"NetBSD", 802}, - {"Darwin boot", 803}, - {"BSDI fs", 804}, - {"BSDI swap", 805}, - {"Boot Wizard hidden", 806}, - {"Solaris boot", 807}, - {"DRDOS/sec (FAT-12)", 808}, - {"DRDOS/sec (FAT-16 < 32M)", 809}, - {"DRDOS/sec (FAT-16)", 810}, - {"Syrinx", 811}, - {"Non-FS data", 812}, - {"CP/M / CTOS / ...", 813}, - {"Dell Utility", 814}, - {"BootIt", 815}, - {"DOS access", 816}, - {"DOS R/O", 817}, - {"BeOS fs", 818}, - {"EFI GPT", 819}, - {"EFI (FAT-12/16/32)", 820}, - {"Linux/PA-RISC boot", 821}, - {"DOS secondary", 822}, - {"LANstep", 823}, - {"BBT", 824}, - {"seek error on %s - cannot seek to %lu\n", 825}, - {"seek error: wanted 0x%08x%08x, got 0x%08x%08x\n", 826}, - {"out of memory - giving up\n", 827}, - {"read error on %s - cannot read sector %lu\n", 828}, - {"ERROR: sector %lu does not have an msdos signature\n", 829}, - {"write error on %s - cannot write sector %lu\n", 830}, - {"cannot open partition sector save file (%s)\n", 831}, - {"write error on %s\n", 832}, - {"cannot stat partition restore file (%s)\n", 833}, - {"partition restore file has wrong size - not restoring\n", 834}, - {"out of memory?\n", 835}, - {"cannot open partition restore file (%s)\n", 836}, - {"error reading %s\n", 837}, - {"cannot open device %s for writing\n", 838}, - {"error writing sector %lu on %s\n", 839}, - {"Disk %s: cannot get size\n", 840}, - {"Disk %s: cannot get geometry\n", 841}, +\n", 740}, + {"%*s Flag Start End Blocks Id System\n", 741}, + {"Number of alternate cylinders", 742}, + {"Number of physical cylinders", 743}, + {"FAT12", 744}, + {"XENIX root", 745}, + {"XENIX usr", 746}, + {"FAT16 <32M", 747}, + {"Extended", 748}, + {"FAT16", 749}, + {"HPFS/NTFS", 750}, + {"AIX", 751}, + {"AIX bootable", 752}, + {"OS/2 Boot Manager", 753}, + {"W95 FAT32", 754}, + {"W95 FAT32 (LBA)", 755}, + {"W95 FAT16 (LBA)", 756}, + {"W95 Ext'd (LBA)", 757}, + {"OPUS", 758}, + {"Hidden FAT12", 759}, + {"Compaq diagnostics", 760}, + {"Hidden FAT16 <32M", 761}, + {"Hidden FAT16", 762}, + {"Hidden HPFS/NTFS", 763}, + {"AST SmartSleep", 764}, + {"Hidden W95 FAT32", 765}, + {"Hidden W95 FAT32 (LBA)", 766}, + {"Hidden W95 FAT16 (LBA)", 767}, + {"NEC DOS", 768}, + {"Plan 9", 769}, + {"PartitionMagic recovery", 770}, + {"Venix 80286", 771}, + {"PPC PReP Boot", 772}, + {"SFS", 773}, + {"QNX4.x", 774}, + {"QNX4.x 2nd part", 775}, + {"QNX4.x 3rd part", 776}, + {"OnTrack DM", 777}, + {"OnTrack DM6 Aux1", 778}, + {"CP/M", 779}, + {"OnTrack DM6 Aux3", 780}, + {"OnTrackDM6", 781}, + {"EZ-Drive", 782}, + {"Golden Bow", 783}, + {"Priam Edisk", 784}, + {"SpeedStor", 785}, + {"GNU HURD or SysV", 786}, + {"Novell Netware 286", 787}, + {"Novell Netware 386", 788}, + {"DiskSecure Multi-Boot", 789}, + {"PC/IX", 790}, + {"Old Minix", 791}, + {"Minix / old Linux", 792}, + {"OS/2 hidden C: drive", 793}, + {"Linux extended", 794}, + {"NTFS volume set", 795}, + {"Amoeba", 796}, + {"Amoeba BBT", 797}, + {"BSD/OS", 798}, + {"IBM Thinkpad hibernation", 799}, + {"FreeBSD", 800}, + {"OpenBSD", 801}, + {"NeXTSTEP", 802}, + {"Darwin UFS", 803}, + {"NetBSD", 804}, + {"Darwin boot", 805}, + {"BSDI fs", 806}, + {"BSDI swap", 807}, + {"Boot Wizard hidden", 808}, + {"Solaris boot", 809}, + {"DRDOS/sec (FAT-12)", 810}, + {"DRDOS/sec (FAT-16 < 32M)", 811}, + {"DRDOS/sec (FAT-16)", 812}, + {"Syrinx", 813}, + {"Non-FS data", 814}, + {"CP/M / CTOS / ...", 815}, + {"Dell Utility", 816}, + {"BootIt", 817}, + {"DOS access", 818}, + {"DOS R/O", 819}, + {"BeOS fs", 820}, + {"EFI GPT", 821}, + {"EFI (FAT-12/16/32)", 822}, + {"Linux/PA-RISC boot", 823}, + {"DOS secondary", 824}, + {"LANstep", 825}, + {"BBT", 826}, + {"seek error on %s - cannot seek to %lu\n", 827}, + {"seek error: wanted 0x%08x%08x, got 0x%08x%08x\n", 828}, + {"out of memory - giving up\n", 829}, + {"read error on %s - cannot read sector %lu\n", 830}, + {"ERROR: sector %lu does not have an msdos signature\n", 831}, + {"write error on %s - cannot write sector %lu\n", 832}, + {"cannot open partition sector save file (%s)\n", 833}, + {"write error on %s\n", 834}, + {"cannot stat partition restore file (%s)\n", 835}, + {"partition restore file has wrong size - not restoring\n", 836}, + {"out of memory?\n", 837}, + {"cannot open partition restore file (%s)\n", 838}, + {"error reading %s\n", 839}, + {"cannot open device %s for writing\n", 840}, + {"error writing sector %lu on %s\n", 841}, + {"Disk %s: cannot get size\n", 842}, + {"Disk %s: cannot get geometry\n", 843}, {"\ Warning: start=%lu - this looks like a partition rather than\n\ the entire disk. Using fdisk on it is probably meaningless.\n\ -[Use the --force option if you really want this]\n", 842}, - {"Warning: HDIO_GETGEO says that there are %lu heads\n", 843}, - {"Warning: HDIO_GETGEO says that there are %lu sectors\n", 844}, - {"Warning: BLKGETSIZE/HDIO_GETGEO says that there are %lu cylinders\n", 845}, +[Use the --force option if you really want this]\n", 844}, + {"Warning: HDIO_GETGEO says that there are %lu heads\n", 845}, + {"Warning: HDIO_GETGEO says that there are %lu sectors\n", 846}, + {"Warning: BLKGETSIZE/HDIO_GETGEO says that there are %lu cylinders\n", 847}, {"\ Warning: unlikely number of sectors (%lu) - usually at most 63\n\ -This will give problems with all software that uses C/H/S addressing.\n", 846}, +This will give problems with all software that uses C/H/S addressing.\n", 848}, {"\ \n\ -Disk %s: %lu cylinders, %lu heads, %lu sectors/track\n", 847}, +Disk %s: %lu cylinders, %lu heads, %lu sectors/track\n", 849}, {"\ -%s of partition %s has impossible value for head: %lu (should be in 0-%lu)\n", 848}, +%s of partition %s has impossible value for head: %lu (should be in 0-%lu)\n", 850}, {"\ %s of partition %s has impossible value for sector: %lu (should be in 1-%\ -lu)\n", 849}, +lu)\n", 851}, {"\ %s of partition %s has impossible value for cylinders: %lu (should be in 0-%\ -lu)\n", 850}, +lu)\n", 852}, {"\ Id Name\n\ -\n", 851}, - {"Re-reading the partition table ...\n", 852}, +\n", 853}, + {"Re-reading the partition table ...\n", 854}, {"\ The command to re-read the partition table failed\n\ -Reboot your system now, before using mkfs\n", 853}, - {"Error closing %s\n", 854}, - {"%s: no such partition\n", 855}, - {"unrecognized format - using sectors\n", 856}, - {"# partition table of %s\n", 857}, - {"unimplemented format - using %s\n", 858}, +Reboot your system now, before using mkfs\n", 855}, + {"Error closing %s\n", 856}, + {"%s: no such partition\n", 857}, + {"unrecognized format - using sectors\n", 858}, + {"# partition table of %s\n", 859}, + {"unimplemented format - using %s\n", 860}, {"\ Units = cylinders of %lu bytes, blocks of 1024 bytes, counting from %d\n\ -\n", 859}, - {" Device Boot Start End #cyls #blocks Id System\n", 860}, - {"\ -Units = sectors of 512 bytes, counting from %d\n\ \n", 861}, - {" Device Boot Start End #sectors Id System\n", 862}, + {" Device Boot Start End #cyls #blocks Id System\n", 862}, {"\ -Units = blocks of 1024 bytes, counting from %d\n\ +Units = sectors of 512 bytes, counting from %d\n\ \n", 863}, - {" Device Boot Start End #blocks Id System\n", 864}, + {" Device Boot Start End #sectors Id System\n", 864}, {"\ -Units = megabytes of 1048576 bytes, blocks of 1024 bytes, counting from %d\n\ +Units = blocks of 1024 bytes, counting from %d\n\ \n", 865}, - {" Device Boot Start End MB #blocks Id System\n", 866}, - {"\t\tstart: (c,h,s) expected (%ld,%ld,%ld) found (%ld,%ld,%ld)\n", 867}, - {"\t\tend: (c,h,s) expected (%ld,%ld,%ld) found (%ld,%ld,%ld)\n", 868}, - {"partition ends on cylinder %ld, beyond the end of the disk\n", 869}, - {"No partitions found\n", 870}, + {" Device Boot Start End #blocks Id System\n", 866}, + {"\ +Units = mebibytes of 1048576 bytes, blocks of 1024 bytes, counting from %d\n\ +\n", 867}, + {" Device Boot Start End MiB #blocks Id System\n", 868}, + {"\t\tstart: (c,h,s) expected (%ld,%ld,%ld) found (%ld,%ld,%ld)\n", 869}, + {"\t\tend: (c,h,s) expected (%ld,%ld,%ld) found (%ld,%ld,%ld)\n", 870}, + {"partition ends on cylinder %ld, beyond the end of the disk\n", 871}, + {"No partitions found\n", 872}, {"\ Warning: The partition table looks like it was made\n\ for C/H/S=*/%ld/%ld (instead of %ld/%ld/%ld).\n\ -For this listing I'll assume that geometry.\n", 871}, - {"no partition table present.\n", 872}, - {"strange, only %d partitions defined.\n", 873}, - {"Warning: partition %s has size 0 but is not marked Empty\n", 874}, - {"Warning: partition %s has size 0 and is bootable\n", 875}, - {"Warning: partition %s has size 0 and nonzero start\n", 876}, - {"Warning: partition %s ", 877}, - {"is not contained in partition %s\n", 878}, - {"Warning: partitions %s ", 879}, - {"and %s overlap\n", 880}, +For this listing I'll assume that geometry.\n", 873}, + {"no partition table present.\n", 874}, + {"strange, only %d partitions defined.\n", 875}, + {"Warning: partition %s has size 0 but is not marked Empty\n", 876}, + {"Warning: partition %s has size 0 and is bootable\n", 877}, + {"Warning: partition %s has size 0 and nonzero start\n", 878}, + {"Warning: partition %s ", 879}, + {"is not contained in partition %s\n", 880}, + {"Warning: partitions %s ", 881}, + {"and %s overlap\n", 882}, {"\ Warning: partition %s contains part of the partition table (sector %lu),\n\ -and will destroy it when filled\n", 881}, - {"Warning: partition %s starts at sector 0\n", 882}, - {"Warning: partition %s extends past end of disk\n", 883}, +and will destroy it when filled\n", 883}, + {"Warning: partition %s starts at sector 0\n", 884}, + {"Warning: partition %s extends past end of disk\n", 885}, {"\ Among the primary partitions, at most one can be extended\n\ - (although this is not a problem under Linux)\n", 884}, - {"Warning: partition %s does not start at a cylinder boundary\n", 885}, - {"Warning: partition %s does not end at a cylinder boundary\n", 886}, + (although this is not a problem under Linux)\n", 886}, + {"Warning: partition %s does not start at a cylinder boundary\n", 887}, + {"Warning: partition %s does not end at a cylinder boundary\n", 888}, {"\ Warning: more than one primary partition is marked bootable (active)\n\ -This does not matter for LILO, but the DOS MBR will not boot this disk.\n", 887}, +This does not matter for LILO, but the DOS MBR will not boot this disk.\n", 889}, {"\ Warning: usually one can boot from primary partitions only\n\ -LILO disregards the `bootable' flag.\n", 888}, +LILO disregards the `bootable' flag.\n", 890}, {"\ Warning: no primary partition is marked bootable (active)\n\ -This does not matter for LILO, but the DOS MBR will not boot this disk.\n", 889}, +This does not matter for LILO, but the DOS MBR will not boot this disk.\n", 891}, + {"start", 892}, {"\ -partition %s: start: (c,h,s) expected (%ld,%ld,%ld) found (%ld,%ld,%ld)\n", 890}, - {"partition %s: end: (c,h,s) expected (%ld,%ld,%ld) found (%ld,%ld,%ld)\n", 891}, - {"partition %s ends on cylinder %ld, beyond the end of the disk\n", 892}, +partition %s: start: (c,h,s) expected (%ld,%ld,%ld) found (%ld,%ld,%ld)\n", 893}, + {"end", 894}, + {"partition %s: end: (c,h,s) expected (%ld,%ld,%ld) found (%ld,%ld,%ld)\n", 895}, + {"partition %s ends on cylinder %ld, beyond the end of the disk\n", 896}, {"\ Warning: shifted start of the extd partition from %ld to %ld\n\ -(For listing purposes only. Do not change its contents.)\n", 893}, +(For listing purposes only. Do not change its contents.)\n", 897}, {"\ Warning: extended partition does not start at a cylinder boundary.\n\ -DOS and Linux will interpret the contents differently.\n", 894}, - {"too many partitions - ignoring those past nr (%d)\n", 895}, - {"tree of partitions?\n", 896}, - {"detected Disk Manager - unable to handle that\n", 897}, - {"DM6 signature found - giving up\n", 898}, - {"strange..., an extended partition of size 0?\n", 899}, - {"strange..., a BSD partition of size 0?\n", 900}, - {" %s: unrecognized partition\n", 901}, - {"-n flag was given: Nothing changed\n", 902}, - {"Failed saving the old sectors - aborting\n", 903}, - {"Failed writing the partition on %s\n", 904}, - {"long or incomplete input line - quitting\n", 905}, - {"input error: `=' expected after %s field\n", 906}, - {"input error: unexpected character %c after %s field\n", 907}, - {"unrecognized input: %s\n", 908}, - {"number too big\n", 909}, - {"trailing junk after number\n", 910}, - {"no room for partition descriptor\n", 911}, - {"cannot build surrounding extended partition\n", 912}, - {"too many input fields\n", 913}, - {"No room for more\n", 914}, - {"Illegal type\n", 915}, - {"Warning: given size (%lu) exceeds max allowable size (%lu)\n", 916}, - {"Warning: empty partition\n", 917}, - {"Warning: bad partition start (earliest %lu)\n", 918}, - {"unrecognized bootable flag - choose - or *\n", 919}, - {"partial c,h,s specification?\n", 920}, - {"Extended partition not where expected\n", 921}, - {"bad input\n", 922}, - {"too many partitions\n", 923}, +DOS and Linux will interpret the contents differently.\n", 898}, + {"too many partitions - ignoring those past nr (%d)\n", 899}, + {"tree of partitions?\n", 900}, + {"detected Disk Manager - unable to handle that\n", 901}, + {"DM6 signature found - giving up\n", 902}, + {"strange..., an extended partition of size 0?\n", 903}, + {"strange..., a BSD partition of size 0?\n", 904}, + {" %s: unrecognized partition\n", 905}, + {"-n flag was given: Nothing changed\n", 906}, + {"Failed saving the old sectors - aborting\n", 907}, + {"Failed writing the partition on %s\n", 908}, + {"long or incomplete input line - quitting\n", 909}, + {"input error: `=' expected after %s field\n", 910}, + {"input error: unexpected character %c after %s field\n", 911}, + {"unrecognized input: %s\n", 912}, + {"number too big\n", 913}, + {"trailing junk after number\n", 914}, + {"no room for partition descriptor\n", 915}, + {"cannot build surrounding extended partition\n", 916}, + {"too many input fields\n", 917}, + {"No room for more\n", 918}, + {"Illegal type\n", 919}, + {"Warning: given size (%lu) exceeds max allowable size (%lu)\n", 920}, + {"Warning: empty partition\n", 921}, + {"Warning: bad partition start (earliest %lu)\n", 922}, + {"unrecognized bootable flag - choose - or *\n", 923}, + {"partial c,h,s specification?\n", 924}, + {"Extended partition not where expected\n", 925}, + {"bad input\n", 926}, + {"too many partitions\n", 927}, {"\ Input in the following format; absent fields get a default value.\n\ \n\ -Usually you only need to specify and (and perhaps ).\n", 924}, - {"version", 925}, - {"Usage: %s [options] device ...\n", 926}, - {"device: something like /dev/hda or /dev/sda", 927}, - {"useful options:", 928}, - {" -s [or --show-size]: list size of a partition", 929}, - {" -c [or --id]: print or change partition Id", 930}, - {" -l [or --list]: list partitions of each device", 931}, - {" -d [or --dump]: idem, but in a format suitable for later input", 932}, - {" -i [or --increment]: number cylinders etc. from 1 instead of from 0", 933}, +Usually you only need to specify and (and perhaps ).\n", 928}, + {"version", 929}, + {"Usage: %s [options] device ...\n", 930}, + {"device: something like /dev/hda or /dev/sda", 931}, + {"useful options:", 932}, + {" -s [or --show-size]: list size of a partition", 933}, + {" -c [or --id]: print or change partition Id", 934}, + {" -l [or --list]: list partitions of each device", 935}, + {" -d [or --dump]: idem, but in a format suitable for later input", 936}, + {" -i [or --increment]: number cylinders etc. from 1 instead of from 0", 937}, {"\ -uS, -uB, -uC, -uM: accept/report in units of sectors/blocks/cylinders/\ -MB", 934}, - {" -T [or --list-types]:list the known partition types", 935}, - {" -D [or --DOS]: for DOS-compatibility: waste a little space", 936}, - {" -R [or --re-read]: make kernel reread partition table", 937}, - {" -N# : change only the partition with number #", 938}, - {" -n : do not actually write to disk", 939}, - {"\ - -O file : save the sectors that will be overwritten to file", 940}, - {" -I file : restore these sectors again", 941}, - {" -v [or --version]: print version", 942}, - {" -? [or --help]: print this message", 943}, - {"dangerous options:", 944}, - {" -g [or --show-geometry]: print the kernel's idea of the geometry", 945}, +MB", 938}, + {" -T [or --list-types]:list the known partition types", 939}, + {" -D [or --DOS]: for DOS-compatibility: waste a little space", 940}, + {" -R [or --re-read]: make kernel reread partition table", 941}, + {" -N# : change only the partition with number #", 942}, + {" -n : do not actually write to disk", 943}, + {"\ + -O file : save the sectors that will be overwritten to file", 944}, + {" -I file : restore these sectors again", 945}, + {" -v [or --version]: print version", 946}, + {" -? [or --help]: print this message", 947}, + {"dangerous options:", 948}, + {" -g [or --show-geometry]: print the kernel's idea of the geometry", 949}, {"\ -x [or --show-extended]: also list extended partitions on output\n\ - or expect descriptors for them on input", 946}, - {"\ - -L [or --Linux]: do not complain about things irrelevant for Linux", 947}, - {" -q [or --quiet]: suppress warning messages", 948}, - {" You can override the detected geometry using:", 949}, - {" -C# [or --cylinders #]:set the number of cylinders to use", 950}, - {" -H# [or --heads #]: set the number of heads to use", 951}, - {" -S# [or --sectors #]: set the number of sectors to use", 952}, - {"You can disable all consistency checking with:", 953}, - {" -f [or --force]: do what I say, even if it is stupid", 954}, - {"Usage:", 955}, - {"%s device\t\t list active partitions on device\n", 956}, - {"%s device n1 n2 ... activate partitions n1 ..., inactivate the rest\n", 957}, - {"%s -An device\t activate partition n, inactivate the other ones\n", 958}, - {"no command?\n", 959}, - {"total: %d blocks\n", 960}, - {"usage: sfdisk --print-id device partition-number\n", 961}, - {"usage: sfdisk --change-id device partition-number Id\n", 962}, - {"usage: sfdisk --id device partition-number [Id]\n", 963}, - {"can specify only one device (except with -l or -s)\n", 964}, - {"cannot open %s read-write\n", 965}, - {"cannot open %s for reading\n", 966}, - {"%s: OK\n", 967}, - {"%s: %ld cylinders, %ld heads, %ld sectors/track\n", 968}, - {"BLKGETSIZE ioctl failed for %s\n", 969}, - {"bad active byte: 0x%x instead of 0x80\n", 970}, + or expect descriptors for them on input", 950}, + {"\ + -L [or --Linux]: do not complain about things irrelevant for Linux", 951}, + {" -q [or --quiet]: suppress warning messages", 952}, + {" You can override the detected geometry using:", 953}, + {" -C# [or --cylinders #]:set the number of cylinders to use", 954}, + {" -H# [or --heads #]: set the number of heads to use", 955}, + {" -S# [or --sectors #]: set the number of sectors to use", 956}, + {"You can disable all consistency checking with:", 957}, + {" -f [or --force]: do what I say, even if it is stupid", 958}, + {"Usage:", 959}, + {"%s device\t\t list active partitions on device\n", 960}, + {"%s device n1 n2 ... activate partitions n1 ..., inactivate the rest\n", 961}, + {"%s -An device\t activate partition n, inactivate the other ones\n", 962}, + {"no command?\n", 963}, + {"total: %d blocks\n", 964}, + {"usage: sfdisk --print-id device partition-number\n", 965}, + {"usage: sfdisk --change-id device partition-number Id\n", 966}, + {"usage: sfdisk --id device partition-number [Id]\n", 967}, + {"can specify only one device (except with -l or -s)\n", 968}, + {"cannot open %s read-write\n", 969}, + {"cannot open %s for reading\n", 970}, + {"%s: OK\n", 971}, + {"%s: %ld cylinders, %ld heads, %ld sectors/track\n", 972}, + {"BLKGETSIZE ioctl failed for %s\n", 973}, + {"bad active byte: 0x%x instead of 0x80\n", 974}, {"\ Done\n\ -\n", 971}, +\n", 975}, {"\ You have %d active primary partitions. This does not matter for LILO,\n\ -but the DOS MBR will only boot a disk with 1 active partition.\n", 972}, - {"partition %s has id %x and is not hidden\n", 973}, - {"Bad Id %lx\n", 974}, - {"This disk is currently in use.\n", 975}, - {"Fatal error: cannot find %s\n", 976}, - {"Warning: %s is not a block device\n", 977}, - {"Checking that no-one is using this disk right now ...\n", 978}, +but the DOS MBR will only boot a disk with 1 active partition.\n", 976}, + {"partition %s has id %x and is not hidden\n", 977}, + {"Bad Id %lx\n", 978}, + {"This disk is currently in use.\n", 979}, + {"Fatal error: cannot find %s\n", 980}, + {"Warning: %s is not a block device\n", 981}, + {"Checking that no-one is using this disk right now ...\n", 982}, {"\ \n\ This disk is currently in use - repartitioning is probably a bad idea.\n\ Umount all file systems, and swapoff all swap partitions on this disk.\n\ -Use the --no-reread flag to suppress this check.\n", 979}, - {"Use the --force flag to overrule all checks.\n", 980}, - {"OK\n", 981}, - {"Old situation:\n", 982}, - {"Partition %d does not exist, cannot change it\n", 983}, - {"New situation:\n", 984}, +Use the --no-reread flag to suppress this check.\n", 983}, + {"Use the --force flag to overrule all checks.\n", 984}, + {"OK\n", 985}, + {"Old situation:\n", 986}, + {"Partition %d does not exist, cannot change it\n", 987}, + {"New situation:\n", 988}, {"\ I don't like these partitions - nothing changed.\n\ -(If you really want this, use the --force option.)\n", 985}, - {"I don't like this - probably you should answer No\n", 986}, - {"Are you satisfied with this? [ynq] ", 987}, - {"Do you want to write this to disk? [ynq] ", 988}, +(If you really want this, use the --force option.)\n", 989}, + {"I don't like this - probably you should answer No\n", 990}, + {"Are you satisfied with this? [ynq] ", 991}, + {"Do you want to write this to disk? [ynq] ", 992}, {"\ \n\ -sfdisk: premature end of input\n", 989}, - {"Quitting - nothing changed\n", 990}, - {"Please answer one of y,n,q\n", 991}, +sfdisk: premature end of input\n", 993}, + {"Quitting - nothing changed\n", 994}, + {"Please answer one of y,n,q\n", 995}, {"\ Successfully wrote the new partition table\n\ -\n", 992}, +\n", 996}, {"\ If you created or changed a DOS partition, /dev/foo7, say, then use dd(1)\n\ to zero the first 512 bytes: dd if=/dev/zero of=/dev/foo7 bs=512 count=1\n\ -(See fdisk(8).)\n", 993}, - {"Try `getopt --help' for more information.\n", 994}, - {"empty long option after -l or --long argument", 995}, - {"unknown shell after -s or --shell argument", 996}, - {"Usage: getopt optstring parameters\n", 997}, - {" getopt [options] [--] optstring parameters\n", 998}, - {" getopt [options] -o|--options optstring [options] [--]\n", 999}, - {" parameters\n", 1000}, - {"\ - -a, --alternative Allow long options starting with single -\n", 1001}, - {" -h, --help This small usage guide\n", 1002}, - {" -l, --longoptions=longopts Long options to be recognized\n", 1003}, - {"\ - -n, --name=progname The name under which errors are reported\n", 1004}, - {" -o, --options=optstring Short options to be recognized\n", 1005}, - {" -q, --quiet Disable error reporting by getopt(3)\n", 1006}, - {" -Q, --quiet-output No normal output\n", 1007}, - {" -s, --shell=shell Set shell quoting conventions\n", 1008}, - {" -T, --test Test for getopt(1) version\n", 1009}, - {" -u, --unqote Do not quote the output\n", 1010}, - {" -V, --version Output version information\n", 1011}, - {"missing optstring argument", 1012}, - {"getopt (enhanced) 1.1.2\n", 1013}, - {"internal error, contact the author.", 1014}, - {"booted from MILO\n", 1015}, - {"Ruffian BCD clock\n", 1016}, - {"clockport adjusted to 0x%x\n", 1017}, - {"funky TOY!\n", 1018}, - {"%s: atomic %s failed for 1000 iterations!", 1019}, - {"Cannot open /dev/port: %s", 1020}, - {"I failed to get permission because I didn't try.\n", 1021}, - {"%s is unable to get I/O port access: the iopl(3) call failed.\n", 1022}, - {"Probably you need root privileges.\n", 1023}, - {"Assuming hardware clock is kept in %s time.\n", 1024}, - {"UTC", 1025}, - {"local", 1026}, - {"%s: Warning: unrecognized third line in adjtime file\n", 1027}, - {"(Expected: `UTC' or `LOCAL' or nothing.)\n", 1028}, - {"Last drift adjustment done at %ld seconds after 1969\n", 1029}, - {"Last calibration done at %ld seconds after 1969\n", 1030}, - {"Hardware clock is on %s time\n", 1031}, - {"unknown", 1032}, - {"Waiting for clock tick...\n", 1033}, - {"...got clock tick\n", 1034}, - {"Invalid values in hardware clock: %4d/%.2d/%.2d %.2d:%.2d:%.2d\n", 1035}, - {"Hw clock time : %4d/%.2d/%.2d %.2d:%.2d:%.2d = %ld seconds since 1969\n", 1036}, - {"Time read from Hardware Clock: %4d/%.2d/%.2d %02d:%02d:%02d\n", 1037}, - {"Setting Hardware Clock to %.2d:%.2d:%.2d = %ld seconds since 1969\n", 1038}, - {"Clock not changed - testing only.\n", 1039}, +(See fdisk(8).)\n", 997}, + {"Try `getopt --help' for more information.\n", 998}, + {"empty long option after -l or --long argument", 999}, + {"unknown shell after -s or --shell argument", 1000}, + {"Usage: getopt optstring parameters\n", 1001}, + {" getopt [options] [--] optstring parameters\n", 1002}, + {" getopt [options] -o|--options optstring [options] [--]\n", 1003}, + {" parameters\n", 1004}, + {"\ + -a, --alternative Allow long options starting with single -\n", 1005}, + {" -h, --help This small usage guide\n", 1006}, + {" -l, --longoptions=longopts Long options to be recognized\n", 1007}, + {"\ + -n, --name=progname The name under which errors are reported\n", 1008}, + {" -o, --options=optstring Short options to be recognized\n", 1009}, + {" -q, --quiet Disable error reporting by getopt(3)\n", 1010}, + {" -Q, --quiet-output No normal output\n", 1011}, + {" -s, --shell=shell Set shell quoting conventions\n", 1012}, + {" -T, --test Test for getopt(1) version\n", 1013}, + {" -u, --unqote Do not quote the output\n", 1014}, + {" -V, --version Output version information\n", 1015}, + {"missing optstring argument", 1016}, + {"getopt (enhanced) 1.1.3\n", 1017}, + {"internal error, contact the author.", 1018}, + {"booted from MILO\n", 1019}, + {"Ruffian BCD clock\n", 1020}, + {"clockport adjusted to 0x%x\n", 1021}, + {"funky TOY!\n", 1022}, + {"%s: atomic %s failed for 1000 iterations!", 1023}, + {"Cannot open /dev/port: %s", 1024}, + {"I failed to get permission because I didn't try.\n", 1025}, + {"%s is unable to get I/O port access: the iopl(3) call failed.\n", 1026}, + {"Probably you need root privileges.\n", 1027}, + {"Assuming hardware clock is kept in %s time.\n", 1028}, + {"UTC", 1029}, + {"local", 1030}, + {"%s: Warning: unrecognized third line in adjtime file\n", 1031}, + {"(Expected: `UTC' or `LOCAL' or nothing.)\n", 1032}, + {"Last drift adjustment done at %ld seconds after 1969\n", 1033}, + {"Last calibration done at %ld seconds after 1969\n", 1034}, + {"Hardware clock is on %s time\n", 1035}, + {"unknown", 1036}, + {"Waiting for clock tick...\n", 1037}, + {"...got clock tick\n", 1038}, + {"Invalid values in hardware clock: %4d/%.2d/%.2d %.2d:%.2d:%.2d\n", 1039}, + {"Hw clock time : %4d/%.2d/%.2d %.2d:%.2d:%.2d = %ld seconds since 1969\n", 1040}, + {"Time read from Hardware Clock: %4d/%.2d/%.2d %02d:%02d:%02d\n", 1041}, + {"Setting Hardware Clock to %.2d:%.2d:%.2d = %ld seconds since 1969\n", 1042}, + {"Clock not changed - testing only.\n", 1043}, {"\ Time elapsed since reference time has been %.6f seconds.\n\ -Delaying further to reach the next full second.\n", 1040}, +Delaying further to reach the next full second.\n", 1044}, {"\ The Hardware Clock registers contain values that are either invalid (e.g. \ -50th day of month) or beyond the range we can handle (e.g. Year 2095).\n", 1041}, - {"%s %.6f seconds\n", 1042}, - {"No --date option specified.\n", 1043}, - {"--date argument too long\n", 1044}, +50th day of month) or beyond the range we can handle (e.g. Year 2095).\n", 1045}, + {"%s %.6f seconds\n", 1046}, + {"No --date option specified.\n", 1047}, + {"--date argument too long\n", 1048}, {"\ The value of the --date option is not a valid date.\n\ -In particular, it contains quotation marks.\n", 1045}, - {"Issuing date command: %s\n", 1046}, - {"Unable to run 'date' program in /bin/sh shell. popen() failed", 1047}, - {"response from date command = %s\n", 1048}, +In particular, it contains quotation marks.\n", 1049}, + {"Issuing date command: %s\n", 1050}, + {"Unable to run 'date' program in /bin/sh shell. popen() failed", 1051}, + {"response from date command = %s\n", 1052}, {"\ The date command issued by %s returned unexpected results.\n\ The command was:\n\ %s\n\ The response was:\n\ - %s\n", 1049}, + %s\n", 1053}, {"\ The date command issued by %s returned something other than an integer where \ the converted time value was expected.\n\ The command was:\n\ %s\n\ The response was:\n\ - %s\n", 1050}, - {"date string %s equates to %ld seconds since 1969.\n", 1051}, + %s\n", 1054}, + {"date string %s equates to %ld seconds since 1969.\n", 1055}, {"\ The Hardware Clock does not contain a valid time, so we cannot set the \ -System Time from it.\n", 1052}, - {"Calling settimeofday:\n", 1053}, - {"\ttv.tv_sec = %ld, tv.tv_usec = %ld\n", 1054}, - {"\ttz.tz_minuteswest = %d\n", 1055}, - {"Not setting system clock because running in test mode.\n", 1056}, - {"Must be superuser to set system clock.\n", 1057}, - {"settimeofday() failed", 1058}, +System Time from it.\n", 1056}, + {"Calling settimeofday:\n", 1057}, + {"\ttv.tv_sec = %ld, tv.tv_usec = %ld\n", 1058}, + {"\ttz.tz_minuteswest = %d\n", 1059}, + {"Not setting system clock because running in test mode.\n", 1060}, + {"Must be superuser to set system clock.\n", 1061}, + {"settimeofday() failed", 1062}, {"\ Not adjusting drift factor because the Hardware Clock previously contained \ -garbage.\n", 1059}, +garbage.\n", 1063}, {"\ Not adjusting drift factor because last calibration time is zero,\n\ -so history is bad and calibration startover is necessary.\n", 1060}, +so history is bad and calibration startover is necessary.\n", 1064}, {"\ Not adjusting drift factor because it has been less than a day since the \ -last calibration.\n", 1061}, +last calibration.\n", 1065}, {"\ Clock drifted %.1f seconds in the past %d seconds in spite of a drift factor \ of %f seconds/day.\n\ -Adjusting drift factor by %f seconds/day\n", 1062}, - {"Time since last adjustment is %d seconds\n", 1063}, - {"Need to insert %d seconds and refer time back %.6f seconds ago\n", 1064}, - {"Not updating adjtime file because of testing mode.\n", 1065}, +Adjusting drift factor by %f seconds/day\n", 1066}, + {"Time since last adjustment is %d seconds\n", 1067}, + {"Need to insert %d seconds and refer time back %.6f seconds ago\n", 1068}, + {"Not updating adjtime file because of testing mode.\n", 1069}, {"\ Would have written the following to %s:\n\ -%s", 1066}, - {"Drift adjustment parameters not updated.\n", 1067}, +%s", 1070}, + {"Drift adjustment parameters not updated.\n", 1071}, {"\ -The Hardware Clock does not contain a valid time, so we cannot adjust it.\n", 1068}, - {"Needed adjustment is less than one second, so not setting clock.\n", 1069}, - {"Using %s.\n", 1070}, - {"No usable clock interface found.\n", 1071}, - {"Unable to set system clock.\n", 1072}, +The Hardware Clock does not contain a valid time, so we cannot adjust it.\n", 1072}, + {"Needed adjustment is less than one second, so not setting clock.\n", 1073}, + {"Using %s.\n", 1074}, + {"No usable clock interface found.\n", 1075}, + {"Unable to set system clock.\n", 1076}, {"\ The kernel keeps an epoch value for the Hardware Clock only on an Alpha \ machine.\n\ This copy of hwclock was built for a machine other than Alpha\n\ -(and thus is presumably not running on an Alpha now). No action taken.\n", 1073}, - {"Unable to get the epoch value from the kernel.\n", 1074}, - {"Kernel is assuming an epoch value of %lu\n", 1075}, +(and thus is presumably not running on an Alpha now). No action taken.\n", 1077}, + {"Unable to get the epoch value from the kernel.\n", 1078}, + {"Kernel is assuming an epoch value of %lu\n", 1079}, {"\ To set the epoch value, you must use the 'epoch' option to tell to what \ -value to set it.\n", 1076}, - {"Not setting the epoch to %d - testing only.\n", 1077}, - {"Unable to set the epoch value in the kernel.\n", 1078}, +value to set it.\n", 1080}, + {"Not setting the epoch to %d - testing only.\n", 1081}, + {"Unable to set the epoch value in the kernel.\n", 1082}, {"\ hwclock - query and set the hardware clock (RTC)\n\ \n\ @@ -1490,558 +1498,558 @@ Options: \n\ --epoch=year specifies the year which is the beginning of the \n\ hardware clock's epoch value\n\ --noadjfile do not access /etc/adjtime. Requires the use of\n\ - either --utc or --localtime\n", 1079}, + either --utc or --localtime\n", 1083}, {"\ --jensen, --arc, --srm, --funky-toy\n\ - tell hwclock the type of alpha you have (see hwclock(8))\n", 1080}, - {"%s takes no non-option arguments. You supplied %d.\n", 1081}, + tell hwclock the type of alpha you have (see hwclock(8))\n", 1084}, + {"%s takes no non-option arguments. You supplied %d.\n", 1085}, {"\ You have specified multiple functions.\n\ -You can only perform one function at a time.\n", 1082}, +You can only perform one function at a time.\n", 1086}, {"\ %s: The --utc and --localtime options are mutually exclusive. You specified \ -both.\n", 1083}, +both.\n", 1087}, {"\ %s: The --adjust and --noadjfile options are mutually exclusive. You \ -specified both.\n", 1084}, - {"%s: With --noadjfile, you must specify either --utc or --localtime\n", 1085}, - {"No usable set-to time. Cannot set clock.\n", 1086}, - {"Sorry, only the superuser can change the Hardware Clock.\n", 1087}, - {"Sorry, only the superuser can change the System Clock.\n", 1088}, +specified both.\n", 1088}, + {"%s: With --noadjfile, you must specify either --utc or --localtime\n", 1089}, + {"No usable set-to time. Cannot set clock.\n", 1090}, + {"Sorry, only the superuser can change the Hardware Clock.\n", 1091}, + {"Sorry, only the superuser can change the System Clock.\n", 1092}, {"\ Sorry, only the superuser can change the Hardware Clock epoch in the \ -kernel.\n", 1089}, - {"Cannot access the Hardware Clock via any known method.\n", 1090}, +kernel.\n", 1093}, + {"Cannot access the Hardware Clock via any known method.\n", 1094}, {"\ Use the --debug option to see the details of our search for an access \ -method.\n", 1091}, - {"Waiting in loop for time from KDGHWCLK to change\n", 1092}, - {"KDGHWCLK ioctl to read time failed", 1093}, - {"Timed out waiting for time change.\n", 1094}, - {"KDGHWCLK ioctl to read time failed in loop", 1095}, - {"ioctl() failed to read time from %s", 1096}, - {"ioctl KDSHWCLK failed", 1097}, - {"Can't open /dev/tty1 or /dev/vc/1", 1098}, - {"KDGHWCLK ioctl failed", 1099}, - {"open() of %s failed", 1100}, - {"ioctl() to %s to read the time failed.\n", 1101}, - {"Waiting in loop for time from %s to change\n", 1102}, - {"%s does not have interrupt functions. ", 1103}, - {"read() to %s to wait for clock tick failed", 1104}, - {"ioctl() to %s to turn off update interrupts failed", 1105}, - {"ioctl() to %s to turn on update interrupts failed unexpectedly", 1106}, - {"ioctl() to %s to set the time failed.\n", 1107}, - {"ioctl(%s) was successful.\n", 1108}, - {"Open of %s failed", 1109}, +method.\n", 1095}, + {"Waiting in loop for time from KDGHWCLK to change\n", 1096}, + {"KDGHWCLK ioctl to read time failed", 1097}, + {"Timed out waiting for time change.\n", 1098}, + {"KDGHWCLK ioctl to read time failed in loop", 1099}, + {"ioctl() failed to read time from %s", 1100}, + {"ioctl KDSHWCLK failed", 1101}, + {"Can't open /dev/tty1 or /dev/vc/1", 1102}, + {"KDGHWCLK ioctl failed", 1103}, + {"open() of %s failed", 1104}, + {"ioctl() to %s to read the time failed.\n", 1105}, + {"Waiting in loop for time from %s to change\n", 1106}, + {"%s does not have interrupt functions. ", 1107}, + {"read() to %s to wait for clock tick failed", 1108}, + {"ioctl() to %s to turn off update interrupts failed", 1109}, + {"ioctl() to %s to turn on update interrupts failed unexpectedly", 1110}, + {"ioctl() to %s to set the time failed.\n", 1111}, + {"ioctl(%s) was successful.\n", 1112}, + {"Open of %s failed", 1113}, {"\ To manipulate the epoch value in the kernel, we must access the Linux 'rtc' \ device driver via the device special file %s. This file does not exist on \ -this system.\n", 1110}, - {"Unable to open %s", 1111}, - {"ioctl(RTC_EPOCH_READ) to %s failed", 1112}, - {"we have read epoch %ld from %s with RTC_EPOCH_READ ioctl.\n", 1113}, - {"The epoch value may not be less than 1900. You requested %ld\n", 1114}, - {"setting epoch to %ld with RTC_EPOCH_SET ioctl to %s.\n", 1115}, - {"\ -The kernel device driver for %s does not have the RTC_EPOCH_SET ioctl.\n", 1116}, - {"ioctl(RTC_EPOCH_SET) to %s failed", 1117}, - {"calling open_tty\n", 1118}, - {"calling termio_init\n", 1119}, - {"writing init string\n", 1120}, - {"before autobaud\n", 1121}, - {"waiting for cr-lf\n", 1122}, - {"read %c\n", 1123}, - {"reading login name\n", 1124}, - {"%s: can't exec %s: %m", 1125}, - {"can't malloc initstring", 1126}, - {"bad timeout value: %s", 1127}, - {"after getopt loop\n", 1128}, - {"exiting parseargs\n", 1129}, - {"entered parse_speeds\n", 1130}, - {"bad speed: %s", 1131}, - {"too many alternate speeds", 1132}, - {"exiting parsespeeds\n", 1133}, - {"/dev: chdir() failed: %m", 1134}, - {"/dev/%s: not a character device", 1135}, - {"open(2)\n", 1136}, - {"/dev/%s: cannot open as standard input: %m", 1137}, - {"%s: not open for read/write", 1138}, - {"duping\n", 1139}, - {"%s: dup problem: %m", 1140}, - {"term_io 2\n", 1141}, - {"user", 1142}, - {"users", 1143}, - {"%s: read: %m", 1144}, - {"%s: input overrun", 1145}, +this system.\n", 1114}, + {"Unable to open %s", 1115}, + {"ioctl(RTC_EPOCH_READ) to %s failed", 1116}, + {"we have read epoch %ld from %s with RTC_EPOCH_READ ioctl.\n", 1117}, + {"The epoch value may not be less than 1900. You requested %ld\n", 1118}, + {"setting epoch to %ld with RTC_EPOCH_SET ioctl to %s.\n", 1119}, + {"\ +The kernel device driver for %s does not have the RTC_EPOCH_SET ioctl.\n", 1120}, + {"ioctl(RTC_EPOCH_SET) to %s failed", 1121}, + {"calling open_tty\n", 1122}, + {"calling termio_init\n", 1123}, + {"writing init string\n", 1124}, + {"before autobaud\n", 1125}, + {"waiting for cr-lf\n", 1126}, + {"read %c\n", 1127}, + {"reading login name\n", 1128}, + {"%s: can't exec %s: %m", 1129}, + {"can't malloc initstring", 1130}, + {"bad timeout value: %s", 1131}, + {"after getopt loop\n", 1132}, + {"exiting parseargs\n", 1133}, + {"entered parse_speeds\n", 1134}, + {"bad speed: %s", 1135}, + {"too many alternate speeds", 1136}, + {"exiting parsespeeds\n", 1137}, + {"/dev: chdir() failed: %m", 1138}, + {"/dev/%s: not a character device", 1139}, + {"open(2)\n", 1140}, + {"/dev/%s: cannot open as standard input: %m", 1141}, + {"%s: not open for read/write", 1142}, + {"duping\n", 1143}, + {"%s: dup problem: %m", 1144}, + {"term_io 2\n", 1145}, + {"user", 1146}, + {"users", 1147}, + {"%s: read: %m", 1148}, + {"%s: input overrun", 1149}, {"\ Usage: %s [-hiLmw] [-l login_program] [-t timeout] [-I initstring] [-H \ login_host] baud_rate,... line [termtype]\n\ or\t[-hiLmw] [-l login_program] [-t timeout] [-I initstring] [-H login_host] \ -line baud_rate,... [termtype]\n", 1146}, - {"login: memory low, login may fail\n", 1147}, - {"can't malloc for ttyclass", 1148}, - {"can't malloc for grplist", 1149}, - {"Login on %s from %s denied by default.\n", 1150}, - {"Login on %s from %s denied.\n", 1151}, - {"%s: you (user %d) don't exist.\n", 1152}, - {"%s: user \"%s\" does not exist.\n", 1153}, - {"%s: can only change local entries; use yp%s instead.\n", 1154}, - {"Changing finger information for %s.\n", 1155}, - {"Password error.", 1156}, - {"Password: ", 1157}, - {"Incorrect password.", 1158}, - {"Finger information not changed.\n", 1159}, - {"Usage: %s [ -f full-name ] [ -o office ] ", 1160}, +line baud_rate,... [termtype]\n", 1150}, + {"login: memory low, login may fail\n", 1151}, + {"can't malloc for ttyclass", 1152}, + {"can't malloc for grplist", 1153}, + {"Login on %s from %s denied by default.\n", 1154}, + {"Login on %s from %s denied.\n", 1155}, + {"%s: you (user %d) don't exist.\n", 1156}, + {"%s: user \"%s\" does not exist.\n", 1157}, + {"%s: can only change local entries; use yp%s instead.\n", 1158}, + {"Changing finger information for %s.\n", 1159}, + {"Password error.", 1160}, + {"Password: ", 1161}, + {"Incorrect password.", 1162}, + {"Finger information not changed.\n", 1163}, + {"Usage: %s [ -f full-name ] [ -o office ] ", 1164}, {"\ [ -p office-phone ]\n\ -\t[ -h home-phone ] ", 1161}, - {"[ --help ] [ --version ]\n", 1162}, +\t[ -h home-phone ] ", 1165}, + {"[ --help ] [ --version ]\n", 1166}, {"\ \n\ -Aborted.\n", 1163}, - {"field is too long.\n", 1164}, - {"'%c' is not allowed.\n", 1165}, - {"Control characters are not allowed.\n", 1166}, - {"Finger information *NOT* changed. Try again later.\n", 1167}, - {"Finger information changed.\n", 1168}, - {"malloc failed", 1169}, - {"%s: Your shell is not in /etc/shells, shell change denied\n", 1170}, - {"Changing shell for %s.\n", 1171}, - {"New shell", 1172}, - {"Shell not changed.\n", 1173}, - {"Shell *NOT* changed. Try again later.\n", 1174}, - {"Shell changed.\n", 1175}, +Aborted.\n", 1167}, + {"field is too long.\n", 1168}, + {"'%c' is not allowed.\n", 1169}, + {"Control characters are not allowed.\n", 1170}, + {"Finger information *NOT* changed. Try again later.\n", 1171}, + {"Finger information changed.\n", 1172}, + {"malloc failed", 1173}, + {"%s: Your shell is not in /etc/shells, shell change denied\n", 1174}, + {"Changing shell for %s.\n", 1175}, + {"New shell", 1176}, + {"Shell not changed.\n", 1177}, + {"Shell *NOT* changed. Try again later.\n", 1178}, + {"Shell changed.\n", 1179}, {"\ Usage: %s [ -s shell ] [ --list-shells ] [ --help ] [ --version ]\n\ - [ username ]\n", 1176}, - {"%s: shell must be a full path name.\n", 1177}, - {"%s: \"%s\" does not exist.\n", 1178}, - {"%s: \"%s\" is not executable.\n", 1179}, - {"%s: '%c' is not allowed.\n", 1180}, - {"%s: Control characters are not allowed.\n", 1181}, - {"Warning: \"%s\" is not listed in /etc/shells\n", 1182}, - {"%s: \"%s\" is not listed in /etc/shells.\n", 1183}, - {"%s: use -l option to see list\n", 1184}, - {"Warning: \"%s\" is not listed in /etc/shells.\n", 1185}, - {"Use %s -l to see list.\n", 1186}, - {"No known shells.\n", 1187}, - {"couldn't open /dev/urandom", 1188}, - {"couldn't read random data from /dev/urandom", 1189}, - {"can't open %s for reading", 1190}, - {"can't stat(%s)", 1191}, - {"%s doesn't have the correct filemodes", 1192}, - {"can't read data from %s", 1193}, - {"Can't read %s, exiting.", 1194}, - {"usage: last [-#] [-f file] [-t tty] [-h hostname] [user ...]\n", 1195}, - {" still logged in", 1196}, + [ username ]\n", 1180}, + {"%s: shell must be a full path name.\n", 1181}, + {"%s: \"%s\" does not exist.\n", 1182}, + {"%s: \"%s\" is not executable.\n", 1183}, + {"%s: '%c' is not allowed.\n", 1184}, + {"%s: Control characters are not allowed.\n", 1185}, + {"Warning: \"%s\" is not listed in /etc/shells\n", 1186}, + {"%s: \"%s\" is not listed in /etc/shells.\n", 1187}, + {"%s: use -l option to see list\n", 1188}, + {"Warning: \"%s\" is not listed in /etc/shells.\n", 1189}, + {"Use %s -l to see list.\n", 1190}, + {"No known shells.\n", 1191}, + {"couldn't open /dev/urandom", 1192}, + {"couldn't read random data from /dev/urandom", 1193}, + {"can't open %s for reading", 1194}, + {"can't stat(%s)", 1195}, + {"%s doesn't have the correct filemodes", 1196}, + {"can't read data from %s", 1197}, + {"Can't read %s, exiting.", 1198}, + {"usage: last [-#] [-f file] [-t tty] [-h hostname] [user ...]\n", 1199}, + {" still logged in", 1200}, {"\ \n\ -wtmp begins %s", 1197}, - {"last: malloc failure.\n", 1198}, - {"last: gethostname", 1199}, +wtmp begins %s", 1201}, + {"last: malloc failure.\n", 1202}, + {"last: gethostname", 1203}, {"\ \n\ -interrupted %10.10s %5.5s \n", 1200}, - {"FATAL: can't reopen tty: %s", 1201}, - {"FATAL: bad tty", 1202}, - {"login: -h for super-user only.\n", 1203}, - {"usage: login [-fp] [username]\n", 1204}, - {"login: PAM Failure, aborting: %s\n", 1205}, - {"Couldn't initialize PAM: %s", 1206}, - {"login: ", 1207}, - {"FAILED LOGIN %d FROM %s FOR %s, %s", 1208}, +interrupted %10.10s %5.5s \n", 1204}, + {"FATAL: can't reopen tty: %s", 1205}, + {"FATAL: bad tty", 1206}, + {"login: -h for super-user only.\n", 1207}, + {"usage: login [-fp] [username]\n", 1208}, + {"login: PAM Failure, aborting: %s\n", 1209}, + {"Couldn't initialize PAM: %s", 1210}, + {"login: ", 1211}, + {"FAILED LOGIN %d FROM %s FOR %s, %s", 1212}, {"\ Login incorrect\n\ -\n", 1209}, - {"TOO MANY LOGIN TRIES (%d) FROM %s FOR %s, %s", 1210}, - {"FAILED LOGIN SESSION FROM %s FOR %s, %s", 1211}, +\n", 1213}, + {"TOO MANY LOGIN TRIES (%d) FROM %s FOR %s, %s", 1214}, + {"FAILED LOGIN SESSION FROM %s FOR %s, %s", 1215}, {"\ \n\ -Login incorrect\n", 1212}, +Login incorrect\n", 1216}, {"\ \n\ -Session setup problem, abort.\n", 1213}, - {"NULL user name in %s:%d. Abort.", 1214}, - {"Invalid user name \"%s\" in %s:%d. Abort.", 1215}, - {"login: Out of memory\n", 1216}, - {"Illegal username", 1217}, - {"%s login refused on this terminal.\n", 1218}, - {"LOGIN %s REFUSED FROM %s ON TTY %s", 1219}, - {"LOGIN %s REFUSED ON TTY %s", 1220}, - {"Login incorrect\n", 1221}, +Session setup problem, abort.\n", 1217}, + {"NULL user name in %s:%d. Abort.", 1218}, + {"Invalid user name \"%s\" in %s:%d. Abort.", 1219}, + {"login: Out of memory\n", 1220}, + {"Illegal username", 1221}, + {"%s login refused on this terminal.\n", 1222}, + {"LOGIN %s REFUSED FROM %s ON TTY %s", 1223}, + {"LOGIN %s REFUSED ON TTY %s", 1224}, + {"Login incorrect\n", 1225}, {"\ Too many users logged on already.\n\ -Try again later.\n", 1222}, - {"You have too many processes running.\n", 1223}, - {"DIALUP AT %s BY %s", 1224}, - {"ROOT LOGIN ON %s FROM %s", 1225}, - {"ROOT LOGIN ON %s", 1226}, - {"LOGIN ON %s BY %s FROM %s", 1227}, - {"LOGIN ON %s BY %s", 1228}, - {"You have new mail.\n", 1229}, - {"You have mail.\n", 1230}, - {"login: failure forking: %s", 1231}, - {"TIOCSCTTY failed: %m", 1232}, - {"setuid() failed", 1233}, - {"No directory %s!\n", 1234}, - {"Logging in with home = \"/\".\n", 1235}, - {"login: no memory for shell script.\n", 1236}, - {"login: couldn't exec shell script: %s.\n", 1237}, - {"login: no shell: %s.\n", 1238}, +Try again later.\n", 1226}, + {"You have too many processes running.\n", 1227}, + {"DIALUP AT %s BY %s", 1228}, + {"ROOT LOGIN ON %s FROM %s", 1229}, + {"ROOT LOGIN ON %s", 1230}, + {"LOGIN ON %s BY %s FROM %s", 1231}, + {"LOGIN ON %s BY %s", 1232}, + {"You have new mail.\n", 1233}, + {"You have mail.\n", 1234}, + {"login: failure forking: %s", 1235}, + {"TIOCSCTTY failed: %m", 1236}, + {"setuid() failed", 1237}, + {"No directory %s!\n", 1238}, + {"Logging in with home = \"/\".\n", 1239}, + {"login: no memory for shell script.\n", 1240}, + {"login: couldn't exec shell script: %s.\n", 1241}, + {"login: no shell: %s.\n", 1242}, {"\ \n\ -%s login: ", 1239}, - {"login name much too long.\n", 1240}, - {"NAME too long", 1241}, - {"login names may not start with '-'.\n", 1242}, - {"too many bare linefeeds.\n", 1243}, - {"EXCESSIVE linefeeds", 1244}, - {"Login timed out after %d seconds\n", 1245}, - {"Last login: %.*s ", 1246}, - {"from %.*s\n", 1247}, - {"on %.*s\n", 1248}, - {"LOGIN FAILURE FROM %s, %s", 1249}, - {"LOGIN FAILURE ON %s, %s", 1250}, - {"%d LOGIN FAILURES FROM %s, %s", 1251}, - {"%d LOGIN FAILURES ON %s, %s", 1252}, - {"is y\n", 1253}, - {"is n\n", 1254}, - {"usage: mesg [y | n]\n", 1255}, - {"newgrp: Who are you?", 1256}, - {"newgrp: setgid", 1257}, - {"newgrp: No such group.", 1258}, - {"newgrp: Permission denied", 1259}, - {"newgrp: setuid", 1260}, - {"No shell", 1261}, - {"The password must have at least 6 characters, try again.\n", 1262}, +%s login: ", 1243}, + {"login name much too long.\n", 1244}, + {"NAME too long", 1245}, + {"login names may not start with '-'.\n", 1246}, + {"too many bare linefeeds.\n", 1247}, + {"EXCESSIVE linefeeds", 1248}, + {"Login timed out after %d seconds\n", 1249}, + {"Last login: %.*s ", 1250}, + {"from %.*s\n", 1251}, + {"on %.*s\n", 1252}, + {"LOGIN FAILURE FROM %s, %s", 1253}, + {"LOGIN FAILURE ON %s, %s", 1254}, + {"%d LOGIN FAILURES FROM %s, %s", 1255}, + {"%d LOGIN FAILURES ON %s, %s", 1256}, + {"is y\n", 1257}, + {"is n\n", 1258}, + {"usage: mesg [y | n]\n", 1259}, + {"newgrp: Who are you?", 1260}, + {"newgrp: setgid", 1261}, + {"newgrp: No such group.", 1262}, + {"newgrp: Permission denied", 1263}, + {"newgrp: setuid", 1264}, + {"No shell", 1265}, + {"The password must have at least 6 characters, try again.\n", 1266}, {"\ The password must contain characters out of two of the following\n\ classes: upper and lower case letters, digits and non alphanumeric\n\ -characters. See passwd(1) for more information.\n", 1263}, - {"You cannot reuse the old password.\n", 1264}, - {"Please don't use something like your username as password!\n", 1265}, - {"Please don't use something like your realname as password!\n", 1266}, - {"Usage: passwd [username [password]]\n", 1267}, - {"Only root may use the one and two argument forms.\n", 1268}, - {"Usage: passwd [-foqsvV] [user [password]]\n", 1269}, - {"Can't exec %s: %s\n", 1270}, - {"Cannot find login name", 1271}, - {"Only root can change the password for others.\n", 1272}, - {"Too many arguments.\n", 1273}, - {"Can't find username anywhere. Is `%s' really a user?", 1274}, - {"Sorry, I can only change local passwords. Use yppasswd instead.", 1275}, - {"UID and username does not match, imposter!", 1276}, - {"Changing password for %s\n", 1277}, - {"Enter old password: ", 1278}, - {"Illegal password, imposter.", 1279}, - {"Enter new password: ", 1280}, - {"Password not changed.", 1281}, - {"Re-type new password: ", 1282}, - {"You misspelled it. Password not changed.", 1283}, - {"password changed, user %s", 1284}, - {"ROOT PASSWORD CHANGED", 1285}, - {"password changed by root, user %s", 1286}, - {"calling setpwnam to set password.\n", 1287}, - {"Password *NOT* changed. Try again later.\n", 1288}, - {"Password changed.\n", 1289}, - {"Usage: shutdown [-h|-r] [-fqs] [now|hh:ss|+mins]\n", 1290}, - {"Shutdown process aborted", 1291}, - {"%s: Only root can shut a system down.\n", 1292}, - {"That must be tomorrow, can't you wait till then?\n", 1293}, - {"for maintenance; bounce, bounce", 1294}, - {"timeout = %d, quiet = %d, reboot = %d\n", 1295}, - {"The system is being shut down within 5 minutes", 1296}, - {"Login is therefore prohibited.", 1297}, - {"rebooted by %s: %s", 1298}, - {"halted by %s: %s", 1299}, +characters. See passwd(1) for more information.\n", 1267}, + {"You cannot reuse the old password.\n", 1268}, + {"Please don't use something like your username as password!\n", 1269}, + {"Please don't use something like your realname as password!\n", 1270}, + {"Usage: passwd [username [password]]\n", 1271}, + {"Only root may use the one and two argument forms.\n", 1272}, + {"Usage: passwd [-foqsvV] [user [password]]\n", 1273}, + {"Can't exec %s: %s\n", 1274}, + {"Cannot find login name", 1275}, + {"Only root can change the password for others.\n", 1276}, + {"Too many arguments.\n", 1277}, + {"Can't find username anywhere. Is `%s' really a user?", 1278}, + {"Sorry, I can only change local passwords. Use yppasswd instead.", 1279}, + {"UID and username does not match, imposter!", 1280}, + {"Changing password for %s\n", 1281}, + {"Enter old password: ", 1282}, + {"Illegal password, imposter.", 1283}, + {"Enter new password: ", 1284}, + {"Password not changed.", 1285}, + {"Re-type new password: ", 1286}, + {"You misspelled it. Password not changed.", 1287}, + {"password changed, user %s", 1288}, + {"ROOT PASSWORD CHANGED", 1289}, + {"password changed by root, user %s", 1290}, + {"calling setpwnam to set password.\n", 1291}, + {"Password *NOT* changed. Try again later.\n", 1292}, + {"Password changed.\n", 1293}, + {"Usage: shutdown [-h|-r] [-fqs] [now|hh:ss|+mins]\n", 1294}, + {"Shutdown process aborted", 1295}, + {"%s: Only root can shut a system down.\n", 1296}, + {"That must be tomorrow, can't you wait till then?\n", 1297}, + {"for maintenance; bounce, bounce", 1298}, + {"timeout = %d, quiet = %d, reboot = %d\n", 1299}, + {"The system is being shut down within 5 minutes", 1300}, + {"Login is therefore prohibited.", 1301}, + {"rebooted by %s: %s", 1302}, + {"halted by %s: %s", 1303}, {"\ \n\ -Why am I still alive after reboot?", 1300}, +Why am I still alive after reboot?", 1304}, {"\ \n\ -Now you can turn off the power...", 1301}, - {"Calling kernel power-off facility...\n", 1302}, - {"Error powering off\t%s\n", 1303}, - {"Executing the program \"%s\" ...\n", 1304}, - {"Error executing\t%s\n", 1305}, - {"URGENT: broadcast message from %s:", 1306}, - {"System going down in %d hours %d minutes", 1307}, - {"System going down in 1 hour %d minutes", 1308}, - {"System going down in %d minutes\n", 1309}, - {"System going down in 1 minute\n", 1310}, - {"System going down IMMEDIATELY!\n", 1311}, - {"\t... %s ...\n", 1312}, - {"Cannot fork for swapoff. Shrug!", 1313}, - {"Cannot exec swapoff, hoping umount will do the trick.", 1314}, - {"Cannot fork for umount, trying manually.", 1315}, - {"Cannot exec %s, trying umount.\n", 1316}, - {"Cannot exec umount, giving up on umount.", 1317}, - {"Unmounting any remaining filesystems...", 1318}, - {"shutdown: Couldn't umount %s: %s\n", 1319}, - {"Booting to single user mode.\n", 1320}, - {"exec of single user shell failed\n", 1321}, - {"fork of single user shell failed\n", 1322}, - {"error opening fifo\n", 1323}, - {"error setting close-on-exec on /dev/initctl", 1324}, - {"error running finalprog\n", 1325}, - {"error forking finalprog\n", 1326}, +Now you can turn off the power...", 1305}, + {"Calling kernel power-off facility...\n", 1306}, + {"Error powering off\t%s\n", 1307}, + {"Executing the program \"%s\" ...\n", 1308}, + {"Error executing\t%s\n", 1309}, + {"URGENT: broadcast message from %s:", 1310}, + {"System going down in %d hours %d minutes", 1311}, + {"System going down in 1 hour %d minutes", 1312}, + {"System going down in %d minutes\n", 1313}, + {"System going down in 1 minute\n", 1314}, + {"System going down IMMEDIATELY!\n", 1315}, + {"\t... %s ...\n", 1316}, + {"Cannot fork for swapoff. Shrug!", 1317}, + {"Cannot exec swapoff, hoping umount will do the trick.", 1318}, + {"Cannot fork for umount, trying manually.", 1319}, + {"Cannot exec %s, trying umount.\n", 1320}, + {"Cannot exec umount, giving up on umount.", 1321}, + {"Unmounting any remaining filesystems...", 1322}, + {"shutdown: Couldn't umount %s: %s\n", 1323}, + {"Booting to single user mode.\n", 1324}, + {"exec of single user shell failed\n", 1325}, + {"fork of single user shell failed\n", 1326}, + {"error opening fifo\n", 1327}, + {"error setting close-on-exec on /dev/initctl", 1328}, + {"error running finalprog\n", 1329}, + {"error forking finalprog\n", 1330}, {"\ \n\ -Wrong password.\n", 1327}, - {"lstat of path failed\n", 1328}, - {"stat of path failed\n", 1329}, - {"open of directory failed\n", 1330}, - {"fork failed\n", 1331}, - {"exec failed\n", 1332}, - {"cannot open inittab\n", 1333}, - {"no TERM or cannot stat tty\n", 1334}, - {"error stopping service: \"%s\"", 1335}, - {"too many iov's (change code in wall/ttymsg.c)", 1336}, - {"excessively long line arg", 1337}, - {"cannot fork", 1338}, - {"fork: %s", 1339}, - {"%s: BAD ERROR", 1340}, - {"%s: the password file is busy.\n", 1341}, - {"%s: the group file is busy.\n", 1342}, - {"%s: the %s file is busy (%s present)\n", 1343}, - {"%s: can't link %s: %s\n", 1344}, - {"%s: can't unlock %s: %s (your changes are still in %s)\n", 1345}, - {"%s: Cannot fork\n", 1346}, - {"%s: %s unchanged\n", 1347}, - {"%s: no changes made\n", 1348}, - {"You are using shadow groups on this system.\n", 1349}, - {"You are using shadow passwords on this system.\n", 1350}, - {"Would you like to edit %s now [y/n]? ", 1351}, - {"usage: %s [file]\n", 1352}, - {"%s: can't open temporary file.\n", 1353}, - {"Broadcast Message from %s@%s", 1354}, - {"%s: will not read %s - use stdin.\n", 1355}, - {"%s: can't read %s.\n", 1356}, - {"%s: can't stat temporary file.\n", 1357}, - {"%s: can't read temporary file.\n", 1358}, - {"illegal month value: use 1-12", 1359}, - {"illegal year value: use 1-9999", 1360}, - {"%s %d", 1361}, - {"usage: cal [-13smjyV] [[month] year]\n", 1362}, - {"usage: %s [+format] [day month year]\n", 1363}, - {"St. Tib's Day", 1364}, - {"%s: unknown signal %s\n", 1365}, - {"%s: can't find process \"%s\"\n", 1366}, - {"%s: unknown signal %s; valid signals:\n", 1367}, - {"usage: %s [ -s signal | -p ] [ -a ] pid ...\n", 1368}, - {" %s -l [ signal ]\n", 1369}, - {"logger: %s: %s.\n", 1370}, - {"logger: unknown facility name: %s.\n", 1371}, - {"logger: unknown priority name: %s.\n", 1372}, - {"\ -usage: logger [-is] [-f file] [-p pri] [-t tag] [-u socket] [ message ... ]\n", 1373}, - {"usage: look [-dfa] [-t char] string [file]\n", 1374}, - {"Could not open %s\n", 1375}, - {"Got %d bytes from %s\n", 1376}, - {"namei: unable to get current directory - %s\n", 1377}, - {"namei: unable to chdir to %s - %s (%d)\n", 1378}, - {"usage: namei [-mx] pathname [pathname ...]\n", 1379}, - {"namei: could not chdir to root!\n", 1380}, - {"namei: could not stat root!\n", 1381}, - {"namei: buf overflow\n", 1382}, - {" ? could not chdir into %s - %s (%d)\n", 1383}, - {" ? problems reading symlink %s - %s (%d)\n", 1384}, - {" *** EXCEEDED UNIX LIMIT OF SYMLINKS ***\n", 1385}, - {"namei: unknown file type 0%06o on file %s\n", 1386}, - {"%s: out of memory\n", 1387}, - {"%s: renaming %s to %s failed: %s\n", 1388}, - {"call: %s from to files...\n", 1389}, +Wrong password.\n", 1331}, + {"lstat of path failed\n", 1332}, + {"stat of path failed\n", 1333}, + {"open of directory failed\n", 1334}, + {"fork failed\n", 1335}, + {"exec failed\n", 1336}, + {"cannot open inittab\n", 1337}, + {"no TERM or cannot stat tty\n", 1338}, + {"error stopping service: \"%s\"", 1339}, + {"too many iov's (change code in wall/ttymsg.c)", 1340}, + {"excessively long line arg", 1341}, + {"cannot fork", 1342}, + {"fork: %s", 1343}, + {"%s: BAD ERROR", 1344}, + {"%s: the password file is busy.\n", 1345}, + {"%s: the group file is busy.\n", 1346}, + {"%s: the %s file is busy (%s present)\n", 1347}, + {"%s: can't link %s: %s\n", 1348}, + {"%s: can't unlock %s: %s (your changes are still in %s)\n", 1349}, + {"%s: Cannot fork\n", 1350}, + {"%s: %s unchanged\n", 1351}, + {"%s: no changes made\n", 1352}, + {"You are using shadow groups on this system.\n", 1353}, + {"You are using shadow passwords on this system.\n", 1354}, + {"Would you like to edit %s now [y/n]? ", 1355}, + {"usage: %s [file]\n", 1356}, + {"%s: can't open temporary file.\n", 1357}, + {"Broadcast Message from %s@%s", 1358}, + {"%s: will not read %s - use stdin.\n", 1359}, + {"%s: can't read %s.\n", 1360}, + {"%s: can't stat temporary file.\n", 1361}, + {"%s: can't read temporary file.\n", 1362}, + {"illegal month value: use 1-12", 1363}, + {"illegal year value: use 1-9999", 1364}, + {"%s %d", 1365}, + {"usage: cal [-13smjyV] [[month] year]\n", 1366}, + {"usage: %s [+format] [day month year]\n", 1367}, + {"St. Tib's Day", 1368}, + {"%s: unknown signal %s\n", 1369}, + {"%s: can't find process \"%s\"\n", 1370}, + {"%s: unknown signal %s; valid signals:\n", 1371}, + {"usage: %s [ -s signal | -p ] [ -a ] pid ...\n", 1372}, + {" %s -l [ signal ]\n", 1373}, + {"logger: %s: %s.\n", 1374}, + {"logger: unknown facility name: %s.\n", 1375}, + {"logger: unknown priority name: %s.\n", 1376}, + {"\ +usage: logger [-is] [-f file] [-p pri] [-t tag] [-u socket] [ message ... ]\n", 1377}, + {"usage: look [-dfa] [-t char] string [file]\n", 1378}, + {"Could not open %s\n", 1379}, + {"Got %d bytes from %s\n", 1380}, + {"namei: unable to get current directory - %s\n", 1381}, + {"namei: unable to chdir to %s - %s (%d)\n", 1382}, + {"usage: namei [-mx] pathname [pathname ...]\n", 1383}, + {"namei: could not chdir to root!\n", 1384}, + {"namei: could not stat root!\n", 1385}, + {"namei: buf overflow\n", 1386}, + {" ? could not chdir into %s - %s (%d)\n", 1387}, + {" ? problems reading symlink %s - %s (%d)\n", 1388}, + {" *** EXCEEDED UNIX LIMIT OF SYMLINKS ***\n", 1389}, + {"namei: unknown file type 0%06o on file %s\n", 1390}, + {"%s: out of memory\n", 1391}, + {"%s: renaming %s to %s failed: %s\n", 1392}, + {"call: %s from to files...\n", 1393}, {"\ Warning: `%s' is a link.\n\ Use `%s [options] %s' if you really want to use it.\n\ -Script not started.\n", 1390}, - {"usage: script [-a] [-f] [-q] [-t] [file]\n", 1391}, - {"Script started, file is %s\n", 1392}, - {"Script started on %s", 1393}, +Script not started.\n", 1394}, + {"usage: script [-a] [-f] [-q] [-t] [file]\n", 1395}, + {"Script started, file is %s\n", 1396}, + {"Script started on %s", 1397}, {"\ \n\ -Script done on %s", 1394}, - {"Script done, file is %s\n", 1395}, - {"openpty failed\n", 1396}, - {"Out of pty's\n", 1397}, - {"%s: Argument error, usage\n", 1398}, - {" [ -term terminal_name ]\n", 1399}, - {" [ -reset ]\n", 1400}, - {" [ -initialize ]\n", 1401}, - {" [ -cursor [on|off] ]\n", 1402}, - {" [ -snow [on|off] ]\n", 1403}, - {" [ -softscroll [on|off] ]\n", 1404}, - {" [ -repeat [on|off] ]\n", 1405}, - {" [ -appcursorkeys [on|off] ]\n", 1406}, - {" [ -linewrap [on|off] ]\n", 1407}, - {" [ -default ]\n", 1408}, - {" [ -foreground black|blue|green|cyan", 1409}, - {"|red|magenta|yellow|white|default ]\n", 1410}, - {" [ -background black|blue|green|cyan", 1411}, - {" [ -ulcolor black|grey|blue|green|cyan", 1412}, - {"|red|magenta|yellow|white ]\n", 1413}, - {" [ -ulcolor bright blue|green|cyan", 1414}, - {" [ -hbcolor black|grey|blue|green|cyan", 1415}, - {" [ -hbcolor bright blue|green|cyan", 1416}, - {" [ -standout [ attr ] ]\n", 1417}, - {" [ -inversescreen [on|off] ]\n", 1418}, - {" [ -bold [on|off] ]\n", 1419}, - {" [ -half-bright [on|off] ]\n", 1420}, - {" [ -blink [on|off] ]\n", 1421}, - {" [ -reverse [on|off] ]\n", 1422}, - {" [ -underline [on|off] ]\n", 1423}, - {" [ -store ]\n", 1424}, - {" [ -clear [all|rest] ]\n", 1425}, - {" [ -tabs [ tab1 tab2 tab3 ... ] ] (tabn = 1-160)\n", 1426}, - {" [ -clrtabs [ tab1 tab2 tab3 ... ] ] (tabn = 1-160)\n", 1427}, - {" [ -regtabs [1-160] ]\n", 1428}, - {" [ -blank [0-60] ]\n", 1429}, - {" [ -dump [1-NR_CONSOLES] ]\n", 1430}, - {" [ -append [1-NR_CONSOLES] ]\n", 1431}, - {" [ -file dumpfilename ]\n", 1432}, - {" [ -msg [on|off] ]\n", 1433}, - {" [ -msglevel [0-8] ]\n", 1434}, - {" [ -powersave [on|vsync|hsync|powerdown|off] ]\n", 1435}, - {" [ -powerdown [0-60] ]\n", 1436}, - {" [ -blength [0-2000] ]\n", 1437}, - {" [ -bfreq freqnumber ]\n", 1438}, - {"cannot (un)set powersave mode\n", 1439}, - {"klogctl error: %s\n", 1440}, - {"Error reading %s\n", 1441}, - {"Error writing screendump\n", 1442}, - {"couldn't read %s, and cannot ioctl dump\n", 1443}, - {"%s: $TERM is not defined.\n", 1444}, - {"whereis [ -sbmu ] [ -SBM dir ... -f ] name...\n", 1445}, - {"write: can't find your tty's name\n", 1446}, - {"write: you have write permission turned off.\n", 1447}, - {"write: %s is not logged in on %s.\n", 1448}, - {"write: %s has messages disabled on %s\n", 1449}, - {"usage: write user [tty]\n", 1450}, - {"write: %s is not logged in\n", 1451}, - {"write: %s has messages disabled\n", 1452}, - {"write: %s is logged in more than once; writing to %s\n", 1453}, - {"Message from %s@%s (as %s) on %s at %s ...", 1454}, - {"Message from %s@%s on %s at %s ...", 1455}, - {"warning: error reading %s: %s", 1456}, - {"warning: can't open %s: %s", 1457}, - {"mount: could not open %s - using %s instead\n", 1458}, - {"can't create lock file %s: %s (use -n flag to override)", 1459}, - {"can't link lock file %s: %s (use -n flag to override)", 1460}, - {"can't open lock file %s: %s (use -n flag to override)", 1461}, - {"Can't lock lock file %s: %s\n", 1462}, - {"can't lock lock file %s: %s", 1463}, - {"timed out", 1464}, +Script done on %s", 1398}, + {"Script done, file is %s\n", 1399}, + {"openpty failed\n", 1400}, + {"Out of pty's\n", 1401}, + {"%s: Argument error, usage\n", 1402}, + {" [ -term terminal_name ]\n", 1403}, + {" [ -reset ]\n", 1404}, + {" [ -initialize ]\n", 1405}, + {" [ -cursor [on|off] ]\n", 1406}, + {" [ -snow [on|off] ]\n", 1407}, + {" [ -softscroll [on|off] ]\n", 1408}, + {" [ -repeat [on|off] ]\n", 1409}, + {" [ -appcursorkeys [on|off] ]\n", 1410}, + {" [ -linewrap [on|off] ]\n", 1411}, + {" [ -default ]\n", 1412}, + {" [ -foreground black|blue|green|cyan", 1413}, + {"|red|magenta|yellow|white|default ]\n", 1414}, + {" [ -background black|blue|green|cyan", 1415}, + {" [ -ulcolor black|grey|blue|green|cyan", 1416}, + {"|red|magenta|yellow|white ]\n", 1417}, + {" [ -ulcolor bright blue|green|cyan", 1418}, + {" [ -hbcolor black|grey|blue|green|cyan", 1419}, + {" [ -hbcolor bright blue|green|cyan", 1420}, + {" [ -standout [ attr ] ]\n", 1421}, + {" [ -inversescreen [on|off] ]\n", 1422}, + {" [ -bold [on|off] ]\n", 1423}, + {" [ -half-bright [on|off] ]\n", 1424}, + {" [ -blink [on|off] ]\n", 1425}, + {" [ -reverse [on|off] ]\n", 1426}, + {" [ -underline [on|off] ]\n", 1427}, + {" [ -store ]\n", 1428}, + {" [ -clear [all|rest] ]\n", 1429}, + {" [ -tabs [ tab1 tab2 tab3 ... ] ] (tabn = 1-160)\n", 1430}, + {" [ -clrtabs [ tab1 tab2 tab3 ... ] ] (tabn = 1-160)\n", 1431}, + {" [ -regtabs [1-160] ]\n", 1432}, + {" [ -blank [0-60] ]\n", 1433}, + {" [ -dump [1-NR_CONSOLES] ]\n", 1434}, + {" [ -append [1-NR_CONSOLES] ]\n", 1435}, + {" [ -file dumpfilename ]\n", 1436}, + {" [ -msg [on|off] ]\n", 1437}, + {" [ -msglevel [0-8] ]\n", 1438}, + {" [ -powersave [on|vsync|hsync|powerdown|off] ]\n", 1439}, + {" [ -powerdown [0-60] ]\n", 1440}, + {" [ -blength [0-2000] ]\n", 1441}, + {" [ -bfreq freqnumber ]\n", 1442}, + {"cannot (un)set powersave mode\n", 1443}, + {"klogctl error: %s\n", 1444}, + {"Error reading %s\n", 1445}, + {"Error writing screendump\n", 1446}, + {"couldn't read %s, and cannot ioctl dump\n", 1447}, + {"%s: $TERM is not defined.\n", 1448}, + {"whereis [ -sbmu ] [ -SBM dir ... -f ] name...\n", 1449}, + {"write: can't find your tty's name\n", 1450}, + {"write: you have write permission turned off.\n", 1451}, + {"write: %s is not logged in on %s.\n", 1452}, + {"write: %s has messages disabled on %s\n", 1453}, + {"usage: write user [tty]\n", 1454}, + {"write: %s is not logged in\n", 1455}, + {"write: %s has messages disabled\n", 1456}, + {"write: %s is logged in more than once; writing to %s\n", 1457}, + {"Message from %s@%s (as %s) on %s at %s ...", 1458}, + {"Message from %s@%s on %s at %s ...", 1459}, + {"warning: error reading %s: %s", 1460}, + {"warning: can't open %s: %s", 1461}, + {"mount: could not open %s - using %s instead\n", 1462}, + {"can't create lock file %s: %s (use -n flag to override)", 1463}, + {"can't link lock file %s: %s (use -n flag to override)", 1464}, + {"can't open lock file %s: %s (use -n flag to override)", 1465}, + {"Can't lock lock file %s: %s\n", 1466}, + {"can't lock lock file %s: %s", 1467}, + {"timed out", 1468}, {"\ Cannot create link %s\n\ -Perhaps there is a stale lock file?\n", 1465}, - {"cannot open %s (%s) - mtab not updated", 1466}, - {"error writing %s: %s", 1467}, - {"error changing mode of %s: %s\n", 1468}, - {"can't rename %s to %s: %s\n", 1469}, - {"loop: can't open device %s: %s\n", 1470}, - {"loop: can't get info on device %s: %s\n", 1471}, - {"%s: [%04x]:%ld (%s) offset %d, %s encryption\n", 1472}, - {"mount: could not find any device /dev/loop#", 1473}, +Perhaps there is a stale lock file?\n", 1469}, + {"cannot open %s (%s) - mtab not updated", 1470}, + {"error writing %s: %s", 1471}, + {"error changing mode of %s: %s\n", 1472}, + {"can't rename %s to %s: %s\n", 1473}, + {"loop: can't open device %s: %s\n", 1474}, + {"loop: can't get info on device %s: %s\n", 1475}, + {"%s: [%04x]:%ld (%s) offset %d, %s encryption\n", 1476}, + {"mount: could not find any device /dev/loop#", 1477}, {"\ mount: Could not find any loop device.\n\ - Maybe /dev/loop# has a wrong major number?", 1474}, + Maybe /dev/loop# has a wrong major number?", 1478}, {"\ mount: Could not find any loop device, and, according to %s,\n\ this kernel does not know about the loop device.\n\ - (If so, then recompile or `insmod loop.o'.)", 1475}, + (If so, then recompile or `insmod loop.o'.)", 1479}, {"\ mount: Could not find any loop device. Maybe this kernel does not know\n\ about the loop device (then recompile or `insmod loop.o'), or\n\ - maybe /dev/loop# has the wrong major number?", 1476}, - {"mount: could not find any free loop device", 1477}, - {"Unsupported encryption type %s\n", 1478}, - {"Couldn't lock into memory, exiting.\n", 1479}, - {"Init (up to 16 hex digits): ", 1480}, - {"Non-hex digit '%c'.\n", 1481}, - {"Don't know how to get key for encryption system %d\n", 1482}, - {"set_loop(%s,%s,%d): success\n", 1483}, - {"loop: can't delete device %s: %s\n", 1484}, - {"del_loop(%s): success\n", 1485}, - {"This mount was compiled without loop support. Please recompile.\n", 1486}, + maybe /dev/loop# has the wrong major number?", 1480}, + {"mount: could not find any free loop device", 1481}, + {"Unsupported encryption type %s\n", 1482}, + {"Couldn't lock into memory, exiting.\n", 1483}, + {"Init (up to 16 hex digits): ", 1484}, + {"Non-hex digit '%c'.\n", 1485}, + {"Don't know how to get key for encryption system %d\n", 1486}, + {"set_loop(%s,%s,%d): success\n", 1487}, + {"loop: can't delete device %s: %s\n", 1488}, + {"del_loop(%s): success\n", 1489}, + {"This mount was compiled without loop support. Please recompile.\n", 1490}, {"\ usage:\n\ %s loop_device # give info\n\ %s -d loop_device # delete\n\ - %s [ -e encryption ] [ -o offset ] loop_device file # setup\n", 1487}, - {"not enough memory", 1488}, - {"No loop support was available at compile time. Please recompile.\n", 1489}, - {"[mntent]: warning: no final newline at the end of %s\n", 1490}, - {"[mntent]: line %d in %s is bad%s\n", 1491}, - {"; rest of file ignored", 1492}, - {"mount: according to mtab, %s is already mounted on %s", 1493}, - {"mount: according to mtab, %s is mounted on %s", 1494}, - {"mount: can't open %s for writing: %s", 1495}, - {"mount: error writing %s: %s", 1496}, - {"mount: error changing mode of %s: %s", 1497}, - {"%s looks like swapspace - not mounted", 1498}, - {"mount failed", 1499}, - {"mount: only root can mount %s on %s", 1500}, - {"mount: loop device specified twice", 1501}, - {"mount: type specified twice", 1502}, - {"mount: skipping the setup of a loop device\n", 1503}, - {"mount: going to use the loop device %s\n", 1504}, - {"mount: failed setting up loop device\n", 1505}, - {"mount: setup loop device successfully\n", 1506}, - {"mount: can't open %s: %s", 1507}, - {"mount: cannot open %s for setting speed", 1508}, - {"mount: cannot set speed: %s", 1509}, - {"mount: cannot fork: %s", 1510}, - {"mount: this version was compiled without support for the type `nfs'", 1511}, - {"mount: failed with nfs mount version 4, trying 3..\n", 1512}, - {"\ -mount: I could not determine the filesystem type, and none was specified", 1513}, - {"mount: you must specify the filesystem type", 1514}, - {"mount: mount failed", 1515}, - {"mount: mount point %s is not a directory", 1516}, - {"mount: permission denied", 1517}, - {"mount: must be superuser to use mount", 1518}, - {"mount: %s is busy", 1519}, - {"mount: proc already mounted", 1520}, - {"mount: %s already mounted or %s busy", 1521}, - {"mount: mount point %s does not exist", 1522}, - {"mount: mount point %s is a symbolic link to nowhere", 1523}, - {"mount: special device %s does not exist", 1524}, + %s [ -e encryption ] [ -o offset ] loop_device file # setup\n", 1491}, + {"not enough memory", 1492}, + {"No loop support was available at compile time. Please recompile.\n", 1493}, + {"[mntent]: warning: no final newline at the end of %s\n", 1494}, + {"[mntent]: line %d in %s is bad%s\n", 1495}, + {"; rest of file ignored", 1496}, + {"mount: according to mtab, %s is already mounted on %s", 1497}, + {"mount: according to mtab, %s is mounted on %s", 1498}, + {"mount: can't open %s for writing: %s", 1499}, + {"mount: error writing %s: %s", 1500}, + {"mount: error changing mode of %s: %s", 1501}, + {"%s looks like swapspace - not mounted", 1502}, + {"mount failed", 1503}, + {"mount: only root can mount %s on %s", 1504}, + {"mount: loop device specified twice", 1505}, + {"mount: type specified twice", 1506}, + {"mount: skipping the setup of a loop device\n", 1507}, + {"mount: going to use the loop device %s\n", 1508}, + {"mount: failed setting up loop device\n", 1509}, + {"mount: setup loop device successfully\n", 1510}, + {"mount: can't open %s: %s", 1511}, + {"mount: cannot open %s for setting speed", 1512}, + {"mount: cannot set speed: %s", 1513}, + {"mount: cannot fork: %s", 1514}, + {"mount: this version was compiled without support for the type `nfs'", 1515}, + {"mount: failed with nfs mount version 4, trying 3..\n", 1516}, + {"\ +mount: I could not determine the filesystem type, and none was specified", 1517}, + {"mount: you must specify the filesystem type", 1518}, + {"mount: mount failed", 1519}, + {"mount: mount point %s is not a directory", 1520}, + {"mount: permission denied", 1521}, + {"mount: must be superuser to use mount", 1522}, + {"mount: %s is busy", 1523}, + {"mount: proc already mounted", 1524}, + {"mount: %s already mounted or %s busy", 1525}, + {"mount: mount point %s does not exist", 1526}, + {"mount: mount point %s is a symbolic link to nowhere", 1527}, + {"mount: special device %s does not exist", 1528}, {"\ mount: special device %s does not exist\n\ - (a path prefix is not a directory)\n", 1525}, - {"mount: %s not mounted already, or bad option", 1526}, + (a path prefix is not a directory)\n", 1529}, + {"mount: %s not mounted already, or bad option", 1530}, {"\ mount: wrong fs type, bad option, bad superblock on %s,\n\ - or too many mounted file systems", 1527}, - {"mount table full", 1528}, - {"mount: %s: can't read superblock", 1529}, - {"mount: %s: unknown device", 1530}, - {"mount: fs type %s not supported by kernel", 1531}, - {"mount: probably you meant %s", 1532}, - {"mount: maybe you meant iso9660 ?", 1533}, - {"mount: %s has wrong device number or fs type %s not supported", 1534}, - {"mount: %s is not a block device, and stat fails?", 1535}, + or too many mounted file systems", 1531}, + {"mount table full", 1532}, + {"mount: %s: can't read superblock", 1533}, + {"mount: %s: unknown device", 1534}, + {"mount: fs type %s not supported by kernel", 1535}, + {"mount: probably you meant %s", 1536}, + {"mount: maybe you meant iso9660 ?", 1537}, + {"mount: %s has wrong device number or fs type %s not supported", 1538}, + {"mount: %s is not a block device, and stat fails?", 1539}, {"\ mount: the kernel does not recognize %s as a block device\n\ - (maybe `insmod driver'?)", 1536}, - {"mount: %s is not a block device (maybe try `-o loop'?)", 1537}, - {"mount: %s is not a block device", 1538}, - {"mount: %s is not a valid block device", 1539}, - {"block device ", 1540}, - {"mount: cannot mount %s%s read-only", 1541}, - {"mount: %s%s is write-protected but explicit `-w' flag given", 1542}, - {"mount: %s%s is write-protected, mounting read-only", 1543}, - {"mount: the label %s occurs on both %s and %s\n", 1544}, - {"mount: %s duplicate - not mounted", 1545}, - {"mount: going to mount %s by %s\n", 1546}, - {"UUID", 1547}, - {"label", 1548}, - {"mount: no such partition found", 1549}, - {"mount: no type was given - I'll assume nfs because of the colon\n", 1550}, - {"mount: no type was given - I'll assume smb because of the // prefix\n", 1551}, - {"mount: backgrounding \"%s\"\n", 1552}, - {"mount: giving up \"%s\"\n", 1553}, - {"mount: %s already mounted on %s\n", 1554}, + (maybe `insmod driver'?)", 1540}, + {"mount: %s is not a block device (maybe try `-o loop'?)", 1541}, + {"mount: %s is not a block device", 1542}, + {"mount: %s is not a valid block device", 1543}, + {"block device ", 1544}, + {"mount: cannot mount %s%s read-only", 1545}, + {"mount: %s%s is write-protected but explicit `-w' flag given", 1546}, + {"mount: %s%s is write-protected, mounting read-only", 1547}, + {"mount: the label %s occurs on both %s and %s\n", 1548}, + {"mount: %s duplicate - not mounted", 1549}, + {"mount: going to mount %s by %s\n", 1550}, + {"UUID", 1551}, + {"label", 1552}, + {"mount: no such partition found", 1553}, + {"mount: no type was given - I'll assume nfs because of the colon\n", 1554}, + {"mount: no type was given - I'll assume smbfs because of the // prefix\n", 1555}, + {"mount: backgrounding \"%s\"\n", 1556}, + {"mount: giving up \"%s\"\n", 1557}, + {"mount: %s already mounted on %s\n", 1558}, {"\ Usage: mount -V : print version\n\ mount -h : print this help\n\ @@ -2062,294 +2070,297 @@ or move a subtree:\n\ mount --move olddir newdir\n\ A device can be given by name, say /dev/hda1 or /dev/cdrom,\n\ or by label, using -L label or by uuid, using -U uuid .\n\ -Other options: [-nfFrsvw] [-o options].\n\ -For many more details, say man 8 mount .\n", 1555}, - {"mount: only root can do that", 1556}, - {"mount: no %s found - creating it..\n", 1557}, - {"mount: the label %s occurs on both %s and %s - not mounted\n", 1558}, - {"mount: mounting %s\n", 1559}, - {"nothing was mounted", 1560}, - {"mount: cannot find %s in %s", 1561}, - {"mount: can't find %s in %s or %s", 1562}, - {"\ -mount: could not open %s, so UUID and LABEL conversion cannot be done.\n", 1563}, - {"mount: bad UUID", 1564}, - {"mount: error while guessing filesystem type\n", 1565}, - {"mount: you didn't specify a filesystem type for %s\n", 1566}, - {" I will try all types mentioned in %s or %s\n", 1567}, - {" and it looks like this is swapspace\n", 1568}, - {" I will try type %s\n", 1569}, - {"Trying %s\n", 1570}, - {"mount: excessively long host:dir argument\n", 1571}, - {"mount: warning: multiple hostnames not supported\n", 1572}, - {"mount: directory to mount not in host:dir format\n", 1573}, - {"mount: can't get address for %s\n", 1574}, - {"mount: got bad hp->h_length\n", 1575}, - {"mount: excessively long option argument\n", 1576}, - {"Warning: Unrecognized proto= option.\n", 1577}, - {"Warning: Option namlen is not supported.\n", 1578}, - {"unknown nfs mount parameter: %s=%d\n", 1579}, - {"Warning: option nolock is not supported.\n", 1580}, - {"unknown nfs mount option: %s%s\n", 1581}, - {"mount: got bad hp->h_length?\n", 1582}, - {"NFS over TCP is not supported.\n", 1583}, - {"nfs socket", 1584}, - {"nfs bindresvport", 1585}, - {"nfs server reported service unavailable", 1586}, - {"used portmapper to find NFS port\n", 1587}, - {"using port %d for nfs deamon\n", 1588}, - {"nfs connect", 1589}, - {"unknown nfs status return value: %d", 1590}, - {"bug in xstrndup call", 1591}, +Other options: [-nfFrsvw] [-o options] [-p passwdfd].\n\ +For many more details, say man 8 mount .\n", 1559}, + {"mount: argument to -p or --pass-fd must be a number", 1560}, + {"mount: only root can do that", 1561}, + {"mount: no %s found - creating it..\n", 1562}, + {"mount: the label %s occurs on both %s and %s - not mounted\n", 1563}, + {"mount: mounting %s\n", 1564}, + {"nothing was mounted", 1565}, + {"mount: cannot find %s in %s", 1566}, + {"mount: can't find %s in %s or %s", 1567}, + {"\ +mount: could not open %s, so UUID and LABEL conversion cannot be done.\n", 1568}, + {"mount: bad UUID", 1569}, + {"mount: error while guessing filesystem type\n", 1570}, + {"mount: you didn't specify a filesystem type for %s\n", 1571}, + {" I will try all types mentioned in %s or %s\n", 1572}, + {" and it looks like this is swapspace\n", 1573}, + {" I will try type %s\n", 1574}, + {"Trying %s\n", 1575}, + {"mount: excessively long host:dir argument\n", 1576}, + {"mount: warning: multiple hostnames not supported\n", 1577}, + {"mount: directory to mount not in host:dir format\n", 1578}, + {"mount: can't get address for %s\n", 1579}, + {"mount: got bad hp->h_length\n", 1580}, + {"mount: excessively long option argument\n", 1581}, + {"Warning: Unrecognized proto= option.\n", 1582}, + {"Warning: Option namlen is not supported.\n", 1583}, + {"unknown nfs mount parameter: %s=%d\n", 1584}, + {"Warning: option nolock is not supported.\n", 1585}, + {"unknown nfs mount option: %s%s\n", 1586}, + {"mount: got bad hp->h_length?\n", 1587}, + {"NFS over TCP is not supported.\n", 1588}, + {"nfs socket", 1589}, + {"nfs bindresvport", 1590}, + {"nfs server reported service unavailable", 1591}, + {"used portmapper to find NFS port\n", 1592}, + {"using port %d for nfs deamon\n", 1593}, + {"nfs connect", 1594}, + {"unknown nfs status return value: %d", 1595}, + {"bug in xstrndup call", 1596}, {"\ usage: %s [-hV]\n\ %s -a [-e] [-v]\n\ %s [-v] [-p priority] special ...\n\ - %s [-s]\n", 1592}, + %s [-s]\n", 1597}, {"\ usage: %s [-hV]\n\ %s -a [-v]\n\ - %s [-v] special ...\n", 1593}, - {"%s on %s\n", 1594}, - {"swapon: cannot stat %s: %s\n", 1595}, - {"swapon: warning: %s has insecure permissions %04o, %04o suggested\n", 1596}, - {"swapon: Skipping file %s - it appears to have holes.\n", 1597}, - {"Not superuser.\n", 1598}, - {"%s: cannot open %s: %s\n", 1599}, - {"umount: compiled without support for -f\n", 1600}, - {"host: %s, directory: %s\n", 1601}, - {"umount: can't get address for %s\n", 1602}, - {"umount: got bad hostp->h_length\n", 1603}, - {"umount: %s: invalid block device", 1604}, - {"umount: %s: not mounted", 1605}, - {"umount: %s: can't write superblock", 1606}, - {"umount: %s: device is busy", 1607}, - {"umount: %s: not found", 1608}, - {"umount: %s: must be superuser to umount", 1609}, - {"umount: %s: block devices not permitted on fs", 1610}, - {"umount: %s: %s", 1611}, - {"no umount2, trying umount...\n", 1612}, - {"could not umount %s - trying %s instead\n", 1613}, - {"umount: %s busy - remounted read-only\n", 1614}, - {"umount: could not remount %s read-only\n", 1615}, - {"%s umounted\n", 1616}, - {"umount: cannot find list of filesystems to unmount", 1617}, + %s [-v] special ...\n", 1598}, + {"%s on %s\n", 1599}, + {"swapon: cannot stat %s: %s\n", 1600}, + {"swapon: warning: %s has insecure permissions %04o, %04o suggested\n", 1601}, + {"swapon: Skipping file %s - it appears to have holes.\n", 1602}, + {"Not superuser.\n", 1603}, + {"%s: cannot open %s: %s\n", 1604}, + {"umount: compiled without support for -f\n", 1605}, + {"host: %s, directory: %s\n", 1606}, + {"umount: can't get address for %s\n", 1607}, + {"umount: got bad hostp->h_length\n", 1608}, + {"umount: %s: invalid block device", 1609}, + {"umount: %s: not mounted", 1610}, + {"umount: %s: can't write superblock", 1611}, + {"umount: %s: device is busy", 1612}, + {"umount: %s: not found", 1613}, + {"umount: %s: must be superuser to umount", 1614}, + {"umount: %s: block devices not permitted on fs", 1615}, + {"umount: %s: %s", 1616}, + {"no umount2, trying umount...\n", 1617}, + {"could not umount %s - trying %s instead\n", 1618}, + {"umount: %s busy - remounted read-only\n", 1619}, + {"umount: could not remount %s read-only\n", 1620}, + {"%s umounted\n", 1621}, + {"umount: cannot find list of filesystems to unmount", 1622}, {"\ Usage: umount [-hV]\n\ umount -a [-f] [-r] [-n] [-v] [-t vfstypes] [-O opts]\n\ - umount [-f] [-r] [-n] [-v] special | node...\n", 1618}, - {"Trying to umount %s\n", 1619}, - {"Could not find %s in mtab\n", 1620}, - {"umount: %s is not mounted (according to mtab)", 1621}, - {"umount: it seems %s is mounted multiple times", 1622}, - {"umount: %s is not in the fstab (and you are not root)", 1623}, - {"umount: %s mount disagrees with the fstab", 1624}, - {"umount: only root can unmount %s from %s", 1625}, - {"umount: only root can do that", 1626}, - {"You must be root to set the Ctrl-Alt-Del behaviour.\n", 1627}, - {"Usage: ctrlaltdel hard|soft\n", 1628}, + umount [-f] [-r] [-n] [-v] special | node...\n", 1623}, + {"Trying to umount %s\n", 1624}, + {"Could not find %s in mtab\n", 1625}, + {"umount: %s is not mounted (according to mtab)", 1626}, + {"umount: it seems %s is mounted multiple times", 1627}, + {"umount: %s is not in the fstab (and you are not root)", 1628}, + {"umount: %s mount disagrees with the fstab", 1629}, + {"umount: only root can unmount %s from %s", 1630}, + {"umount: only root can do that", 1631}, + {"You must be root to set the Ctrl-Alt-Del behaviour.\n", 1632}, + {"Usage: ctrlaltdel hard|soft\n", 1633}, {"\ File %s, For threshold value %lu, Maximum characters in fifo were %d,\n\ -and the maximum transfer rate in characters/second was %f\n", 1629}, +and the maximum transfer rate in characters/second was %f\n", 1634}, {"\ File %s, For threshold value %lu and timrout value %lu, Maximum characters \ in fifo were %d,\n\ -and the maximum transfer rate in characters/second was %f\n", 1630}, - {"Invalid interval value: %s\n", 1631}, - {"Invalid set value: %s\n", 1632}, - {"Invalid default value: %s\n", 1633}, - {"Invalid set time value: %s\n", 1634}, - {"Invalid default time value: %s\n", 1635}, +and the maximum transfer rate in characters/second was %f\n", 1635}, + {"Invalid interval value: %s\n", 1636}, + {"Invalid set value: %s\n", 1637}, + {"Invalid default value: %s\n", 1638}, + {"Invalid set time value: %s\n", 1639}, + {"Invalid default time value: %s\n", 1640}, {"\ Usage: %s [-q [-i interval]] ([-s value]|[-S value]) ([-t value]|[-T value]) \ -[-g|-G] file [file...]\n", 1636}, - {"Can't open %s: %s\n", 1637}, - {"Can't set %s to threshold %d: %s\n", 1638}, - {"Can't set %s to time threshold %d: %s\n", 1639}, - {"Can't get threshold for %s: %s\n", 1640}, - {"Can't get timeout for %s: %s\n", 1641}, - {"%s: %ld current threshold and %ld current timeout\n", 1642}, - {"%s: %ld default threshold and %ld default timeout\n", 1643}, - {"Can't set signal handler", 1644}, - {"gettimeofday failed", 1645}, - {"Can't issue CYGETMON on %s: %s\n", 1646}, - {"\ -%s: %lu ints, %lu/%lu chars; fifo: %lu thresh, %lu tmout, %lu max, %lu now\n", 1647}, - {" %f int/sec; %f rec, %f send (char/sec)\n", 1648}, - {"\ -%s: %lu ints, %lu chars; fifo: %lu thresh, %lu tmout, %lu max, %lu now\n", 1649}, - {" %f int/sec; %f rec (char/sec)\n", 1650}, - {"Usage: %s [-c] [-n level] [-s bufsize]\n", 1651}, - {"invalid id: %s\n", 1652}, - {"cannot remove id %s (%s)\n", 1653}, - {"deprecated usage: %s {shm | msg | sem} id ...\n", 1654}, - {"unknown resource type: %s\n", 1655}, - {"resource(s) deleted\n", 1656}, +[-g|-G] file [file...]\n", 1641}, + {"Can't open %s: %s\n", 1642}, + {"Can't set %s to threshold %d: %s\n", 1643}, + {"Can't set %s to time threshold %d: %s\n", 1644}, + {"Can't get threshold for %s: %s\n", 1645}, + {"Can't get timeout for %s: %s\n", 1646}, + {"%s: %ld current threshold and %ld current timeout\n", 1647}, + {"%s: %ld default threshold and %ld default timeout\n", 1648}, + {"Can't set signal handler", 1649}, + {"gettimeofday failed", 1650}, + {"Can't issue CYGETMON on %s: %s\n", 1651}, + {"\ +%s: %lu ints, %lu/%lu chars; fifo: %lu thresh, %lu tmout, %lu max, %lu now\n", 1652}, + {" %f int/sec; %f rec, %f send (char/sec)\n", 1653}, + {"\ +%s: %lu ints, %lu chars; fifo: %lu thresh, %lu tmout, %lu max, %lu now\n", 1654}, + {" %f int/sec; %f rec (char/sec)\n", 1655}, + {"Usage: %s [-c] [-n level] [-s bufsize]\n", 1656}, + {"invalid id: %s\n", 1657}, + {"cannot remove id %s (%s)\n", 1658}, + {"deprecated usage: %s {shm | msg | sem} id ...\n", 1659}, + {"unknown resource type: %s\n", 1660}, + {"resource(s) deleted\n", 1661}, {"\ usage: %s [ [-q msqid] [-m shmid] [-s semid]\n\ - [-Q msgkey] [-M shmkey] [-S semkey] ... ]\n", 1657}, - {"%s: illegal option -- %c\n", 1658}, - {"%s: illegal key (%s)\n", 1659}, - {"permission denied for key", 1660}, - {"already removed key", 1661}, - {"invalid key", 1662}, - {"unknown error in key", 1663}, - {"permission denied for id", 1664}, - {"invalid id", 1665}, - {"already removed id", 1666}, - {"unknown error in id", 1667}, - {"%s: %s (%s)\n", 1668}, - {"%s: unknown argument: %s\n", 1669}, - {"usage : %s -asmq -tclup \n", 1670}, - {"\t%s [-s -m -q] -i id\n", 1671}, - {"\t%s -h for help.\n", 1672}, - {"\ -%s provides information on ipc facilities for which you have read access.\n", 1673}, + [-Q msgkey] [-M shmkey] [-S semkey] ... ]\n", 1662}, + {"%s: illegal option -- %c\n", 1663}, + {"%s: illegal key (%s)\n", 1664}, + {"permission denied for key", 1665}, + {"already removed key", 1666}, + {"invalid key", 1667}, + {"unknown error in key", 1668}, + {"permission denied for id", 1669}, + {"invalid id", 1670}, + {"already removed id", 1671}, + {"unknown error in id", 1672}, + {"%s: %s (%s)\n", 1673}, + {"%s: unknown argument: %s\n", 1674}, + {"usage : %s -asmq -tclup \n", 1675}, + {"\t%s [-s -m -q] -i id\n", 1676}, + {"\t%s -h for help.\n", 1677}, + {"\ +%s provides information on ipc facilities for which you have read access.\n", 1678}, {"\ Resource Specification:\n\ \t-m : shared_mem\n\ -\t-q : messages\n", 1674}, +\t-q : messages\n", 1679}, {"\ \t-s : semaphores\n\ -\t-a : all (default)\n", 1675}, +\t-a : all (default)\n", 1680}, {"\ Output Format:\n\ \t-t : time\n\ \t-p : pid\n\ -\t-c : creator\n", 1676}, +\t-c : creator\n", 1681}, {"\ \t-l : limits\n\ -\t-u : summary\n", 1677}, - {"-i id [-s -q -m] : details on resource identified by id\n", 1678}, - {"kernel not configured for shared memory\n", 1679}, - {"------ Shared Memory Limits --------\n", 1680}, - {"max number of segments = %ld\n", 1681}, - {"max seg size (kbytes) = %ld\n", 1682}, - {"max total shared memory (kbytes) = %ld\n", 1683}, - {"min seg size (bytes) = %ld\n", 1684}, - {"------ Shared Memory Status --------\n", 1685}, - {"segments allocated %d\n", 1686}, - {"pages allocated %ld\n", 1687}, - {"pages resident %ld\n", 1688}, - {"pages swapped %ld\n", 1689}, - {"Swap performance: %ld attempts\t %ld successes\n", 1690}, - {"------ Shared Memory Segment Creators/Owners --------\n", 1691}, - {"%-10s %-10s %-10s %-10s %-10s %-10s\n", 1692}, - {"shmid", 1693}, - {"perms", 1694}, - {"cuid", 1695}, - {"cgid", 1696}, - {"uid", 1697}, - {"gid", 1698}, - {"------ Shared Memory Attach/Detach/Change Times --------\n", 1699}, - {"%-10s %-10s %-20s %-20s %-20s\n", 1700}, - {"owner", 1701}, - {"attached", 1702}, - {"detached", 1703}, - {"changed", 1704}, - {"------ Shared Memory Creator/Last-op --------\n", 1705}, - {"%-10s %-10s %-10s %-10s\n", 1706}, - {"cpid", 1707}, - {"lpid", 1708}, - {"------ Shared Memory Segments --------\n", 1709}, - {"%-10s %-10s %-10s %-10s %-10s %-10s %-12s\n", 1710}, - {"key", 1711}, - {"bytes", 1712}, - {"nattch", 1713}, - {"status", 1714}, - {"Not set", 1715}, - {"dest", 1716}, - {"locked", 1717}, - {"kernel not configured for semaphores\n", 1718}, - {"------ Semaphore Limits --------\n", 1719}, - {"max number of arrays = %d\n", 1720}, - {"max semaphores per array = %d\n", 1721}, - {"max semaphores system wide = %d\n", 1722}, - {"max ops per semop call = %d\n", 1723}, - {"semaphore max value = %d\n", 1724}, - {"------ Semaphore Status --------\n", 1725}, - {"used arrays = %d\n", 1726}, - {"allocated semaphores = %d\n", 1727}, - {"------ Semaphore Arrays Creators/Owners --------\n", 1728}, - {"semid", 1729}, - {"------ Shared Memory Operation/Change Times --------\n", 1730}, - {"%-8s %-10s %-26.24s %-26.24s\n", 1731}, - {"last-op", 1732}, - {"last-changed", 1733}, - {"------ Semaphore Arrays --------\n", 1734}, - {"%-10s %-10s %-10s %-10s %-10s\n", 1735}, - {"nsems", 1736}, - {"kernel not configured for message queues\n", 1737}, - {"------ Messages: Limits --------\n", 1738}, - {"max queues system wide = %d\n", 1739}, - {"max size of message (bytes) = %d\n", 1740}, - {"default max size of queue (bytes) = %d\n", 1741}, - {"------ Messages: Status --------\n", 1742}, - {"allocated queues = %d\n", 1743}, - {"used headers = %d\n", 1744}, - {"used space = %d bytes\n", 1745}, - {"------ Message Queues: Creators/Owners --------\n", 1746}, - {"msqid", 1747}, - {"------ Message Queues Send/Recv/Change Times --------\n", 1748}, - {"%-8s %-10s %-20s %-20s %-20s\n", 1749}, - {"send", 1750}, - {"recv", 1751}, - {"change", 1752}, - {"------ Message Queues PIDs --------\n", 1753}, - {"lspid", 1754}, - {"lrpid", 1755}, - {"------ Message Queues --------\n", 1756}, - {"%-10s %-10s %-10s %-10s %-12s %-12s\n", 1757}, - {"used-bytes", 1758}, - {"messages", 1759}, +\t-u : summary\n", 1682}, + {"-i id [-s -q -m] : details on resource identified by id\n", 1683}, + {"kernel not configured for shared memory\n", 1684}, + {"------ Shared Memory Limits --------\n", 1685}, + {"max number of segments = %ld\n", 1686}, + {"max seg size (kbytes) = %ld\n", 1687}, + {"max total shared memory (kbytes) = %ld\n", 1688}, + {"min seg size (bytes) = %ld\n", 1689}, + {"------ Shared Memory Status --------\n", 1690}, + {"segments allocated %d\n", 1691}, + {"pages allocated %ld\n", 1692}, + {"pages resident %ld\n", 1693}, + {"pages swapped %ld\n", 1694}, + {"Swap performance: %ld attempts\t %ld successes\n", 1695}, + {"------ Shared Memory Segment Creators/Owners --------\n", 1696}, + {"%-10s %-10s %-10s %-10s %-10s %-10s\n", 1697}, + {"shmid", 1698}, + {"perms", 1699}, + {"cuid", 1700}, + {"cgid", 1701}, + {"uid", 1702}, + {"gid", 1703}, + {"------ Shared Memory Attach/Detach/Change Times --------\n", 1704}, + {"%-10s %-10s %-20s %-20s %-20s\n", 1705}, + {"owner", 1706}, + {"attached", 1707}, + {"detached", 1708}, + {"changed", 1709}, + {"------ Shared Memory Creator/Last-op --------\n", 1710}, + {"%-10s %-10s %-10s %-10s\n", 1711}, + {"cpid", 1712}, + {"lpid", 1713}, + {"------ Shared Memory Segments --------\n", 1714}, + {"%-10s %-10s %-10s %-10s %-10s %-10s %-12s\n", 1715}, + {"key", 1716}, + {"bytes", 1717}, + {"nattch", 1718}, + {"status", 1719}, + {"Not set", 1720}, + {"dest", 1721}, + {"locked", 1722}, + {"kernel not configured for semaphores\n", 1723}, + {"------ Semaphore Limits --------\n", 1724}, + {"max number of arrays = %d\n", 1725}, + {"max semaphores per array = %d\n", 1726}, + {"max semaphores system wide = %d\n", 1727}, + {"max ops per semop call = %d\n", 1728}, + {"semaphore max value = %d\n", 1729}, + {"------ Semaphore Status --------\n", 1730}, + {"used arrays = %d\n", 1731}, + {"allocated semaphores = %d\n", 1732}, + {"------ Semaphore Arrays Creators/Owners --------\n", 1733}, + {"semid", 1734}, + {"------ Shared Memory Operation/Change Times --------\n", 1735}, + {"%-8s %-10s %-26.24s %-26.24s\n", 1736}, + {"last-op", 1737}, + {"last-changed", 1738}, + {"------ Semaphore Arrays --------\n", 1739}, + {"%-10s %-10s %-10s %-10s %-10s\n", 1740}, + {"nsems", 1741}, + {"kernel not configured for message queues\n", 1742}, + {"------ Messages: Limits --------\n", 1743}, + {"max queues system wide = %d\n", 1744}, + {"max size of message (bytes) = %d\n", 1745}, + {"default max size of queue (bytes) = %d\n", 1746}, + {"------ Messages: Status --------\n", 1747}, + {"allocated queues = %d\n", 1748}, + {"used headers = %d\n", 1749}, + {"used space = %d bytes\n", 1750}, + {"------ Message Queues: Creators/Owners --------\n", 1751}, + {"msqid", 1752}, + {"------ Message Queues Send/Recv/Change Times --------\n", 1753}, + {"%-8s %-10s %-20s %-20s %-20s\n", 1754}, + {"send", 1755}, + {"recv", 1756}, + {"change", 1757}, + {"------ Message Queues PIDs --------\n", 1758}, + {"lspid", 1759}, + {"lrpid", 1760}, + {"------ Message Queues --------\n", 1761}, + {"%-10s %-10s %-10s %-10s %-12s %-12s\n", 1762}, + {"used-bytes", 1763}, + {"messages", 1764}, {"\ \n\ -Shared memory Segment shmid=%d\n", 1760}, - {"uid=%d\tgid=%d\tcuid=%d\tcgid=%d\n", 1761}, - {"mode=%#o\taccess_perms=%#o\n", 1762}, - {"bytes=%ld\tlpid=%d\tcpid=%d\tnattch=%ld\n", 1763}, - {"att_time=%-26.24s\n", 1764}, - {"det_time=%-26.24s\n", 1765}, - {"change_time=%-26.24s\n", 1766}, +Shared memory Segment shmid=%d\n", 1765}, + {"uid=%d\tgid=%d\tcuid=%d\tcgid=%d\n", 1766}, + {"mode=%#o\taccess_perms=%#o\n", 1767}, + {"bytes=%ld\tlpid=%d\tcpid=%d\tnattch=%ld\n", 1768}, + {"att_time=%-26.24s\n", 1769}, + {"det_time=%-26.24s\n", 1770}, + {"change_time=%-26.24s\n", 1771}, {"\ \n\ -Message Queue msqid=%d\n", 1767}, - {"uid=%d\tgid=%d\tcuid=%d\tcgid=%d\tmode=%#o\n", 1768}, - {"cbytes=%ld\tqbytes=%ld\tqnum=%ld\tlspid=%d\tlrpid=%d\n", 1769}, - {"send_time=%-26.24s\n", 1770}, - {"rcv_time=%-26.24s\n", 1771}, +Message Queue msqid=%d\n", 1772}, + {"uid=%d\tgid=%d\tcuid=%d\tcgid=%d\tmode=%#o\n", 1773}, + {"cbytes=%ld\tqbytes=%ld\tqnum=%ld\tlspid=%d\tlrpid=%d\n", 1774}, + {"send_time=%-26.24s\n", 1775}, + {"rcv_time=%-26.24s\n", 1776}, {"\ \n\ -Semaphore Array semid=%d\n", 1772}, - {"uid=%d\t gid=%d\t cuid=%d\t cgid=%d\n", 1773}, - {"mode=%#o, access_perms=%#o\n", 1774}, - {"nsems = %ld\n", 1775}, - {"otime = %-26.24s\n", 1776}, - {"ctime = %-26.24s\n", 1777}, - {"semnum", 1778}, - {"value", 1779}, - {"ncount", 1780}, - {"zcount", 1781}, - {"pid", 1782}, - {"usage: rdev [ -rv ] [ -o OFFSET ] [ IMAGE [ VALUE [ OFFSET ] ] ]", 1783}, - {"\ - rdev /dev/fd0 (or rdev /linux, etc.) displays the current ROOT device", 1784}, - {" rdev /dev/fd0 /dev/hda2 sets ROOT to /dev/hda2", 1785}, - {" rdev -R /dev/fd0 1 set the ROOTFLAGS (readonly status)", 1786}, - {" rdev -r /dev/fd0 627 set the RAMDISK size", 1787}, - {" rdev -v /dev/fd0 1 set the bootup VIDEOMODE", 1788}, - {" rdev -o N ... use the byte offset N", 1789}, - {" rootflags ... same as rdev -R", 1790}, - {" ramsize ... same as rdev -r", 1791}, - {" vidmode ... same as rdev -v", 1792}, - {"\ -Note: video modes are: -3=Ask, -2=Extended, -1=NormalVga, 1=key1, 2=key2,...", 1793}, - {" use -R 1 to mount root readonly, -R 0 for read/write.", 1794}, - {"missing comma", 1795}, +Semaphore Array semid=%d\n", 1777}, + {"uid=%d\t gid=%d\t cuid=%d\t cgid=%d\n", 1778}, + {"mode=%#o, access_perms=%#o\n", 1779}, + {"nsems = %ld\n", 1780}, + {"otime = %-26.24s\n", 1781}, + {"ctime = %-26.24s\n", 1782}, + {"semnum", 1783}, + {"value", 1784}, + {"ncount", 1785}, + {"zcount", 1786}, + {"pid", 1787}, + {"usage: rdev [ -rv ] [ -o OFFSET ] [ IMAGE [ VALUE [ OFFSET ] ] ]", 1788}, + {"\ + rdev /dev/fd0 (or rdev /linux, etc.) displays the current ROOT device", 1789}, + {" rdev /dev/fd0 /dev/hda2 sets ROOT to /dev/hda2", 1790}, + {" rdev -R /dev/fd0 1 set the ROOTFLAGS (readonly status)", 1791}, + {" rdev -r /dev/fd0 627 set the RAMDISK size", 1792}, + {" rdev -v /dev/fd0 1 set the bootup VIDEOMODE", 1793}, + {" rdev -o N ... use the byte offset N", 1794}, + {" rootflags ... same as rdev -R", 1795}, + {" ramsize ... same as rdev -r", 1796}, + {" vidmode ... same as rdev -v", 1797}, + {"\ +Note: video modes are: -3=Ask, -2=Extended, -1=NormalVga, 1=key1, 2=key2,...", 1798}, + {" use -R 1 to mount root readonly, -R 0 for read/write.", 1799}, + {"missing comma", 1800}, + {"out of memory", 1801}, {"\ %s: Usage: \"%s [options]\n\ -\t -m (default = \"%s\")\n\ -\t -p (default = \"%s\")\n\ +\t -m (defaults: \"%s\" and\n\ +\t\t\t\t \"%s\")\n\ +\t -p (default: \"%s\")\n\ \t -M set the profiling multiplier to \n\ \t -i print only info about the sampling step\n\ \t -v print verbose data\n\ @@ -2357,153 +2368,152 @@ Note: video modes are: -3=Ask, -2=Extended, -1=NormalVga, 1=key1, 2=key2,...", 1 \t -b print individual histogram-bin counts\n\ \t -r reset all the counters (root only)\n\ \t -n disable byte order auto-detection\n\ -\t -V print version and exit\n", 1796}, - {"out of memory", 1797}, - {"%s Version %s\n", 1798}, - {"Sampling_step: %i\n", 1799}, - {"%s: %s(%i): wrong map line\n", 1800}, - {"%s: can't find \"_stext\" in %s\n", 1801}, - {"%s: profile address out of range. Wrong map file?\n", 1802}, - {"total", 1803}, - {"\ -usage: renice priority [ [ -p ] pids ] [ [ -g ] pgrps ] [ [ -u ] users ]\n", 1804}, - {"renice: %s: unknown user\n", 1805}, - {"renice: %s: bad value\n", 1806}, - {"getpriority", 1807}, - {"setpriority", 1808}, - {"%d: old priority %d, new priority %d\n", 1809}, - {"usage: %s program [arg ...]\n", 1810}, +\t -V print version and exit\n", 1802}, + {"%s version %s\n", 1803}, + {"Sampling_step: %i\n", 1804}, + {"%s: %s(%i): wrong map line\n", 1805}, + {"%s: can't find \"_stext\" in %s\n", 1806}, + {"%s: profile address out of range. Wrong map file?\n", 1807}, + {"total", 1808}, + {"\ +usage: renice priority [ [ -p ] pids ] [ [ -g ] pgrps ] [ [ -u ] users ]\n", 1809}, + {"renice: %s: unknown user\n", 1810}, + {"renice: %s: bad value\n", 1811}, + {"getpriority", 1812}, + {"setpriority", 1813}, + {"%d: old priority %d, new priority %d\n", 1814}, + {"usage: %s program [arg ...]\n", 1815}, {"\ Usage: %s [ -i | -t