diff options
author | Karel Zak <kzak@redhat.com> | 2006-12-07 00:25:46 +0100 |
---|---|---|
committer | Karel Zak <kzak@redhat.com> | 2006-12-07 00:25:46 +0100 |
commit | c07ebfa1e02d208ab12430e6791ea147bcfaf9c0 (patch) | |
tree | d44a755098286f5d553c7aea1a73d98c2995d6ec | |
parent | 66ee8158b69525e12060ef558cb5d77feadab1dc (diff) | |
download | util-linux-old-c07ebfa1e02d208ab12430e6791ea147bcfaf9c0.tar.gz |
Imported from util-linux-2.11b tarball.
131 files changed, 5025 insertions, 5584 deletions
@@ -1,3 +1,39 @@ +util-linux 2.11b: + +* Danish messages (Claus Hindsgaul) +* umount: mips does not support umount2 (Christoph Martin) +* fdisk: tiny fix +* mount.8: adfs options documented, xfs corrected + +util-linux 2.11a: + +* tsort: deleted - it is part of GNU textutils 2.0 +* mount: fix rootdev() (Richard Kettlewell) +* mount: fix gid of mtab file +* mount: try /proc/filesystems after /etc/filesystems if the latter ends in "*" +* fdisk: added a few system types + +util-linux 2.11: + +* Jump to 2.11 to note that libc-4.5.26 is no longer supported, + and we require libc-4.6.27 (since now snprintf is used). + Also, kbdrate has now been removed. Find it in kbd-1.05. + Added -D_FILE_OFFSET_BITS=64 to CFLAGS. +* Danish messages (Claus Hindsgaul) +* fdisk: avoid loop in case of extended without logical +* ipcs: corrected interchanged report on msg_rtime/msg_stime (Arun Kumar U) +* kill: updated manpage +* last: very much faster with mmap (Marek Zelem) +* login: Applied PAM patch by David MacKenzie <djm@web.us.uu.net> +* login: do a setsid in the child (Erik Troan) +* mount: make "mount 192.168.1.8:/ /a -o bg" work again (Bjoern Voigt) +* mount: added constant MS_MOVE +* readprofile: added -M option, updated manpage (Andrew Morton) +* setsid: fork when it would fail otherwise (John Fremlin) +* simpleinit: updated (Richard Gooch et al.) +* vipw: also offer to edit shadow file (Erik Troan) +* xfs docs (Nathan Scott) + util-linux 2.10s: * Danish messages (Claus Hindsgaul) @@ -275,7 +311,7 @@ util-linux 2.9n: util-linux 2.9m: -* Added national language support (misiek@misiek.eu.org) +* Added national language support (misiek@pld.ORG.PL) * minor improvements in mount, fdisk, cfdisk, agetty, more util-linux 2.9l: @@ -65,6 +65,13 @@ Warnings like <asm/mman.h>:30: warning: this is the location of the previous definition are caused by the libc/kernel combination. +Warnings like + setterm.c:805: warning: passing arg 1 of `tigetstr' discards qualifiers + from pointer target type + login.c:979: warning: passing arg 1 of `putenv' discards qualifiers + from pointer target type +are caused by bad ncurses or glibc header files. + All such warnings are harmless. There should be no compilation errors. @@ -80,10 +80,6 @@ HAVE_RESET=yes # sln also comes with libc and glibc. HAVE_SLN=no -# If HAVE_TSORT is set to "yes", then tsort won't be installed. -# GNU textutils 2.0 includes tsort. -HAVE_TSORT=no - # If HAVE_FDUTILS is set to "yes", then setfdprm won't be installed. HAVE_FDUTILS=no @@ -168,6 +164,7 @@ INSTALLSUID= $(INSTALL) -m $(SUIDMODE) -o root CFLAGS := $(CFLAGS) $(OPT) -I$(LIB) $(WARNFLAGS) \ $(CURSESFLAGS) $(SLANGFLAGS) \ + -D_FILE_OFFSET_BITS=64 \ -DSBINDIR=\"$(SBINDIR)\" \ -DUSRSBINDIR=\"$(USRSBINDIR)\" \ -DLOGDIR=\"$(LOGDIR)\" \ @@ -19,8 +19,7 @@ SUBDIRS=po \ fdisk \ hwclock \ sys-utils \ - text-utils \ - kbd + text-utils .PHONEY: all install clean now all: defines.h @@ -1 +1 @@ -2.10s +2.11b @@ -9,7 +9,7 @@ # H3. For kbd_rate.c: does <linux/kd.h> exist? # H4. For nls.h: do we have <locale.h>? # H5. For cal.c: do we have <langinfo.h>? -# H6. For mkswap.c: do we have <asm/page.h>? +# H6. For mkswap.c: do we have <sys/user.h> or <asm/page.h>? # H7. For nfsmount.h (nfsmount_xdr.c: int32_t): do we have <asm/types.h>? # # Existence of functions: @@ -18,6 +18,7 @@ # F3. For agetty.c: is getdomainname() available? # F4. For hwclock/kd.c: do we have nanosleep()? # F5. For mkswap.c: do we have personality()? +# F6. For agetty.c: is updwtmp() available? # # 1. For sys-utils/cytune.c: do we need <linux/tqueue.h>? # 2. For cfdisk, setterm, more, ul: do we have ncurses? How installed? @@ -114,11 +115,13 @@ if ./testincl "langinfo.h"; then fi # -# H6. For mkswap.c: do we have <asm/page.h>? +# H6. For mkswap.c: do we have <sys/user.h> or <asm/page.h>? # -if ./testincl "asm/page.h"; then +if ./testincl "sys/user.h"; then + echo "#define HAVE_sys_user_h" >> defines.h +else if ./testincl "asm/page.h"; then echo "#define HAVE_asm_page_h" >> defines.h -fi +fi fi # # H7. For nfsmount.h: do we have <asm/types.h>? @@ -234,6 +237,29 @@ else fi rm -f conftest conftest.c +# +# F6. For agetty.c: is updwtmp() available? +# +echo ' +#include <string.h> +#include <utmp.h> +main(int a, char **v){ + struct utmp ut; + memset (&ut, 0, sizeof(ut)); + if (a == -1) /* false */ + updwtmp("/nowhere/wtmp", &ut); + exit(0); +} +' > conftest.c +eval $compile +if test -s conftest && ./conftest 2>/dev/null; then + echo "#define HAVE_updwtmp" >> defines.h + echo "You have updwtmp()" +else + echo "You don't have updwtmp()" +fi +rm -f conftest conftest.c + # # 1. cytune.c may need struct tq_struct diff --git a/disk-utils/fdformat.c b/disk-utils/fdformat.c index b4aec007..cfbb455c 100644 --- a/disk-utils/fdformat.c +++ b/disk-utils/fdformat.c @@ -1,6 +1,6 @@ /* fdformat.c - Low-level formats a floppy disk - Werner Almesberger */ -/* 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> +/* 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support * 1999-03-20 Arnaldo Carvalho de Melo <acme@conectiva.com.br> & - more i18n/nls translatable strings marked diff --git a/disk-utils/fsck.minix.c b/disk-utils/fsck.minix.c index 1f040eb5..e36594aa 100644 --- a/disk-utils/fsck.minix.c +++ b/disk-utils/fsck.minix.c @@ -62,7 +62,7 @@ * 06.11.96 - Added v2 code submitted by Joerg Dorchain, but written by * Andreas Schwab. * - * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support * * @@ -211,10 +211,10 @@ die(const char *str) { */ static void print_current_name(void) { - int i=0; + int i = 0; - while (i<name_depth) - printf("/%.*s",namelen,name_list[i++]); + while (i < name_depth) + printf("/%.*s", namelen, name_list[i++]); if (i == 0) printf ("/"); } @@ -978,7 +978,7 @@ check_file(struct minix_inode * dir, unsigned int offset) { if (!inode) return; if (name_depth < MAX_DEPTH) - strncpy(name_list[name_depth],name,namelen); + strncpy(name_list[name_depth], name, namelen); name_depth++; if (list) { if (verbose) diff --git a/disk-utils/mkfs.8 b/disk-utils/mkfs.8 index 260b4e09..da69772c 100644 --- a/disk-utils/mkfs.8 +++ b/disk-utils/mkfs.8 @@ -116,4 +116,5 @@ for the ext2 file system. .BR mkfs.ext2 (8), .BR mkfs.minix (8), .BR mkfs.msdos (8), +.BR mkfs.xfs (8), .BR mkfs.xiafs (8) diff --git a/disk-utils/mkfs.c b/disk-utils/mkfs.c index 5ca2704c..51b18f30 100644 --- a/disk-utils/mkfs.c +++ b/disk-utils/mkfs.c @@ -10,7 +10,7 @@ * * Mon Jul 1 18:52:58 1996: janl@math.uio.no (Nicolai Langfeldt): * Incorporated fix by Jonathan Kamens <jik@annex-1-slip-jik.cam.ov.com> - * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support * */ @@ -92,7 +92,7 @@ int main(int argc, char *argv[]) } sprintf(newpath, "%s:%s\n", SEARCH_PATH, oldpath); putenv(newpath); - sprintf(progname, PROGNAME, fstype); + snprintf(progname, sizeof(progname), PROGNAME, fstype); argv[--optind] = progname; if (verbose) { diff --git a/disk-utils/mkswap.c b/disk-utils/mkswap.c index 6bd96d90..ea2ec20d 100644 --- a/disk-utils/mkswap.c +++ b/disk-utils/mkswap.c @@ -26,7 +26,7 @@ * V1_MAX_PAGES fixes, jj, 990325. * sparc64 fixes, jj, 000219. * - * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support * */ @@ -41,12 +41,16 @@ #include <sys/stat.h> #include "nls.h" +/* Try to get PAGE_SIZE from libc or kernel includes */ +#ifdef HAVE_sys_user_h + /* Note: <sys/user.h> says: for gdb only */ +#include <sys/user.h> /* for PAGE_SIZE and PAGE_SHIFT */ +#else #ifdef HAVE_asm_page_h #include <asm/page.h> /* for PAGE_SIZE and PAGE_SHIFT */ /* we also get PAGE_SIZE via getpagesize() */ -/* recent glibc systems also define this in <sys/user.h> */ #endif - +#endif #ifndef _IO /* pre-1.3.45 */ diff --git a/disk-utils/setfdprm.c b/disk-utils/setfdprm.c index 958f98c1..aee8a4d1 100644 --- a/disk-utils/setfdprm.c +++ b/disk-utils/setfdprm.c @@ -1,7 +1,7 @@ /* setfdprm.c - Sets user-provided floppy disk parameters, re-activates autodetection and switches diagnostic messages. */ -/* 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> +/* 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support */ diff --git a/fdisk/Makefile b/fdisk/Makefile index 3a851fa0..ad774c88 100644 --- a/fdisk/Makefile +++ b/fdisk/Makefile @@ -43,7 +43,7 @@ else endif endif -cfdisk: cfdisk.o llseek.o i386_sys_types.o +cfdisk: cfdisk.o llseek.o i386_sys_types.o $(LIB)/xstrncpy.o ifeq "$(HAVE_SLANG)" "yes" $(CC) $(LDFLAGS) $^ -o $@ $(LIBSLANG) else diff --git a/fdisk/cfdisk.c b/fdisk/cfdisk.c index 055046d7..8b5643e6 100644 --- a/fdisk/cfdisk.c +++ b/fdisk/cfdisk.c @@ -76,6 +76,7 @@ #include <linux/hdreg.h> #include "nls.h" +#include "xstrncpy.h" #include "common.h" #if defined(__GNUC__) || defined(HAS_LONG_LONG) @@ -516,23 +517,26 @@ print_warning(char *s) { static void fatal(char *s, int ret) { - char *err = _("FATAL ERROR"); + char *err1 = _("FATAL ERROR"); + char *err2 = _("Press any key to exit cfdisk"); if (curses_started) { - char *str = xmalloc(strlen(s) + strlen(err) + 10); - /* snprintf does not compile on all libc's */ - sprintf(str, "%s: %s", err, s); + char *str = xmalloc(strlen(s) + strlen(err1) + strlen(err2) + 10); + + sprintf(str, "%s: %s", err1, s); if (strlen(str) > COLS) - str[COLS] = 0; + str[COLS] = 0; mvaddstr(WARNING_START, (COLS-strlen(str))/2, str); - sprintf(str, _("Press any key to exit cfdisk")); + sprintf(str, "%s", err2); + if (strlen(str) > COLS) + str[COLS] = 0; mvaddstr(WARNING_START+1, (COLS-strlen(str))/2, str); putchar(BELL); /* CTRL-G */ refresh(); (void)getch(); die_x(ret); } else { - fprintf(stderr, "%s: %s\n", err, s); + fprintf(stderr, "%s: %s\n", err1, s); exit(ret); } } @@ -1034,17 +1038,15 @@ menuUpdate( int y, int x, struct MenuItem *menuItems, int itemLength, /* Print available buttons */ move( y, x ); clrtoeol(); - for( i = 0; menuItems[i].key; i++ ) - { + for( i = 0; menuItems[i].key; i++ ) { char buff[20]; int lenName; const char *mi; /* Search next available button */ while( menuItems[i].key && !strchr(available, menuItems[i].key) ) - { i++; - } + if( !menuItems[i].key ) break; /* No more menu items */ /* If selected item is not available and we have bypassed it, @@ -1066,15 +1068,13 @@ menuUpdate( int y, int x, struct MenuItem *menuItems, int itemLength, print_warning(_("Menu item too long. Menu may look odd.")); #endif if (lenName >= sizeof(buff)) { /* truncate ridiculously long string */ - strncpy( buff, mi, sizeof(buff)-1); - buff[sizeof(buff)-1] = 0; - } else - if( menuType & MENU_BUTTON ) - sprintf( buff, "[%*s%-*s]", (itemLength - lenName) / 2, "", - (itemLength - lenName + 1) / 2 + lenName, mi ); - else - sprintf( buff, "%*s%-*s", (itemLength - lenName) / 2, "", - (itemLength - lenName + 1) / 2 + lenName, mi ); + xstrncpy( buff, mi, sizeof(buff)); + } else { + snprintf(buff, sizeof(buff), + (menuType & MENU_BUTTON) ? "[%*s%-*s]" : "%*s%-*s", + (itemLength - lenName) / 2, "", + (itemLength - lenName + 1) / 2 + lenName, mi); + } mvaddstr( y, x, buff ); /* Lowlight after selected item */ @@ -1339,7 +1339,7 @@ new_part(int i) { else print_warning(_("!!! Internal error !!!")); - sprintf(def, "%.2f", num_sects/sectors_per_MB); + snprintf(def, sizeof(def), "%.2f", num_sects/sectors_per_MB); mvaddstr(COMMAND_LINE_Y, COMMAND_LINE_X, _("Size (in MB): ")); if ((len = get_string(response, LINE_LENGTH, def)) <= 0 && len != GS_DEFAULT) @@ -1548,7 +1548,6 @@ fill_p_info(void) { add_part(i, p->sys_ind, p->boot_ind, ((bs <= sectors) ? 0 : bs), bs + bsz - 1, ((bs <= sectors) ? bs : 0), 1, &errmsg)) { - /* avoid snprintf - it does not exist on ancient systems */ char *bad = _("Bad primary partition"); char *msg = (char *) xmalloc(strlen(bad) + strlen(errmsg) + 30); sprintf(msg, "%s %d: %s", bad, i, errmsg); @@ -1579,7 +1578,6 @@ fill_p_info(void) { logical_sectors[logical-1], logical_sectors[logical-1] + bs + bsz - 1, bs, 1, &errmsg)) { - /* avoid snprintf */ char *bad = _("Bad logical partition"); char *msg = (char *) xmalloc(strlen(bad) + strlen(errmsg) + 30); sprintf(msg, "%s %d: %s", bad, i-1, errmsg); @@ -1751,8 +1749,10 @@ write_part_table(void) { for (i = 0; i < num_parts; i++) if (IS_PRIMARY(i) && p_info[i].flags == ACTIVE_FLAG) ct++; - if (ct != 1) - print_warning(_("Not precisely one primary partition is bootable. DOS MBR cannot boot this.")); + if (ct == 0) + print_warning(_("No primary partitions are marked bootable. DOS MBR cannot boot this.")); + if (ct > 1) + print_warning(_("More than one primary partition is marked bootable. DOS MBR cannot boot this.")); } static void @@ -1762,7 +1762,7 @@ fp_printf(FILE *fp, char *format, ...) { int y, x; va_start(args, format); - vsprintf(buf, format, args); + vsnprintf(buf, sizeof(buf), format, args); va_end(args); if (fp == NULL) { @@ -1818,7 +1818,8 @@ print_raw_table(void) { if (to_file) { if ((fp = fopen(fname, "w")) == NULL) { char errstr[LINE_LENGTH]; - sprintf(errstr, _("Cannot open file '%s'"), fname); + snprintf(errstr, sizeof(errstr), + _("Cannot open file '%s'"), fname); print_warning(errstr); return; } diff --git a/fdisk/fdisk.c b/fdisk/fdisk.c index 969bf879..a439f327 100644 --- a/fdisk/fdisk.c +++ b/fdisk/fdisk.c @@ -66,7 +66,7 @@ static void delete_partition(int i); }) -#define LINE_LENGTH 80 +#define LINE_LENGTH 800 #define pt_offset(b, n) ((struct partition *)((b) + 0x1be + \ (n) * sizeof(struct partition))) #define sector(s) ((s) & 0x3f) @@ -222,25 +222,31 @@ void fatal(enum failure why) { " ...\n"); break; case unable_to_open: - sprintf(error, _("Unable to open %s\n"), disk_device); + snprintf(error, sizeof(error), + _("Unable to open %s\n"), disk_device); break; case unable_to_read: - sprintf(error, _("Unable to read %s\n"), disk_device); + snprintf(error, sizeof(error), + _("Unable to read %s\n"), disk_device); break; case unable_to_seek: - sprintf(error, _("Unable to seek on %s\n"),disk_device); + snprintf(error, sizeof(error), + _("Unable to seek on %s\n"),disk_device); break; case unable_to_write: - sprintf(error, _("Unable to write %s\n"), disk_device); + snprintf(error, sizeof(error), + _("Unable to write %s\n"), disk_device); break; case ioctl_error: - sprintf(error, _("BLKGETSIZE ioctl failed on %s\n"), + snprintf(error, sizeof(error), + _("BLKGETSIZE ioctl failed on %s\n"), disk_device); break; case out_of_memory: message = _("Unable to allocate any more memory\n"); break; - default: message = _("Fatal error\n"); + default: + message = _("Fatal error\n"); } fputc('\n', stderr); @@ -282,7 +288,7 @@ read_pte(int fd, int pno, uint offset) { pe->changed = 0; pe->part_table = pe->ext_pointer = NULL; } - + static unsigned int get_partition_start(struct pte *pe) { return pe->offset + get_start_sect(pe->part_table); @@ -623,17 +629,18 @@ read_extended(int ext) { for (i = 0; i < 4; i++, p++) if (get_nr_sects(p)) { if (IS_EXTENDED (p->sys_ind)) { if (pe->ext_pointer) - fprintf(stderr, _("Warning: extra link" - " pointer in partition table " - "%d\n"), partitions + 1); + fprintf(stderr, + _("Warning: extra link " + "pointer in partition table" + " %d\n"), partitions + 1); else pe->ext_pointer = p; } else if (p->sys_ind) { if (pe->part_table) fprintf(stderr, - _("Warning: ignoring extra data " - "in partition table %d\n"), - partitions + 1); + _("Warning: ignoring extra " + "data in partition table" + " %d\n"), partitions + 1); else pe->part_table = p; } @@ -662,7 +669,8 @@ read_extended(int ext) { for (i = 4; i < partitions; i++) { struct pte *pe = &ptes[i]; - if (!get_nr_sects(pe->part_table)) { + if (!get_nr_sects(pe->part_table) && + (partitions > 5 || ptes[4].part_table->sys_ind)) { printf("omitting empty partition (%d)\n", i+1); delete_partition(i); goto remove; /* numbering changed */ @@ -682,10 +690,10 @@ create_doslabel(void) { sun_nolabel(); /* otherwise always recognised as sun */ sgi_nolabel(); /* otherwise always recognised as sgi */ + for (i = 510-64; i < 510; i++) + MBRbuffer[i] = 0; write_part_table_flag(MBRbuffer); - for (i = 0; i < 4; i++) - if (ptes[i].part_table) - clear_partition(ptes[i].part_table); + extended_offset = 0; set_all_unchanged(); set_changed(0); get_boot(create_empty); @@ -969,8 +977,8 @@ read_int(uint low, uint dflt, uint high, uint base, char *mesg) static char *ms = NULL; static int mslen = 0; - if (!ms || strlen(mesg)+50 > mslen) { - mslen = strlen(mesg)+100; + if (!ms || strlen(mesg)+100 > mslen) { + mslen = strlen(mesg)+200; if (!(ms = realloc(ms,mslen))) fatal(out_of_memory); } @@ -979,9 +987,11 @@ read_int(uint low, uint dflt, uint high, uint base, char *mesg) default_ok = 0; if (default_ok) - sprintf(ms, _("%s (%d-%d, default %d): "), mesg, low, high, dflt); + snprintf(ms, mslen, _("%s (%d-%d, default %d): "), + mesg, low, high, dflt); else - sprintf(ms, "%s (%d-%d): ", mesg, low, high); + snprintf(ms, mslen, "%s (%d-%d): ", + mesg, low, high); while (1) { int use_default = default_ok; @@ -1137,12 +1147,15 @@ delete_partition(int i) { } if (!q->sys_ind && i > 4) { + /* the last one in the chain - just delete */ --partitions; --i; clear_partition(ptes[i].ext_pointer); ptes[i].changed = 1; } else { + /* not the last one - further ones will be moved down */ if (i > 4) { + /* delete this link in the chain */ p = ptes[i-1].ext_pointer; p->boot_ind = 0; p->head = q->head; @@ -1156,6 +1169,7 @@ delete_partition(int i) { set_nr_sects(p, get_nr_sects(q)); ptes[i-1].changed = 1; } else if (partitions > 5) { /* 5 will be moved to 4 */ + /* the first logical in a longer chain */ struct pte *pe = &ptes[5]; if(pe->part_table) /* prevent SEGFAULT */ @@ -1173,6 +1187,7 @@ delete_partition(int i) { i++; } } else + /* the only logical: clear only */ clear_partition(ptes[i].part_table); } } @@ -1185,12 +1200,12 @@ change_sysid(void) { origsys = sys = get_sysid(i); - if (!sys && !sgi_label) + if (!sys && !sgi_label && !sun_label) printf(_("Partition %d does not exist yet!\n"), i + 1); else while (1) { sys = read_hex (get_sys_types()); - if (!sys && !sgi_label) { + if (!sys && !sgi_label && !sun_label) { printf(_("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" @@ -1460,7 +1475,7 @@ list_table(int xtra) { check_consistency(p, i); } } - + /* Is partition table in disk order? It need not be, but... */ /* partition table entries are not checked for correct order if this is a sgi, sun or aix labeled disk... */ @@ -1543,7 +1558,7 @@ verify(void) { int i, j; uint total = 1; uint first[partitions], last[partitions]; - struct partition *p = part_table[0]; + struct partition *p; if (warn_geometry()) return; @@ -1642,7 +1657,7 @@ add_partition(int n, int sys) { for (i = 0; i < partitions; i++) first[i] = (cround(first[i]) - 1) * units_per_sector; - sprintf(mesg, _("First %s"), str_units(SINGULAR)); + snprintf(mesg, sizeof(mesg), _("First %s"), str_units(SINGULAR)); do { temp = start; for (i = 0; i < partitions; i++) { @@ -1701,8 +1716,9 @@ add_partition(int n, int sys) { if (cround(start) == cround(limit)) { stop = limit; } else { - sprintf(mesg, _("Last %s or +size or +sizeM or +sizeK"), - str_units(SINGULAR)); + snprintf(mesg, sizeof(mesg), + _("Last %s or +size or +sizeM or +sizeK"), + str_units(SINGULAR)); stop = read_int(cround(start), cround(limit), cround(limit), cround(start), mesg); if (display_in_cyl_units) { @@ -1785,16 +1801,17 @@ new_partition(void) { add_logical(); else printf(_("You must delete some partition and add " - "an extended partition first\n")); + "an extended partition first\n")); } else { char c, line[LINE_LENGTH]; - sprintf(line, _("Command action\n %s\n p primary " - "partition (1-4)\n"), extended_offset ? - _("l logical (5 or over)") : _("e extended")); - while (1) + snprintf(line, sizeof(line), + _("Command action\n %s\n p primary " + "partition (1-4)\n"), extended_offset ? + _("l logical (5 or over)") : _("e extended")); + while (1) { if ((c = tolower(read_char(line))) == 'p') { add_partition(get_partition(0, 4), - LINUX_NATIVE); + LINUX_NATIVE); return; } else if (c == 'l' && extended_offset) { @@ -1803,13 +1820,13 @@ new_partition(void) { } else if (c == 'e' && !extended_offset) { add_partition(get_partition(0, 4), - EXTENDED); + EXTENDED); return; } else printf(_("Invalid partition number " - "for type `%c'\n"), c); - + "for type `%c'\n"), c); + } } } @@ -2052,7 +2069,7 @@ is_ide_cdrom(char *device) { if (strncmp("/dev/hd", device, 7)) return 0; - sprintf(buf, "/proc/ide/%s/media", device+5); + snprintf(buf, sizeof(buf), "/proc/ide/%s/media", device+5); procf = fopen(buf, "r"); if (procf != NULL && fgets(buf, sizeof(buf), procf)) return !strncmp(buf, "cdrom", 5); @@ -2068,34 +2085,34 @@ is_ide_cdrom(char *device) { static void try(char *device, int user_specified) { disk_device = device; - if (!setjmp(listingbuf)) { - if (!user_specified) - if (is_ide_cdrom(device)) + if (setjmp(listingbuf)) + return; + if (!user_specified) + if (is_ide_cdrom(device)) + return; + if ((fd = open(disk_device, type_open)) >= 0) { + if (get_boot(try_only) < 0) { + list_disk_geometry(); + if (aix_label) return; - if ((fd = open(disk_device, type_open)) >= 0) { - if (get_boot(try_only) < 0) { - list_disk_geometry(); - if (aix_label) - return; - if (btrydev(device) < 0) - fprintf(stderr, - _("Disk %s doesn't contain a valid " - "partition table\n"), device); - close(fd); - } else { - close(fd); - list_table(0); - if (!sun_label && partitions > 4) - delete_partition(ext_index); - } + if (btrydev(device) < 0) + fprintf(stderr, + _("Disk %s doesn't contain a valid " + "partition table\n"), device); + close(fd); } else { - /* Ignore other errors, since we try IDE - and SCSI hard disks which may not be - installed on the system. */ - if(errno == EACCES) { - fprintf(stderr, _("Cannot open %s\n"), device); - return; - } + close(fd); + list_table(0); + if (!sun_label && partitions > 4) + delete_partition(ext_index); + } + } else { + /* Ignore other errors, since we try IDE + and SCSI hard disks which may not be + installed on the system. */ + if(errno == EACCES) { + fprintf(stderr, _("Cannot open %s\n"), device); + return; } } } @@ -2115,13 +2132,13 @@ tryprocpt(void) { } while (fgets(line, sizeof(line), procpt)) { - if (sscanf (line, " %d %d %d %[^\n]\n", + if (sscanf (line, " %d %d %d %[^\n ]", &ma, &mi, &sz, ptname) != 4) continue; for(s = ptname; *s; s++); if (isdigit(s[-1])) continue; - sprintf(devname, "/dev/%s", ptname); + snprintf(devname, sizeof(devname), "/dev/%s", ptname); try(devname, 0); } } diff --git a/fdisk/fdisk.h b/fdisk/fdisk.h index 868251df..449f8dc3 100644 --- a/fdisk/fdisk.h +++ b/fdisk/fdisk.h @@ -15,6 +15,8 @@ #define LINUX_SWAP 0x82 #define LINUX_NATIVE 0x83 #define LINUX_EXTENDED 0x85 +#define LINUX_LVM 0x8e +#define LINUX_RAID 0xfd #define IS_EXTENDED(i) \ ((i) == EXTENDED || (i) == WIN98_EXTENDED || (i) == LINUX_EXTENDED) @@ -67,7 +69,6 @@ extern int fd, extern uint display_in_cyl_units, units_per_sector; extern void change_units(void); -extern struct partition *part_table[]; extern void fatal(enum failure why); extern void get_geometry(int fd, struct geom *); extern int get_boot(enum action what); diff --git a/fdisk/fdiskbsdlabel.c b/fdisk/fdiskbsdlabel.c index 0f3c6813..80efc36e 100644 --- a/fdisk/fdiskbsdlabel.c +++ b/fdisk/fdiskbsdlabel.c @@ -273,14 +273,14 @@ xbsd_new_part (void) end = xbsd_dlabel.d_secperunit - 1; #endif - sprintf (mesg, _("First %s"), str_units(SINGULAR)); + snprintf (mesg, sizeof(mesg), _("First %s"), str_units(SINGULAR)); begin = read_int (bsd_cround (begin), bsd_cround (begin), bsd_cround (end), 0, mesg); if (display_in_cyl_units) begin = (begin - 1) * xbsd_dlabel.d_secpercyl; - sprintf (mesg, _("Last %s or +size or +sizeM or +sizeK"), + snprintf (mesg, sizeof(mesg), _("Last %s or +size or +sizeM or +sizeK"), str_units(SINGULAR)); end = read_int (bsd_cround (begin), bsd_cround (end), bsd_cround (end), bsd_cround (begin), mesg); @@ -517,13 +517,13 @@ xbsd_write_bootstrap (void) else dkbasename = "wd"; - printf (_("Bootstrap: %sboot -> boot%s (%s): "), dkbasename, dkbasename, dkbasename); - if (read_line ()) - { + printf (_("Bootstrap: %sboot -> boot%s (%s): "), + dkbasename, dkbasename, dkbasename); + if (read_line ()) { line_ptr[strlen (line_ptr)-1] = '\0'; dkbasename = line_ptr; } - sprintf (path, "%s/%sboot", bootdir, dkbasename); + snprintf (path, sizeof(path), "%s/%sboot", bootdir, dkbasename); if (!xbsd_get_bootstrap (path, disklabelbuffer, (int) xbsd_dlabel.d_secsize)) return; @@ -534,15 +534,14 @@ xbsd_write_bootstrap (void) /* The disklabel will be overwritten by 0's from bootxx anyway */ bzero (d, sizeof (struct xbsd_disklabel)); - sprintf (path, "%s/boot%s", bootdir, dkbasename); + snprintf (path, sizeof(path), "%s/boot%s", bootdir, dkbasename); if (!xbsd_get_bootstrap (path, &disklabelbuffer[xbsd_dlabel.d_secsize], (int) xbsd_dlabel.d_bbsize - xbsd_dlabel.d_secsize)) return; e = d + sizeof (struct xbsd_disklabel); for (p=d; p < e; p++) - if (*p) - { + if (*p) { fprintf (stderr, _("Bootstrap overlaps with disk label!\n")); exit ( EXIT_FAILURE ); } @@ -588,7 +587,7 @@ xbsd_get_part_index (int max) char prompt[256]; char l; - sprintf (prompt, _("Partition (a-%c): "), 'a' + max - 1); + snprintf (prompt, sizeof(prompt), _("Partition (a-%c): "), 'a' + max - 1); do l = tolower (read_char (prompt)); while (l < 'a' || l > 'a' + max - 1); diff --git a/fdisk/fdisksgilabel.c b/fdisk/fdisksgilabel.c index 97e6c595..09296905 100644 --- a/fdisk/fdisksgilabel.c +++ b/fdisk/fdisksgilabel.c @@ -76,23 +76,25 @@ isinfreelist( int b ) { * end of free blocks section */ struct systypes sgi_sys_types[] = { - {SGI_VOLHDR, N_("SGI volhdr")}, - {0x01, N_("SGI trkrepl")}, - {0x02, N_("SGI secrepl")}, - {SGI_SWAP, N_("SGI raw")}, - {0x04, N_("SGI bsd")}, - {0x05, N_("SGI sysv")}, - {ENTIRE_DISK, N_("SGI volume")}, - {SGI_EFS, N_("SGI efs")}, - {0x08, N_("SGI lvol")}, - {0x09, N_("SGI rlvol")}, - {0x0a, N_("SGI xfs")}, - {0x0b, N_("SGI xlvol")}, - {0x0c, N_("SGI rxlvol")}, - {LINUX_SWAP, N_("Linux swap")}, - {LINUX_NATIVE,N_("Linux native")}, - {0x8e, N_("Linux LVM")}, - {0, NULL } + {SGI_VOLHDR, N_("SGI volhdr")}, + {0x01, N_("SGI trkrepl")}, + {0x02, N_("SGI secrepl")}, + {SGI_SWAP, N_("SGI raw")}, + {0x04, N_("SGI bsd")}, + {0x05, N_("SGI sysv")}, + {ENTIRE_DISK, N_("SGI volume")}, + {SGI_EFS, N_("SGI efs")}, + {0x08, N_("SGI lvol")}, + {0x09, N_("SGI rlvol")}, + {SGI_XFS, N_("SGI xfs")}, + {SGI_XFSLOG, N_("SGI xfslog")}, + {SGI_XLV, N_("SGI xlv")}, + {SGI_XVM, N_("SGI xvm")}, + {LINUX_SWAP, N_("Linux swap")}, + {LINUX_NATIVE, N_("Linux native")}, + {LINUX_LVM, N_("Linux LVM")}, + {LINUX_RAID, N_("Linux RAID")}, + {0, NULL } }; static inline unsigned short @@ -357,7 +359,7 @@ 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 ); + strncpy( sgilabel->directory[0].vol_file_name, "sgilabel", 8 ); } sgiinfo * fill_sgiinfo(void); @@ -681,7 +683,7 @@ sgi_add_partition( int n, int sys ) printf(_("You got a partition overlap on the disk. Fix it first!\n")); return; } - sprintf(mesg, _("First %s"), str_units(SINGULAR)); + snprintf(mesg, sizeof(mesg), _("First %s"), str_units(SINGULAR)); for(;;) { if(sys == SGI_VOLUME) { last = sgi_get_lastblock(); @@ -708,7 +710,7 @@ sgi_add_partition( int n, int sys ) } else break; } - sprintf(mesg, _(" Last %s"), str_units(SINGULAR)); + snprintf(mesg, sizeof(mesg), _(" Last %s"), str_units(SINGULAR)); last = read_int(scround(first), scround(last)-1, scround(last)-1, scround(first), mesg)+1; if (display_in_cyl_units) @@ -768,8 +770,12 @@ create_sgilabel(void) memset(MBRbuffer, 0, sizeof(MBRbuffer)); sgilabel->magic = SSWAP32(SGI_LABEL_MAGIC); sgilabel->boot_part = SSWAP16(0); - sgilabel->swap_part = SSWAP16(1); strncpy( - sgilabel->boot_file , "/unix\0\0\0\0\0\0\0\0\0\0\0", 16 ); + 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); diff --git a/fdisk/fdisksgilabel.h b/fdisk/fdisksgilabel.h index a0c3a105..cdad01a9 100644 --- a/fdisk/fdisksgilabel.h +++ b/fdisk/fdisksgilabel.h @@ -31,10 +31,18 @@ struct device_parameter { /* 48 bytes */ unsigned short xylogics_writecont; }; +#define SGI_VOLHDR 0x00 +/* 1 and 2 were used for drive types no longer supported by SGI */ +#define SGI_SWAP 0x03 +/* 4 and 5 were for filesystem types SGI haven't ever supported on MIPS CPUs */ #define SGI_VOLUME 0x06 #define SGI_EFS 0x07 -#define SGI_SWAP 0x03 -#define SGI_VOLHDR 0x00 +#define SGI_LVOL 0x08 +#define SGI_RLVOL 0x09 +#define SGI_XFS 0x0a +#define SGI_XFSLOG 0x0b +#define SGI_XLV 0x0c +#define SGI_XVM 0x0d #define ENTIRE_DISK SGI_VOLUME /* * controller flags @@ -48,19 +56,19 @@ struct device_parameter { /* 48 bytes */ #define ENABLE_CMDTAGQ 0x40 typedef struct { - unsigned int magic; /* expect SGI_LABEL_MAGIC */ + unsigned int magic; /* expect SGI_LABEL_MAGIC */ unsigned short boot_part; /* active boot partition */ unsigned short swap_part; /* active swap partition */ unsigned char boot_file[16]; /* name of the bootfile */ struct device_parameter devparam; /* 1 * 48 bytes */ struct volume_directory { /* 15 * 16 bytes */ - unsigned char vol_file_name[8]; /* an character array */ + unsigned char vol_file_name[8]; /* a character array */ unsigned int vol_file_start; /* number of logical block */ unsigned int vol_file_size; /* number of bytes */ } directory[15]; struct sgi_partition { /* 16 * 12 bytes */ unsigned int num_sectors; /* number of blocks */ - unsigned int start_sector; /* sector must be cylinder aligned */ + unsigned int start_sector; /* must be cylinder aligned */ unsigned int id; } partitions[16]; unsigned int csum; diff --git a/fdisk/fdisksunlabel.c b/fdisk/fdisksunlabel.c index f96cb0b1..2a36852a 100644 --- a/fdisk/fdisksunlabel.c +++ b/fdisk/fdisksunlabel.c @@ -348,10 +348,11 @@ void create_sunlabel(void) puts(_("You may change all the disk params from the x menu")); } - sprintf(sunlabel->info, "%s%s%s cyl %d alt %d hd %d sec %d", - p ? p->vendor : "", - (p && *p->vendor) ? " " : "", - p ? p->model : (floppy ? _("3,5\" floppy") : _("Linux custom")), + snprintf(sunlabel->info, sizeof(sunlabel->info), + "%s%s%s cyl %d alt %d hd %d sec %d", + p ? p->vendor : "", (p && *p->vendor) ? " " : "", + p ? p->model + : (floppy ? _("3,5\" floppy") : _("Linux custom")), cylinders, SSWAP16(sunlabel->nacyl), heads, sectors); sunlabel->ntrks = SSWAP16(heads); @@ -514,7 +515,7 @@ add_sun_partition(int n, int sys) { return; } } - sprintf(mesg, _("First %s"), str_units(SINGULAR)); + snprintf(mesg, sizeof(mesg), _("First %s"), str_units(SINGULAR)); for (;;) { if (whole_disk) first = read_int(0, 0, 0, 0, mesg); @@ -549,7 +550,9 @@ and is of type `Whole disk'\n"); if (starts[i] > first && starts[i] < stop) stop = starts[i]; } - sprintf(mesg, _("Last %s or +size or +sizeM or +sizeK"), str_units(SINGULAR)); + snprintf(mesg, sizeof(mesg), + _("Last %s or +size or +sizeM or +sizeK"), + str_units(SINGULAR)); if (whole_disk) last = read_int(scround(stop2), scround(stop2), scround(stop2), 0, mesg); diff --git a/fdisk/i386_sys_types.c b/fdisk/i386_sys_types.c index 3e5f0f1b..ce01b189 100644 --- a/fdisk/i386_sys_types.c +++ b/fdisk/i386_sys_types.c @@ -76,12 +76,15 @@ struct systypes i386_sys_types[] = { {0xda, N_("Non-FS data")}, {0xdb, N_("CP/M / CTOS / ...")},/* CP/M or Concurrent CP/M or Concurrent DOS or CTOS */ + {0xde, N_("Dell Utility")}, /* Dell PowerEdge Server utilities */ {0xe1, N_("DOS access")}, /* DOS access or SpeedStor 12-bit FAT extended partition */ {0xe3, N_("DOS R/O")}, /* DOS R/O or SpeedStor */ {0xe4, N_("SpeedStor")}, /* SpeedStor 16-bit FAT extended partition < 1024 cyl. */ {0xeb, N_("BeOS fs")}, + {0xee, N_("EFI GPT")}, /* Intel EFI GUID Partition Table */ + {0xef, N_("EFI (FAT-12/16/32)")},/* Intel EFI System Partition */ {0xf1, N_("SpeedStor")}, {0xf4, N_("SpeedStor")}, /* SpeedStor large partition */ {0xf2, N_("DOS secondary")}, /* DOS 3.3+ secondary */ diff --git a/games/banner.c b/games/banner.c index 31206a43..e8f7bf9e 100644 --- a/games/banner.c +++ b/games/banner.c @@ -30,7 +30,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support */ diff --git a/getopt-1.1.0a/Changelog b/getopt-1.1.0a/Changelog index e144bb0f..339c5bb1 100644 --- a/getopt-1.1.0a/Changelog +++ b/getopt-1.1.0a/Changelog @@ -1,5 +1,5 @@ 20000630: Ported the Native Language Support patches from util-linux - They are written by Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + They are written by Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> 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.0a/getopt.c b/getopt-1.1.0a/getopt.c index 86efe2f8..e52c1490 100644 --- a/getopt-1.1.0a/getopt.c +++ b/getopt-1.1.0a/getopt.c @@ -34,7 +34,7 @@ * No important changes * Version 1.1.0: Tue Jun 30 2000 * Added NLS support (partly written by Arkadiusz Mi<B6>kiewicz - * <misiek@misiek.eu.org>) + * <misiek@pld.ORG.PL>) */ #include <stdio.h> diff --git a/hwclock/clock-ppc.c b/hwclock/clock-ppc.c index 6d8969ad..b73d0ad8 100644 --- a/hwclock/clock-ppc.c +++ b/hwclock/clock-ppc.c @@ -241,7 +241,7 @@ main (int argc, char **argv ) /* If we are in MkLinux do not even bother trying to set the clock */ if(!access("/proc/osfmach3/version", R_OK)) - { // We're running MkLinux + { /* We're running MkLinux */ if ( readit | writeit | setit | adjustit ) printf("You must change the clock setting in MacOS.\n"); exit(0); diff --git a/hwclock/cmos.c b/hwclock/cmos.c index 4fc82d79..94153dea 100644 --- a/hwclock/cmos.c +++ b/hwclock/cmos.c @@ -61,10 +61,17 @@ int inb(int c){ return 0; } #define BCD_TO_BIN(val) ((val)=((val)&15) + ((val)>>4)*10) #define BIN_TO_BCD(val) ((val)=(((val)/10)<<4) + (val)%10) +/* The epoch. + Unix uses 1900 as epoch for a struct tm, and 1970 for a time_t. + But what was written to CMOS? + Digital DECstations use 1928 - this is on a mips + Digital Unix uses 1952. + Windows NT uses 1980. + The ARC console expects to boot Windows NT and uses 1980. + (But a Ruffian uses 1900, just like SRM.) + It is reported that ALPHA_PRE_V1_2_SRM_CONSOLE uses 1958. */ #define TM_EPOCH 1900 -int cmos_epoch = 1900; /* 1980 for an alpha in ARC console time */ - /* One also sees 1952 (Digital Unix) - and 1958 (ALPHA_PRE_V1_2_SRM_CONSOLE) */ +int cmos_epoch = 1900; /* Martin Ostermann writes: The problem with the Jensen is twofold: First, it has the clock at a @@ -576,7 +583,7 @@ get_permissions_cmos(void) { } else { rc = i386_iopl(3); if (rc == -2) { - fprintf(stderr, _("I failed to get permission because I didnt try.\n")); + fprintf(stderr, _("I failed to get permission because I didn't try.\n")); } else if (rc != 0) { rc = errno; fprintf(stderr, _("%s is unable to get I/O port access: " diff --git a/hwclock/hwclock.8 b/hwclock/hwclock.8 index 7e4106d4..07c4f8cd 100644 --- a/hwclock/hwclock.8 +++ b/hwclock/hwclock.8 @@ -53,7 +53,7 @@ what function to perform: .TP .B \-\-show Read the Hardware Clock and print the time on Standard Output. -The time is always in local time, even if you keep your Hardware Clock +The time shown is always in local time, even if you keep your Hardware Clock in Coordinated Universal Time. See the .B \-\-utc option. @@ -130,9 +130,12 @@ option. .B \-\-epoch=year Specifies the year which is the beginning of the Hardware Clock's epoch. I.e. the number of years into AD to which a zero value in the -Hardware Clock's year counter refers. +Hardware Clock's year counter refers. It is used together with +the \-\-setepoch option to set the kernel's idea of the epoch of the +Hardware Clock, or otherwise to specify the epoch for use with +direct ISA access. -For example, +For example, on a Digital Unix machine: .sp .I hwclock --setepoch --epoch=1952 @@ -226,48 +229,37 @@ whenever it finds your Hardware Clock set to 1994 or 1995. .TP .B \-\-srm +This option is equivalent to +.B \-\-epoch=1900 +and is used to specify the most common epoch on Alphas +with SRM console. .TP .B \-\-arc +This option is equivalent to +.B \-\-epoch=1980 +and is used to specify the most common epoch on Alphas +with ARC console (but Ruffians have epoch 1900). .TP .B \-\-jensen .TP .B \-\-funky\-toy -These options all tell -.B hwclock -what kind of Alpha machine you have. They -are invalid if you don't have an Alpha and shouldn't be necessary if you -do, because +These two options specify what kind of Alpha machine you have. They +are invalid if you don't have an Alpha and are usually unnecessary +if you do, because .B hwclock should be able to determine by itself what it's running on, at least when .I /proc -is mounted. These options make it possible for -.B hwclock -to work even when -its environment does not conform to its expectations and thus it cannot -accurately determine what sort of system it is running on. If you think -hwclock is incorrectly determining the system's characteristics, try -running with the -.B \-\-debug -option to see what conclusions the program is -reaching and how. If you find you need one of these options to make -.B hwclock -work, contact the +is mounted. +(If you find you need one of these options to make .B hwclock -maintainer to see if the program can be improved to detect your system -automatically. +work, contact the maintainer to see if the program can be improved +to detect your system automatically. Output of `hwclock --debug' +and `cat /proc/cpuinfo' may be of interest.) .B \-\-jensen means you are running on a Jensen model. -.B \-\-arc -means your machine uses epoch 1980 in its hardware clock, as is commonly -the case for machines on ARC console (but Ruffians have epoch 1900). - -.B \-\-srm -means your machine uses epoch 1900 in its hardware clock, as is commonly -the case for machines on SRM console. - .B \-\-funky\-toy means that on your machine, one has to use the UF bit instead of the UIP bit in the Hardware Clock to detect a time transition. "Toy" diff --git a/hwclock/kd.c b/hwclock/kd.c index fd4fdd5a..a2f313f6 100644 --- a/hwclock/kd.c +++ b/hwclock/kd.c @@ -124,7 +124,7 @@ set_hardware_clock_kd(const struct tm *new_broken_time) { t.wday = new_broken_time->tm_wday; if (ioctl(con_fd, KDSHWCLK, &t ) == -1) { - outsyserr(_("ioctl() to open /dev/tty1 failed")); + outsyserr(_("ioctl KDSHWCLK failed")); exit(1); } return 0; diff --git a/hwclock/rtc.c b/hwclock/rtc.c index 2874bfa1..06ac4360 100644 --- a/hwclock/rtc.c +++ b/hwclock/rtc.c @@ -290,7 +290,7 @@ get_permissions_rtc(void) { } static struct clock_ops rtc = { - "/dev/rtc interface to clock", + RTC_DEV " interface to clock", get_permissions_rtc, read_hardware_clock_rtc, set_hardware_clock_rtc, diff --git a/kbd/Makefile b/kbd/Makefile deleted file mode 100644 index 30bfb0e8..00000000 --- a/kbd/Makefile +++ /dev/null @@ -1,25 +0,0 @@ -# Makefile -- Makefile for util-linux Linux utilities -# -include ../make_include -include ../MCONFIG - -# Where to put man pages? - -MAN8= kbdrate.8 - -# Where to put binaries? -# See the "install" rule for the links. . . - -SBIN= kbdrate - -all: $(SBIN) - -kbdrate: kbdrate.o - -install: all - $(INSTALLDIR) $(SBINDIR) $(MAN8DIR) - $(INSTALLBIN) $(SBIN) $(SBINDIR) - $(INSTALLMAN) $(MAN8) $(MAN8DIR) - -clean: - -rm -f *.o *~ core $(SBIN) diff --git a/kbd/README b/kbd/README deleted file mode 100644 index 97ca5bde..00000000 --- a/kbd/README +++ /dev/null @@ -1,2 +0,0 @@ -This stuff belongs in the kbd package and will disappear here. -It is left for a while - version in kbd* and here will be identical. diff --git a/kbd/kbdrate.8 b/kbd/kbdrate.8 deleted file mode 100644 index e0fd890f..00000000 --- a/kbd/kbdrate.8 +++ /dev/null @@ -1,71 +0,0 @@ -.\" Copyright 1992, 1994 Rickard E. Faith (faith@cs.unc.edu) -.\" May be distributed under the GNU General Public License -.\" Updated Wed Jun 22 21:09:43 1994, faith@cs.unc.edu -.\" -.TH KBDRATE 8 "22 June 1994" "Linux 1.1.19" "Linux Programmer's Manual" -.SH NAME -kbdrate \- reset the keyboard repeat rate and delay time -.SH SYNOPSIS -.B "kbdrate [ \-s ] [ \-r" -rate -.B "] [ \-d" -delay -.B ] -.SH DESCRIPTION -.B kbdrate -is used to change the keyboard repeat rate and delay time. The delay -is the amount of time that a key must be depressed before it will start to -repeat. - -Using -.B kbdrate -without any options will reset the repeat rate to 10.9 characters per second (cps) -and the delay to 250 milliseconds (ms) for Intel- and M68K-based systems. -These are the IBM defaults. On SPARC-based systems it will reset the repeat rate -to 5 cps and the delay to 200 ms. - -.SH OPTIONS -.TP -.B \-s -Silent. No messages are printed. -.TP -.BI \-r " rate" -Change the keyboard repeat rate to -.I rate -cps. For Intel-based systems, the allowable range is from 2.0 to 30.0 cps. -Only certain, specific values are possible, and the program will select the -nearest possible value to the one specified. The possible values are given, -in characters per second, as follows: 2.0, 2.1, 2.3, 2.5, 2.7, 3.0, 3.3, 3.7, -4.0, 4.3, 4.6, 5.0, 5.5, 6.0, 6.7, 7.5, 8.0, 8.6, 9.2, 10.0, 10.9, 12.0, 13.3, -15.0, 16.0, 17.1, 18.5, 20.0, 21.8, 24.0, 26.7, 30.0. -For SPARC-based systems, the allowable range is from 0 (no repeat) to 50 cps. -.TP -.BI \-d " delay" -Change the delay to -.I delay -milliseconds. -For Intel-based systems, the allowable range is from 250 to 1000 ms, -in 250 ms steps. For SPARC systems, possible values are between 10 ms and 1440 ms, -in 10 ms steps. -.TP -.B \-V -Display a version number and exit. -.SH BUGS -Not all keyboards support all rates. -.PP -Not all keyboards have the rates mapped in the same way. -.PP -Setting the repeat rate on the Gateway AnyKey keyboard does not work. If -someone with a Gateway figures out how to program the keyboard, please send -mail to util-linux@math.uio.no. -.PP -All this is very architecture dependent. -Nowadays -.B kbdrate -first tries the KDKBDREP and KIOCSRATE ioctls. -(The former usually works on an m68k machine, the latter for SPARC.) -When these ioctls fail an ioport interface as on i386 is assumed. -.SH FILES -.I /etc/rc.local -.br -.I /dev/port diff --git a/kbd/kbdrate.c b/kbd/kbdrate.c deleted file mode 100644 index df116e1e..00000000 --- a/kbd/kbdrate.c +++ /dev/null @@ -1,282 +0,0 @@ -/* -From: faith@cs.unc.edu (Rik Faith) -Subject: User mode keyboard rate changer -Date: 27 Apr 92 13:44:26 GMT - -I put together this program, called kbdrate.c, which will reset the keyboard -repeat rate and delay in user mode. The program must have read/write -access to /dev/port, so if /dev/port is only read/writeable by group port, -then kbdrate must run setgid to group port (for example). - -The "rate" is the rate in characters per second - -The "delay" is the amount of time the key must remain depressed before it -will start to repeat. - -Usage examples: - -kbdrate set rate to IBM default (10.9 cps, 250ms delay) -kbdrate -r 30.0 set rate to 30 cps and delay to 250ms -kbdrate -r 20.0 -s set rate to 20 cps (delay 250ms) -- don't print message -kbdrate -r 0 -d 0 set rate to 2.0 cps and delay to 250 ms - -I find it useful to put kbdrate in my /etc/rc file so that the keyboard -rate is set to something that I find comfortable at boot time. This sure -beats rebuilding the kernel! - - - kbdrate.c -- Set keyboard typematic rate (and delay) - Created: Thu Apr 23 12:24:30 1992 - Author: Rickard E. Faith, faith@cs.unc.edu - - Copyright 1992 Rickard E. Faith. Distributed under the GPL. - This program comes with ABSOLUTELY NO WARRANTY. - Usage: kbdrate [-r rate] [-d delay] [-s] - Rate can range from 2.0 to 30.0 (units are characters per second) - Delay can range from 250 to 1000 (units are milliseconds) - -s suppressed message - Compiles under gcc 2.1 for Linux (tested with the pre-0.96 kernel) - - Wed Jun 22 21:35:43 1994, faith@cs.unc.edu: - Changed valid_rates per suggestion by Andries.Brouwer@cwi.nl. - Wed Jun 22 22:18:29 1994, faith@cs.unc.edu: - Added patch for AUSTIN notebooks from John Bowman - (bowman@hagar.ph.utexas.edu) - - Linux/68k modifications by Roman Hodek - (Roman.Hodek@informatik.uni-erlangen.de): - - Reading/writing the Intel I/O ports via /dev/port is not the - English way... Such hardware dependant stuff can never work on - other architectures. - - Linux/68k has an new ioctl for setting the keyboard repeat rate - and delay. Both values are counted in msecs, the kernel will do - any rounding to values possible with the underlying hardware. - - kbdrate now first tries if the KDKBDREP ioctl is available. If it - is, it is used, else the old method is applied. - - 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> - - added Native Language Support - - 1999-03-17 - Linux/SPARC modifications by Jeffrey Connell <ankh@canuck.gen.nz>: - It seems that the KDKBDREP ioctl is not available on this platform. - However, Linux/SPARC has its own ioctl for this, with yet another - different measurement system. Thus, try for KIOCSRATE, too. - -*/ - -#include <stdio.h> -#include <unistd.h> -#include <stdlib.h> -#include <errno.h> -#include <sys/file.h> -#include <sys/ioctl.h> - -#include "../defines.h" -#ifdef HAVE_kd_h -#include <linux/kd.h> -#endif -#ifdef __sparc__ -#include <asm/param.h> -#include <asm/kbio.h> -#endif - -#include "nls.h" - -static int valid_rates[] = { 300, 267, 240, 218, 200, 185, 171, 160, 150, - 133, 120, 109, 100, 92, 86, 80, 75, 67, - 60, 55, 50, 46, 43, 40, 37, 33, 30, 27, - 25, 23, 21, 20 }; -#define RATE_COUNT (sizeof( valid_rates ) / sizeof( int )) - -static int valid_delays[] = { 250, 500, 750, 1000 }; -#define DELAY_COUNT (sizeof( valid_delays ) / sizeof( int )) - -static int -KDKBDREP_ioctl_ok(double rate, int delay, int silent) { -#ifdef KDKBDREP - /* This ioctl is defined in <linux/kd.h> but is not - implemented anywhere - must be in some m68k patches. */ - struct kbd_repeat kbdrep_s; - - /* don't change, just test */ - kbdrep_s.rate = -1; - kbdrep_s.delay = -1; - if (ioctl( 0, KDKBDREP, &kbdrep_s )) { - if (errno == EINVAL) - return 0; - perror( "ioctl(KDKBDREP)" ); - exit( 1 ); - } - - /* do the change */ - if (rate == 0) /* switch repeat off */ - kbdrep_s.rate = 0; - else - kbdrep_s.rate = 1000.0 / rate; /* convert cps to msec */ - if (kbdrep_s.rate < 1) - kbdrep_s.rate = 1; - kbdrep_s.delay = delay; - if (kbdrep_s.delay < 1) - kbdrep_s.delay = 1; - - if (ioctl( 0, KDKBDREP, &kbdrep_s )) { - perror( "ioctl(KDKBDREP)" ); - exit( 1 ); - } - - /* report */ - if (kbdrep_s.rate == 0) - rate = 0; - else - rate = 1000.0 / (double) kbdrep_s.rate; - - if (!silent) - printf( _("Typematic Rate set to %.1f cps (delay = %d ms)\n"), - rate, kbdrep_s.delay ); - - return 1; /* success! */ - -#else /* no KDKBDREP */ - return 0; -#endif /* KDKBDREP */ -} - -static int -KIOCSRATE_ioctl_ok(double rate, int delay, int silent) { -#ifdef KIOCSRATE - struct kbd_rate kbdrate_s; - int fd; - - fd = open("/dev/kbd", O_RDONLY); - if (fd == -1) { - perror( "open(/dev/kbd)" ); - exit( 1 ); - } - - kbdrate_s.rate = (int) (rate + 0.5); /* must be integer, so round up */ - kbdrate_s.delay = delay * HZ / 1000; /* convert ms to Hz */ - if (kbdrate_s.rate > 50) - kbdrate_s.rate = 50; - - if (ioctl( fd, KIOCSRATE, &kbdrate_s )) { - perror( "ioctl(KIOCSRATE)" ); - exit( 1 ); - } - close( fd ); - - if (!silent) - printf( "Typematic Rate set to %d cps (delay = %d ms)\n", - kbdrate_s.rate, kbdrate_s.delay * 1000 / HZ ); - - return 1; -#else /* no KIOCSRATE */ - return 0; -#endif /* KIOCSRATE */ -} - -int main( int argc, char **argv ) -{ -#ifdef __sparc__ - double rate = 5.0; /* Default rate */ - int delay = 200; /* Default delay */ -#else - double rate = 10.9; /* Default rate */ - int delay = 250; /* Default delay */ -#endif - int value = 0x7f; /* Maximum delay with slowest rate */ - /* DO NOT CHANGE this value */ - int silent = 0; - int fd; - char data; - int c; - int i; - extern char *optarg; - - setlocale(LC_ALL, ""); - bindtextdomain(PACKAGE, LOCALEDIR); - textdomain(PACKAGE); - - - while ( (c = getopt( argc, argv, "r:d:svVh?" )) != EOF ) { - switch (c) { - case 'r': - rate = atof( optarg ); - break; - case 'd': - delay = atoi( optarg ); - break; - case 's': - silent = 1; - break; - case 'v': - case 'V': - fprintf( stderr, "util-linux %s kbdrate\n", UTIL_LINUX_VERSION); - exit(0); - case 'h': - case '?': - fprintf( stderr, - _("Usage: kbdrate [-V] [-s] [-r rate] [-d delay]\n")); - exit(0); - } - } - - if(KDKBDREP_ioctl_ok(rate, delay, silent)) /* m68k? */ - return 0; - - if(KIOCSRATE_ioctl_ok(rate, delay, silent)) /* sparc? */ - return 0; - - - /* The ioport way */ - - for (i = 0; i < RATE_COUNT; i++) - if (rate * 10 >= valid_rates[i]) { - value &= 0x60; - value |= i; - break; - } - - - for (i = 0; i < DELAY_COUNT; i++) - if (delay <= valid_delays[i]) { - value &= 0x1f; - value |= i << 5; - break; - } - - if ( (fd = open( "/dev/port", O_RDWR )) < 0) { - perror( _("Cannot open /dev/port") ); - exit( 1 ); - } - - do { - lseek( fd, 0x64, 0 ); - read( fd, &data, 1 ); - } while ((data & 2) == 2 ); /* wait */ - - lseek( fd, 0x60, 0 ); - data = 0xf3; /* set typematic rate */ - write( fd, &data, 1 ); - - do { - lseek( fd, 0x64, 0 ); - read( fd, &data, 1 ); - } while ((data & 2) == 2 ); /* wait */ - - lseek( fd, 0x60, 0 ); - sleep( 1 ); - write( fd, &value, 1 ); - - close( fd ); - - if (!silent) - printf( _("Typematic Rate set to %.1f cps (delay = %d ms)\n"), - valid_rates[value & 0x1f] / 10.0, - valid_delays[ (value & 0x60) >> 5 ] ); - - return 0; -} diff --git a/lib/Makefile b/lib/Makefile index 31e953ce..986280c4 100644 --- a/lib/Makefile +++ b/lib/Makefile @@ -1,7 +1,7 @@ include ../make_include include ../MCONFIG -all: err.o my_reboot.o setproctitle.o env.o carefulputc.o +all: err.o my_reboot.o setproctitle.o env.o carefulputc.o xstrncpy.o err.o: err.c @@ -13,6 +13,8 @@ setproctitle.o: setproctitle.h carefulputc.o: carefulputc.h +xstrncpy.o: xstrncpy.h + .PHONY: clean clean: -rm -f *.o *~ core @@ -1,7 +1,7 @@ /* * Security checks of enviroment * Added from shadow-utils package - * by Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + * by Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * */ diff --git a/lib/pathnames.h b/lib/pathnames.h index 672b58e9..9f10a16d 100644 --- a/lib/pathnames.h +++ b/lib/pathnames.h @@ -26,7 +26,7 @@ * What is the history of these six, and related defines? ------------------------------------------------------------------------ -_PATH_UTMP and UTMP_FILE and UTMP_FILENAME: +_PATH_UTMP and UTMP_FILE and UTMP_FILENAME /etc/utmp > /var/adm/utmp > /var/run/utmp. Traditionally we have /etc/utmp. In <paths.h> we have /etc/utmp, but since 4.6.0 /var/adm/utmp @@ -34,7 +34,7 @@ and since 5.0.9 (and in glibc2) /var/run/utmp. In login/pathnames.h we have /etc/utmp, but since 4.6.6 /var/adm/utmp. In <utmp.h> UTMP_FILE is defined as /etc/utmp, but in 4.6.* as _PATH_UTMP. -_PATH_WTMP and WTMP_FILE and WTMP_FILENAME: +_PATH_WTMP and WTMP_FILE and WTMP_FILENAME /etc/wtmp > /usr/adm/wtmp > /var/adm/wtmp > /var/log/wtmp. Traditionally we have /etc/wtmp. In <paths.h> we have /usr/adm/wtmp, but since 4.5.13 /var/adm/wtmp, @@ -43,21 +43,21 @@ In login/pathnames.h. we have /etc/wtmp, but since 4.6.6 /var/adm/wtmp. In <utmp.h> WTMP_FILE is defined as /usr/adm/wtmp, but in 4.5.* as /var/adm/wtmp, and in 4.6.* as _PATH_WTMP. -_PATH_DEFPATH) +_PATH_DEFPATH Long ago this was ".:/bin:/usr/bin". In <paths.h> libc 4.4.1-4.4.4 have "/usr/bin:/bin" and libc 4.5.21-5.4.23 have "/usr/local/bin:/usr/bin:/bin:." and libc 5.4.38-5.4.46 have "/usr/local/bin:/usr/bin:/bin". In login/pathnames.h libc4 and libc5 have "/usr/local/bin:/bin:/usr/bin:." -_PATH_DEFPATH_ROOT) +_PATH_DEFPATH_ROOT Long ago this was identical to _PATH_DEFPATH. In <paths.h> no definition is present before libc 4.5.13. Libc 4.5.13 has "/bin:/usr/bin:/etc" Libc 4.5.14-5.4.46 have "/sbin:/bin:/usr/sbin:/usr/bin" In login/pathnames.h libc4 and libc5 have "/bin:/usr/bin:/etc" -_PATH_LASTLOG) +_PATH_LASTLOG /etc/lastlog > /usr/adm/lastlog > /var/adm/lastlog > /var/log/lastlog. Traditionally we have /etc/lastlog. In <bsd/utmp.h> libc 4.4.1-4.5.12 have /usr/adm/lastlog, 4.5.13 and @@ -65,7 +65,7 @@ later have /var/adm/lastlog. In paths.h all libc5 and glibc2 versions have /var/log/lastlog. In login/pathnames.h all libc4 and libc5 versions have /usr/adm/lastlog. -_PATH_MAILDIR) +_PATH_MAILDIR /usr/spool/mail > /var/spool/mail > /var/mail. Traditionally we have /usr/spool/mail. In <paths.h> we have /usr/spool/mail, but since libc 4.5.13 /var/spool/mail. @@ -140,6 +140,12 @@ Libc5 and glibc 2.0-2.1 have /var/spool/mail, but glibc 2.1.1 has /var/mail. #define _PATH_GROUP "/etc/group" #define _PATH_GTMP "/etc/gtmp" #define _PATH_GTMPTMP "/etc/gtmptmp" +#define _PATH_SHADOW_PASSWD "/etc/shadow" +#define _PATH_SHADOW_PTMP "/etc/sptmp" +#define _PATH_SHADOW_PTMPTMP "/etc/sptmptmp" +#define _PATH_SHADOW_GROUP "/etc/gshadow" +#define _PATH_SHADOW_GTMP "/etc/sgtmp" +#define _PATH_SHADOW_GTMPTMP "/etc/sgtmptmp" /* used in misc-utils/look.c */ #define _PATH_WORDS "/usr/dict/words" diff --git a/lib/widechar.h b/lib/widechar.h index c440006f..1aa91f3f 100644 --- a/lib/widechar.h +++ b/lib/widechar.h @@ -12,6 +12,14 @@ # include <libutf8.h> #endif +#if 1 +/* explicit prototypes, since sometimes <wchar.h> does not give them */ +extern int wcwidth (wint_t c); +extern int wcswidth (const wchar_t *s, size_t n); +extern size_t wcslen (const wchar_t *s); +extern wchar_t *wcsdup (const wchar_t *s); +#endif + #else # include <ctype.h> diff --git a/lib/xstrncpy.c b/lib/xstrncpy.c new file mode 100644 index 00000000..cf494097 --- /dev/null +++ b/lib/xstrncpy.c @@ -0,0 +1,9 @@ +/* NUL-terminated version of strncpy() */ +#include <string.h> +#include "xstrncpy.h" + +void +xstrncpy(char *dest, const char *src, size_t n) { + strncpy(dest, src, n-1); + dest[n-1] = 0; +} diff --git a/lib/xstrncpy.h b/lib/xstrncpy.h new file mode 100644 index 00000000..05c8fa26 --- /dev/null +++ b/lib/xstrncpy.h @@ -0,0 +1 @@ +extern void xstrncpy(char *dest, const char *src, size_t n); diff --git a/login-utils/Makefile b/login-utils/Makefile index d986501e..e6b37b8a 100644 --- a/login-utils/Makefile +++ b/login-utils/Makefile @@ -96,17 +96,17 @@ shutdown.o simpleinit.o: $(LIB)/linux_reboot.h wall.o: ttymsg.h $(LIB)/carefulputc.h agetty: agetty.o -chfn: chfn.o islocal.o setpwnam.o $(LIB)/env.o +chfn: chfn.o islocal.o setpwnam.o $(LIB)/env.o $(LIB)/xstrncpy.o $(CC) $(LDFLAGS) -o $@ $^ $(CRYPT) $(PAM) chsh: chsh.o islocal.o setpwnam.o $(LIB)/env.o $(CC) $(LDFLAGS) -o $@ $^ $(CRYPT) $(PAM) last: last.o ifeq "$(HAVE_PAM)" "yes" -login: login.o $(LIB)/setproctitle.o +login: login.o $(LIB)/setproctitle.o $(LIB)/xstrncpy.o $(CC) $(LDFLAGS) -o $@ $^ $(CRYPT) $(PAM) else -login: login.o $(LIB)/setproctitle.o checktty.o +login: login.o $(LIB)/xstrncpy.o $(LIB)/setproctitle.o checktty.o $(CC) $(LDFLAGS) -o $@ $^ $(CRYPT) endif @@ -115,20 +115,20 @@ mesg: mesg.o $(ERR_O) newgrp: newgrp.o $(CC) $(LDFLAGS) -o $@ $^ $(CRYPT) $(PAM) -shutdown: shutdown.o $(LIB)/my_reboot.o +shutdown: shutdown.o $(LIB)/my_reboot.o $(LIB)/xstrncpy.o -simpleinit: simpleinit.o $(LIB)/my_reboot.o +simpleinit: simpleinit.o $(LIB)/my_reboot.o $(LIB)/xstrncpy.o $(CC) $(LDFLAGS) -o $@ $^ $(CRYPT) initctl: initctl.o $(CC) $(LDFLAGS) -o $@ $^ -vipw: vipw.o +vipw: vipw.o $(LIB)/xstrncpy.o newgrp.o: $(LIB)/pathnames.h $(CC) -c $(CFLAGS) $(PAMFL) newgrp.c -wall: wall.o ttymsg.o $(LIB)/carefulputc.o +wall: wall.o ttymsg.o $(LIB)/carefulputc.o $(LIB)/xstrncpy.o LOGINFLAGS= ifeq "$(USE_TTY_GROUP)" "yes" @@ -145,7 +145,7 @@ login.o: login.c $(LIB)/pathnames.h $(LIB)/setproctitle.c $(LIB)/setproctitle.h mesg.o: mesg.c $(LIB)/errs.h $(CC) -c $(CFLAGS) $(LOGINFLAGS) mesg.c -passwd: passwd.o islocal.o setpwnam.o $(LIB)/env.o +passwd: passwd.o islocal.o setpwnam.o $(LIB)/env.o $(LIB)/xstrncpy.o $(CC) $(LDFLAGS) -o $@ $^ $(CRYPT) ifeq "$(REQUIRE_PASSWORD)" "yes" @@ -214,8 +214,8 @@ ifeq "$(USE_TTY_GROUP)" "yes" chmod g+s $(USRBINDIR)/wall endif -.PHONY: clean -clean: +.PHONY: clean distclean +clean distclean: -rm -f *.o *~ core $(BIN.PASSWD) $(SBIN.GETTY) $(SBIN.INIT) \ $(USRBIN.MISC) $(USRBIN.PASSWD) $(USRBIN.PUTILS) \ $(USRSBIN.PUTILS) $(BIN.PUTILS) diff --git a/login-utils/agetty.c b/login-utils/agetty.c index 63f4adfa..3a30b16b 100644 --- a/login-utils/agetty.c +++ b/login-utils/agetty.c @@ -5,7 +5,7 @@ -f option added by Eric Rasmussen <ear@usfirst.org> - 12/28/95 - 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> - added Native Language Support 1999-05-05 Thorsten Kranzkowski <dl8bcu@gmx.net> @@ -564,7 +564,6 @@ update_utmp(line) * entry in the utmp file. */ -#ifdef __linux__ utmpname(_PATH_UTMP); setutent(); while ((utp = getutent()) @@ -578,7 +577,6 @@ update_utmp(line) memset(&ut, 0, sizeof(ut)); strncpy(ut.ut_id, line + 3, sizeof(ut.ut_id)); } - /*endutent();*/ strncpy(ut.ut_user, "LOGIN", sizeof(ut.ut_user)); strncpy(ut.ut_line, line, sizeof(ut.ut_line)); @@ -593,7 +591,7 @@ update_utmp(line) endutent(); { -#if __GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1) +#ifdef HAVE_updwtmp updwtmp(_PATH_WTMP, &ut); #else int ut_fd; @@ -610,31 +608,6 @@ update_utmp(line) } #endif } -#else /* not __linux__ */ - { int ut_fd; - if ((ut_fd = open(UTMP_FILE, 2)) < 0) { - error(_("%s: open for update: %m"), UTMP_FILE); - } else { - long ut_size = sizeof(ut); /* avoid nonsense */ - - while (read(ut_fd, (char *) &ut, sizeof(ut)) == sizeof(ut)) { - if (ut.ut_type == INIT_PROCESS && ut.ut_pid == mypid) { - ut.ut_type = LOGIN_PROCESS; - ut.ut_time = time((long *) 0); - (void) strncpy(ut.ut_name, "LOGIN", sizeof(ut.ut_name)); - (void) strncpy(ut.ut_line, line, sizeof(ut.ut_line)); - if (fakehost) - (void) strncpy(ut.ut_host, fakehost, sizeof(ut.ut_host)); - (void) lseek(ut_fd, -ut_size, 1); - (void) write(ut_fd, (char *) &ut, sizeof(ut)); - (void) close(ut_fd); - return; - } - } - error(_("%s: no utmp entry"), line); - } - } -#endif /* __linux__ */ } #endif diff --git a/login-utils/checktty.c b/login-utils/checktty.c index 6269b6b0..e96647ea 100644 --- a/login-utils/checktty.c +++ b/login-utils/checktty.c @@ -2,7 +2,7 @@ Created 25-Aug-95 by Peter Orbaek <poe@daimi.aau.dk> Fixed by JDS June 1996 to clear lists and close files - 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> - added Native Language Support */ @@ -30,6 +30,7 @@ #include "pathnames.h" #include "login.h" +#include "xstrncpy.h" #ifdef TESTING struct hostent hostaddress; @@ -107,8 +108,7 @@ new_class(char *class) tc->next = ttyclasses; tc->first = NULL; - strncpy(tc->classname, class, CLASSNAMELEN); - tc->classname[CLASSNAMELEN-1] = 0; + xstrncpy(tc->classname, class, CLASSNAMELEN); ttyclasses = tc; return tc; } @@ -128,8 +128,7 @@ add_to_class(struct ttyclass *tc, char *tty) } ge->next = tc->first; - strncpy(ge->name, tty, NAMELEN); - ge->name[NAMELEN-1] = 0; + xstrncpy(ge->name, tty, NAMELEN); tc->first = ge; } @@ -267,8 +266,7 @@ in_class(const char *tty, char *class) if (class[0] == '[') { if ((p = strchr(class, ']'))) { *p = 0; - strncpy(timespec, class+1, sizeof(timespec)); - timespec[sizeof(timespec)-1] = 0; + xstrncpy(timespec, class+1, sizeof(timespec)); *p = ']'; if(!timeok(tm, timespec)) return 0; class = p+1; @@ -289,8 +287,7 @@ in_class(const char *tty, char *class) if (n[0] == '[') { if ((p = strchr(n, ']'))) { *p = 0; - strncpy(timespec, n+1, sizeof(timespec)); - timespec[sizeof(timespec)-1] = 0; + xstrncpy(timespec, n+1, sizeof(timespec)); *p = ']'; if(!timeok(tm, timespec)) continue; n = p+1; @@ -373,8 +370,7 @@ checktty(const char *user, const char *tty, struct passwd *pwd) if(*ptr == '#') *ptr = 0; if (buf[0] == '*') { - strncpy(defaultbuf, buf, 256); - defaultbuf[255] = 0; + xstrncpy(defaultbuf, buf, 256); continue; } diff --git a/login-utils/chfn.c b/login-utils/chfn.c index de228241..e25212e8 100644 --- a/login-utils/chfn.c +++ b/login-utils/chfn.c @@ -16,7 +16,7 @@ * Hacked by Peter Breitenlohner, peb@mppmu.mpg.de, * to remove trailing empty fields. Oct 5, 96. * - * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support * * @@ -36,6 +36,7 @@ #include "my_crypt.h" #include "islocal.h" #include "setpwnam.h" +#include "xstrncpy.h" #include "nls.h" #include "env.h" @@ -239,8 +240,7 @@ static boolean parse_argv (argc, argv, pinfo) info_given = true; status = 0; - strncpy (buf, whoami, sizeof(buf)-128); - buf[sizeof(buf)-128-1] = 0; + xstrncpy (buf, whoami, sizeof(buf)-128); strcat (buf, ": "); /* now store the argument */ diff --git a/login-utils/chsh.c b/login-utils/chsh.c index d1a3fa82..fd9b5899 100644 --- a/login-utils/chsh.c +++ b/login-utils/chsh.c @@ -17,7 +17,7 @@ * suggestion from Zefram. Disallowing users with shells not in /etc/shells * from changing their shell. * - * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support * * diff --git a/login-utils/cryptocard.c b/login-utils/cryptocard.c index 9e221cbe..44cfb55d 100644 --- a/login-utils/cryptocard.c +++ b/login-utils/cryptocard.c @@ -17,7 +17,7 @@ ftp://ftp.daimi.aau.dk/pub/linux/poe/poeigl-X.XX.tar.gz - 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> - added Native Language Support */ diff --git a/login-utils/islocal.c b/login-utils/islocal.c index 87f8f1cb..1ee84089 100644 --- a/login-utils/islocal.c +++ b/login-utils/islocal.c @@ -10,7 +10,7 @@ to distinguish user names where one is a prefix of the other, and to use "pathnames.h". Oct 5, 96. - 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> - added Native Language Support diff --git a/login-utils/last.c b/login-utils/last.c index 8375f9f0..8d3a8911 100644 --- a/login-utils/last.c +++ b/login-utils/last.c @@ -18,10 +18,14 @@ * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. */ - /* 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + /* 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support */ + /* 2001-02-14 Marek Zelem <marek@fornax.sk> + * - using mmap() on Linux - great speed improvement + */ + /* * last */ @@ -29,6 +33,7 @@ #include <sys/stat.h> #include <sys/file.h> #include <sys/types.h> +#include <sys/mman.h> #include <signal.h> #include <string.h> #include <time.h> @@ -197,8 +202,15 @@ wtmp(void) { long delta; /* time difference */ char *crmsg = NULL; char *ct = NULL; +#if USE_GETUTENT struct utmp **utmplist = NULL; int listlen = 0; +#else + int fd; + struct utmp *utl; + struct stat st; + int utl_len; +#endif int listnr = 0; int i; @@ -208,6 +220,7 @@ wtmp(void) { (void)signal(SIGINT, onintr); (void)signal(SIGQUIT, onintr); +#if USE_GETUTENT setutent(); while((bp = getutent())) { if(listnr >= listlen) { @@ -220,12 +233,31 @@ wtmp(void) { memcpy(utmplist[listnr++], bp, sizeof(*bp)); } endutent(); +#else + if ((fd = open(file,O_RDONLY)) < 0) + exit(1); + fstat(fd, &st); + utl_len = st.st_size; + utl = mmap(NULL, utl_len, PROT_READ|PROT_WRITE, + MAP_PRIVATE|MAP_FILE, fd, 0); + if (utl == NULL) + exit(1); + listnr = utl_len/sizeof(struct utmp); +#endif if(listnr) +#if USE_GETUTENT ct = ctime(&utmplist[0]->ut_time); +#else + ct = ctime(&utl[0].ut_time); +#endif for(i = listnr - 1; i >= 0; i--) { +#if USE_GETUTENT bp = utmplist[i]; +#else + bp = utl+i; +#endif /* * if the terminal line is '~', the machine stopped. * see utmp(5) for more info. @@ -245,7 +277,8 @@ wtmp(void) { } currentout = -bp->ut_time; - crmsg = strncmp(bp->ut_name, "shutdown", NMAX) ? "crash" : "down "; + crmsg = (strncmp(bp->ut_name, "shutdown", NMAX) + ? "crash" : "down "); if (!bp->ut_name[0]) (void)strcpy(bp->ut_name, "reboot"); if (want(bp, NO)) { @@ -295,9 +328,15 @@ wtmp(void) { } T->logout = bp->ut_time; utmpbuf.ut_time = bp->ut_time; +#if USE_GETUTENT free(bp); } if(utmplist) free(utmplist); +#else + } + munmap(utl,utl_len); + close(fd); +#endif if(ct) printf(_("\nwtmp begins %s"), ct); /* ct already ends in \n */ } diff --git a/login-utils/login.c b/login-utils/login.c index 3ad3b219..1cf188fb 100644 --- a/login-utils/login.c +++ b/login-utils/login.c @@ -52,7 +52,7 @@ From 1992 till now (1997) this code for Linux has been maintained at ftp.daimi.aau.dk:/pub/linux/poe/ - 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> - added Native Language Support Sun Mar 21 1999 - Arnaldo Carvalho de Melo <acme@conectiva.com.br> - fixed strerr(errno) in gettext calls @@ -119,6 +119,7 @@ #include "pathnames.h" #include "my_crypt.h" #include "login.h" +#include "xstrncpy.h" #include "nls.h" #ifdef __linux__ @@ -145,8 +146,11 @@ syslog(LOG_ERR,"%s",pam_strerror(pamh, retcode)); \ pam_end(pamh, retcode); exit(1); \ } -# define PAM_END { retcode = pam_close_session(pamh,0); \ - pam_end(pamh,retcode); } +# define PAM_END { \ + pam_setcred(pamh, PAM_DELETE_CRED); \ + retcode = pam_close_session(pamh,0); \ + pam_end(pamh,retcode); \ +} #endif #ifndef __linux__ @@ -190,13 +194,14 @@ struct lastlog }; #endif - +#ifndef USE_PAM static void getloginname (void); +static void checknologin (void); +static int rootterm (char *ttyn); +#endif static void timedout (int); static void sigint (int); -static int rootterm (char *ttyn); static void motd (void); -static void checknologin (void); static void dolastlog (int quiet); #ifndef __linux__ @@ -355,8 +360,7 @@ main(int argc, char **argv) * host to login so that it may be placed in utmp and wtmp */ gethostname(tbuf, sizeof(tbuf)); - strncpy(thishost, tbuf, sizeof(thishost)-1); - thishost[sizeof(thishost)-1] = 0; + xstrncpy(thishost, tbuf, sizeof(thishost)); domain = index(tbuf, '.'); username = tty = hostname = NULL; @@ -590,14 +594,21 @@ main(int argc, char **argv) First get the username that we are actually using, though. */ retcode = pam_get_item(pamh, PAM_USER, (const void **) &username); - setpwent(); - pwd = getpwnam(username); + if (retcode == PAM_SUCCESS && username && *username) { + pwd = getpwnam(username); + } + + /* + * Initialize the supplementary group list. + * This should be done before pam_setcred because + * the PAM modules might add groups during pam_setcred. + */ if (pwd) initgroups(username, pwd->pw_gid); - retcode = pam_setcred(pamh, PAM_ESTABLISH_CRED); + retcode = pam_open_session(pamh, 0); PAM_FAIL_CHECK; - retcode = pam_open_session(pamh, 0); + retcode = pam_setcred(pamh, PAM_ESTABLISH_CRED); PAM_FAIL_CHECK; #else /* ! USE_PAM */ @@ -795,66 +806,6 @@ main(int argc, char **argv) } } -#ifndef __linux__ -# ifdef KERBEROS - if (notickets && !quietlog) - printf(_("Warning: no Kerberos tickets issued\n")); -# endif - -# ifndef USE_PAM /* PAM does all of this for us */ -# define TWOWEEKS (14*24*60*60) - if (pwd->pw_change || pwd->pw_expire) { - struct timeval tp; - - gettimeofday(&tp, (struct timezone *)NULL); - - if (pwd->pw_change) { - if (tp.tv_sec >= pwd->pw_change) { - printf(_("Sorry -- your password has expired.\n")); - sleepexit(1); - } - else if (tp.tv_sec - pwd->pw_change < TWOWEEKS && !quietlog) { - struct tm *ttp; - ttp = localtime(&pwd->pw_change); - printf(_("Warning: your password expires on %d %s %d.\n"), - ttp->tm_mday, months[ttp->tm_mon], - TM_YEAR_BASE + ttp->tm_year); - } - } - - if (pwd->pw_expire) { - if (tp.tv_sec >= pwd->pw_expire) { - printf(_("Sorry -- your account has expired.\n")); - sleepexit(1); - } - else if (tp.tv_sec - pwd->pw_expire < TWOWEEKS && !quietlog) { - struct tm *ttp; - ttp = localtime(&pwd->pw_expire); - printf(_("Warning: your account expires on %d %s %d.\n"), - ttp->tm_mday, months[ttp->tm_mon], - TM_YEAR_BASE + ttp->tm_year); - } - } - } -# endif /* !USE_PAM */ - - /* nothing else left to fail -- really log in */ - { - struct utmp utmp; - - memset((char *)&utmp, 0, sizeof(utmp)); - time(&utmp.ut_time); - strncpy(utmp.ut_name, username, sizeof(utmp.ut_name)); - /* ut_name may legally be non-null-terminated */ - if (hostname) { - strncpy(utmp.ut_host, hostname, sizeof(utmp.ut_host)); - utmp.ut_host[sizeof(utmp.ut_host)-1] = 0; - } - strncpy(utmp.ut_line, tty, sizeof(utmp.ut_line)); - utmp.ut_line[sizeof(utmp.ut_line)-1] = 0; - login(&utmp); - } -#else /* __linux__ defined */ /* for linux, write entries in utmp and wtmp */ { struct utmp ut; @@ -898,8 +849,7 @@ Michael Riepe <michael@stud.uni-hannover.de> strncpy(ut.ut_id, ttyn + 8, sizeof(ut.ut_id)); strncpy(ut.ut_user, username, sizeof(ut.ut_user)); - strncpy(ut.ut_line, ttyn + 5, sizeof(ut.ut_line)); - ut.ut_line[sizeof(ut.ut_line)-1] = 0; + xstrncpy(ut.ut_line, ttyn + 5, sizeof(ut.ut_line)); #ifdef _HAVE_UT_TV /* in <utmpbits.h> included by <utmp.h> */ gettimeofday(&ut.ut_tv, NULL); #else @@ -913,8 +863,7 @@ Michael Riepe <michael@stud.uni-hannover.de> ut.ut_type = USER_PROCESS; ut.ut_pid = mypid; if (hostname) { - strncpy(ut.ut_host, hostname, sizeof(ut.ut_host)); - ut.ut_host[sizeof(ut.ut_host)-1] = 0; + xstrncpy(ut.ut_host, hostname, sizeof(ut.ut_host)); if (hostaddress.h_addr_list) memcpy(&ut.ut_addr, hostaddress.h_addr_list[0], sizeof(ut.ut_addr)); @@ -923,7 +872,7 @@ Michael Riepe <michael@stud.uni-hannover.de> pututline(&ut); endutent(); -#if __GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1) +#ifdef HAVE_updwtmp updwtmp(_PATH_WTMP, &ut); #else #if 0 @@ -953,19 +902,11 @@ Michael Riepe <michael@stud.uni-hannover.de> } } #endif -#endif /* __GLIBC__ */ +#endif } -#endif /* __linux__ */ dolastlog(quietlog); -#ifndef __linux__ - if (!hflag) { /* XXX */ - static struct winsize win = { 0, 0, 0, 0 }; - - ioctl(0, TIOCSWINSZ, &win); - } -#endif chown(ttyn, pwd->pw_uid, (gr = getgrnam(TTYGRPNAME)) ? gr->gr_gid : pwd->pw_gid); chmod(ttyn, TTY_MODE); @@ -1012,17 +953,6 @@ Michael Riepe <michael@stud.uni-hannover.de> memset(environ, 0, sizeof(char*)); } -#ifndef __linux__ - setenv("HOME", pwd->pw_dir, 1); - setenv("SHELL", pwd->pw_shell, 1); - if (term[0] == '\0') { - strncpy(term, stypeof(tty), sizeof(term)); - term[sizeof(term)-1] = 0; - } - setenv("TERM", term, 0); - setenv("USER", pwd->pw_name, 1); - setenv("PATH", _PATH_DEFPATH, 0); -#else setenv("HOME", pwd->pw_dir, 0); /* legal to override */ if(pwd->pw_uid) setenv("PATH", _PATH_DEFPATH, 1); @@ -1046,7 +976,6 @@ Michael Riepe <michael@stud.uni-hannover.de> HP-UX 6.5 does it. We'll not allow modifying it. */ setenv("LOGNAME", pwd->pw_name, 1); -#endif #ifdef USE_PAM { @@ -1108,9 +1037,16 @@ Michael Riepe <michael@stud.uni-hannover.de> signal(SIGHUP, SIG_DFL); #ifdef USE_PAM - /* We must fork before setuid() because we need to call + /* + * We must fork before setuid() because we need to call * pam_close_session() as root. */ + /* + * Problem: if the user's shell is a shell like ash that doesnt do + * setsid() or setpgrp(), then a ctrl-\, sending SIGQUIT to every + * process in the pgrp, will kill us. + * Solution: use TIOCNOTTY and setsid(). + */ signal(SIGINT, SIG_IGN); childPid = fork(); if (childPid < 0) { @@ -1121,11 +1057,16 @@ Michael Riepe <michael@stud.uni-hannover.de> exit(0); } else if (childPid) { /* parent - wait for child to finish, then cleanup session */ + signal(SIGHUP, SIG_IGN); /* ignore signal from TIOCNOTTY */ + ioctl(0, TIOCNOTTY, NULL); + signal(SIGHUP, SIG_DFL); + wait(NULL); PAM_END; exit(0); } /* child */ + setsid(); #endif signal(SIGINT, SIG_DFL); @@ -1161,10 +1102,9 @@ Michael Riepe <michael@stud.uni-hannover.de> childArgv[childArgc++] = buff; } else { tbuf[0] = '-'; - strncpy(tbuf + 1, ((p = rindex(pwd->pw_shell, '/')) ? + xstrncpy(tbuf + 1, ((p = rindex(pwd->pw_shell, '/')) ? p + 1 : pwd->pw_shell), sizeof(tbuf)-1); - tbuf[sizeof(tbuf)-1] = 0; childArgv[childArgc++] = pwd->pw_shell; childArgv[childArgc++] = tbuf; @@ -1185,7 +1125,8 @@ Michael Riepe <michael@stud.uni-hannover.de> exit(0); } -void +#ifndef USE_PAM +static void getloginname(void) { int ch, cnt, cnt2; char *p; @@ -1229,6 +1170,7 @@ getloginname(void) { } } } +#endif void timedout(int sig) { @@ -1243,6 +1185,7 @@ timedout(int sig) { exit(0); } +#ifndef USE_PAM int rootterm(char * ttyn) #ifndef __linux__ @@ -1279,7 +1222,8 @@ rootterm(char * ttyn) } } } -#endif +#endif /* !__linux__ */ +#endif /* !USE_PAM */ jmp_buf motdinterrupt; @@ -1342,12 +1286,10 @@ dolastlog(int quiet) { } memset((char *)&ll, 0, sizeof(ll)); time(&ll.ll_time); - strncpy(ll.ll_line, tty, sizeof(ll.ll_line)); - ll.ll_line[sizeof(ll.ll_line)-1] = 0; - if (hostname) { - strncpy(ll.ll_host, hostname, sizeof(ll.ll_host)); - ll.ll_host[sizeof(ll.ll_host)-1] = 0; - } + xstrncpy(ll.ll_line, tty, sizeof(ll.ll_line)); + if (hostname) + xstrncpy(ll.ll_host, hostname, sizeof(ll.ll_host)); + write(fd, (char *)&ll, sizeof(ll)); close(fd); } diff --git a/login-utils/mesg.c b/login-utils/mesg.c index bfa17eb1..2b08d835 100644 --- a/login-utils/mesg.c +++ b/login-utils/mesg.c @@ -39,7 +39,7 @@ * Modified Mon Jul 1 18:14:10 1996, janl@ifi.uio.no, writing to stdout * as suggested by Michael Meskes <meskes@Informatik.RWTH-Aachen.DE> * - * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support * * diff --git a/login-utils/newgrp.c b/login-utils/newgrp.c index ade173e5..89db1754 100644 --- a/login-utils/newgrp.c +++ b/login-utils/newgrp.c @@ -3,7 +3,7 @@ /* Vesa Roukonen added code for asking password */ /* Currently maintained at ftp://ftp.daimi.aau.dk/pub/linux/poe/ */ -/* 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> +/* 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support */ diff --git a/login-utils/passwd.c b/login-utils/passwd.c index 6741ee21..d931d3b8 100644 --- a/login-utils/passwd.c +++ b/login-utils/passwd.c @@ -38,7 +38,7 @@ * auth.warning. (Of course, the password itself is not logged.) */ - /* 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + /* 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support * Sun Mar 21 1999 - Arnaldo Carvalho de Melo <acme@conectiva.com.br> * - fixed strerr(errno) in gettext calls @@ -68,6 +68,7 @@ #include "my_crypt.h" #include "setpwnam.h" #include "islocal.h" +#include "xstrncpy.h" #include "nls.h" #include "env.h" @@ -375,8 +376,7 @@ main(int argc, char *argv[]) { && !check_passwd(pwdstr, pe->pw_passwd, user, pe->pw_gecos) ) goto redo_it; - strncpy(pwdstr1, pwdstr, 9); - pwdstr1[9] = 0; + xstrncpy(pwdstr1, pwdstr, sizeof(pwdstr1)); pwdstr = getpass(_("Re-type new password: ")); if(strncmp(pwdstr, pwdstr1, 8)) { diff --git a/login-utils/setpwnam.h b/login-utils/setpwnam.h index 84d1c208..e7f44a94 100644 --- a/login-utils/setpwnam.h +++ b/login-utils/setpwnam.h @@ -22,6 +22,15 @@ #define GROUP_FILE _PATH_GROUP #define GTMP_FILE _PATH_GTMP #define GTMPTMP_FILE _PATH_GTMPTMP + +#define SHADOW_FILE _PATH_SHADOW_PASSWD +#define SPTMP_FILE _PATH_SHADOW_PTMP +#define SPTMPTMP_FILE _PATH_SHADOW_PTMPTMP + +#define SGROUP_FILE _PATH_SHADOW_GROUP +#define SGTMP_FILE _PATH_SHADOW_GTMP +#define SGTMPTMP_FILE _PATH_SHADOW_GTMPTMP + #else #define PASSWD_FILE "/tmp/passwd" #define PTMP_FILE "/tmp/ptmp" @@ -30,6 +39,14 @@ #define GROUP_FILE "/tmp/group" #define GTMP_FILE "/tmp/gtmp" #define GTMPTMP_FILE "/tmp/gtmptmp" + +#define SHADOW_FILE "/tmp/shadow" +#define SPTMP_FILE "/tmp/sptmp" +#define SPTMPTMP_FILE "/tmp/sptmptmp" + +#define SGROUP_FILE "/tmp/gshadow" +#define SGTMP_FILE "/tmp/sgtmp" +#define SGTMPTMP_FILE "/tmp/sgtmptmp" #endif extern int setpwnam (struct passwd *pwd); diff --git a/login-utils/shutdown.c b/login-utils/shutdown.c index d1034d5e..036064aa 100644 --- a/login-utils/shutdown.c +++ b/login-utils/shutdown.c @@ -28,7 +28,7 @@ * Changes by Richard Gooch <rgooch@atnf.csiro.au> (butchered by aeb) * introducing shutdown.conf. * - * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support * * 2000-03-02 Richard Gooch <rgooch@atnf.csiro.au> @@ -71,6 +71,7 @@ #include <sys/utsname.h> #include "linux_reboot.h" #include "pathnames.h" +#include "xstrncpy.h" #include "nls.h" static void usage(void), int_handler(int), write_user(struct utmp *); @@ -249,8 +250,7 @@ main(int argc, char *argv[]) exit(1); } } else { - strncpy(message, argv[c], sizeof(message)); - message[sizeof(message)-1] = '\0'; + xstrncpy(message, argv[c], sizeof(message)); opt_msgset = 1; } } diff --git a/login-utils/simpleinit.c b/login-utils/simpleinit.c index 9c4b63a5..56f10455 100644 --- a/login-utils/simpleinit.c +++ b/login-utils/simpleinit.c @@ -1,8 +1,14 @@ /* simpleinit.c - poe@daimi.aau.dk */ -/* Version 1.21 */ +/* Version 2.0.1 */ -/* 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> +/* 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support + * 2001-01-25 Richard Gooch <rgooch@atnf.csiro.au> + * - fixed bug with failed services so they may be later "reclaimed" + * 2001-02-02 Richard Gooch <rgooch@atnf.csiro.au> + * - fixed race when reading from pipe and reaping children + * 2001-02-18 sam@quux.dropbear.id.au + * - fixed bug in <get_path>: multiple INIT_PATH components did not work */ #include <sys/types.h> @@ -31,6 +37,7 @@ #include "my_crypt.h" #include "pathnames.h" #include "linux_reboot.h" +#include "xstrncpy.h" #include "nls.h" #include "simpleinit.h" @@ -77,7 +84,8 @@ static sigjmp_buf jmp_env; static void do_single (void); static int do_rc_tty (const char *path); -static int process_path ( const char *path, int (*func) (const char *path) ); +static int process_path (const char *path, int (*func) (const char *path), + int ignore_dangling_symlink); static int preload_file (const char *path); static int run_file (const char *path); static void spawn (int i), read_inittab (void); @@ -91,7 +99,7 @@ static void sigterm_handler (int sig); static void set_tz (void); #endif static void write_wtmp (void); -static pid_t mywaitpid (pid_t pid, int *status); +static pid_t mywait (int *status); static int run_command (const char *file, const char *name, pid_t pid); @@ -221,7 +229,7 @@ int main(int argc, char *argv[]) } for ever { - pid = mywaitpid (-1, &vec); + pid = mywait (&vec); if (pid < 1) continue; /* clear utmp entry, and append to wtmp if possible */ @@ -322,7 +330,7 @@ static int do_rc_tty (const char *path) sigset_t ss; if (caught_sigint) return 0; - process_path (path, preload_file); + process_path (path, preload_file, 0); /* Launch off a subprocess to start a new session (required for frobbing the TTY) and capture control-C */ switch ( child = fork () ) @@ -344,10 +352,10 @@ static int do_rc_tty (const char *path) break; } /* Parent */ - process_path (path, run_file); + process_path (path, run_file, 0); while (1) { - if ( ( pid = mywaitpid (-1, &status) ) == child ) + if ( ( pid = mywait (&status) ) == child ) return (WTERMSIG (status) == SIGINT) ? 0 : 1; if (pid < 0) break; } @@ -356,17 +364,27 @@ static int do_rc_tty (const char *path) return 0; } /* End Function do_rc_tty */ -static int process_path ( const char *path, int (*func) (const char *path) ) +static int process_path (const char *path, int (*func) (const char *path), + int ignore_dangling_symlink) { struct stat statbuf; DIR *dp; struct dirent *de; - if (stat (path, &statbuf) != 0) + if (lstat (path, &statbuf) != 0) { - err (_ ("stat of path failed\n") ); + err (_ ("lstat of path failed\n") ); return 1; } + if ( S_ISLNK (statbuf.st_mode) ) + { + if (stat (path, &statbuf) != 0) + { + if ( (errno == ENOENT) && ignore_dangling_symlink ) return 0; + err (_ ("stat of path failed\n") ); + return 1; + } + } if ( !( statbuf.st_mode & (S_IXUSR | S_IXGRP | S_IXOTH) ) ) return 0; if ( !S_ISDIR (statbuf.st_mode) ) return (*func) (path); if ( ( dp = opendir (path) ) == NULL ) @@ -382,7 +400,7 @@ static int process_path ( const char *path, int (*func) (const char *path) ) if (de->d_name[0] == '.') continue; retval = sprintf (newpath, "%s/%s", path, de->d_name); if (newpath[retval - 1] == '~') continue; /* Common mistake */ - if ( ( retval = process_path (newpath, func) ) ) return retval; + if ( ( retval = process_path (newpath, func, 1) ) ) return retval; } closedir (dp); return 0; @@ -545,11 +563,8 @@ static void read_inittab (void) (void) strcpy(inittab[i].line, buf); (void) strtok(inittab[i].line, ":"); - (void) strncpy(inittab[i].tty, inittab[i].line, 10); - inittab[i].tty[9] = 0; - (void) strncpy(inittab[i].termcap, - strtok((char *)0, ":"), 30); - inittab[i].termcap[29] = 0; + xstrncpy(inittab[i].tty, inittab[i].line, 10); + xstrncpy(inittab[i].termcap, strtok((char *)0, ":"), 30); getty = strtok((char *)0, ":"); (void) strtok(getty, " \t\n"); @@ -566,10 +581,8 @@ static void read_inittab (void) err(_("no TERM or cannot stat tty\n")); } else { /* is it a console tty? */ - if(major(stb.st_rdev) == 4 && minor(stb.st_rdev) < 64) { - strncpy(inittab[i].termcap, termenv, 30); - inittab[i].termcap[29] = 0; - } + if(major(stb.st_rdev) == 4 && minor(stb.st_rdev) < 64) + xstrncpy(inittab[i].termcap, termenv, 30); } #endif @@ -752,40 +765,40 @@ static void show_scripts (FILE *fp, const struct script_struct *script, static const char *get_path (const char *file); -static pid_t mywaitpid (pid_t pid, int *status) +static pid_t mywait (int *status) /* [RETURNS] The pid for a process to be reaped, 0 if no process is to be reaped, and less than 0 if the boot scripts appear to have finished. */ { - int ival; - sigset_t ss_new, ss_old; + pid_t pid; + sigset_t ss; long buffer[COMMAND_SIZE / sizeof (long)]; struct command_struct *command = (struct command_struct *) buffer; - if (initctl_fd < 0) return waitpid (pid, status, 0); - if (status == NULL) status = &ival; - if ( ( pid = waitpid (pid, status, WNOHANG) ) > 0 ) - { - return process_pidstat (pid, *status); - } - /* Some magic to avoid races */ + if (initctl_fd < 0) return wait (status); + /* Some magic to avoid races which can result in lost signals */ command->command = -1; - sigemptyset (&ss_new); - sigaddset (&ss_new, SIGCHLD); - sigprocmask (SIG_BLOCK, &ss_new, &ss_old); - ival = sigsetjmp (jmp_env, 0); - sigprocmask (SIG_SETMASK, &ss_old, NULL); - if (ival == 0) do_longjmp = 1; - else - { + if ( sigsetjmp (jmp_env, 1) ) + { /* Jump from signal handler */ do_longjmp = 0; - if (command->command < 0) return 0; + process_command (command); + return 0; + } + sigemptyset (&ss); /* Block SIGCHLD so wait status cannot be lost */ + sigaddset (&ss, SIGCHLD); + sigprocmask (SIG_BLOCK, &ss, NULL); + if ( ( pid = waitpid (-1, status, WNOHANG) ) > 0 ) + { + sigprocmask (SIG_UNBLOCK, &ss, NULL); + return process_pidstat (pid, *status); } - if (command->command < 0) read (initctl_fd, buffer, COMMAND_SIZE); + do_longjmp = 1; /* After this, SIGCHLD will cause a jump backwards */ + sigprocmask (SIG_UNBLOCK, &ss, NULL); + read (initctl_fd, buffer, COMMAND_SIZE); do_longjmp = 0; process_command (command); return 0; -} /* End Function mywaitpid */ +} /* End Function mywait */ static pid_t process_pidstat (pid_t pid, int status) /* [RETURNS] The pid for a process to be reaped, 0 if no process is to be @@ -978,7 +991,7 @@ static int run_command (const char *file, const char *name, pid_t pid) script = find_script_byname (name, &starting_list, &service); if (script == NULL) service = find_service_in_list (name, unavailable_services); - if (script == NULL) + if (service == NULL) { int i; char txt[1024]; @@ -988,24 +1001,13 @@ static int run_command (const char *file, const char *name, pid_t pid) if (needer != NULL) free (needer); return SIG_FAILED; } + service = calloc (1, strlen (name) + sizeof *service); if (service == NULL) { - service = calloc (1, strlen (name) + sizeof *service); - if (service == NULL) - { - free (script); - return SIG_FAILED; - } - strcpy (service->name, name); - } - else /* Unhook service from unavailable list */ - { - if (service->prev == NULL) unavailable_services = service->next; - else service->prev->next = service->next; - if (service->next != NULL) service->next->prev = service->prev; - service->prev = NULL; - service->next = NULL; + free (script); + return SIG_FAILED; } + strcpy (service->name, name); switch ( script->pid = fork () ) { case 0: /* Child */ @@ -1063,6 +1065,7 @@ static struct script_struct *find_script_byname (const char *name, return (script); } } + if (service != NULL) *service = NULL; return NULL; } /* End Function find_script_byname */ @@ -1121,6 +1124,7 @@ static void handle_nonworking (struct script_struct *script) next = service->next; if (provider == NULL) { + service->prev = NULL; service->next = unavailable_services; if (unavailable_services != NULL) unavailable_services->prev = service; @@ -1180,7 +1184,7 @@ static const char *get_path (const char *file) p2 = p1 + strlen (p1); strncpy (path, p1, p2 - p1); path[p2 - p1] = '/'; - strcat (path + (p2 - p1) + 1, file); + strcpy (path + (p2 - p1) + 1, file); if (*p2 == ':') ++p2; if (access (path, X_OK) == 0) return path; } diff --git a/login-utils/ttymsg.c b/login-utils/ttymsg.c index b422abb8..55b26a82 100644 --- a/login-utils/ttymsg.c +++ b/login-utils/ttymsg.c @@ -34,7 +34,7 @@ * */ - /* 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + /* 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support * Sun Mar 21 1999 - Arnaldo Carvalho de Melo <acme@conectiva.com.br> * - fixed strerr(errno) in gettext calls diff --git a/login-utils/vipw.c b/login-utils/vipw.c index 665d77da..f6133ac9 100644 --- a/login-utils/vipw.c +++ b/login-utils/vipw.c @@ -38,7 +38,7 @@ * * Martin Schulze's patches adapted to Util-Linux by Nicolai Langfeldt. * - * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support * Sun Mar 21 1999 - Arnaldo Carvalho de Melo <acme@conectiva.com.br> * - fixed strerr(errno) in gettext calls @@ -64,6 +64,7 @@ static char version_string[] = "vipw 1.4"; #include <unistd.h> #include "setpwnam.h" +#include "xstrncpy.h" #include "nls.h" #define FILENAMELEN 67 @@ -132,13 +133,6 @@ pw_lock(void) { * that users can't get at the encrypted passwords while editing. * Open should allow flock'ing the file; see 4.4BSD. XXX */ - lockfd = open(orig_file, O_RDONLY, 0); - - if (lockfd < 0) { - (void)fprintf(stderr, "%s: %s: %s\n", - progname, orig_file, strerror(errno)); - exit(1); - } #if 0 /* flock()ing is superfluous here, with the ptmp/ptmptmp system. */ if (flock(lockfd, LOCK_EX|LOCK_NB)) { (void)fprintf(stderr, @@ -169,6 +163,16 @@ pw_lock(void) { } exit(1); } + + lockfd = open(orig_file, O_RDONLY, 0); + + if (lockfd < 0) { + (void)fprintf(stderr, "%s: %s: %s\n", + progname, orig_file, strerror(errno)); + unlink(tmp_file); + exit(1); + } + copyfile(lockfd, fd); (void)close(lockfd); (void)close(fd); @@ -253,9 +257,28 @@ pw_error(name, err, eval) exit(eval); } +static void +edit_file(void) +{ + struct stat begin, end; + + pw_init(); + pw_lock(); + + if (stat(tmp_file, &begin)) + pw_error(tmp_file, 1, 1); + pw_edit(0); + if (stat(tmp_file, &end)) + pw_error(tmp_file, 1, 1); + if (begin.st_mtime == end.st_mtime) { + (void)fprintf(stderr, _("%s: no changes made\n"), progname); + pw_error((char *)NULL, 0, 0); + } + pw_unlock(); +} + int main(int argc, char *argv[]) { - struct stat begin, end; setlocale(LC_ALL, ""); bindtextdomain(PACKAGE, LOCALEDIR); @@ -265,15 +288,14 @@ int main(int argc, char *argv[]) progname = (rindex(argv[0], '/')) ? rindex(argv[0], '/') + 1 : argv[0]; if (!strcmp(progname, "vigr")) { program = VIGR; - strncpy(orig_file, GROUP_FILE, FILENAMELEN-1); - strncpy(tmp_file, GTMP_FILE, FILENAMELEN-1); - strncpy(tmptmp_file, GTMPTMP_FILE, FILENAMELEN-1); - } - else { + xstrncpy(orig_file, GROUP_FILE, sizeof(orig_file)); + xstrncpy(tmp_file, GTMP_FILE, sizeof(tmp_file)); + xstrncpy(tmptmp_file, GTMPTMP_FILE, sizeof(tmptmp_file)); + } else { program = VIPW; - strncpy(orig_file, PASSWD_FILE, FILENAMELEN-1); - strncpy(tmp_file, PTMP_FILE, FILENAMELEN-1); - strncpy(tmptmp_file, PTMPTMP_FILE, FILENAMELEN-1); + xstrncpy(orig_file, PASSWD_FILE, sizeof(orig_file)); + xstrncpy(tmp_file, PTMP_FILE, sizeof(tmp_file)); + xstrncpy(tmptmp_file, PTMPTMP_FILE, sizeof(tmptmp_file)); } if ((argc > 1) && @@ -282,18 +304,32 @@ int main(int argc, char *argv[]) exit(0); } - pw_init(); - pw_lock(); - - if (stat(tmp_file, &begin)) - pw_error(tmp_file, 1, 1); - pw_edit(0); - if (stat(tmp_file, &end)) - pw_error(tmp_file, 1, 1); - if (begin.st_mtime == end.st_mtime) { - (void)fprintf(stderr, _("%s: no changes made\n"), progname); - pw_error((char *)NULL, 0, 0); + edit_file(); + + if (program == VIGR) { + strncpy(orig_file, SGROUP_FILE, FILENAMELEN-1); + strncpy(tmp_file, SGTMP_FILE, FILENAMELEN-1); + strncpy(tmptmp_file, SGTMPTMP_FILE, FILENAMELEN-1); + } else { + strncpy(orig_file, SHADOW_FILE, FILENAMELEN-1); + strncpy(tmp_file, SPTMP_FILE, FILENAMELEN-1); + strncpy(tmptmp_file, SPTMPTMP_FILE, FILENAMELEN-1); } - pw_unlock(); + + if (!access(orig_file, X_OK)) { + char response[80]; + + printf((program == VIGR) + ? _("You are using shadow groups on this system.\n") + : _("You are using shadow passwords on this system.\n")); + printf(_("Would you like to edit %s now [y/n]? "), orig_file); + + /* EOF means no */ + if (fgets(response, sizeof(response), stdin)) { + if (response[0] == 'y' || response[0] == 'Y') + edit_file(); + } + } + exit(0); } diff --git a/login-utils/wall.c b/login-utils/wall.c index 6840015d..3a13fe7b 100644 --- a/login-utils/wall.c +++ b/login-utils/wall.c @@ -37,7 +37,7 @@ * This program is not related to David Wall, whose Stanford Ph.D. thesis * is entitled "Mechanisms for Broadcast and Selective Broadcast". * - * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support * */ @@ -53,10 +53,12 @@ #include <stdio.h> #include <stdlib.h> #include <string.h> +#include <time.h> #include <unistd.h> #include <utmp.h> #include "nls.h" +#include "xstrncpy.h" #include "ttymsg.h" #include "pathnames.h" #include "carefulputc.h" @@ -115,14 +117,14 @@ usage: iov.iov_len = mbufsize; while((utmpptr = getutent())) { if (!utmpptr->ut_name[0] || - !strncmp(utmpptr->ut_name, IGNOREUSER, sizeof(utmpptr->ut_name))) + !strncmp(utmpptr->ut_name, IGNOREUSER, + sizeof(utmpptr->ut_name))) continue; #ifdef USER_PROCESS if (utmpptr->ut_type != USER_PROCESS) continue; #endif - strncpy(line, utmpptr->ut_line, sizeof(utmpptr->ut_line)); - line[sizeof(utmpptr->ut_line)-1] = '\0'; + xstrncpy(line, utmpptr->ut_line, sizeof(utmpptr->ut_line)); if ((p = ttymsg(&iov, 1, line, 60*5)) != NULL) (void)fprintf(stderr, "%s: %s\n", progname, p); } diff --git a/misc-utils/Makefile b/misc-utils/Makefile index 5b74dd39..9fedca66 100644 --- a/misc-utils/Makefile +++ b/misc-utils/Makefile @@ -21,7 +21,7 @@ BIN= kill USRBIN= cal chkdupexe ddate logger look mcookie \ namei rename script whereis write -MAYBE= reset setterm tsort +MAYBE= reset setterm ifeq "$(HAVE_RESET)" "no" USRBIN:=$(USRBIN) reset @@ -33,11 +33,6 @@ USRBIN:=$(USRBIN) setterm MAN1:=$(MAN1) setterm.1 endif -ifeq "$(HAVE_TSORT)" "no" -USRBIN:=$(USRBIN) tsort -MAN1:=$(MAN1) tsort.1 -endif - # For script only LIBPTY= ifeq "$(HAVE_OPENPTY)" "yes" diff --git a/misc-utils/cal.c b/misc-utils/cal.c index aba1b6f0..768b0a51 100644 --- a/misc-utils/cal.c +++ b/misc-utils/cal.c @@ -36,7 +36,7 @@ /* 1999-02-01 Jean-Francois Bignolles: added option '-m' to display * monday as the first day of the week. - * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support * * 2000-09-01 Michael Charles Pruznick <dummy@netwiz.net> diff --git a/misc-utils/ddate.c b/misc-utils/ddate.c index bf7a37f2..c36f9be3 100644 --- a/misc-utils/ddate.c +++ b/misc-utils/ddate.c @@ -26,7 +26,7 @@ 59 Bcy, 3161: PRAISE_BOB and KILL_BOB options split, other minor changes. - 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> - added Native Language Support 2000-03-17 Burt Holzman <bnh@iname.com> diff --git a/misc-utils/flushb.c b/misc-utils/flushb.c new file mode 100644 index 00000000..34ef9cf6 --- /dev/null +++ b/misc-utils/flushb.c @@ -0,0 +1,5 @@ +/* + * Some people submit a utility flushb.c. + * However, it is useless, BLKFLSBUF is already part of blockdev, + * so that "flushb device" is the same as "blockdev --flushbufs device". + */ diff --git a/misc-utils/kill.1 b/misc-utils/kill.1 index f4fd6436..78fd8bbc 100644 --- a/misc-utils/kill.1 +++ b/misc-utils/kill.1 @@ -5,64 +5,83 @@ .SH NAME kill \- terminate a process .SH SYNOPSIS -.BR "kill" " [ \-s signal | \-p ] " " [ -a ] " "pid ..." +.BI "kill [ \-s " signal " | \-p ] [ \-a ] [ \-\- ] " "pid ..." .br -.B "kill -l [ signal ]" +.BI "kill -l [ " signal " ]" .SH DESCRIPTION +The command .B kill -sends the specified signal to the specified process. If no signal is -specified, the TERM signal is sent. The TERM signal will kill processes -which do not catch this signal. For other processes, if may be necessary -to use the KILL (9) signal, since this signal cannot be caught. - -Most modern shells have a builtin kill function. +sends the specified signal to the specified process or process group. +If no signal is specified, the TERM signal is sent. The TERM signal +will kill processes which do not catch this signal. For other processes, +it may be necessary to use the KILL (9) signal, since this signal cannot +be caught. +.PP +Most modern shells have a builtin kill function, with a usage rather similar +to that of the command described here. The `-a' and `-p' options, +and the possibility to specify pids by command name is a local extension. .SH OPTIONS .TP -.BR "pid ..." +.IR pid ... Specify the list of processes that .B kill should signal. Each .I pid -can be one of four things. A -.I "process name" -in which case processes called that will be signaled. +can be one of five things: + +.RS +.TP .I n where .I n is larger than 0. The process with pid .I n will be signaled. -.I -1 -in which case all processes from MAX_INT to 2 will be signaled, -as allowed by the issuing user. -.I -n +.TP +.B 0 +All processes in the current process group are signaled. +.TP +.B -1 +All processes with pid larger than 1 will be signaled. +.TP +.BI - n where .I n -is larger than 1, in which case processes in process group +is larger than 1. +All processes in process group .I n -are signaled. IFF a negative argument is given the signal -.I must -be specified first, otherwise it will be taken as the signal to send. +are signaled. When an argument of the form `-n' is given, +and it is meant to denote a process group, +either the signal must be specified first, or the argument must be preceded +by a `--' option, otherwise it will be taken as the signal to send. +.TP +.I commandname +All processes invoked using that name will be signaled. +.RE .TP -.BR \-s +.BI \-s " signal" Specify the signal to send. The signal may be given as a signal name or number. .TP -.BR \-p -Specify that -.B kill -should only print the process id -.I (pid) -of the named process, and should not send it a signal. -.TP -.BR \-l +.B \-l Print a list of signal names. These are found in .I /usr/include/linux/signal.h +.TP +.B \-a +Do not restrict the commandname-to-pid conversion to processes +with the same uid as the present process. +.TP +.B \-p +Specify that +.B kill +should only print the process id (pid) +of the named processes, and not send any signals. .SH "SEE ALSO" .BR bash (1), .BR tcsh (1), .BR kill (2), -.BR sigvec (2) +.BR sigvec (2), +.BR signal (7) .SH AUTHOR Taken from BSD 4.4. The ability to translate process names to process ids was added by Salvatore Valente <svalente@mit.edu>. diff --git a/misc-utils/kill.c b/misc-utils/kill.c index ea4e4682..65100236 100644 --- a/misc-utils/kill.c +++ b/misc-utils/kill.c @@ -35,7 +35,7 @@ * modifications (c) salvatore valente <svalente@mit.edu> * may be used / modified / distributed under the same terms as the original. * - * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support * * 1999-11-13 aeb Accept signal numers 128+s. @@ -149,12 +149,12 @@ int kill_verbose (char *procname, int pid, int sig); extern int *get_pids (char *, int); -char *whoami; +static char *progname; int main (int argc, char *argv[]) { int errors, numsig, pid; - char *ep, *arg, *progname, *p; + char *ep, *arg, *p; int do_pid, do_kill, check_all; int *pids, *ip; @@ -166,9 +166,8 @@ int main (int argc, char *argv[]) bindtextdomain(PACKAGE, LOCALEDIR); textdomain(PACKAGE); - whoami = mybasename (*argv); numsig = SIGTERM; - do_pid = (! strcmp (whoami, "pid")); + do_pid = (! strcmp (progname, "pid")); /* Yecch */ do_kill = 0; check_all = 0; @@ -184,9 +183,6 @@ int main (int argc, char *argv[]) argc--, argv++; break; } - if (! strcmp (arg, "-u")) { - return usage (0); - } if (! strcmp (arg, "-v") || ! strcmp (arg, "-V") || ! strcmp (arg, "--version")) { printf(_("%s from %s\n"), progname, util_linux_version); @@ -207,7 +203,7 @@ int main (int argc, char *argv[]) /* argc == 2, accept "kill -l $?" */ arg = argv[1]; if ((numsig = arg_to_signum (arg, 1)) < 0) { - fprintf (stderr, _("%s: unknown signal %s\n"), whoami, arg); + fprintf (stderr, _("%s: unknown signal %s\n"), progname, arg); return 1; } printsig (numsig); @@ -238,6 +234,7 @@ int main (int argc, char *argv[]) so it's probably something like -HUP, or -1/-n try to deal with it. -n could be signal n, or pid -n (i.e. process group n). + In case of doubt POSIX tells us to assume a signal. If a signal has been parsed, assume it's a pid, break */ if (do_kill) break; @@ -270,7 +267,7 @@ int main (int argc, char *argv[]) if (! pids) { errors++; fprintf (stderr, _("%s: can't find process \"%s\"\n"), - whoami, arg); + progname, arg); continue; } for (ip = pids; *ip >= 0; ip++) @@ -313,7 +310,7 @@ int arg_to_signum (char *arg, int maskbit) void nosig (char *name) { - fprintf (stderr, _("%s: unknown signal %s; valid signals:\n"), whoami, name); + fprintf (stderr, _("%s: unknown signal %s; valid signals:\n"), progname, name); printsignals (stderr); } @@ -353,8 +350,8 @@ int usage (int status) FILE *fp; fp = (status == 0 ? stdout : stderr); - fprintf (fp, _("usage: %s [ -s signal | -p ] [ -a ] pid ...\n"), whoami); - fprintf (fp, _(" %s -l [ signal ]\n"), whoami); + fprintf (fp, _("usage: %s [ -s signal | -p ] [ -a ] pid ...\n"), progname); + fprintf (fp, _(" %s -l [ signal ]\n"), progname); return status; } @@ -365,7 +362,7 @@ int kill_verbose (char *procname, int pid, int sig) return 0; } if (kill (pid, sig) < 0) { - fprintf (stderr, "%s ", whoami); + fprintf (stderr, "%s ", progname); perror (procname); return 1; } diff --git a/misc-utils/logger.c b/misc-utils/logger.c index ae0ebec0..e0057873 100644 --- a/misc-utils/logger.c +++ b/misc-utils/logger.c @@ -30,7 +30,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support * Sun Mar 21 1999 - Arnaldo Carvalho de Melo <acme@conectiva.com.br> * - fixed strerr(errno) in gettext calls diff --git a/misc-utils/look.c b/misc-utils/look.c index d601e1c9..f3b4ba51 100644 --- a/misc-utils/look.c +++ b/misc-utils/look.c @@ -34,7 +34,7 @@ * SUCH DAMAGE. */ - /* 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + /* 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support */ diff --git a/misc-utils/mcookie.c b/misc-utils/mcookie.c index 9f13b49d..6930745b 100644 --- a/misc-utils/mcookie.c +++ b/misc-utils/mcookie.c @@ -14,7 +14,7 @@ * gather 128 bits of random information, so the magic cookie generated * will be considerably easier to guess than one might expect. * - * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support * 1999-03-21 aeb: Added some fragments of code from Colin Plumb. * diff --git a/misc-utils/namei.c b/misc-utils/namei.c index f77d501c..783c5b9b 100644 --- a/misc-utils/namei.c +++ b/misc-utils/namei.c @@ -39,7 +39,7 @@ the maximum number of symbolic links this system can have. The program exits with a 1 status ONLY if it finds it cannot chdir to /, or if it encounters an unknown file type. -1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> +1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> - added Native Language Support -------------------------------------------------------------*/ diff --git a/misc-utils/script.c b/misc-utils/script.c index c3bf142e..951fc763 100644 --- a/misc-utils/script.c +++ b/misc-utils/script.c @@ -32,7 +32,7 @@ */ /* - * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support * * 2000-07-30 Per Andreas Buer <per@linpro.no> - added "q"-option diff --git a/misc-utils/setterm.c b/misc-utils/setterm.c index 92161d01..2e265fc5 100644 --- a/misc-utils/setterm.c +++ b/misc-utils/setterm.c @@ -16,7 +16,7 @@ * * Converted to terminfo by Kars de Jong (jongk@cs.utwente.nl) * - * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support * * @@ -859,17 +859,17 @@ perform_sequence(int vcterm) { /* -snow [on|off]. Vc only. */ if (opt_snow && vcterm) { if (opt_sn_on) - printf("%s%s%s", DCS, _("snow.on"), ST); + printf("%s%s%s", DCS, "snow.on", ST); else - printf("%s%s%s", DCS, _("snow.off"), ST); + printf("%s%s%s", DCS, "snow.off", ST); } /* -softscroll [on|off]. Vc only. */ if (opt_softscroll && vcterm) { if (opt_so_on) - printf("%s%s%s", DCS, _("softscroll.on"), ST); + printf("%s%s%s", DCS, "softscroll.on", ST); else - printf("%s%s%s", DCS, _("softscroll.off"), ST); + printf("%s%s%s", DCS, "softscroll.off", ST); } #endif @@ -1165,6 +1165,7 @@ try_ioctl: } rows = screenbuf[0]; cols = screenbuf[1]; + for (i=0; i<rows; i++) { strncpy(buf, screenbuf+2+(cols*i), cols); buf[cols] = '\0'; diff --git a/misc-utils/tsort.1 b/misc-utils/tsort.1 deleted file mode 100644 index 72ea964a..00000000 --- a/misc-utils/tsort.1 +++ /dev/null @@ -1,74 +0,0 @@ -.\" Copyright (c) 1990 The Regents of the University of California. -.\" All rights reserved. -.\" -.\" This manual is derived from one contributed to Berkeley by -.\" Michael Rendell of Memorial University of Newfoundland. -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. All advertising materials mentioning features or use of this software -.\" must display the following acknowledgement: -.\" This product includes software developed by the University of -.\" California, Berkeley and its contributors. -.\" 4. Neither the name of the University nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -.\" SUCH DAMAGE. -.\" -.\" @(#)tsort.1 6.3 (Berkeley) 4/23/91 -.\" -.Dd April 23, 1991 -.Dt TSORT 1 -.Os -.Sh NAME -.Nm tsort -.Nd topological sort of a directed graph -.Sh SYNOPSIS -.Nm tsort -.Op Ar file -.Sh DESCRIPTION -.Nm Tsort -takes a list of pairs of node names representing directed arcs in -a graph and prints the nodes in topological order on standard output. -Input is taken from the named -.Ar file , -or from standard input if no file -is given. -.Pp -Node names in the input are separated by white space and there must be an -even number of nodes. -.Pp -Presence of a node in a graph can be represented by an arc from the node -to itself. -This is useful when a node is not connected to any other nodes. -.Pp -If the graph contains a cycle (and therefore cannot be properly sorted), -one of the arcs in the cycle is ignored and the sort continues. -Cycles are reported on standard error. -.Sh SEE ALSO -.Xr ar 1 -.Sh HISTORY -A -.Nm -command appeared in -.At v7 . -This -.Nm tsort -command and manual page are derived from sources contributed to Berkeley by -Michael Rendell of Memorial University of Newfoundland. diff --git a/misc-utils/tsort.c b/misc-utils/tsort.c deleted file mode 100644 index b97b1a03..00000000 --- a/misc-utils/tsort.c +++ /dev/null @@ -1,376 +0,0 @@ -/* - * Copyright (c) 1989 The Regents of the University of California. - * All rights reserved. - * - * This code is derived from software contributed to Berkeley by - * Michael Rendell of Memorial University of Newfoundland. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - - /* 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> - * - added Native Language Support - */ - -#include <sys/types.h> -#include <stdlib.h> -#include <errno.h> -#include <stdio.h> -#include <ctype.h> -#include <string.h> -#include "nls.h" - -/* - * Topological sort. Input is a list of pairs of strings seperated by - * white space (spaces, tabs, and/or newlines); strings are written to - * standard output in sorted order, one per line. - * - * usage: - * tsort [inputfile] - * If no input file is specified, standard input is read. - * - * Should be compatable with AT&T tsort HOWEVER the output is not identical - * (i.e. for most graphs there is more than one sorted order, and this tsort - * usually generates a different one then the AT&T tsort). Also, cycle - * reporting seems to be more accurate in this version (the AT&T tsort - * sometimes says a node is in a cycle when it isn't). - * - * Michael Rendell, michael@stretch.cs.mun.ca - Feb 26, '90 - */ -#define HASHSIZE 53 /* doesn't need to be big */ -#define NF_MARK 0x1 /* marker for cycle detection */ -#define NF_ACYCLIC 0x2 /* this node is cycle free */ - -typedef struct node_str NODE; - -struct node_str { - char *n_name; /* name of this node */ - NODE **n_prevp; /* pointer to previous node's n_next */ - NODE *n_next; /* next node in graph */ - NODE *n_hash; /* next node in hash table */ - int n_narcs; /* number of arcs in n_arcs[] */ - int n_arcsize; /* size of n_arcs[] array */ - NODE **n_arcs; /* array of arcs to other nodes */ - int n_refcnt; /* # of arcs pointing to this node */ - int n_flags; /* NF_* */ -}; - -typedef struct _buf { - char *b_buf; - int b_bsize; -} BUF; - -NODE *add_node(char *), *find_node(char *); -void add_arc(char *, char *), no_memory(void); -void remove_node(NODE *), tsort(void); -char *grow_buf(char *, int); -int find_cycle(NODE *, NODE *, int, int); - -NODE *graph; -NODE *hashtable[HASHSIZE]; -NODE **cycle_buf; -NODE **longest_cycle; - -int -main(int argc, char **argv) { - BUF *b; - int c, n; - FILE *fp; - int bsize, nused; - BUF bufs[2]; - - setlocale(LC_ALL, ""); - bindtextdomain(PACKAGE, LOCALEDIR); - textdomain(PACKAGE); - - if (argc < 2) - fp = stdin; - /* == becomes > in next line per Volker Meyer_zu_Bexten - <vmzb@ims.fhg.de> -- faith@cs.unc.edu, Sat Feb 4 21:25:09 1995 */ - else if (argc > 2) { - (void)fprintf(stderr, _("usage: tsort [ inputfile ]\n")); - exit(1); - } else if (!(fp = fopen(argv[1], "r"))) { - (void)fprintf(stderr, "tsort: %s.\n", strerror(errno)); - exit(1); - } - - for (b = bufs, n = 2; --n >= 0; b++) - b->b_buf = grow_buf((char *)NULL, b->b_bsize = 1024); - - /* parse input and build the graph */ - for (n = 0, c = getc(fp);;) { - while (c != EOF && isspace(c)) - c = getc(fp); - if (c == EOF) - break; - - nused = 0; - b = &bufs[n]; - bsize = b->b_bsize; - do { - b->b_buf[nused++] = c; - if (nused == bsize) { - bsize *= 2; - b->b_buf = grow_buf(b->b_buf, bsize); - } - c = getc(fp); - } while (c != EOF && !isspace(c)); - - b->b_buf[nused] = '\0'; - b->b_bsize = bsize; - if (n) - add_arc(bufs[0].b_buf, bufs[1].b_buf); - n = !n; - } - (void)fclose(fp); - if (n) { - (void)fprintf(stderr, _("tsort: odd data count.\n")); - exit(1); - } - - /* do the sort */ - tsort(); - return 0; -} - -/* double the size of oldbuf and return a pointer to the new buffer. */ -char * -grow_buf(char *bp, int size) { - if (!(bp = realloc(bp, (u_int)size))) - no_memory(); - return(bp); -} - -/* - * add an arc from node s1 to node s2 in the graph. If s1 or s2 are not in - * the graph, then add them. - */ -void -add_arc(char *s1, char *s2) { - NODE *n1; - NODE *n2; - int bsize; - - n1 = find_node(s1); - if (!n1) - n1 = add_node(s1); - - if (!strcmp(s1, s2)) - return; - - n2 = find_node(s2); - if (!n2) - n2 = add_node(s2); - - /* - * could check to see if this arc is here already, but it isn't - * worth the bother -- there usually isn't and it doesn't hurt if - * there is (I think :-). - */ - if (n1->n_narcs == n1->n_arcsize) { - if (!n1->n_arcsize) - n1->n_arcsize = 10; - bsize = n1->n_arcsize * sizeof(*n1->n_arcs) * 2; - n1->n_arcs = (NODE **)grow_buf((char *)n1->n_arcs, bsize); - n1->n_arcsize = bsize / sizeof(*n1->n_arcs); - } - n1->n_arcs[n1->n_narcs++] = n2; - ++n2->n_refcnt; -} - -static int -hash_string(char *s) { - int hash, i; - - for (hash = 0, i = 1; *s; s++, i++) - hash += *s * i; - return(hash % HASHSIZE); -} - -/* - * find a node in the graph and return a pointer to it - returns null if not - * found. - */ -NODE * -find_node(char *name) { - NODE *n; - - for (n = hashtable[hash_string(name)]; n; n = n->n_hash) - if (!strcmp(n->n_name, name)) - return(n); - return((NODE *)NULL); -} - -/* Add a node to the graph and return a pointer to it. */ -NODE * -add_node(char *name) { - NODE *n; - int hash; - - if (!(n = (NODE *)malloc(sizeof(NODE))) || !(n->n_name = strdup(name))) - no_memory(); - - n->n_narcs = 0; - n->n_arcsize = 0; - n->n_arcs = (NODE **)NULL; - n->n_refcnt = 0; - n->n_flags = 0; - - /* add to linked list */ - if ((n->n_next = graph) != NULL) - graph->n_prevp = &n->n_next; - n->n_prevp = &graph; - graph = n; - - /* add to hash table */ - hash = hash_string(name); - n->n_hash = hashtable[hash]; - hashtable[hash] = n; - return(n); -} - -/* do topological sort on graph */ -void -tsort(void) { - NODE *n, *next; - int cnt; - - while (graph) { - /* - * keep getting rid of simple cases until there are none left, - * if there are any nodes still in the graph, then there is - * a cycle in it. - */ - do { - for (cnt = 0, n = graph; n; n = next) { - next = n->n_next; - if (n->n_refcnt == 0) { - remove_node(n); - ++cnt; - } - } - } while (graph && cnt); - - if (!graph) - break; - - if (!cycle_buf) { - /* - * allocate space for two cycle logs - one to be used - * as scratch space, the other to save the longest - * cycle. - */ - for (cnt = 0, n = graph; n; n = n->n_next) - ++cnt; - cycle_buf = - (NODE **)malloc((u_int)sizeof(NODE *) * cnt); - longest_cycle = - (NODE **)malloc((u_int)sizeof(NODE *) * cnt); - if (!cycle_buf || !longest_cycle) - no_memory(); - } - for (n = graph; n; n = n->n_next) - if (!(n->n_flags & NF_ACYCLIC)) { - if ((cnt = find_cycle(n, n, 0, 0)) != 0) { - int i; - - (void)fprintf(stderr, - _("tsort: cycle in data.\n")); - for (i = 0; i < cnt; i++) - (void)fprintf(stderr, - "tsort: %s.\n", longest_cycle[i]->n_name); - remove_node(n); - break; - } else - /* to avoid further checks */ - n->n_flags = NF_ACYCLIC; - } - - if (!n) { - (void)fprintf(stderr, - _("tsort: internal error -- could not find cycle.\n")); - exit(1); - } - } -} - -/* print node and remove from graph (does not actually free node) */ -void -remove_node(NODE *n) { - NODE **np; - int i; - - (void)printf("%s\n", n->n_name); - for (np = n->n_arcs, i = n->n_narcs; --i >= 0; np++) - --(*np)->n_refcnt; - n->n_narcs = 0; - *n->n_prevp = n->n_next; - if (n->n_next) - n->n_next->n_prevp = n->n_prevp; -} - -/* look for the longest cycle from node from to node to. */ -int -find_cycle(NODE *from, NODE *to, int longest_len, int depth) { - NODE **np; - int i, len; - - /* - * avoid infinite loops and ignore portions of the graph known - * to be acyclic - */ - if (from->n_flags & (NF_MARK|NF_ACYCLIC)) - return(0); - from->n_flags = NF_MARK; - - for (np = from->n_arcs, i = from->n_narcs; --i >= 0; np++) { - cycle_buf[depth] = *np; - if (*np == to) { - if (depth + 1 > longest_len) { - longest_len = depth + 1; - (void)memcpy((char *)longest_cycle, - (char *)cycle_buf, - longest_len * sizeof(NODE *)); - } - } else { - len = find_cycle(*np, to, longest_len, depth + 1); - if (len > longest_len) - longest_len = len; - } - } - from->n_flags &= ~NF_MARK; - return(longest_len); -} - -void -no_memory(void) { - (void)fprintf(stderr, "tsort: %s.\n", strerror(ENOMEM)); - exit(1); -} diff --git a/misc-utils/whereis.c b/misc-utils/whereis.c index 239b1f4a..385cbf41 100644 --- a/misc-utils/whereis.c +++ b/misc-utils/whereis.c @@ -33,7 +33,7 @@ /* *:aeb */ -/* 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> +/* 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support */ diff --git a/misc-utils/write.c b/misc-utils/write.c index e794a4ee..b3c96d14 100644 --- a/misc-utils/write.c +++ b/misc-utils/write.c @@ -40,7 +40,7 @@ * - Added fix from David.Chapell@mail.trincoll.edu enabeling daemons * to use write. * - ANSIed it since I was working on it anyway. - * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support * */ @@ -197,11 +197,7 @@ void search_utmp(char *user, char *tty, char *mytty, uid_t myuid) struct utmp *uptr; time_t bestatime, atime; int nloggedttys, nttys, msgsok, user_is_me; -#ifdef __linux__ char atty[sizeof(u.ut_line) + 1]; -#else - char atty[UT_LINESIZE + 1]; -#endif utmpname(_PATH_UTMP); setutent(); @@ -213,13 +209,8 @@ void search_utmp(char *user, char *tty, char *mytty, uid_t myuid) memcpy(&u, uptr, sizeof(u)); if (strncmp(user, u.ut_name, sizeof(u.ut_name)) == 0) { ++nloggedttys; -#ifdef __linux__ (void)strncpy(atty, u.ut_line, sizeof(u.ut_line)); atty[sizeof(u.ut_line)] = '\0'; -#else - (void)strncpy(atty, u.ut_line, UT_LINESIZE); - atty[UT_LINESIZE] = '\0'; -#endif if (term_chk(atty, &msgsok, &atime, 0)) continue; /* bad term? skip */ if (myuid && !msgsok) @@ -228,10 +219,8 @@ void search_utmp(char *user, char *tty, char *mytty, uid_t myuid) user_is_me = 1; continue; /* don't write to yourself */ } -#ifdef __linux__ if (u.ut_type != USER_PROCESS) continue; /* it's not a valid entry */ -#endif ++nttys; if (atime > bestatime) { bestatime = atime; diff --git a/mount/Makefile b/mount/Makefile index 18e30cde..ef65601f 100644 --- a/mount/Makefile +++ b/mount/Makefile @@ -24,14 +24,10 @@ PROGS = $(SUID_PROGS) $(NOSUID_PROGS) MAYBE = pivot_root swapoff -# comment these out if you are not compiling in NFS support +LO_OBJS = lomount.o $(LIB)/xstrncpy.o NFS_OBJS = nfsmount.o nfsmount_xdr.o nfsmount_clnt.o -# uncomment this if you don't have libc-4.2 but do have the rpclib GEN_FILES = nfsmount.h nfsmount_xdr.c nfsmount_clnt.c -# comment these out if you are not compiling in loop support -LO_OBJS=lomount.o - all: $(PROGS) install: $(PROGS) @@ -58,10 +54,10 @@ umount: umount.o fstab.o sundries.o realpath.o mntent.o getusername.o \ swapon: swapon.o version.o $(LINK) $^ -o $@ -losetup.o: lomount.c +main_losetup.o: lomount.c $(COMPILE) -DMAIN lomount.c -o $@ -losetup: losetup.o +losetup: main_losetup.o $(LIB)/xstrncpy.o $(LINK) $^ -o $@ mount.o umount.o nfsmount.o losetup.o fstab.o realpath.o sundries.o: sundries.h diff --git a/mount/fstab.5 b/mount/fstab.5 index 6d7638e4..608f81d8 100644 --- a/mount/fstab.5 +++ b/mount/fstab.5 @@ -76,9 +76,11 @@ For NFS mounts one will have <host>:<dir>, e.g., `knuth.aeb.nl:/'. For procfs, use `proc'. .LP Instead of giving the device explicitly, one may indicate -the (ext2) filesystem that is to be mounted by its UUID or +the (ext2 or XFS) filesystem that is to be mounted by its UUID or volume label (cf. -.BR e2label (8)), +.BR e2label (8) +or +.BR xfs_admin (8)), writing LABEL=<label> or UUID=<uuid>, e.g., `LABEL=Boot' or `UUID=3e6be9de\%-8139\%-11d1\%-9106\%-a43f08d823a6'. This will make the system more robust: adding or removing a SCSI disk @@ -113,6 +115,10 @@ features. a local filesystem with longer filenames, larger inodes, and lots of other features. .TP +.I xfs +a local filesystem with journaling, scalability and lots of other +features. +.TP .I msdos a local filesystem for MS-DOS partitions. .TP diff --git a/mount/fstab.c b/mount/fstab.c index 3ee1f36a..9329d1ce 100644 --- a/mount/fstab.c +++ b/mount/fstab.c @@ -1,4 +1,4 @@ -/* 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> +/* 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support * Sun Mar 21 1999 - Arnaldo Carvalho de Melo <acme@conectiva.com.br> * - fixed strerr(errno) in gettext calls @@ -538,6 +538,16 @@ update_mtab (const char *dir, struct mntent *instead) { } my_endmntent (mftmp); + { /* + * If mount is setuid and some non-root user mounts sth, + * then mtab.tmp might get the group of this user. Copy uid/gid + * from the present mtab before renaming. + */ + struct stat sbuf; + if (stat (MOUNTED, &sbuf) == 0) + chown (MOUNTED_TEMP, sbuf.st_uid, sbuf.st_gid); + } + /* rename mtemp to mtab */ if (rename (MOUNTED_TEMP, MOUNTED) < 0) { int errsv = errno; diff --git a/mount/lomount.c b/mount/lomount.c index cabc4446..26e89501 100644 --- a/mount/lomount.c +++ b/mount/lomount.c @@ -2,7 +2,7 @@ /* Added vfs mount options - aeb - 960223 */ /* Removed lomount - aeb - 960224 */ -/* 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> +/* 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support * Sun Mar 21 1999 - Arnaldo Carvalho de Melo <acme@conectiva.com.br> * - fixed strerr(errno) in gettext calls @@ -27,6 +27,7 @@ #include "loop.h" #include "lomount.h" +#include "xstrncpy.h" #include "nls.h" extern int verbose; @@ -217,8 +218,7 @@ set_loop (const char *device, const char *file, int offset, *loopro = (mode == O_RDONLY); memset (&loopinfo, 0, sizeof (loopinfo)); - strncpy (loopinfo.lo_name, file, LO_NAME_SIZE); - loopinfo.lo_name[LO_NAME_SIZE - 1] = 0; + 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"), @@ -233,7 +233,7 @@ set_loop (const char *device, const char *file, int offset, * passwd etc being swapped out and left somewhere on disk. */ - if(mlockall(MCL_CURRENT|MCL_FUTURE)) { + if(mlockall(MCL_CURRENT | MCL_FUTURE)) { perror("memlock"); fprintf(stderr, _("Couldn't lock into memory, exiting.\n")); exit(1); @@ -246,8 +246,7 @@ set_loop (const char *device, const char *file, int offset, break; case LO_CRYPT_XOR: pass = getpass (_("Password: ")); - strncpy (loopinfo.lo_encrypt_key, pass, LO_KEY_SIZE); - loopinfo.lo_encrypt_key[LO_KEY_SIZE - 1] = 0; + xstrncpy (loopinfo.lo_encrypt_key, pass, LO_KEY_SIZE); loopinfo.lo_encrypt_key_size = strlen(loopinfo.lo_encrypt_key); break; case LO_CRYPT_DES: diff --git a/mount/mntent.c b/mount/mntent.c index d28171b9..a9a334fe 100644 --- a/mount/mntent.c +++ b/mount/mntent.c @@ -1,7 +1,7 @@ /* Private version of the libc *mntent() routines. */ /* Note slightly different prototypes. */ -/* 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> +/* 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support */ diff --git a/mount/mount.8 b/mount/mount.8 index f9034119..42a7a4a7 100644 --- a/mount/mount.8 +++ b/mount/mount.8 @@ -95,7 +95,7 @@ prints a version string; and just .RE lists all mounted file systems (of type .IR type ). -The option \-l adds the (ext2) labels in this listing. +The option \-l adds the (ext2 and XFS) labels in this listing. See below. .\" In fact since 2.3.99. At first the syntax was mount -t bind. @@ -280,12 +280,12 @@ 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 \-l -Add the ext2 labels in the mount output. Mount must have permission to +Add the ext2 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. -One can set such a label -using the +One can set such a label for ext2 using the .BR e2label (8) -utility. +utility, or for XFS using +.BR xfs_admin (8). .TP .B \-n Mount without writing in @@ -323,13 +323,13 @@ These two options require the file The argument following the .B \-t is used to indicate the file system type. The file system types which are -currently supported are listed in -.IR linux/fs/filesystems.c : +currently supported are: .IR adfs , .IR affs , .IR autofs , .IR coda , .IR coherent , +.IR cramfs , .IR devpts , .IR efs , .IR ext , @@ -352,6 +352,7 @@ currently supported are listed in .IR umsdos , .IR vfat , .IR xenix , +.IR xfs , .IR xiafs . Note that coherent, sysv and xenix are equivalent and that .I xenix @@ -391,7 +392,8 @@ option is given, or if the .B auto type is specified, the superblock is probed for the filesystem type .RI ( minix ", " ext ", " ext2 ", " xiafs ", " iso9660 ", " romfs -.RI , ufs ", " ntfs ", " qnx4 ", " bfs +.RI , ufs ", " ntfs ", " qnx4 ", " bfs ", " xfs ", " cramfs ", " hfs +.RI , hpfs ", " adfs are supported). If this probe fails, mount will try to read the file .IR /etc/filesystems , @@ -494,7 +496,7 @@ This is the default. .B remount Attempt to remount an already-mounted file system. This is commonly used to change the mount flags for a file system, especially to make a -readonly file system writeable. +readonly file system writeable. It does not change device or mount point. .TP .B ro Mount the file system read-only. @@ -522,7 +524,16 @@ The following options apply only to certain file systems. We sort them by file system. They all follow the .B \-o flag. - +.SH "Mount options for adfs" +.TP +\fBuid=\fP\fIvalue\fP and \fBgid=\fP\fIvalue\fP +Set the owner and group of the files in the file system (default: uid=gid=0). +.TP +\fBownmask=\fP\fIvalue\fP and \fBothmask=\fP\fIvalue\fP +Set the permission mask for ADFS 'owner' permissions and 'other' permissions, +respectively (default: 0700 and 0077, respectively). +See also +.IR /usr/src/linux/Documentation/filesystems/adfs.txt . .SH "Mount options for affs" .TP \fBuid=\fP\fIvalue\fP and \fBgid=\fP\fIvalue\fP @@ -863,6 +874,7 @@ that it is read-only, of course). .B norock Disable the use of Rock Ridge extensions, even if available. Cf.\& .BR map . +.TP .B nojoliet Disable the use of Microsoft Joliet extensions, even if available. Cf.\& .BR map . @@ -1218,6 +1230,102 @@ If `uni_xlate' gets set, UTF8 gets disabled. .SH "Mount options for xenix" None. +.SH "Mount options for xfs" +.TP +.BI biosize= size +Sets the preferred buffered I/O size (default size is 64K). +.I size +must be expressed as the logarithm (base2) of the desired I/O size. +Valid values for this option are 14 through 16, inclusive +(i.e. 16K, 32K, and 64K bytes). +On machines with a 4K pagesize, 13 (8K bytes) is also a valid +.IR size . +The preferred buffered I/O size can also be altered on an individual +file basis using the +.BR ioctl (2) +system call. +.TP +.B dmapi " / " xdsm +Enable the DMAPI (Data Management API) event callouts. +.TP +.BI logbufs= value +Set the number of in-memory log buffers. +Valid numbers range from 2-8 inclusive. +The default value is 8 buffers for filesystems with a blocksize of 64K, +4 buffers for filesystems with a blocksize of 32K, +3 buffers for filesystems with a blocksize of 16K, +and 2 buffers for all other configurations. +Increasing the number of buffers may increase performance on +some workloads at the cost of the memory used for the +additional log buffers and their associated control structures. +.TP +.BI logbsize= value +Set the size of each in-memory log buffer. +Valid sizes are 16384 (16K) and 32768 (32K). +The default value for machines with more than 32MB of memory is 32768, +machines with less memory use 16384 by default. +.TP +\fBlogdev=\fP\fIdevice\fP and \fBrtdev=\fP\fIdevice\fP +Use an external log (metadata journal) and/or real-time device. +An XFS filesystem has up to three parts: a data section, a log section, +and a real-time section. +The real-time section is optional, and the log section can be separate +from the data section or contained within it. +Refer to +.BR xfs (5). +.TP +.B noalign +Data allocations will not be aligned at stripe unit boundaries. +.TP +.B noatime +Access timestamps are not updated when a file is read. +.TP +.B norecovery +The filesystem will be mounted without running log recovery. +If the filesystem was not cleanly unmounted, it is likely to +be inconsistent when mounted in +.B norecovery +mode. +Some files or directories may not be accessible because of this. +Filesystems mounted +.B norecovery +must be mounted read-only or the mount will fail. +.TP +.B osyncisdsync +Make writes to files opened with the O_SYNC flag set behave +as if the O_DSYNC flag had been used instead. +This can result in better performance without compromising +data safety. +However if this option is in effect, timestamp updates from +O_SYNC writes can be lost if the system crashes. +.TP +.BR quota " / " usrquota " / " uqnoenforce +User disk quota accounting enabled, and limits (optionally) enforced. +.TP +.BR grpquota " / " gqnoenforce +Group disk quota accounting enabled and limits (optionally) enforced. +.TP +\fBsunit=\fP\fIvalue\fP and \fBswidth=\fP\fIvalue\fP +Used to specify the stripe unit and width for a RAID device or a stripe +volume. +.I value +must be specified in 512-byte block units. +If this option is not specified and the filesystem was made on a stripe +volume or the stripe width or unit were specified for the RAID device at +mkfs time, then the mount system call will restore the value from the +superblock. +For filesystems that are made directly on RAID devices, these options can be +used to override the information in the superblock if the underlying disk +layout changes after the filesystem has been created. +The +.B swidth +option is required if the +.B sunit +option has been specified, +and must be a multiple of the +.B sunit +value. + .SH "Mount options for xiafs" None. Although nothing is wrong with xiafs, it is not used much, and is not maintained. Probably one shouldn't use it. @@ -1275,7 +1383,9 @@ temporary file .BR umount (8), .BR swapon (8), .BR nfs (5), +.BR xfs (5), .BR e2label (8), +.BR xfs_admin (8), .BR mountd (8), .BR nfsd (8), .BR mke2fs (8), diff --git a/mount/mount.c b/mount/mount.c index 39ccd3e6..dc7e9823 100644 --- a/mount/mount.c +++ b/mount/mount.c @@ -26,7 +26,7 @@ * Improve support for noncanonical names in /etc/fstab. * Add support for volume labels and UUIDs. * - * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support * 1999-03-21 Arnaldo Carvalho de Melo <acme@conectiva.com.br> * - fixed strerr(errno) in gettext calls @@ -101,10 +101,7 @@ static int optfork = 0; /* Add volumelabel in a listing of mounted devices (-l). */ static int list_with_volumelabel = 0; -/* Nonzero for mount --bind */ -static int bind = 0; - -/* Nonzero for mount {--replace|--before|--after|--over} */ +/* Nonzero for mount {--bind|--replace|--before|--after|--over|--move} */ static int mounttype = 0; /* True if ruid != euid. */ @@ -341,8 +338,6 @@ parse_opts (char *opts, int *flags, char **extra_opts) { if (readwrite) *flags &= ~MS_RDONLY; *flags |= mounttype; - if (bind) - *flags |= MS_BIND; } /* Try to build a canonical options string. */ @@ -466,7 +461,7 @@ guess_fstype_and_mount (char *spec, char *node, char **type, if (*type && strcasecmp (*type, "auto") == 0) *type = NULL; - if (!*type && (flags & MS_BIND)) + if (!*type && (flags & (MS_BIND | MS_MOVE))) *type = "none"; /* random, but not "bind" */ if (!*type && !(flags & MS_REMOUNT)) { @@ -1092,7 +1087,7 @@ mount_one (const char *spec, const char *node, char *type, const char *opts, /* if -a then we may be rescued by a noauto option */ } - if (type == NULL && !bind) { + if (type == NULL && !mounttype) { if (strchr (spec, ':') != NULL) { type = "nfs"; if (verbose) @@ -1292,6 +1287,7 @@ static struct option longopts[] = { { "after", 0, 0, 130 }, { "before", 0, 0, 131 }, { "over", 0, 0, 132 }, + { "move", 0, 0, 133 }, { NULL, 0, 0, 0 } }; @@ -1317,11 +1313,13 @@ usage (FILE *fp, int n) { " mount --bind 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" - "Union or stack mounts are specified using one of\n" - " --replace, --after, --before, --over\n" "Other options: [-nfFrsvw] [-o options].\n" "For many more details, say man 8 mount .\n" )); +/* + "Union or stack mounts are specified using one of\n" + " --replace, --after, --before, --over\n" +*/ unlock_mtab(); exit (n); } @@ -1408,7 +1406,7 @@ main (int argc, char *argv[]) { break; case 128: /* bind */ - ++bind; + mounttype = MS_BIND; break; case 129: /* replace */ mounttype = MS_REPLACE; @@ -1422,6 +1420,9 @@ main (int argc, char *argv[]) { case 132: /* over */ mounttype = MS_OVER; break; + case 133: /* move */ + mounttype = MS_MOVE; + break; case '?': default: @@ -1435,15 +1436,15 @@ main (int argc, char *argv[]) { specseen = (uuid || volumelabel) ? 1 : 0; /* yes, .. i know */ if (argc+specseen == 0 && !all) { - if (options || mounttype || bind) + if (options || mounttype) usage (stderr, EX_USAGE); return print_all (types); } if (getuid () != geteuid ()) { suid = 1; - if (types || options || readwrite || nomtab || all || fake || - bind || mounttype || (argc + specseen) != 1) + if (types || options || readwrite || nomtab || all || + fake || mounttype || (argc + specseen) != 1) die (EX_USAGE, _("mount: only root can do that")); } diff --git a/mount/mount_by_label.c b/mount/mount_by_label.c index e24d880d..ad3b5ebd 100644 --- a/mount/mount_by_label.c +++ b/mount/mount_by_label.c @@ -1,7 +1,7 @@ /* * mount_by_label.c - aeb * - * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support * 2000-01-20 James Antill <james@and.org> * - Added error message if /proc/partitions cannot be opened diff --git a/mount/mount_constants.h b/mount/mount_constants.h index 5fd29082..cdbced88 100644 --- a/mount/mount_constants.h +++ b/mount/mount_constants.h @@ -36,13 +36,16 @@ if we have a stack or plain mount - mount atop of it, forming a stack. */ #define MS_OVER 0x200 /* 512 */ #endif #ifndef MS_NOATIME -#define MS_NOATIME 1024 /* Do not update access times. */ +#define MS_NOATIME 0x400 /* 1024: Do not update access times. */ #endif #ifndef MS_NODIRATIME -#define MS_NODIRATIME 2048 /* Do not update directory access times */ +#define MS_NODIRATIME 0x800 /* 2048: Don't update directory access times */ #endif #ifndef MS_BIND -#define MS_BIND 4096 +#define MS_BIND 0x1000 /* 4096: Mount existing tree also elsewhere */ +#endif +#ifndef MS_MOVE +#define MS_MOVE 0x2000 /* 8192: Atomically move tree */ #endif /* * Magic mount flag number. Has to be or-ed to the flag values. diff --git a/mount/mount_guess_fstype.c b/mount/mount_guess_fstype.c index 5a3733f9..a8740929 100644 --- a/mount/mount_guess_fstype.c +++ b/mount/mount_guess_fstype.c @@ -17,7 +17,7 @@ * detect *fat and then assume vfat, so perhaps /etc/filesystems isnt * so useful anymore.] * - * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support * * Fri Dec 1 23:31:00 2000: Sepp Wijnands <mrrazz@garbage-coderz.net> @@ -175,6 +175,9 @@ fstype(const char *device) { || read(fd, (char *) &sb, sizeof(sb)) != sizeof(sb)) goto io_error; + /* ext2 has magic in little-endian on disk, so "swapped" is + superfluous; however, there have existed strange byteswapped + PPC ext2 systems */ if (ext2magic(sb.e2s) == EXT2_SUPER_MAGIC || ext2magic(sb.e2s) == EXT2_PRE_02B_MAGIC || ext2magic(sb.e2s) == swapped(EXT2_SUPER_MAGIC)) @@ -365,39 +368,55 @@ is_in_procfs(const char *type) { int procfsloop(int (*mount_fn)(struct mountargs *), struct mountargs *args, char **type) { - FILE *procfs; - char *fsname; - int ret = 1; - int errsv = 0; - - *type = NULL; - - procfs = fopen(ETC_FILESYSTEMS, "r"); - if (!procfs) { - procfs = fopen(PROC_FILESYSTEMS, "r"); - if (!procfs) - return 1; - } - while ((fsname = procfsnext(procfs)) != NULL) { - if (tested (fsname)) - continue; - args->type = fsname; - if (verbose) { - printf(_("Trying %s\n"), fsname); - fflush(stdout); - } - if ((*mount_fn) (args) == 0) { - *type = fsname; - ret = 0; - break; - } else if (errno != EINVAL && is_in_procfs(fsname) == 1) { - *type = "guess"; - ret = -1; - errsv = errno; - break; - } - } - fclose(procfs); - errno = errsv; - return ret; + char *files[2] = { ETC_FILESYSTEMS, PROC_FILESYSTEMS }; + FILE *procfs; + char *fsname; + int ret = 1; + int errsv = 0; + int i; + + *type = NULL; + + /* Use PROC_FILESYSTEMS only when ETC_FILESYSTEMS does not exist. + In some cases trying a filesystem that the kernel knows about + on the wrong data will crash the kernel; in such cases + ETC_FILESYSTEMS can be used to list the filesystems that we + are allowed to try, and in the order they should be tried. + End ETC_FILESYSTEMS with a line containing a single '*' only, + if PROC_FILESYSTEMS should be tried afterwards. */ + + for (i=0; i<2; i++) { + procfs = fopen(files[i], "r"); + if (!procfs) + continue; + while ((fsname = procfsnext(procfs)) != NULL) { + if (!strcmp(fsname, "*")) { + fclose(procfs); + goto nexti; + } + if (tested (fsname)) + continue; + args->type = fsname; + if (verbose) { + printf(_("Trying %s\n"), fsname); + fflush(stdout); + } + if ((*mount_fn) (args) == 0) { + *type = fsname; + ret = 0; + break; + } else if (errno != EINVAL && + is_in_procfs(fsname) == 1) { + *type = "guess"; + ret = -1; + errsv = errno; + break; + } + } + fclose(procfs); + errno = errsv; + return ret; + nexti:; + } + return 1; } diff --git a/mount/mount_guess_rootdev.c b/mount/mount_guess_rootdev.c index 072c09fc..7246d319 100644 --- a/mount/mount_guess_rootdev.c +++ b/mount/mount_guess_rootdev.c @@ -25,7 +25,7 @@ rootdev(char *p) { char *type = "hd"; char let; int ma, mi; - char devname[8]; + char devname[32]; devno = strtoul(p, &ep, 16); if ((ep == p+3 || ep == p+4) && (*ep == ' ' || *ep == 0)) { diff --git a/mount/nfs.5 b/mount/nfs.5 index 59f199b2..6ffce6cd 100644 --- a/mount/nfs.5 +++ b/mount/nfs.5 @@ -192,6 +192,9 @@ server performance penalty but it allows two different NFS clients to get reasonable good results when both clients are actively writing to common filesystem on the server. .TP 1.5i +.I nolock +Do not use locking. Do not start lockd. +.TP 1.5i .I tcp Mount the NFS filesystem using the TCP protocol instead of the default UDP protocol. Many NFS severs only support UDP. diff --git a/mount/nfsmount.c b/mount/nfsmount.c index 6fc917db..70298e0c 100644 --- a/mount/nfsmount.c +++ b/mount/nfsmount.c @@ -21,7 +21,7 @@ * Wed Oct 1 23:55:28 1997: Dick Streefland <dick_streefland@tasking.com> * Implemented the "bg", "fg" and "retry" mount options for NFS. * - * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support * * Modified by Olaf Kirch and Trond Myklebust for new NFS code, @@ -132,45 +132,45 @@ get_mountport(struct sockaddr_in *server_addr, long unsigned proto, long unsigned port) { -struct pmaplist *pmap; -static struct pmap p = {0, 0, 0, 0}; - -server_addr->sin_port = PMAPPORT; -pmap = pmap_getmaps(server_addr); - -if (version > MAX_NFSPROT) - version = MAX_NFSPROT; -if (!prog) - prog = MOUNTPROG; -p.pm_prog = prog; -p.pm_vers = version; -p.pm_prot = proto; -p.pm_port = port; - -while (pmap) { - if (pmap->pml_map.pm_prog != prog) - goto next; - if (!version && p.pm_vers > pmap->pml_map.pm_vers) - goto next; - if (version > 2 && pmap->pml_map.pm_vers != version) - goto next; - if (version && version <= 2 && pmap->pml_map.pm_vers > 2) - goto next; - if (pmap->pml_map.pm_vers > MAX_NFSPROT || - (proto && p.pm_prot && pmap->pml_map.pm_prot != proto) || - (port && pmap->pml_map.pm_port != port)) - goto next; - memcpy(&p, &pmap->pml_map, sizeof(p)); -next: - pmap = pmap->pml_next; -} -if (!p.pm_vers) - p.pm_vers = MOUNTVERS; -if (!p.pm_port) - p.pm_port = MOUNTPORT; -if (!p.pm_prot) - p.pm_prot = IPPROTO_TCP; -return &p; + struct pmaplist *pmap; + static struct pmap p = {0, 0, 0, 0}; + + server_addr->sin_port = PMAPPORT; + pmap = pmap_getmaps(server_addr); + + if (version > MAX_NFSPROT) + version = MAX_NFSPROT; + if (!prog) + prog = MOUNTPROG; + p.pm_prog = prog; + p.pm_vers = version; + p.pm_prot = proto; + p.pm_port = port; + + while (pmap) { + if (pmap->pml_map.pm_prog != prog) + goto next; + if (!version && p.pm_vers > pmap->pml_map.pm_vers) + goto next; + if (version > 2 && pmap->pml_map.pm_vers != version) + goto next; + if (version && version <= 2 && pmap->pml_map.pm_vers > 2) + goto next; + if (pmap->pml_map.pm_vers > MAX_NFSPROT || + (proto && p.pm_prot && pmap->pml_map.pm_prot != proto) || + (port && pmap->pml_map.pm_port != port)) + goto next; + memcpy(&p, &pmap->pml_map, sizeof(p)); + next: + pmap = pmap->pml_next; + } + if (!p.pm_vers) + p.pm_vers = MOUNTVERS; + if (!p.pm_port) + p.pm_port = MOUNTPORT; + if (!p.pm_prot) + p.pm_prot = IPPROTO_TCP; + return &p; } int nfsmount(const char *spec, const char *node, int *flags, @@ -230,7 +230,7 @@ int nfsmount(const char *spec, const char *node, int *flags, mclient = NULL; if (strlen(spec) >= sizeof(hostdir)) { fprintf(stderr, _("mount: " - "excessively long host:dir argument\n")); + "excessively long host:dir argument\n")); goto fail; } strcpy(hostdir, spec); @@ -243,11 +243,11 @@ int nfsmount(const char *spec, const char *node, int *flags, if ((s = strchr(hostdir, ','))) { *s = '\0'; fprintf(stderr, _("mount: warning: " - "multiple hostnames not supported\n")); + "multiple hostnames not supported\n")); } } else { fprintf(stderr, _("mount: " - "directory to mount not in host:dir format\n")); + "directory to mount not in host:dir format\n")); goto fail; } @@ -281,7 +281,7 @@ int nfsmount(const char *spec, const char *node, int *flags, old_opts = ""; if (strlen(old_opts) + strlen(s) + 10 >= sizeof(new_opts)) { fprintf(stderr, _("mount: " - "excessively long option argument\n")); + "excessively long option argument\n")); goto fail; } sprintf(new_opts, "%s%saddr=%s", @@ -356,7 +356,7 @@ int nfsmount(const char *spec, const char *node, int *flags, mountport = val; else if (!strcmp(opt, "mounthost")) mounthost=xstrndup(opteq+1, - strcspn(opteq+1," \t\n\r,")); + strcspn(opteq+1," \t\n\r,")); else if (!strcmp(opt, "mountprog")) mountprog = val; else if (!strcmp(opt, "mountvers")) @@ -379,12 +379,12 @@ int nfsmount(const char *spec, const char *node, int *flags, data.namlen = val; else #endif - printf(_("Warning: Option namlen is not supported.\n")); + printf(_("Warning: Option namlen is not supported.\n")); } else if (!strcmp(opt, "addr")) /* ignore */; else { printf(_("unknown nfs mount parameter: " - "%s=%d\n"), opt, val); + "%s=%d\n"), opt, val); goto fail; } } @@ -424,7 +424,7 @@ int nfsmount(const char *spec, const char *node, int *flags, } else { if (!sloppy) { printf(_("unknown nfs mount option: " - "%s%s\n"), val ? "" : "no", opt); + "%s%s\n"), val ? "" : "no", opt); goto fail; } } @@ -469,22 +469,22 @@ int nfsmount(const char *spec, const char *node, int *flags, #ifdef NFS_MOUNT_DEBUG printf("rsize = %d, wsize = %d, timeo = %d, retrans = %d\n", - data.rsize, data.wsize, data.timeo, data.retrans); + data.rsize, data.wsize, data.timeo, data.retrans); printf("acreg (min, max) = (%d, %d), acdir (min, max) = (%d, %d)\n", - data.acregmin, data.acregmax, data.acdirmin, data.acdirmax); + data.acregmin, data.acregmax, data.acdirmin, data.acdirmax); printf("port = %d, bg = %d, retry = %d, flags = %.8x\n", - port, bg, retry, data.flags); + port, bg, retry, data.flags); printf("mountprog = %d, mountvers = %d, nfsprog = %d, nfsvers = %d\n", - mountprog, mountvers, nfsprog, nfsvers); + mountprog, mountvers, nfsprog, nfsvers); printf("soft = %d, intr = %d, posix = %d, nocto = %d, noac = %d\n", - (data.flags & NFS_MOUNT_SOFT) != 0, - (data.flags & NFS_MOUNT_INTR) != 0, - (data.flags & NFS_MOUNT_POSIX) != 0, - (data.flags & NFS_MOUNT_NOCTO) != 0, - (data.flags & NFS_MOUNT_NOAC) != 0); + (data.flags & NFS_MOUNT_SOFT) != 0, + (data.flags & NFS_MOUNT_INTR) != 0, + (data.flags & NFS_MOUNT_POSIX) != 0, + (data.flags & NFS_MOUNT_NOCTO) != 0, + (data.flags & NFS_MOUNT_NOAC) != 0); #if NFS_MOUNT_VERSION >= 2 printf("tcp = %d\n", - (data.flags & NFS_MOUNT_TCP) != 0); + (data.flags & NFS_MOUNT_TCP) != 0); #endif #endif @@ -509,25 +509,25 @@ int nfsmount(const char *spec, const char *node, int *flags, /* create mount deamon client */ /* See if the nfs host = mount host. */ if (mounthost) { - if (mounthost[0] >= '0' && mounthost[0] <= '9') { - mount_server_addr.sin_family = AF_INET; - mount_server_addr.sin_addr.s_addr = inet_addr(hostname); - } else { - if ((hp = gethostbyname(mounthost)) == NULL) { - fprintf(stderr, _("mount: can't get address for %s\n"), - hostname); - goto fail; - } else { - if (hp->h_length > sizeof(struct in_addr)) { - fprintf(stderr, - _("mount: got bad hp->h_length?\n")); - hp->h_length = sizeof(struct in_addr); - } - mount_server_addr.sin_family = AF_INET; - memcpy(&mount_server_addr.sin_addr, - hp->h_addr, hp->h_length); - } - } + if (mounthost[0] >= '0' && mounthost[0] <= '9') { + mount_server_addr.sin_family = AF_INET; + mount_server_addr.sin_addr.s_addr = inet_addr(hostname); + } else { + if ((hp = gethostbyname(mounthost)) == NULL) { + fprintf(stderr, _("mount: can't get address for %s\n"), + hostname); + goto fail; + } else { + if (hp->h_length > sizeof(struct in_addr)) { + fprintf(stderr, + _("mount: got bad hp->h_length?\n")); + hp->h_length = sizeof(struct in_addr); + } + mount_server_addr.sin_family = AF_INET; + memcpy(&mount_server_addr.sin_addr, + hp->h_addr, hp->h_length); + } + } } /* @@ -554,8 +554,10 @@ int nfsmount(const char *spec, const char *node, int *flags, prevt = 0; t = 30; val = 1; + for (;;) { if (bg && stat(node, &statbuf) == -1) { + /* no mount point yet - sleep */ if (running_bg) { sleep(val); /* 1, 2, 4, 8, 16, 30, ... */ val *= 2; @@ -568,10 +570,10 @@ int nfsmount(const char *spec, const char *node, int *flags, sleep(30); pm_mnt = get_mountport(&mount_server_addr, - mountprog, - mountvers, - proto, - mountport); + mountprog, + mountvers, + proto, + mountport); /* contact the mount daemon via TCP */ mount_server_addr.sin_port = htons(pm_mnt->pm_port); @@ -580,53 +582,60 @@ int nfsmount(const char *spec, const char *node, int *flags, switch (pm_mnt->pm_prot) { case IPPROTO_UDP: mclient = clntudp_create(&mount_server_addr, - pm_mnt->pm_prog, - pm_mnt->pm_vers, - retry_timeout, - &msock); - if (mclient) - break; - mount_server_addr.sin_port = htons(pm_mnt->pm_port); - msock = RPC_ANYSOCK; - case IPPROTO_TCP: - mclient = clnttcp_create(&mount_server_addr, - pm_mnt->pm_prog, - pm_mnt->pm_vers, - &msock, 0, 0); - break; - default: - mclient = 0; + pm_mnt->pm_prog, + pm_mnt->pm_vers, + retry_timeout, + &msock); + if (mclient) + break; + mount_server_addr.sin_port = htons(pm_mnt->pm_port); + msock = RPC_ANYSOCK; + case IPPROTO_TCP: + mclient = clnttcp_create(&mount_server_addr, + pm_mnt->pm_prog, + pm_mnt->pm_vers, + &msock, 0, 0); + break; + default: + mclient = 0; } + if (mclient) { /* try to mount hostname:dirname */ mclient->cl_auth = authunix_create_default(); - /* make pointers in xdr_mountres3 NULL so - * that xdr_array allocates memory for us - */ - memset(&status, 0, sizeof(status)); - - if (pm_mnt->pm_vers == 3) - clnt_stat = clnt_call(mclient, MOUNTPROC3_MNT, - (xdrproc_t) xdr_dirpath, - (caddr_t) &dirname, - (xdrproc_t) xdr_mountres3, - (caddr_t) &status, - total_timeout); - else - clnt_stat = clnt_call(mclient, MOUNTPROC_MNT, - (xdrproc_t) xdr_dirpath, - (caddr_t) &dirname, - (xdrproc_t) xdr_fhstatus, - (caddr_t) &status, - total_timeout); + /* make pointers in xdr_mountres3 NULL so + * that xdr_array allocates memory for us + */ + memset(&status, 0, sizeof(status)); + + if (pm_mnt->pm_vers == 3) + clnt_stat = clnt_call(mclient, + MOUNTPROC3_MNT, + (xdrproc_t) xdr_dirpath, + (caddr_t) &dirname, + (xdrproc_t) xdr_mountres3, + (caddr_t) &status, + total_timeout); + else + clnt_stat = clnt_call(mclient, + MOUNTPROC_MNT, + (xdrproc_t) xdr_dirpath, + (caddr_t) &dirname, + (xdrproc_t) xdr_fhstatus, + (caddr_t) &status, + total_timeout); if (clnt_stat == RPC_SUCCESS) break; /* we're done */ +#if 0 + /* errno? who sets errno? */ + /* this fragment breaks bg mounting */ if (errno != ECONNREFUSED) { clnt_perror(mclient, "mount"); goto fail; /* don't retry */ } +#endif if (!running_bg && prevt == 0) clnt_perror(mclient, "mount"); auth_destroy(mclient->cl_auth); @@ -639,6 +648,7 @@ int nfsmount(const char *spec, const char *node, int *flags, } prevt = t; } + if (!bg) goto fail; if (!running_bg) { @@ -713,7 +723,7 @@ int nfsmount(const char *spec, const char *node, int *flags, if (port == 0) { server_addr.sin_port = PMAPPORT; port = pmap_getport(&server_addr, nfsprog, nfsvers, - tcp ? IPPROTO_TCP : IPPROTO_UDP); + tcp ? IPPROTO_TCP : IPPROTO_UDP); if (port == 0) port = NFS_PORT; #ifdef NFS_MOUNT_DEBUG @@ -725,11 +735,11 @@ int nfsmount(const char *spec, const char *node, int *flags, printf(_("using port %d for nfs deamon\n"), port); #endif server_addr.sin_port = htons(port); - /* - * connect() the socket for kernels 1.3.10 and below only, - * to avoid problems with multihomed hosts. - * --Swen - */ + /* + * connect() the socket for kernels 1.3.10 and below only, + * to avoid problems with multihomed hosts. + * --Swen + */ if (linux_version_code() <= 66314 && connect(fsock, (struct sockaddr *) &server_addr, sizeof (server_addr)) < 0) { @@ -752,7 +762,7 @@ int nfsmount(const char *spec, const char *node, int *flags, /* abort */ -fail: + fail: if (msock != -1) { if (mclient) { auth_destroy(mclient->cl_auth); diff --git a/mount/sundries.c b/mount/sundries.c index de17b256..1da3b666 100644 --- a/mount/sundries.c +++ b/mount/sundries.c @@ -4,7 +4,7 @@ * * added fcntl locking by Kjetil T. (kjetilho@math.uio.no) - aeb, 950927 * - * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support * */ diff --git a/mount/swapon.c b/mount/swapon.c index 2e49b627..829acadd 100644 --- a/mount/swapon.c +++ b/mount/swapon.c @@ -3,7 +3,7 @@ * swapon.c,v 1.1.1.1 1993/11/18 08:40:51 jrs Exp * Added '-s' (Summary option) <Vincent.Renardias@waw.com> 02/1997. * - * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support * Sun Mar 21 1999 - Arnaldo Carvalho de Melo <acme@conectiva.com.br> * - fixed strerr(errno) in gettext calls diff --git a/mount/umount.c b/mount/umount.c index 24622bc9..1843e08e 100644 --- a/mount/umount.c +++ b/mount/umount.c @@ -52,7 +52,7 @@ #include <arpa/inet.h> #endif -#if defined(MNT_FORCE) && !defined(__sparc__) && !defined(__arm__) +#if defined(MNT_FORCE) && !defined(__sparc__) && !defined(__arm__) && !defined(__mips__) /* Interesting ... it seems libc knows about MNT_FORCE and presumably about umount2 as well -- need not do anything */ #else /* MNT_FORCE */ @@ -378,7 +378,7 @@ umount_one_bw (const char *file, struct mntentchn *mc) { } /* Unmount all filesystems of type VFSTYPES found in mtab. Since we are - concurrently updating mtab after every succesful umount, we have to + concurrently updating mtab after every successful umount, we have to slurp in the entire file before we start. This isn't too bad, because in any case it's important to umount mtab entries in reverse order to mount, e.g. /usr/spool before /usr. */ diff --git a/po/ChangeLog b/po/ChangeLog index d1e14684..5c8e789a 100644 --- a/po/ChangeLog +++ b/po/ChangeLog @@ -1,5 +1,5 @@ 1999-02-22 - Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> - initial release - things work not too well, yet diff --git a/po/Makefile b/po/Makefile index a93f7755..afb21d9c 100644 --- a/po/Makefile +++ b/po/Makefile @@ -21,8 +21,11 @@ INSTALL = install -c INSTALL_DATA = ${INSTALL} -m 644 # Not giving an explicit path improves the chances of finding these +# On the other hand, I have both xgettext 0.10.35 (in /usr/bin) and +# /usr/openwin/bin/xgettext, and only the former can be used here.. GENCAT = gencat -MSGFMT = msgfmt -c # -c: undocumented, but useful option +MSGFMT = msgfmt +# MSGFMT = msgfmt -c # -c: undocumented, but useful option XGETTEXT = xgettext MSGMERGE = msgmerge diff --git a/po/POTFILES.in b/po/POTFILES.in index 6ce99166..3e9c9618 100644 --- a/po/POTFILES.in +++ b/po/POTFILES.in @@ -1,15 +1,13 @@ -hwclock/cmos.c -hwclock/hwclock.c -hwclock/kd.c -hwclock/rtc.c -hwclock/shhopt.c disk-utils/blockdev.c +disk-utils/elvtune.c disk-utils/fdformat.c disk-utils/fsck.minix.c disk-utils/isosize.c +disk-utils/mkfs.bfs.c disk-utils/mkfs.c disk-utils/mkfs.minix.c disk-utils/mkswap.c +disk-utils/raw.c disk-utils/setfdprm.c fdisk/cfdisk.c fdisk/fdisk.c @@ -19,18 +17,28 @@ fdisk/fdisksgilabel.c fdisk/fdisksunlabel.c fdisk/i386_sys_types.c fdisk/llseek.c +fdisk/partname.c fdisk/sfdisk.c games/banner.c getopt-1.1.0a/getopt.c +hwclock/clock-ppc.c +hwclock/cmos.c +hwclock/hwclock.c +hwclock/kd.c +hwclock/rtc.c +hwclock/shhopt.c +lib/carefulputc.c lib/env.c lib/err.c lib/my_reboot.c lib/setproctitle.c +lib/xstrncpy.c login-utils/agetty.c login-utils/checktty.c login-utils/chfn.c login-utils/chsh.c login-utils/cryptocard.c +login-utils/initctl.c login-utils/islocal.c login-utils/last.c login-utils/login.c @@ -52,11 +60,12 @@ misc-utils/mcookie.c misc-utils/md5.c misc-utils/namei.c misc-utils/procs.c +misc-utils/rename.c misc-utils/script.c misc-utils/setterm.c -misc-utils/tsort.c misc-utils/whereis.c misc-utils/write.c +mount/bind.c mount/fstab.c mount/getusername.c mount/lomount.c @@ -64,7 +73,9 @@ mount/mntent.c mount/mount.c mount/mount_by_label.c mount/mount_guess_fstype.c +mount/mount_guess_rootdev.c mount/nfsmount.c +mount/pivot_root.c mount/realpath.c mount/sundries.c mount/swapon.c @@ -95,4 +106,3 @@ text-utils/odsyntax.c text-utils/parse.c text-utils/rev.c text-utils/ul.c -kbd/kbdrate.c diff --git a/po/cat-id-tbl.c b/po/cat-id-tbl.c index 42dc43ad..1ce59696 100644 --- a/po/cat-id-tbl.c +++ b/po/cat-id-tbl.c @@ -8,294 +8,116 @@ const struct _msg_ent _msg_tbl[] = { {"", 1}, - {"booted from MILO\n", 2}, - {"Ruffian BCD clock\n", 3}, - {"clockport adjusted to 0x%x\n", 4}, - {"funky TOY!\n", 5}, - {"%s: atomic %s failed for 1000 iterations!", 6}, - {"Cannot open /dev/port: %s", 7}, - {"I failed to get permission because I didnt try.\n", 8}, - {"%s is unable to get I/O port access: the iopl(3) call failed.\n", 9}, - {"Probably you need root privileges.\n", 10}, - {"Assuming hardware clock is kept in %s time.\n", 11}, - {"UTC", 12}, - {"local", 13}, - {"%s: Warning: unrecognized third line in adjtime file\n", 14}, - {"(Expected: `UTC' or `LOCAL' or nothing.)\n", 15}, - {"Last drift adjustment done at %d seconds after 1969\n", 16}, - {"Last calibration done at %d seconds after 1969\n", 17}, - {"Hardware clock is on %s time\n", 18}, - {"unknown", 19}, - {"Waiting for clock tick...\n", 20}, - {"...got clock tick\n", 21}, - {"Invalid values in hardware clock: %4d/%.2d/%.2d %.2d:%.2d:%.2d\n", 22}, - {"Hw clock time : %4d/%.2d/%.2d %.2d:%.2d:%.2d = %ld seconds since 1969\n", 23}, - {"Time read from Hardware Clock: %4d/%.2d/%.2d %02d:%02d:%02d\n", 24}, - {"Setting Hardware Clock to %.2d:%.2d:%.2d = %d seconds since 1969\n", 25}, - {"Clock not changed - testing only.\n", 26}, - {"\ -Time elapsed since reference time has been %.6f seconds.\n\ -Delaying further to reach the next full second.\n", 27}, - {"\ -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", 28}, - {"%s %.6f seconds\n", 29}, - {"No --date option specified.\n", 30}, - {"\ -The value of the --date option is not a valid date.\n\ -In particular, it contains quotation marks.\n", 31}, - {"Issuing date command: %s\n", 32}, - {"Unable to run 'date' program in /bin/sh shell. popen() failed", 33}, - {"response from date command = %s\n", 34}, - {"\ -The date command issued by %s returned unexpected results.\n\ -The command was:\n\ - %s\n\ -The response was:\n\ - %s\n", 35}, - {"\ -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", 36}, - {"date string %s equates to %d seconds since 1969.\n", 37}, - {"\ -The Hardware Clock does not contain a valid time, so we cannot set the \ -System Time from it.\n", 38}, - {"Calling settimeofday:\n", 39}, - {"\ttv.tv_sec = %ld, tv.tv_usec = %ld\n", 40}, - {"\ttz.tz_minuteswest = %d\n", 41}, - {"Not setting system clock because running in test mode.\n", 42}, - {"Must be superuser to set system clock.\n", 43}, - {"settimeofday() failed", 44}, - {"\ -Not adjusting drift factor because the Hardware Clock previously contained \ -garbage.\n", 45}, - {"\ -Not adjusting drift factor because it has been less than a day since the \ -last calibration.\n", 46}, - {"\ -Clock drifted %d 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", 47}, - {"Time since last adjustment is %d seconds\n", 48}, - {"Need to insert %d seconds and refer time back %.6f seconds ago\n", 49}, - {"Not updating adjtime file because of testing mode.\n", 50}, - {"\ -Would have written the following to %s:\n\ -%s", 51}, - {"Drift adjustment parameters not updated.\n", 52}, - {"\ -The Hardware Clock does not contain a valid time, so we cannot adjust it.\n", 53}, - {"Needed adjustment is less than one second, so not setting clock.\n", 54}, - {"Using %s.\n", 55}, - {"No usable clock interface found.\n", 56}, - {"Unable to set system clock.\n", 57}, - {"\ -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", 58}, - {"Unable to get the epoch value from the kernel.\n", 59}, - {"Kernel is assuming an epoch value of %lu\n", 60}, - {"\ -To set the epoch value, you must use the 'epoch' option to tell to what \ -value to set it.\n", 61}, - {"Not setting the epoch to %d - testing only.\n", 62}, - {"Unable to set the epoch value in the kernel.\n", 63}, - {"\ -hwclock - query and set the hardware clock (RTC)\n\ -\n\ -Usage: hwclock [function] [options...]\n\ -\n\ -Functions:\n\ - --help show this help\n\ - --show read hardware clock and print result\n\ - --set set the rtc to the time given with --date\n\ - --hctosys set the system time from the hardware clock\n\ - --systohc set the hardware clock to the current system time\n\ - --adjust adjust the rtc to account for systematic drift since \n\ - the clock was last set or adjusted\n\ - --getepoch print out the kernel's hardware clock epoch value\n\ - --setepoch set the kernel's hardware clock epoch value to the \n\ - value given with --epoch\n\ - --version print out the version of hwclock to stdout\n\ -\n\ -Options: \n\ - --utc the hardware clock is kept in coordinated universal time\n\ - --localtime the hardware clock is kept in local time\n\ - --directisa access the ISA bus directly instead of %s\n\ - --badyear ignore rtc's year because the bios is broken\n\ - --date specifies the time to which to set the hardware clock\n\ - --epoch=year specifies the year which is the beginning of the \n\ - hardware clock's epoch value\n", 64}, - {"\ - --jensen, --arc, --srm, --funky-toy\n\ - tell hwclock the type of alpha you have (see hwclock(8))\n", 65}, - {"%s takes no non-option arguments. You supplied %d.\n", 66}, - {"\ -You have specified multiple function options.\n\ -You can only perform one function at a time.\n", 67}, - {"\ -%s: The --utc and --localtime options are mutually exclusive. You specified \ -both.\n", 68}, - {"No usable set-to time. Cannot set clock.\n", 69}, - {"Sorry, only the superuser can change the Hardware Clock.\n", 70}, - {"Sorry, only the superuser can change the System Clock.\n", 71}, - {"\ -Sorry, only the superuser can change the Hardware Clock epoch in the \ -kernel.\n", 72}, - {"Cannot access the Hardware Clock via any known method.\n", 73}, - {"\ -Use the --debug option to see the details of our search for an access \ -method.\n", 74}, - {"Waiting in loop for time from KDGHWCLK to change\n", 75}, - {"KDGHWCLK ioctl to read time failed", 76}, - {"Timed out waiting for time change.\n", 77}, - {"KDGHWCLK ioctl to read time failed in loop", 78}, - {"ioctl() failed to read time from /dev/tty1", 79}, - {"ioctl() to open /dev/tty1 failed", 80}, - {"KDGHWCLK ioctl failed", 81}, - {"Can't open /dev/tty1", 82}, - {"ioctl() to %s to read the time failed.\n", 83}, - {"Waiting in loop for time from %s to change\n", 84}, - {"open() of %s failed", 85}, - {"%s does not have interrupt functions. ", 86}, - {"read() to %s to wait for clock tick failed", 87}, - {"ioctl() to %s to turn off update interrupts failed", 88}, - {"ioctl() to %s to turn on update interrupts failed unexpectedly", 89}, - {"Unable to open %s", 90}, - {"ioctl() to %s to set the time failed.\n", 91}, - {"ioctl(%s) was successful.\n", 92}, - {"Open of %s failed", 93}, - {"\ -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", 94}, - {"ioctl(RTC_EPOCH_READ) to %s failed", 95}, - {"we have read epoch %ld from %s with RTC_EPOCH_READ ioctl.\n", 96}, - {"The epoch value may not be less than 1900. You requested %ld\n", 97}, - {"setting epoch to %ld with RTC_EPOCH_SET ioctl to %s.\n", 98}, - {"\ -The kernel device driver for %s does not have the RTC_EPOCH_SET ioctl.\n", 99}, - {"ioctl(RTC_EPOCH_SET) to %s failed", 100}, - {"invalid number `%s'\n", 101}, - {"number `%s' to `%s' out of range\n", 102}, - {"unrecognized option `%s'\n", 103}, - {"option `%s' requires an argument\n", 104}, - {"option `%s' doesn't allow an argument\n", 105}, - {"unrecognized option `-%c'\n", 106}, - {"set read-only", 107}, - {"set read-write", 108}, - {"get read-only", 109}, - {"get sectorsize", 110}, - {"get size", 111}, - {"set readahead", 112}, - {"get readahead", 113}, - {"flush buffers", 114}, - {"reread partition table", 115}, - {"Usage: %s [-V] [-v|-q] commands devices\n", 116}, - {"Available commands:\n", 117}, - {"%s: Unknown command: %s\n", 118}, - {"%s requires an argument\n", 119}, - {"Formatting ... ", 120}, - {"done\n", 121}, - {"Verifying ... ", 122}, - {"Read: ", 123}, - {"Problem reading cylinder %d, expected %d, read %d\n", 124}, + {"set read-only", 2}, + {"set read-write", 3}, + {"get read-only", 4}, + {"get sectorsize", 5}, + {"get size", 6}, + {"set readahead", 7}, + {"get readahead", 8}, + {"flush buffers", 9}, + {"reread partition table", 10}, + {"Usage: %s [-V] [-v|-q] commands devices\n", 11}, + {"Available commands:\n", 12}, + {"%s: Unknown command: %s\n", 13}, + {"%s requires an argument\n", 14}, + {"usage:\n", 15}, + {"Formatting ... ", 16}, + {"done\n", 17}, + {"Verifying ... ", 18}, + {"Read: ", 19}, + {"Problem reading cylinder %d, expected %d, read %d\n", 20}, {"\ bad data in cyl %d\n\ -Continuing ... ", 125}, - {"usage: %s [ -n ] device\n", 126}, - {"%s from %s\n", 127}, - {"%s: not a floppy device\n", 128}, - {"Could not determine current format type", 129}, - {"%s-sided, %d tracks, %d sec/track. Total capacity %d kB.\n", 130}, - {"Double", 131}, - {"Single", 132}, - {"Usage: %s [-larvsmf] /dev/name\n", 133}, - {"%s is mounted.\t ", 134}, - {"Do you really want to continue", 135}, - {"check aborted.\n", 136}, - {"Zone nr < FIRSTZONE in file `", 137}, - {"Zone nr >= ZONES in file `", 138}, - {"Remove block", 139}, - {"Read error: unable to seek to block in file '", 140}, - {"Read error: bad block in file '", 141}, +Continuing ... ", 21}, + {"usage: %s [ -n ] device\n", 22}, + {"%s from %s\n", 23}, + {"%s: not a floppy device\n", 24}, + {"Could not determine current format type", 25}, + {"%s-sided, %d tracks, %d sec/track. Total capacity %d kB.\n", 26}, + {"Double", 27}, + {"Single", 28}, + {"Usage: %s [-larvsmf] /dev/name\n", 29}, + {"%s is mounted.\t ", 30}, + {"Do you really want to continue", 31}, + {"check aborted.\n", 32}, + {"Zone nr < FIRSTZONE in file `", 33}, + {"Zone nr >= ZONES in file `", 34}, + {"Remove block", 35}, + {"Read error: unable to seek to block in file '", 36}, + {"Read error: bad block in file '", 37}, {"\ Internal error: trying to write bad block\n\ -Write request ignored\n", 142}, - {"seek failed in write_block", 143}, - {"Write error: bad block in file '", 144}, - {"seek failed in write_super_block", 145}, - {"unable to write super-block", 146}, - {"Unable to write inode map", 147}, - {"Unable to write zone map", 148}, - {"Unable to write inodes", 149}, - {"seek failed", 150}, - {"unable to read super block", 151}, - {"bad magic number in super-block", 152}, - {"Only 1k blocks/zones supported", 153}, - {"bad s_imap_blocks field in super-block", 154}, - {"bad s_zmap_blocks field in super-block", 155}, - {"Unable to allocate buffer for inode map", 156}, - {"Unable to allocate buffer for inodes", 157}, - {"Unable to allocate buffer for inode count", 158}, - {"Unable to allocate buffer for zone count", 159}, - {"Unable to read inode map", 160}, - {"Unable to read zone map", 161}, - {"Unable to read inodes", 162}, - {"Warning: Firstzone != Norm_firstzone\n", 163}, - {"%ld inodes\n", 164}, - {"%ld blocks\n", 165}, - {"Firstdatazone=%ld (%ld)\n", 166}, - {"Zonesize=%d\n", 167}, - {"Maxsize=%ld\n", 168}, - {"Filesystem state=%d\n", 169}, +Write request ignored\n", 38}, + {"seek failed in write_block", 39}, + {"Write error: bad block in file '", 40}, + {"seek failed in write_super_block", 41}, + {"unable to write super-block", 42}, + {"Unable to write inode map", 43}, + {"Unable to write zone map", 44}, + {"Unable to write inodes", 45}, + {"seek failed", 46}, + {"unable to read super block", 47}, + {"bad magic number in super-block", 48}, + {"Only 1k blocks/zones supported", 49}, + {"bad s_imap_blocks field in super-block", 50}, + {"bad s_zmap_blocks field in super-block", 51}, + {"Unable to allocate buffer for inode map", 52}, + {"Unable to allocate buffer for inodes", 53}, + {"Unable to allocate buffer for inode count", 54}, + {"Unable to allocate buffer for zone count", 55}, + {"Unable to read inode map", 56}, + {"Unable to read zone map", 57}, + {"Unable to read inodes", 58}, + {"Warning: Firstzone != Norm_firstzone\n", 59}, + {"%ld inodes\n", 60}, + {"%ld blocks\n", 61}, + {"Firstdatazone=%ld (%ld)\n", 62}, + {"Zonesize=%d\n", 63}, + {"Maxsize=%ld\n", 64}, + {"Filesystem state=%d\n", 65}, {"\ namelen=%d\n\ -\n", 170}, - {"Inode %d marked not used, but used for file '", 171}, - {"Mark in use", 172}, - {" has mode %05o\n", 173}, - {"Warning: inode count too big.\n", 174}, - {"root inode isn't a directory", 175}, - {"Block has been used before. Now in file `", 176}, - {"Clear", 177}, - {"Block %d in file `", 178}, - {"' is marked not in use.", 179}, - {"Correct", 180}, - {" contains a bad inode number for file '", 181}, - {" Remove", 182}, - {": bad directory: '.' isn't first\n", 183}, - {": bad directory: '..' isn't second\n", 184}, - {"internal error", 185}, - {": bad directory: size<32", 186}, - {": bad directory: size < 32", 187}, - {"seek failed in bad_zone", 188}, - {"Inode %d mode not cleared.", 189}, - {"Inode %d not used, marked used in the bitmap.", 190}, - {"Inode %d used, marked unused in the bitmap.", 191}, - {"Inode %d (mode = %07o), i_nlinks=%d, counted=%d.", 192}, - {"Set i_nlinks to count", 193}, - {"Zone %d: marked in use, no file uses it.", 194}, - {"Unmark", 195}, - {"Zone %d: %sin use, counted=%d\n", 196}, - {"not ", 197}, - {"Set", 198}, - {"bad inode size", 199}, - {"bad v2 inode size", 200}, - {"need terminal for interactive repairs", 201}, - {"unable to open '%s'", 202}, - {"%s is clean, no check.\n", 203}, - {"Forcing filesystem check on %s.\n", 204}, - {"Filesystem on %s is dirty, needs checking.\n", 205}, +\n", 66}, + {"Inode %d marked not used, but used for file '", 67}, + {"Mark in use", 68}, + {" has mode %05o\n", 69}, + {"Warning: inode count too big.\n", 70}, + {"root inode isn't a directory", 71}, + {"Block has been used before. Now in file `", 72}, + {"Clear", 73}, + {"Block %d in file `", 74}, + {"' is marked not in use.", 75}, + {"Correct", 76}, + {" contains a bad inode number for file '", 77}, + {" Remove", 78}, + {": bad directory: '.' isn't first\n", 79}, + {": bad directory: '..' isn't second\n", 80}, + {"internal error", 81}, + {": bad directory: size<32", 82}, + {": bad directory: size < 32", 83}, + {"seek failed in bad_zone", 84}, + {"Inode %d mode not cleared.", 85}, + {"Inode %d not used, marked used in the bitmap.", 86}, + {"Inode %d used, marked unused in the bitmap.", 87}, + {"Inode %d (mode = %07o), i_nlinks=%d, counted=%d.", 88}, + {"Set i_nlinks to count", 89}, + {"Zone %d: marked in use, no file uses it.", 90}, + {"Unmark", 91}, + {"Zone %d: %sin use, counted=%d\n", 92}, + {"not ", 93}, + {"Set", 94}, + {"bad inode size", 95}, + {"bad v2 inode size", 96}, + {"need terminal for interactive repairs", 97}, + {"unable to open '%s'", 98}, + {"%s is clean, no check.\n", 99}, + {"Forcing filesystem check on %s.\n", 100}, + {"Filesystem on %s is dirty, needs checking.\n", 101}, {"\ \n\ -%6ld inodes used (%ld%%)\n", 206}, - {"%6ld zones used (%ld%%)\n", 207}, +%6ld inodes used (%ld%%)\n", 102}, + {"%6ld zones used (%ld%%)\n", 103}, {"\ \n\ %6d regular files\n\ @@ -305,278 +127,306 @@ namelen=%d\n\ %6d links\n\ %6d symbolic links\n\ ------\n\ -%6d files\n", 208}, +%6d files\n", 104}, {"\ ----------------------------\n\ FILE SYSTEM HAS BEEN CHANGED\n\ -----------------------------\n", 209}, - {"%s: failed to open: %s\n", 210}, - {"%s: seek error on %s\n", 211}, - {"%s: read error on %s\n", 212}, - {"sector count: %d, sector size: %d\n", 213}, - {"%s: option parse error\n", 214}, - {"Usage: %s [-x] [-d <num>] iso9660-image\n", 215}, - {"Usage: mkfs [-V] [-t fstype] [fs-options] device [size]\n", 216}, - {"%s: Out of memory!\n", 217}, - {"mkfs version %s (%s)\n", 218}, - {"Usage: %s [-c | -l filename] [-nXX] [-iXX] /dev/name [blocks]\n", 219}, - {"%s is mounted; will not make a filesystem here!", 220}, - {"seek to boot block failed in write_tables", 221}, - {"unable to clear boot sector", 222}, - {"seek failed in write_tables", 223}, - {"unable to write inode map", 224}, - {"unable to write zone map", 225}, - {"unable to write inodes", 226}, - {"write failed in write_block", 227}, - {"too many bad blocks", 228}, - {"not enough good blocks", 229}, - {"unable to allocate buffers for maps", 230}, - {"unable to allocate buffer for inodes", 231}, +----------------------------\n", 105}, + {"%s: failed to open: %s\n", 106}, + {"%s: seek error on %s\n", 107}, + {"%s: read error on %s\n", 108}, + {"sector count: %d, sector size: %d\n", 109}, + {"%s: option parse error\n", 110}, + {"Usage: %s [-x] [-d <num>] iso9660-image\n", 111}, + {"\ +Usage: %s [-v] [-N nr-of-inodes] [-V volume-name]\n\ + [-F fsname] device [block-count]\n", 112}, + {"volume name too long", 113}, + {"fsname name too long", 114}, + {"cannot stat device %s", 115}, + {"%s is not a block special device", 116}, + {"cannot open %s", 117}, + {"cannot get size of %s", 118}, + {"blocks argument too large, max is %lu", 119}, + {"too many inodes - max is 512", 120}, + {"not enough space, need at least %lu blocks", 121}, + {"Device: %s\n", 122}, + {"Volume: <%-6s>\n", 123}, + {"FSname: <%-6s>\n", 124}, + {"BlockSize: %d\n", 125}, + {"Inodes: %d (in 1 block)\n", 126}, + {"Inodes: %d (in %ld blocks)\n", 127}, + {"Blocks: %ld\n", 128}, + {"Inode end: %d, Data end: %d\n", 129}, + {"error writing superblock", 130}, + {"error writing root inode", 131}, + {"error writing inode", 132}, + {"seek error", 133}, + {"error writing . entry", 134}, + {"error writing .. entry", 135}, + {"error closing %s", 136}, + {"Usage: mkfs [-V] [-t fstype] [fs-options] device [size]\n", 137}, + {"%s: Out of memory!\n", 138}, + {"mkfs version %s (%s)\n", 139}, + {"Usage: %s [-c | -l filename] [-nXX] [-iXX] /dev/name [blocks]\n", 140}, + {"%s is mounted; will not make a filesystem here!", 141}, + {"seek to boot block failed in write_tables", 142}, + {"unable to clear boot sector", 143}, + {"seek failed in write_tables", 144}, + {"unable to write inode map", 145}, + {"unable to write zone map", 146}, + {"unable to write inodes", 147}, + {"write failed in write_block", 148}, + {"too many bad blocks", 149}, + {"not enough good blocks", 150}, + {"unable to allocate buffers for maps", 151}, + {"unable to allocate buffer for inodes", 152}, {"\ Maxsize=%ld\n\ -\n", 232}, - {"seek failed during testing of blocks", 233}, - {"Weird values in do_check: probably bugs\n", 234}, - {"seek failed in check_blocks", 235}, - {"bad blocks before data-area: cannot make fs", 236}, - {"%d bad blocks\n", 237}, - {"one bad block\n", 238}, - {"can't open file of bad blocks", 239}, - {"%s: not compiled with minix v2 support\n", 240}, - {"strtol error: number of blocks not specified", 241}, - {"unable to open %s", 242}, - {"unable to stat %s", 243}, - {"will not try to make filesystem on '%s'", 244}, - {"Bad user-specified page size %d\n", 245}, - {"Using user-specified page size %d, instead of the system values %d/%d\n", 246}, - {"Assuming pages of size %d (not %d)\n", 247}, - {"Usage: %s [-c] [-v0|-v1] [-pPAGESZ] /dev/name [blocks]\n", 248}, - {"too many bad pages", 249}, - {"Out of memory", 250}, - {"one bad page\n", 251}, - {"%d bad pages\n", 252}, - {"%s: error: Nowhere to set up swap on?\n", 253}, - {"%s: error: size %ld is larger than device size %d\n", 254}, - {"%s: error: unknown version %d\n", 255}, - {"%s: error: swap area needs to be at least %ldkB\n", 256}, - {"%s: warning: truncating swap area to %ldkB\n", 257}, - {"Will not try to make swapdevice on '%s'", 258}, - {"fatal: first page unreadable", 259}, +\n", 153}, + {"seek failed during testing of blocks", 154}, + {"Weird values in do_check: probably bugs\n", 155}, + {"seek failed in check_blocks", 156}, + {"bad blocks before data-area: cannot make fs", 157}, + {"%d bad blocks\n", 158}, + {"one bad block\n", 159}, + {"can't open file of bad blocks", 160}, + {"%s: not compiled with minix v2 support\n", 161}, + {"strtol error: number of blocks not specified", 162}, + {"unable to open %s", 163}, + {"unable to stat %s", 164}, + {"will not try to make filesystem on '%s'", 165}, + {"Bad user-specified page size %d\n", 166}, + {"Using user-specified page size %d, instead of the system values %d/%d\n", 167}, + {"Assuming pages of size %d (not %d)\n", 168}, + {"Usage: %s [-c] [-v0|-v1] [-pPAGESZ] /dev/name [blocks]\n", 169}, + {"too many bad pages", 170}, + {"Out of memory", 171}, + {"one bad page\n", 172}, + {"%d bad pages\n", 173}, + {"%s: error: Nowhere to set up swap on?\n", 174}, + {"%s: error: size %ld is larger than device size %d\n", 175}, + {"%s: error: unknown version %d\n", 176}, + {"%s: error: swap area needs to be at least %ldkB\n", 177}, + {"%s: warning: truncating swap area to %ldkB\n", 178}, + {"Will not try to make swapdevice on '%s'", 179}, + {"fatal: first page unreadable", 180}, {"\ %s: Device '%s' contains a valid Sun disklabel.\n\ This probably means creating v0 swap would destroy your partition table\n\ No swap created. If you really want to create swap v0 on that device, use\n\ -the -f option to force it.\n", 260}, - {"Unable to set up swap-space: unreadable", 261}, - {"Setting up swapspace version %d, size = %ld bytes\n", 262}, - {"unable to rewind swap-device", 263}, - {"unable to write signature page", 264}, - {"fsync failed", 265}, - {"Invalid number: %s\n", 266}, - {"Syntax error: '%s'\n", 267}, - {"No such parameter set: '%s'\n", 268}, - {"usage: %s [ -p ] dev name\n", 269}, - {"\ - %s [ -p ] dev size sect heads tracks stretch gap rate spec1 fmt_gap\n", 270}, - {" %s [ -c | -y | -n | -d ] dev\n", 271}, - {" %s [ -c | -y | -n ] dev\n", 272}, - {"Unusable", 273}, - {"Free Space", 274}, - {"Linux ext2", 275}, - {"Linux", 276}, - {"OS/2 HPFS", 277}, - {"OS/2 IFS", 278}, - {"NTFS", 279}, - {"Disk has been changed.\n", 280}, - {"Reboot the system to ensure the partition table is correctly updated.\n", 281}, +the -f option to force it.\n", 181}, + {"Unable to set up swap-space: unreadable", 182}, + {"Setting up swapspace version %d, size = %ld bytes\n", 183}, + {"unable to rewind swap-device", 184}, + {"unable to write signature page", 185}, + {"fsync failed", 186}, + {"Invalid number: %s\n", 187}, + {"Syntax error: '%s'\n", 188}, + {"No such parameter set: '%s'\n", 189}, + {"usage: %s [ -p ] dev name\n", 190}, + {"\ + %s [ -p ] dev size sect heads tracks stretch gap rate spec1 fmt_gap\n", 191}, + {" %s [ -c | -y | -n | -d ] dev\n", 192}, + {" %s [ -c | -y | -n ] dev\n", 193}, + {"Unusable", 194}, + {"Free Space", 195}, + {"Linux ext2", 196}, + {"Linux", 197}, + {"OS/2 HPFS", 198}, + {"OS/2 IFS", 199}, + {"NTFS", 200}, + {"Disk has been changed.\n", 201}, + {"Reboot the system to ensure the partition table is correctly updated.\n", 202}, {"\ \n\ WARNING: If you have created or modified any\n\ DOS 6.x partitions, please see the cfdisk manual\n\ -page for additional information.\n", 282}, - {"FATAL ERROR", 283}, - {"Press any key to exit cfdisk", 284}, - {"Cannot seek on disk drive", 285}, - {"Cannot read disk drive", 286}, - {"Cannot write disk drive", 287}, - {"Too many partitions", 288}, - {"Partition begins before sector 0", 289}, - {"Partition ends before sector 0", 290}, - {"Partition begins after end-of-disk", 291}, - {"Partition ends after end-of-disk", 292}, - {"logical partitions not in disk order", 293}, - {"logical partitions overlap", 294}, - {"enlarged logical partitions overlap", 295}, - {"\ -!!!! Internal error creating logical drive with no extended partition !!!!", 296}, - {"\ -Cannot create logical drive here -- would create two extended partitions", 297}, - {"Menu item too long. Menu may look odd.", 298}, - {"Menu without direction. Defaulting horizontal.", 299}, - {"Illegal key", 300}, - {"Press a key to continue", 301}, - {"Primary", 302}, - {"Create a new primary partition", 303}, - {"Logical", 304}, - {"Create a new logical partition", 305}, - {"Cancel", 306}, - {"Don't create a partition", 307}, - {"!!! Internal error !!!", 308}, - {"Size (in MB): ", 309}, - {"Beginning", 310}, - {"Add partition at beginning of free space", 311}, - {"End", 312}, - {"Add partition at end of free space", 313}, - {"No room to create the extended partition", 314}, - {"Bad signature on partition table", 315}, - {"You specified more cylinders than fit on disk", 316}, - {"Cannot open disk drive", 317}, - {"Opened disk read-only - you have no permission to write", 318}, - {"Cannot get disk size", 319}, - {"Bad primary partition", 320}, - {"Bad logical partition", 321}, - {"Warning!! This may destroy data on your disk!", 322}, - {"Are you sure you want write the partition table to disk? (yes or no): ", 323}, - {"no", 324}, - {"Did not write partition table to disk", 325}, - {"yes", 326}, - {"Please enter `yes' or `no'", 327}, - {"Writing partition table to disk...", 328}, - {"Wrote partition table to disk", 329}, - {"\ -Wrote partition table, but re-read table failed. Reboot to update table.", 330}, - {"\ -Not precisely one primary partition is bootable. DOS MBR cannot boot this.", 331}, - {"Enter filename or press RETURN to display on screen: ", 332}, - {"Cannot open file '%s'", 333}, - {"Disk Drive: %s\n", 334}, - {"Sector 0:\n", 335}, - {"Sector %d:\n", 336}, - {" None ", 337}, - {" Pri/Log", 338}, - {" Primary", 339}, - {" Logical", 340}, - {"Unknown", 341}, - {"Boot (%02X)", 342}, - {"Unknown (%02X)", 343}, - {"None (%02X)", 344}, - {"Partition Table for %s\n", 345}, - {" First Last\n", 346}, - {"\ - # Type Sector Sector Offset Length Filesystem Type (ID) Flags\n", 347}, +page for additional information.\n", 203}, + {"FATAL ERROR", 204}, + {"Press any key to exit cfdisk", 205}, + {"Cannot seek on disk drive", 206}, + {"Cannot read disk drive", 207}, + {"Cannot write disk drive", 208}, + {"Too many partitions", 209}, + {"Partition begins before sector 0", 210}, + {"Partition ends before sector 0", 211}, + {"Partition begins after end-of-disk", 212}, + {"Partition ends after end-of-disk", 213}, + {"logical partitions not in disk order", 214}, + {"logical partitions overlap", 215}, + {"enlarged logical partitions overlap", 216}, + {"\ +!!!! Internal error creating logical drive with no extended partition !!!!", 217}, + {"\ +Cannot create logical drive here -- would create two extended partitions", 218}, + {"Menu item too long. Menu may look odd.", 219}, + {"Menu without direction. Defaulting horizontal.", 220}, + {"Illegal key", 221}, + {"Press a key to continue", 222}, + {"Primary", 223}, + {"Create a new primary partition", 224}, + {"Logical", 225}, + {"Create a new logical partition", 226}, + {"Cancel", 227}, + {"Don't create a partition", 228}, + {"!!! Internal error !!!", 229}, + {"Size (in MB): ", 230}, + {"Beginning", 231}, + {"Add partition at beginning of free space", 232}, + {"End", 233}, + {"Add partition at end of free space", 234}, + {"No room to create the extended partition", 235}, + {"Bad signature on partition table", 236}, + {"You specified more cylinders than fit on disk", 237}, + {"Cannot open disk drive", 238}, + {"Opened disk read-only - you have no permission to write", 239}, + {"Cannot get disk size", 240}, + {"Bad primary partition", 241}, + {"Bad logical partition", 242}, + {"Warning!! This may destroy data on your disk!", 243}, + {"Are you sure you want write the partition table to disk? (yes or no): ", 244}, + {"no", 245}, + {"Did not write partition table to disk", 246}, + {"yes", 247}, + {"Please enter `yes' or `no'", 248}, + {"Writing partition table to disk...", 249}, + {"Wrote partition table to disk", 250}, + {"\ +Wrote partition table, but re-read table failed. Reboot to update table.", 251}, + {"No primary partitions are marked bootable. DOS MBR cannot boot this.", 252}, + {"\ +More than one primary partition is marked bootable. DOS MBR cannot boot this.", 253}, + {"Enter filename or press RETURN to display on screen: ", 254}, + {"Cannot open file '%s'", 255}, + {"Disk Drive: %s\n", 256}, + {"Sector 0:\n", 257}, + {"Sector %d:\n", 258}, + {" None ", 259}, + {" Pri/Log", 260}, + {" Primary", 261}, + {" Logical", 262}, + {"Unknown", 263}, + {"Boot (%02X)", 264}, + {"Unknown (%02X)", 265}, + {"None (%02X)", 266}, + {"Partition Table for %s\n", 267}, + {" First Last\n", 268}, + {"\ + # Type Sector Sector Offset Length Filesystem Type (ID) Flags\n", 269}, {"\ -- ------- -------- --------- ------ --------- ---------------------- \ ----------\n", 348}, - {" ---Starting--- ----Ending---- Start Number of\n", 349}, - {" # Flags Head Sect Cyl ID Head Sect Cyl Sector Sectors\n", 350}, - {"-- ----- ---- ---- ---- ---- ---- ---- ---- -------- ---------\n", 351}, - {"Raw", 352}, - {"Print the table using raw data format", 353}, - {"Sectors", 354}, - {"Print the table ordered by sectors", 355}, - {"Table", 356}, - {"Just print the partition table", 357}, - {"Don't print the table", 358}, - {"Help Screen for cfdisk", 359}, - {"This is cfdisk, a curses based disk partitioning program, which", 360}, - {"allows you to create, delete and modify partitions on your hard", 361}, - {"disk drive.", 362}, - {"Copyright (C) 1994-1999 Kevin E. Martin & aeb", 363}, - {"Command Meaning", 364}, - {"------- -------", 365}, - {" b Toggle bootable flag of the current partition", 366}, - {" d Delete the current partition", 367}, - {" g Change cylinders, heads, sectors-per-track parameters", 368}, - {" WARNING: This option should only be used by people who", 369}, - {" know what they are doing.", 370}, - {" h Print this screen", 371}, - {" m Maximize disk usage of the current partition", 372}, - {" Note: This may make the partition incompatible with", 373}, - {" DOS, OS/2, ...", 374}, - {" n Create new partition from free space", 375}, - {" p Print partition table to the screen or to a file", 376}, - {" There are several different formats for the partition", 377}, - {" that you can choose from:", 378}, - {" r - Raw data (exactly what would be written to disk)", 379}, - {" s - Table ordered by sectors", 380}, - {" t - Table in raw format", 381}, - {" q Quit program without writing partition table", 382}, - {" t Change the filesystem type", 383}, - {" u Change units of the partition size display", 384}, - {" Rotates through MB, sectors and cylinders", 385}, - {" W Write partition table to disk (must enter upper case W)", 386}, - {" Since this might destroy data on the disk, you must", 387}, - {" either confirm or deny the write by entering `yes' or", 388}, - {" `no'", 389}, - {"Up Arrow Move cursor to the previous partition", 390}, - {"Down Arrow Move cursor to the next partition", 391}, - {"CTRL-L Redraws the screen", 392}, - {" ? Print this screen", 393}, - {"Note: All of the commands can be entered with either upper or lower", 394}, - {"case letters (except for Writes).", 395}, - {"Cylinders", 396}, - {"Change cylinder geometry", 397}, - {"Heads", 398}, - {"Change head geometry", 399}, - {"Change sector geometry", 400}, - {"Done", 401}, - {"Done with changing geometry", 402}, - {"Enter the number of cylinders: ", 403}, - {"Illegal cylinders value", 404}, - {"Enter the number of heads: ", 405}, - {"Illegal heads value", 406}, - {"Enter the number of sectors per track: ", 407}, - {"Illegal sectors value", 408}, - {"Enter filesystem type: ", 409}, - {"Cannot change FS Type to empty", 410}, - {"Cannot change FS Type to extended", 411}, - {"Boot", 412}, - {"Unk(%02X)", 413}, - {", NC", 414}, - {"NC", 415}, - {"Pri/Log", 416}, - {"Disk Drive: %s", 417}, - {"Size: %lld bytes", 418}, - {"Heads: %d Sectors per Track: %d Cylinders: %d", 419}, - {"Name", 420}, - {"Flags", 421}, - {"Part Type", 422}, - {"FS Type", 423}, - {"[Label]", 424}, - {" Sectors", 425}, - {"Size (MB)", 426}, - {"Size (GB)", 427}, - {"Bootable", 428}, - {"Toggle bootable flag of the current partition", 429}, - {"Delete", 430}, - {"Delete the current partition", 431}, - {"Geometry", 432}, - {"Change disk geometry (experts only)", 433}, - {"Help", 434}, - {"Print help screen", 435}, - {"Maximize", 436}, - {"Maximize disk usage of the current partition (experts only)", 437}, - {"New", 438}, - {"Create new partition from free space", 439}, - {"Print", 440}, - {"Print partition table to the screen or to a file", 441}, - {"Quit", 442}, - {"Quit program without writing partition table", 443}, - {"Type", 444}, - {"Change the filesystem type (DOS, Linux, OS/2 and so on)", 445}, - {"Units", 446}, - {"Change units of the partition size display (MB, sect, cyl)", 447}, - {"Write", 448}, - {"Write partition table to disk (this might destroy data)", 449}, - {"Cannot make this partition bootable", 450}, - {"Cannot delete an empty partition", 451}, - {"Cannot maximize this partition", 452}, - {"This partition is unusable", 453}, - {"This partition is already in use", 454}, - {"Cannot change the type of an empty partition", 455}, - {"No more partitions", 456}, - {"Illegal command", 457}, - {"Copyright (C) 1994-2000 Kevin E. Martin & aeb\n", 458}, +---------\n", 270}, + {" ---Starting--- ----Ending---- Start Number of\n", 271}, + {" # Flags Head Sect Cyl ID Head Sect Cyl Sector Sectors\n", 272}, + {"-- ----- ---- ---- ---- ---- ---- ---- ---- -------- ---------\n", 273}, + {"Raw", 274}, + {"Print the table using raw data format", 275}, + {"Sectors", 276}, + {"Print the table ordered by sectors", 277}, + {"Table", 278}, + {"Just print the partition table", 279}, + {"Don't print the table", 280}, + {"Help Screen for cfdisk", 281}, + {"This is cfdisk, a curses based disk partitioning program, which", 282}, + {"allows you to create, delete and modify partitions on your hard", 283}, + {"disk drive.", 284}, + {"Copyright (C) 1994-1999 Kevin E. Martin & aeb", 285}, + {"Command Meaning", 286}, + {"------- -------", 287}, + {" b Toggle bootable flag of the current partition", 288}, + {" d Delete the current partition", 289}, + {" g Change cylinders, heads, sectors-per-track parameters", 290}, + {" WARNING: This option should only be used by people who", 291}, + {" know what they are doing.", 292}, + {" h Print this screen", 293}, + {" m Maximize disk usage of the current partition", 294}, + {" Note: This may make the partition incompatible with", 295}, + {" DOS, OS/2, ...", 296}, + {" n Create new partition from free space", 297}, + {" p Print partition table to the screen or to a file", 298}, + {" There are several different formats for the partition", 299}, + {" that you can choose from:", 300}, + {" r - Raw data (exactly what would be written to disk)", 301}, + {" s - Table ordered by sectors", 302}, + {" t - Table in raw format", 303}, + {" q Quit program without writing partition table", 304}, + {" t Change the filesystem type", 305}, + {" u Change units of the partition size display", 306}, + {" Rotates through MB, sectors and cylinders", 307}, + {" W Write partition table to disk (must enter upper case W)", 308}, + {" Since this might destroy data on the disk, you must", 309}, + {" either confirm or deny the write by entering `yes' or", 310}, + {" `no'", 311}, + {"Up Arrow Move cursor to the previous partition", 312}, + {"Down Arrow Move cursor to the next partition", 313}, + {"CTRL-L Redraws the screen", 314}, + {" ? Print this screen", 315}, + {"Note: All of the commands can be entered with either upper or lower", 316}, + {"case letters (except for Writes).", 317}, + {"Cylinders", 318}, + {"Change cylinder geometry", 319}, + {"Heads", 320}, + {"Change head geometry", 321}, + {"Change sector geometry", 322}, + {"Done", 323}, + {"Done with changing geometry", 324}, + {"Enter the number of cylinders: ", 325}, + {"Illegal cylinders value", 326}, + {"Enter the number of heads: ", 327}, + {"Illegal heads value", 328}, + {"Enter the number of sectors per track: ", 329}, + {"Illegal sectors value", 330}, + {"Enter filesystem type: ", 331}, + {"Cannot change FS Type to empty", 332}, + {"Cannot change FS Type to extended", 333}, + {"Boot", 334}, + {"Unk(%02X)", 335}, + {", NC", 336}, + {"NC", 337}, + {"Pri/Log", 338}, + {"Disk Drive: %s", 339}, + {"Size: %lld bytes", 340}, + {"Heads: %d Sectors per Track: %d Cylinders: %d", 341}, + {"Name", 342}, + {"Flags", 343}, + {"Part Type", 344}, + {"FS Type", 345}, + {"[Label]", 346}, + {" Sectors", 347}, + {"Size (MB)", 348}, + {"Size (GB)", 349}, + {"Bootable", 350}, + {"Toggle bootable flag of the current partition", 351}, + {"Delete", 352}, + {"Delete the current partition", 353}, + {"Geometry", 354}, + {"Change disk geometry (experts only)", 355}, + {"Help", 356}, + {"Print help screen", 357}, + {"Maximize", 358}, + {"Maximize disk usage of the current partition (experts only)", 359}, + {"New", 360}, + {"Create new partition from free space", 361}, + {"Print", 362}, + {"Print partition table to the screen or to a file", 363}, + {"Quit", 364}, + {"Quit program without writing partition table", 365}, + {"Type", 366}, + {"Change the filesystem type (DOS, Linux, OS/2 and so on)", 367}, + {"Units", 368}, + {"Change units of the partition size display (MB, sect, cyl)", 369}, + {"Write", 370}, + {"Write partition table to disk (this might destroy data)", 371}, + {"Cannot make this partition bootable", 372}, + {"Cannot delete an empty partition", 373}, + {"Cannot maximize this partition", 374}, + {"This partition is unusable", 375}, + {"This partition is already in use", 376}, + {"Cannot change the type of an empty partition", 377}, + {"No more partitions", 378}, + {"Illegal command", 379}, + {"Copyright (C) 1994-2000 Kevin E. Martin & aeb\n", 380}, {"\ \n\ Usage:\n\ @@ -592,7 +442,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", 459}, +\n", 381}, {"\ Usage: fdisk [-b SSZ] [-u] DISK Change partition table\n\ fdisk -l [-b SSZ] [-u] DISK List partition table(s)\n\ @@ -601,65 +451,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 drives) use 2048-byte sectors\n", 460}, +-b 2048: (for certain MO drives) use 2048-byte sectors\n", 382}, {"\ 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", 461}, - {"Unable to open %s\n", 462}, - {"Unable to read %s\n", 463}, - {"Unable to seek on %s\n", 464}, - {"Unable to write %s\n", 465}, - {"BLKGETSIZE ioctl failed on %s\n", 466}, - {"Unable to allocate any more memory\n", 467}, - {"Fatal error\n", 468}, - {"Command action", 469}, - {" a toggle a read only flag", 470}, - {" b edit bsd disklabel", 471}, - {" c toggle the mountable flag", 472}, - {" d delete a partition", 473}, - {" l list known partition types", 474}, - {" m print this menu", 475}, - {" n add a new partition", 476}, - {" o create a new empty DOS partition table", 477}, - {" p print the partition table", 478}, - {" q quit without saving changes", 479}, - {" s create a new empty Sun disklabel", 480}, - {" t change a partition's system id", 481}, - {" u change display/entry units", 482}, - {" v verify the partition table", 483}, - {" w write table to disk and exit", 484}, - {" x extra functionality (experts only)", 485}, - {" a select bootable partition", 486}, - {" b edit bootfile entry", 487}, - {" c select sgi swap partition", 488}, - {" a toggle a bootable flag", 489}, - {" c toggle the dos compatibility flag", 490}, - {" a change number of alternate cylinders", 491}, - {" c change number of cylinders", 492}, - {" d print the raw data in the partition table", 493}, - {" e change number of extra sectors per cylinder", 494}, - {" h change number of heads", 495}, - {" i change interleave factor", 496}, - {" o change rotation speed (rpm)", 497}, - {" r return to main menu", 498}, - {" s change number of sectors/track", 499}, - {" y change number of physical cylinders", 500}, - {" b move beginning of data in a partition", 501}, - {" e list extended partitions", 502}, - {" g create an IRIX partition table", 503}, - {" f fix partition order", 504}, - {"You must set", 505}, - {"heads", 506}, - {"sectors", 507}, - {"cylinders", 508}, + ...\n", 383}, + {"Unable to open %s\n", 384}, + {"Unable to read %s\n", 385}, + {"Unable to seek on %s\n", 386}, + {"Unable to write %s\n", 387}, + {"BLKGETSIZE ioctl failed on %s\n", 388}, + {"Unable to allocate any more memory\n", 389}, + {"Fatal error\n", 390}, + {"Command action", 391}, + {" a toggle a read only flag", 392}, + {" b edit bsd disklabel", 393}, + {" c toggle the mountable flag", 394}, + {" d delete a partition", 395}, + {" l list known partition types", 396}, + {" m print this menu", 397}, + {" n add a new partition", 398}, + {" o create a new empty DOS partition table", 399}, + {" p print the partition table", 400}, + {" q quit without saving changes", 401}, + {" s create a new empty Sun disklabel", 402}, + {" t change a partition's system id", 403}, + {" u change display/entry units", 404}, + {" v verify the partition table", 405}, + {" w write table to disk and exit", 406}, + {" x extra functionality (experts only)", 407}, + {" a select bootable partition", 408}, + {" b edit bootfile entry", 409}, + {" c select sgi swap partition", 410}, + {" a toggle a bootable flag", 411}, + {" c toggle the dos compatibility flag", 412}, + {" a change number of alternate cylinders", 413}, + {" c change number of cylinders", 414}, + {" d print the raw data in the partition table", 415}, + {" e change number of extra sectors per cylinder", 416}, + {" h change number of heads", 417}, + {" i change interleave factor", 418}, + {" o change rotation speed (rpm)", 419}, + {" r return to main menu", 420}, + {" s change number of sectors/track", 421}, + {" y change number of physical cylinders", 422}, + {" b move beginning of data in a partition", 423}, + {" e list extended partitions", 424}, + {" g create an IRIX partition table", 425}, + {" f fix partition order", 426}, + {"You must set", 427}, + {"heads", 428}, + {"sectors", 429}, + {"cylinders", 430}, {"\ %s%s.\n\ -You can do this from the extra functions menu.\n", 509}, - {" and ", 510}, +You can do this from the extra functions menu.\n", 431}, + {" and ", 432}, {"\ \n\ The number of cylinders for this disk is set to %d.\n\ @@ -667,153 +517,152 @@ 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", 511}, - {"Bad offset in primary extended partition\n", 512}, - {"Warning: deleting partitions after %d\n", 513}, - {"Warning: extra link pointer in partition table %d\n", 514}, - {"Warning: ignoring extra data in partition table %d\n", 515}, + (e.g., DOS FDISK, OS/2 FDISK)\n", 433}, + {"Bad offset in primary extended partition\n", 434}, + {"Warning: deleting partitions after %d\n", 435}, + {"Warning: extra link pointer in partition table %d\n", 436}, + {"Warning: ignoring extra data in partition table %d\n", 437}, {"\ 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", 516}, - {"Note: sector size is %d (not %d)\n", 517}, - {"You will not be able to write the partition table.\n", 518}, +\n", 438}, + {"Note: sector size is %d (not %d)\n", 439}, + {"You will not be able to write the partition table.\n", 440}, {"\ Device contains neither a valid DOS partition table, nor Sun, SGI or OSF \ -disklabel\n", 519}, - {"Internal error\n", 520}, - {"Ignoring extra extended partition %d\n", 521}, +disklabel\n", 441}, + {"Internal error\n", 442}, + {"Ignoring extra extended partition %d\n", 443}, {"\ Warning: invalid flag 0x%04x of partition table %d will be corrected by \ -w(rite)\n", 522}, +w(rite)\n", 444}, {"\ \n\ -got EOF thrice - exiting..\n", 523}, - {"Hex code (type L to list codes): ", 524}, - {"%s (%d-%d, default %d): ", 525}, - {"Using default value %d\n", 526}, - {"Value out of range.\n", 527}, - {"Partition number", 528}, - {"Warning: partition %d has empty type\n", 529}, - {"cylinder", 530}, - {"sector", 531}, - {"Changing display/entry units to %s\n", 532}, - {"WARNING: Partition %d is an extended partition\n", 533}, - {"DOS Compatibility flag is set\n", 534}, - {"DOS Compatibility flag is not set\n", 535}, - {"Partition %d does not exist yet!\n", 536}, +got EOF thrice - exiting..\n", 445}, + {"Hex code (type L to list codes): ", 446}, + {"%s (%d-%d, default %d): ", 447}, + {"Using default value %d\n", 448}, + {"Value out of range.\n", 449}, + {"Partition number", 450}, + {"Warning: partition %d has empty type\n", 451}, + {"cylinder", 452}, + {"sector", 453}, + {"Changing display/entry units to %s\n", 454}, + {"WARNING: Partition %d is an extended partition\n", 455}, + {"DOS Compatibility flag is set\n", 456}, + {"DOS Compatibility flag is not set\n", 457}, + {"Partition %d does not exist yet!\n", 458}, {"\ 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", 537}, +a partition using the `d' command.\n", 459}, {"\ You cannot change a partition into an extended one or vice versa\n\ -Delete it first.\n", 538}, +Delete it first.\n", 460}, {"\ Consider leaving partition 3 as Whole disk (5),\n\ as SunOS/Solaris expects it and even Linux likes it.\n\ -\n", 539}, +\n", 461}, {"\ Consider leaving partition 9 as volume header (0),\n\ and partition 11 as entire volume (6)as IRIX expects it.\n\ -\n", 540}, - {"Changed system type of partition %d to %x (%s)\n", 541}, - {"Partition %d has different physical/logical beginnings (non-Linux?):\n", 542}, - {" phys=(%d, %d, %d) ", 543}, - {"logical=(%d, %d, %d)\n", 544}, - {"Partition %d has different physical/logical endings:\n", 545}, - {"Partition %i does not start on cylinder boundary:\n", 546}, - {"should be (%d, %d, 1)\n", 547}, - {"Partition %i does not end on cylinder boundary:\n", 548}, - {"should be (%d, %d, %d)\n", 549}, +\n", 462}, + {"Changed system type of partition %d to %x (%s)\n", 463}, + {"Partition %d has different physical/logical beginnings (non-Linux?):\n", 464}, + {" phys=(%d, %d, %d) ", 465}, + {"logical=(%d, %d, %d)\n", 466}, + {"Partition %d has different physical/logical endings:\n", 467}, + {"Partition %i does not start on cylinder boundary:\n", 468}, + {"should be (%d, %d, 1)\n", 469}, + {"Partition %i does not end on cylinder boundary:\n", 470}, + {"should be (%d, %d, %d)\n", 471}, {"\ \n\ Disk %s: %d heads, %d sectors, %d cylinders\n\ Units = %s of %d * %d bytes\n\ -\n", 550}, +\n", 472}, {"\ Nothing to do. Ordering is correct already.\n\ -\n", 551}, - {"%*s Boot Start End Blocks Id System\n", 552}, - {"Device", 553}, +\n", 473}, + {"%*s Boot Start End Blocks Id System\n", 474}, + {"Device", 475}, {"\ \n\ -Partition table entries are not in disk order\n", 554}, +Partition table entries are not in disk order\n", 476}, {"\ \n\ Disk %s: %d heads, %d sectors, %d cylinders\n\ -\n", 555}, - {"Nr AF Hd Sec Cyl Hd Sec Cyl Start Size ID\n", 556}, - {"Warning: partition %d contains sector 0\n", 557}, - {"Partition %d: head %d greater than maximum %d\n", 558}, - {"Partition %d: sector %d greater than maximum %d\n", 559}, - {"Partitions %d: cylinder %d greater than maximum %d\n", 560}, - {"Partition %d: previous sectors %d disagrees with total %d\n", 561}, - {"Warning: bad start-of-data in partition %d\n", 562}, - {"Warning: partition %d overlaps partition %d.\n", 563}, - {"Warning: partition %d is empty\n", 564}, - {"Logical partition %d not entirely in partition %d\n", 565}, - {"Total allocated sectors %d greater than the maximum %d\n", 566}, - {"%d unallocated sectors\n", 567}, - {"Partition %d is already defined. Delete it before re-adding it.\n", 568}, - {"First %s", 569}, - {"Sector %d is already allocated\n", 570}, - {"No free sectors available\n", 571}, - {"Last %s or +size or +sizeM or +sizeK", 572}, - {"Warning: partition %d has an odd number of sectors.\n", 573}, - {"The maximum number of partitions has been created\n", 574}, - {"You must delete some partition and add an extended partition first\n", 575}, +\n", 477}, + {"Nr AF Hd Sec Cyl Hd Sec Cyl Start Size ID\n", 478}, + {"Warning: partition %d contains sector 0\n", 479}, + {"Partition %d: head %d greater than maximum %d\n", 480}, + {"Partition %d: sector %d greater than maximum %d\n", 481}, + {"Partitions %d: cylinder %d greater than maximum %d\n", 482}, + {"Partition %d: previous sectors %d disagrees with total %d\n", 483}, + {"Warning: bad start-of-data in partition %d\n", 484}, + {"Warning: partition %d overlaps partition %d.\n", 485}, + {"Warning: partition %d is empty\n", 486}, + {"Logical partition %d not entirely in partition %d\n", 487}, + {"Total allocated sectors %d greater than the maximum %d\n", 488}, + {"%d unallocated sectors\n", 489}, + {"Partition %d is already defined. Delete it before re-adding it.\n", 490}, + {"First %s", 491}, + {"Sector %d is already allocated\n", 492}, + {"No free sectors available\n", 493}, + {"Last %s or +size or +sizeM or +sizeK", 494}, + {"Warning: partition %d has an odd number of sectors.\n", 495}, + {"The maximum number of partitions has been created\n", 496}, + {"You must delete some partition and add an extended partition first\n", 497}, {"\ Command action\n\ %s\n\ - p primary partition (1-4)\n", 576}, - {"l logical (5 or over)", 577}, - {"e extended", 578}, - {"Invalid partition number for type `%c'\n", 579}, + p primary partition (1-4)\n", 498}, + {"l logical (5 or over)", 499}, + {"e extended", 500}, + {"Invalid partition number for type `%c'\n", 501}, {"\ The partition table has been altered!\n\ -\n", 580}, - {"Calling ioctl() to re-read partition table.\n", 581}, +\n", 502}, + {"Calling ioctl() to re-read partition table.\n", 503}, {"\ Re-read table failed with error %d: %s.\n\ -Reboot your system to ensure the partition table is updated.\n", 582}, +Reboot your system to ensure the partition table is updated.\n", 504}, {"\ \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", 583}, - {"Syncing disks.\n", 584}, - {"Device: %s\n", 585}, - {"Partition %d has no data area\n", 586}, - {"New beginning of data", 587}, - {"Expert command (m for help): ", 588}, - {"Number of cylinders", 589}, - {"Number of heads", 590}, - {"Number of sectors", 591}, - {"Warning: setting sector offset for DOS compatiblity\n", 592}, - {"Disk %s doesn't contain a valid partition table\n", 593}, - {"Cannot open %s\n", 594}, - {"cannot open %s\n", 595}, - {"%c: unknown command\n", 596}, - {"This kernel finds the sector size itself - -b option ignored\n", 597}, +information.\n", 505}, + {"Syncing disks.\n", 506}, + {"Partition %d has no data area\n", 507}, + {"New beginning of data", 508}, + {"Expert command (m for help): ", 509}, + {"Number of cylinders", 510}, + {"Number of heads", 511}, + {"Number of sectors", 512}, + {"Warning: setting sector offset for DOS compatiblity\n", 513}, + {"Disk %s doesn't contain a valid partition table\n", 514}, + {"Cannot open %s\n", 515}, + {"cannot open %s\n", 516}, + {"%c: unknown command\n", 517}, + {"This kernel finds the sector size itself - -b option ignored\n", 518}, {"\ Warning: the -b (set sector size) option should be used with one specified \ -device\n", 598}, +device\n", 519}, {"\ Detected an OSF/1 disklabel on %s, entering disklabel mode.\n\ -To return to DOS partition table mode, use the 'r' command.\n", 599}, - {"Command (m for help): ", 600}, +To return to DOS partition table mode, use the 'r' command.\n", 520}, + {"Command (m for help): ", 521}, {"\ \n\ -The current boot file is: %s\n", 601}, - {"Please enter the name of the new boot file: ", 602}, - {"Boot file unchanged\n", 603}, +The current boot file is: %s\n", 522}, + {"Please enter the name of the new boot file: ", 523}, + {"Boot file unchanged\n", 524}, {"\ \n\ \tSorry, no experts menu for SGI partition tables available.\n\ -\n", 604}, +\n", 525}, {"\ \n\ \tThere is a valid AIX label on this disk.\n\ @@ -826,92 +675,94 @@ The current boot file is: %s\n", 601}, \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).", 605}, +\t machine. (Otherwise you become an AIXpert).", 526}, {"\ \n\ -BSD label for device: %s\n", 606}, - {" d delete a BSD partition", 607}, - {" e edit drive data", 608}, - {" i install bootstrap", 609}, - {" l list known filesystem types", 610}, - {" n add a new BSD partition", 611}, - {" p print BSD partition table", 612}, - {" s show complete disklabel", 613}, - {" t change a partition's filesystem id", 614}, - {" u change units (cylinders/sectors)", 615}, - {" w write disklabel to disk", 616}, - {" x link BSD partition to non-BSD partition", 617}, - {"Partition %s has invalid starting sector 0.\n", 618}, - {"Reading disklabel of %s at sector %d.\n", 619}, - {"There is no *BSD partition on %s.\n", 620}, - {"BSD disklabel command (m for help): ", 621}, - {"type: %s\n", 622}, - {"type: %d\n", 623}, - {"disk: %.*s\n", 624}, - {"label: %.*s\n", 625}, - {"flags:", 626}, - {" removable", 627}, - {" ecc", 628}, - {" badsect", 629}, - {"bytes/sector: %ld\n", 630}, - {"sectors/track: %ld\n", 631}, - {"tracks/cylinder: %ld\n", 632}, - {"sectors/cylinder: %ld\n", 633}, - {"cylinders: %ld\n", 634}, - {"rpm: %d\n", 635}, - {"interleave: %d\n", 636}, - {"trackskew: %d\n", 637}, - {"cylinderskew: %d\n", 638}, - {"headswitch: %ld\t\t# milliseconds\n", 639}, - {"track-to-track seek: %ld\t# milliseconds\n", 640}, - {"drivedata: ", 641}, +BSD label for device: %s\n", 527}, + {" d delete a BSD partition", 528}, + {" e edit drive data", 529}, + {" i install bootstrap", 530}, + {" l list known filesystem types", 531}, + {" n add a new BSD partition", 532}, + {" p print BSD partition table", 533}, + {" s show complete disklabel", 534}, + {" t change a partition's filesystem id", 535}, + {" u change units (cylinders/sectors)", 536}, + {" w write disklabel to disk", 537}, + {" x link BSD partition to non-BSD partition", 538}, + {"Partition %s has invalid starting sector 0.\n", 539}, + {"Reading disklabel of %s at sector %d.\n", 540}, + {"There is no *BSD partition on %s.\n", 541}, + {"BSD disklabel command (m for help): ", 542}, + {"type: %s\n", 543}, + {"type: %d\n", 544}, + {"disk: %.*s\n", 545}, + {"label: %.*s\n", 546}, + {"flags:", 547}, + {" removable", 548}, + {" ecc", 549}, + {" badsect", 550}, + {"bytes/sector: %ld\n", 551}, + {"sectors/track: %ld\n", 552}, + {"tracks/cylinder: %ld\n", 553}, + {"sectors/cylinder: %ld\n", 554}, + {"cylinders: %ld\n", 555}, + {"rpm: %d\n", 556}, + {"interleave: %d\n", 557}, + {"trackskew: %d\n", 558}, + {"cylinderskew: %d\n", 559}, + {"headswitch: %ld\t\t# milliseconds\n", 560}, + {"track-to-track seek: %ld\t# milliseconds\n", 561}, + {"drivedata: ", 562}, {"\ \n\ -%d partitions:\n", 642}, - {"# start end size fstype [fsize bsize cpg]\n", 643}, - {"Writing disklabel to %s.\n", 644}, - {"%s contains no disklabel.\n", 645}, - {"Do you want to create a disklabel? (y/n) ", 646}, - {"bytes/sector", 647}, - {"sectors/track", 648}, - {"tracks/cylinder", 649}, - {"sectors/cylinder", 650}, - {"Must be <= sectors/track * tracks/cylinder (default).\n", 651}, - {"rpm", 652}, - {"interleave", 653}, - {"trackskew", 654}, - {"cylinderskew", 655}, - {"headswitch", 656}, - {"track-to-track seek", 657}, - {"Bootstrap: %sboot -> boot%s (%s): ", 658}, - {"Bootstrap overlaps with disk label!\n", 659}, - {"Bootstrap installed on %s.\n", 660}, - {"Partition (a-%c): ", 661}, - {"This partition already exists.\n", 662}, - {"Warning: too many partitions (%d, maximum is %d).\n", 663}, +%d partitions:\n", 563}, + {"# start end size fstype [fsize bsize cpg]\n", 564}, + {"Writing disklabel to %s.\n", 565}, + {"%s contains no disklabel.\n", 566}, + {"Do you want to create a disklabel? (y/n) ", 567}, + {"bytes/sector", 568}, + {"sectors/track", 569}, + {"tracks/cylinder", 570}, + {"sectors/cylinder", 571}, + {"Must be <= sectors/track * tracks/cylinder (default).\n", 572}, + {"rpm", 573}, + {"interleave", 574}, + {"trackskew", 575}, + {"cylinderskew", 576}, + {"headswitch", 577}, + {"track-to-track seek", 578}, + {"Bootstrap: %sboot -> boot%s (%s): ", 579}, + {"Bootstrap overlaps with disk label!\n", 580}, + {"Bootstrap installed on %s.\n", 581}, + {"Partition (a-%c): ", 582}, + {"This partition already exists.\n", 583}, + {"Warning: too many partitions (%d, maximum is %d).\n", 584}, {"\ \n\ -Syncing disks.\n", 664}, - {"SGI volhdr", 665}, - {"SGI trkrepl", 666}, - {"SGI secrepl", 667}, - {"SGI raw", 668}, - {"SGI bsd", 669}, - {"SGI sysv", 670}, - {"SGI volume", 671}, - {"SGI efs", 672}, - {"SGI lvol", 673}, - {"SGI rlvol", 674}, - {"SGI xfs", 675}, - {"SGI xlvol", 676}, - {"SGI rxlvol", 677}, - {"Linux swap", 678}, - {"Linux native", 679}, - {"Linux LVM", 680}, +Syncing disks.\n", 585}, + {"SGI volhdr", 586}, + {"SGI trkrepl", 587}, + {"SGI secrepl", 588}, + {"SGI raw", 589}, + {"SGI bsd", 590}, + {"SGI sysv", 591}, + {"SGI volume", 592}, + {"SGI efs", 593}, + {"SGI lvol", 594}, + {"SGI rlvol", 595}, + {"SGI xfs", 596}, + {"SGI xfslog", 597}, + {"SGI xlv", 598}, + {"SGI xvm", 599}, + {"Linux swap", 600}, + {"Linux native", 601}, + {"Linux LVM", 602}, + {"Linux RAID", 603}, {"\ According to MIPS Computer Systems, Inc the Label must not contain more than \ -512 bytes\n", 681}, - {"Detected sgi disklabel with wrong checksum.\n", 682}, +512 bytes\n", 604}, + {"Detected sgi disklabel with wrong checksum.\n", 605}, {"\ \n\ Disk %s (SGI disk label): %d heads, %d sectors\n\ @@ -919,139 +770,139 @@ 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", 683}, +\n", 606}, {"\ \n\ Disk %s (SGI disk label): %d heads, %d sectors, %d cylinders\n\ Units = %s of %d * 512 bytes\n\ -\n", 684}, +\n", 607}, {"\ ----- partitions -----\n\ -%*s Info Start End Sectors Id System\n", 685}, +%*s Info Start End Sectors Id System\n", 608}, {"\ ----- bootinfo -----\n\ Bootfile: %s\n\ ------ directory entries -----\n", 686}, - {"%2d: %-10s sector%5u size%8u\n", 687}, +----- directory entries -----\n", 609}, + {"%2d: %-10s sector%5u size%8u\n", 610}, {"\ \n\ Invalid Bootfile!\n\ \tThe bootfile must be an absolute non-zero pathname,\n\ -\te.g. \"/unix\" or \"/unix.save\".\n", 688}, +\te.g. \"/unix\" or \"/unix.save\".\n", 611}, {"\ \n\ -\tName of Bootfile too long: 16 bytes maximum.\n", 689}, +\tName of Bootfile too long: 16 bytes maximum.\n", 612}, {"\ \n\ -\tBootfile must have a fully qualified pathname.\n", 690}, +\tBootfile must have a fully qualified pathname.\n", 613}, {"\ \n\ \tBe aware, that the bootfile is not checked for existence.\n\ -\tSGI's default is \"/unix\" and for backup \"/unix.save\".\n", 691}, +\tSGI's default is \"/unix\" and for backup \"/unix.save\".\n", 614}, {"\ \n\ -\tBootfile is changed to \"%s\".\n", 692}, - {"More than one entire disk entry present.\n", 693}, - {"No partitions defined\n", 694}, - {"IRIX likes when Partition 11 covers the entire disk.\n", 695}, +\tBootfile is changed to \"%s\".\n", 615}, + {"More than one entire disk entry present.\n", 616}, + {"No partitions defined\n", 617}, + {"IRIX likes when Partition 11 covers the entire disk.\n", 618}, {"\ The entire disk partition should start at block 0,\n\ -not at diskblock %d.\n", 696}, +not at diskblock %d.\n", 619}, {"\ The entire disk partition is only %d diskblock large,\n\ -but the disk is %d diskblocks long.\n", 697}, - {"One Partition (#11) should cover the entire disk.\n", 698}, - {"Partition %d does not start on cylinder boundary.\n", 699}, - {"Partition %d does not end on cylinder boundary.\n", 700}, - {"The Partition %d and %d overlap by %d sectors.\n", 701}, - {"Unused gap of %8d sectors - sectors %8d-%d\n", 702}, +but the disk is %d diskblocks long.\n", 620}, + {"One Partition (#11) should cover the entire disk.\n", 621}, + {"Partition %d does not start on cylinder boundary.\n", 622}, + {"Partition %d does not end on cylinder boundary.\n", 623}, + {"The Partition %d and %d overlap by %d sectors.\n", 624}, + {"Unused gap of %8d sectors - sectors %8d-%d\n", 625}, {"\ \n\ -The boot partition does not exist.\n", 703}, +The boot partition does not exist.\n", 626}, {"\ \n\ -The swap partition does not exist.\n", 704}, +The swap partition does not exist.\n", 627}, {"\ \n\ -The swap partition has no swap type.\n", 705}, - {"\tYou have chosen an unusual boot file name.\n", 706}, - {"Sorry You may change the Tag of non-empty partitions.\n", 707}, +The swap partition has no swap type.\n", 628}, + {"\tYou have chosen an unusual boot file name.\n", 629}, + {"Sorry You may change the Tag of non-empty partitions.\n", 630}, {"\ 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", 708}, - {"Do You know, You got a partition overlap on the disk?\n", 709}, - {"Attempting to generate entire disk entry automatically.\n", 710}, - {"The entire disk is already covered with partitions.\n", 711}, - {"You got a partition overlap on the disk. Fix it first!\n", 712}, +Type YES if you are sure about tagging this partition differently.\n", 631}, + {"Do You know, You got a partition overlap on the disk?\n", 632}, + {"Attempting to generate entire disk entry automatically.\n", 633}, + {"The entire disk is already covered with partitions.\n", 634}, + {"You got a partition overlap on the disk. Fix it first!\n", 635}, {"\ It is highly recommended that eleventh partition\n\ -covers the entire disk and is of type `SGI volume'\n", 713}, - {"You will get a partition overlap on the disk. Fix it first!\n", 714}, - {" Last %s", 715}, +covers the entire disk and is of type `SGI volume'\n", 636}, + {"You will get a partition overlap on the disk. Fix it first!\n", 637}, + {" Last %s", 638}, {"\ 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", 716}, - {"Trying to keep parameters of partition %d.\n", 717}, - {"ID=%02x\tSTART=%d\tLENGTH=%d\n", 718}, - {"Empty", 719}, - {"SunOS root", 720}, - {"SunOS swap", 721}, - {"SunOS usr", 722}, - {"Whole disk", 723}, - {"SunOS stand", 724}, - {"SunOS var", 725}, - {"SunOS home", 726}, +\n", 639}, + {"Trying to keep parameters of partition %d.\n", 640}, + {"ID=%02x\tSTART=%d\tLENGTH=%d\n", 641}, + {"Empty", 642}, + {"SunOS root", 643}, + {"SunOS swap", 644}, + {"SunOS usr", 645}, + {"Whole disk", 646}, + {"SunOS stand", 647}, + {"SunOS var", 648}, + {"SunOS home", 649}, {"\ 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", 727}, - {"Autoconfigure found a %s%s%s\n", 728}, +or force a fresh label (s command in main menu)\n", 650}, + {"Autoconfigure found a %s%s%s\n", 651}, {"\ 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", 729}, +\n", 652}, {"\ Drive type\n\ ? auto configure\n\ - 0 custom (with hardware detected defaults)", 730}, - {"Select type (? for auto, 0 for custom): ", 731}, - {"Autoconfigure failed.\n", 732}, - {"Sectors/track", 733}, - {"Alternate cylinders", 734}, - {"Physical cylinders", 735}, - {"Rotation speed (rpm)", 736}, - {"Interleave factor", 737}, - {"Extra sectors per cylinder", 738}, - {"You may change all the disk params from the x menu", 739}, - {"3,5\" floppy", 740}, - {"Linux custom", 741}, - {"Partition %d doesn't end on cylinder boundary\n", 742}, - {"Partition %d overlaps with others in sectors %d-%d\n", 743}, - {"Unused gap - sectors 0-%d\n", 744}, - {"Unused gap - sectors %d-%d\n", 745}, + 0 custom (with hardware detected defaults)", 653}, + {"Select type (? for auto, 0 for custom): ", 654}, + {"Autoconfigure failed.\n", 655}, + {"Sectors/track", 656}, + {"Alternate cylinders", 657}, + {"Physical cylinders", 658}, + {"Rotation speed (rpm)", 659}, + {"Interleave factor", 660}, + {"Extra sectors per cylinder", 661}, + {"You may change all the disk params from the x menu", 662}, + {"3,5\" floppy", 663}, + {"Linux custom", 664}, + {"Partition %d doesn't end on cylinder boundary\n", 665}, + {"Partition %d overlaps with others in sectors %d-%d\n", 666}, + {"Unused gap - sectors 0-%d\n", 667}, + {"Unused gap - sectors %d-%d\n", 668}, {"\ Other partitions already cover the whole disk.\n\ -Delete some/shrink them before retry.\n", 746}, +Delete some/shrink them before retry.\n", 669}, {"\ 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", 747}, +to %d %s\n", 670}, {"\ If you want to maintain SunOS/Solaris compatibility, consider leaving this\n\ -partition as Whole disk (5), starting at 0, with %u sectors\n", 748}, +partition as Whole disk (5), starting at 0, with %u sectors\n", 671}, {"\ 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): ", 749}, +tagged with 82 (Linux swap): ", 672}, {"\ \n\ Disk %s (Sun disk label): %d heads, %d sectors, %d rpm\n\ @@ -1059,840 +910,1014 @@ 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", 750}, +\n", 673}, {"\ \n\ Disk %s (Sun disk label): %d heads, %d sectors, %d cylinders\n\ Units = %s of %d * 512 bytes\n\ -\n", 751}, - {"%*s Flag Start End Blocks Id System\n", 752}, - {"Number of alternate cylinders", 753}, - {"Number of physical cylinders", 754}, - {"FAT12", 755}, - {"XENIX root", 756}, - {"XENIX usr", 757}, - {"FAT16 <32M", 758}, - {"Extended", 759}, - {"FAT16", 760}, - {"HPFS/NTFS", 761}, - {"AIX", 762}, - {"AIX bootable", 763}, - {"OS/2 Boot Manager", 764}, - {"Win95 FAT32", 765}, - {"Win95 FAT32 (LBA)", 766}, - {"Win95 FAT16 (LBA)", 767}, - {"Win95 Ext'd (LBA)", 768}, - {"OPUS", 769}, - {"Hidden FAT12", 770}, - {"Compaq diagnostics", 771}, - {"Hidden FAT16 <32M", 772}, - {"Hidden FAT16", 773}, - {"Hidden HPFS/NTFS", 774}, - {"AST Windows swapfile", 775}, - {"Hidden Win95 FAT32", 776}, - {"Hidden Win95 FAT32 (LBA)", 777}, - {"Hidden Win95 FAT16 (LBA)", 778}, - {"NEC DOS", 779}, - {"Plan 9", 780}, - {"PartitionMagic recovery", 781}, - {"Venix 80286", 782}, - {"PPC PReP Boot", 783}, - {"SFS", 784}, - {"QNX4.x", 785}, - {"QNX4.x 2nd part", 786}, - {"QNX4.x 3rd part", 787}, - {"OnTrack DM", 788}, - {"OnTrack DM6 Aux1", 789}, - {"CP/M", 790}, - {"OnTrack DM6 Aux3", 791}, - {"OnTrackDM6", 792}, - {"EZ-Drive", 793}, - {"Golden Bow", 794}, - {"Priam Edisk", 795}, - {"SpeedStor", 796}, - {"GNU HURD or SysV", 797}, - {"Novell Netware 286", 798}, - {"Novell Netware 386", 799}, - {"DiskSecure Multi-Boot", 800}, - {"PC/IX", 801}, - {"Old Minix", 802}, - {"Minix / old Linux", 803}, - {"OS/2 hidden C: drive", 804}, - {"Linux extended", 805}, - {"NTFS volume set", 806}, - {"Amoeba", 807}, - {"Amoeba BBT", 808}, - {"BSD/OS", 809}, - {"IBM Thinkpad hibernation", 810}, - {"BSD/386", 811}, - {"OpenBSD", 812}, - {"NeXTSTEP", 813}, - {"BSDI fs", 814}, - {"BSDI swap", 815}, - {"DRDOS/sec (FAT-12)", 816}, - {"DRDOS/sec (FAT-16 < 32M)", 817}, - {"DRDOS/sec (FAT-16)", 818}, - {"Syrinx", 819}, - {"Non-FS data", 820}, - {"CP/M / CTOS / ...", 821}, - {"DOS access", 822}, - {"DOS R/O", 823}, - {"BeOS fs", 824}, - {"DOS secondary", 825}, - {"Linux raid autodetect", 826}, - {"LANstep", 827}, - {"BBT", 828}, - {"seek error on %s - cannot seek to %lu\n", 829}, - {"seek error: wanted 0x%08x%08x, got 0x%08x%08x\n", 830}, - {"out of memory - giving up\n", 831}, - {"read error on %s - cannot read sector %lu\n", 832}, - {"ERROR: sector %lu does not have an msdos signature\n", 833}, - {"write error on %s - cannot write sector %lu\n", 834}, - {"cannot open partition sector save file (%s)\n", 835}, - {"write error on %s\n", 836}, - {"cannot stat partition restore file (%s)\n", 837}, - {"partition restore file has wrong size - not restoring\n", 838}, - {"out of memory?\n", 839}, - {"cannot open partition restore file (%s)\n", 840}, - {"error reading %s\n", 841}, - {"cannot open device %s for writing\n", 842}, - {"error writing sector %lu on %s\n", 843}, - {"Disk %s: cannot get size\n", 844}, - {"Disk %s: cannot get geometry\n", 845}, +\n", 674}, + {"%*s Flag Start End Blocks Id System\n", 675}, + {"Number of alternate cylinders", 676}, + {"Number of physical cylinders", 677}, + {"FAT12", 678}, + {"XENIX root", 679}, + {"XENIX usr", 680}, + {"FAT16 <32M", 681}, + {"Extended", 682}, + {"FAT16", 683}, + {"HPFS/NTFS", 684}, + {"AIX", 685}, + {"AIX bootable", 686}, + {"OS/2 Boot Manager", 687}, + {"Win95 FAT32", 688}, + {"Win95 FAT32 (LBA)", 689}, + {"Win95 FAT16 (LBA)", 690}, + {"Win95 Ext'd (LBA)", 691}, + {"OPUS", 692}, + {"Hidden FAT12", 693}, + {"Compaq diagnostics", 694}, + {"Hidden FAT16 <32M", 695}, + {"Hidden FAT16", 696}, + {"Hidden HPFS/NTFS", 697}, + {"AST Windows swapfile", 698}, + {"Hidden Win95 FAT32", 699}, + {"Hidden Win95 FAT32 (LBA)", 700}, + {"Hidden Win95 FAT16 (LBA)", 701}, + {"NEC DOS", 702}, + {"Plan 9", 703}, + {"PartitionMagic recovery", 704}, + {"Venix 80286", 705}, + {"PPC PReP Boot", 706}, + {"SFS", 707}, + {"QNX4.x", 708}, + {"QNX4.x 2nd part", 709}, + {"QNX4.x 3rd part", 710}, + {"OnTrack DM", 711}, + {"OnTrack DM6 Aux1", 712}, + {"CP/M", 713}, + {"OnTrack DM6 Aux3", 714}, + {"OnTrackDM6", 715}, + {"EZ-Drive", 716}, + {"Golden Bow", 717}, + {"Priam Edisk", 718}, + {"SpeedStor", 719}, + {"GNU HURD or SysV", 720}, + {"Novell Netware 286", 721}, + {"Novell Netware 386", 722}, + {"DiskSecure Multi-Boot", 723}, + {"PC/IX", 724}, + {"Old Minix", 725}, + {"Minix / old Linux", 726}, + {"OS/2 hidden C: drive", 727}, + {"Linux extended", 728}, + {"NTFS volume set", 729}, + {"Amoeba", 730}, + {"Amoeba BBT", 731}, + {"BSD/OS", 732}, + {"IBM Thinkpad hibernation", 733}, + {"BSD/386", 734}, + {"OpenBSD", 735}, + {"NeXTSTEP", 736}, + {"BSDI fs", 737}, + {"BSDI swap", 738}, + {"DRDOS/sec (FAT-12)", 739}, + {"DRDOS/sec (FAT-16 < 32M)", 740}, + {"DRDOS/sec (FAT-16)", 741}, + {"Syrinx", 742}, + {"Non-FS data", 743}, + {"CP/M / CTOS / ...", 744}, + {"Dell Utility", 745}, + {"DOS access", 746}, + {"DOS R/O", 747}, + {"BeOS fs", 748}, + {"EFI GPT", 749}, + {"EFI (FAT-12/16/32)", 750}, + {"DOS secondary", 751}, + {"Linux raid autodetect", 752}, + {"LANstep", 753}, + {"BBT", 754}, + {"seek error on %s - cannot seek to %lu\n", 755}, + {"seek error: wanted 0x%08x%08x, got 0x%08x%08x\n", 756}, + {"out of memory - giving up\n", 757}, + {"read error on %s - cannot read sector %lu\n", 758}, + {"ERROR: sector %lu does not have an msdos signature\n", 759}, + {"write error on %s - cannot write sector %lu\n", 760}, + {"cannot open partition sector save file (%s)\n", 761}, + {"write error on %s\n", 762}, + {"cannot stat partition restore file (%s)\n", 763}, + {"partition restore file has wrong size - not restoring\n", 764}, + {"out of memory?\n", 765}, + {"cannot open partition restore file (%s)\n", 766}, + {"error reading %s\n", 767}, + {"cannot open device %s for writing\n", 768}, + {"error writing sector %lu on %s\n", 769}, + {"Disk %s: cannot get size\n", 770}, + {"Disk %s: cannot get geometry\n", 771}, {"\ 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", 846}, - {"Warning: HDIO_GETGEO says that there are %lu heads\n", 847}, - {"Warning: HDIO_GETGEO says that there are %lu sectors\n", 848}, - {"Warning: BLKGETSIZE/HDIO_GETGEO says that there are %lu cylinders\n", 849}, +[Use the --force option if you really want this]\n", 772}, + {"Warning: HDIO_GETGEO says that there are %lu heads\n", 773}, + {"Warning: HDIO_GETGEO says that there are %lu sectors\n", 774}, + {"Warning: BLKGETSIZE/HDIO_GETGEO says that there are %lu cylinders\n", 775}, {"\ 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", 850}, +This will give problems with all software that uses C/H/S addressing.\n", 776}, {"\ \n\ -Disk %s: %lu cylinders, %lu heads, %lu sectors/track\n", 851}, +Disk %s: %lu cylinders, %lu heads, %lu sectors/track\n", 777}, {"\ -%s of partition %s has impossible value for head: %lu (should be in 0-%lu)\n", 852}, +%s of partition %s has impossible value for head: %lu (should be in 0-%lu)\n", 778}, {"\ %s of partition %s has impossible value for sector: %lu (should be in \ -1-%lu)\n", 853}, +1-%lu)\n", 779}, {"\ %s of partition %s has impossible value for cylinders: %lu (should be in \ -0-%lu)\n", 854}, +0-%lu)\n", 780}, {"\ Id Name\n\ -\n", 855}, - {"Re-reading the partition table ...\n", 856}, +\n", 781}, + {"Re-reading the partition table ...\n", 782}, {"\ The command to re-read the partition table failed\n\ -Reboot your system now, before using mkfs\n", 857}, - {"Error closing %s\n", 858}, - {"%s: no such partition\n", 859}, - {"unrecognized format - using sectors\n", 860}, - {"# partition table of %s\n", 861}, - {"unimplemented format - using %s\n", 862}, +Reboot your system now, before using mkfs\n", 783}, + {"Error closing %s\n", 784}, + {"%s: no such partition\n", 785}, + {"unrecognized format - using sectors\n", 786}, + {"# partition table of %s\n", 787}, + {"unimplemented format - using %s\n", 788}, {"\ Units = cylinders of %lu bytes, blocks of 1024 bytes, counting from %d\n\ -\n", 863}, - {" Device Boot Start End #cyls #blocks Id System\n", 864}, +\n", 789}, + {" Device Boot Start End #cyls #blocks Id System\n", 790}, {"\ Units = sectors of 512 bytes, counting from %d\n\ -\n", 865}, - {" Device Boot Start End #sectors Id System\n", 866}, +\n", 791}, + {" Device Boot Start End #sectors Id System\n", 792}, {"\ Units = blocks of 1024 bytes, counting from %d\n\ -\n", 867}, - {" Device Boot Start End #blocks Id System\n", 868}, +\n", 793}, + {" Device Boot Start End #blocks Id System\n", 794}, {"\ Units = megabytes of 1048576 bytes, blocks of 1024 bytes, counting from %d\n\ -\n", 869}, - {" Device Boot Start End MB #blocks Id System\n", 870}, - {"\t\tstart: (c,h,s) expected (%ld,%ld,%ld) found (%ld,%ld,%ld)\n", 871}, - {"\t\tend: (c,h,s) expected (%ld,%ld,%ld) found (%ld,%ld,%ld)\n", 872}, - {"partition ends on cylinder %ld, beyond the end of the disk\n", 873}, - {"No partitions found\n", 874}, +\n", 795}, + {" Device Boot Start End MB #blocks Id System\n", 796}, + {"\t\tstart: (c,h,s) expected (%ld,%ld,%ld) found (%ld,%ld,%ld)\n", 797}, + {"\t\tend: (c,h,s) expected (%ld,%ld,%ld) found (%ld,%ld,%ld)\n", 798}, + {"partition ends on cylinder %ld, beyond the end of the disk\n", 799}, + {"No partitions found\n", 800}, {"\ Warning: The first partition 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", 875}, - {"no partition table present.\n", 876}, - {"strange, only %d partitions defined.\n", 877}, - {"Warning: partition %s has size 0 but is not marked Empty\n", 878}, - {"Warning: partition %s has size 0 and is bootable\n", 879}, - {"Warning: partition %s has size 0 and nonzero start\n", 880}, - {"Warning: partition %s ", 881}, - {"is not contained in partition %s\n", 882}, - {"Warning: partitions %s ", 883}, - {"and %s overlap\n", 884}, - {"Warning: partition %s contains part of ", 885}, - {"the partition table (sector %lu),\n", 886}, - {"and will destroy it when filled\n", 887}, - {"Warning: partition %s starts at sector 0\n", 888}, - {"Warning: partition %s extends past end of disk\n", 889}, - {"Among the primary partitions, at most one can be extended\n", 890}, - {" (although this is not a problem under Linux)\n", 891}, - {"Warning: partition %s does not start at a cylinder boundary\n", 892}, - {"Warning: partition %s does not end at a cylinder boundary\n", 893}, +For this listing I'll assume that geometry.\n", 801}, + {"no partition table present.\n", 802}, + {"strange, only %d partitions defined.\n", 803}, + {"Warning: partition %s has size 0 but is not marked Empty\n", 804}, + {"Warning: partition %s has size 0 and is bootable\n", 805}, + {"Warning: partition %s has size 0 and nonzero start\n", 806}, + {"Warning: partition %s ", 807}, + {"is not contained in partition %s\n", 808}, + {"Warning: partitions %s ", 809}, + {"and %s overlap\n", 810}, + {"Warning: partition %s contains part of ", 811}, + {"the partition table (sector %lu),\n", 812}, + {"and will destroy it when filled\n", 813}, + {"Warning: partition %s starts at sector 0\n", 814}, + {"Warning: partition %s extends past end of disk\n", 815}, + {"Among the primary partitions, at most one can be extended\n", 816}, + {" (although this is not a problem under Linux)\n", 817}, + {"Warning: partition %s does not start at a cylinder boundary\n", 818}, + {"Warning: partition %s does not end at a cylinder boundary\n", 819}, {"\ 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", 894}, +This does not matter for LILO, but the DOS MBR will not boot this disk.\n", 820}, {"\ Warning: usually one can boot from primary partitions only\n\ -LILO disregards the `bootable' flag.\n", 895}, +LILO disregards the `bootable' flag.\n", 821}, {"\ 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", 896}, - {"\ -partition %s: start: (c,h,s) expected (%ld,%ld,%ld) found (%ld,%ld,%ld)\n", 897}, - {"partition %s: end: (c,h,s) expected (%ld,%ld,%ld) found (%ld,%ld,%ld)\n", 898}, - {"partition %s ends on cylinder %ld, beyond the end of the disk\n", 899}, - {"Warning: shifted start of the extd partition from %ld to %ld\n", 900}, - {"(For listing purposes only. Do not change its contents.)\n", 901}, - {"Warning: extended partition does not start at a cylinder boundary.\n", 902}, - {"DOS and Linux will interpret the contents differently.\n", 903}, - {"too many partitions - ignoring those past nr (%d)\n", 904}, - {"tree of partitions?\n", 905}, - {"detected Disk Manager - unable to handle that\n", 906}, - {"DM6 signature found - giving up\n", 907}, - {"strange..., an extended partition of size 0?\n", 908}, - {"strange..., a BSD partition of size 0?\n", 909}, - {" %s: unrecognized partition\n", 910}, - {"-n flag was given: Nothing changed\n", 911}, - {"Failed saving the old sectors - aborting\n", 912}, - {"Failed writing the partition on %s\n", 913}, - {"long or incomplete input line - quitting\n", 914}, - {"input error: `=' expected after %s field\n", 915}, - {"input error: unexpected character %c after %s field\n", 916}, - {"unrecognized input: %s\n", 917}, - {"number too big\n", 918}, - {"trailing junk after number\n", 919}, - {"no room for partition descriptor\n", 920}, - {"cannot build surrounding extended partition\n", 921}, - {"too many input fields\n", 922}, - {"No room for more\n", 923}, - {"Illegal type\n", 924}, - {"Warning: given size (%lu) exceeds max allowable size (%lu)\n", 925}, - {"Warning: empty partition\n", 926}, - {"Warning: bad partition start (earliest %lu)\n", 927}, - {"unrecognized bootable flag - choose - or *\n", 928}, - {"partial c,h,s specification?\n", 929}, - {"Extended partition not where expected\n", 930}, - {"bad input\n", 931}, - {"too many partitions\n", 932}, +This does not matter for LILO, but the DOS MBR will not boot this disk.\n", 822}, + {"\ +partition %s: start: (c,h,s) expected (%ld,%ld,%ld) found (%ld,%ld,%ld)\n", 823}, + {"partition %s: end: (c,h,s) expected (%ld,%ld,%ld) found (%ld,%ld,%ld)\n", 824}, + {"partition %s ends on cylinder %ld, beyond the end of the disk\n", 825}, + {"Warning: shifted start of the extd partition from %ld to %ld\n", 826}, + {"(For listing purposes only. Do not change its contents.)\n", 827}, + {"Warning: extended partition does not start at a cylinder boundary.\n", 828}, + {"DOS and Linux will interpret the contents differently.\n", 829}, + {"too many partitions - ignoring those past nr (%d)\n", 830}, + {"tree of partitions?\n", 831}, + {"detected Disk Manager - unable to handle that\n", 832}, + {"DM6 signature found - giving up\n", 833}, + {"strange..., an extended partition of size 0?\n", 834}, + {"strange..., a BSD partition of size 0?\n", 835}, + {" %s: unrecognized partition\n", 836}, + {"-n flag was given: Nothing changed\n", 837}, + {"Failed saving the old sectors - aborting\n", 838}, + {"Failed writing the partition on %s\n", 839}, + {"long or incomplete input line - quitting\n", 840}, + {"input error: `=' expected after %s field\n", 841}, + {"input error: unexpected character %c after %s field\n", 842}, + {"unrecognized input: %s\n", 843}, + {"number too big\n", 844}, + {"trailing junk after number\n", 845}, + {"no room for partition descriptor\n", 846}, + {"cannot build surrounding extended partition\n", 847}, + {"too many input fields\n", 848}, + {"No room for more\n", 849}, + {"Illegal type\n", 850}, + {"Warning: given size (%lu) exceeds max allowable size (%lu)\n", 851}, + {"Warning: empty partition\n", 852}, + {"Warning: bad partition start (earliest %lu)\n", 853}, + {"unrecognized bootable flag - choose - or *\n", 854}, + {"partial c,h,s specification?\n", 855}, + {"Extended partition not where expected\n", 856}, + {"bad input\n", 857}, + {"too many partitions\n", 858}, {"\ Input in the following format; absent fields get a default value.\n\ <start> <size> <type [E,S,L,X,hex]> <bootable [-,*]> <c,h,s> <c,h,s>\n\ -Usually you only need to specify <start> and <size> (and perhaps <type>).\n", 933}, - {"version", 934}, - {"Usage: %s [options] device ...\n", 935}, - {"device: something like /dev/hda or /dev/sda", 936}, - {"useful options:", 937}, - {" -s [or --show-size]: list size of a partition", 938}, - {" -c [or --id]: print or change partition Id", 939}, - {" -l [or --list]: list partitions of each device", 940}, - {" -d [or --dump]: idem, but in a format suitable for later input", 941}, - {" -i [or --increment]: number cylinders etc. from 1 instead of from 0", 942}, +Usually you only need to specify <start> and <size> (and perhaps <type>).\n", 859}, + {"version", 860}, + {"Usage: %s [options] device ...\n", 861}, + {"device: something like /dev/hda or /dev/sda", 862}, + {"useful options:", 863}, + {" -s [or --show-size]: list size of a partition", 864}, + {" -c [or --id]: print or change partition Id", 865}, + {" -l [or --list]: list partitions of each device", 866}, + {" -d [or --dump]: idem, but in a format suitable for later input", 867}, + {" -i [or --increment]: number cylinders etc. from 1 instead of from 0", 868}, {"\ -uS, -uB, -uC, -uM: accept/report in units of \ -sectors/blocks/cylinders/MB", 943}, - {" -T [or --list-types]:list the known partition types", 944}, - {" -D [or --DOS]: for DOS-compatibility: waste a little space", 945}, - {" -R [or --re-read]: make kernel reread partition table", 946}, - {" -N# : change only the partition with number #", 947}, - {" -n : do not actually write to disk", 948}, - {"\ - -O file : save the sectors that will be overwritten to file", 949}, - {" -I file : restore these sectors again", 950}, - {" -v [or --version]: print version", 951}, - {" -? [or --help]: print this message", 952}, - {"dangerous options:", 953}, - {" -g [or --show-geometry]: print the kernel's idea of the geometry", 954}, +sectors/blocks/cylinders/MB", 869}, + {" -T [or --list-types]:list the known partition types", 870}, + {" -D [or --DOS]: for DOS-compatibility: waste a little space", 871}, + {" -R [or --re-read]: make kernel reread partition table", 872}, + {" -N# : change only the partition with number #", 873}, + {" -n : do not actually write to disk", 874}, + {"\ + -O file : save the sectors that will be overwritten to file", 875}, + {" -I file : restore these sectors again", 876}, + {" -v [or --version]: print version", 877}, + {" -? [or --help]: print this message", 878}, + {"dangerous options:", 879}, + {" -g [or --show-geometry]: print the kernel's idea of the geometry", 880}, {"\ -x [or --show-extended]: also list extended partitions on output\n\ - or expect descriptors for them on input", 955}, - {"\ - -L [or --Linux]: do not complain about things irrelevant for Linux", 956}, - {" -q [or --quiet]: suppress warning messages", 957}, - {" You can override the detected geometry using:", 958}, - {" -C# [or --cylinders #]:set the number of cylinders to use", 959}, - {" -H# [or --heads #]: set the number of heads to use", 960}, - {" -S# [or --sectors #]: set the number of sectors to use", 961}, - {"You can disable all consistency checking with:", 962}, - {" -f [or --force]: do what I say, even if it is stupid", 963}, - {"Usage:", 964}, - {"%s device\t\t list active partitions on device\n", 965}, - {"%s device n1 n2 ... activate partitions n1 ..., inactivate the rest\n", 966}, - {"%s -An device\t activate partition n, inactivate the other ones\n", 967}, - {"no command?\n", 968}, - {"total: %d blocks\n", 969}, - {"usage: sfdisk --print-id device partition-number\n", 970}, - {"usage: sfdisk --change-id device partition-number Id\n", 971}, - {"usage: sfdisk --id device partition-number [Id]\n", 972}, - {"can specify only one device (except with -l or -s)\n", 973}, - {"cannot open %s %s\n", 974}, - {"read-write", 975}, - {"for reading", 976}, - {"%s: OK\n", 977}, - {"%s: %ld cylinders, %ld heads, %ld sectors/track\n", 978}, - {"BLKGETSIZE ioctl failed for %s\n", 979}, - {"bad active byte: 0x%x instead of 0x80\n", 980}, + or expect descriptors for them on input", 881}, + {"\ + -L [or --Linux]: do not complain about things irrelevant for Linux", 882}, + {" -q [or --quiet]: suppress warning messages", 883}, + {" You can override the detected geometry using:", 884}, + {" -C# [or --cylinders #]:set the number of cylinders to use", 885}, + {" -H# [or --heads #]: set the number of heads to use", 886}, + {" -S# [or --sectors #]: set the number of sectors to use", 887}, + {"You can disable all consistency checking with:", 888}, + {" -f [or --force]: do what I say, even if it is stupid", 889}, + {"Usage:", 890}, + {"%s device\t\t list active partitions on device\n", 891}, + {"%s device n1 n2 ... activate partitions n1 ..., inactivate the rest\n", 892}, + {"%s -An device\t activate partition n, inactivate the other ones\n", 893}, + {"no command?\n", 894}, + {"total: %d blocks\n", 895}, + {"usage: sfdisk --print-id device partition-number\n", 896}, + {"usage: sfdisk --change-id device partition-number Id\n", 897}, + {"usage: sfdisk --id device partition-number [Id]\n", 898}, + {"can specify only one device (except with -l or -s)\n", 899}, + {"cannot open %s %s\n", 900}, + {"read-write", 901}, + {"for reading", 902}, + {"%s: OK\n", 903}, + {"%s: %ld cylinders, %ld heads, %ld sectors/track\n", 904}, + {"BLKGETSIZE ioctl failed for %s\n", 905}, + {"bad active byte: 0x%x instead of 0x80\n", 906}, {"\ Done\n\ -\n", 981}, +\n", 907}, {"\ 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", 982}, - {"partition %s has id %x and is not hidden\n", 983}, - {"Bad Id %lx\n", 984}, - {"This disk is currently in use.\n", 985}, - {"Fatal error: cannot find %s\n", 986}, - {"Warning: %s is not a block device\n", 987}, - {"Checking that no-one is using this disk right now ...\n", 988}, +but the DOS MBR will only boot a disk with 1 active partition.\n", 908}, + {"partition %s has id %x and is not hidden\n", 909}, + {"Bad Id %lx\n", 910}, + {"This disk is currently in use.\n", 911}, + {"Fatal error: cannot find %s\n", 912}, + {"Warning: %s is not a block device\n", 913}, + {"Checking that no-one is using this disk right now ...\n", 914}, {"\ \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", 989}, - {"Use the --force flag to overrule all checks.\n", 990}, - {"OK\n", 991}, - {"Old situation:\n", 992}, - {"Partition %d does not exist, cannot change it\n", 993}, - {"New situation:\n", 994}, +Use the --no-reread flag to suppress this check.\n", 915}, + {"Use the --force flag to overrule all checks.\n", 916}, + {"OK\n", 917}, + {"Old situation:\n", 918}, + {"Partition %d does not exist, cannot change it\n", 919}, + {"New situation:\n", 920}, {"\ I don't like these partitions - nothing changed.\n\ -(If you really want this, use the --force option.)\n", 995}, - {"I don't like this - probably you should answer No\n", 996}, - {"Are you satisfied with this? [ynq] ", 997}, - {"Do you want to write this to disk? [ynq] ", 998}, +(If you really want this, use the --force option.)\n", 921}, + {"I don't like this - probably you should answer No\n", 922}, + {"Are you satisfied with this? [ynq] ", 923}, + {"Do you want to write this to disk? [ynq] ", 924}, {"\ \n\ -sfdisk: premature end of input\n", 999}, - {"Quitting - nothing changed\n", 1000}, - {"Please answer one of y,n,q\n", 1001}, +sfdisk: premature end of input\n", 925}, + {"Quitting - nothing changed\n", 926}, + {"Please answer one of y,n,q\n", 927}, {"\ Successfully wrote the new partition table\n\ -\n", 1002}, +\n", 928}, {"\ 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", 1003}, - {"usage: banner [-w width]\n", 1004}, - {"Message: ", 1005}, - {"The character '%c' is not in my character set", 1006}, - {"Message '%s' is OK\n", 1007}, - {"Try `getopt --help' for more information.\n", 1008}, - {"empty long option after -l or --long argument", 1009}, - {"unknown shell after -s or --shell argument", 1010}, - {"Usage: getopt optstring parameters\n", 1011}, - {" getopt [options] [--] optstring parameters\n", 1012}, - {" getopt [options] -o|--options optstring [options] [--]\n", 1013}, - {" parameters\n", 1014}, - {"\ - -a, --alternative Allow long options starting with single -\n", 1015}, - {" -h, --help This small usage guide\n", 1016}, - {" -l, --longoptions=longopts Long options to be recognized\n", 1017}, - {"\ - -n, --name=progname The name under which errors are reported\n", 1018}, - {" -o, --options=optstring Short options to be recognized\n", 1019}, - {" -q, --quiet Disable error reporting by getopt(3)\n", 1020}, - {" -Q, --quiet-output No normal output\n", 1021}, - {" -s, --shell=shell Set shell quoting conventions\n", 1022}, - {" -T, --test Test for getopt(1) version\n", 1023}, - {" -u, --unqote Do not quote the output\n", 1024}, - {" -V, --version Output version information\n", 1025}, - {"missing optstring argument", 1026}, - {"getopt (enhanced) 1.1.0\n", 1027}, - {"internal error, contact the author.", 1028}, - {"calling open_tty\n", 1029}, - {"calling termio_init\n", 1030}, - {"writing init string\n", 1031}, - {"before autobaud\n", 1032}, - {"waiting for cr-lf\n", 1033}, - {"read %c\n", 1034}, - {"reading login name\n", 1035}, - {"%s: can't exec %s: %m", 1036}, - {"can't malloc initstring", 1037}, - {"bad timeout value: %s", 1038}, - {"after getopt loop\n", 1039}, - {"exiting parseargs\n", 1040}, - {"entered parse_speeds\n", 1041}, - {"bad speed: %s", 1042}, - {"too many alternate speeds", 1043}, - {"exiting parsespeeds\n", 1044}, - {"%s: open for update: %m", 1045}, - {"%s: no utmp entry", 1046}, - {"/dev: chdir() failed: %m", 1047}, - {"/dev/%s: not a character device", 1048}, - {"open(2)\n", 1049}, - {"/dev/%s: cannot open as standard input: %m", 1050}, - {"%s: not open for read/write", 1051}, - {"duping\n", 1052}, - {"%s: dup problem: %m", 1053}, - {"term_io 2\n", 1054}, - {"user", 1055}, - {"users", 1056}, - {"%s: read: %m", 1057}, - {"%s: input overrun", 1058}, +(See fdisk(8).)\n", 929}, + {"usage: banner [-w width]\n", 930}, + {"Message: ", 931}, + {"The character '%c' is not in my character set", 932}, + {"Message '%s' is OK\n", 933}, + {"Try `getopt --help' for more information.\n", 934}, + {"empty long option after -l or --long argument", 935}, + {"unknown shell after -s or --shell argument", 936}, + {"Usage: getopt optstring parameters\n", 937}, + {" getopt [options] [--] optstring parameters\n", 938}, + {" getopt [options] -o|--options optstring [options] [--]\n", 939}, + {" parameters\n", 940}, + {"\ + -a, --alternative Allow long options starting with single -\n", 941}, + {" -h, --help This small usage guide\n", 942}, + {" -l, --longoptions=longopts Long options to be recognized\n", 943}, + {"\ + -n, --name=progname The name under which errors are reported\n", 944}, + {" -o, --options=optstring Short options to be recognized\n", 945}, + {" -q, --quiet Disable error reporting by getopt(3)\n", 946}, + {" -Q, --quiet-output No normal output\n", 947}, + {" -s, --shell=shell Set shell quoting conventions\n", 948}, + {" -T, --test Test for getopt(1) version\n", 949}, + {" -u, --unqote Do not quote the output\n", 950}, + {" -V, --version Output version information\n", 951}, + {"missing optstring argument", 952}, + {"getopt (enhanced) 1.1.0\n", 953}, + {"internal error, contact the author.", 954}, + {"booted from MILO\n", 955}, + {"Ruffian BCD clock\n", 956}, + {"clockport adjusted to 0x%x\n", 957}, + {"funky TOY!\n", 958}, + {"%s: atomic %s failed for 1000 iterations!", 959}, + {"Cannot open /dev/port: %s", 960}, + {"I failed to get permission because I didn't try.\n", 961}, + {"%s is unable to get I/O port access: the iopl(3) call failed.\n", 962}, + {"Probably you need root privileges.\n", 963}, + {"Assuming hardware clock is kept in %s time.\n", 964}, + {"UTC", 965}, + {"local", 966}, + {"%s: Warning: unrecognized third line in adjtime file\n", 967}, + {"(Expected: `UTC' or `LOCAL' or nothing.)\n", 968}, + {"Last drift adjustment done at %d seconds after 1969\n", 969}, + {"Last calibration done at %d seconds after 1969\n", 970}, + {"Hardware clock is on %s time\n", 971}, + {"unknown", 972}, + {"Waiting for clock tick...\n", 973}, + {"...got clock tick\n", 974}, + {"Invalid values in hardware clock: %4d/%.2d/%.2d %.2d:%.2d:%.2d\n", 975}, + {"Hw clock time : %4d/%.2d/%.2d %.2d:%.2d:%.2d = %ld seconds since 1969\n", 976}, + {"Time read from Hardware Clock: %4d/%.2d/%.2d %02d:%02d:%02d\n", 977}, + {"Setting Hardware Clock to %.2d:%.2d:%.2d = %d seconds since 1969\n", 978}, + {"Clock not changed - testing only.\n", 979}, + {"\ +Time elapsed since reference time has been %.6f seconds.\n\ +Delaying further to reach the next full second.\n", 980}, + {"\ +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", 981}, + {"%s %.6f seconds\n", 982}, + {"No --date option specified.\n", 983}, + {"\ +The value of the --date option is not a valid date.\n\ +In particular, it contains quotation marks.\n", 984}, + {"Issuing date command: %s\n", 985}, + {"Unable to run 'date' program in /bin/sh shell. popen() failed", 986}, + {"response from date command = %s\n", 987}, + {"\ +The date command issued by %s returned unexpected results.\n\ +The command was:\n\ + %s\n\ +The response was:\n\ + %s\n", 988}, + {"\ +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", 989}, + {"date string %s equates to %d seconds since 1969.\n", 990}, + {"\ +The Hardware Clock does not contain a valid time, so we cannot set the \ +System Time from it.\n", 991}, + {"Calling settimeofday:\n", 992}, + {"\ttv.tv_sec = %ld, tv.tv_usec = %ld\n", 993}, + {"\ttz.tz_minuteswest = %d\n", 994}, + {"Not setting system clock because running in test mode.\n", 995}, + {"Must be superuser to set system clock.\n", 996}, + {"settimeofday() failed", 997}, + {"\ +Not adjusting drift factor because the Hardware Clock previously contained \ +garbage.\n", 998}, + {"\ +Not adjusting drift factor because it has been less than a day since the \ +last calibration.\n", 999}, + {"\ +Clock drifted %d 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", 1000}, + {"Time since last adjustment is %d seconds\n", 1001}, + {"Need to insert %d seconds and refer time back %.6f seconds ago\n", 1002}, + {"Not updating adjtime file because of testing mode.\n", 1003}, + {"\ +Would have written the following to %s:\n\ +%s", 1004}, + {"Drift adjustment parameters not updated.\n", 1005}, + {"\ +The Hardware Clock does not contain a valid time, so we cannot adjust it.\n", 1006}, + {"Needed adjustment is less than one second, so not setting clock.\n", 1007}, + {"Using %s.\n", 1008}, + {"No usable clock interface found.\n", 1009}, + {"Unable to set system clock.\n", 1010}, + {"\ +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", 1011}, + {"Unable to get the epoch value from the kernel.\n", 1012}, + {"Kernel is assuming an epoch value of %lu\n", 1013}, + {"\ +To set the epoch value, you must use the 'epoch' option to tell to what \ +value to set it.\n", 1014}, + {"Not setting the epoch to %d - testing only.\n", 1015}, + {"Unable to set the epoch value in the kernel.\n", 1016}, + {"\ +hwclock - query and set the hardware clock (RTC)\n\ +\n\ +Usage: hwclock [function] [options...]\n\ +\n\ +Functions:\n\ + --help show this help\n\ + --show read hardware clock and print result\n\ + --set set the rtc to the time given with --date\n\ + --hctosys set the system time from the hardware clock\n\ + --systohc set the hardware clock to the current system time\n\ + --adjust adjust the rtc to account for systematic drift since \n\ + the clock was last set or adjusted\n\ + --getepoch print out the kernel's hardware clock epoch value\n\ + --setepoch set the kernel's hardware clock epoch value to the \n\ + value given with --epoch\n\ + --version print out the version of hwclock to stdout\n\ +\n\ +Options: \n\ + --utc the hardware clock is kept in coordinated universal time\n\ + --localtime the hardware clock is kept in local time\n\ + --directisa access the ISA bus directly instead of %s\n\ + --badyear ignore rtc's year because the bios is broken\n\ + --date specifies the time to which to set the hardware clock\n\ + --epoch=year specifies the year which is the beginning of the \n\ + hardware clock's epoch value\n", 1017}, + {"\ + --jensen, --arc, --srm, --funky-toy\n\ + tell hwclock the type of alpha you have (see hwclock(8))\n", 1018}, + {"%s takes no non-option arguments. You supplied %d.\n", 1019}, + {"\ +You have specified multiple function options.\n\ +You can only perform one function at a time.\n", 1020}, + {"\ +%s: The --utc and --localtime options are mutually exclusive. You specified \ +both.\n", 1021}, + {"No usable set-to time. Cannot set clock.\n", 1022}, + {"Sorry, only the superuser can change the Hardware Clock.\n", 1023}, + {"Sorry, only the superuser can change the System Clock.\n", 1024}, + {"\ +Sorry, only the superuser can change the Hardware Clock epoch in the \ +kernel.\n", 1025}, + {"Cannot access the Hardware Clock via any known method.\n", 1026}, + {"\ +Use the --debug option to see the details of our search for an access \ +method.\n", 1027}, + {"Waiting in loop for time from KDGHWCLK to change\n", 1028}, + {"KDGHWCLK ioctl to read time failed", 1029}, + {"Timed out waiting for time change.\n", 1030}, + {"KDGHWCLK ioctl to read time failed in loop", 1031}, + {"ioctl() failed to read time from /dev/tty1", 1032}, + {"ioctl KDSHWCLK failed", 1033}, + {"KDGHWCLK ioctl failed", 1034}, + {"Can't open /dev/tty1", 1035}, + {"ioctl() to %s to read the time failed.\n", 1036}, + {"Waiting in loop for time from %s to change\n", 1037}, + {"open() of %s failed", 1038}, + {"%s does not have interrupt functions. ", 1039}, + {"read() to %s to wait for clock tick failed", 1040}, + {"ioctl() to %s to turn off update interrupts failed", 1041}, + {"ioctl() to %s to turn on update interrupts failed unexpectedly", 1042}, + {"Unable to open %s", 1043}, + {"ioctl() to %s to set the time failed.\n", 1044}, + {"ioctl(%s) was successful.\n", 1045}, + {"Open of %s failed", 1046}, + {"\ +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", 1047}, + {"ioctl(RTC_EPOCH_READ) to %s failed", 1048}, + {"we have read epoch %ld from %s with RTC_EPOCH_READ ioctl.\n", 1049}, + {"The epoch value may not be less than 1900. You requested %ld\n", 1050}, + {"setting epoch to %ld with RTC_EPOCH_SET ioctl to %s.\n", 1051}, + {"\ +The kernel device driver for %s does not have the RTC_EPOCH_SET ioctl.\n", 1052}, + {"ioctl(RTC_EPOCH_SET) to %s failed", 1053}, + {"invalid number `%s'\n", 1054}, + {"number `%s' to `%s' out of range\n", 1055}, + {"unrecognized option `%s'\n", 1056}, + {"option `%s' requires an argument\n", 1057}, + {"option `%s' doesn't allow an argument\n", 1058}, + {"unrecognized option `-%c'\n", 1059}, + {"calling open_tty\n", 1060}, + {"calling termio_init\n", 1061}, + {"writing init string\n", 1062}, + {"before autobaud\n", 1063}, + {"waiting for cr-lf\n", 1064}, + {"read %c\n", 1065}, + {"reading login name\n", 1066}, + {"%s: can't exec %s: %m", 1067}, + {"can't malloc initstring", 1068}, + {"bad timeout value: %s", 1069}, + {"after getopt loop\n", 1070}, + {"exiting parseargs\n", 1071}, + {"entered parse_speeds\n", 1072}, + {"bad speed: %s", 1073}, + {"too many alternate speeds", 1074}, + {"exiting parsespeeds\n", 1075}, + {"/dev: chdir() failed: %m", 1076}, + {"/dev/%s: not a character device", 1077}, + {"open(2)\n", 1078}, + {"/dev/%s: cannot open as standard input: %m", 1079}, + {"%s: not open for read/write", 1080}, + {"duping\n", 1081}, + {"%s: dup problem: %m", 1082}, + {"term_io 2\n", 1083}, + {"user", 1084}, + {"users", 1085}, + {"%s: read: %m", 1086}, + {"%s: input overrun", 1087}, {"\ 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", 1059}, - {"login: memory low, login may fail\n", 1060}, - {"can't malloc for ttyclass", 1061}, - {"can't malloc for grplist", 1062}, - {"Login on %s from %s denied by default.\n", 1063}, - {"Login on %s from %s denied.\n", 1064}, - {"%s: you (user %d) don't exist.\n", 1065}, - {"%s: user \"%s\" does not exist.\n", 1066}, - {"%s: can only change local entries; use yp%s instead.\n", 1067}, - {"Changing finger information for %s.\n", 1068}, - {"Password error.", 1069}, - {"Password: ", 1070}, - {"Incorrect password.", 1071}, - {"Finger information not changed.\n", 1072}, - {"Usage: %s [ -f full-name ] [ -o office ] ", 1073}, +line baud_rate,... [termtype]\n", 1088}, + {"login: memory low, login may fail\n", 1089}, + {"can't malloc for ttyclass", 1090}, + {"can't malloc for grplist", 1091}, + {"Login on %s from %s denied by default.\n", 1092}, + {"Login on %s from %s denied.\n", 1093}, + {"%s: you (user %d) don't exist.\n", 1094}, + {"%s: user \"%s\" does not exist.\n", 1095}, + {"%s: can only change local entries; use yp%s instead.\n", 1096}, + {"Changing finger information for %s.\n", 1097}, + {"Password error.", 1098}, + {"Password: ", 1099}, + {"Incorrect password.", 1100}, + {"Finger information not changed.\n", 1101}, + {"Usage: %s [ -f full-name ] [ -o office ] ", 1102}, {"\ [ -p office-phone ]\n\ -\t[ -h home-phone ] ", 1074}, - {"[ --help ] [ --version ]\n", 1075}, +\t[ -h home-phone ] ", 1103}, + {"[ --help ] [ --version ]\n", 1104}, {"\ \n\ -Aborted.\n", 1076}, - {"field is too long.\n", 1077}, - {"'%c' is not allowed.\n", 1078}, - {"Control characters are not allowed.\n", 1079}, - {"Finger information *NOT* changed. Try again later.\n", 1080}, - {"Finger information changed.\n", 1081}, - {"malloc failed", 1082}, - {"%s: Your shell is not in /etc/shells, shell change denied\n", 1083}, - {"Changing shell for %s.\n", 1084}, - {"New shell", 1085}, - {"Shell not changed.\n", 1086}, - {"Shell *NOT* changed. Try again later.\n", 1087}, - {"Shell changed.\n", 1088}, - {"Usage: %s [ -s shell ] ", 1089}, - {"[ --list-shells ] [ --help ] [ --version ]\n", 1090}, - {" [ username ]\n", 1091}, - {"%s: shell must be a full path name.\n", 1092}, - {"%s: \"%s\" does not exist.\n", 1093}, - {"%s: \"%s\" is not executable.\n", 1094}, - {"%s: '%c' is not allowed.\n", 1095}, - {"%s: Control characters are not allowed.\n", 1096}, - {"Warning: \"%s\" is not listed in /etc/shells\n", 1097}, - {"%s: \"%s\" is not listed in /etc/shells.\n", 1098}, - {"%s: use -l option to see list\n", 1099}, - {"Warning: \"%s\" is not listed in /etc/shells.\n", 1100}, - {"Use %s -l to see list.\n", 1101}, - {"No known shells.\n", 1102}, - {"couldn't open /dev/urandom", 1103}, - {"couldn't read random data from /dev/urandom", 1104}, - {"can't open %s for reading", 1105}, - {"can't stat(%s)", 1106}, - {"%s doesn't have the correct filemodes", 1107}, - {"can't read data from %s", 1108}, - {"Can't read %s, exiting.", 1109}, - {"usage: last [-#] [-f file] [-t tty] [-h hostname] [user ...]\n", 1110}, - {" still logged in", 1111}, +Aborted.\n", 1105}, + {"field is too long.\n", 1106}, + {"'%c' is not allowed.\n", 1107}, + {"Control characters are not allowed.\n", 1108}, + {"Finger information *NOT* changed. Try again later.\n", 1109}, + {"Finger information changed.\n", 1110}, + {"malloc failed", 1111}, + {"%s: Your shell is not in /etc/shells, shell change denied\n", 1112}, + {"Changing shell for %s.\n", 1113}, + {"New shell", 1114}, + {"Shell not changed.\n", 1115}, + {"Shell *NOT* changed. Try again later.\n", 1116}, + {"Shell changed.\n", 1117}, + {"Usage: %s [ -s shell ] ", 1118}, + {"[ --list-shells ] [ --help ] [ --version ]\n", 1119}, + {" [ username ]\n", 1120}, + {"%s: shell must be a full path name.\n", 1121}, + {"%s: \"%s\" does not exist.\n", 1122}, + {"%s: \"%s\" is not executable.\n", 1123}, + {"%s: '%c' is not allowed.\n", 1124}, + {"%s: Control characters are not allowed.\n", 1125}, + {"Warning: \"%s\" is not listed in /etc/shells\n", 1126}, + {"%s: \"%s\" is not listed in /etc/shells.\n", 1127}, + {"%s: use -l option to see list\n", 1128}, + {"Warning: \"%s\" is not listed in /etc/shells.\n", 1129}, + {"Use %s -l to see list.\n", 1130}, + {"No known shells.\n", 1131}, + {"couldn't open /dev/urandom", 1132}, + {"couldn't read random data from /dev/urandom", 1133}, + {"can't open %s for reading", 1134}, + {"can't stat(%s)", 1135}, + {"%s doesn't have the correct filemodes", 1136}, + {"can't read data from %s", 1137}, + {"Can't read %s, exiting.", 1138}, + {"usage: last [-#] [-f file] [-t tty] [-h hostname] [user ...]\n", 1139}, + {" still logged in", 1140}, {"\ \n\ -wtmp begins %s", 1112}, - {"last: malloc failure.\n", 1113}, - {"last: gethostname", 1114}, +wtmp begins %s", 1141}, + {"last: malloc failure.\n", 1142}, + {"last: gethostname", 1143}, {"\ \n\ -interrupted %10.10s %5.5s \n", 1115}, - {"login: -h for super-user only.\n", 1116}, - {"usage: login [-fp] [username]\n", 1117}, - {"login: PAM Failure, aborting: %s\n", 1118}, - {"Couldn't initialize PAM: %s", 1119}, - {"login: ", 1120}, - {"FAILED LOGIN %d FROM %s FOR %s, %s", 1121}, +interrupted %10.10s %5.5s \n", 1144}, + {"login: -h for super-user only.\n", 1145}, + {"usage: login [-fp] [username]\n", 1146}, + {"login: PAM Failure, aborting: %s\n", 1147}, + {"Couldn't initialize PAM: %s", 1148}, + {"login: ", 1149}, + {"FAILED LOGIN %d FROM %s FOR %s, %s", 1150}, {"\ Login incorrect\n\ -\n", 1122}, - {"TOO MANY LOGIN TRIES (%d) FROM %s FOR %s, %s", 1123}, - {"FAILED LOGIN SESSION FROM %s FOR %s, %s", 1124}, +\n", 1151}, + {"TOO MANY LOGIN TRIES (%d) FROM %s FOR %s, %s", 1152}, + {"FAILED LOGIN SESSION FROM %s FOR %s, %s", 1153}, {"\ \n\ -Login incorrect\n", 1125}, - {"Illegal username", 1126}, - {"%s login refused on this terminal.\n", 1127}, - {"LOGIN %s REFUSED FROM %s ON TTY %s", 1128}, - {"LOGIN %s REFUSED ON TTY %s", 1129}, - {"Login incorrect\n", 1130}, +Login incorrect\n", 1154}, + {"Illegal username", 1155}, + {"%s login refused on this terminal.\n", 1156}, + {"LOGIN %s REFUSED FROM %s ON TTY %s", 1157}, + {"LOGIN %s REFUSED ON TTY %s", 1158}, + {"Login incorrect\n", 1159}, {"\ Too many users logged on already.\n\ -Try again later.\n", 1131}, - {"You have too many processes running.\n", 1132}, - {"Warning: no Kerberos tickets issued\n", 1133}, - {"Sorry -- your password has expired.\n", 1134}, - {"Warning: your password expires on %d %s %d.\n", 1135}, - {"Sorry -- your account has expired.\n", 1136}, - {"Warning: your account expires on %d %s %d.\n", 1137}, - {"DIALUP AT %s BY %s", 1138}, - {"ROOT LOGIN ON %s FROM %s", 1139}, - {"ROOT LOGIN ON %s", 1140}, - {"LOGIN ON %s BY %s FROM %s", 1141}, - {"LOGIN ON %s BY %s", 1142}, - {"You have %smail.\n", 1143}, - {"new ", 1144}, - {"login: failure forking: %s", 1145}, - {"setuid() failed", 1146}, - {"No directory %s!\n", 1147}, - {"Logging in with home = \"/\".\n", 1148}, - {"login: no memory for shell script.\n", 1149}, - {"login: couldn't exec shell script: %s.\n", 1150}, - {"login: no shell: %s.\n", 1151}, +Try again later.\n", 1160}, + {"You have too many processes running.\n", 1161}, + {"DIALUP AT %s BY %s", 1162}, + {"ROOT LOGIN ON %s FROM %s", 1163}, + {"ROOT LOGIN ON %s", 1164}, + {"LOGIN ON %s BY %s FROM %s", 1165}, + {"LOGIN ON %s BY %s", 1166}, + {"You have %smail.\n", 1167}, + {"new ", 1168}, + {"login: failure forking: %s", 1169}, + {"setuid() failed", 1170}, + {"No directory %s!\n", 1171}, + {"Logging in with home = \"/\".\n", 1172}, + {"login: no memory for shell script.\n", 1173}, + {"login: couldn't exec shell script: %s.\n", 1174}, + {"login: no shell: %s.\n", 1175}, {"\ \n\ -%s login: ", 1152}, - {"login name much too long.\n", 1153}, - {"NAME too long", 1154}, - {"login names may not start with '-'.\n", 1155}, - {"too many bare linefeeds.\n", 1156}, - {"EXCESSIVE linefeeds", 1157}, - {"Login timed out after %d seconds\n", 1158}, - {"Last login: %.*s ", 1159}, - {"from %.*s\n", 1160}, - {"on %.*s\n", 1161}, - {"LOGIN FAILURE FROM %s, %s", 1162}, - {"LOGIN FAILURE ON %s, %s", 1163}, - {"%d LOGIN FAILURES FROM %s, %s", 1164}, - {"%d LOGIN FAILURES ON %s, %s", 1165}, - {"is y\n", 1166}, - {"is n\n", 1167}, - {"usage: mesg [y | n]\n", 1168}, - {"newgrp: Who are you?", 1169}, - {"newgrp: setgid", 1170}, - {"newgrp: No such group.", 1171}, - {"newgrp: Permission denied", 1172}, - {"newgrp: setuid", 1173}, - {"No shell", 1174}, - {"The password must have at least 6 characters, try again.\n", 1175}, - {"The password must contain characters out of two of the following\n", 1176}, - {"classes: upper and lower case letters, digits and non alphanumeric\n", 1177}, - {"characters. See passwd(1) for more information.\n", 1178}, - {"You cannot reuse the old password.\n", 1179}, - {"Please don't use something like your username as password!\n", 1180}, - {"Please don't use something like your realname as password!\n", 1181}, - {"Usage: passwd [username [password]]\n", 1182}, - {"Only root may use the one and two argument forms.\n", 1183}, - {"Usage: passwd [-foqsvV] [user [password]]\n", 1184}, - {"Can't exec %s: %s\n", 1185}, - {"Cannot find login name", 1186}, - {"Only root can change the password for others.\n", 1187}, - {"Too many arguments.\n", 1188}, - {"Can't find username anywhere. Is `%s' really a user?", 1189}, - {"Sorry, I can only change local passwords. Use yppasswd instead.", 1190}, - {"UID and username does not match, imposter!", 1191}, - {"Changing password for %s\n", 1192}, - {"Enter old password: ", 1193}, - {"Illegal password, imposter.", 1194}, - {"Enter new password: ", 1195}, - {"Password not changed.", 1196}, - {"Re-type new password: ", 1197}, - {"You misspelled it. Password not changed.", 1198}, - {"password changed, user %s", 1199}, - {"ROOT PASSWORD CHANGED", 1200}, - {"password changed by root, user %s", 1201}, - {"calling setpwnam to set password.\n", 1202}, - {"Password *NOT* changed. Try again later.\n", 1203}, - {"Password changed.\n", 1204}, - {"Usage: shutdown [-h|-r] [-fqs] [now|hh:ss|+mins]\n", 1205}, - {"Shutdown process aborted", 1206}, - {"%s: Only root can shut a system down.\n", 1207}, - {"That must be tomorrow, can't you wait till then?\n", 1208}, - {"for maintenance; bounce, bounce", 1209}, - {"timeout = %d, quiet = %d, reboot = %d\n", 1210}, - {"The system is being shut down within 5 minutes", 1211}, - {"Login is therefore prohibited.", 1212}, - {"%s by %s: %s", 1213}, - {"rebooted", 1214}, - {"halted", 1215}, +%s login: ", 1176}, + {"login name much too long.\n", 1177}, + {"NAME too long", 1178}, + {"login names may not start with '-'.\n", 1179}, + {"too many bare linefeeds.\n", 1180}, + {"EXCESSIVE linefeeds", 1181}, + {"Login timed out after %d seconds\n", 1182}, + {"Last login: %.*s ", 1183}, + {"from %.*s\n", 1184}, + {"on %.*s\n", 1185}, + {"LOGIN FAILURE FROM %s, %s", 1186}, + {"LOGIN FAILURE ON %s, %s", 1187}, + {"%d LOGIN FAILURES FROM %s, %s", 1188}, + {"%d LOGIN FAILURES ON %s, %s", 1189}, + {"is y\n", 1190}, + {"is n\n", 1191}, + {"usage: mesg [y | n]\n", 1192}, + {"newgrp: Who are you?", 1193}, + {"newgrp: setgid", 1194}, + {"newgrp: No such group.", 1195}, + {"newgrp: Permission denied", 1196}, + {"newgrp: setuid", 1197}, + {"No shell", 1198}, + {"The password must have at least 6 characters, try again.\n", 1199}, + {"The password must contain characters out of two of the following\n", 1200}, + {"classes: upper and lower case letters, digits and non alphanumeric\n", 1201}, + {"characters. See passwd(1) for more information.\n", 1202}, + {"You cannot reuse the old password.\n", 1203}, + {"Please don't use something like your username as password!\n", 1204}, + {"Please don't use something like your realname as password!\n", 1205}, + {"Usage: passwd [username [password]]\n", 1206}, + {"Only root may use the one and two argument forms.\n", 1207}, + {"Usage: passwd [-foqsvV] [user [password]]\n", 1208}, + {"Can't exec %s: %s\n", 1209}, + {"Cannot find login name", 1210}, + {"Only root can change the password for others.\n", 1211}, + {"Too many arguments.\n", 1212}, + {"Can't find username anywhere. Is `%s' really a user?", 1213}, + {"Sorry, I can only change local passwords. Use yppasswd instead.", 1214}, + {"UID and username does not match, imposter!", 1215}, + {"Changing password for %s\n", 1216}, + {"Enter old password: ", 1217}, + {"Illegal password, imposter.", 1218}, + {"Enter new password: ", 1219}, + {"Password not changed.", 1220}, + {"Re-type new password: ", 1221}, + {"You misspelled it. Password not changed.", 1222}, + {"password changed, user %s", 1223}, + {"ROOT PASSWORD CHANGED", 1224}, + {"password changed by root, user %s", 1225}, + {"calling setpwnam to set password.\n", 1226}, + {"Password *NOT* changed. Try again later.\n", 1227}, + {"Password changed.\n", 1228}, + {"Usage: shutdown [-h|-r] [-fqs] [now|hh:ss|+mins]\n", 1229}, + {"Shutdown process aborted", 1230}, + {"%s: Only root can shut a system down.\n", 1231}, + {"That must be tomorrow, can't you wait till then?\n", 1232}, + {"for maintenance; bounce, bounce", 1233}, + {"timeout = %d, quiet = %d, reboot = %d\n", 1234}, + {"The system is being shut down within 5 minutes", 1235}, + {"Login is therefore prohibited.", 1236}, + {"%s by %s: %s", 1237}, + {"rebooted", 1238}, + {"halted", 1239}, {"\ \n\ -Why am I still alive after reboot?", 1216}, +Why am I still alive after reboot?", 1240}, {"\ \n\ -Now you can turn off the power...", 1217}, - {"Calling kernel power-off facility...\n", 1218}, - {"Error powering off\t%s\n", 1219}, - {"Executing the program \"%s\" ...\n", 1220}, - {"Error executing\t%s\n", 1221}, - {"URGENT: broadcast message from %s:", 1222}, - {"System going down in %d hours %d minutes", 1223}, - {"System going down in 1 hour %d minutes", 1224}, - {"System going down in %d minutes\n", 1225}, - {"System going down in 1 minute\n", 1226}, - {"System going down IMMEDIATELY!\n", 1227}, - {"\t... %s ...\n", 1228}, - {"Cannot fork for swapoff. Shrug!", 1229}, - {"Cannot exec swapoff, hoping umount will do the trick.", 1230}, - {"Cannot fork for umount, trying manually.", 1231}, - {"Cannot exec %s, trying umount.\n", 1232}, - {"Cannot exec umount, giving up on umount.", 1233}, - {"Unmounting any remaining filesystems...", 1234}, - {"shutdown: Couldn't umount %s: %s\n", 1235}, - {"Booting to single user mode.\n", 1236}, - {"exec of single user shell failed\n", 1237}, - {"fork of single user shell failed\n", 1238}, - {"error opening fifo\n", 1239}, - {"error running finalprog\n", 1240}, - {"error forking finalprog\n", 1241}, +Now you can turn off the power...", 1241}, + {"Calling kernel power-off facility...\n", 1242}, + {"Error powering off\t%s\n", 1243}, + {"Executing the program \"%s\" ...\n", 1244}, + {"Error executing\t%s\n", 1245}, + {"URGENT: broadcast message from %s:", 1246}, + {"System going down in %d hours %d minutes", 1247}, + {"System going down in 1 hour %d minutes", 1248}, + {"System going down in %d minutes\n", 1249}, + {"System going down in 1 minute\n", 1250}, + {"System going down IMMEDIATELY!\n", 1251}, + {"\t... %s ...\n", 1252}, + {"Cannot fork for swapoff. Shrug!", 1253}, + {"Cannot exec swapoff, hoping umount will do the trick.", 1254}, + {"Cannot fork for umount, trying manually.", 1255}, + {"Cannot exec %s, trying umount.\n", 1256}, + {"Cannot exec umount, giving up on umount.", 1257}, + {"Unmounting any remaining filesystems...", 1258}, + {"shutdown: Couldn't umount %s: %s\n", 1259}, + {"Booting to single user mode.\n", 1260}, + {"exec of single user shell failed\n", 1261}, + {"fork of single user shell failed\n", 1262}, + {"error opening fifo\n", 1263}, + {"error running finalprog\n", 1264}, + {"error forking finalprog\n", 1265}, {"\ \n\ -Wrong password.\n", 1242}, - {"stat of path failed\n", 1243}, - {"open of directory failed\n", 1244}, - {"fork failed\n", 1245}, - {"exec failed\n", 1246}, - {"cannot open inittab\n", 1247}, - {"no TERM or cannot stat tty\n", 1248}, - {"error running programme\n", 1249}, - {"too many iov's (change code in wall/ttymsg.c)", 1250}, - {"excessively long line arg", 1251}, - {"cannot fork", 1252}, - {"fork: %s", 1253}, - {"%s: BAD ERROR", 1254}, - {"%s: the %s file is busy.\n", 1255}, - {"%s: the %s file is busy (%s present)\n", 1256}, - {"%s: can't link %s: %s\n", 1257}, - {"%s: can't unlock %s: %s (your changes are still in %s)\n", 1258}, - {"%s: Cannot fork\n", 1259}, - {"%s: %s unchanged\n", 1260}, - {"%s: no changes made\n", 1261}, - {"usage: %s [file]\n", 1262}, - {"%s: can't open temporary file.\n", 1263}, - {"Broadcast Message from %s@%s", 1264}, - {"%s: will not read %s - use stdin.\n", 1265}, - {"%s: can't read %s.\n", 1266}, - {"%s: can't stat temporary file.\n", 1267}, - {"%s: can't read temporary file.\n", 1268}, - {"illegal month value: use 1-12", 1269}, - {"illegal year value: use 1-9999", 1270}, - {"usage: cal [-mjyV] [[month] year]\n", 1271}, - {"usage: %s [+format] [day month year]\n", 1272}, - {"St. Tib's Day", 1273}, - {"%s: unknown signal %s\n", 1274}, - {"%s: can't find process \"%s\"\n", 1275}, - {"%s: unknown signal %s; valid signals:\n", 1276}, - {"usage: %s [ -s signal | -p ] [ -a ] pid ...\n", 1277}, - {" %s -l [ signal ]\n", 1278}, - {"logger: %s: %s.\n", 1279}, - {"logger: unknown facility name: %s.\n", 1280}, - {"logger: unknown priority name: %s.\n", 1281}, - {"\ -usage: logger [-is] [-f file] [-p pri] [-t tag] [-u socket] [ message ... ]\n", 1282}, - {"usage: look [-dfa] [-t char] string [file]\n", 1283}, - {"Could not open %s\n", 1284}, - {"Got %d bytes from %s\n", 1285}, - {"namei: unable to get current directory - %s\n", 1286}, - {"namei: unable to chdir to %s - %s (%d)\n", 1287}, - {"usage: namei [-mx] pathname [pathname ...]\n", 1288}, - {"namei: could not chdir to root!\n", 1289}, - {"namei: could not stat root!\n", 1290}, - {" ? could not chdir into %s - %s (%d)\n", 1291}, - {" ? problems reading symlink %s - %s (%d)\n", 1292}, - {" *** EXCEEDED UNIX LIMIT OF SYMLINKS ***\n", 1293}, - {"namei: unknown file type 0%06o on file %s\n", 1294}, +Wrong password.\n", 1266}, + {"lstat of path failed\n", 1267}, + {"stat of path failed\n", 1268}, + {"open of directory failed\n", 1269}, + {"fork failed\n", 1270}, + {"exec failed\n", 1271}, + {"cannot open inittab\n", 1272}, + {"no TERM or cannot stat tty\n", 1273}, + {"error running programme\n", 1274}, + {"too many iov's (change code in wall/ttymsg.c)", 1275}, + {"excessively long line arg", 1276}, + {"cannot fork", 1277}, + {"fork: %s", 1278}, + {"%s: BAD ERROR", 1279}, + {"%s: the %s file is busy.\n", 1280}, + {"%s: the %s file is busy (%s present)\n", 1281}, + {"%s: can't link %s: %s\n", 1282}, + {"%s: can't unlock %s: %s (your changes are still in %s)\n", 1283}, + {"%s: Cannot fork\n", 1284}, + {"%s: %s unchanged\n", 1285}, + {"%s: no changes made\n", 1286}, + {"You are using shadow groups on this system.\n", 1287}, + {"You are using shadow passwords on this system.\n", 1288}, + {"Would you like to edit %s now [y/n]? ", 1289}, + {"usage: %s [file]\n", 1290}, + {"%s: can't open temporary file.\n", 1291}, + {"Broadcast Message from %s@%s", 1292}, + {"%s: will not read %s - use stdin.\n", 1293}, + {"%s: can't read %s.\n", 1294}, + {"%s: can't stat temporary file.\n", 1295}, + {"%s: can't read temporary file.\n", 1296}, + {"illegal month value: use 1-12", 1297}, + {"illegal year value: use 1-9999", 1298}, + {"usage: cal [-mjyV] [[month] year]\n", 1299}, + {"usage: %s [+format] [day month year]\n", 1300}, + {"St. Tib's Day", 1301}, + {"%s: unknown signal %s\n", 1302}, + {"%s: can't find process \"%s\"\n", 1303}, + {"%s: unknown signal %s; valid signals:\n", 1304}, + {"usage: %s [ -s signal | -p ] [ -a ] pid ...\n", 1305}, + {" %s -l [ signal ]\n", 1306}, + {"logger: %s: %s.\n", 1307}, + {"logger: unknown facility name: %s.\n", 1308}, + {"logger: unknown priority name: %s.\n", 1309}, + {"\ +usage: logger [-is] [-f file] [-p pri] [-t tag] [-u socket] [ message ... ]\n", 1310}, + {"usage: look [-dfa] [-t char] string [file]\n", 1311}, + {"Could not open %s\n", 1312}, + {"Got %d bytes from %s\n", 1313}, + {"namei: unable to get current directory - %s\n", 1314}, + {"namei: unable to chdir to %s - %s (%d)\n", 1315}, + {"usage: namei [-mx] pathname [pathname ...]\n", 1316}, + {"namei: could not chdir to root!\n", 1317}, + {"namei: could not stat root!\n", 1318}, + {" ? could not chdir into %s - %s (%d)\n", 1319}, + {" ? problems reading symlink %s - %s (%d)\n", 1320}, + {" *** EXCEEDED UNIX LIMIT OF SYMLINKS ***\n", 1321}, + {"namei: unknown file type 0%06o on file %s\n", 1322}, + {"%s: out of memory\n", 1323}, + {"%s: renaming %s to %s failed: %s\n", 1324}, + {"call: %s from to files...\n", 1325}, {"\ Warning: `%s' is a symlink.\n\ Use `%s [options] %s' if you really want to use it.\n\ -Script not started.\n", 1295}, - {"usage: script [-a] [-f] [-q] [file]\n", 1296}, - {"Script started, file is %s\n", 1297}, - {"Script started on %s", 1298}, +Script not started.\n", 1326}, + {"usage: script [-a] [-f] [-q] [file]\n", 1327}, + {"Script started, file is %s\n", 1328}, + {"Script started on %s", 1329}, {"\ \n\ -Script done on %s", 1299}, - {"Script done, file is %s\n", 1300}, - {"openpty failed\n", 1301}, - {"Out of pty's\n", 1302}, - {"%s: Argument error, usage\n", 1303}, - {" [ -term terminal_name ]\n", 1304}, - {" [ -reset ]\n", 1305}, - {" [ -initialize ]\n", 1306}, - {" [ -cursor [on|off] ]\n", 1307}, - {" [ -snow [on|off] ]\n", 1308}, - {" [ -softscroll [on|off] ]\n", 1309}, - {" [ -repeat [on|off] ]\n", 1310}, - {" [ -appcursorkeys [on|off] ]\n", 1311}, - {" [ -linewrap [on|off] ]\n", 1312}, - {" [ -default ]\n", 1313}, - {" [ -foreground black|blue|green|cyan", 1314}, - {"|red|magenta|yellow|white|default ]\n", 1315}, - {" [ -background black|blue|green|cyan", 1316}, - {" [ -ulcolor black|grey|blue|green|cyan", 1317}, - {"|red|magenta|yellow|white ]\n", 1318}, - {" [ -ulcolor bright blue|green|cyan", 1319}, - {" [ -hbcolor black|grey|blue|green|cyan", 1320}, - {" [ -hbcolor bright blue|green|cyan", 1321}, - {" [ -standout [ attr ] ]\n", 1322}, - {" [ -inversescreen [on|off] ]\n", 1323}, - {" [ -bold [on|off] ]\n", 1324}, - {" [ -half-bright [on|off] ]\n", 1325}, - {" [ -blink [on|off] ]\n", 1326}, - {" [ -reverse [on|off] ]\n", 1327}, - {" [ -underline [on|off] ]\n", 1328}, - {" [ -store ]\n", 1329}, - {" [ -clear [all|rest] ]\n", 1330}, - {" [ -tabs [ tab1 tab2 tab3 ... ] ] (tabn = 1-160)\n", 1331}, - {" [ -clrtabs [ tab1 tab2 tab3 ... ] ] (tabn = 1-160)\n", 1332}, - {" [ -regtabs [1-160] ]\n", 1333}, - {" [ -blank [0-60] ]\n", 1334}, - {" [ -dump [1-NR_CONSOLES] ]\n", 1335}, - {" [ -append [1-NR_CONSOLES] ]\n", 1336}, - {" [ -file dumpfilename ]\n", 1337}, - {" [ -msg [on|off] ]\n", 1338}, - {" [ -msglevel [0-8] ]\n", 1339}, - {" [ -powersave [on|vsync|hsync|powerdown|off] ]\n", 1340}, - {" [ -powerdown [0-60] ]\n", 1341}, - {" [ -blength [0-2000] ]\n", 1342}, - {" [ -bfreq freqnumber ]\n", 1343}, - {"snow.on", 1344}, - {"snow.off", 1345}, - {"softscroll.on", 1346}, - {"softscroll.off", 1347}, - {"cannot (un)set powersave mode\n", 1348}, - {"klogctl error: %s\n", 1349}, - {"Error reading %s\n", 1350}, - {"Error writing screendump\n", 1351}, - {"couldn't read %s, and cannot ioctl dump\n", 1352}, - {"%s: $TERM is not defined.\n", 1353}, - {"usage: tsort [ inputfile ]\n", 1354}, - {"tsort: odd data count.\n", 1355}, - {"tsort: cycle in data.\n", 1356}, - {"tsort: internal error -- could not find cycle.\n", 1357}, - {"whereis [ -sbmu ] [ -SBM dir ... -f ] name...\n", 1358}, - {"write: can't find your tty's name\n", 1359}, - {"write: you have write permission turned off.\n", 1360}, - {"write: %s is not logged in on %s.\n", 1361}, - {"write: %s has messages disabled on %s\n", 1362}, - {"usage: write user [tty]\n", 1363}, - {"write: %s is not logged in\n", 1364}, - {"write: %s has messages disabled\n", 1365}, - {"write: %s is logged in more than once; writing to %s\n", 1366}, - {"Message from %s@%s (as %s) on %s at %s ...", 1367}, - {"Message from %s@%s on %s at %s ...", 1368}, - {"warning: error reading %s: %s", 1369}, - {"warning: can't open %s: %s", 1370}, - {"mount: could not open %s - using %s instead\n", 1371}, - {"can't create lock file %s: %s (use -n flag to override)", 1372}, - {"can't link lock file %s: %s (use -n flag to override)", 1373}, - {"can't open lock file %s: %s (use -n flag to override)", 1374}, - {"Can't lock lock file %s: %s\n", 1375}, - {"can't lock lock file %s: %s", 1376}, - {"timed out", 1377}, +Script done on %s", 1330}, + {"Script done, file is %s\n", 1331}, + {"openpty failed\n", 1332}, + {"Out of pty's\n", 1333}, + {"%s: Argument error, usage\n", 1334}, + {" [ -term terminal_name ]\n", 1335}, + {" [ -reset ]\n", 1336}, + {" [ -initialize ]\n", 1337}, + {" [ -cursor [on|off] ]\n", 1338}, + {" [ -snow [on|off] ]\n", 1339}, + {" [ -softscroll [on|off] ]\n", 1340}, + {" [ -repeat [on|off] ]\n", 1341}, + {" [ -appcursorkeys [on|off] ]\n", 1342}, + {" [ -linewrap [on|off] ]\n", 1343}, + {" [ -default ]\n", 1344}, + {" [ -foreground black|blue|green|cyan", 1345}, + {"|red|magenta|yellow|white|default ]\n", 1346}, + {" [ -background black|blue|green|cyan", 1347}, + {" [ -ulcolor black|grey|blue|green|cyan", 1348}, + {"|red|magenta|yellow|white ]\n", 1349}, + {" [ -ulcolor bright blue|green|cyan", 1350}, + {" [ -hbcolor black|grey|blue|green|cyan", 1351}, + {" [ -hbcolor bright blue|green|cyan", 1352}, + {" [ -standout [ attr ] ]\n", 1353}, + {" [ -inversescreen [on|off] ]\n", 1354}, + {" [ -bold [on|off] ]\n", 1355}, + {" [ -half-bright [on|off] ]\n", 1356}, + {" [ -blink [on|off] ]\n", 1357}, + {" [ -reverse [on|off] ]\n", 1358}, + {" [ -underline [on|off] ]\n", 1359}, + {" [ -store ]\n", 1360}, + {" [ -clear [all|rest] ]\n", 1361}, + {" [ -tabs [ tab1 tab2 tab3 ... ] ] (tabn = 1-160)\n", 1362}, + {" [ -clrtabs [ tab1 tab2 tab3 ... ] ] (tabn = 1-160)\n", 1363}, + {" [ -regtabs [1-160] ]\n", 1364}, + {" [ -blank [0-60] ]\n", 1365}, + {" [ -dump [1-NR_CONSOLES] ]\n", 1366}, + {" [ -append [1-NR_CONSOLES] ]\n", 1367}, + {" [ -file dumpfilename ]\n", 1368}, + {" [ -msg [on|off] ]\n", 1369}, + {" [ -msglevel [0-8] ]\n", 1370}, + {" [ -powersave [on|vsync|hsync|powerdown|off] ]\n", 1371}, + {" [ -powerdown [0-60] ]\n", 1372}, + {" [ -blength [0-2000] ]\n", 1373}, + {" [ -bfreq freqnumber ]\n", 1374}, + {"cannot (un)set powersave mode\n", 1375}, + {"klogctl error: %s\n", 1376}, + {"Error reading %s\n", 1377}, + {"Error writing screendump\n", 1378}, + {"couldn't read %s, and cannot ioctl dump\n", 1379}, + {"%s: $TERM is not defined.\n", 1380}, + {"whereis [ -sbmu ] [ -SBM dir ... -f ] name...\n", 1381}, + {"write: can't find your tty's name\n", 1382}, + {"write: you have write permission turned off.\n", 1383}, + {"write: %s is not logged in on %s.\n", 1384}, + {"write: %s has messages disabled on %s\n", 1385}, + {"usage: write user [tty]\n", 1386}, + {"write: %s is not logged in\n", 1387}, + {"write: %s has messages disabled\n", 1388}, + {"write: %s is logged in more than once; writing to %s\n", 1389}, + {"Message from %s@%s (as %s) on %s at %s ...", 1390}, + {"Message from %s@%s on %s at %s ...", 1391}, + {"warning: error reading %s: %s", 1392}, + {"warning: can't open %s: %s", 1393}, + {"mount: could not open %s - using %s instead\n", 1394}, + {"can't create lock file %s: %s (use -n flag to override)", 1395}, + {"can't link lock file %s: %s (use -n flag to override)", 1396}, + {"can't open lock file %s: %s (use -n flag to override)", 1397}, + {"Can't lock lock file %s: %s\n", 1398}, + {"can't lock lock file %s: %s", 1399}, + {"timed out", 1400}, {"\ Cannot create link %s\n\ -Perhaps there is a stale lock file?\n", 1378}, - {"cannot open %s (%s) - mtab not updated", 1379}, - {"error writing %s: %s", 1380}, - {"error changing mode of %s: %s\n", 1381}, - {"can't rename %s to %s: %s\n", 1382}, - {"loop: can't open device %s: %s\n", 1383}, - {"loop: can't get info on device %s: %s\n", 1384}, - {"%s: [%04x]:%ld (%s) offset %d, %s encryption\n", 1385}, - {"mount: could not find any device /dev/loop#", 1386}, +Perhaps there is a stale lock file?\n", 1401}, + {"cannot open %s (%s) - mtab not updated", 1402}, + {"error writing %s: %s", 1403}, + {"error changing mode of %s: %s\n", 1404}, + {"can't rename %s to %s: %s\n", 1405}, + {"loop: can't open device %s: %s\n", 1406}, + {"loop: can't get info on device %s: %s\n", 1407}, + {"%s: [%04x]:%ld (%s) offset %d, %s encryption\n", 1408}, + {"mount: could not find any device /dev/loop#", 1409}, {"\ mount: Could not find any loop device.\n\ - Maybe /dev/loop# has a wrong major number?", 1387}, + Maybe /dev/loop# has a wrong major number?", 1410}, {"\ 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'.)", 1388}, + (If so, then recompile or `insmod loop.o'.)", 1411}, {"\ 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?", 1389}, - {"mount: could not find any free loop device", 1390}, - {"Unsupported encryption type %s\n", 1391}, - {"Couldn't lock into memory, exiting.\n", 1392}, - {"Init (up to 16 hex digits): ", 1393}, - {"Non-hex digit '%c'.\n", 1394}, - {"Don't know how to get key for encryption system %d\n", 1395}, - {"set_loop(%s,%s,%d): success\n", 1396}, - {"loop: can't delete device %s: %s\n", 1397}, - {"del_loop(%s): success\n", 1398}, - {"This mount was compiled without loop support. Please recompile.\n", 1399}, + maybe /dev/loop# has the wrong major number?", 1412}, + {"mount: could not find any free loop device", 1413}, + {"Unsupported encryption type %s\n", 1414}, + {"Couldn't lock into memory, exiting.\n", 1415}, + {"Init (up to 16 hex digits): ", 1416}, + {"Non-hex digit '%c'.\n", 1417}, + {"Don't know how to get key for encryption system %d\n", 1418}, + {"set_loop(%s,%s,%d): success\n", 1419}, + {"loop: can't delete device %s: %s\n", 1420}, + {"del_loop(%s): success\n", 1421}, + {"This mount was compiled without loop support. Please recompile.\n", 1422}, {"\ usage:\n\ %s loop_device # give info\n\ %s -d loop_device # delete\n\ - %s [ -e encryption ] [ -o offset ] loop_device file # setup\n", 1400}, - {"not enough memory", 1401}, - {"No loop support was available at compile time. Please recompile.\n", 1402}, - {"[mntent]: warning: no final newline at the end of %s\n", 1403}, - {"[mntent]: line %d in %s is bad%s\n", 1404}, - {"; rest of file ignored", 1405}, - {"mount: according to mtab, %s is already mounted on %s", 1406}, - {"mount: according to mtab, %s is mounted on %s", 1407}, - {"mount: can't open %s for writing: %s", 1408}, - {"mount: error writing %s: %s", 1409}, - {"mount: error changing mode of %s: %s", 1410}, - {"%s looks like swapspace - not mounted", 1411}, - {"mount failed", 1412}, - {"mount: only root can mount %s on %s", 1413}, - {"mount: loop device specified twice", 1414}, - {"mount: type specified twice", 1415}, - {"mount: skipping the setup of a loop device\n", 1416}, - {"mount: going to use the loop device %s\n", 1417}, - {"mount: failed setting up loop device\n", 1418}, - {"mount: setup loop device successfully\n", 1419}, - {"mount: can't open %s: %s", 1420}, - {"mount: cannot not open %s for setting speed", 1421}, - {"mount: cannot set speed: %s", 1422}, - {"mount: cannot fork: %s", 1423}, - {"mount: this version was compiled without support for the type `nfs'", 1424}, - {"mount: failed with nfs mount version 4, trying 3..\n", 1425}, - {"\ -mount: I could not determine the filesystem type, and none was specified", 1426}, - {"mount: you must specify the filesystem type", 1427}, - {"mount: mount failed", 1428}, - {"mount: mount point %s is not a directory", 1429}, - {"mount: permission denied", 1430}, - {"mount: must be superuser to use mount", 1431}, - {"mount: %s is busy", 1432}, - {"mount: proc already mounted", 1433}, - {"mount: %s already mounted or %s busy", 1434}, - {"mount: mount point %s does not exist", 1435}, - {"mount: mount point %s is a symbolic link to nowhere", 1436}, - {"mount: special device %s does not exist", 1437}, + %s [ -e encryption ] [ -o offset ] loop_device file # setup\n", 1423}, + {"not enough memory", 1424}, + {"No loop support was available at compile time. Please recompile.\n", 1425}, + {"[mntent]: warning: no final newline at the end of %s\n", 1426}, + {"[mntent]: line %d in %s is bad%s\n", 1427}, + {"; rest of file ignored", 1428}, + {"mount: according to mtab, %s is already mounted on %s", 1429}, + {"mount: according to mtab, %s is mounted on %s", 1430}, + {"mount: can't open %s for writing: %s", 1431}, + {"mount: error writing %s: %s", 1432}, + {"mount: error changing mode of %s: %s", 1433}, + {"%s looks like swapspace - not mounted", 1434}, + {"mount failed", 1435}, + {"mount: only root can mount %s on %s", 1436}, + {"mount: loop device specified twice", 1437}, + {"mount: type specified twice", 1438}, + {"mount: skipping the setup of a loop device\n", 1439}, + {"mount: going to use the loop device %s\n", 1440}, + {"mount: failed setting up loop device\n", 1441}, + {"mount: setup loop device successfully\n", 1442}, + {"mount: can't open %s: %s", 1443}, + {"mount: cannot not open %s for setting speed", 1444}, + {"mount: cannot set speed: %s", 1445}, + {"mount: cannot fork: %s", 1446}, + {"mount: this version was compiled without support for the type `nfs'", 1447}, + {"mount: failed with nfs mount version 4, trying 3..\n", 1448}, + {"\ +mount: I could not determine the filesystem type, and none was specified", 1449}, + {"mount: you must specify the filesystem type", 1450}, + {"mount: mount failed", 1451}, + {"mount: mount point %s is not a directory", 1452}, + {"mount: permission denied", 1453}, + {"mount: must be superuser to use mount", 1454}, + {"mount: %s is busy", 1455}, + {"mount: proc already mounted", 1456}, + {"mount: %s already mounted or %s busy", 1457}, + {"mount: mount point %s does not exist", 1458}, + {"mount: mount point %s is a symbolic link to nowhere", 1459}, + {"mount: special device %s does not exist", 1460}, {"\ mount: special device %s does not exist\n\ - (a path prefix is not a directory)\n", 1438}, - {"mount: %s not mounted already, or bad option", 1439}, + (a path prefix is not a directory)\n", 1461}, + {"mount: %s not mounted already, or bad option", 1462}, {"\ mount: wrong fs type, bad option, bad superblock on %s,\n\ - or too many mounted file systems", 1440}, - {"mount table full", 1441}, - {"mount: %s: can't read superblock", 1442}, - {"mount: %s: unknown device", 1443}, - {"mount: fs type %s not supported by kernel", 1444}, - {"mount: probably you meant %s", 1445}, - {"mount: maybe you meant iso9660 ?", 1446}, - {"mount: %s has wrong device number or fs type %s not supported", 1447}, - {"mount: %s is not a block device, and stat fails?", 1448}, + or too many mounted file systems", 1463}, + {"mount table full", 1464}, + {"mount: %s: can't read superblock", 1465}, + {"mount: %s: unknown device", 1466}, + {"mount: fs type %s not supported by kernel", 1467}, + {"mount: probably you meant %s", 1468}, + {"mount: maybe you meant iso9660 ?", 1469}, + {"mount: %s has wrong device number or fs type %s not supported", 1470}, + {"mount: %s is not a block device, and stat fails?", 1471}, {"\ mount: the kernel does not recognize %s as a block device\n\ - (maybe `insmod driver'?)", 1449}, - {"mount: %s is not a block device (maybe try `-o loop'?)", 1450}, - {"mount: %s is not a block device", 1451}, - {"mount: %s is not a valid block device", 1452}, - {"block device ", 1453}, - {"mount: cannot mount %s%s read-only", 1454}, - {"mount: %s%s is write-protected but explicit `-w' flag given", 1455}, - {"mount: %s%s is write-protected, mounting read-only", 1456}, - {"mount: going to mount %s by %s\n", 1457}, - {"UUID", 1458}, - {"label", 1459}, - {"mount: no such partition found", 1460}, - {"mount: no type was given - I'll assume nfs because of the colon\n", 1461}, - {"mount: backgrounding \"%s\"\n", 1462}, - {"mount: giving up \"%s\"\n", 1463}, - {"mount: %s already mounted on %s\n", 1464}, + (maybe `insmod driver'?)", 1472}, + {"mount: %s is not a block device (maybe try `-o loop'?)", 1473}, + {"mount: %s is not a block device", 1474}, + {"mount: %s is not a valid block device", 1475}, + {"block device ", 1476}, + {"mount: cannot mount %s%s read-only", 1477}, + {"mount: %s%s is write-protected but explicit `-w' flag given", 1478}, + {"mount: %s%s is write-protected, mounting read-only", 1479}, + {"mount: going to mount %s by %s\n", 1480}, + {"UUID", 1481}, + {"label", 1482}, + {"mount: no such partition found", 1483}, + {"mount: no type was given - I'll assume nfs because of the colon\n", 1484}, + {"mount: backgrounding \"%s\"\n", 1485}, + {"mount: giving up \"%s\"\n", 1486}, + {"mount: %s already mounted on %s\n", 1487}, {"\ Usage: mount -V : print version\n\ mount -h : print this help\n\ @@ -1911,386 +1936,380 @@ One can also mount an already visible directory tree elsewhere:\n\ mount --bind 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\ -Union or stack mounts are specified using one of\n\ - --replace, --after, --before, --over\n\ Other options: [-nfFrsvw] [-o options].\n\ -For many more details, say man 8 mount .\n", 1465}, - {"mount: only root can do that", 1466}, - {"mount: no %s found - creating it..\n", 1467}, - {"mount: mounting %s\n", 1468}, - {"not mounted anything", 1469}, - {"mount: cannot find %s in %s", 1470}, - {"mount: can't find %s in %s or %s", 1471}, - {"\ -mount: could not open %s, so UUID and LABEL conversion cannot be done.\n", 1472}, - {"mount: bad UUID", 1473}, - {"mount: you didn't specify a filesystem type for %s\n", 1474}, - {" I will try all types mentioned in %s or %s\n", 1475}, - {" and it looks like this is swapspace\n", 1476}, - {" I will try type %s\n", 1477}, - {"Trying %s\n", 1478}, - {"mount: excessively long host:dir argument\n", 1479}, - {"mount: warning: multiple hostnames not supported\n", 1480}, - {"mount: directory to mount not in host:dir format\n", 1481}, - {"mount: can't get address for %s\n", 1482}, - {"mount: got bad hp->h_length\n", 1483}, - {"mount: excessively long option argument\n", 1484}, - {"Warning: Unrecognized proto= option.\n", 1485}, - {"Warning: Option namlen is not supported.\n", 1486}, - {"unknown nfs mount parameter: %s=%d\n", 1487}, - {"Warning: option nolock is not supported.\n", 1488}, - {"unknown nfs mount option: %s%s\n", 1489}, - {"mount: got bad hp->h_length?\n", 1490}, - {"NFS over TCP is not supported.\n", 1491}, - {"nfs socket", 1492}, - {"nfs bindresvport", 1493}, - {"used portmapper to find NFS port\n", 1494}, - {"using port %d for nfs deamon\n", 1495}, - {"nfs connect", 1496}, - {"unknown nfs status return value: %d", 1497}, - {"bug in xstrndup call", 1498}, +For many more details, say man 8 mount .\n", 1488}, + {"mount: only root can do that", 1489}, + {"mount: no %s found - creating it..\n", 1490}, + {"mount: mounting %s\n", 1491}, + {"not mounted anything", 1492}, + {"mount: cannot find %s in %s", 1493}, + {"mount: can't find %s in %s or %s", 1494}, + {"\ +mount: could not open %s, so UUID and LABEL conversion cannot be done.\n", 1495}, + {"mount: bad UUID", 1496}, + {"mount: you didn't specify a filesystem type for %s\n", 1497}, + {" I will try all types mentioned in %s or %s\n", 1498}, + {" and it looks like this is swapspace\n", 1499}, + {" I will try type %s\n", 1500}, + {"Trying %s\n", 1501}, + {"mount: excessively long host:dir argument\n", 1502}, + {"mount: warning: multiple hostnames not supported\n", 1503}, + {"mount: directory to mount not in host:dir format\n", 1504}, + {"mount: can't get address for %s\n", 1505}, + {"mount: got bad hp->h_length\n", 1506}, + {"mount: excessively long option argument\n", 1507}, + {"Warning: Unrecognized proto= option.\n", 1508}, + {"Warning: Option namlen is not supported.\n", 1509}, + {"unknown nfs mount parameter: %s=%d\n", 1510}, + {"Warning: option nolock is not supported.\n", 1511}, + {"unknown nfs mount option: %s%s\n", 1512}, + {"mount: got bad hp->h_length?\n", 1513}, + {"NFS over TCP is not supported.\n", 1514}, + {"nfs socket", 1515}, + {"nfs bindresvport", 1516}, + {"used portmapper to find NFS port\n", 1517}, + {"using port %d for nfs deamon\n", 1518}, + {"nfs connect", 1519}, + {"unknown nfs status return value: %d", 1520}, + {"bug in xstrndup call", 1521}, {"\ usage: %s [-hV]\n\ %s -a [-v]\n\ %s [-v] [-p priority] special ...\n\ - %s [-s]\n", 1499}, - {"%s on %s\n", 1500}, - {"swapon: cannot stat %s: %s\n", 1501}, - {"swapon: warning: %s has insecure permissions %04o, 0600 suggested\n", 1502}, - {"swapon: Skipping file %s - it appears to have holes.\n", 1503}, - {"%s: cannot open %s: %s\n", 1504}, - {"umount: compiled without support for -f\n", 1505}, - {"host: %s, directory: %s\n", 1506}, - {"umount: can't get address for %s\n", 1507}, - {"umount: got bad hostp->h_length\n", 1508}, - {"umount: %s: invalid block device", 1509}, - {"umount: %s: not mounted", 1510}, - {"umount: %s: can't write superblock", 1511}, - {"umount: %s: device is busy", 1512}, - {"umount: %s: not found", 1513}, - {"umount: %s: must be superuser to umount", 1514}, - {"umount: %s: block devices not permitted on fs", 1515}, - {"umount: %s: %s", 1516}, - {"no umount2, trying umount...\n", 1517}, - {"could not umount %s - trying %s instead\n", 1518}, - {"umount: %s busy - remounted read-only\n", 1519}, - {"umount: could not remount %s read-only\n", 1520}, - {"%s umounted\n", 1521}, - {"umount: cannot find list of filesystems to unmount", 1522}, + %s [-s]\n", 1522}, + {"%s on %s\n", 1523}, + {"swapon: cannot stat %s: %s\n", 1524}, + {"swapon: warning: %s has insecure permissions %04o, 0600 suggested\n", 1525}, + {"swapon: Skipping file %s - it appears to have holes.\n", 1526}, + {"%s: cannot open %s: %s\n", 1527}, + {"umount: compiled without support for -f\n", 1528}, + {"host: %s, directory: %s\n", 1529}, + {"umount: can't get address for %s\n", 1530}, + {"umount: got bad hostp->h_length\n", 1531}, + {"umount: %s: invalid block device", 1532}, + {"umount: %s: not mounted", 1533}, + {"umount: %s: can't write superblock", 1534}, + {"umount: %s: device is busy", 1535}, + {"umount: %s: not found", 1536}, + {"umount: %s: must be superuser to umount", 1537}, + {"umount: %s: block devices not permitted on fs", 1538}, + {"umount: %s: %s", 1539}, + {"no umount2, trying umount...\n", 1540}, + {"could not umount %s - trying %s instead\n", 1541}, + {"umount: %s busy - remounted read-only\n", 1542}, + {"umount: could not remount %s read-only\n", 1543}, + {"%s umounted\n", 1544}, + {"umount: cannot find list of filesystems to unmount", 1545}, {"\ Usage: umount [-hV]\n\ umount -a [-f] [-r] [-n] [-v] [-t vfstypes]\n\ - umount [-f] [-r] [-n] [-v] special | node...\n", 1523}, - {"umount: only root can do that", 1524}, - {"Trying to umount %s\n", 1525}, - {"Could not find %s in mtab\n", 1526}, - {"umount: %s is not mounted (according to mtab)", 1527}, - {"umount: it seems %s is mounted multiple times", 1528}, - {"umount: %s is not in the fstab (and you are not root)", 1529}, - {"umount: %s mount disagrees with the fstab", 1530}, - {"umount: only root can unmount %s from %s", 1531}, - {"umount: only %s can unmount %s from %s", 1532}, - {"You must be root to set the Ctrl-Alt-Del behaviour.\n", 1533}, - {"Usage: ctrlaltdel hard|soft\n", 1534}, + umount [-f] [-r] [-n] [-v] special | node...\n", 1546}, + {"umount: only root can do that", 1547}, + {"Trying to umount %s\n", 1548}, + {"Could not find %s in mtab\n", 1549}, + {"umount: %s is not mounted (according to mtab)", 1550}, + {"umount: it seems %s is mounted multiple times", 1551}, + {"umount: %s is not in the fstab (and you are not root)", 1552}, + {"umount: %s mount disagrees with the fstab", 1553}, + {"umount: only root can unmount %s from %s", 1554}, + {"umount: only %s can unmount %s from %s", 1555}, + {"You must be root to set the Ctrl-Alt-Del behaviour.\n", 1556}, + {"Usage: ctrlaltdel hard|soft\n", 1557}, {"\ File %s, For threshold value %lu, Maximum characters in fifo were %d,\n\ -and the maximum transfer rate in characters/second was %f\n", 1535}, +and the maximum transfer rate in characters/second was %f\n", 1558}, {"\ 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", 1536}, - {"Invalid interval value: %s\n", 1537}, - {"Invalid set value: %s\n", 1538}, - {"Invalid default value: %s\n", 1539}, - {"Invalid set time value: %s\n", 1540}, - {"Invalid default time value: %s\n", 1541}, +and the maximum transfer rate in characters/second was %f\n", 1559}, + {"Invalid interval value: %s\n", 1560}, + {"Invalid set value: %s\n", 1561}, + {"Invalid default value: %s\n", 1562}, + {"Invalid set time value: %s\n", 1563}, + {"Invalid default time value: %s\n", 1564}, {"\ Usage: %s [-q [-i interval]] ([-s value]|[-S value]) ([-t value]|[-T value]) \ -[-g|-G] file [file...]\n", 1542}, - {"Can't open %s: %s\n", 1543}, - {"Can't set %s to threshold %d: %s\n", 1544}, - {"Can't set %s to time threshold %d: %s\n", 1545}, - {"Can't get threshold for %s: %s\n", 1546}, - {"Can't get timeout for %s: %s\n", 1547}, - {"%s: %ld %s threshold and %ld %s timeout\n", 1548}, - {"current", 1549}, - {"default", 1550}, - {"Can't set signal handler", 1551}, - {"gettimeofday failed", 1552}, - {"Can't issue CYGETMON on %s: %s\n", 1553}, - {"%s: %lu ints, %lu/%lu chars; ", 1554}, - {"fifo: %lu thresh, %lu tmout, ", 1555}, - {"%lu max, %lu now\n", 1556}, - {" %f int/sec; %f rec, %f send (char/sec)\n", 1557}, - {"\ -%s: %lu ints, %lu chars; fifo: %lu thresh, %lu tmout, %lu max, %lu now\n", 1558}, - {" %f int/sec; %f rec (char/sec)\n", 1559}, - {"Usage: %s [-c] [-n level] [-s bufsize]\n", 1560}, - {"invalid id: %s\n", 1561}, - {"cannot remove id %s (%s)\n", 1562}, - {"usage: %s {shm | msg | sem} id ...\n", 1563}, - {"unknown resource type: %s\n", 1564}, - {"resource(s) deleted\n", 1565}, - {"usage : %s -asmq -tclup \n", 1566}, - {"\t%s [-s -m -q] -i id\n", 1567}, - {"\t%s -h for help.\n", 1568}, - {"%s provides information on ipc facilities for", 1569}, - {" which you have read access.\n", 1570}, +[-g|-G] file [file...]\n", 1565}, + {"Can't open %s: %s\n", 1566}, + {"Can't set %s to threshold %d: %s\n", 1567}, + {"Can't set %s to time threshold %d: %s\n", 1568}, + {"Can't get threshold for %s: %s\n", 1569}, + {"Can't get timeout for %s: %s\n", 1570}, + {"%s: %ld %s threshold and %ld %s timeout\n", 1571}, + {"current", 1572}, + {"default", 1573}, + {"Can't set signal handler", 1574}, + {"gettimeofday failed", 1575}, + {"Can't issue CYGETMON on %s: %s\n", 1576}, + {"%s: %lu ints, %lu/%lu chars; ", 1577}, + {"fifo: %lu thresh, %lu tmout, ", 1578}, + {"%lu max, %lu now\n", 1579}, + {" %f int/sec; %f rec, %f send (char/sec)\n", 1580}, + {"\ +%s: %lu ints, %lu chars; fifo: %lu thresh, %lu tmout, %lu max, %lu now\n", 1581}, + {" %f int/sec; %f rec (char/sec)\n", 1582}, + {"Usage: %s [-c] [-n level] [-s bufsize]\n", 1583}, + {"invalid id: %s\n", 1584}, + {"cannot remove id %s (%s)\n", 1585}, + {"usage: %s {shm | msg | sem} id ...\n", 1586}, + {"unknown resource type: %s\n", 1587}, + {"resource(s) deleted\n", 1588}, + {"usage : %s -asmq -tclup \n", 1589}, + {"\t%s [-s -m -q] -i id\n", 1590}, + {"\t%s -h for help.\n", 1591}, + {"%s provides information on ipc facilities for", 1592}, + {" which you have read access.\n", 1593}, {"\ Resource Specification:\n\ \t-m : shared_mem\n\ -\t-q : messages\n", 1571}, +\t-q : messages\n", 1594}, {"\ \t-s : semaphores\n\ -\t-a : all (default)\n", 1572}, +\t-a : all (default)\n", 1595}, {"\ Output Format:\n\ \t-t : time\n\ \t-p : pid\n\ -\t-c : creator\n", 1573}, +\t-c : creator\n", 1596}, {"\ \t-l : limits\n\ -\t-u : summary\n", 1574}, - {"-i id [-s -q -m] : details on resource identified by id\n", 1575}, - {"kernel not configured for shared memory\n", 1576}, - {"------ Shared Memory Limits --------\n", 1577}, - {"max number of segments = %ld\n", 1578}, - {"max seg size (kbytes) = %ld\n", 1579}, - {"max total shared memory (kbytes) = %ld\n", 1580}, - {"min seg size (bytes) = %ld\n", 1581}, - {"------ Shared Memory Status --------\n", 1582}, - {"segments allocated %d\n", 1583}, - {"pages allocated %ld\n", 1584}, - {"pages resident %ld\n", 1585}, - {"pages swapped %ld\n", 1586}, - {"Swap performance: %ld attempts\t %ld successes\n", 1587}, - {"------ Shared Memory Segment Creators/Owners --------\n", 1588}, - {"%-10s%-10s%-10s%-10s%-10s%-10s\n", 1589}, - {"shmid", 1590}, - {"perms", 1591}, - {"cuid", 1592}, - {"cgid", 1593}, - {"uid", 1594}, - {"gid", 1595}, - {"------ Shared Memory Attach/Detach/Change Times --------\n", 1596}, - {"%-10s%-10s %-20s%-20s%-20s\n", 1597}, - {"owner", 1598}, - {"attached", 1599}, - {"detached", 1600}, - {"changed", 1601}, - {"------ Shared Memory Creator/Last-op --------\n", 1602}, - {"%-10s%-10s%-10s%-10s\n", 1603}, - {"cpid", 1604}, - {"lpid", 1605}, - {"------ Shared Memory Segments --------\n", 1606}, - {"%-10s%-10s%-10s%-10s%-10s%-10s%-12s\n", 1607}, - {"key", 1608}, - {"bytes", 1609}, - {"nattch", 1610}, - {"status", 1611}, - {"Not set", 1612}, - {"dest", 1613}, - {"locked", 1614}, - {"kernel not configured for semaphores\n", 1615}, - {"------ Semaphore Limits --------\n", 1616}, - {"max number of arrays = %d\n", 1617}, - {"max semaphores per array = %d\n", 1618}, - {"max semaphores system wide = %d\n", 1619}, - {"max ops per semop call = %d\n", 1620}, - {"semaphore max value = %d\n", 1621}, - {"------ Semaphore Status --------\n", 1622}, - {"used arrays = %d\n", 1623}, - {"allocated semaphores = %d\n", 1624}, - {"------ Semaphore Arrays Creators/Owners --------\n", 1625}, - {"semid", 1626}, - {"------ Shared Memory Operation/Change Times --------\n", 1627}, - {"%-8s%-10s %-26.24s %-26.24s\n", 1628}, - {"last-op", 1629}, - {"last-changed", 1630}, - {"------ Semaphore Arrays --------\n", 1631}, - {"%-10s%-10s%-10s%-10s%-10s%-12s\n", 1632}, - {"nsems", 1633}, - {"------ Messages: Limits --------\n", 1634}, - {"max queues system wide = %d\n", 1635}, - {"max size of message (bytes) = %d\n", 1636}, - {"default max size of queue (bytes) = %d\n", 1637}, - {"------ Messages: Status --------\n", 1638}, - {"allocated queues = %d\n", 1639}, - {"used headers = %d\n", 1640}, - {"used space = %d bytes\n", 1641}, - {"------ Message Queues: Creators/Owners --------\n", 1642}, - {"msqid", 1643}, - {"------ Message Queues Send/Recv/Change Times --------\n", 1644}, - {"%-8s%-10s %-20s%-20s%-20s\n", 1645}, - {"send", 1646}, - {"recv", 1647}, - {"change", 1648}, - {"------ Message Queues PIDs --------\n", 1649}, - {"lspid", 1650}, - {"lrpid", 1651}, - {"------ Message Queues --------\n", 1652}, - {"%-10s%-10s%-10s%-10s%-12s%-12s\n", 1653}, - {"used-bytes", 1654}, - {"messages", 1655}, +\t-u : summary\n", 1597}, + {"-i id [-s -q -m] : details on resource identified by id\n", 1598}, + {"kernel not configured for shared memory\n", 1599}, + {"------ Shared Memory Limits --------\n", 1600}, + {"max number of segments = %ld\n", 1601}, + {"max seg size (kbytes) = %ld\n", 1602}, + {"max total shared memory (kbytes) = %ld\n", 1603}, + {"min seg size (bytes) = %ld\n", 1604}, + {"------ Shared Memory Status --------\n", 1605}, + {"segments allocated %d\n", 1606}, + {"pages allocated %ld\n", 1607}, + {"pages resident %ld\n", 1608}, + {"pages swapped %ld\n", 1609}, + {"Swap performance: %ld attempts\t %ld successes\n", 1610}, + {"------ Shared Memory Segment Creators/Owners --------\n", 1611}, + {"%-10s%-10s%-10s%-10s%-10s%-10s\n", 1612}, + {"shmid", 1613}, + {"perms", 1614}, + {"cuid", 1615}, + {"cgid", 1616}, + {"uid", 1617}, + {"gid", 1618}, + {"------ Shared Memory Attach/Detach/Change Times --------\n", 1619}, + {"%-10s%-10s %-20s%-20s%-20s\n", 1620}, + {"owner", 1621}, + {"attached", 1622}, + {"detached", 1623}, + {"changed", 1624}, + {"------ Shared Memory Creator/Last-op --------\n", 1625}, + {"%-10s%-10s%-10s%-10s\n", 1626}, + {"cpid", 1627}, + {"lpid", 1628}, + {"------ Shared Memory Segments --------\n", 1629}, + {"%-10s%-10s%-10s%-10s%-10s%-10s%-12s\n", 1630}, + {"key", 1631}, + {"bytes", 1632}, + {"nattch", 1633}, + {"status", 1634}, + {"Not set\n", 1635}, + {"dest", 1636}, + {"locked", 1637}, + {"kernel not configured for semaphores\n", 1638}, + {"------ Semaphore Limits --------\n", 1639}, + {"max number of arrays = %d\n", 1640}, + {"max semaphores per array = %d\n", 1641}, + {"max semaphores system wide = %d\n", 1642}, + {"max ops per semop call = %d\n", 1643}, + {"semaphore max value = %d\n", 1644}, + {"------ Semaphore Status --------\n", 1645}, + {"used arrays = %d\n", 1646}, + {"allocated semaphores = %d\n", 1647}, + {"------ Semaphore Arrays Creators/Owners --------\n", 1648}, + {"semid", 1649}, + {"------ Shared Memory Operation/Change Times --------\n", 1650}, + {"%-8s%-10s %-26.24s %-26.24s\n", 1651}, + {"last-op", 1652}, + {"last-changed", 1653}, + {"------ Semaphore Arrays --------\n", 1654}, + {"%-10s%-10s%-10s%-10s%-10s%-12s\n", 1655}, + {"nsems", 1656}, + {"------ Messages: Limits --------\n", 1657}, + {"max queues system wide = %d\n", 1658}, + {"max size of message (bytes) = %d\n", 1659}, + {"default max size of queue (bytes) = %d\n", 1660}, + {"------ Messages: Status --------\n", 1661}, + {"allocated queues = %d\n", 1662}, + {"used headers = %d\n", 1663}, + {"used space = %d bytes\n", 1664}, + {"------ Message Queues: Creators/Owners --------\n", 1665}, + {"msqid", 1666}, + {"------ Message Queues Send/Recv/Change Times --------\n", 1667}, + {"%-8s%-10s %-20s%-20s%-20s\n", 1668}, + {"send", 1669}, + {"recv", 1670}, + {"change", 1671}, + {"------ Message Queues PIDs --------\n", 1672}, + {"lspid", 1673}, + {"lrpid", 1674}, + {"------ Message Queues --------\n", 1675}, + {"%-10s%-10s%-10s%-10s%-12s%-12s\n", 1676}, + {"used-bytes", 1677}, + {"messages", 1678}, {"\ \n\ -Shared memory Segment shmid=%d\n", 1656}, - {"uid=%d\tgid=%d\tcuid=%d\tcgid=%d\n", 1657}, - {"mode=%#o\taccess_perms=%#o\n", 1658}, - {"bytes=%d\tlpid=%d\tcpid=%d\tnattch=%ld\n", 1659}, - {"att_time=%s", 1660}, - {"Not set\n", 1661}, - {"det_time=%s", 1662}, - {"change_time=%s", 1663}, +Shared memory Segment shmid=%d\n", 1679}, + {"uid=%d\tgid=%d\tcuid=%d\tcgid=%d\n", 1680}, + {"mode=%#o\taccess_perms=%#o\n", 1681}, + {"bytes=%d\tlpid=%d\tcpid=%d\tnattch=%ld\n", 1682}, + {"att_time=%s", 1683}, + {"det_time=%s", 1684}, + {"change_time=%s", 1685}, {"\ \n\ -Message Queue msqid=%d\n", 1664}, - {"uid=%d\tgid=%d\tcuid=%d\tcgid=%d\tmode=%#o\n", 1665}, - {"cbytes=%ld\tqbytes=%ld\tqnum=%ld\tlspid=%d\tlrpid=%d\n", 1666}, - {"send_time=%srcv_time=%schange_time=%s", 1667}, - {"Not Set\n", 1668}, +Message Queue msqid=%d\n", 1686}, + {"uid=%d\tgid=%d\tcuid=%d\tcgid=%d\tmode=%#o\n", 1687}, + {"cbytes=%ld\tqbytes=%ld\tqnum=%ld\tlspid=%d\tlrpid=%d\n", 1688}, + {"send_time=%s", 1689}, + {"rcv_time=%s", 1690}, {"\ \n\ -Semaphore Array semid=%d\n", 1669}, - {"uid=%d\t gid=%d\t cuid=%d\t cgid=%d\n", 1670}, - {"mode=%#o, access_perms=%#o\n", 1671}, - {"nsems = %ld\n", 1672}, - {"otime = %s", 1673}, - {"ctime = %s", 1674}, - {"%-10s%-10s%-10s%-10s%-10s\n", 1675}, - {"semnum", 1676}, - {"value", 1677}, - {"ncount", 1678}, - {"zcount", 1679}, - {"pid", 1680}, - {"usage: rdev [ -rsv ] [ -o OFFSET ] [ IMAGE [ VALUE [ OFFSET ] ] ]", 1681}, - {"\ - rdev /dev/fd0 (or rdev /linux, etc.) displays the current ROOT device", 1682}, - {" rdev /dev/fd0 /dev/hda2 sets ROOT to /dev/hda2", 1683}, - {" rdev -R /dev/fd0 1 set the ROOTFLAGS (readonly status)", 1684}, - {" rdev -s /dev/fd0 /dev/hda2 set the SWAP device", 1685}, - {" rdev -r /dev/fd0 627 set the RAMDISK size", 1686}, - {" rdev -v /dev/fd0 1 set the bootup VIDEOMODE", 1687}, - {" rdev -o N ... use the byte offset N", 1688}, - {" rootflags ... same as rdev -R", 1689}, - {" swapdev ... same as rdev -s", 1690}, - {" ramsize ... same as rdev -r", 1691}, - {" vidmode ... same as rdev -v", 1692}, - {"\ -Note: video modes are: -3=Ask, -2=Extended, -1=NormalVga, 1=key1, 2=key2,...", 1693}, - {" use -R 1 to mount root readonly, -R 0 for read/write.", 1694}, +Semaphore Array semid=%d\n", 1691}, + {"uid=%d\t gid=%d\t cuid=%d\t cgid=%d\n", 1692}, + {"mode=%#o, access_perms=%#o\n", 1693}, + {"nsems = %ld\n", 1694}, + {"otime = %s", 1695}, + {"ctime = %s", 1696}, + {"%-10s%-10s%-10s%-10s%-10s\n", 1697}, + {"semnum", 1698}, + {"value", 1699}, + {"ncount", 1700}, + {"zcount", 1701}, + {"pid", 1702}, + {"usage: rdev [ -rsv ] [ -o OFFSET ] [ IMAGE [ VALUE [ OFFSET ] ] ]", 1703}, + {"\ + rdev /dev/fd0 (or rdev /linux, etc.) displays the current ROOT device", 1704}, + {" rdev /dev/fd0 /dev/hda2 sets ROOT to /dev/hda2", 1705}, + {" rdev -R /dev/fd0 1 set the ROOTFLAGS (readonly status)", 1706}, + {" rdev -s /dev/fd0 /dev/hda2 set the SWAP device", 1707}, + {" rdev -r /dev/fd0 627 set the RAMDISK size", 1708}, + {" rdev -v /dev/fd0 1 set the bootup VIDEOMODE", 1709}, + {" rdev -o N ... use the byte offset N", 1710}, + {" rootflags ... same as rdev -R", 1711}, + {" swapdev ... same as rdev -s", 1712}, + {" ramsize ... same as rdev -r", 1713}, + {" vidmode ... same as rdev -v", 1714}, + {"\ +Note: video modes are: -3=Ask, -2=Extended, -1=NormalVga, 1=key1, 2=key2,...", 1715}, + {" use -R 1 to mount root readonly, -R 0 for read/write.", 1716}, {"\ %s: Usage: \"%s [options]\n\ \t -m <mapfile> (default = \"%s\")\n\ \t -p <pro-file> (default = \"%s\")\n\ +\t -M <mult> set the profiling multiplier to <mult>\n\ \t -i print only info about the sampling step\n\ \t -v print verbose data\n\ \t -a print all symbols, even if count is 0\n\ \t -r reset all the counters (root only)\n\ -\t -V print version and exit\n", 1695}, - {"%s Version %s\n", 1696}, - {"anything\n", 1697}, - {"Sampling_step: %i\n", 1698}, - {"%s: %s(%i): wrong map line\n", 1699}, - {"%s: can't find \"_stext\" in %s\n", 1700}, - {"total", 1701}, - {"\ -usage: renice priority [ [ -p ] pids ] [ [ -g ] pgrps ] [ [ -u ] users ]\n", 1702}, - {"renice: %s: unknown user\n", 1703}, - {"renice: %s: bad value\n", 1704}, - {"getpriority", 1705}, - {"setpriority", 1706}, - {"%d: old priority %d, new priority %d\n", 1707}, - {"usage: %s program [arg ...]\n", 1708}, +\t -V print version and exit\n", 1717}, + {"%s Version %s\n", 1718}, + {"Sampling_step: %i\n", 1719}, + {"%s: %s(%i): wrong map line\n", 1720}, + {"%s: can't find \"_stext\" in %s\n", 1721}, + {"total", 1722}, + {"\ +usage: renice priority [ [ -p ] pids ] [ [ -g ] pgrps ] [ [ -u ] users ]\n", 1723}, + {"renice: %s: unknown user\n", 1724}, + {"renice: %s: bad value\n", 1725}, + {"getpriority", 1726}, + {"setpriority", 1727}, + {"%d: old priority %d, new priority %d\n", 1728}, + {"usage: %s program [arg ...]\n", 1729}, {"\ Usage: %s <device> [ -i <IRQ> | -t <TIME> | -c <CHARS> | -w <WAIT> | \n\ -a [on|off] | -o [on|off] | -C [on|off] | -q [on|off] | -s | \n\ - -T [on|off] ]\n", 1709}, - {"malloc error", 1710}, - {"%s: bad value\n", 1711}, - {"%s: %s not an lp device.\n", 1712}, - {"%s status is %d", 1713}, - {", busy", 1714}, - {", ready", 1715}, - {", out of paper", 1716}, - {", on-line", 1717}, - {", error", 1718}, - {"LPGETIRQ error", 1719}, - {"%s using IRQ %d\n", 1720}, - {"%s using polling\n", 1721}, - {"col: bad -l argument %s.\n", 1722}, - {"usage: col [-bfpx] [-l nline]\n", 1723}, - {"col: write error.\n", 1724}, - {"col: warning: can't back up %s.\n", 1725}, - {"past first line", 1726}, - {"-- line already flushed", 1727}, - {"usage: %s [ - ] [ -2 ] [ file ... ]\n", 1728}, - {"line too long", 1729}, - {"usage: column [-tx] [-c columns] [file ...]\n", 1730}, - {"hexdump: bad length value.\n", 1731}, - {"hexdump: bad skip value.\n", 1732}, - {"\ -hexdump: [-bcdovx] [-e fmt] [-f fmt_file] [-n length] [-s skip] [file ...]\n", 1733}, - {"usage: %s [-dflpcsu] [+linenum | +/pattern] name1 name2 ...\n", 1734}, + -T [on|off] ]\n", 1730}, + {"malloc error", 1731}, + {"%s: bad value\n", 1732}, + {"%s: %s not an lp device.\n", 1733}, + {"%s status is %d", 1734}, + {", busy", 1735}, + {", ready", 1736}, + {", out of paper", 1737}, + {", on-line", 1738}, + {", error", 1739}, + {"LPGETIRQ error", 1740}, + {"%s using IRQ %d\n", 1741}, + {"%s using polling\n", 1742}, + {"col: bad -l argument %s.\n", 1743}, + {"usage: col [-bfpx] [-l nline]\n", 1744}, + {"col: write error.\n", 1745}, + {"col: warning: can't back up %s.\n", 1746}, + {"past first line", 1747}, + {"-- line already flushed", 1748}, + {"usage: %s [ - ] [ -2 ] [ file ... ]\n", 1749}, + {"line too long", 1750}, + {"usage: column [-tx] [-c columns] [file ...]\n", 1751}, + {"hexdump: bad length value.\n", 1752}, + {"hexdump: bad skip value.\n", 1753}, + {"\ +hexdump: [-bcdovx] [-e fmt] [-f fmt_file] [-n length] [-s skip] [file ...]\n", 1754}, + {"usage: %s [-dflpcsu] [+linenum | +/pattern] name1 name2 ...\n", 1755}, {"\ \n\ *** %s: directory ***\n\ -\n", 1735}, +\n", 1756}, {"\ \n\ ******** %s: Not a text file ********\n\ -\n", 1736}, - {"[Use q or Q to quit]", 1737}, - {"--More--", 1738}, - {"(Next file: %s)", 1739}, - {"[Press space to continue, 'q' to quit.]", 1740}, - {"...back %d page", 1741}, - {"...skipping %d line", 1742}, +\n", 1757}, + {"[Use q or Q to quit]", 1758}, + {"--More--", 1759}, + {"(Next file: %s)", 1760}, + {"[Press space to continue, 'q' to quit.]", 1761}, + {"...back %d page", 1762}, + {"...skipping %d line", 1763}, {"\ \n\ ***Back***\n\ -\n", 1743}, - {"Can't open help file", 1744}, - {"[Press 'h' for instructions.]", 1745}, - {"\"%s\" line %d", 1746}, - {"[Not a file] line %d", 1747}, - {" Overflow\n", 1748}, - {"...skipping\n", 1749}, - {"Regular expression botch", 1750}, +\n", 1764}, + {"Can't open help file", 1765}, + {"[Press 'h' for instructions.]", 1766}, + {"\"%s\" line %d", 1767}, + {"[Not a file] line %d", 1768}, + {" Overflow\n", 1769}, + {"...skipping\n", 1770}, + {"Regular expression botch", 1771}, {"\ \n\ -Pattern not found\n", 1751}, - {"Pattern not found", 1752}, - {"can't fork\n", 1753}, +Pattern not found\n", 1772}, + {"Pattern not found", 1773}, + {"can't fork\n", 1774}, {"\ \n\ -...Skipping ", 1754}, - {"...Skipping ", 1755}, - {"to file ", 1756}, - {"back to file ", 1757}, - {"Line too long", 1758}, - {"No previous command to substitute for", 1759}, - {"od: od(1) has been deprecated for hexdump(1).\n", 1760}, - {"od: hexdump(1) compatibility doesn't support the -%c option%s\n", 1761}, - {"; see strings(1).", 1762}, - {"hexdump: can't read %s.\n", 1763}, - {"hexdump: line too long.\n", 1764}, - {"hexdump: byte count with multiple conversion characters.\n", 1765}, - {"hexdump: bad byte count for conversion character %s.\n", 1766}, - {"hexdump: %%s requires a precision or a byte count.\n", 1767}, - {"hexdump: bad format {%s}\n", 1768}, - {"hexdump: bad conversion character %%%s.\n", 1769}, - {"Unable to allocate bufferspace\n", 1770}, - {"usage: rev [file ...]\n", 1771}, - {"usage: %s [ -i ] [ -tTerm ] file...\n", 1772}, - {"trouble reading terminfo", 1773}, - {"Unknown escape sequence in input: %o, %o\n", 1774}, - {"Unable to allocate buffer.\n", 1775}, - {"Input line too long.\n", 1776}, - {"Out of memory when growing buffer.\n", 1777}, - {"Typematic Rate set to %.1f cps (delay = %d ms)\n", 1778}, - {"Usage: kbdrate [-V] [-s] [-r rate] [-d delay]\n", 1779}, - {"Cannot open /dev/port", 1780}, +...Skipping ", 1775}, + {"...Skipping ", 1776}, + {"to file ", 1777}, + {"back to file ", 1778}, + {"Line too long", 1779}, + {"No previous command to substitute for", 1780}, + {"od: od(1) has been deprecated for hexdump(1).\n", 1781}, + {"od: hexdump(1) compatibility doesn't support the -%c option%s\n", 1782}, + {"; see strings(1).", 1783}, + {"hexdump: can't read %s.\n", 1784}, + {"hexdump: line too long.\n", 1785}, + {"hexdump: byte count with multiple conversion characters.\n", 1786}, + {"hexdump: bad byte count for conversion character %s.\n", 1787}, + {"hexdump: %%s requires a precision or a byte count.\n", 1788}, + {"hexdump: bad format {%s}\n", 1789}, + {"hexdump: bad conversion character %%%s.\n", 1790}, + {"Unable to allocate bufferspace\n", 1791}, + {"usage: rev [file ...]\n", 1792}, + {"usage: %s [ -i ] [ -tTerm ] file...\n", 1793}, + {"trouble reading terminfo", 1794}, + {"Unknown escape sequence in input: %o, %o\n", 1795}, + {"Unable to allocate buffer.\n", 1796}, + {"Input line too long.\n", 1797}, + {"Out of memory when growing buffer.\n", 1798}, }; -int _msg_tbl_length = 1780; +int _msg_tbl_length = 1798; @@ -40,7 +40,7 @@ msgid "Cannot open /dev/port: %s" msgstr "/dev/port nelze otevøít: %s" #: clock/cmos.c:577 -msgid "I failed to get permission because I didnt try.\n" +msgid "I failed to get permission because I didn't try.\n" msgstr "Jeliko¾ jsem se nesna¾il, nepodaøilo se mi získat práva pro pøístup.\n" #: clock/cmos.c:580 @@ -6770,22 +6770,6 @@ msgstr "nelze èíst %s a nelze provést dump pomocí volání ioctl\n" msgid "%s: $TERM is not defined.\n" msgstr "%s: promìnná TERM není nastavena.\n" -#: misc-utils/tsort.c:117 -msgid "usage: tsort [ inputfile ]\n" -msgstr "Pou¾ití: tsort [ soubor ]\n" - -#: misc-utils/tsort.c:154 -msgid "tsort: odd data count.\n" -msgstr "tsort: lichý poèet uzlù\n" - -#: misc-utils/tsort.c:305 -msgid "tsort: cycle in data.\n" -msgstr "tsort: smyèka v datech.\n" - -#: misc-utils/tsort.c:318 -msgid "tsort: internal error -- could not find cycle.\n" -msgstr "tsort: vnitøní chyba -- smyèku nelze najít.\n" - #: misc-utils/whereis.c:155 msgid "whereis [ -sbmu ] [ -SBM dir ... -f ] name...\n" msgstr "whereis [ -sbmu ] [ -SBM adresáø ... -f ] jméno...\n" @@ -7,654 +7,14 @@ msgid "" msgstr "" "Project-Id-Version: util-linux 2.10r\n" -"POT-Creation-Date: 2001-01-21 18:42+0100\n" -"PO-Revision-Date: 2001-01-21 19:01+01:00\n" +"POT-Creation-Date: 2001-03-11 13:38+0100\n" +"PO-Revision-Date: 2001-03-11 14:13GMT\n" "Last-Translator: Claus Hindsgaul <claus_h@image.dk>\n" "Language-Team: Danish <dansk@klid.dk>\n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=iso-8859-1\n" +"Content-Type: text/plain; charset=ISO-8859-1\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: KBabel 0.7.1\n" - -#: clock/cmos.c:157 -msgid "booted from MILO\n" -msgstr "startede op med MILO\n" - -#: clock/cmos.c:166 -msgid "Ruffian BCD clock\n" -msgstr "'Ruffian' BCD-ur\n" - -#: clock/cmos.c:182 -#, c-format -msgid "clockport adjusted to 0x%x\n" -msgstr "urport justeret til 0x%x\n" - -#: clock/cmos.c:192 -msgid "funky TOY!\n" -msgstr "'funky TOY' (tid-på-året)!\n" - -#: clock/cmos.c:246 -#, c-format -msgid "%s: atomic %s failed for 1000 iterations!" -msgstr "%s: momentan %s mislykkedes i 1000 iterationer!" - -#: clock/cmos.c:570 -#, c-format -msgid "Cannot open /dev/port: %s" -msgstr "Kan ikke åbne /dev/port: %s" - -#: clock/cmos.c:577 -msgid "I failed to get permission because I didnt try.\n" -msgstr "Jeg kunne ikke få adgang fordi jeg ikke forsøgte.\n" - -#: clock/cmos.c:580 -#, c-format -msgid "%s is unable to get I/O port access: the iopl(3) call failed.\n" -msgstr "%s kan ikke få adgang til I/O-port: kaldet 'iopl(3)' mislykkedes.\n" - -#: clock/cmos.c:583 -msgid "Probably you need root privileges.\n" -msgstr "Du behøver nok root-rettigheder.\n" - -#: clock/hwclock.c:219 -#, c-format -msgid "Assuming hardware clock is kept in %s time.\n" -msgstr "Antager at maskinuret holdes i %s tid.\n" - -#: clock/hwclock.c:220 clock/hwclock.c:309 -msgid "UTC" -msgstr "UTC" - -#: clock/hwclock.c:220 clock/hwclock.c:308 -msgid "local" -msgstr "lokal" - -#: clock/hwclock.c:292 -#, c-format -msgid "%s: Warning: unrecognized third line in adjtime file\n" -msgstr "%s: Advarsel: ukendt tredie linie i adjtime-fil\n" - -#: clock/hwclock.c:294 -msgid "(Expected: `UTC' or `LOCAL' or nothing.)\n" -msgstr "(Forventet: 'UTC', 'LOCAL' eller ingenting.)\n" - -#: clock/hwclock.c:303 -#, c-format -msgid "Last drift adjustment done at %d seconds after 1969\n" -msgstr "Sidste hastighedsjustering blev gjort %d sekunder efter 1969\n" - -#: clock/hwclock.c:305 -#, c-format -msgid "Last calibration done at %d seconds after 1969\n" -msgstr "Sidste kalibrering blev foretaget %d sekunder efter 1969\n" - -#: clock/hwclock.c:307 -#, c-format -msgid "Hardware clock is on %s time\n" -msgstr "Maskinuret er i %s-tid\n" - -#: clock/hwclock.c:309 -msgid "unknown" -msgstr "ukendt" - -#. ----------------------------------------------------------------------------- -#. Wait until the falling edge of the Hardware Clock's update flag so -#. that any time that is read from the clock immediately after we -#. return will be exact. -#. -#. The clock only has 1 second precision, so it gives the exact time only -#. once per second, right on the falling edge of the update flag. -#. -#. We wait (up to one second) either blocked waiting for an rtc device -#. or in a CPU spin loop. The former is probably not very accurate. -#. -#. Return *retcode_p == 0 if it worked, nonzero if it didn't. -#. -#. ----------------------------------------------------------------------------- -#: clock/hwclock.c:331 -msgid "Waiting for clock tick...\n" -msgstr "Venter på et ur-tik...\n" - -#: clock/hwclock.c:335 -msgid "...got clock tick\n" -msgstr "...fangede ur-tik\n" - -#: clock/hwclock.c:386 -#, c-format -msgid "Invalid values in hardware clock: %4d/%.2d/%.2d %.2d:%.2d:%.2d\n" -msgstr "Ugyldige værdier i maskinur: %4d/%.2d/%.2d %.2d:%.2d:%.2d\n" - -#: clock/hwclock.c:394 -#, c-format -msgid "Hw clock time : %4d/%.2d/%.2d %.2d:%.2d:%.2d = %ld seconds since 1969\n" -msgstr "Maskinur-tid: %4d/%.2d/%.2d %.2d:%.2d:%.2d = %ld sekunder siden 1969\n" - -#: clock/hwclock.c:422 -#, c-format -msgid "Time read from Hardware Clock: %4d/%.2d/%.2d %02d:%02d:%02d\n" -msgstr "Tid læst fra maskinuret: %4d/%.2d/%.2d %02d:%02d:%02d\n" - -#: clock/hwclock.c:449 -#, c-format -msgid "Setting Hardware Clock to %.2d:%.2d:%.2d = %d seconds since 1969\n" -msgstr "Sætter maskinuret til %.2d:%.2d:%.2d = %d sekunder siden 1969\n" - -#: clock/hwclock.c:455 -msgid "Clock not changed - testing only.\n" -msgstr "Uret uændret - testede kun.\n" - -#: clock/hwclock.c:503 -#, c-format -msgid "" -"Time elapsed since reference time has been %.6f seconds.\n" -"Delaying further to reach the next full second.\n" -msgstr "" -"Der er gået %.6f sekunder siden referencetiden.\n" -"Udskyder yderligere for at nå til næste hele sekund.\n" - -#: clock/hwclock.c:527 -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 "" -"Maskinurets registre indeholder værdier, der enten er ugyldige (f.eks. 50. " -"dag i måneden) eller udenfor det område, vi kan håndtere (f.eks. år 2095).\n" - -#. Address of static storage containing time string -#. For some strange reason, ctime() is designed to include a newline -#. character at the end. We have to remove that. -#. -#. Compute display value for time -#. Cut off trailing newline -#: clock/hwclock.c:539 -#, c-format -msgid "%s %.6f seconds\n" -msgstr "%s %.6f sekunder\n" - -#: clock/hwclock.c:573 -msgid "No --date option specified.\n" -msgstr "Intet --date tilvalg angivet.\n" - -#. Quotation marks in date_opt would ruin the date command we construct. -#. -#: clock/hwclock.c:578 -msgid "" -"The value of the --date option is not a valid date.\n" -"In particular, it contains quotation marks.\n" -msgstr "" -"Værdien af --date tilvalget er ikke en gyldig dato.\n" -"Mere specifikt, indeholder den anførselstegn.\n" - -#: clock/hwclock.c:584 -#, c-format -msgid "Issuing date command: %s\n" -msgstr "Udfører 'date'-kommandoen: %s\n" - -#: clock/hwclock.c:588 -msgid "Unable to run 'date' program in /bin/sh shell. popen() failed" -msgstr "Kunne ikke køre 'date'-programmet i /bin/sh skallen. popen() mislykkedes" - -#: clock/hwclock.c:594 -#, c-format -msgid "response from date command = %s\n" -msgstr "svar fra 'date'-kommandoen = %s\n" - -#: clock/hwclock.c:596 -#, c-format -msgid "" -"The date command issued by %s returned unexpected results.\n" -"The command was:\n" -" %s\n" -"The response was:\n" -" %s\n" -msgstr "" -"'date'-kommandoen sendt af %s returnerede uventede resultater.\n" -"Kommandoen var:\n" -" %s\n" -"Svaret var:\n" -" %s\n" - -#: clock/hwclock.c:605 -#, c-format -msgid "" -"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 "" -"'date'-kommandoen sendt af %s returnerede noget andet end et heltal, hvor " -"den konverterede tid forventedes.\n" -"Kommandoen var:\n" -" %s\n" -"Svaret var:\n" -" %s\n" - -#: clock/hwclock.c:615 -#, c-format -msgid "date string %s equates to %d seconds since 1969.\n" -msgstr "Datoteksten %s svarer til %d sekunder siden 1969.\n" - -#: clock/hwclock.c:647 -msgid "" -"The Hardware Clock does not contain a valid time, so we cannot set the " -"System Time from it.\n" -msgstr "" -"Maskinuret indeholder ikke en gyldig tid, så vi kan ikke sætte systemuret " -"med det.\n" - -#: clock/hwclock.c:669 -msgid "Calling settimeofday:\n" -msgstr "Kalder 'settimeofday':\n" - -#: clock/hwclock.c:670 -#, c-format -msgid "\ttv.tv_sec = %ld, tv.tv_usec = %ld\n" -msgstr "\ttv.tv_sec = %ld, tv.tv_usec = %ld\n" - -#: clock/hwclock.c:672 -#, c-format -msgid "\ttz.tz_minuteswest = %d\n" -msgstr "\ttz.tz_minuteswest = %d\n" - -#: clock/hwclock.c:675 -msgid "Not setting system clock because running in test mode.\n" -msgstr "Sætter ikke systemuret, da der køres i testtilstand.\n" - -#: clock/hwclock.c:683 -msgid "Must be superuser to set system clock.\n" -msgstr "Skal være superbruger for at sætte systemuret.\n" - -#: clock/hwclock.c:685 -msgid "settimeofday() failed" -msgstr "settimeofday() mislykkedes" - -#: clock/hwclock.c:718 -msgid "" -"Not adjusting drift factor because the Hardware Clock previously contained " -"garbage.\n" -msgstr "" -"Justerede ikke hastighedsfaktoren, da maskinuret tidligere havde en ugyldig " -"værdi.\n" - -#: clock/hwclock.c:722 -msgid "" -"Not adjusting drift factor because it has been less than a day since the " -"last calibration.\n" -msgstr "" -"Justerede ikke hastighedsfaktoren, da det er mindre en et døgn siden sidste " -"kalibrering.\n" - -#: clock/hwclock.c:731 -#, c-format -msgid "" -"Clock drifted %d 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 "" -"Uret drev %d sekunder i løbet af de sidste %d sekunder på trods af en " -"hastighedsfaktor på %f sekunder/døgn.\n" -"Justerer hastighedsfaktoren med %f sekunder/døgn\n" - -#: clock/hwclock.c:782 -#, c-format -msgid "Time since last adjustment is %d seconds\n" -msgstr "%d sekunder siden sidste justering\n" - -#: clock/hwclock.c:784 -#, c-format -msgid "Need to insert %d seconds and refer time back %.6f seconds ago\n" -msgstr "Skal indsætte %d sekunder og stille uret %.6f sekunder tilbage\n" - -#: clock/hwclock.c:813 -msgid "Not updating adjtime file because of testing mode.\n" -msgstr "Opdaterer ikke adjtime-filen, da der køres i testtilstand.\n" - -#: clock/hwclock.c:814 -#, c-format -msgid "" -"Would have written the following to %s:\n" -"%s" -msgstr "" -"Ville have skrevet følgende til %s:\n" -"%s" - -#: clock/hwclock.c:838 -msgid "Drift adjustment parameters not updated.\n" -msgstr "Hastighedsjusteringen blev ikke opdateret.\n" - -#: clock/hwclock.c:879 -msgid "The Hardware Clock does not contain a valid time, so we cannot adjust it.\n" -msgstr "Maskinuret indeholder ikke en gyldig tid, så vi kan ikke justere det.\n" - -#: clock/hwclock.c:903 -msgid "Needed adjustment is less than one second, so not setting clock.\n" -msgstr "Den krævede justering er mindre end eet sekund, så vi sætter ikke uret.\n" - -#: clock/hwclock.c:929 -#, c-format -msgid "Using %s.\n" -msgstr "Bruger %s.\n" - -#: clock/hwclock.c:931 -msgid "No usable clock interface found.\n" -msgstr "Fandt ingen brugbare ur-grænseflader.\n" - -#: clock/hwclock.c:1026 -msgid "Unable to set system clock.\n" -msgstr "Kunne ikke sætte systemuret.\n" - -#: clock/hwclock.c:1055 -msgid "" -"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 "" -"Kernen holder en epokeværdi for maskinuret på Alpha-maskiner\n" -"Denne kopi af hwclock blev kompileret til en anden maskine end Alpha\n" -"(og kører derfor sansynligvis ikke på en Alpha nu). Intet blev gjort.\n" - -#: clock/hwclock.c:1064 -msgid "Unable to get the epoch value from the kernel.\n" -msgstr "Kunne ikke hente en epokeværdi fra kernen.\n" - -#: clock/hwclock.c:1066 -#, c-format -msgid "Kernel is assuming an epoch value of %lu\n" -msgstr "Kernen går ud fra en epokeværdi på %lu\n" - -#: clock/hwclock.c:1069 -msgid "" -"To set the epoch value, you must use the 'epoch' option to tell to what " -"value to set it.\n" -msgstr "" -"For at sætte epokeværdien, skal du bruge tilvalget 'epoch' for at angive " -"hvilken værdi, den skal sættes til\n" - -#: clock/hwclock.c:1072 -#, c-format -msgid "Not setting the epoch to %d - testing only.\n" -msgstr "Sætter IKKE epokeværdien til %d - tester bare.\n" - -#: clock/hwclock.c:1075 -msgid "Unable to set the epoch value in the kernel.\n" -msgstr "Kunne ikke sætte epokeværdien i kernen.\n" - -#: clock/hwclock.c:1104 -#, c-format -msgid "" -"hwclock - query and set the hardware clock (RTC)\n" -"\n" -"Usage: hwclock [function] [options...]\n" -"\n" -"Functions:\n" -" --help show this help\n" -" --show read hardware clock and print result\n" -" --set set the rtc to the time given with --date\n" -" --hctosys set the system time from the hardware clock\n" -" --systohc set the hardware clock to the current system time\n" -" --adjust adjust the rtc to account for systematic drift since \n" -" the clock was last set or adjusted\n" -" --getepoch print out the kernel's hardware clock epoch value\n" -" --setepoch set the kernel's hardware clock epoch value to the \n" -" value given with --epoch\n" -" --version print out the version of hwclock to stdout\n" -"\n" -"Options: \n" -" --utc the hardware clock is kept in coordinated universal time\n" -" --localtime the hardware clock is kept in local time\n" -" --directisa access the ISA bus directly instead of %s\n" -" --badyear ignore rtc's year because the bios is broken\n" -" --date specifies the time to which to set the hardware clock\n" -" --epoch=year specifies the year which is the beginning of the \n" -" hardware clock's epoch value\n" -msgstr "" -"hwclock - læs og sæt maskinuret (RTC)\n" -"\n" -"Brug: hwclock [funktion] [tilvalg...]\n" -"\n" -"Funktioner:\n" -" --help vis denne hjælp\n" -" --show aflæs maskinuret og vis resultatet\n" -" --set sæt uret til tiden angivet med --date\n" -" --hctosys sæt systemuret til maskinurets tid\n" -" --systohc sæt maskinuret til systemurets tid\n" -" --adjust kalibrér systemuret, så det tager højde for systematisk\n" -" hastighedsfejl siden uret sidst blev sat eller justeret\n" -" --getepoch vis kernens epokeværdi for maskinuret\n" -" --setepoch sæt epokeværdien for kernens maskinur til den værdi,\n" -" der angives med --epoch\n" -" --version udlæs hwclock's version til standard-ud\n" -"\n" -"Tilvalg: \n" -" --utc maskinuret holdes i koordineret universel tid\n" -" --localtime maskinuret holdes i lokal tid\n" -" --directisa tilgå ISA-bussen direkte i stedet for %s\n" -" --badyear igorér maskinurets årstal, da bios'en er fejlbehæftet\n" -" --date angiver tiden, som maskinuret skal sættes til\n" -" --epoch=år angiver det år, som er begyndelsen på maskinurets\n" -" epokeværdi\n" - -#: clock/hwclock.c:1129 -msgid "" -" --jensen, --arc, --srm, --funky-toy\n" -" tell hwclock the type of alpha you have (see hwclock(8))\n" -msgstr "" -" --jensen, --arc, --srm, --funky-toy\n" -" angiv hvilken slags alpha du har (se hwclock(8))\n" - -#: clock/hwclock.c:1227 -#, c-format -msgid "%s takes no non-option arguments. You supplied %d.\n" -msgstr "%s accepterer ingen parametre. Du angav parametren %d.\n" - -#: clock/hwclock.c:1237 -msgid "" -"You have specified multiple function options.\n" -"You can only perform one function at a time.\n" -msgstr "" -"Du har angivet flere funktionstilvalg.\n" -"Du kan kun udføre én funktion ad gangen.\n" - -#: clock/hwclock.c:1243 -#, c-format -msgid "" -"%s: The --utc and --localtime options are mutually exclusive. You specified " -"both.\n" -msgstr "%s: Tilvalgene --utc og --localtime udelukker hinanden. Du angav begge.\n" - -#: clock/hwclock.c:1256 -msgid "No usable set-to time. Cannot set clock.\n" -msgstr "Ingen brugbar set-til-tid. Kan ikke sætte uret.\n" - -#: clock/hwclock.c:1271 -msgid "Sorry, only the superuser can change the Hardware Clock.\n" -msgstr "Beklager, kun superbrugeren kan ændre maskinuret.\n" - -#: clock/hwclock.c:1275 -msgid "Sorry, only the superuser can change the System Clock.\n" -msgstr "Beklager, kun superbrugeren kan ændre systemuret.\n" - -#: clock/hwclock.c:1279 -msgid "" -"Sorry, only the superuser can change the Hardware Clock epoch in the " -"kernel.\n" -msgstr "Beklager, kun superbrugeren kan ændre maskinurets epokeværdi i kernen.\n" - -#: clock/hwclock.c:1299 -msgid "Cannot access the Hardware Clock via any known method.\n" -msgstr "Kan ikke tilgå maskinuret med nogen kendt metode.\n" - -#: clock/hwclock.c:1302 -msgid "" -"Use the --debug option to see the details of our search for an access " -"method.\n" -msgstr "" -"Benyt tilvalget --debug for at se detaljerne fra vores søgning efter en " -"tilgangsmetode.\n" - -#: clock/kd.c:41 -msgid "Waiting in loop for time from KDGHWCLK to change\n" -msgstr "Venter i en løkke for at tiden fra KDGHWCLK ændres\n" - -#: clock/kd.c:44 -msgid "KDGHWCLK ioctl to read time failed" -msgstr "KDGHWCLK ioctl for at aflæse tiden mislykkedes" - -#: clock/kd.c:65 clock/rtc.c:151 -msgid "Timed out waiting for time change.\n" -msgstr "Tidsudløb mens der ventedes på tidsændring.\n" - -#: clock/kd.c:69 -msgid "KDGHWCLK ioctl to read time failed in loop" -msgstr "KDGHWCLK ioctl for at aflæse tiden mislykkedes i løkke" - -#: clock/kd.c:91 -msgid "ioctl() failed to read time from /dev/tty1" -msgstr "ioctl() kunne ikke aflæse tiden fra /dev/tty1" - -#: clock/kd.c:127 -msgid "ioctl() to open /dev/tty1 failed" -msgstr "ioctl() for at åbne /dev/tty1 mislykkedes" - -#: clock/kd.c:157 -msgid "KDGHWCLK ioctl failed" -msgstr "KDGHWCLK ioctl mislykkedes" - -#: clock/kd.c:163 -msgid "Can't open /dev/tty1" -msgstr "Kunne ikke åbne /dev/tty1" - -#: clock/rtc.c:105 -#, c-format -msgid "ioctl() to %s to read the time failed.\n" -msgstr "ioctl() til %s for at aflæse tiden mislykkedes.\n" - -#: clock/rtc.c:136 -#, c-format -msgid "Waiting in loop for time from %s to change\n" -msgstr "Venter i løkke på at tiden fra %s ændres\n" - -#: clock/rtc.c:172 clock/rtc.c:229 -#, c-format -msgid "open() of %s failed" -msgstr "open() af %s mislykkedes" - -#: clock/rtc.c:190 -#, c-format -msgid "%s does not have interrupt functions. " -msgstr "%s har ingen interrupt-funktioner. " - -#: clock/rtc.c:198 -#, c-format -msgid "read() to %s to wait for clock tick failed" -msgstr "read() af %s for at vente på en ur-tik mislykkedes" - -#: clock/rtc.c:206 -#, c-format -msgid "ioctl() to %s to turn off update interrupts failed" -msgstr "ioctl() til %s for at afbryde opdaterings-interrupts mislykkedes" - -#: clock/rtc.c:209 -#, c-format -msgid "ioctl() to %s to turn on update interrupts failed unexpectedly" -msgstr "ioctl() til %s for at afbryde opdaterings-interrupts mislykkedes uventet" - -#: clock/rtc.c:252 clock/rtc.c:331 clock/rtc.c:376 -#, c-format -msgid "Unable to open %s" -msgstr "Kunne ikke åbne %s" - -#: clock/rtc.c:275 -#, c-format -msgid "ioctl() to %s to set the time failed.\n" -msgstr "ioctl() til %s for at sætte tiden mislykkedes.\n" - -#: clock/rtc.c:279 -#, c-format -msgid "ioctl(%s) was successful.\n" -msgstr "ioctl(%s) lykkedes.\n" - -#: clock/rtc.c:309 -#, c-format -msgid "Open of %s failed" -msgstr "Åbning af %s mislykkedes" - -#: clock/rtc.c:327 clock/rtc.c:372 -#, 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 "" -"For at manipulere epokeværdien i kernen, skal vi have adgang til Linux's " -"maskinursenhed via enhedsspecialfilen '%s'. Denne fil eksisterer ikke på " -"dette system.\n" - -#: clock/rtc.c:338 -#, c-format -msgid "ioctl(RTC_EPOCH_READ) to %s failed" -msgstr "ioctl(RTC_EPOCH_READ) til %s mislykkedes" - -#: clock/rtc.c:344 -#, c-format -msgid "we have read epoch %ld from %s with RTC_EPOCH_READ ioctl.\n" -msgstr "vi har aflæst epokeværdi %ld fra %s med RTC_EPOCH_READ ioctl.\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. -#: clock/rtc.c:364 -#, c-format -msgid "The epoch value may not be less than 1900. You requested %ld\n" -msgstr "Epokeværdien må ikke være mindre end 1900. Du bad om %ld\n" - -#: clock/rtc.c:381 -#, c-format -msgid "setting epoch to %ld with RTC_EPOCH_SET ioctl to %s.\n" -msgstr "sætter epokeværdien til %ld med en RTC_EPOCH_SET ioctl til %s.\n" - -#: clock/rtc.c:386 -#, c-format -msgid "The kernel device driver for %s does not have the RTC_EPOCH_SET ioctl.\n" -msgstr "Kernens enheds-driver for %s har ikke en RTC_EPOCH_SET ioctl.\n" - -#: clock/rtc.c:389 -#, c-format -msgid "ioctl(RTC_EPOCH_SET) to %s failed" -msgstr "ioctl(RTC_EPOCH_SET) til %s mislykkedes" - -#: clock/shhopt.c:255 clock/shhopt.c:281 -#, c-format -msgid "invalid number `%s'\n" -msgstr "Ugyldigt tal '%s'\n" - -#: clock/shhopt.c:258 clock/shhopt.c:284 -#, c-format -msgid "number `%s' to `%s' out of range\n" -msgstr "tallet '%s' til '%s' er ikke i det gyldige område\n" - -#: clock/shhopt.c:398 -#, c-format -msgid "unrecognized option `%s'\n" -msgstr "ukendt tilvalg '%s'\n" - -#: clock/shhopt.c:411 clock/shhopt.c:449 -#, c-format -msgid "option `%s' requires an argument\n" -msgstr "tilvalget '%s' kræver en parameter\n" - -#: clock/shhopt.c:417 -#, c-format -msgid "option `%s' doesn't allow an argument\n" -msgstr "tilvalget '%s' tillader ikke en parameter\n" - -#: clock/shhopt.c:439 -#, c-format -msgid "unrecognized option `-%c'\n" -msgstr "ukendt tilvalg '-%c'\n" +"X-Generator: KBabel 0.8\n" #: disk-utils/blockdev.c:47 msgid "set read-only" @@ -713,7 +73,7 @@ msgstr "%s kræver en parameter\n" #: disk-utils/elvtune.c:46 msgid "usage:\n" -msgstr "Brug:\n" +msgstr "brug:\n" #: disk-utils/fdformat.c:36 msgid "Formatting ... " @@ -751,9 +111,10 @@ msgid "usage: %s [ -n ] device\n" msgstr "brug: %s [ -n ] enhed\n" #: disk-utils/fdformat.c:120 disk-utils/fsck.minix.c:1248 -#: disk-utils/mkfs.bfs.c:119 disk-utils/mkfs.c:55 disk-utils/mkfs.minix.c:640 -#: disk-utils/mkswap.c:448 disk-utils/setfdprm.c:127 misc-utils/cal.c:203 -#: misc-utils/ddate.c:181 misc-utils/kill.c:192 misc-utils/rename.c:79 +#: disk-utils/isosize.c:179 disk-utils/mkfs.bfs.c:119 disk-utils/mkfs.c:55 +#: disk-utils/mkfs.minix.c:640 disk-utils/mkswap.c:452 +#: disk-utils/setfdprm.c:127 misc-utils/cal.c:203 misc-utils/ddate.c:181 +#: misc-utils/kill.c:188 misc-utils/rename.c:79 misc-utils/script.c:130 #, c-format msgid "%s from %s\n" msgstr "%s fra %s\n" @@ -828,7 +189,7 @@ msgstr "" #: disk-utils/fsck.minix.c:392 disk-utils/mkfs.minix.c:283 msgid "seek failed in write_block" -msgstr "søgning mislykkedes i write_blok" +msgstr "søgning mislykkedes i write_block" #: disk-utils/fsck.minix.c:394 msgid "Write error: bad block in file '" @@ -1083,7 +444,7 @@ msgstr "ugyldig v2 inode-størrelse" #: disk-utils/fsck.minix.c:1282 msgid "need terminal for interactive repairs" -msgstr "kræver terminal til interaktive reperationer" +msgstr "kræver terminal til interaktive reparationer" #: disk-utils/fsck.minix.c:1286 #, c-format @@ -1150,27 +511,57 @@ msgstr "" "FILSYSTEM BLEV MODIFICERET\n" "--------------------------\n" +#: disk-utils/isosize.c:129 +#, c-format +msgid "%s: failed to open: %s\n" +msgstr "%s: Kunne ikke åbne: %s\n" + +#: disk-utils/isosize.c:135 +#, c-format +msgid "%s: seek error on %s\n" +msgstr "%s: søgefejl på %s\n" + +#: disk-utils/isosize.c:141 +#, c-format +msgid "%s: read error on %s\n" +msgstr "%s: læsefejl på %s\n" + +#: disk-utils/isosize.c:150 +#, c-format +msgid "sector count: %d, sector size: %d\n" +msgstr "sektorantal: %d, sektorstørrelse: %d\n" + +#: disk-utils/isosize.c:198 +#, c-format +msgid "%s: option parse error\n" +msgstr "%s: Fortolkerfejl ved tilvalg\n" + +#: disk-utils/isosize.c:206 +#, c-format +msgid "Usage: %s [-x] [-d <num>] iso9660-image\n" +msgstr "Brug: %s [-x] [-d <antal>] iso9660-billede\n" + #: disk-utils/mkfs.bfs.c:88 #, c-format msgid "" "Usage: %s [-v] [-N nr-of-inodes] [-V volume-name]\n" " [-F fsname] device [block-count]\n" msgstr "" -"Brug: %s [-v] [-N antal-inode] [-V bind-navn]\n" +"Brug: %s [-v] [-N antal-inodes] [-V bind-navn]\n" " [-F fsnavn] enhed [antal-blokke]\n" #: disk-utils/mkfs.bfs.c:135 msgid "volume name too long" -msgstr "for langt bind-navn" +msgstr "bind-navn for langt" #: disk-utils/mkfs.bfs.c:142 msgid "fsname name too long" -msgstr "for langt filsystem-navn" +msgstr "fsnavn for langt" #: disk-utils/mkfs.bfs.c:167 #, c-format msgid "cannot stat device %s" -msgstr "kunne ikke finde enhed %s" +msgstr "kunne ikke finde enheden %s" #: disk-utils/mkfs.bfs.c:171 #, c-format @@ -1189,19 +580,19 @@ msgstr "Kan ikke få størrelsen af %s" #: disk-utils/mkfs.bfs.c:192 #, c-format -msgid "blocks argument too large, max is %d" -msgstr "parameteret antal-blokke er for stort. Maksimum er %d" +msgid "blocks argument too large, max is %lu" +msgstr "for mange blokke angivet, øvre grænse er %lu" #: disk-utils/mkfs.bfs.c:207 msgid "too many inodes - max is 512" -msgstr "for mange inode" +msgstr "for mange inodes - øvre grænse er 512" #: disk-utils/mkfs.bfs.c:216 #, c-format -msgid "not enough space, need at least %d blocks" -msgstr "ikke nok plads. Mangler mindst %d blokke" +msgid "not enough space, need at least %lu blocks" +msgstr "ikke plads nok, kræver mindst %lu blokke" -#: disk-utils/mkfs.bfs.c:228 fdisk/fdisk.c:1913 +#: disk-utils/mkfs.bfs.c:228 fdisk/fdisk.c:1930 #, c-format msgid "Device: %s\n" msgstr "Enhed: %s\n" @@ -1209,7 +600,7 @@ msgstr "Enhed: %s\n" #: disk-utils/mkfs.bfs.c:229 #, c-format msgid "Volume: <%-6s>\n" -msgstr "Bind: <%-6s>\n" +msgstr "Bind: <%-6s>\n" #: disk-utils/mkfs.bfs.c:230 #, c-format @@ -1219,12 +610,12 @@ msgstr "FSnavn: <%-6s>\n" #: disk-utils/mkfs.bfs.c:231 #, c-format msgid "BlockSize: %d\n" -msgstr "BlokStørr: %d\n" +msgstr "Blokstørrelse: %d\n" #: disk-utils/mkfs.bfs.c:233 #, c-format msgid "Inodes: %d (in 1 block)\n" -msgstr "Inodes: %d (i 1 blok)\n" +msgstr "Inodes: %d (i en blok)\n" #: disk-utils/mkfs.bfs.c:236 #, c-format @@ -1243,15 +634,15 @@ msgstr "Inode-slut: %d, Data-slut: %d\n" #: disk-utils/mkfs.bfs.c:244 msgid "error writing superblock" -msgstr "kunne ikke skrive superblok" +msgstr "fejl under skrivning af superblok" #: disk-utils/mkfs.bfs.c:264 msgid "error writing root inode" -msgstr "fejl ved skrivning af rod-inode" +msgstr "fejl under skrivning af rod-inode" #: disk-utils/mkfs.bfs.c:269 msgid "error writing inode" -msgstr "fejl ved skrivning af inode" +msgstr "fejl under skrivning inode" #: disk-utils/mkfs.bfs.c:272 msgid "seek error" @@ -1259,23 +650,23 @@ msgstr "søgefejl" #: disk-utils/mkfs.bfs.c:278 msgid "error writing . entry" -msgstr "fejl ved skrivning af '.'-indgang" +msgstr "fejl under skrivning af '.'-indgang" #: disk-utils/mkfs.bfs.c:282 msgid "error writing .. entry" -msgstr "fejl ved skrivning af '..'-indgang" +msgstr "fejl under skrivning af '..'-indgang" #: disk-utils/mkfs.bfs.c:286 #, c-format msgid "error closing %s" -msgstr "Fejl ved lukning af %s" +msgstr "Fejl under lukning af %s" #: disk-utils/mkfs.c:76 msgid "Usage: mkfs [-V] [-t fstype] [fs-options] device [size]\n" msgstr "Brug: mkfs [-V] [-t fstype] [fs-tilvalg] enhed [størrelse]\n" -#: disk-utils/mkfs.c:90 fdisk/cfdisk.c:368 getopt-1.1.0a/getopt.c:89 -#: getopt-1.1.0a/getopt.c:99 login-utils/wall.c:227 mount/sundries.c:196 +#: disk-utils/mkfs.c:90 fdisk/cfdisk.c:369 getopt-1.1.0a/getopt.c:89 +#: getopt-1.1.0a/getopt.c:99 login-utils/wall.c:228 mount/sundries.c:196 #, c-format msgid "%s: Out of memory!\n" msgstr "%s: Hukommelse opbrugt!\n" @@ -1321,7 +712,7 @@ msgstr "kunne ikke skrive inodes" #: disk-utils/mkfs.minix.c:285 msgid "write failed in write_block" -msgstr "mislykked skrivning i write_block" +msgstr "mislykket skrivning i write_block" #. Could make triple indirect block here #: disk-utils/mkfs.minix.c:293 disk-utils/mkfs.minix.c:367 @@ -1356,9 +747,9 @@ msgstr "søgning fejlede under test af blokke" #: disk-utils/mkfs.minix.c:550 msgid "Weird values in do_check: probably bugs\n" -msgstr "Mystiske værdier i do_check: sansynligvis programfejl\n" +msgstr "Mystiske værdier i do_check: sandsynligvis programfejl\n" -#: disk-utils/mkfs.minix.c:581 disk-utils/mkswap.c:358 +#: disk-utils/mkfs.minix.c:581 disk-utils/mkswap.c:362 msgid "seek failed in check_blocks" msgstr "søgning mislykkedes i check_blocks" @@ -1403,79 +794,79 @@ msgstr "kunne ikke finde %s" msgid "will not try to make filesystem on '%s'" msgstr "vil ikke forsøge at oprette filsystem på '%s'" -#: disk-utils/mkswap.c:174 +#: disk-utils/mkswap.c:178 #, c-format msgid "Bad user-specified page size %d\n" msgstr "Ugyldig sidestørrelse '%d' angivet af bruger\n" -#: disk-utils/mkswap.c:183 +#: disk-utils/mkswap.c:187 #, c-format msgid "Using user-specified page size %d, instead of the system values %d/%d\n" msgstr "Benytter bruger-bestemt sidestørrelse %d i stedet for systemværdierne %d/%d\n" -#: disk-utils/mkswap.c:187 +#: disk-utils/mkswap.c:191 #, c-format msgid "Assuming pages of size %d (not %d)\n" msgstr "Antager sider med størrelsen %d (ikke %d)\n" -#: disk-utils/mkswap.c:312 +#: disk-utils/mkswap.c:316 #, c-format msgid "Usage: %s [-c] [-v0|-v1] [-pPAGESZ] /dev/name [blocks]\n" msgstr "Brug: %s [-c] [-v0|-v1] [-pPAGESZ] /dev/navn [blokke]\n" -#: disk-utils/mkswap.c:335 +#: disk-utils/mkswap.c:339 msgid "too many bad pages" msgstr "for mange ugyldige sider" -#: disk-utils/mkswap.c:349 misc-utils/look.c:182 misc-utils/setterm.c:1129 -#: text-utils/more.c:1931 text-utils/more.c:1942 +#: disk-utils/mkswap.c:353 misc-utils/look.c:182 misc-utils/setterm.c:1129 +#: text-utils/more.c:1930 text-utils/more.c:1941 msgid "Out of memory" msgstr "Hukommelse opbrugt" -#: disk-utils/mkswap.c:366 +#: disk-utils/mkswap.c:370 msgid "one bad page\n" msgstr "en ugyldig side\n" -#: disk-utils/mkswap.c:368 +#: disk-utils/mkswap.c:372 #, c-format msgid "%d bad pages\n" msgstr "%d ugyldige sider\n" -#: disk-utils/mkswap.c:488 +#: disk-utils/mkswap.c:492 #, c-format msgid "%s: error: Nowhere to set up swap on?\n" msgstr "%s: fejl: Ingen steder at opsætte swap?\n" -#: disk-utils/mkswap.c:506 +#: disk-utils/mkswap.c:510 #, c-format msgid "%s: error: size %ld is larger than device size %d\n" msgstr "%s: fejl: størrelsen %ld er større end enhedsstørrelsen %d\n" -#: disk-utils/mkswap.c:525 +#: disk-utils/mkswap.c:529 #, c-format msgid "%s: error: unknown version %d\n" msgstr "%s: fejl: ukendt version %d\n" -#: disk-utils/mkswap.c:531 +#: disk-utils/mkswap.c:535 #, c-format msgid "%s: error: swap area needs to be at least %ldkB\n" msgstr "%s: fejl: swap-område skal mindst være på %ldkB\n" -#: disk-utils/mkswap.c:550 +#: disk-utils/mkswap.c:554 #, c-format msgid "%s: warning: truncating swap area to %ldkB\n" msgstr "%s: fejl: afkorter swap-området til %ldkB\n" -#: disk-utils/mkswap.c:562 +#: disk-utils/mkswap.c:566 #, c-format msgid "Will not try to make swapdevice on '%s'" msgstr "Vil ikke forsøge at oprette swap-enhed på '%s'" -#: disk-utils/mkswap.c:571 disk-utils/mkswap.c:592 +#: disk-utils/mkswap.c:575 disk-utils/mkswap.c:596 msgid "fatal: first page unreadable" msgstr "fatalt: første side kan ikke læses" -#: disk-utils/mkswap.c:577 +#: disk-utils/mkswap.c:581 #, c-format msgid "" "%s: Device '%s' contains a valid Sun disklabel.\n" @@ -1488,24 +879,24 @@ msgstr "" "opretter en v0 swap. Ingen swap oprettet. Hvis du virkelig vil oprette en\n" "v0 swap på denne enhed, kan du gennemtvinge det med tilvalget -f.\n" -#: disk-utils/mkswap.c:601 +#: disk-utils/mkswap.c:605 msgid "Unable to set up swap-space: unreadable" msgstr "Kunne ikke klargøre swap-område: ulæseligt" -#: disk-utils/mkswap.c:602 +#: disk-utils/mkswap.c:606 #, c-format msgid "Setting up swapspace version %d, size = %ld bytes\n" msgstr "Klargører swap-område version %d, størrelse = %ld byte\n" -#: disk-utils/mkswap.c:608 +#: disk-utils/mkswap.c:612 msgid "unable to rewind swap-device" msgstr "kunne ikke spole tilbage på swap-enheden" -#: disk-utils/mkswap.c:611 +#: disk-utils/mkswap.c:615 msgid "unable to write signature page" msgstr "kunne ikke skrive signatur-side" -#: disk-utils/mkswap.c:619 +#: disk-utils/mkswap.c:623 msgid "fsync failed" msgstr "fsync mislykkedes" @@ -1544,44 +935,44 @@ msgstr " %s [ -c | -y | -n | -d ] enh\n" msgid " %s [ -c | -y | -n ] dev\n" msgstr " %s [ -c | -y | -n ] enh\n" -#: fdisk/cfdisk.c:393 fdisk/cfdisk.c:1899 +#: fdisk/cfdisk.c:394 fdisk/cfdisk.c:1900 msgid "Unusable" msgstr "Ubrugelig" -#: fdisk/cfdisk.c:395 fdisk/cfdisk.c:1901 +#: fdisk/cfdisk.c:396 fdisk/cfdisk.c:1902 msgid "Free Space" msgstr "Frit område" -#: fdisk/cfdisk.c:398 +#: fdisk/cfdisk.c:399 msgid "Linux ext2" msgstr "Linux ext2" #. also Solaris -#: fdisk/cfdisk.c:400 fdisk/i386_sys_types.c:57 +#: fdisk/cfdisk.c:401 fdisk/i386_sys_types.c:57 msgid "Linux" msgstr "Linux" -#: fdisk/cfdisk.c:403 +#: fdisk/cfdisk.c:404 msgid "OS/2 HPFS" msgstr "OS/2 HPFS" -#: fdisk/cfdisk.c:405 +#: fdisk/cfdisk.c:406 msgid "OS/2 IFS" msgstr "OS/2 IFS" -#: fdisk/cfdisk.c:409 +#: fdisk/cfdisk.c:410 msgid "NTFS" msgstr "NTFS" -#: fdisk/cfdisk.c:420 +#: fdisk/cfdisk.c:421 msgid "Disk has been changed.\n" msgstr "Disken er blevet udskiftet.\n" -#: fdisk/cfdisk.c:421 +#: fdisk/cfdisk.c:422 msgid "Reboot the system to ensure the partition table is correctly updated.\n" msgstr "Genstart systemet for at sikre, at partitionstabellen er opdateret korrekt.\n" -#: fdisk/cfdisk.c:424 +#: fdisk/cfdisk.c:425 msgid "" "\n" "WARNING: If you have created or modified any\n" @@ -1593,67 +984,67 @@ msgstr "" "yderligere information, hvis du har oprettet eller\n" "ændret DOS 6.x partitioner.\n" -#: fdisk/cfdisk.c:519 +#: fdisk/cfdisk.c:520 msgid "FATAL ERROR" msgstr "FATAL FEJL" -#: fdisk/cfdisk.c:528 +#: fdisk/cfdisk.c:521 msgid "Press any key to exit cfdisk" msgstr "Tryk en tast for at afslutte cfdisk" -#: fdisk/cfdisk.c:564 fdisk/cfdisk.c:572 +#: fdisk/cfdisk.c:568 fdisk/cfdisk.c:576 msgid "Cannot seek on disk drive" msgstr "Kan ikke søge på drev" -#: fdisk/cfdisk.c:566 +#: fdisk/cfdisk.c:570 msgid "Cannot read disk drive" msgstr "Kan ikke læse drev" -#: fdisk/cfdisk.c:574 +#: fdisk/cfdisk.c:578 msgid "Cannot write disk drive" msgstr "Kan ikke skrive på drev" -#: fdisk/cfdisk.c:814 +#: fdisk/cfdisk.c:818 msgid "Too many partitions" msgstr "For mange partitioner" -#: fdisk/cfdisk.c:819 +#: fdisk/cfdisk.c:823 msgid "Partition begins before sector 0" msgstr "Partition starter før sektor 0" -#: fdisk/cfdisk.c:824 +#: fdisk/cfdisk.c:828 msgid "Partition ends before sector 0" msgstr "Partition slutter før sektor 0" -#: fdisk/cfdisk.c:829 +#: fdisk/cfdisk.c:833 msgid "Partition begins after end-of-disk" msgstr "Partition starter efter slut-på-disk" -#: fdisk/cfdisk.c:834 +#: fdisk/cfdisk.c:838 msgid "Partition ends after end-of-disk" msgstr "Partition slutter efter slut-på-disk" -#: fdisk/cfdisk.c:858 +#: fdisk/cfdisk.c:862 msgid "logical partitions not in disk order" msgstr "logiske partitioner ikke i disk-rækkefølge" -#: fdisk/cfdisk.c:861 +#: fdisk/cfdisk.c:865 msgid "logical partitions overlap" msgstr "logisk partitions-overlap" -#: fdisk/cfdisk.c:863 +#: fdisk/cfdisk.c:867 msgid "enlarged logical partitions overlap" msgstr "forstørret logisk partitions-overlap" -#: fdisk/cfdisk.c:893 +#: fdisk/cfdisk.c:897 msgid "!!!! Internal error creating logical drive with no extended partition !!!!" -msgstr "!!!! Intern fejl ved oprettelse af logisk drev uden udvidet partition !!!!" +msgstr "!!!! Intern fejl under oprettelse af logisk drev uden udvidet partition !!!!" -#: fdisk/cfdisk.c:904 fdisk/cfdisk.c:916 +#: fdisk/cfdisk.c:908 fdisk/cfdisk.c:920 msgid "Cannot create logical drive here -- would create two extended partitions" msgstr "Kan ikke oprette logisk drev her -- ville resultere i to udvidede partitioner" -#: fdisk/cfdisk.c:1066 +#: fdisk/cfdisk.c:1068 msgid "Menu item too long. Menu may look odd." msgstr "Menupunkt for langt. Menu ser muligvis mærkeligt ud." @@ -1669,8 +1060,8 @@ msgstr "Ugyldig tast" msgid "Press a key to continue" msgstr "Tryk en tast for at fortsætte" -#: fdisk/cfdisk.c:1322 fdisk/cfdisk.c:1870 fdisk/cfdisk.c:2400 -#: fdisk/cfdisk.c:2402 +#: fdisk/cfdisk.c:1322 fdisk/cfdisk.c:1871 fdisk/cfdisk.c:2401 +#: fdisk/cfdisk.c:2403 msgid "Primary" msgstr "Primær" @@ -1678,8 +1069,8 @@ msgstr "Primær" msgid "Create a new primary partition" msgstr "Opret en ny primær partition" -#: fdisk/cfdisk.c:1323 fdisk/cfdisk.c:1870 fdisk/cfdisk.c:2399 -#: fdisk/cfdisk.c:2402 +#: fdisk/cfdisk.c:1323 fdisk/cfdisk.c:1871 fdisk/cfdisk.c:2400 +#: fdisk/cfdisk.c:2403 msgid "Logical" msgstr "Logisk" @@ -1687,7 +1078,7 @@ msgstr "Logisk" msgid "Create a new logical partition" msgstr "Opret en ny logisk partition" -#: fdisk/cfdisk.c:1324 fdisk/cfdisk.c:1379 fdisk/cfdisk.c:2074 +#: fdisk/cfdisk.c:1324 fdisk/cfdisk.c:1379 fdisk/cfdisk.c:2075 msgid "Cancel" msgstr "Fortryd" @@ -1735,7 +1126,7 @@ msgstr "Du angav flere cylindre end der kan være på disken" msgid "Cannot open disk drive" msgstr "Kan ikke åbne drev" -#: fdisk/cfdisk.c:1505 fdisk/cfdisk.c:1686 +#: fdisk/cfdisk.c:1505 fdisk/cfdisk.c:1684 msgid "Opened disk read-only - you have no permission to write" msgstr "Åbnede drev skrivebeskyttet - du har ikke adgang til at skrive" @@ -1743,138 +1134,138 @@ msgstr "Åbnede drev skrivebeskyttet - du har ikke adgang til at skrive" msgid "Cannot get disk size" msgstr "Kan ikke få diskstørrelsen" -#. avoid snprintf - it does not exist on ancient systems -#: fdisk/cfdisk.c:1552 +#: fdisk/cfdisk.c:1551 msgid "Bad primary partition" msgstr "Ugyldig primærpartition" -#. avoid snprintf -#: fdisk/cfdisk.c:1583 +#: fdisk/cfdisk.c:1581 msgid "Bad logical partition" msgstr "Ugyldig logisk partition" -#: fdisk/cfdisk.c:1698 +#: fdisk/cfdisk.c:1696 msgid "Warning!! This may destroy data on your disk!" msgstr "Advarsel!! Dette ødelægger muligvis data på din disk!" -#: fdisk/cfdisk.c:1702 +#: fdisk/cfdisk.c:1700 msgid "Are you sure you want write the partition table to disk? (yes or no): " msgstr "" "Er du sikke på, at du vil skrive partitionstabellen til disken? (ja eller " "nej): " -#: fdisk/cfdisk.c:1708 +#: fdisk/cfdisk.c:1706 msgid "no" msgstr "nej" -#: fdisk/cfdisk.c:1709 +#: fdisk/cfdisk.c:1707 msgid "Did not write partition table to disk" msgstr "Skrev ikke partitionstabellen til disken" -#: fdisk/cfdisk.c:1711 +#: fdisk/cfdisk.c:1709 msgid "yes" msgstr "ja" -#: fdisk/cfdisk.c:1714 +#: fdisk/cfdisk.c:1712 msgid "Please enter `yes' or `no'" msgstr "Skriv venligst 'ja' eller 'nej'" -#: fdisk/cfdisk.c:1718 +#: fdisk/cfdisk.c:1716 msgid "Writing partition table to disk..." msgstr "Skriver partitionstabel til disken..." -#: fdisk/cfdisk.c:1743 fdisk/cfdisk.c:1747 +#: fdisk/cfdisk.c:1741 fdisk/cfdisk.c:1745 msgid "Wrote partition table to disk" msgstr "Skrev partitionstabel til disken" -#: fdisk/cfdisk.c:1745 +#: fdisk/cfdisk.c:1743 msgid "Wrote partition table, but re-read table failed. Reboot to update table." msgstr "" "Skrev partitionstabel, men genindlæsning mislykkedes. Genstart for at " "opdatere tabellen." +#: fdisk/cfdisk.c:1753 +msgid "No primary partitions are marked bootable. DOS MBR cannot boot this." +msgstr "Ingen primærpartitioner er markeret opstartbar. DOS MBR vil ikke kunne starte op." + #: fdisk/cfdisk.c:1755 -msgid "Not precisely one primary partition is bootable. DOS MBR cannot boot this." -msgstr "" -"Da ikke nøjagtig én primærpartition er opstartbar, vil DOS MBR ikke kunne " -"starte op." +msgid "More than one primary partition is marked bootable. DOS MBR cannot boot this." +msgstr "Da flere primærpartitioner er opstartbare, vil DOS MBR ikke kunne starte op." -#: fdisk/cfdisk.c:1813 fdisk/cfdisk.c:1931 fdisk/cfdisk.c:2015 +#: fdisk/cfdisk.c:1813 fdisk/cfdisk.c:1932 fdisk/cfdisk.c:2016 msgid "Enter filename or press RETURN to display on screen: " msgstr "Angiv filnavn eller tryk RETUR for at vise på skærmen: " -#: fdisk/cfdisk.c:1821 fdisk/cfdisk.c:1939 fdisk/cfdisk.c:2023 +#: fdisk/cfdisk.c:1822 fdisk/cfdisk.c:1940 fdisk/cfdisk.c:2024 #, c-format msgid "Cannot open file '%s'" msgstr "Kan ikke åbne filen '%s'" -#: fdisk/cfdisk.c:1832 +#: fdisk/cfdisk.c:1833 #, c-format msgid "Disk Drive: %s\n" msgstr "Drev: %s\n" -#: fdisk/cfdisk.c:1834 +#: fdisk/cfdisk.c:1835 msgid "Sector 0:\n" msgstr "Sektor 0:\n" -#: fdisk/cfdisk.c:1841 +#: fdisk/cfdisk.c:1842 #, c-format msgid "Sector %d:\n" msgstr "Sektor %d:\n" -#: fdisk/cfdisk.c:1861 +#: fdisk/cfdisk.c:1862 msgid " None " msgstr " Ingen " -#: fdisk/cfdisk.c:1863 +#: fdisk/cfdisk.c:1864 msgid " Pri/Log" msgstr " Pri/Log" -#: fdisk/cfdisk.c:1865 +#: fdisk/cfdisk.c:1866 msgid " Primary" msgstr " Primær" -#: fdisk/cfdisk.c:1867 +#: fdisk/cfdisk.c:1868 msgid " Logical" msgstr " Logisk " #. odd flag on end #. type id #. type name -#: fdisk/cfdisk.c:1905 fdisk/fdisk.c:1234 fdisk/fdisk.c:1458 -#: fdisk/fdisksgilabel.c:238 fdisk/fdisksunlabel.c:669 fdisk/sfdisk.c:581 +#: fdisk/cfdisk.c:1906 fdisk/fdisk.c:1249 fdisk/fdisk.c:1473 +#: fdisk/fdisksgilabel.c:240 fdisk/fdisksunlabel.c:672 fdisk/sfdisk.c:581 msgid "Unknown" msgstr "Ukendt" -#: fdisk/cfdisk.c:1911 +#: fdisk/cfdisk.c:1912 #, c-format msgid "Boot (%02X)" msgstr "Opstart (%02X)" -#: fdisk/cfdisk.c:1913 fdisk/cfdisk.c:2408 +#: fdisk/cfdisk.c:1914 fdisk/cfdisk.c:2409 #, c-format msgid "Unknown (%02X)" msgstr "Ukendt (%02X)" -#: fdisk/cfdisk.c:1915 +#: fdisk/cfdisk.c:1916 #, c-format msgid "None (%02X)" msgstr "Ingen (%02X)" -#: fdisk/cfdisk.c:1950 fdisk/cfdisk.c:2034 +#: fdisk/cfdisk.c:1951 fdisk/cfdisk.c:2035 #, c-format msgid "Partition Table for %s\n" msgstr "Partitionstabel for %s\n" -#: fdisk/cfdisk.c:1952 +#: fdisk/cfdisk.c:1953 msgid " First Last\n" msgstr " Første Sidste\n" -#: fdisk/cfdisk.c:1953 +#: fdisk/cfdisk.c:1954 msgid " # Type Sector Sector Offset Length Filesystem Type (ID) Flags\n" msgstr " # Type Sektor Sektor Forskyd Længde Filsystem type (ID) Flag\n" -#: fdisk/cfdisk.c:1954 +#: fdisk/cfdisk.c:1955 msgid "" "-- ------- -------- --------- ------ --------- ---------------------- " "---------\n" @@ -1882,454 +1273,454 @@ msgstr "" "-- ------- -------- --------- ------ --------- ---------------------- " "---------\n" -#: fdisk/cfdisk.c:2036 +#: fdisk/cfdisk.c:2037 msgid " ---Starting--- ----Ending---- Start Number of\n" msgstr " --- Start----- -----Slut----- Start antal af\n" -#: fdisk/cfdisk.c:2037 +#: fdisk/cfdisk.c:2038 msgid " # Flags Head Sect Cyl ID Head Sect Cyl Sector Sectors\n" msgstr " # Flag Hovd Sekt Cyl ID Hovd Sekt Cyl Sektor Sektorer\n" -#: fdisk/cfdisk.c:2038 +#: fdisk/cfdisk.c:2039 msgid "-- ----- ---- ---- ---- ---- ---- ---- ---- -------- ---------\n" msgstr "-- ----- ---- ---- ---- ---- ---- ---- ---- -------- ---------\n" -#: fdisk/cfdisk.c:2071 +#: fdisk/cfdisk.c:2072 msgid "Raw" msgstr "Rå" -#: fdisk/cfdisk.c:2071 +#: fdisk/cfdisk.c:2072 msgid "Print the table using raw data format" msgstr "Vis tabellen i råtdata format" -#: fdisk/cfdisk.c:2072 fdisk/cfdisk.c:2174 +#: fdisk/cfdisk.c:2073 fdisk/cfdisk.c:2175 msgid "Sectors" msgstr "Sektorer" -#: fdisk/cfdisk.c:2072 +#: fdisk/cfdisk.c:2073 msgid "Print the table ordered by sectors" msgstr "Vis tabellen ordnet efter sektorer" -#: fdisk/cfdisk.c:2073 +#: fdisk/cfdisk.c:2074 msgid "Table" msgstr "Tabel" -#: fdisk/cfdisk.c:2073 +#: fdisk/cfdisk.c:2074 msgid "Just print the partition table" msgstr "Vis kun partitionstabellen" -#: fdisk/cfdisk.c:2074 +#: fdisk/cfdisk.c:2075 msgid "Don't print the table" msgstr "Vis ikke tabellen" -#: fdisk/cfdisk.c:2102 +#: fdisk/cfdisk.c:2103 msgid "Help Screen for cfdisk" msgstr "Hjælpeskærm for cfdisk" -#: fdisk/cfdisk.c:2104 +#: fdisk/cfdisk.c:2105 msgid "This is cfdisk, a curses based disk partitioning program, which" msgstr "Dette er cfdisk, et curses-baseret diskpartitionerings-program, som" -#: fdisk/cfdisk.c:2105 +#: fdisk/cfdisk.c:2106 msgid "allows you to create, delete and modify partitions on your hard" msgstr "lader dig oprette, slette eller modificere partitioner på din" -#: fdisk/cfdisk.c:2106 +#: fdisk/cfdisk.c:2107 msgid "disk drive." msgstr "harddisk." -#: fdisk/cfdisk.c:2108 +#: fdisk/cfdisk.c:2109 msgid "Copyright (C) 1994-1999 Kevin E. Martin & aeb" msgstr "Copyright (C) 1994-1999 Kevin E. Martin & aeb" -#: fdisk/cfdisk.c:2110 +#: fdisk/cfdisk.c:2111 msgid "Command Meaning" msgstr "Kommando Betydning" -#: fdisk/cfdisk.c:2111 +#: fdisk/cfdisk.c:2112 msgid "------- -------" msgstr "------- -------" -#: fdisk/cfdisk.c:2112 +#: fdisk/cfdisk.c:2113 msgid " b Toggle bootable flag of the current partition" msgstr " b Skift opstartbar-flaget for partitionen ('bootable')" -#: fdisk/cfdisk.c:2113 +#: fdisk/cfdisk.c:2114 msgid " d Delete the current partition" msgstr " d Slet partitionen" -#: fdisk/cfdisk.c:2114 +#: fdisk/cfdisk.c:2115 msgid " g Change cylinders, heads, sectors-per-track parameters" msgstr " g Ret cylinder, hoved, sektorer-per-spor parametre" -#: fdisk/cfdisk.c:2115 +#: fdisk/cfdisk.c:2116 msgid " WARNING: This option should only be used by people who" msgstr " ADVARSEL: Denne kommando bør kun bruges af folk, der" -#: fdisk/cfdisk.c:2116 +#: fdisk/cfdisk.c:2117 msgid " know what they are doing." msgstr " er klar over, hvad de gør." -#: fdisk/cfdisk.c:2117 +#: fdisk/cfdisk.c:2118 msgid " h Print this screen" msgstr " h Vis denne skærm" -#: fdisk/cfdisk.c:2118 +#: fdisk/cfdisk.c:2119 msgid " m Maximize disk usage of the current partition" msgstr " m Maksimér partitionens diskforbrug" -#: fdisk/cfdisk.c:2119 +#: fdisk/cfdisk.c:2120 msgid " Note: This may make the partition incompatible with" msgstr " Bemærk: Dette kan gøre partitionen inkompatibel med" -#: fdisk/cfdisk.c:2120 +#: fdisk/cfdisk.c:2121 msgid " DOS, OS/2, ..." msgstr " DOS, OS/2, ..." -#: fdisk/cfdisk.c:2121 +#: fdisk/cfdisk.c:2122 msgid " n Create new partition from free space" msgstr " n Opret ny partition i frit område" -#: fdisk/cfdisk.c:2122 +#: fdisk/cfdisk.c:2123 msgid " p Print partition table to the screen or to a file" msgstr " p Udlæs partitionstabellen til skærmen eller en fil" -#: fdisk/cfdisk.c:2123 +#: fdisk/cfdisk.c:2124 msgid " There are several different formats for the partition" msgstr " Der er flere forskellige formater på partitionen," -#: fdisk/cfdisk.c:2124 +#: fdisk/cfdisk.c:2125 msgid " that you can choose from:" msgstr " som du kan vælge mellem:" -#: fdisk/cfdisk.c:2125 +#: fdisk/cfdisk.c:2126 msgid " r - Raw data (exactly what would be written to disk)" msgstr " r - Rådata (nøjagtig de, som ville skrives på disken)" -#: fdisk/cfdisk.c:2126 +#: fdisk/cfdisk.c:2127 msgid " s - Table ordered by sectors" msgstr " s - Tabel ordnet efter sektorer" -#: fdisk/cfdisk.c:2127 +#: fdisk/cfdisk.c:2128 msgid " t - Table in raw format" msgstr " t - Tabel i rådata format" -#: fdisk/cfdisk.c:2128 +#: fdisk/cfdisk.c:2129 msgid " q Quit program without writing partition table" msgstr " q Afslut program uden at skrive partitionstabellen" -#: fdisk/cfdisk.c:2129 +#: fdisk/cfdisk.c:2130 msgid " t Change the filesystem type" msgstr " t Skift filsystem type" -#: fdisk/cfdisk.c:2130 +#: fdisk/cfdisk.c:2131 msgid " u Change units of the partition size display" msgstr " u Skift enhed for visning af partitionsstørrelser" -#: fdisk/cfdisk.c:2131 +#: fdisk/cfdisk.c:2132 msgid " Rotates through MB, sectors and cylinders" -msgstr " Skifter mellem MB, sektorer og cylindrer" +msgstr " Skifter mellem MB, sektorer og cylindre" -#: fdisk/cfdisk.c:2132 +#: fdisk/cfdisk.c:2133 msgid " W Write partition table to disk (must enter upper case W)" msgstr " W Skriv partitionstabellen til disk (skal være stort W)" -#: fdisk/cfdisk.c:2133 +#: fdisk/cfdisk.c:2134 msgid " Since this might destroy data on the disk, you must" msgstr " Siden dette kan ødelægge data på disken, skal du enten" -#: fdisk/cfdisk.c:2134 +#: fdisk/cfdisk.c:2135 msgid " either confirm or deny the write by entering `yes' or" msgstr " bekræfte eller afvise ved at skrive henholdsvis 'ja'" -#: fdisk/cfdisk.c:2135 +#: fdisk/cfdisk.c:2136 msgid " `no'" msgstr " eller 'nej'" -#: fdisk/cfdisk.c:2136 +#: fdisk/cfdisk.c:2137 msgid "Up Arrow Move cursor to the previous partition" msgstr "Pil op Flyt markøren til forrige partition" -#: fdisk/cfdisk.c:2137 +#: fdisk/cfdisk.c:2138 msgid "Down Arrow Move cursor to the next partition" msgstr "Pil ned Flyt markøren til næste partition" -#: fdisk/cfdisk.c:2138 +#: fdisk/cfdisk.c:2139 msgid "CTRL-L Redraws the screen" msgstr "CTRL-L Gentegner skærmen" -#: fdisk/cfdisk.c:2139 +#: fdisk/cfdisk.c:2140 msgid " ? Print this screen" msgstr " ? Vis denne skærm" -#: fdisk/cfdisk.c:2141 +#: fdisk/cfdisk.c:2142 msgid "Note: All of the commands can be entered with either upper or lower" msgstr "Bemærk: Alle kommandoerne kan angives med enten store eller små" -#: fdisk/cfdisk.c:2142 +#: fdisk/cfdisk.c:2143 msgid "case letters (except for Writes)." msgstr "bogstaver (undtagen W)." -#: fdisk/cfdisk.c:2172 fdisk/cfdisk.c:2494 fdisk/fdisksunlabel.c:318 +#: fdisk/cfdisk.c:2173 fdisk/cfdisk.c:2495 fdisk/fdisksunlabel.c:318 #: fdisk/fdisksunlabel.c:320 msgid "Cylinders" msgstr "Cylindre" -#: fdisk/cfdisk.c:2172 +#: fdisk/cfdisk.c:2173 msgid "Change cylinder geometry" msgstr "Skift cylindergeometri" -#: fdisk/cfdisk.c:2173 fdisk/fdisksunlabel.c:315 +#: fdisk/cfdisk.c:2174 fdisk/fdisksunlabel.c:315 msgid "Heads" msgstr "Hoveder" -#: fdisk/cfdisk.c:2173 +#: fdisk/cfdisk.c:2174 msgid "Change head geometry" msgstr "Skift hovedgeometri" -#: fdisk/cfdisk.c:2174 +#: fdisk/cfdisk.c:2175 msgid "Change sector geometry" msgstr "Skift sektorgeometri" -#: fdisk/cfdisk.c:2175 +#: fdisk/cfdisk.c:2176 msgid "Done" msgstr "Færdig" -#: fdisk/cfdisk.c:2175 +#: fdisk/cfdisk.c:2176 msgid "Done with changing geometry" msgstr "Færdig med geometriændring" -#: fdisk/cfdisk.c:2188 +#: fdisk/cfdisk.c:2189 msgid "Enter the number of cylinders: " msgstr "Angiv antallet af cylindre: " -#: fdisk/cfdisk.c:2200 fdisk/cfdisk.c:2762 +#: fdisk/cfdisk.c:2201 fdisk/cfdisk.c:2763 msgid "Illegal cylinders value" msgstr "Ugyldigt cylinderantal" -#: fdisk/cfdisk.c:2206 +#: fdisk/cfdisk.c:2207 msgid "Enter the number of heads: " msgstr "Angiv antallet af hoveder: " -#: fdisk/cfdisk.c:2213 fdisk/cfdisk.c:2772 +#: fdisk/cfdisk.c:2214 fdisk/cfdisk.c:2773 msgid "Illegal heads value" msgstr "Ugyldig hovedantal" -#: fdisk/cfdisk.c:2219 +#: fdisk/cfdisk.c:2220 msgid "Enter the number of sectors per track: " msgstr "Angiv antallet af sektorer per spor: " -#: fdisk/cfdisk.c:2226 fdisk/cfdisk.c:2779 +#: fdisk/cfdisk.c:2227 fdisk/cfdisk.c:2780 msgid "Illegal sectors value" msgstr "Ugyldig sektorantal" -#: fdisk/cfdisk.c:2329 +#: fdisk/cfdisk.c:2330 msgid "Enter filesystem type: " msgstr "Angiv filsystemtype: " -#: fdisk/cfdisk.c:2347 +#: fdisk/cfdisk.c:2348 msgid "Cannot change FS Type to empty" -msgstr "Kn ikke ændre FS type til tom" +msgstr "Kan ikke ændre filsystemtype til tom" -#: fdisk/cfdisk.c:2349 +#: fdisk/cfdisk.c:2350 msgid "Cannot change FS Type to extended" -msgstr "Kan ikke ændre FS type til udvidet" +msgstr "Kan ikke ændre filsystemtype til udvidet" -#: fdisk/cfdisk.c:2377 fdisk/fdisksunlabel.c:44 +#: fdisk/cfdisk.c:2378 fdisk/fdisksunlabel.c:44 msgid "Boot" msgstr "Opstart" -#: fdisk/cfdisk.c:2379 +#: fdisk/cfdisk.c:2380 #, c-format msgid "Unk(%02X)" msgstr "Ukt(%02X)" -#: fdisk/cfdisk.c:2382 fdisk/cfdisk.c:2385 +#: fdisk/cfdisk.c:2383 fdisk/cfdisk.c:2386 msgid ", NC" msgstr ", NC" -#: fdisk/cfdisk.c:2390 fdisk/cfdisk.c:2393 +#: fdisk/cfdisk.c:2391 fdisk/cfdisk.c:2394 msgid "NC" msgstr "NC" -#: fdisk/cfdisk.c:2401 +#: fdisk/cfdisk.c:2402 msgid "Pri/Log" msgstr "Pri/Log" -#: fdisk/cfdisk.c:2477 +#: fdisk/cfdisk.c:2478 #, c-format msgid "Disk Drive: %s" msgstr "Drev: %s" -#: fdisk/cfdisk.c:2480 +#: fdisk/cfdisk.c:2481 #, c-format msgid "Size: %lld bytes" msgstr "Størrelse: %lld byte" -#: fdisk/cfdisk.c:2482 +#: fdisk/cfdisk.c:2483 #, c-format msgid "Heads: %d Sectors per Track: %d Cylinders: %d" msgstr "Hoveder: %d Sektorer per spor: %d Cylindre: %d" -#: fdisk/cfdisk.c:2486 +#: fdisk/cfdisk.c:2487 msgid "Name" msgstr "Navn" -#: fdisk/cfdisk.c:2487 +#: fdisk/cfdisk.c:2488 msgid "Flags" msgstr "Flag" -#: fdisk/cfdisk.c:2488 +#: fdisk/cfdisk.c:2489 msgid "Part Type" msgstr "Part-type" -#: fdisk/cfdisk.c:2489 +#: fdisk/cfdisk.c:2490 msgid "FS Type" -msgstr "FS-type" +msgstr "Fs-type" -#: fdisk/cfdisk.c:2490 +#: fdisk/cfdisk.c:2491 msgid "[Label]" msgstr "[Mærkat]" -#: fdisk/cfdisk.c:2492 +#: fdisk/cfdisk.c:2493 msgid " Sectors" msgstr " Sektorer" -#: fdisk/cfdisk.c:2496 +#: fdisk/cfdisk.c:2497 msgid "Size (MB)" msgstr "Størrelse (MB)" -#: fdisk/cfdisk.c:2498 +#: fdisk/cfdisk.c:2499 msgid "Size (GB)" msgstr "Størrelse (GB)" -#: fdisk/cfdisk.c:2553 +#: fdisk/cfdisk.c:2554 msgid "Bootable" msgstr "Opstartbar" -#: fdisk/cfdisk.c:2553 +#: fdisk/cfdisk.c:2554 msgid "Toggle bootable flag of the current partition" msgstr "Skift opstartbar-flaget for partitionen ('bootable')" -#: fdisk/cfdisk.c:2554 +#: fdisk/cfdisk.c:2555 msgid "Delete" msgstr "Slet" -#: fdisk/cfdisk.c:2554 +#: fdisk/cfdisk.c:2555 msgid "Delete the current partition" msgstr "Slet partitionen" -#: fdisk/cfdisk.c:2555 +#: fdisk/cfdisk.c:2556 msgid "Geometry" msgstr "Geometri" -#: fdisk/cfdisk.c:2555 +#: fdisk/cfdisk.c:2556 msgid "Change disk geometry (experts only)" msgstr "Skift diskgeometri (kun for eksperter)" -#: fdisk/cfdisk.c:2556 +#: fdisk/cfdisk.c:2557 msgid "Help" msgstr "Hjælp" -#: fdisk/cfdisk.c:2556 +#: fdisk/cfdisk.c:2557 msgid "Print help screen" msgstr "Vis hjælpeskærm" -#: fdisk/cfdisk.c:2557 +#: fdisk/cfdisk.c:2558 msgid "Maximize" msgstr "Maksimér" -#: fdisk/cfdisk.c:2557 +#: fdisk/cfdisk.c:2558 msgid "Maximize disk usage of the current partition (experts only)" -msgstr "Maximér diskforbruget for partitionen (kun for eksperter)" +msgstr "Maksimér diskforbruget for partitionen (kun for eksperter)" -#: fdisk/cfdisk.c:2558 +#: fdisk/cfdisk.c:2559 msgid "New" msgstr "Ny" -#: fdisk/cfdisk.c:2558 +#: fdisk/cfdisk.c:2559 msgid "Create new partition from free space" msgstr "Opret ny partition i frit område" -#: fdisk/cfdisk.c:2559 +#: fdisk/cfdisk.c:2560 msgid "Print" msgstr "Udlæs" -#: fdisk/cfdisk.c:2559 +#: fdisk/cfdisk.c:2560 msgid "Print partition table to the screen or to a file" msgstr "Udlæs partitionstabellen til skærmen eller til en fil" -#: fdisk/cfdisk.c:2560 +#: fdisk/cfdisk.c:2561 msgid "Quit" msgstr "Afslut" -#: fdisk/cfdisk.c:2560 +#: fdisk/cfdisk.c:2561 msgid "Quit program without writing partition table" msgstr "Afslut program uden at ændre partitionstabellen" -#: fdisk/cfdisk.c:2561 +#: fdisk/cfdisk.c:2562 msgid "Type" msgstr "Type" -#: fdisk/cfdisk.c:2561 +#: fdisk/cfdisk.c:2562 msgid "Change the filesystem type (DOS, Linux, OS/2 and so on)" msgstr "Skift filsystemtype (DOS, Linux, OS/2 osv.)" -#: fdisk/cfdisk.c:2562 +#: fdisk/cfdisk.c:2563 msgid "Units" msgstr "Enheder" -#: fdisk/cfdisk.c:2562 +#: fdisk/cfdisk.c:2563 msgid "Change units of the partition size display (MB, sect, cyl)" msgstr "Skift enheder for visning af partitionstabellen (MB, sekt, cyl)" -#: fdisk/cfdisk.c:2563 +#: fdisk/cfdisk.c:2564 msgid "Write" msgstr "Skriv" -#: fdisk/cfdisk.c:2563 +#: fdisk/cfdisk.c:2564 msgid "Write partition table to disk (this might destroy data)" msgstr "Skriv partitionstabellen til disk (dette kan ødelægge data)" -#: fdisk/cfdisk.c:2609 +#: fdisk/cfdisk.c:2610 msgid "Cannot make this partition bootable" msgstr "Kan ikke gøre denne partition opstartbar" -#: fdisk/cfdisk.c:2619 +#: fdisk/cfdisk.c:2620 msgid "Cannot delete an empty partition" msgstr "Kan ikke slette en tom partition" -#: fdisk/cfdisk.c:2639 fdisk/cfdisk.c:2641 +#: fdisk/cfdisk.c:2640 fdisk/cfdisk.c:2642 msgid "Cannot maximize this partition" msgstr "Kan ikke maksimere denne partition" -#: fdisk/cfdisk.c:2649 +#: fdisk/cfdisk.c:2650 msgid "This partition is unusable" msgstr "Denne partition er ubrugelig" -#: fdisk/cfdisk.c:2651 +#: fdisk/cfdisk.c:2652 msgid "This partition is already in use" msgstr "Denne partition er allerede i brug" -#: fdisk/cfdisk.c:2668 +#: fdisk/cfdisk.c:2669 msgid "Cannot change the type of an empty partition" msgstr "Kan ikke ændre en tom partitions type" -#: fdisk/cfdisk.c:2695 fdisk/cfdisk.c:2701 +#: fdisk/cfdisk.c:2696 fdisk/cfdisk.c:2702 msgid "No more partitions" msgstr "Ikke flere partitioner" -#: fdisk/cfdisk.c:2708 +#: fdisk/cfdisk.c:2709 msgid "Illegal command" msgstr "Ugyldig kommando" -#: fdisk/cfdisk.c:2718 +#: fdisk/cfdisk.c:2719 msgid "Copyright (C) 1994-2000 Kevin E. Martin & aeb\n" msgstr "Copyright (C) 1994-2000 Kevin E. Martin & aeb\n" #. Unfortunately, xgettext does not handle multi-line strings #. so, let's use explicit \n's instead -#: fdisk/cfdisk.c:2725 +#: fdisk/cfdisk.c:2726 #, c-format msgid "" "\n" @@ -2359,7 +1750,7 @@ msgstr "" "\n" "Tilvalg:\n" "-a: Brug pil i stedet for baggrundsfyld;\n" -"-z: Ster med en tom partitionstabel i stedet for at læse diskens;\n" +"-z: Start med en tom partitionstabel i stedet for at læse diskens;\n" "-c C -h H -s S: Underkend kernens ide om antallet af cylindre,\n" " hoveder og sektorer/spor.\n" "\n" @@ -2400,8 +1791,8 @@ msgstr "" "\n" "BSD-mærkat for enhed: %s\n" -#: fdisk/fdisk.c:312 fdisk/fdisk.c:331 fdisk/fdisk.c:349 fdisk/fdisk.c:356 -#: fdisk/fdisk.c:379 fdisk/fdisk.c:397 fdisk/fdisk.c:413 fdisk/fdisk.c:429 +#: fdisk/fdisk.c:318 fdisk/fdisk.c:337 fdisk/fdisk.c:355 fdisk/fdisk.c:362 +#: fdisk/fdisk.c:385 fdisk/fdisk.c:403 fdisk/fdisk.c:419 fdisk/fdisk.c:435 #: fdisk/fdiskbsdlabel.c:124 msgid "Command action" msgstr "Kommando beskrivelse" @@ -2423,8 +1814,8 @@ msgid " l list known filesystem types" msgstr " l vis liste over filsystemtyper" #. sun -#: fdisk/fdisk.c:318 fdisk/fdisk.c:337 fdisk/fdisk.c:350 fdisk/fdisk.c:362 -#: fdisk/fdisk.c:387 fdisk/fdisk.c:404 fdisk/fdisk.c:420 fdisk/fdisk.c:437 +#: fdisk/fdisk.c:324 fdisk/fdisk.c:343 fdisk/fdisk.c:356 fdisk/fdisk.c:368 +#: fdisk/fdisk.c:393 fdisk/fdisk.c:410 fdisk/fdisk.c:426 fdisk/fdisk.c:443 #: fdisk/fdiskbsdlabel.c:129 msgid " m print this menu" msgstr " m vis denne menu" @@ -2437,13 +1828,13 @@ msgstr " n tilføj en ny BSD-partition" msgid " p print BSD partition table" msgstr " p vis BSD-partitionstabel" -#: fdisk/fdisk.c:322 fdisk/fdisk.c:341 fdisk/fdisk.c:352 fdisk/fdisk.c:366 -#: fdisk/fdisk.c:389 fdisk/fdisk.c:406 fdisk/fdisk.c:422 fdisk/fdisk.c:439 +#: fdisk/fdisk.c:328 fdisk/fdisk.c:347 fdisk/fdisk.c:358 fdisk/fdisk.c:372 +#: fdisk/fdisk.c:395 fdisk/fdisk.c:412 fdisk/fdisk.c:428 fdisk/fdisk.c:445 #: fdisk/fdiskbsdlabel.c:132 msgid " q quit without saving changes" msgstr " q afslut uden at gemme ændringerne" -#: fdisk/fdisk.c:390 fdisk/fdisk.c:407 fdisk/fdisk.c:423 fdisk/fdisk.c:440 +#: fdisk/fdisk.c:396 fdisk/fdisk.c:413 fdisk/fdisk.c:429 fdisk/fdisk.c:446 #: fdisk/fdiskbsdlabel.c:133 msgid " r return to main menu" msgstr " r returnér til hovedmenuen" @@ -2487,13 +1878,13 @@ msgstr "Der er ingen *BSD-partitioner på %s.\n" msgid "BSD disklabel command (m for help): " msgstr "BSD-diskmærkat kommando (m for hjælp): " -#: fdisk/fdisk.c:1644 fdisk/fdiskbsdlabel.c:276 fdisk/fdisksgilabel.c:684 -#: fdisk/fdisksunlabel.c:517 +#: fdisk/fdisk.c:1659 fdisk/fdiskbsdlabel.c:276 fdisk/fdisksgilabel.c:686 +#: fdisk/fdisksunlabel.c:518 #, c-format msgid "First %s" msgstr "Første %s" -#: fdisk/fdisk.c:1703 fdisk/fdiskbsdlabel.c:283 fdisk/fdisksunlabel.c:552 +#: fdisk/fdisk.c:1719 fdisk/fdiskbsdlabel.c:283 fdisk/fdisksunlabel.c:554 #, c-format msgid "Last %s or +size or +sizeM or +sizeK" msgstr "Sidste %s eller +størrelse eller +størrelseM eller +størrelseK" @@ -2634,7 +2025,7 @@ msgstr "sektorer/spor" msgid "tracks/cylinder" msgstr "spor/cylinder" -#: fdisk/fdisk.c:551 fdisk/fdisk.c:1067 fdisk/fdiskbsdlabel.c:461 +#: fdisk/fdisk.c:557 fdisk/fdisk.c:1077 fdisk/fdiskbsdlabel.c:461 #: fdisk/sfdisk.c:864 msgid "cylinders" msgstr "cylindre" @@ -2676,40 +2067,40 @@ msgstr "spor-til-spor søgning" msgid "Bootstrap: %sboot -> boot%s (%s): " msgstr "Opstarts-igangsætter: %sopstart -> opstart%s (%s): " -#: fdisk/fdiskbsdlabel.c:546 +#: fdisk/fdiskbsdlabel.c:545 msgid "Bootstrap overlaps with disk label!\n" msgstr "Opstarts-igangsætter overlapper med diskmærkatet!\n" -#: fdisk/fdiskbsdlabel.c:567 fdisk/fdiskbsdlabel.c:569 +#: fdisk/fdiskbsdlabel.c:566 fdisk/fdiskbsdlabel.c:568 #, c-format msgid "Bootstrap installed on %s.\n" msgstr "Opstarts-igangsætter installeret på %s.\n" -#: fdisk/fdiskbsdlabel.c:591 +#: fdisk/fdiskbsdlabel.c:590 #, c-format msgid "Partition (a-%c): " msgstr "Partition (a-%c): " -#: fdisk/fdisk.c:1776 fdisk/fdiskbsdlabel.c:611 +#: fdisk/fdisk.c:1792 fdisk/fdiskbsdlabel.c:610 msgid "The maximum number of partitions has been created\n" msgstr "Det maksimale antal partitioner er blevet oprettet\n" -#: fdisk/fdiskbsdlabel.c:622 +#: fdisk/fdiskbsdlabel.c:621 msgid "This partition already exists.\n" msgstr "Denne partition eksisterer allerede.\n" -#: fdisk/fdiskbsdlabel.c:742 +#: fdisk/fdiskbsdlabel.c:741 #, c-format msgid "Warning: too many partitions (%d, maximum is %d).\n" msgstr "Advarsel: for mange partitioner (%d, maksimum er %d).\n" -#: fdisk/fdiskbsdlabel.c:789 +#: fdisk/fdiskbsdlabel.c:788 msgid "" "\n" "Syncing disks.\n" msgstr "" "\n" -"Syncing disks.\n" +"Synkroniserer diske.\n" #: fdisk/fdisk.c:205 msgid "" @@ -2747,193 +2138,193 @@ msgstr "" " eller: fdisk /dev/rd/c0d0 eller: fdisk /dev/ida/c0d0 (for RAID-enheder)\n" " ...\n" -#: fdisk/fdisk.c:225 +#: fdisk/fdisk.c:226 #, c-format msgid "Unable to open %s\n" msgstr "Kunne ikke åbne %s\n" -#: fdisk/fdisk.c:228 +#: fdisk/fdisk.c:230 #, c-format msgid "Unable to read %s\n" msgstr "Kunne ikke læse %s\n" -#: fdisk/fdisk.c:231 +#: fdisk/fdisk.c:234 #, c-format msgid "Unable to seek on %s\n" msgstr "Kunne ikke søge til %s\n" -#: fdisk/fdisk.c:234 +#: fdisk/fdisk.c:238 #, c-format msgid "Unable to write %s\n" msgstr "Kunne ikke skrive %s\n" -#: fdisk/fdisk.c:237 +#: fdisk/fdisk.c:242 #, c-format msgid "BLKGETSIZE ioctl failed on %s\n" msgstr "BLKGETSIZE ioctl mislykkedes på %s\n" -#: fdisk/fdisk.c:241 +#: fdisk/fdisk.c:246 msgid "Unable to allocate any more memory\n" msgstr "Kunne ikke allokere mere hukommelse\n" -#: fdisk/fdisk.c:243 +#: fdisk/fdisk.c:249 msgid "Fatal error\n" msgstr "Fatal fejl\n" -#: fdisk/fdisk.c:313 +#: fdisk/fdisk.c:319 msgid " a toggle a read only flag" msgstr " a skift et skrivebeskyttelses-flag" #. sun -#: fdisk/fdisk.c:314 fdisk/fdisk.c:358 +#: fdisk/fdisk.c:320 fdisk/fdisk.c:364 msgid " b edit bsd disklabel" msgstr " b skift bsd-diskmærkat" -#: fdisk/fdisk.c:315 +#: fdisk/fdisk.c:321 msgid " c toggle the mountable flag" msgstr " c skift montérbart-flag" #. sun -#: fdisk/fdisk.c:316 fdisk/fdisk.c:335 fdisk/fdisk.c:360 +#: fdisk/fdisk.c:322 fdisk/fdisk.c:341 fdisk/fdisk.c:366 msgid " d delete a partition" msgstr " d slet en partition" -#: fdisk/fdisk.c:317 fdisk/fdisk.c:336 fdisk/fdisk.c:361 +#: fdisk/fdisk.c:323 fdisk/fdisk.c:342 fdisk/fdisk.c:367 msgid " l list known partition types" msgstr " l vis liste over kendte partitionstyper" -#: fdisk/fdisk.c:319 fdisk/fdisk.c:338 fdisk/fdisk.c:363 +#: fdisk/fdisk.c:325 fdisk/fdisk.c:344 fdisk/fdisk.c:369 msgid " n add a new partition" msgstr " n tilføj en ny partition" -#: fdisk/fdisk.c:320 fdisk/fdisk.c:339 fdisk/fdisk.c:351 fdisk/fdisk.c:364 +#: fdisk/fdisk.c:326 fdisk/fdisk.c:345 fdisk/fdisk.c:357 fdisk/fdisk.c:370 msgid " o create a new empty DOS partition table" msgstr " o opret en ny, tom DOS-partitionstabel" -#: fdisk/fdisk.c:321 fdisk/fdisk.c:340 fdisk/fdisk.c:365 fdisk/fdisk.c:388 -#: fdisk/fdisk.c:405 fdisk/fdisk.c:421 fdisk/fdisk.c:438 +#: fdisk/fdisk.c:327 fdisk/fdisk.c:346 fdisk/fdisk.c:371 fdisk/fdisk.c:394 +#: fdisk/fdisk.c:411 fdisk/fdisk.c:427 fdisk/fdisk.c:444 msgid " p print the partition table" msgstr " p vis partitionstabellen" -#: fdisk/fdisk.c:323 fdisk/fdisk.c:342 fdisk/fdisk.c:353 fdisk/fdisk.c:367 +#: fdisk/fdisk.c:329 fdisk/fdisk.c:348 fdisk/fdisk.c:359 fdisk/fdisk.c:373 msgid " s create a new empty Sun disklabel" msgstr " s opret en ny, tom Sun-diskmærkat" #. sun -#: fdisk/fdisk.c:324 fdisk/fdisk.c:343 fdisk/fdisk.c:368 +#: fdisk/fdisk.c:330 fdisk/fdisk.c:349 fdisk/fdisk.c:374 msgid " t change a partition's system id" msgstr " t skift system-id for en partition" -#: fdisk/fdisk.c:325 fdisk/fdisk.c:344 fdisk/fdisk.c:369 +#: fdisk/fdisk.c:331 fdisk/fdisk.c:350 fdisk/fdisk.c:375 msgid " u change display/entry units" msgstr " u skift enheder for visning/indtastning" -#: fdisk/fdisk.c:326 fdisk/fdisk.c:345 fdisk/fdisk.c:370 fdisk/fdisk.c:392 -#: fdisk/fdisk.c:409 fdisk/fdisk.c:425 fdisk/fdisk.c:442 +#: fdisk/fdisk.c:332 fdisk/fdisk.c:351 fdisk/fdisk.c:376 fdisk/fdisk.c:398 +#: fdisk/fdisk.c:415 fdisk/fdisk.c:431 fdisk/fdisk.c:448 msgid " v verify the partition table" msgstr " v verificér partitionstabellen" -#: fdisk/fdisk.c:327 fdisk/fdisk.c:346 fdisk/fdisk.c:371 fdisk/fdisk.c:393 -#: fdisk/fdisk.c:410 fdisk/fdisk.c:426 fdisk/fdisk.c:443 +#: fdisk/fdisk.c:333 fdisk/fdisk.c:352 fdisk/fdisk.c:377 fdisk/fdisk.c:399 +#: fdisk/fdisk.c:416 fdisk/fdisk.c:432 fdisk/fdisk.c:449 msgid " w write table to disk and exit" msgstr " w skriv partitionstabel til disk og afslut" -#: fdisk/fdisk.c:328 fdisk/fdisk.c:372 +#: fdisk/fdisk.c:334 fdisk/fdisk.c:378 msgid " x extra functionality (experts only)" msgstr " x ekstra funktionalitet (kun for eksperter)" -#: fdisk/fdisk.c:332 +#: fdisk/fdisk.c:338 msgid " a select bootable partition" msgstr " a vælg en opstartbar partition" #. sgi flavour -#: fdisk/fdisk.c:333 +#: fdisk/fdisk.c:339 msgid " b edit bootfile entry" msgstr " b redigér indgang i opstartsfil" #. sgi -#: fdisk/fdisk.c:334 +#: fdisk/fdisk.c:340 msgid " c select sgi swap partition" msgstr " c vælg sgi swap-partition" -#: fdisk/fdisk.c:357 +#: fdisk/fdisk.c:363 msgid " a toggle a bootable flag" msgstr " a skift opstartbar-flaget" -#: fdisk/fdisk.c:359 +#: fdisk/fdisk.c:365 msgid " c toggle the dos compatibility flag" msgstr " c skift DOS-kompatilitets-flaget" -#: fdisk/fdisk.c:380 +#: fdisk/fdisk.c:386 msgid " a change number of alternate cylinders" msgstr " a ændr antallet af alternative cylindre" #. sun -#: fdisk/fdisk.c:381 fdisk/fdisk.c:399 fdisk/fdisk.c:415 fdisk/fdisk.c:431 +#: fdisk/fdisk.c:387 fdisk/fdisk.c:405 fdisk/fdisk.c:421 fdisk/fdisk.c:437 msgid " c change number of cylinders" msgstr " c ændr antallet af cylindre" -#: fdisk/fdisk.c:382 fdisk/fdisk.c:400 fdisk/fdisk.c:416 fdisk/fdisk.c:432 +#: fdisk/fdisk.c:388 fdisk/fdisk.c:406 fdisk/fdisk.c:422 fdisk/fdisk.c:438 msgid " d print the raw data in the partition table" msgstr " d vis rådataene fra partitionstabellen" -#: fdisk/fdisk.c:383 +#: fdisk/fdisk.c:389 msgid " e change number of extra sectors per cylinder" msgstr " e ændr antallet af ekstra sektorer per cylinder" #. sun -#: fdisk/fdisk.c:384 fdisk/fdisk.c:403 fdisk/fdisk.c:419 fdisk/fdisk.c:436 +#: fdisk/fdisk.c:390 fdisk/fdisk.c:409 fdisk/fdisk.c:425 fdisk/fdisk.c:442 msgid " h change number of heads" msgstr " h ændr antallet af hoveder" -#: fdisk/fdisk.c:385 +#: fdisk/fdisk.c:391 msgid " i change interleave factor" msgstr " i ændr interleavefaktor" #. sun -#: fdisk/fdisk.c:386 +#: fdisk/fdisk.c:392 msgid " o change rotation speed (rpm)" msgstr " o ændr rotationshastighed (omdr. per minut)" -#: fdisk/fdisk.c:391 fdisk/fdisk.c:408 fdisk/fdisk.c:424 fdisk/fdisk.c:441 +#: fdisk/fdisk.c:397 fdisk/fdisk.c:414 fdisk/fdisk.c:430 fdisk/fdisk.c:447 msgid " s change number of sectors/track" msgstr " s ændr antallet af sektorer/spor" -#: fdisk/fdisk.c:394 +#: fdisk/fdisk.c:400 msgid " y change number of physical cylinders" msgstr " y ændr antallet af fysiske cylindre" -#: fdisk/fdisk.c:398 fdisk/fdisk.c:414 fdisk/fdisk.c:430 +#: fdisk/fdisk.c:404 fdisk/fdisk.c:420 fdisk/fdisk.c:436 msgid " b move beginning of data in a partition" msgstr " b flyt starten på data i en partition" -#: fdisk/fdisk.c:401 fdisk/fdisk.c:417 fdisk/fdisk.c:433 +#: fdisk/fdisk.c:407 fdisk/fdisk.c:423 fdisk/fdisk.c:439 msgid " e list extended partitions" msgstr " e vis udvidede partitioner" #. !sun -#: fdisk/fdisk.c:402 fdisk/fdisk.c:418 fdisk/fdisk.c:435 +#: fdisk/fdisk.c:408 fdisk/fdisk.c:424 fdisk/fdisk.c:441 msgid " g create an IRIX partition table" msgstr " g opret en IRIX partitionstabel" #. !sun -#: fdisk/fdisk.c:434 +#: fdisk/fdisk.c:440 msgid " f fix partition order" msgstr " f ordn partitionsrækkefølgen" -#: fdisk/fdisk.c:533 +#: fdisk/fdisk.c:539 msgid "You must set" msgstr "Du skal angive" -#: fdisk/fdisk.c:547 +#: fdisk/fdisk.c:553 msgid "heads" msgstr "hoveder" -#: fdisk/fdisk.c:549 fdisk/fdisk.c:1067 fdisk/sfdisk.c:864 +#: fdisk/fdisk.c:555 fdisk/fdisk.c:1077 fdisk/sfdisk.c:864 msgid "sectors" msgstr "sektorer" -#: fdisk/fdisk.c:555 +#: fdisk/fdisk.c:561 #, c-format msgid "" "%s%s.\n" @@ -2942,30 +2333,49 @@ msgstr "" "%s%s.\n" "Dette kan du gøre fra menuen 'Ekstra funktioner'.\n" -#: fdisk/fdisk.c:556 +#: fdisk/fdisk.c:562 msgid " and " msgstr " og " -#: fdisk/fdisk.c:596 +#: fdisk/fdisk.c:579 +#, c-format +msgid "" +"\n" +"The number of cylinders for this disk is set to %d.\n" +"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" +msgstr "" +"\n" +"Antallet af cylindre er sat til %d for denne disk.\n" +"Det er der intet galt med, men da det er større end 1024,\n" +"kan det i visse opsætninger give problemer med:\n" +"1) programmer, der kører tidligt i opstarten (bl.a. gamle LILO-versioner)\n" +"2) opstarts- og partitioneringsprogrammer fra andre OS'er\n" +" (Bl.a. DOS FDISK og OS/2 FDISK)\n" + +#: fdisk/fdisk.c:602 msgid "Bad offset in primary extended partition\n" msgstr "Ugyldig forskydning i primær udvidet partition\n" -#: fdisk/fdisk.c:610 +#: fdisk/fdisk.c:616 #, c-format msgid "Warning: deleting partitions after %d\n" -msgstr "Advarsel: sleter partitioner efter %d\n" +msgstr "Advarsel: sletter partitioner efter %d\n" -#: fdisk/fdisk.c:626 +#: fdisk/fdisk.c:633 #, c-format msgid "Warning: extra link pointer in partition table %d\n" msgstr "Advarsel: ekstra lænkepeger (link pointer) i partitionstabel %d\n" -#: fdisk/fdisk.c:634 +#: fdisk/fdisk.c:641 #, c-format msgid "Warning: ignoring extra data in partition table %d\n" msgstr "Advarsel: ignorerer ekstra data i partitionstabel %d\n" -#: fdisk/fdisk.c:678 +#: fdisk/fdisk.c:686 msgid "" "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" @@ -2977,16 +2387,16 @@ msgstr "" "indhold naturligvis ikke genskabes\n" "\n" -#: fdisk/fdisk.c:721 +#: fdisk/fdisk.c:728 #, c-format msgid "Note: sector size is %d (not %d)\n" msgstr "Bemærk: sektorstørrelsen er %d (ikke %d)\n" -#: fdisk/fdisk.c:804 +#: fdisk/fdisk.c:811 msgid "You will not be able to write the partition table.\n" msgstr "Du vil ikke kunne gemme partitionstabellen.\n" -#: fdisk/fdisk.c:832 +#: fdisk/fdisk.c:839 msgid "" "Device contains neither a valid DOS partition table, nor Sun, SGI or OSF " "disklabel\n" @@ -2994,16 +2404,16 @@ msgstr "" "Enheden indeholder hverken en gyldig DOS-partitionstabel eller et Sun-, SGI- " "eller OSF-diskmærkat.\n" -#: fdisk/fdisk.c:848 +#: fdisk/fdisk.c:855 msgid "Internal error\n" msgstr "Intern fejl\n" -#: fdisk/fdisk.c:870 +#: fdisk/fdisk.c:877 #, c-format msgid "Ignoring extra extended partition %d\n" msgstr "Ignorerer ekstra udvidet partition %d\n" -#: fdisk/fdisk.c:882 +#: fdisk/fdisk.c:889 #, c-format msgid "" "Warning: invalid flag 0x%04x of partition table %d will be corrected by " @@ -3012,7 +2422,7 @@ msgstr "" "Advarsel: ugyldigt flag 0x%04x for partitionstabel %d vil blive rettet med " "'w' (skriv)\n" -#: fdisk/fdisk.c:904 +#: fdisk/fdisk.c:911 msgid "" "\n" "got EOF thrice - exiting..\n" @@ -3020,65 +2430,65 @@ msgstr "" "\n" "fik filslut (EOF) tre gange - afslutter..\n" -#: fdisk/fdisk.c:942 +#: fdisk/fdisk.c:950 msgid "Hex code (type L to list codes): " msgstr "Hex-kode (tryk L for en liste over koderne): " -#: fdisk/fdisk.c:981 +#: fdisk/fdisk.c:989 #, c-format msgid "%s (%d-%d, default %d): " msgstr "%s (%d-%d, standard %d): " -#: fdisk/fdisk.c:1035 +#: fdisk/fdisk.c:1045 #, c-format msgid "Using default value %d\n" msgstr "Bruger standard-værdi %d\n" -#: fdisk/fdisk.c:1039 +#: fdisk/fdisk.c:1049 msgid "Value out of range.\n" msgstr "Værdi udenfor området.\n" -#: fdisk/fdisk.c:1049 +#: fdisk/fdisk.c:1059 msgid "Partition number" msgstr "Partitionsnummer" -#: fdisk/fdisk.c:1058 +#: fdisk/fdisk.c:1068 #, c-format msgid "Warning: partition %d has empty type\n" msgstr "Advarsel: partition %d er af typen 'tom'\n" -#: fdisk/fdisk.c:1065 +#: fdisk/fdisk.c:1075 msgid "cylinder" msgstr "cylinder" -#: fdisk/fdisk.c:1065 +#: fdisk/fdisk.c:1075 msgid "sector" msgstr "sektor" -#: fdisk/fdisk.c:1074 +#: fdisk/fdisk.c:1084 #, c-format msgid "Changing display/entry units to %s\n" msgstr "Skifter enheder for visning/indtastning til %s\n" -#: fdisk/fdisk.c:1085 +#: fdisk/fdisk.c:1095 #, c-format msgid "WARNING: Partition %d is an extended partition\n" msgstr "ADVARSEL: Partition %d er en udvidet partition\n" -#: fdisk/fdisk.c:1096 +#: fdisk/fdisk.c:1106 msgid "DOS Compatibility flag is set\n" msgstr "DOS-kompatilitetsflag er sat\n" -#: fdisk/fdisk.c:1100 +#: fdisk/fdisk.c:1110 msgid "DOS Compatibility flag is not set\n" msgstr "DOS-kompatilitetsflag er ikke sat\n" -#: fdisk/fdisk.c:1188 +#: fdisk/fdisk.c:1203 #, c-format msgid "Partition %d does not exist yet!\n" msgstr "Partition %d eksisterer ikke endnu!\n" -#: fdisk/fdisk.c:1193 +#: fdisk/fdisk.c:1208 msgid "" "Type 0 means free space to many systems\n" "(but not to Linux). Having partitions of\n" @@ -3090,7 +2500,7 @@ msgstr "" "er nok uklogt. Du kan slette en partition med\n" "'d'-kommandoen.\n" -#: fdisk/fdisk.c:1202 +#: fdisk/fdisk.c:1217 msgid "" "You cannot change a partition into an extended one or vice versa\n" "Delete it first.\n" @@ -3098,7 +2508,7 @@ msgstr "" "Du kan ikke ændre en partition mellem at være udvidet eller ikke-udvidet\n" "Slet den først.\n" -#: fdisk/fdisk.c:1211 +#: fdisk/fdisk.c:1226 msgid "" "Consider leaving partition 3 as Whole disk (5),\n" "as SunOS/Solaris expects it and even Linux likes it.\n" @@ -3108,7 +2518,7 @@ msgstr "" "SunOS/Solaris forventer det og selv Linux foretrækker det.\n" "\n" -#: fdisk/fdisk.c:1217 +#: fdisk/fdisk.c:1232 msgid "" "Consider leaving partition 9 as volume header (0),\n" "and partition 11 as entire volume (6)as IRIX expects it.\n" @@ -3118,52 +2528,52 @@ msgstr "" "og partition 11 som 'entire volume' (6), da IRIX forventer det.\n" "\n" -#: fdisk/fdisk.c:1231 +#: fdisk/fdisk.c:1246 #, c-format msgid "Changed system type of partition %d to %x (%s)\n" msgstr "Ændrede systemtypen for partition %d til %x (%s)\n" -#: fdisk/fdisk.c:1282 +#: fdisk/fdisk.c:1297 #, c-format msgid "Partition %d has different physical/logical beginnings (non-Linux?):\n" msgstr "Partition %d har forskellig fysisk/logisk begyndelse (ikke-Linux?):\n" -#: fdisk/fdisk.c:1284 fdisk/fdisk.c:1292 fdisk/fdisk.c:1301 fdisk/fdisk.c:1310 +#: fdisk/fdisk.c:1299 fdisk/fdisk.c:1307 fdisk/fdisk.c:1316 fdisk/fdisk.c:1325 #, c-format msgid " phys=(%d, %d, %d) " msgstr " fys=(%d, %d, %d) " -#: fdisk/fdisk.c:1285 fdisk/fdisk.c:1293 +#: fdisk/fdisk.c:1300 fdisk/fdisk.c:1308 #, c-format msgid "logical=(%d, %d, %d)\n" msgstr "logisk=(%d, %d, %d)\n" -#: fdisk/fdisk.c:1290 +#: fdisk/fdisk.c:1305 #, c-format msgid "Partition %d has different physical/logical endings:\n" msgstr "Partition %d har forskellig fysisk/logisk endelse:\n" -#: fdisk/fdisk.c:1299 +#: fdisk/fdisk.c:1314 #, c-format msgid "Partition %i does not start on cylinder boundary:\n" msgstr "Partition %i starter ikke på en cylinder-grænse:\n" -#: fdisk/fdisk.c:1302 +#: fdisk/fdisk.c:1317 #, c-format msgid "should be (%d, %d, 1)\n" msgstr "burde være (%d, %d, 1)\n" -#: fdisk/fdisk.c:1308 +#: fdisk/fdisk.c:1323 #, c-format msgid "Partition %i does not end on cylinder boundary:\n" msgstr "Partition %i slutter ikke på en cylinder-grænse:\n" -#: fdisk/fdisk.c:1311 +#: fdisk/fdisk.c:1326 #, c-format msgid "should be (%d, %d, %d)\n" msgstr "burde være (%d, %d, %d)\n" -#: fdisk/fdisk.c:1318 +#: fdisk/fdisk.c:1333 #, c-format msgid "" "\n" @@ -3176,7 +2586,7 @@ msgstr "" "Enheder = %s á %d * %d byte\n" "\n" -#: fdisk/fdisk.c:1363 +#: fdisk/fdisk.c:1378 msgid "" "Nothing to do. Ordering is correct already.\n" "\n" @@ -3184,16 +2594,16 @@ msgstr "" "Intet at gøre. Rækkefølgen er allerede korrekt.\n" "\n" -#: fdisk/fdisk.c:1429 +#: fdisk/fdisk.c:1444 #, c-format msgid "%*s Boot Start End Blocks Id System\n" msgstr "%*s Opstart Start Slut Blokke Id System\n" -#: fdisk/fdisk.c:1430 fdisk/fdisksgilabel.c:221 fdisk/fdisksunlabel.c:654 +#: fdisk/fdisk.c:1445 fdisk/fdisksgilabel.c:223 fdisk/fdisksunlabel.c:657 msgid "Device" msgstr "Enhed" -#: fdisk/fdisk.c:1467 +#: fdisk/fdisk.c:1482 msgid "" "\n" "Partition table entries are not in disk order\n" @@ -3201,7 +2611,7 @@ msgstr "" "\n" "Partitionstabellens indgange er ikke i disk-rækkefølge\n" -#: fdisk/fdisk.c:1477 +#: fdisk/fdisk.c:1492 #, c-format msgid "" "\n" @@ -3212,89 +2622,89 @@ msgstr "" "Disk %s: %d hoveder, %d sektorer, %d cylindre\n" "\n" -#: fdisk/fdisk.c:1479 +#: fdisk/fdisk.c:1494 msgid "Nr AF Hd Sec Cyl Hd Sec Cyl Start Size ID\n" msgstr "Nr AF Hvd Sekt Cyl Hvd Sekt Cyl Start Str. ID\n" -#: fdisk/fdisk.c:1523 +#: fdisk/fdisk.c:1538 #, c-format msgid "Warning: partition %d contains sector 0\n" msgstr "Advarsel: partition %d indeholder sektor 0\n" -#: fdisk/fdisk.c:1526 +#: fdisk/fdisk.c:1541 #, c-format msgid "Partition %d: head %d greater than maximum %d\n" msgstr "Partition %d: hovedet %d er større end de maksimale %d\n" -#: fdisk/fdisk.c:1529 +#: fdisk/fdisk.c:1544 #, c-format msgid "Partition %d: sector %d greater than maximum %d\n" msgstr "Partition %d: sektor %d er større end de maksimale %d\n" -#: fdisk/fdisk.c:1532 +#: fdisk/fdisk.c:1547 #, c-format msgid "Partitions %d: cylinder %d greater than maximum %d\n" msgstr "Partitionerne %d: cylinder %d større end de maksimale %d\n" -#: fdisk/fdisk.c:1536 +#: fdisk/fdisk.c:1551 #, c-format msgid "Partition %d: previous sectors %d disagrees with total %d\n" msgstr "Partition %d: forrige sektorer %d stemmer ikke med totalen %d\n" -#: fdisk/fdisk.c:1568 +#: fdisk/fdisk.c:1583 #, c-format msgid "Warning: bad start-of-data in partition %d\n" msgstr "Advarsel: ugyldig start-på-data i partition %d\n" -#: fdisk/fdisk.c:1576 +#: fdisk/fdisk.c:1591 #, c-format msgid "Warning: partition %d overlaps partition %d.\n" msgstr "Advarsel: partition %d overlapper med partition %d.\n" -#: fdisk/fdisk.c:1596 +#: fdisk/fdisk.c:1611 #, c-format msgid "Warning: partition %d is empty\n" msgstr "Advarsel: partition %d er tom\n" -#: fdisk/fdisk.c:1601 +#: fdisk/fdisk.c:1616 #, c-format msgid "Logical partition %d not entirely in partition %d\n" msgstr "Logisk partition %d ikke fuldstændigt indenfor partition %d\n" -#: fdisk/fdisk.c:1607 +#: fdisk/fdisk.c:1622 #, c-format msgid "Total allocated sectors %d greater than the maximum %d\n" msgstr "Allokerede sektorer i alt %d er større end de maksimale %d\n" -#: fdisk/fdisk.c:1610 +#: fdisk/fdisk.c:1625 #, c-format msgid "%d unallocated sectors\n" msgstr "%d ikke-allokerede sektorer\n" -#: fdisk/fdisk.c:1623 fdisk/fdisksgilabel.c:662 fdisk/fdisksunlabel.c:502 +#: fdisk/fdisk.c:1638 fdisk/fdisksgilabel.c:664 fdisk/fdisksunlabel.c:503 #, c-format msgid "Partition %d is already defined. Delete it before re-adding it.\n" msgstr "Partition %d er allerede defineret. Slet den før du tilføjer den igen.\n" -#: fdisk/fdisk.c:1659 fdisk/fdisksunlabel.c:542 +#: fdisk/fdisk.c:1674 fdisk/fdisksunlabel.c:543 #, c-format msgid "Sector %d is already allocated\n" msgstr "Sektor %d er allerede allokeret\n" -#: fdisk/fdisk.c:1695 +#: fdisk/fdisk.c:1710 msgid "No free sectors available\n" msgstr "Ingen tilgængelige frie sektorer\n" -#: fdisk/fdisk.c:1736 +#: fdisk/fdisk.c:1752 #, c-format msgid "Warning: partition %d has an odd number of sectors.\n" msgstr "Advarsel: partition %d har et ulige antal sektorer.\n" -#: fdisk/fdisk.c:1786 +#: fdisk/fdisk.c:1802 msgid "You must delete some partition and add an extended partition first\n" msgstr "Du må først slette en partition og tilføje en udvidet partition\n" -#: fdisk/fdisk.c:1790 +#: fdisk/fdisk.c:1807 #, c-format msgid "" "Command action\n" @@ -3305,20 +2715,20 @@ msgstr "" " %s\n" " p primær partition (1-4)\n" -#: fdisk/fdisk.c:1792 +#: fdisk/fdisk.c:1809 msgid "l logical (5 or over)" msgstr "l logisk (5 eller derover)" -#: fdisk/fdisk.c:1792 +#: fdisk/fdisk.c:1809 msgid "e extended" msgstr "e udvidet" -#: fdisk/fdisk.c:1809 +#: fdisk/fdisk.c:1826 #, c-format msgid "Invalid partition number for type `%c'\n" msgstr "Ugyldigt partitionsnummer for type '%c'\n" -#: fdisk/fdisk.c:1844 +#: fdisk/fdisk.c:1861 msgid "" "The partition table has been altered!\n" "\n" @@ -3326,11 +2736,11 @@ msgstr "" "Partitionstabellen er ændret!\n" "\n" -#: fdisk/fdisk.c:1853 +#: fdisk/fdisk.c:1870 msgid "Calling ioctl() to re-read partition table.\n" msgstr "Kalder ioctl() for at genindlæse partitionstabellen.\n" -#: fdisk/fdisk.c:1869 +#: fdisk/fdisk.c:1886 #, c-format msgid "" "Re-read table failed with error %d: %s.\n" @@ -3339,7 +2749,7 @@ msgstr "" "Genindlæsning af tabellen mislykkedes med fejl %d: %s.\n" "Genstart dit system for at sikre at partitionstabellen er opdateret.\n" -#: fdisk/fdisk.c:1875 +#: fdisk/fdisk.c:1892 msgid "" "\n" "WARNING: If you have created or modified any DOS 6.x\n" @@ -3351,64 +2761,64 @@ msgstr "" "yderligere information, hvis du har oprettet eller\n" "ændret DOS 6.x partitioner.\n" -#: fdisk/fdisk.c:1882 +#: fdisk/fdisk.c:1899 msgid "Syncing disks.\n" msgstr "Synkroniserer diske.\n" -#: fdisk/fdisk.c:1929 +#: fdisk/fdisk.c:1946 #, c-format msgid "Partition %d has no data area\n" msgstr "Partition %d har intet dataområde\n" -#: fdisk/fdisk.c:1934 +#: fdisk/fdisk.c:1951 msgid "New beginning of data" msgstr "Ny begyndelse på data" -#: fdisk/fdisk.c:1950 +#: fdisk/fdisk.c:1967 msgid "Expert command (m for help): " msgstr "Ekspert kommando (m for hjælp): " -#: fdisk/fdisk.c:1963 +#: fdisk/fdisk.c:1980 msgid "Number of cylinders" msgstr "Antal cylindre" -#: fdisk/fdisk.c:1989 +#: fdisk/fdisk.c:2006 msgid "Number of heads" msgstr "Antal hoveder" -#: fdisk/fdisk.c:2014 +#: fdisk/fdisk.c:2031 msgid "Number of sectors" msgstr "Antal sektorer" -#: fdisk/fdisk.c:2017 +#: fdisk/fdisk.c:2034 msgid "Warning: setting sector offset for DOS compatiblity\n" msgstr "Advarsel: sætter sektorforskydning for DOS-kompatilitet\n" -#: fdisk/fdisk.c:2081 +#: fdisk/fdisk.c:2099 #, c-format msgid "Disk %s doesn't contain a valid partition table\n" msgstr "Disk %s indeholder ikke en gyldig partitionstabel\n" -#: fdisk/fdisk.c:2095 +#: fdisk/fdisk.c:2113 #, c-format msgid "Cannot open %s\n" msgstr "Kunne ikke åbne %s\n" -#: fdisk/fdisk.c:2112 +#: fdisk/fdisk.c:2129 #, c-format msgid "cannot open %s\n" msgstr "kunne ikke åbne %s\n" -#: fdisk/fdisk.c:2133 +#: fdisk/fdisk.c:2150 #, c-format msgid "%c: unknown command\n" msgstr "%c: ukendt kommando\n" -#: fdisk/fdisk.c:2183 +#: fdisk/fdisk.c:2200 msgid "This kernel finds the sector size itself - -b option ignored\n" msgstr "Denne kerne finder selv sektorstørrelser - tilvalget -b ignoreres\n" -#: fdisk/fdisk.c:2186 +#: fdisk/fdisk.c:2203 msgid "" "Warning: the -b (set sector size) option should be used with one specified " "device\n" @@ -3416,7 +2826,7 @@ msgstr "" "Advarsel: tilvalget -b (angiv sektorstørrelse) kræver angivelse af " "disk-enhed\n" -#: fdisk/fdisk.c:2251 +#: fdisk/fdisk.c:2268 #, c-format msgid "" "Detected an OSF/1 disklabel on %s, entering disklabel mode.\n" @@ -3425,11 +2835,11 @@ msgstr "" "Detekterede et OSF/1 diskmærkat på %s. Går i diskmærkat-tilstand.\n" "Brug 'r'-kommandoen for at returnere til DOS-partitionstabel-tilstand.\n" -#: fdisk/fdisk.c:2260 +#: fdisk/fdisk.c:2277 msgid "Command (m for help): " msgstr "Kommando (m for hjælp): " -#: fdisk/fdisk.c:2276 +#: fdisk/fdisk.c:2293 #, c-format msgid "" "\n" @@ -3438,15 +2848,15 @@ msgstr "" "\n" "Den nuværende opstartfil er: %s\n" -#: fdisk/fdisk.c:2278 +#: fdisk/fdisk.c:2295 msgid "Please enter the name of the new boot file: " msgstr "Angiv venligt navnet på den ny opstartsfil: " -#: fdisk/fdisk.c:2280 +#: fdisk/fdisk.c:2297 msgid "Boot file unchanged\n" msgstr "Opstartsfil uændret\n" -#: fdisk/fdisk.c:2344 +#: fdisk/fdisk.c:2361 msgid "" "\n" "\tSorry, no experts menu for SGI partition tables available.\n" @@ -3501,37 +2911,45 @@ msgid "SGI xfs" msgstr "SGI xfs" #: fdisk/fdisksgilabel.c:90 -msgid "SGI xlvol" -msgstr "SGI xlvol" +msgid "SGI xfslog" +msgstr "SGI xfslog" #: fdisk/fdisksgilabel.c:91 -msgid "SGI rxlvol" -msgstr "SGI rxlvol" +msgid "SGI xlv" +msgstr "SGI xlv" + +#: fdisk/fdisksgilabel.c:92 +msgid "SGI xvm" +msgstr "SGI xvm" #. Minix 1.4b and later -#: fdisk/fdisksgilabel.c:92 fdisk/fdisksunlabel.c:52 fdisk/i386_sys_types.c:56 +#: fdisk/fdisksgilabel.c:93 fdisk/fdisksunlabel.c:52 fdisk/i386_sys_types.c:56 msgid "Linux swap" msgstr "Linux swap" -#: fdisk/fdisksgilabel.c:93 fdisk/fdisksunlabel.c:53 +#: fdisk/fdisksgilabel.c:94 fdisk/fdisksunlabel.c:53 msgid "Linux native" msgstr "Linux's egen" -#: fdisk/fdisksgilabel.c:94 fdisk/fdisksunlabel.c:54 fdisk/i386_sys_types.c:62 +#: fdisk/fdisksgilabel.c:95 fdisk/fdisksunlabel.c:54 fdisk/i386_sys_types.c:62 msgid "Linux LVM" msgstr "Linux LVM" -#: fdisk/fdisksgilabel.c:158 +#: fdisk/fdisksgilabel.c:96 +msgid "Linux RAID" +msgstr "Linux RAID" + +#: fdisk/fdisksgilabel.c:160 msgid "" "According to MIPS Computer Systems, Inc the Label must not contain more than " "512 bytes\n" msgstr "Ifølge MIPS Computer Systems. Inc, må mærkatet ikke fylde mere end 512 byte\n" -#: fdisk/fdisksgilabel.c:177 +#: fdisk/fdisksgilabel.c:179 msgid "Detected sgi disklabel with wrong checksum.\n" msgstr "Detekterede SGI diskmærkat med forkert checksum.\n" -#: fdisk/fdisksgilabel.c:200 +#: fdisk/fdisksgilabel.c:202 #, c-format msgid "" "\n" @@ -3550,7 +2968,7 @@ msgstr "" "Enheder = %s á %d * 512 bytes\n" "\n" -#: fdisk/fdisksgilabel.c:213 +#: fdisk/fdisksgilabel.c:215 #, c-format msgid "" "\n" @@ -3563,7 +2981,7 @@ msgstr "" "Enheder = %s á %d * 512 bytes\n" "\n" -#: fdisk/fdisksgilabel.c:219 +#: fdisk/fdisksgilabel.c:221 #, c-format msgid "" "----- partitions -----\n" @@ -3572,7 +2990,7 @@ msgstr "" "----- partitioner -----\n" "%*s Info Start Slut Sektorer Id System\n" -#: fdisk/fdisksgilabel.c:241 +#: fdisk/fdisksgilabel.c:243 #, c-format msgid "" "----- bootinfo -----\n" @@ -3583,12 +3001,12 @@ msgstr "" "Opstartsfil: %s\n" "----- katalogindgange -----\n" -#: fdisk/fdisksgilabel.c:251 +#: fdisk/fdisksgilabel.c:253 #, c-format msgid "%2d: %-10s sector%5u size%8u\n" msgstr "%2d: %-10s sektor%5u størrelse%8u\n" -#: fdisk/fdisksgilabel.c:305 +#: fdisk/fdisksgilabel.c:307 msgid "" "\n" "Invalid Bootfile!\n" @@ -3600,7 +3018,7 @@ msgstr "" "\tOpstartsfilen skal være et absolut, ikke-tomt stinavn,\n" "\tf.eks. \"/unix\" eller \"/unix.save\".\n" -#: fdisk/fdisksgilabel.c:312 +#: fdisk/fdisksgilabel.c:314 msgid "" "\n" "\tName of Bootfile too long: 16 bytes maximum.\n" @@ -3608,7 +3026,7 @@ msgstr "" "\n" "\tFor langt navn på opstartsfil: højst 16 byte.\n" -#: fdisk/fdisksgilabel.c:317 +#: fdisk/fdisksgilabel.c:319 msgid "" "\n" "\tBootfile must have a fully qualified pathname.\n" @@ -3616,7 +3034,7 @@ msgstr "" "\n" "\tOpstartsfil skal have et komplet stinavn.\n" -#: fdisk/fdisksgilabel.c:322 +#: fdisk/fdisksgilabel.c:324 msgid "" "\n" "\tBe aware, that the bootfile is not checked for existence.\n" @@ -3626,7 +3044,7 @@ msgstr "" "\tBemærk, at der ikke tjekkes for opstartsfilens eksistens.\n" "\tSGI's standard er \"/unix\" og som backup \"/unix.save\".\n" -#: fdisk/fdisksgilabel.c:350 +#: fdisk/fdisksgilabel.c:352 #, c-format msgid "" "\n" @@ -3635,19 +3053,19 @@ msgstr "" "\n" "\tOpstartsfil er ændret til \"%s\".\n" -#: fdisk/fdisksgilabel.c:448 +#: fdisk/fdisksgilabel.c:450 msgid "More than one entire disk entry present.\n" msgstr "Der er mere end én fuldstændig diskindgang.\n" -#: fdisk/fdisksgilabel.c:456 fdisk/fdisksunlabel.c:478 +#: fdisk/fdisksgilabel.c:458 fdisk/fdisksunlabel.c:479 msgid "No partitions defined\n" msgstr "Ingen partitioner defineret\n" -#: fdisk/fdisksgilabel.c:463 +#: fdisk/fdisksgilabel.c:465 msgid "IRIX likes when Partition 11 covers the entire disk.\n" msgstr "IRIX kan lide, når partition 11 fylder hele disken.\n" -#: fdisk/fdisksgilabel.c:465 +#: fdisk/fdisksgilabel.c:467 #, c-format msgid "" "The entire disk partition should start at block 0,\n" @@ -3656,7 +3074,7 @@ msgstr "" "Hele diskpartitionen bør starte ved blok 0,\n" "ikke ved diskblok %d.\n" -#: fdisk/fdisksgilabel.c:469 +#: fdisk/fdisksgilabel.c:471 #, c-format msgid "" "The entire disk partition is only %d diskblock large,\n" @@ -3665,31 +3083,31 @@ msgstr "" "Hele diskpartitionen er kun %d diskblokke stor,\n" "men disken er på %d diskblokke.\n" -#: fdisk/fdisksgilabel.c:476 +#: fdisk/fdisksgilabel.c:478 msgid "One Partition (#11) should cover the entire disk.\n" msgstr "En partition (#11) bør fylde hele disken.\n" -#: fdisk/fdisksgilabel.c:488 +#: fdisk/fdisksgilabel.c:490 #, c-format msgid "Partition %d does not start on cylinder boundary.\n" msgstr "Partition %d starter ikke på en cylindergrænse.\n" -#: fdisk/fdisksgilabel.c:495 +#: fdisk/fdisksgilabel.c:497 #, c-format msgid "Partition %d does not end on cylinder boundary.\n" msgstr "Partition %d slutter ikke på en cylindergrænse.\n" -#: fdisk/fdisksgilabel.c:503 +#: fdisk/fdisksgilabel.c:505 #, c-format msgid "The Partition %d and %d overlap by %d sectors.\n" -msgstr "Partition %d pg %d overlapper hinanden i %d sektorer.\n" +msgstr "Partition %d og %d overlapper hinanden i %d sektorer.\n" -#: fdisk/fdisksgilabel.c:512 fdisk/fdisksgilabel.c:532 +#: fdisk/fdisksgilabel.c:514 fdisk/fdisksgilabel.c:534 #, c-format msgid "Unused gap of %8d sectors - sectors %8d-%d\n" msgstr "Ubenyttet hul på %8d sektorer - sektor %8d-%d\n" -#: fdisk/fdisksgilabel.c:545 +#: fdisk/fdisksgilabel.c:547 msgid "" "\n" "The boot partition does not exist.\n" @@ -3697,7 +3115,7 @@ msgstr "" "\n" "Opstartpartitionen eksisterer ikke.\n" -#: fdisk/fdisksgilabel.c:549 +#: fdisk/fdisksgilabel.c:551 msgid "" "\n" "The swap partition does not exist.\n" @@ -3705,7 +3123,7 @@ msgstr "" "\n" "Swappartitionen eksisterer ikke.\n" -#: fdisk/fdisksgilabel.c:554 +#: fdisk/fdisksgilabel.c:556 msgid "" "\n" "The swap partition has no swap type.\n" @@ -3713,15 +3131,15 @@ msgstr "" "\n" "Swappartitionen har ikke nogen swaptype.\n" -#: fdisk/fdisksgilabel.c:558 +#: fdisk/fdisksgilabel.c:560 msgid "\tYou have chosen an unusual boot file name.\n" msgstr "\tDu har valgt et ikke-standard navn på opstartsfilen.\n" -#: fdisk/fdisksgilabel.c:569 +#: fdisk/fdisksgilabel.c:571 msgid "Sorry You may change the Tag of non-empty partitions.\n" msgstr "Beklager. Du må ændre mærket (tag) på ikke-tomme partitioner.\n" -#: fdisk/fdisksgilabel.c:576 +#: fdisk/fdisksgilabel.c:578 msgid "" "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" @@ -3730,46 +3148,46 @@ msgid "" "Type YES if you are sure about tagging this partition differently.\n" msgstr "" "Det anbefales kraftigt at partitionen på forskydning 0\n" -"er en \"SGI volhdr\"-type. IRIX-systemet vil bruge den til\bat hente fra " -"dets katalogværktøjer som sash og fx.\n" +"er en \"SGI volhdr\"-type. IRIX-systemet vil bruge den til\n" +"at hente fra dets katalogværktøjer som sash og fx.\n" "Kun \"SGI volume\" hele-disk-sektionen kan bryde dette.\n" "Skriv JA, hvis du er sikker på, at du vil mærke partitionen anderledes.\n" #. rebuild freelist -#: fdisk/fdisksgilabel.c:607 +#: fdisk/fdisksgilabel.c:609 msgid "Do You know, You got a partition overlap on the disk?\n" msgstr "Ved du, at du har overlappende partitioner på disken?\n" -#: fdisk/fdisksgilabel.c:669 +#: fdisk/fdisksgilabel.c:671 msgid "Attempting to generate entire disk entry automatically.\n" msgstr "Forsøger at genere hele-disk-indgang automatisk.\n" -#: fdisk/fdisksgilabel.c:676 +#: fdisk/fdisksgilabel.c:678 msgid "The entire disk is already covered with partitions.\n" msgstr "Hele disken er allerede fyldt med partitioner.\n" -#: fdisk/fdisksgilabel.c:681 +#: fdisk/fdisksgilabel.c:683 msgid "You got a partition overlap on the disk. Fix it first!\n" msgstr "Du har overlappende partitioner på disken. Ret det først!\n" -#: fdisk/fdisksgilabel.c:690 fdisk/fdisksgilabel.c:719 +#: fdisk/fdisksgilabel.c:692 fdisk/fdisksgilabel.c:721 msgid "" "It is highly recommended that eleventh partition\n" "covers the entire disk and is of type `SGI volume'\n" msgstr "" -"Det anbefales kraftigt at den ellevte partition\bfylder hele disken og er af " -"typen 'SGI volume'\n" +"Det anbefales kraftigt at den ellevte partition\n" +"fylder hele disken og er af typen 'SGI volume'\n" -#: fdisk/fdisksgilabel.c:706 +#: fdisk/fdisksgilabel.c:708 msgid "You will get a partition overlap on the disk. Fix it first!\n" msgstr "Du vil få overlappende partitioner på disken. Ret dette først!\n" -#: fdisk/fdisksgilabel.c:711 +#: fdisk/fdisksgilabel.c:713 #, c-format msgid " Last %s" msgstr " Sidste %s" -#: fdisk/fdisksgilabel.c:733 +#: fdisk/fdisksgilabel.c:735 msgid "" "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" @@ -3777,16 +3195,16 @@ msgid "" "\n" msgstr "" "Opbygger et nyt SGI-diskmærkat. Ændringer vil holdes i hukommelsen\n" -"indtil du beslutter at gemme dem. Derfter vil det tidligere indhold\n" +"indtil du beslutter at gemme dem. Derefter vil det tidligere indhold\n" "naturligvis ikke kunne genskabes.\n" "\n" -#: fdisk/fdisksgilabel.c:761 +#: fdisk/fdisksgilabel.c:763 #, c-format msgid "Trying to keep parameters of partition %d.\n" msgstr "Forsøger at bibeholde parametrene for partition %d.\n" -#: fdisk/fdisksgilabel.c:763 +#: fdisk/fdisksgilabel.c:765 #, c-format msgid "ID=%02x\tSTART=%d\tLENGTH=%d\n" msgstr "ID=%02x\tSTART=%d\tLÆNGDE=%d\n" @@ -3830,7 +3248,7 @@ msgid "" "e.g. heads, sectors, cylinders and partitions\n" "or force a fresh label (s command in main menu)\n" msgstr "" -"Opdatede SUN-diskmærkat med forkert checksum.\n" +"Opdagede SUN-diskmærkat med forkert checksum.\n" "Du er nok nødt til at angive alle værdierne\n" "dvs. hoveder, sektorer, cylindre og partitioner\n" "eller gennemtvinge et helt nyt mærkat.\n" @@ -3849,7 +3267,7 @@ msgid "" "\n" msgstr "" "Opbygger et nyt SUN-diskmærkat. Ændringer vil holdes i hukommelsen\n" -"indtil du beslutter at gemme dem. Derfter vil det tidligere indhold\n" +"indtil du beslutter at gemme dem. Derefter vil det tidligere indhold\n" "naturligvis ikke kunne genskabes.\n" "\n" @@ -3883,15 +3301,15 @@ msgstr "Alternative cylindre" msgid "Physical cylinders" msgstr "Fysiske cylindre" -#: fdisk/fdisksunlabel.c:329 fdisk/fdisksunlabel.c:704 +#: fdisk/fdisksunlabel.c:329 fdisk/fdisksunlabel.c:707 msgid "Rotation speed (rpm)" msgstr "Rotationshastighed (omdr. per minut)" -#: fdisk/fdisksunlabel.c:331 fdisk/fdisksunlabel.c:697 +#: fdisk/fdisksunlabel.c:331 fdisk/fdisksunlabel.c:700 msgid "Interleave factor" msgstr "Interleavefaktor" -#: fdisk/fdisksunlabel.c:334 fdisk/fdisksunlabel.c:690 +#: fdisk/fdisksunlabel.c:334 fdisk/fdisksunlabel.c:693 msgid "Extra sectors per cylinder" msgstr "Ekstra sektorer per cylinder" @@ -3899,35 +3317,35 @@ msgstr "Ekstra sektorer per cylinder" msgid "You may change all the disk params from the x menu" msgstr "Du kan ændre alle diskparametrene fra x-menuen" -#: fdisk/fdisksunlabel.c:354 +#: fdisk/fdisksunlabel.c:355 msgid "3,5\" floppy" msgstr "3,5\" diskette" -#: fdisk/fdisksunlabel.c:354 +#: fdisk/fdisksunlabel.c:355 msgid "Linux custom" msgstr "Linux's egen" -#: fdisk/fdisksunlabel.c:441 +#: fdisk/fdisksunlabel.c:442 #, c-format msgid "Partition %d doesn't end on cylinder boundary\n" msgstr "Partition %d slutter ikke på en cylinder-grænse\n" -#: fdisk/fdisksunlabel.c:461 +#: fdisk/fdisksunlabel.c:462 #, c-format msgid "Partition %d overlaps with others in sectors %d-%d\n" msgstr "Partition %d overlapper med andre i sektorerne %d-%d\n" -#: fdisk/fdisksunlabel.c:483 +#: fdisk/fdisksunlabel.c:484 #, c-format msgid "Unused gap - sectors 0-%d\n" msgstr "Ubenyttet hul - sektorerne 0%d\n" -#: fdisk/fdisksunlabel.c:485 fdisk/fdisksunlabel.c:489 +#: fdisk/fdisksunlabel.c:486 fdisk/fdisksunlabel.c:490 #, c-format msgid "Unused gap - sectors %d-%d\n" msgstr "Ubenyttet hul - sektorerne %d%d\n" -#: fdisk/fdisksunlabel.c:512 +#: fdisk/fdisksunlabel.c:513 msgid "" "Other partitions already cover the whole disk.\n" "Delete some/shrink them before retry.\n" @@ -3935,7 +3353,7 @@ msgstr "" "Disken er allerede helt udfyldt med andre partitioner.\n" "Slet eller formindsk nogen af dem, før du prøver igen.\n" -#: fdisk/fdisksunlabel.c:570 +#: fdisk/fdisksunlabel.c:573 #, c-format msgid "" "You haven't covered the whole disk with the 3rd partition, but your value\n" @@ -3946,7 +3364,7 @@ msgstr "" "%d %s dækker en anden partition. Din indgang er blevet ændret til\n" "%d %s \n" -#: fdisk/fdisksunlabel.c:590 +#: fdisk/fdisksunlabel.c:593 #, c-format msgid "" "If you want to maintain SunOS/Solaris compatibility, consider leaving this\n" @@ -3955,7 +3373,7 @@ msgstr "" "Hvis du vil beholde SunOS/Solaris-kompatilitet, bør du beholde denne\n" "partition som 'Whole disk' (5), der begynder på 0, med %u sektorer\n" -#: fdisk/fdisksunlabel.c:603 +#: fdisk/fdisksunlabel.c:606 msgid "" "It is highly recommended that the partition at offset 0\n" "is UFS, EXT2FS filesystem or SunOS swap. Putting Linux swap\n" @@ -3969,7 +3387,7 @@ msgstr "" "og opstartsblok. Skriv JA hvis du er helt sikker på, at du vil\n" "markere den partition som Linux swap (82): " -#: fdisk/fdisksunlabel.c:634 +#: fdisk/fdisksunlabel.c:637 #, c-format msgid "" "\n" @@ -3988,7 +3406,7 @@ msgstr "" "Enheder = %s á %d * 512 byte\n" "\n" -#: fdisk/fdisksunlabel.c:648 +#: fdisk/fdisksunlabel.c:651 #, c-format msgid "" "\n" @@ -4001,16 +3419,16 @@ msgstr "" "Enheder = %s á %d * 512 byte\n" "\n" -#: fdisk/fdisksunlabel.c:653 +#: fdisk/fdisksunlabel.c:656 #, c-format msgid "%*s Flag Start End Blocks Id System\n" msgstr "%*s Flag Start Slut Blokke Id System\n" -#: fdisk/fdisksunlabel.c:678 +#: fdisk/fdisksunlabel.c:681 msgid "Number of alternate cylinders" msgstr "Antal alternative cylindre" -#: fdisk/fdisksunlabel.c:711 +#: fdisk/fdisksunlabel.c:714 msgid "Number of physical cylinders" msgstr "Antal fysiske cylindre" @@ -4188,8 +3606,8 @@ msgid "Priam Edisk" msgstr "Priam Edisk" #. DOS R/O or SpeedStor -#: fdisk/i386_sys_types.c:48 fdisk/i386_sys_types.c:82 -#: fdisk/i386_sys_types.c:85 fdisk/i386_sys_types.c:86 +#: fdisk/i386_sys_types.c:48 fdisk/i386_sys_types.c:83 +#: fdisk/i386_sys_types.c:88 fdisk/i386_sys_types.c:89 msgid "SpeedStor" msgstr "SpeedStor" @@ -4291,7 +3709,7 @@ msgstr "Syrinx" #: fdisk/i386_sys_types.c:76 msgid "Non-FS data" -msgstr "Ikke-FS data" +msgstr "Ikke-filsystemdata" #: fdisk/i386_sys_types.c:77 msgid "CP/M / CTOS / ..." @@ -4300,40 +3718,54 @@ msgstr "CP/M / CTOS / ..." #. CP/M or Concurrent CP/M or #. Concurrent DOS or CTOS #: fdisk/i386_sys_types.c:79 +msgid "Dell Utility" +msgstr "Dell Værktøj" + +#. Dell PowerEdge Server utilities +#: fdisk/i386_sys_types.c:80 msgid "DOS access" msgstr "DOS access" #. DOS access or SpeedStor 12-bit FAT #. extended partition -#: fdisk/i386_sys_types.c:81 +#: fdisk/i386_sys_types.c:82 msgid "DOS R/O" msgstr "DOS R/O" #. SpeedStor 16-bit FAT extended #. partition < 1024 cyl. -#: fdisk/i386_sys_types.c:84 +#: fdisk/i386_sys_types.c:85 msgid "BeOS fs" msgstr "BeOS fs" -#. SpeedStor large partition +#: fdisk/i386_sys_types.c:86 +msgid "EFI GPT" +msgstr "EFI GPT" + +#. Intel EFI GUID Partition Table #: fdisk/i386_sys_types.c:87 +msgid "EFI (FAT-12/16/32)" +msgstr "EFI (FAT-12/16/32)" + +#. SpeedStor large partition +#: fdisk/i386_sys_types.c:90 msgid "DOS secondary" msgstr "DOS sekundær" #. DOS 3.3+ secondary -#: fdisk/i386_sys_types.c:88 +#: fdisk/i386_sys_types.c:91 msgid "Linux raid autodetect" msgstr "Linux raid autodetekt" #. New (2.2.x) raid partition with #. autodetect using persistent #. superblock -#: fdisk/i386_sys_types.c:91 +#: fdisk/i386_sys_types.c:94 msgid "LANstep" msgstr "LANstep" #. SpeedStor >1024 cyl. or LANstep -#: fdisk/i386_sys_types.c:92 +#: fdisk/i386_sys_types.c:95 msgid "BBT" msgstr "BBT" @@ -4397,7 +3829,7 @@ msgstr "kan ikke åbne partitions-genskabelsesfilen (%s)\n" #: fdisk/sfdisk.c:336 #, c-format msgid "error reading %s\n" -msgstr "fejl ved læsning af %s\n" +msgstr "fejl under læsning af %s\n" #: fdisk/sfdisk.c:343 #, c-format @@ -4422,36 +3854,36 @@ msgstr "Disk %s: kan ikke bestemme geometrien\n" #: fdisk/sfdisk.c:435 #, c-format msgid "" -"Warning: start=%d - this looks like a partition rather than\n" +"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" msgstr "" -"Advarsel: start=%d - dette ligner mere en partition end en\n" +"Advarsel: start=%lu - dette ligner mere en partition end en\n" "hel disk. Brug af fdisk på den er sikkert meningsløst.\n" "[Brug tilvalget --force hvis du virkelig gerne vil]\n" #: fdisk/sfdisk.c:442 #, c-format -msgid "Warning: HDIO_GETGEO says that there are %d heads\n" -msgstr "Advarsel: HDIO_GETGEO siger,at der er %d hoveder\n" +msgid "Warning: HDIO_GETGEO says that there are %lu heads\n" +msgstr "Advarsel: HDIO_GETGEO siger,at der er %lu hoveder\n" #: fdisk/sfdisk.c:445 #, c-format -msgid "Warning: HDIO_GETGEO says that there are %d sectors\n" -msgstr "Advarsel: HDIO_GETGEO siger, at der er %d sektorer\n" +msgid "Warning: HDIO_GETGEO says that there are %lu sectors\n" +msgstr "Advarsel: HDIO_GETGEO siger, at der er %lu sektorer\n" #: fdisk/sfdisk.c:449 #, c-format -msgid "Warning: BLKGETSIZE/HDIO_GETGEO says that there are %d cylinders\n" -msgstr "Advarsel: BLKGETSIZE/HDIO_GETGEO siger, at der er %d cylindre\n" +msgid "Warning: BLKGETSIZE/HDIO_GETGEO says that there are %lu cylinders\n" +msgstr "Advarsel: BLKGETSIZE/HDIO_GETGEO siger, at der er %lu cylindre\n" #: fdisk/sfdisk.c:453 #, c-format msgid "" -"Warning: unlikely number of sectors (%d) - usually at most 63\n" +"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 "" -"Advarsel: usandsynligt antal sektorer (%d) - normalt højst 63\n" +"Advarsel: usandsynligt antal sektorer (%lu) - normalt højst 63\n" "Dette vil give problemer med al programmel, der bruger C/H/S-adressering.\n" #: fdisk/sfdisk.c:457 @@ -4465,20 +3897,24 @@ msgstr "" #: fdisk/sfdisk.c:539 #, c-format -msgid "%s of partition %s has impossible value for head: %d (should be in 0-%d)\n" -msgstr "%s for partition %s har umulig hoved-værdi: %d (burde være mellem 0-%d)\n" +msgid "%s of partition %s has impossible value for head: %lu (should be in 0-%lu)\n" +msgstr "%s for partition %s har umulig hoved-værdi: %lu (burde være mellem 0-%lu)\n" #: fdisk/sfdisk.c:544 #, c-format -msgid "%s of partition %s has impossible value for sector: %d (should be in 1-%d)\n" -msgstr "%s for partition %s har umulig sektor-værdi: %d (burde være mellem 1-%d)\n" +msgid "" +"%s of partition %s has impossible value for sector: %lu (should be in " +"1-%lu)\n" +msgstr "%s for partition %s har umulig sektor-værdi: %lu (burde være mellem 1-%lu)\n" #: fdisk/sfdisk.c:549 #, c-format msgid "" -"%s of partition %s has impossible value for cylinders: %d (should be in " -"0-%d)\n" -msgstr "%s for partition %s har umulig cylinder-værdi: %d (burde være mellem 0-%d)\n" +"%s of partition %s has impossible value for cylinders: %lu (should be in " +"0-%lu)\n" +msgstr "" +"%s for partition %s har umulig cylinder-værdi: %lu (burde være mellem " +"0-%lu)\n" #: fdisk/sfdisk.c:588 msgid "" @@ -4817,7 +4253,7 @@ msgstr "tal for stort\n" #: fdisk/sfdisk.c:1716 msgid "trailing junk after number\n" -msgstr "trailing junk after number\n" +msgstr "uvedkommende tegn efter tallet\n" #: fdisk/sfdisk.c:1832 msgid "no room for partition descriptor\n" @@ -5077,7 +4513,7 @@ msgstr "for læsning" #: fdisk/sfdisk.c:2569 #, c-format msgid "%s: OK\n" -msgstr "%s: OK\n" +msgstr "%s: O.k.\n" #: fdisk/sfdisk.c:2586 #, c-format @@ -5118,8 +4554,8 @@ msgstr "partition %s har id %x og er ikke skjult\n" #: fdisk/sfdisk.c:2777 #, c-format -msgid "Bad Id %x\n" -msgstr "Ugyldig id %x\n" +msgid "Bad Id %lx\n" +msgstr "Ugyldig id %lx\n" #: fdisk/sfdisk.c:2792 msgid "This disk is currently in use.\n" @@ -5158,7 +4594,7 @@ msgstr "Brug flaget --force for at undertrykke alle tjek.\n" #: fdisk/sfdisk.c:2828 msgid "OK\n" -msgstr "OK\n" +msgstr "O.k.\n" #: fdisk/sfdisk.c:2837 msgid "Old situation:\n" @@ -5243,7 +4679,7 @@ msgstr "Tegnet '%c' findes ikke i mit tegnsæt" #: games/banner.c:1107 #, c-format msgid "Message '%s' is OK\n" -msgstr "Beskeden '%s' er OK\n" +msgstr "Beskeden '%s' er o.k.\n" #: getopt-1.1.0a/getopt.c:233 msgid "Try `getopt --help' for more information.\n" @@ -5329,18 +4765,639 @@ msgstr "getopt (udvidet) 1.1.0\n" msgid "internal error, contact the author." msgstr "intern fejl, kontakt programmøren." -#: kbd/kbdrate.c:138 kbd/kbdrate.c:276 +#: hwclock/cmos.c:164 +msgid "booted from MILO\n" +msgstr "startede op med MILO\n" + +#: hwclock/cmos.c:173 +msgid "Ruffian BCD clock\n" +msgstr "'Ruffian' BCD-ur\n" + +#: hwclock/cmos.c:189 +#, c-format +msgid "clockport adjusted to 0x%x\n" +msgstr "urport justeret til 0x%x\n" + +#: hwclock/cmos.c:201 +msgid "funky TOY!\n" +msgstr "'funky TOY' (tid-på-året)!\n" + +#: hwclock/cmos.c:255 +#, c-format +msgid "%s: atomic %s failed for 1000 iterations!" +msgstr "%s: momentan %s mislykkedes i 1000 iterationer!" + +#: hwclock/cmos.c:579 +#, c-format +msgid "Cannot open /dev/port: %s" +msgstr "Kan ikke åbne /dev/port: %s" + +#: hwclock/cmos.c:586 +msgid "I failed to get permission because I didn't try.\n" +msgstr "Jeg kunne ikke få adgang fordi jeg ikke forsøgte.\n" + +#: hwclock/cmos.c:589 +#, c-format +msgid "%s is unable to get I/O port access: the iopl(3) call failed.\n" +msgstr "%s kan ikke få adgang til I/O-port: kaldet 'iopl(3)' mislykkedes.\n" + +#: hwclock/cmos.c:592 +msgid "Probably you need root privileges.\n" +msgstr "Du behøver nok root-rettigheder.\n" + +#: hwclock/hwclock.c:219 +#, c-format +msgid "Assuming hardware clock is kept in %s time.\n" +msgstr "Antager at maskinuret holdes i %s tid.\n" + +#: hwclock/hwclock.c:220 hwclock/hwclock.c:309 +msgid "UTC" +msgstr "GMT" + +#: hwclock/hwclock.c:220 hwclock/hwclock.c:308 +msgid "local" +msgstr "lokal" + +#: hwclock/hwclock.c:292 +#, c-format +msgid "%s: Warning: unrecognized third line in adjtime file\n" +msgstr "%s: Advarsel: ukendt tredie linie i adjtime-fil\n" + +#: hwclock/hwclock.c:294 +msgid "(Expected: `UTC' or `LOCAL' or nothing.)\n" +msgstr "(Forventet: 'UTC' (GMT), 'LOCAL' eller ingenting.)\n" + +#: hwclock/hwclock.c:303 +#, c-format +msgid "Last drift adjustment done at %d seconds after 1969\n" +msgstr "Sidste hastighedsjustering blev gjort %d sekunder efter 1969\n" + +#: hwclock/hwclock.c:305 +#, c-format +msgid "Last calibration done at %d seconds after 1969\n" +msgstr "Sidste kalibrering blev foretaget %d sekunder efter 1969\n" + +#: hwclock/hwclock.c:307 +#, c-format +msgid "Hardware clock is on %s time\n" +msgstr "Maskinuret er i %s-tid\n" + +#: hwclock/hwclock.c:309 +msgid "unknown" +msgstr "ukendt" + +#. ----------------------------------------------------------------------------- +#. Wait until the falling edge of the Hardware Clock's update flag so +#. that any time that is read from the clock immediately after we +#. return will be exact. +#. +#. The clock only has 1 second precision, so it gives the exact time only +#. once per second, right on the falling edge of the update flag. +#. +#. We wait (up to one second) either blocked waiting for an rtc device +#. or in a CPU spin loop. The former is probably not very accurate. +#. +#. Return *retcode_p == 0 if it worked, nonzero if it didn't. +#. +#. ----------------------------------------------------------------------------- +#: hwclock/hwclock.c:331 +msgid "Waiting for clock tick...\n" +msgstr "Venter på et ur-tik...\n" + +#: hwclock/hwclock.c:335 +msgid "...got clock tick\n" +msgstr "...fangede ur-tik\n" + +#: hwclock/hwclock.c:386 +#, c-format +msgid "Invalid values in hardware clock: %4d/%.2d/%.2d %.2d:%.2d:%.2d\n" +msgstr "Ugyldige værdier i maskinur: %4d/%.2d/%.2d %.2d:%.2d:%.2d\n" + +#: hwclock/hwclock.c:394 +#, c-format +msgid "Hw clock time : %4d/%.2d/%.2d %.2d:%.2d:%.2d = %ld seconds since 1969\n" +msgstr "Maskinur-tid: %4d/%.2d/%.2d %.2d:%.2d:%.2d = %ld sekunder siden 1969\n" + +#: hwclock/hwclock.c:422 +#, c-format +msgid "Time read from Hardware Clock: %4d/%.2d/%.2d %02d:%02d:%02d\n" +msgstr "Tid læst fra maskinuret: %4d/%.2d/%.2d %02d:%02d:%02d\n" + +#: hwclock/hwclock.c:449 +#, c-format +msgid "Setting Hardware Clock to %.2d:%.2d:%.2d = %d seconds since 1969\n" +msgstr "Sætter maskinuret til %.2d:%.2d:%.2d = %d sekunder siden 1969\n" + +#: hwclock/hwclock.c:455 +msgid "Clock not changed - testing only.\n" +msgstr "Uret uændret - testede kun.\n" + +#: hwclock/hwclock.c:503 +#, c-format +msgid "" +"Time elapsed since reference time has been %.6f seconds.\n" +"Delaying further to reach the next full second.\n" +msgstr "" +"Der er gået %.6f sekunder siden referencetiden.\n" +"Udskyder yderligere for at nå til næste hele sekund.\n" + +#: hwclock/hwclock.c:527 +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 "" +"Maskinurets registre indeholder værdier, der enten er ugyldige (f.eks. 50. " +"dag i måneden) eller udenfor det område, vi kan håndtere (f.eks. år 2095).\n" + +#: hwclock/hwclock.c:537 +#, c-format +msgid "%s %.6f seconds\n" +msgstr "%s %.6f sekunder\n" + +#: hwclock/hwclock.c:571 +msgid "No --date option specified.\n" +msgstr "Intet --date tilvalg angivet.\n" + +#. Quotation marks in date_opt would ruin the date command we construct. +#. +#: hwclock/hwclock.c:576 +msgid "" +"The value of the --date option is not a valid date.\n" +"In particular, it contains quotation marks.\n" +msgstr "" +"Værdien af --date tilvalget er ikke en gyldig dato.\n" +"Mere specifikt, indeholder den anførselstegn.\n" + +#: hwclock/hwclock.c:582 +#, c-format +msgid "Issuing date command: %s\n" +msgstr "Udfører 'date'-kommandoen: %s\n" + +#: hwclock/hwclock.c:586 +msgid "Unable to run 'date' program in /bin/sh shell. popen() failed" +msgstr "Kunne ikke køre 'date'-programmet i /bin/sh skallen. popen() mislykkedes" + +#: hwclock/hwclock.c:592 +#, c-format +msgid "response from date command = %s\n" +msgstr "svar fra 'date'-kommandoen = %s\n" + +#: hwclock/hwclock.c:594 +#, c-format +msgid "" +"The date command issued by %s returned unexpected results.\n" +"The command was:\n" +" %s\n" +"The response was:\n" +" %s\n" +msgstr "" +"'date'-kommandoen sendt af %s returnerede uventede resultater.\n" +"Kommandoen var:\n" +" %s\n" +"Svaret var:\n" +" %s\n" + +#: hwclock/hwclock.c:603 +#, c-format +msgid "" +"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 "" +"'date'-kommandoen sendt af %s returnerede noget andet end et heltal, hvor " +"den konverterede tid forventedes.\n" +"Kommandoen var:\n" +" %s\n" +"Svaret var:\n" +" %s\n" + +#: hwclock/hwclock.c:613 +#, c-format +msgid "date string %s equates to %d seconds since 1969.\n" +msgstr "Datoteksten %s svarer til %d sekunder siden 1969.\n" + +#: hwclock/hwclock.c:645 +msgid "" +"The Hardware Clock does not contain a valid time, so we cannot set the " +"System Time from it.\n" +msgstr "" +"Maskinuret indeholder ikke en gyldig tid, så vi kan ikke sætte systemuret " +"med det.\n" + +#: hwclock/hwclock.c:667 +msgid "Calling settimeofday:\n" +msgstr "Kalder 'settimeofday':\n" + +#: hwclock/hwclock.c:668 +#, c-format +msgid "\ttv.tv_sec = %ld, tv.tv_usec = %ld\n" +msgstr "\ttv.tv_sec = %ld, tv.tv_usec = %ld\n" + +#: hwclock/hwclock.c:670 +#, c-format +msgid "\ttz.tz_minuteswest = %d\n" +msgstr "\ttz.tz_minuteswest = %d\n" + +#: hwclock/hwclock.c:673 +msgid "Not setting system clock because running in test mode.\n" +msgstr "Sætter ikke systemuret, da der køres i testtilstand.\n" + +#: hwclock/hwclock.c:681 +msgid "Must be superuser to set system clock.\n" +msgstr "Skal være superbruger for at sætte systemuret.\n" + +#: hwclock/hwclock.c:683 +msgid "settimeofday() failed" +msgstr "settimeofday() mislykkedes" + +#: hwclock/hwclock.c:716 +msgid "" +"Not adjusting drift factor because the Hardware Clock previously contained " +"garbage.\n" +msgstr "" +"Justerede ikke hastighedsfaktoren, da maskinuret tidligere havde en ugyldig " +"værdi.\n" + +#: hwclock/hwclock.c:720 +msgid "" +"Not adjusting drift factor because it has been less than a day since the " +"last calibration.\n" +msgstr "" +"Justerede ikke hastighedsfaktoren, da det er mindre en et døgn siden sidste " +"kalibrering.\n" + +#: hwclock/hwclock.c:729 +#, c-format +msgid "" +"Clock drifted %d 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 "" +"Uret drev %d sekunder i løbet af de sidste %d sekunder på trods af en " +"hastighedsfaktor på %f sekunder/døgn.\n" +"Justerer hastighedsfaktoren med %f sekunder/døgn\n" + +#: hwclock/hwclock.c:780 +#, c-format +msgid "Time since last adjustment is %d seconds\n" +msgstr "%d sekunder siden sidste justering\n" + +#: hwclock/hwclock.c:782 +#, c-format +msgid "Need to insert %d seconds and refer time back %.6f seconds ago\n" +msgstr "Skal indsætte %d sekunder og stille uret %.6f sekunder tilbage\n" + +#: hwclock/hwclock.c:811 +msgid "Not updating adjtime file because of testing mode.\n" +msgstr "Opdaterer ikke adjtime-filen, da der køres i testtilstand.\n" + +#: hwclock/hwclock.c:812 +#, c-format +msgid "" +"Would have written the following to %s:\n" +"%s" +msgstr "" +"Ville have skrevet følgende til %s:\n" +"%s" + +#: hwclock/hwclock.c:836 +msgid "Drift adjustment parameters not updated.\n" +msgstr "Hastighedsjusteringen blev ikke opdateret.\n" + +#: hwclock/hwclock.c:877 +msgid "The Hardware Clock does not contain a valid time, so we cannot adjust it.\n" +msgstr "Maskinuret indeholder ikke en gyldig tid, så vi kan ikke justere det.\n" + +#: hwclock/hwclock.c:901 +msgid "Needed adjustment is less than one second, so not setting clock.\n" +msgstr "Den krævede justering er mindre end ét sekund, så vi sætter ikke uret.\n" + +#: hwclock/hwclock.c:927 +#, c-format +msgid "Using %s.\n" +msgstr "Bruger %s.\n" + +#: hwclock/hwclock.c:929 +msgid "No usable clock interface found.\n" +msgstr "Fandt ingen brugbare ur-grænseflader.\n" + +#: hwclock/hwclock.c:1024 +msgid "Unable to set system clock.\n" +msgstr "Kunne ikke sætte systemuret.\n" + +#: hwclock/hwclock.c:1053 +msgid "" +"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 "" +"Kernen holder en epokeværdi for maskinuret på Alpha-maskiner\n" +"Denne kopi af hwclock blev kompileret til en anden maskine end Alpha\n" +"(og kører derfor sandsynligvis ikke på en Alpha nu). Intet blev gjort.\n" + +#: hwclock/hwclock.c:1062 +msgid "Unable to get the epoch value from the kernel.\n" +msgstr "Kunne ikke hente en epokeværdi fra kernen.\n" + +#: hwclock/hwclock.c:1064 #, c-format -msgid "Typematic Rate set to %.1f cps (delay = %d ms)\n" -msgstr "Tastaturhastighed sat til %.1f tps (pause = %d ms)\n" +msgid "Kernel is assuming an epoch value of %lu\n" +msgstr "Kernen går ud fra en epokeværdi på %lu\n" -#: kbd/kbdrate.c:222 -msgid "Usage: kbdrate [-V] [-s] [-r rate] [-d delay]\n" -msgstr "Brug: kbdrate [-V] [-s] [-r hastighed] [-d pause]\n" +#: hwclock/hwclock.c:1067 +msgid "" +"To set the epoch value, you must use the 'epoch' option to tell to what " +"value to set it.\n" +msgstr "" +"For at sætte epokeværdien, skal du bruge tilvalget 'epoch' for at angive " +"hvilken værdi, den skal sættes til\n" + +#: hwclock/hwclock.c:1070 +#, c-format +msgid "Not setting the epoch to %d - testing only.\n" +msgstr "Sætter IKKE epokeværdien til %d - tester bare.\n" -#: kbd/kbdrate.c:252 -msgid "Cannot open /dev/port" -msgstr "Kunne ikke åbne /dev/port" +#: hwclock/hwclock.c:1073 +msgid "Unable to set the epoch value in the kernel.\n" +msgstr "Kunne ikke sætte epokeværdien i kernen.\n" + +#: hwclock/hwclock.c:1102 +#, c-format +msgid "" +"hwclock - query and set the hardware clock (RTC)\n" +"\n" +"Usage: hwclock [function] [options...]\n" +"\n" +"Functions:\n" +" --help show this help\n" +" --show read hardware clock and print result\n" +" --set set the rtc to the time given with --date\n" +" --hctosys set the system time from the hardware clock\n" +" --systohc set the hardware clock to the current system time\n" +" --adjust adjust the rtc to account for systematic drift since \n" +" the clock was last set or adjusted\n" +" --getepoch print out the kernel's hardware clock epoch value\n" +" --setepoch set the kernel's hardware clock epoch value to the \n" +" value given with --epoch\n" +" --version print out the version of hwclock to stdout\n" +"\n" +"Options: \n" +" --utc the hardware clock is kept in coordinated universal time\n" +" --localtime the hardware clock is kept in local time\n" +" --directisa access the ISA bus directly instead of %s\n" +" --badyear ignore rtc's year because the bios is broken\n" +" --date specifies the time to which to set the hardware clock\n" +" --epoch=year specifies the year which is the beginning of the \n" +" hardware clock's epoch value\n" +msgstr "" +"hwclock - læs og sæt maskinuret (RTC)\n" +"\n" +"Brug: hwclock [funktion] [tilvalg...]\n" +"\n" +"Funktioner:\n" +" --help vis denne hjælp\n" +" --show aflæs maskinuret og vis resultatet\n" +" --set sæt uret til tiden angivet med --date\n" +" --hctosys sæt systemuret til maskinurets tid\n" +" --systohc sæt maskinuret til systemurets tid\n" +" --adjust kalibrér systemuret, så det tager højde for systematisk\n" +" hastighedsfejl siden uret sidst blev sat eller justeret\n" +" --getepoch vis kernens epokeværdi for maskinuret\n" +" --setepoch sæt epokeværdien for kernens maskinur til den værdi,\n" +" der angives med --epoch\n" +" --version udlæs hwclock's version til standard-ud\n" +"\n" +"Tilvalg: \n" +" --utc maskinuret holdes i GMT (koordineret universel tid)\n" +" --localtime maskinuret holdes i lokal tid\n" +" --directisa tilgå ISA-bussen direkte i stedet for %s\n" +" --badyear ignorér maskinurets årstal, da bios'en er fejlbehæftet\n" +" --date angiver tiden, som maskinuret skal sættes til\n" +" --epoch=år angiver det år, som er begyndelsen på maskinurets\n" +" epokeværdi\n" + +#: hwclock/hwclock.c:1127 +msgid "" +" --jensen, --arc, --srm, --funky-toy\n" +" tell hwclock the type of alpha you have (see hwclock(8))\n" +msgstr "" +" --jensen, --arc, --srm, --funky-toy\n" +" angiv hvilken slags alpha du har (se hwclock(8))\n" + +#: hwclock/hwclock.c:1227 +#, c-format +msgid "%s takes no non-option arguments. You supplied %d.\n" +msgstr "%s accepterer ingen parametre. Du angav parameteren %d.\n" + +#: hwclock/hwclock.c:1237 +msgid "" +"You have specified multiple function options.\n" +"You can only perform one function at a time.\n" +msgstr "" +"Du har angivet flere funktionstilvalg.\n" +"Du kan kun udføre én funktion ad gangen.\n" + +#: hwclock/hwclock.c:1243 +#, c-format +msgid "" +"%s: The --utc and --localtime options are mutually exclusive. You specified " +"both.\n" +msgstr "%s: Tilvalgene --utc og --localtime udelukker hinanden. Du angav begge.\n" + +#: hwclock/hwclock.c:1256 +msgid "No usable set-to time. Cannot set clock.\n" +msgstr "Ingen brugbar set-til-tid. Kan ikke sætte uret.\n" + +#: hwclock/hwclock.c:1271 +msgid "Sorry, only the superuser can change the Hardware Clock.\n" +msgstr "Beklager, kun superbrugeren kan ændre maskinuret.\n" + +#: hwclock/hwclock.c:1275 +msgid "Sorry, only the superuser can change the System Clock.\n" +msgstr "Beklager, kun superbrugeren kan ændre systemuret.\n" + +#: hwclock/hwclock.c:1279 +msgid "" +"Sorry, only the superuser can change the Hardware Clock epoch in the " +"kernel.\n" +msgstr "Beklager, kun superbrugeren kan ændre maskinurets epokeværdi i kernen.\n" + +#: hwclock/hwclock.c:1299 +msgid "Cannot access the Hardware Clock via any known method.\n" +msgstr "Kan ikke tilgå maskinuret med nogen kendt metode.\n" + +#: hwclock/hwclock.c:1302 +msgid "" +"Use the --debug option to see the details of our search for an access " +"method.\n" +msgstr "" +"Benyt tilvalget --debug for at se detaljerne fra vores søgning efter en " +"tilgangsmetode.\n" + +#: hwclock/kd.c:41 +msgid "Waiting in loop for time from KDGHWCLK to change\n" +msgstr "Venter i en løkke for at tiden fra KDGHWCLK ændres\n" + +#: hwclock/kd.c:44 +msgid "KDGHWCLK ioctl to read time failed" +msgstr "KDGHWCLK ioctl for at aflæse tiden mislykkedes" + +#: hwclock/kd.c:65 hwclock/rtc.c:151 +msgid "Timed out waiting for time change.\n" +msgstr "Tidsudløb mens der ventedes på tidsændring.\n" + +#: hwclock/kd.c:69 +msgid "KDGHWCLK ioctl to read time failed in loop" +msgstr "KDGHWCLK ioctl for at aflæse tiden mislykkedes i løkke" + +#: hwclock/kd.c:91 +msgid "ioctl() failed to read time from /dev/tty1" +msgstr "ioctl() kunne ikke aflæse tiden fra /dev/tty1" + +#: hwclock/kd.c:127 +msgid "ioctl KDSHWCLK failed" +msgstr "KDGHWCLK-ioctl mislykkedes" + +#: hwclock/kd.c:157 +msgid "KDGHWCLK ioctl failed" +msgstr "KDGHWCLK ioctl mislykkedes" + +#: hwclock/kd.c:163 +msgid "Can't open /dev/tty1" +msgstr "Kunne ikke åbne /dev/tty1" + +#: hwclock/rtc.c:105 +#, c-format +msgid "ioctl() to %s to read the time failed.\n" +msgstr "ioctl() til %s for at aflæse tiden mislykkedes.\n" + +#: hwclock/rtc.c:136 +#, c-format +msgid "Waiting in loop for time from %s to change\n" +msgstr "Venter i løkke på at tiden fra %s ændres\n" + +#: hwclock/rtc.c:172 hwclock/rtc.c:229 +#, c-format +msgid "open() of %s failed" +msgstr "open() af %s mislykkedes" + +#: hwclock/rtc.c:190 +#, c-format +msgid "%s does not have interrupt functions. " +msgstr "%s har ingen interrupt-funktioner. " + +#: hwclock/rtc.c:198 +#, c-format +msgid "read() to %s to wait for clock tick failed" +msgstr "read() af %s for at vente på en ur-tik mislykkedes" + +#: hwclock/rtc.c:206 +#, c-format +msgid "ioctl() to %s to turn off update interrupts failed" +msgstr "ioctl() til %s for at afbryde opdaterings-interrupts mislykkedes" + +#: hwclock/rtc.c:209 +#, c-format +msgid "ioctl() to %s to turn on update interrupts failed unexpectedly" +msgstr "ioctl() til %s for at afbryde opdaterings-interrupts mislykkedes uventet" + +#: hwclock/rtc.c:252 hwclock/rtc.c:331 hwclock/rtc.c:376 +#, c-format +msgid "Unable to open %s" +msgstr "Kunne ikke åbne %s" + +#: hwclock/rtc.c:275 +#, c-format +msgid "ioctl() to %s to set the time failed.\n" +msgstr "ioctl() til %s for at sætte tiden mislykkedes.\n" + +#: hwclock/rtc.c:279 +#, c-format +msgid "ioctl(%s) was successful.\n" +msgstr "ioctl(%s) lykkedes.\n" + +#: hwclock/rtc.c:309 +#, c-format +msgid "Open of %s failed" +msgstr "Åbning af %s mislykkedes" + +#: hwclock/rtc.c:327 hwclock/rtc.c:372 +#, 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 "" +"For at manipulere epokeværdien i kernen, skal vi have adgang til Linux's " +"maskinursenhed via enhedsspecialfilen '%s'. Denne fil eksisterer ikke på " +"dette system.\n" + +#: hwclock/rtc.c:338 +#, c-format +msgid "ioctl(RTC_EPOCH_READ) to %s failed" +msgstr "ioctl(RTC_EPOCH_READ) til %s mislykkedes" + +#: hwclock/rtc.c:344 +#, c-format +msgid "we have read epoch %ld from %s with RTC_EPOCH_READ ioctl.\n" +msgstr "vi har aflæst epokeværdi %ld fra %s med RTC_EPOCH_READ ioctl.\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:364 +#, c-format +msgid "The epoch value may not be less than 1900. You requested %ld\n" +msgstr "Epokeværdien må ikke være mindre end 1900. Du bad om %ld\n" + +#: hwclock/rtc.c:381 +#, c-format +msgid "setting epoch to %ld with RTC_EPOCH_SET ioctl to %s.\n" +msgstr "sætter epokeværdien til %ld med en RTC_EPOCH_SET ioctl til %s.\n" + +#: hwclock/rtc.c:386 +#, c-format +msgid "The kernel device driver for %s does not have the RTC_EPOCH_SET ioctl.\n" +msgstr "Kernens enheds-driver for %s har ikke en RTC_EPOCH_SET ioctl.\n" + +#: hwclock/rtc.c:389 +#, c-format +msgid "ioctl(RTC_EPOCH_SET) to %s failed" +msgstr "ioctl(RTC_EPOCH_SET) til %s mislykkedes" + +#: hwclock/shhopt.c:255 hwclock/shhopt.c:281 +#, c-format +msgid "invalid number `%s'\n" +msgstr "Ugyldigt tal '%s'\n" + +#: hwclock/shhopt.c:258 hwclock/shhopt.c:284 +#, c-format +msgid "number `%s' to `%s' out of range\n" +msgstr "tallet '%s' til '%s' er ikke i det gyldige område\n" + +#: hwclock/shhopt.c:398 +#, c-format +msgid "unrecognized option `%s'\n" +msgstr "ukendt tilvalg '%s'\n" + +#: hwclock/shhopt.c:411 hwclock/shhopt.c:449 +#, c-format +msgid "option `%s' requires an argument\n" +msgstr "tilvalget '%s' kræver en parameter\n" + +#: hwclock/shhopt.c:417 +#, c-format +msgid "option `%s' doesn't allow an argument\n" +msgstr "tilvalget '%s' tillader ikke en parameter\n" + +#: hwclock/shhopt.c:439 +#, c-format +msgid "unrecognized option `-%c'\n" +msgstr "ukendt tilvalg '-%c'\n" #: login-utils/agetty.c:306 msgid "calling open_tty\n" @@ -5413,75 +5470,65 @@ msgstr "for mange forskellige hastigheder" msgid "exiting parsespeeds\n" msgstr "afslutter 'parsespeeds'\n" -#: login-utils/agetty.c:616 -#, c-format -msgid "%s: open for update: %m" -msgstr "%s: åben for opdatering: %m" - -#: login-utils/agetty.c:634 -#, c-format -msgid "%s: no utmp entry" -msgstr "%s: ingen utmp-indgang" - -#: login-utils/agetty.c:663 +#: login-utils/agetty.c:636 #, c-format msgid "/dev: chdir() failed: %m" msgstr "/dev: chdir() mislykkedes: %m" -#: login-utils/agetty.c:667 +#: login-utils/agetty.c:640 #, c-format msgid "/dev/%s: not a character device" msgstr "/dev/%s: ikke en tegnenhed" #. ignore close(2) errors -#: login-utils/agetty.c:674 +#: login-utils/agetty.c:647 msgid "open(2)\n" msgstr "open(2)\n" -#: login-utils/agetty.c:676 +#: login-utils/agetty.c:649 #, c-format msgid "/dev/%s: cannot open as standard input: %m" msgstr "/dev/%s: kan ikke åbne som standard-ind: %m" -#: login-utils/agetty.c:686 +#: login-utils/agetty.c:659 #, c-format msgid "%s: not open for read/write" msgstr "%s: ikke åben for læsning/skrivning" #. Set up standard output and standard error file descriptors. -#: login-utils/agetty.c:690 +#: login-utils/agetty.c:663 msgid "duping\n" msgstr "duplikerer\n" #. set up stdout and stderr -#: login-utils/agetty.c:692 +#: login-utils/agetty.c:665 #, c-format msgid "%s: dup problem: %m" msgstr "%s: dup problem: %m" -#: login-utils/agetty.c:762 +#: login-utils/agetty.c:735 msgid "term_io 2\n" msgstr "term_io 2\n" -#: login-utils/agetty.c:947 +#: login-utils/agetty.c:920 msgid "user" msgstr "bruger" -#: login-utils/agetty.c:947 +#: login-utils/agetty.c:920 msgid "users" msgstr "brugere" -#: login-utils/agetty.c:1035 +#: login-utils/agetty.c:1008 #, c-format msgid "%s: read: %m" msgstr "%s: læst: %m" -#: login-utils/agetty.c:1081 +#: login-utils/agetty.c:1054 #, c-format msgid "%s: input overrun" msgstr "%s: inddataoverløb" -#: login-utils/agetty.c:1205 +#: login-utils/agetty.c:1178 #, c-format msgid "" "Usage: %s [-hiLmw] [-l login_program] [-t timeout] [-I initstring] [-H " @@ -5494,21 +5541,11 @@ msgstr "" "eller\t[-hiLmw] [-l login_program] [-t tidsudløb] [-I initstreng] [-H " "login_vært] linie baud_rate,... [termtype]\n" -#: login-utils/checktty.c:41 -#, c-format -msgid "badlogin: %s\n" -msgstr "badlogin: %s\n" - -#: login-utils/checktty.c:47 -#, c-format -msgid "sleepexit %d\n" -msgstr "sleepexit %d\n" - -#: login-utils/checktty.c:103 login-utils/checktty.c:125 +#: login-utils/checktty.c:104 login-utils/checktty.c:125 msgid "login: memory low, login may fail\n" msgstr "login: ikke megen hukommelse, login kan mislykkes\n" -#: login-utils/checktty.c:104 +#: login-utils/checktty.c:105 msgid "can't malloc for ttyclass" msgstr "kunne ikke allokere hukommelse for ttyclass (malloc)" @@ -5517,7 +5554,7 @@ msgid "can't malloc for grplist" msgstr "kunne ikke allokere hukommelse for grplist (malloc)" #. there was a default rule, but user didn't match, reject! -#: login-utils/checktty.c:426 +#: login-utils/checktty.c:422 #, c-format msgid "Login on %s from %s denied by default.\n" msgstr "Login på %s fra %s afvises som standard.\n" @@ -5526,48 +5563,48 @@ msgstr "Login på %s fra %s afvises som standard.\n" #. matching our username, but it doesn't contain the #. name of the tty where the user is trying to log in. #. So deny access! -#: login-utils/checktty.c:437 +#: login-utils/checktty.c:433 #, c-format msgid "Login on %s from %s denied.\n" msgstr "Login på %s fra %s afvist.\n" -#: login-utils/chfn.c:121 login-utils/chsh.c:107 +#: login-utils/chfn.c:122 login-utils/chsh.c:107 #, c-format msgid "%s: you (user %d) don't exist.\n" msgstr "%s: du (bruger %d) eksisterer ikke.\n" -#: login-utils/chfn.c:128 login-utils/chsh.c:114 +#: login-utils/chfn.c:129 login-utils/chsh.c:114 #, c-format msgid "%s: user \"%s\" does not exist.\n" msgstr "%s: bruger \"%s\" eksisterer ikke.\n" -#: login-utils/chfn.c:133 login-utils/chsh.c:119 +#: login-utils/chfn.c:134 login-utils/chsh.c:119 #, c-format msgid "%s: can only change local entries; use yp%s instead.\n" msgstr "%s: kan kun ændre lokale indgange; brug yp%s i stedet\n" -#: login-utils/chfn.c:145 +#: login-utils/chfn.c:146 #, c-format msgid "Changing finger information for %s.\n" msgstr "Ændrer finger-information for %s.\n" -#: login-utils/chfn.c:151 login-utils/chfn.c:155 login-utils/chfn.c:162 -#: login-utils/chfn.c:166 login-utils/chsh.c:143 login-utils/chsh.c:147 +#: login-utils/chfn.c:152 login-utils/chfn.c:156 login-utils/chfn.c:163 +#: login-utils/chfn.c:167 login-utils/chsh.c:143 login-utils/chsh.c:147 #: login-utils/chsh.c:154 login-utils/chsh.c:158 msgid "Password error." msgstr "Fejl i adgangskode." -#: login-utils/chfn.c:175 login-utils/chsh.c:167 login-utils/login.c:685 -#: login-utils/newgrp.c:47 login-utils/simpleinit.c:290 mount/lomount.c:221 -#: mount/lomount.c:227 +#: login-utils/chfn.c:176 login-utils/chsh.c:167 login-utils/login.c:700 +#: login-utils/newgrp.c:48 login-utils/simpleinit.c:298 mount/lomount.c:248 +#: mount/lomount.c:253 msgid "Password: " msgstr "Adgangskode: " -#: login-utils/chfn.c:178 login-utils/chsh.c:170 +#: login-utils/chfn.c:179 login-utils/chsh.c:170 msgid "Incorrect password." msgstr "Ugyldig adgangskode." -#: login-utils/chfn.c:189 +#: login-utils/chfn.c:190 msgid "Finger information not changed.\n" msgstr "Finger-informationer ikke ændret.\n" @@ -5742,20 +5779,20 @@ msgstr "%s har ikke de korrekte filmodi" msgid "can't read data from %s" msgstr "kunne ikke læse data fra %s" -#: login-utils/islocal.c:37 +#: login-utils/islocal.c:38 #, c-format msgid "Can't read %s, exiting." msgstr "Kunne ikke læse %s, afbryder." -#: login-utils/last.c:143 +#: login-utils/last.c:148 msgid "usage: last [-#] [-f file] [-t tty] [-h hostname] [user ...]\n" -msgstr "brug: last [-#] [-f fil] [-t tty] [-h tjerner] [bruger ...]\n" +msgstr "brug: last [-#] [-f fil] [-t tty] [-h vært] [bruger ...]\n" -#: login-utils/last.c:279 +#: login-utils/last.c:312 msgid " still logged in" msgstr " stadig logget på" -#: login-utils/last.c:301 +#: login-utils/last.c:340 #, c-format msgid "" "\n" @@ -5764,15 +5801,15 @@ msgstr "" "\n" "wtmp starter %s" -#: login-utils/last.c:357 login-utils/last.c:375 login-utils/last.c:426 +#: login-utils/last.c:396 login-utils/last.c:414 login-utils/last.c:465 msgid "last: malloc failure.\n" msgstr "last: hukommelsesallokerings-fejl (malloc).\n" -#: login-utils/last.c:402 +#: login-utils/last.c:441 msgid "last: gethostname" msgstr "last: gethostname" -#: login-utils/last.c:451 +#: login-utils/last.c:490 #, c-format msgid "" "\n" @@ -5781,20 +5818,20 @@ msgstr "" "\n" "afbrudt %10.10s %5.5s \n" -#: login-utils/login.c:373 +#: login-utils/login.c:379 msgid "login: -h for super-user only.\n" msgstr "login: -h er kun for superbrugeren.\n" -#: login-utils/login.c:398 +#: login-utils/login.c:404 msgid "usage: login [-fp] [username]\n" msgstr "brug: login [-fp] [brugernavn]\n" -#: login-utils/login.c:501 +#: login-utils/login.c:509 #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "login: PAM-fejl, afbryder: %s\n" -#: login-utils/login.c:503 +#: login-utils/login.c:511 #, c-format msgid "Couldn't initialize PAM: %s" msgstr "Kunne ikke klargøre PAM: %s" @@ -5805,16 +5842,16 @@ msgstr "Kunne ikke klargøre PAM: %s" #. * PAM doesn't have an interface to specify the "Password: " string #. * (yet). #. -#: login-utils/login.c:519 +#: login-utils/login.c:527 msgid "login: " msgstr "login: " -#: login-utils/login.c:553 +#: login-utils/login.c:561 #, c-format msgid "FAILED LOGIN %d FROM %s FOR %s, %s" msgstr "MISLYKKET LOGIN %d FRA %s FOR %s, %s" -#: login-utils/login.c:555 +#: login-utils/login.c:563 msgid "" "Login incorrect\n" "\n" @@ -5822,17 +5859,17 @@ msgstr "" "Login ugyldigt\n" "\n" -#: login-utils/login.c:564 +#: login-utils/login.c:572 #, c-format msgid "TOO MANY LOGIN TRIES (%d) FROM %s FOR %s, %s" msgstr "FOR MANGE LOGINFORSØG (%d) FRA %s FOR %s, %s" -#: login-utils/login.c:568 +#: login-utils/login.c:576 #, c-format msgid "FAILED LOGIN SESSION FROM %s FOR %s, %s" msgstr "MISLYKKET LOGINSESSION FRA %s FOR %s, %s" -#: login-utils/login.c:571 +#: login-utils/login.c:579 msgid "" "\n" "Login incorrect\n" @@ -5840,30 +5877,30 @@ msgstr "" "\n" "Login ugyldigt\n" -#: login-utils/login.c:620 +#: login-utils/login.c:635 msgid "Illegal username" msgstr "Ugyldigt brugernavn" -#: login-utils/login.c:663 +#: login-utils/login.c:678 #, c-format msgid "%s login refused on this terminal.\n" msgstr "%s login afvist på denne terminal.\n" -#: login-utils/login.c:668 +#: login-utils/login.c:683 #, c-format msgid "LOGIN %s REFUSED FROM %s ON TTY %s" msgstr "LOGIN %s AFVIST FRA %s PÅ TTY %s" -#: login-utils/login.c:672 +#: login-utils/login.c:687 #, c-format msgid "LOGIN %s REFUSED ON TTY %s" msgstr "LOGIN %s AFVIST PÅ TTY %s" -#: login-utils/login.c:725 +#: login-utils/login.c:740 msgid "Login incorrect\n" msgstr "Login ugyldigt\n" -#: login-utils/login.c:747 +#: login-utils/login.c:762 msgid "" "Too many users logged on already.\n" "Try again later.\n" @@ -5871,100 +5908,78 @@ msgstr "" "For mange brugere er allerede logget på.\n" "Prøv igen senere.\n" -#: login-utils/login.c:751 +#: login-utils/login.c:766 msgid "You have too many processes running.\n" msgstr "Du har for mange processer kørende.\n" -#: login-utils/login.c:797 -msgid "Warning: no Kerberos tickets issued\n" -msgstr "Advarsel: ingen Kerberos-billetter udstedt\n" - -#: login-utils/login.c:809 -msgid "Sorry -- your password has expired.\n" -msgstr "Beklager -- din adgangskode er udløbet.\n" - -#: login-utils/login.c:815 -#, c-format -msgid "Warning: your password expires on %d %s, %d.\n" -msgstr "Advarsel: din adgangskode udløber den %d %s, %d.\n" - -#: login-utils/login.c:823 -msgid "Sorry -- your account has expired.\n" -msgstr "Beklager -- din konto er udløbet.\n" - -#: login-utils/login.c:829 -#, c-format -msgid "Warning: your account expires on %d %s, %d.\n" -msgstr "Advarsel: din konto udløber på %d %s, %d.\n" - -#: login-utils/login.c:1066 +#: login-utils/login.c:1001 #, c-format msgid "DIALUP AT %s BY %s" msgstr "OPRINGNING KLOKKEN %s AF %s" -#: login-utils/login.c:1073 +#: login-utils/login.c:1008 #, c-format msgid "ROOT LOGIN ON %s FROM %s" msgstr "ROOT LOGIN PÅ %s FRA %s" -#: login-utils/login.c:1076 +#: login-utils/login.c:1011 #, c-format msgid "ROOT LOGIN ON %s" msgstr "ROOT LOGIN PÅ %s" -#: login-utils/login.c:1079 +#: login-utils/login.c:1014 #, c-format msgid "LOGIN ON %s BY %s FROM %s" msgstr "LOGIN PÅ %s AF %s FRA %s" -#: login-utils/login.c:1082 +#: login-utils/login.c:1017 #, c-format msgid "LOGIN ON %s BY %s" msgstr "LOGIN PÅ %s AF %s" -#: login-utils/login.c:1094 +#: login-utils/login.c:1029 #, c-format msgid "You have %smail.\n" -msgstr "Du har %sepost.\n" +msgstr "Du har %spost.\n" -#: login-utils/login.c:1095 +#: login-utils/login.c:1030 msgid "new " msgstr "ny " #. error in fork() -#: login-utils/login.c:1113 +#: login-utils/login.c:1055 #, c-format msgid "login: failure forking: %s" msgstr "login: mislykket forgrening: %s" -#: login-utils/login.c:1128 +#: login-utils/login.c:1075 msgid "setuid() failed" msgstr "setuid() mislykkedes" -#: login-utils/login.c:1134 +#: login-utils/login.c:1081 #, c-format msgid "No directory %s!\n" msgstr "Intet katalog %s!\n" -#: login-utils/login.c:1138 +#: login-utils/login.c:1085 msgid "Logging in with home = \"/\".\n" msgstr "Logger ind med hjemmekatalog = \"/\".\n" -#: login-utils/login.c:1146 +#: login-utils/login.c:1093 msgid "login: no memory for shell script.\n" msgstr "login: ingen hukommelse for skal-skript.\n" -#: login-utils/login.c:1174 +#: login-utils/login.c:1120 #, c-format msgid "login: couldn't exec shell script: %s.\n" msgstr "login: kunne ikke køre skal-skript: %s.\n" -#: login-utils/login.c:1177 +#: login-utils/login.c:1123 #, c-format msgid "login: no shell: %s.\n" msgstr "login: ingen skal: %s.\n" -#: login-utils/login.c:1191 +#: login-utils/login.c:1138 #, c-format msgid "" "\n" @@ -5973,62 +5988,62 @@ msgstr "" "\n" "%s login: " -#: login-utils/login.c:1202 +#: login-utils/login.c:1149 msgid "login name much too long.\n" msgstr "loginnavn alt for langt.\n" -#: login-utils/login.c:1203 +#: login-utils/login.c:1150 msgid "NAME too long" msgstr "for langt NAVN" -#: login-utils/login.c:1210 +#: login-utils/login.c:1157 msgid "login names may not start with '-'.\n" msgstr "loginnavne må ikke starte med '-'.\n" -#: login-utils/login.c:1220 +#: login-utils/login.c:1167 msgid "too many bare linefeeds.\n" msgstr "for mange tomme linieskift,\n" -#: login-utils/login.c:1221 +#: login-utils/login.c:1168 msgid "EXCESSIVE linefeeds" msgstr "VOLDSOMT MANGE linieskift" -#: login-utils/login.c:1231 +#: login-utils/login.c:1179 #, c-format msgid "Login timed out after %d seconds\n" msgstr "Login udløb efter %d sekunder\n" -#: login-utils/login.c:1325 +#: login-utils/login.c:1275 #, c-format msgid "Last login: %.*s " msgstr "Sidste login: %.*s " -#: login-utils/login.c:1329 +#: login-utils/login.c:1279 #, c-format msgid "from %.*s\n" msgstr "fra %.*s\n" -#: login-utils/login.c:1332 +#: login-utils/login.c:1282 #, c-format msgid "on %.*s\n" msgstr "på %.*s\n" -#: login-utils/login.c:1355 +#: login-utils/login.c:1303 #, c-format msgid "LOGIN FAILURE FROM %s, %s" msgstr "LOGINFEJL FRA %s, %s" -#: login-utils/login.c:1358 +#: login-utils/login.c:1306 #, c-format msgid "LOGIN FAILURE ON %s, %s" msgstr "LOGINFEJL på %s, %s" -#: login-utils/login.c:1362 +#: login-utils/login.c:1310 #, c-format msgid "%d LOGIN FAILURES FROM %s, %s" msgstr "%d LOGINFEJL fra %s, %s" -#: login-utils/login.c:1365 +#: login-utils/login.c:1313 #, c-format msgid "%d LOGIN FAILURES ON %s, %s" msgstr "%d LOGINFEJL PÅ %s, %s" @@ -6043,171 +6058,171 @@ msgstr "er n\n" #: login-utils/mesg.c:112 msgid "usage: mesg [y | n]\n" -msgstr "usage: mesg [j | n]\n" +msgstr "brug: mesg [j | n]\n" -#: login-utils/newgrp.c:67 +#: login-utils/newgrp.c:68 msgid "newgrp: Who are you?" msgstr "newgrp: Hvem er du?" -#: login-utils/newgrp.c:75 login-utils/newgrp.c:85 +#: login-utils/newgrp.c:76 login-utils/newgrp.c:86 msgid "newgrp: setgid" msgstr "newgrp: setgid" -#: login-utils/newgrp.c:80 +#: login-utils/newgrp.c:81 msgid "newgrp: No such group." msgstr "newgrp: Ingen sådan gruppe." -#: login-utils/newgrp.c:89 +#: login-utils/newgrp.c:90 msgid "newgrp: Permission denied" msgstr "newgrp: Nægtet adgang" -#: login-utils/newgrp.c:96 +#: login-utils/newgrp.c:97 msgid "newgrp: setuid" msgstr "newgrp: setuid" -#: login-utils/newgrp.c:102 +#: login-utils/newgrp.c:103 msgid "No shell" msgstr "Ingen skal" -#: login-utils/passwd.c:159 +#: login-utils/passwd.c:161 msgid "The password must have at least 6 characters, try again.\n" msgstr "Adgangskoden skal bestå af mindst 6 tegn. Prøv igen.\n" -#: login-utils/passwd.c:172 +#: login-utils/passwd.c:174 msgid "The password must contain characters out of two of the following\n" msgstr "Adgangskoden skal indeholde tegn fra de følgende to klasser:\n" -#: login-utils/passwd.c:173 +#: login-utils/passwd.c:175 msgid "classes: upper and lower case letters, digits and non alphanumeric\n" msgstr "Store og små bogstaver, cifre og ikke-alfanumeriske tegn.\n" -#: login-utils/passwd.c:174 +#: login-utils/passwd.c:176 msgid "characters. See passwd(1) for more information.\n" msgstr "Se passwd(1) for flere detaljer.\n" -#: login-utils/passwd.c:179 +#: login-utils/passwd.c:181 msgid "You cannot reuse the old password.\n" msgstr "Du kan ikke genbruge den gamle adgangskode.\n" -#: login-utils/passwd.c:184 +#: login-utils/passwd.c:186 msgid "Please don't use something like your username as password!\n" msgstr "Brug venligst ikke brugernavn og lignende som adgangskode!\n" -#: login-utils/passwd.c:195 login-utils/passwd.c:202 +#: login-utils/passwd.c:197 login-utils/passwd.c:204 msgid "Please don't use something like your realname as password!\n" msgstr "Brug venligst ikke dit rigtige navn og lignende som adgangskode!\n" -#: login-utils/passwd.c:220 +#: login-utils/passwd.c:222 msgid "Usage: passwd [username [password]]\n" msgstr "Brug: passwd [brugernavn [adgangskode]]\n" -#: login-utils/passwd.c:221 +#: login-utils/passwd.c:223 msgid "Only root may use the one and two argument forms.\n" msgstr "Kun root kan bruge et- og to-parameter formater.\n" -#: login-utils/passwd.c:275 +#: login-utils/passwd.c:277 msgid "Usage: passwd [-foqsvV] [user [password]]\n" msgstr "Brug: passwd [-foqsvV] [bruger [adgangskode]]\n" -#: login-utils/passwd.c:296 +#: login-utils/passwd.c:298 #, c-format msgid "Can't exec %s: %s\n" msgstr "Kunne ikke udføre %s: %s\n" -#: login-utils/passwd.c:307 +#: login-utils/passwd.c:309 msgid "Cannot find login name" msgstr "Kunne ikke finde loginnavn" -#: login-utils/passwd.c:314 login-utils/passwd.c:321 +#: login-utils/passwd.c:316 login-utils/passwd.c:323 msgid "Only root can change the password for others.\n" msgstr "Kun root kan ændre adgangskoder for andre.\n" -#: login-utils/passwd.c:329 +#: login-utils/passwd.c:331 msgid "Too many arguments.\n" msgstr "For mange parametre.\n" -#: login-utils/passwd.c:334 +#: login-utils/passwd.c:336 #, c-format msgid "Can't find username anywhere. Is `%s' really a user?" msgstr "Kan ikke finde brugernavnet nogen steder. Er '%s' virkelig en bruger?" -#: login-utils/passwd.c:338 +#: login-utils/passwd.c:340 msgid "Sorry, I can only change local passwords. Use yppasswd instead." msgstr "Beklager, jeg kan kun ændre lokale adgangskoder. Brug 'yppasswd' i stedet." -#: login-utils/passwd.c:344 +#: login-utils/passwd.c:346 msgid "UID and username does not match, imposter!" msgstr "UID og brugernavn passer ikke sammen." -#: login-utils/passwd.c:349 +#: login-utils/passwd.c:351 #, c-format msgid "Changing password for %s\n" msgstr "Ændrer adgangskode for %s\n" -#: login-utils/passwd.c:353 +#: login-utils/passwd.c:355 msgid "Enter old password: " msgstr "Indtast gammel adgangskode: " -#: login-utils/passwd.c:355 +#: login-utils/passwd.c:357 msgid "Illegal password, imposter." msgstr "Ugyldig adgangskode." -#: login-utils/passwd.c:367 +#: login-utils/passwd.c:369 msgid "Enter new password: " msgstr "Indtast ny adgangskode: " -#: login-utils/passwd.c:369 +#: login-utils/passwd.c:371 msgid "Password not changed." msgstr "Adgangskode ikke ændret." -#: login-utils/passwd.c:379 +#: login-utils/passwd.c:380 msgid "Re-type new password: " msgstr "Gentag ny adgangskode: " -#: login-utils/passwd.c:382 +#: login-utils/passwd.c:383 msgid "You misspelled it. Password not changed." msgstr "Du stavede forkert. Adgangskoden blev ikke ændret." -#: login-utils/passwd.c:397 +#: login-utils/passwd.c:398 #, c-format msgid "password changed, user %s" msgstr "adgangskode ændret, bruger %s" -#: login-utils/passwd.c:400 +#: login-utils/passwd.c:401 msgid "ROOT PASSWORD CHANGED" msgstr "ROOT-ADGANGSKODE ÆNDRET" -#: login-utils/passwd.c:402 +#: login-utils/passwd.c:403 #, c-format msgid "password changed by root, user %s" msgstr "adgangskoden ændret af root, bruger %s" -#: login-utils/passwd.c:409 +#: login-utils/passwd.c:410 msgid "calling setpwnam to set password.\n" msgstr "kalder setpwnam for at ændre adgangskoden.\n" -#: login-utils/passwd.c:413 +#: login-utils/passwd.c:414 msgid "Password *NOT* changed. Try again later.\n" msgstr "Adgangskode *IKKE* ændret. Prøv igen senere.\n" -#: login-utils/passwd.c:419 +#: login-utils/passwd.c:420 msgid "Password changed.\n" msgstr "Adgangskode ændret.\n" -#: login-utils/shutdown.c:109 +#: login-utils/shutdown.c:110 msgid "Usage: shutdown [-h|-r] [-fqs] [now|hh:ss|+mins]\n" msgstr "Brug: shutdown [-h|-r] [-fqs] [now|hh:ss|+mins]\n" -#: login-utils/shutdown.c:127 +#: login-utils/shutdown.c:128 msgid "Shutdown process aborted" msgstr "Nedlukningsproces afbrudt" -#: login-utils/shutdown.c:153 +#: login-utils/shutdown.c:154 #, c-format msgid "%s: Only root can shut a system down.\n" msgstr "%s: Kun root kan lukke systemet ned.\n" -#: login-utils/shutdown.c:247 +#: login-utils/shutdown.c:248 msgid "That must be tomorrow, can't you wait till then?\n" msgstr "Det må være i morgen. Kan du ikke vente så længe?\n" @@ -6277,90 +6292,95 @@ msgstr "Kører programmet \"%s\" ...\n" msgid "Error executing\t%s\n" msgstr "Fejl ved kørsel af\t%s\n" -#: login-utils/shutdown.c:472 +#: login-utils/shutdown.c:475 #, c-format msgid "URGENT: broadcast message from %s:" msgstr "HASTER: rundsendt besked fra %s" -#: login-utils/shutdown.c:478 -msgid "System going down IMMEDIATELY!\n" -msgstr "Systemet lukkes ned ØJEBLIKKELIGT!\n" - #: login-utils/shutdown.c:481 #, c-format -msgid "System going down in %d hour%s %d minutes" -msgstr "Systemet lukkes ned om %d time%s %d minutter" - -#: login-utils/shutdown.c:482 login-utils/shutdown.c:485 -msgid "s" -msgstr "r" +msgid "System going down in %d hours %d minutes" +msgstr "Systemet lukkes ned om %d timer og %d minutter" #: login-utils/shutdown.c:484 #, c-format -msgid "System going down in %d minute%s\n" -msgstr "Systemet lukkes ned om %d minutte%s\n" +msgid "System going down in 1 hour %d minutes" +msgstr "Systemet lukkes ned om 1 time og %d minutter" + +#: login-utils/shutdown.c:487 +#, c-format +msgid "System going down in %d minutes\n" +msgstr "Systemet lukkes ned om %d minutter\n" #: login-utils/shutdown.c:490 +msgid "System going down in 1 minute\n" +msgstr "Systemet lukkes ned om 1 minut\n" + +#: login-utils/shutdown.c:492 +msgid "System going down IMMEDIATELY!\n" +msgstr "Systemet lukkes ned ØJEBLIKKELIGT!\n" + +#: login-utils/shutdown.c:497 #, c-format msgid "\t... %s ...\n" msgstr "\t... %s ...\n" -#: login-utils/shutdown.c:547 +#: login-utils/shutdown.c:554 msgid "Cannot fork for swapoff. Shrug!" msgstr "Kunne ikke forgrene for swapoff. Suk!" -#: login-utils/shutdown.c:555 +#: login-utils/shutdown.c:562 msgid "Cannot exec swapoff, hoping umount will do the trick." msgstr "Kunne ikke udføre swapoff. Håber, at umount vil klare det." -#: login-utils/shutdown.c:574 +#: login-utils/shutdown.c:581 msgid "Cannot fork for umount, trying manually." msgstr "Kunne ikke forgrene umount, forsøger selv." -#: login-utils/shutdown.c:583 +#: login-utils/shutdown.c:590 #, c-format msgid "Cannot exec %s, trying umount.\n" msgstr "Kan ikke udføre %s, forsøger afmontering med umount.\n" -#: login-utils/shutdown.c:587 +#: login-utils/shutdown.c:594 msgid "Cannot exec umount, giving up on umount." msgstr "Kunne ikke udføre umount, opgiver afmontering." -#: login-utils/shutdown.c:592 +#: login-utils/shutdown.c:599 msgid "Unmounting any remaining filesystems..." msgstr "Afmonterer resterende filsystemer..." -#: login-utils/shutdown.c:628 +#: login-utils/shutdown.c:635 #, c-format msgid "shutdown: Couldn't umount %s: %s\n" msgstr "shutdown: Kunne ikke afmontere %s: %s\n" -#: login-utils/simpleinit.c:114 +#: login-utils/simpleinit.c:122 msgid "Booting to single user mode.\n" msgstr "Starter op i enkeltbrugertilstand.\n" -#: login-utils/simpleinit.c:118 +#: login-utils/simpleinit.c:126 msgid "exec of single user shell failed\n" msgstr "udførelse af enkeltbruger-skal mislykkedes\n" -#: login-utils/simpleinit.c:122 +#: login-utils/simpleinit.c:130 msgid "fork of single user shell failed\n" msgstr "forgrening af enkeltbruger-skal mislykkedes\n" -#: login-utils/simpleinit.c:174 +#: login-utils/simpleinit.c:182 msgid "error opening fifo\n" msgstr "fejl ved åbning af fifo\n" -#: login-utils/simpleinit.c:212 +#: login-utils/simpleinit.c:220 msgid "error running finalprog\n" msgstr "fejl ved kørsel af finalprog\n" #. Error -#: login-utils/simpleinit.c:216 +#: login-utils/simpleinit.c:224 msgid "error forking finalprog\n" msgstr "fejl ved forsøg på at spalte processen finalprog\n" -#: login-utils/simpleinit.c:295 +#: login-utils/simpleinit.c:303 msgid "" "\n" "Wrong password.\n" @@ -6368,31 +6388,35 @@ msgstr "" "\n" "Forkert password.\n" -#: login-utils/simpleinit.c:367 +#: login-utils/simpleinit.c:376 +msgid "lstat of path failed\n" +msgstr "kunne ikke finde sti med lstat\n" + +#: login-utils/simpleinit.c:384 msgid "stat of path failed\n" msgstr "kunne ikke finde sti\n" -#: login-utils/simpleinit.c:374 +#: login-utils/simpleinit.c:392 msgid "open of directory failed\n" msgstr "kunne ikke åbne katalog\n" -#: login-utils/simpleinit.c:441 +#: login-utils/simpleinit.c:459 msgid "fork failed\n" msgstr "forgrening mislykkedes\n" -#: login-utils/simpleinit.c:472 text-utils/more.c:1621 +#: login-utils/simpleinit.c:490 text-utils/more.c:1622 msgid "exec failed\n" msgstr "programkørsel mislykkedes\n" -#: login-utils/simpleinit.c:496 +#: login-utils/simpleinit.c:514 msgid "cannot open inittab\n" msgstr "kunne ikke åbne inittab\n" -#: login-utils/simpleinit.c:566 +#: login-utils/simpleinit.c:581 msgid "no TERM or cannot stat tty\n" msgstr "ingen TERM eller kunne ikke finde tty\n" -#: login-utils/simpleinit.c:875 +#: login-utils/simpleinit.c:888 msgid "error running programme\n" msgstr "fejl ved kørsel af program\n" @@ -6418,72 +6442,85 @@ msgstr "fork: %s" msgid "%s: BAD ERROR" msgstr "%s: UGYLDIG FEJL" -#: login-utils/vipw.c:145 +#: login-utils/vipw.c:139 #, c-format msgid "%s: the %s file is busy.\n" msgstr "%s: filen %s er optaget.\n" -#: login-utils/vipw.c:161 +#: login-utils/vipw.c:155 #, c-format msgid "%s: the %s file is busy (%s present)\n" msgstr "%s: filen %s er optaget. (%s eksisterer)\n" -#: login-utils/vipw.c:167 +#: login-utils/vipw.c:161 #, c-format msgid "%s: can't link %s: %s\n" msgstr "%s: kunne ikke lænke %s: %s\n" -#: login-utils/vipw.c:188 +#: login-utils/vipw.c:192 #, c-format msgid "%s: can't unlock %s: %s (your changes are still in %s)\n" msgstr "%s: kunne ikke fjerne låsen på %s: %s (dine ændringer er stadig i %s)\n" -#: login-utils/vipw.c:211 +#: login-utils/vipw.c:215 #, c-format msgid "%s: Cannot fork\n" msgstr "%s: Kunne ikke forgrene (fork)\n" -#: login-utils/vipw.c:251 +#: login-utils/vipw.c:255 #, c-format msgid "%s: %s unchanged\n" msgstr "%s: %s uændret\n" -#: login-utils/vipw.c:294 +#: login-utils/vipw.c:274 #, c-format msgid "%s: no changes made\n" msgstr "%s: intet ændret\n" -#: login-utils/wall.c:102 +#: login-utils/vipw.c:323 +msgid "You are using shadow groups on this system.\n" +msgstr "Du bruger skyggegrupper (shadow groups) på dette system.\n" + +#: login-utils/vipw.c:324 +msgid "You are using shadow passwords on this system.\n" +msgstr "Du bruger skygge-adgangskoder (shadow passwords) på dette system.\n" + +#: login-utils/vipw.c:325 +#, c-format +msgid "Would you like to edit %s now [y/n]? " +msgstr "Vil du redigere %s nu [j/n]? " + +#: login-utils/wall.c:103 #, c-format msgid "usage: %s [file]\n" msgstr "brug: %s [fil]\n" -#: login-utils/wall.c:150 +#: login-utils/wall.c:151 #, c-format msgid "%s: can't open temporary file.\n" msgstr "%s: kunne ikke åbne midlertidig fil.\n" -#: login-utils/wall.c:177 +#: login-utils/wall.c:178 #, c-format msgid "Broadcast Message from %s@%s" msgstr "Rundsendt meddelelse fra %s@%s" -#: login-utils/wall.c:195 +#: login-utils/wall.c:196 #, c-format msgid "%s: will not read %s - use stdin.\n" msgstr "%s: kan ikke læse %s - brug standard-inddata.\n" -#: login-utils/wall.c:200 +#: login-utils/wall.c:201 #, c-format msgid "%s: can't read %s.\n" msgstr "%s: kunne ikke læse %s.\n" -#: login-utils/wall.c:222 +#: login-utils/wall.c:223 #, c-format msgid "%s: can't stat temporary file.\n" msgstr "%s: kunne ikke finde midlertidig fil.\n" -#: login-utils/wall.c:231 +#: login-utils/wall.c:232 #, c-format msgid "%s: can't read temporary file.\n" msgstr "%s: kunne ikke læse midlertidig fil.\n" @@ -6510,27 +6547,27 @@ msgstr "brug: %s [+format] [dag måned år]\n" msgid "St. Tib's Day" msgstr "St. Tibs-dag" -#: misc-utils/kill.c:210 +#: misc-utils/kill.c:206 #, c-format msgid "%s: unknown signal %s\n" msgstr "%s: ukendt signal %s\n" -#: misc-utils/kill.c:272 +#: misc-utils/kill.c:269 #, c-format msgid "%s: can't find process \"%s\"\n" msgstr "%s: kunne ikke finde processen \"%s\"\n" -#: misc-utils/kill.c:316 +#: misc-utils/kill.c:313 #, c-format msgid "%s: unknown signal %s; valid signals:\n" msgstr "%s: ukendt signal %s; gyldige signaler:\n" -#: misc-utils/kill.c:356 +#: misc-utils/kill.c:353 #, c-format msgid "usage: %s [ -s signal | -p ] [ -a ] pid ...\n" msgstr "brug: %s [ -s signal | -p ] [ -a ] pid ...\n" -#: misc-utils/kill.c:357 +#: misc-utils/kill.c:354 #, c-format msgid " %s -l [ signal ]\n" msgstr " %s -l [ signal ]\n" @@ -6568,43 +6605,43 @@ msgstr "Kunne ikke åbne %s\n" msgid "Got %d bytes from %s\n" msgstr "Fik %d byte fra %s\n" -#: misc-utils/namei.c:100 +#: misc-utils/namei.c:101 #, c-format msgid "namei: unable to get current directory - %s\n" msgstr "namei: kunne ikke bestemme aktuelle katalog - %s\n" -#: misc-utils/namei.c:111 +#: misc-utils/namei.c:112 #, c-format msgid "namei: unable to chdir to %s - %s (%d)\n" msgstr "namei: kunne ikke skifte til kataloget %s - %s (%d)\n" -#: misc-utils/namei.c:120 +#: misc-utils/namei.c:121 msgid "usage: namei [-mx] pathname [pathname ...]\n" msgstr "brug: namei [-mx] sti [sti ...]\n" -#: misc-utils/namei.c:145 +#: misc-utils/namei.c:146 msgid "namei: could not chdir to root!\n" msgstr "namei: kunne ikke skifte til rodkataloget!\n" -#: misc-utils/namei.c:152 +#: misc-utils/namei.c:153 msgid "namei: could not stat root!\n" msgstr "namei: kunne ikke finde rodkataloget!\n" -#: misc-utils/namei.c:207 +#: misc-utils/namei.c:208 #, c-format msgid " ? could not chdir into %s - %s (%d)\n" msgstr " ? kunne ikke skifte til kataloget %s - %s (%d)\n" -#: misc-utils/namei.c:236 +#: misc-utils/namei.c:237 #, c-format msgid " ? problems reading symlink %s - %s (%d)\n" msgstr " ? problem ved læsning af symbolsk lænke %s - %s (%d)\n" -#: misc-utils/namei.c:246 +#: misc-utils/namei.c:247 msgid " *** EXCEEDED UNIX LIMIT OF SYMLINKS ***\n" msgstr " *** OVERSKRED UNIX'S GRÆNSE FOR ANTALLET AF SYMBOLSKE LÆNKER ***\n" -#: misc-utils/namei.c:283 +#: misc-utils/namei.c:284 #, c-format msgid "namei: unknown file type 0%06o on file %s\n" msgstr "namei: ukendt filtype 0%06o for fil %s\n" @@ -6612,7 +6649,7 @@ msgstr "namei: ukendt filtype 0%06o for fil %s\n" #: misc-utils/rename.c:38 #, c-format msgid "%s: out of memory\n" -msgstr "%s: Hukommelse opbrugt\n" +msgstr "%s: hukommelse opbrugt\n" #: misc-utils/rename.c:56 #, c-format @@ -6622,23 +6659,34 @@ msgstr "%s: kunne ikke omdøbe %s til %s: %s\n" #: misc-utils/rename.c:86 #, c-format msgid "call: %s from to files...\n" -msgstr "kald: %s fra-streng til-streng filer...\n" +msgstr "kald: %s fra til filer...\n" -#: misc-utils/script.c:119 +#: misc-utils/script.c:104 +#, c-format +msgid "" +"Warning: `%s' is a symlink.\n" +"Use `%s [options] %s' if you really want to use it.\n" +"Script not started.\n" +msgstr "" +"Advarsel: '%s' er en symbolsk lænke.\n" +"Brug '%s [tilvalg] %s', hvis du virkelig vil bruge den.\n" +"Skript blev ikke startet.\n" + +#: misc-utils/script.c:150 msgid "usage: script [-a] [-f] [-q] [file]\n" msgstr "brug: script [-a] [-f] [-q] [fil]\n" -#: misc-utils/script.c:140 +#: misc-utils/script.c:173 #, c-format msgid "Script started, file is %s\n" msgstr "'script' startet, filen er %s\n" -#: misc-utils/script.c:206 +#: misc-utils/script.c:239 #, c-format msgid "Script started on %s" msgstr "'script' startet %s" -#: misc-utils/script.c:270 +#: misc-utils/script.c:303 #, c-format msgid "" "\n" @@ -6647,16 +6695,16 @@ msgstr "" "\n" "'script' færdig %s" -#: misc-utils/script.c:278 +#: misc-utils/script.c:311 #, c-format msgid "Script done, file is %s\n" msgstr "'script' færdig, filen er %s\n" -#: misc-utils/script.c:289 +#: misc-utils/script.c:322 msgid "openpty failed\n" msgstr "openpty mislykkedes\n" -#: misc-utils/script.c:323 +#: misc-utils/script.c:356 msgid "Out of pty's\n" msgstr "Løbet tør for pty-er\n" @@ -6827,22 +6875,6 @@ msgstr " [ -blength [0-2000] ]\n" msgid " [ -bfreq freqnumber ]\n" msgstr " [ -bfreq freqnumber ]\n" -#: misc-utils/setterm.c:862 -msgid "snow.on" -msgstr "snow.on" - -#: misc-utils/setterm.c:864 -msgid "snow.off" -msgstr "snow.off" - -#: misc-utils/setterm.c:870 -msgid "softscroll.on" -msgstr "softscroll.on" - -#: misc-utils/setterm.c:872 -msgid "softscroll.off" -msgstr "softscroll.off" - #: misc-utils/setterm.c:1047 msgid "cannot (un)set powersave mode\n" msgstr "kan ikke ændre strømsparetilstand\n" @@ -6866,74 +6898,58 @@ msgstr "Fejl ved skrivning af skærmkopi\n" msgid "couldn't read %s, and cannot ioctl dump\n" msgstr "kunne hverken læse %s eller udføre ioctl dump\n" -#: misc-utils/setterm.c:1227 +#: misc-utils/setterm.c:1228 #, c-format msgid "%s: $TERM is not defined.\n" msgstr "%s: $TERM er ikke defineret.\n" -#: misc-utils/tsort.c:117 -msgid "usage: tsort [ inputfile ]\n" -msgstr "brug: tsort [ indfil ]\n" - -#: misc-utils/tsort.c:154 -msgid "tsort: odd data count.\n" -msgstr "tsort: ulige dataantal.\n" - -#: misc-utils/tsort.c:305 -msgid "tsort: cycle in data.\n" -msgstr "tsort: cykliske data.\n" - -#: misc-utils/tsort.c:318 -msgid "tsort: internal error -- could not find cycle.\n" -msgstr "tsort: intern fejl -- kunne ikke finde cyklus.\n" - -#: misc-utils/whereis.c:155 +#: misc-utils/whereis.c:157 msgid "whereis [ -sbmu ] [ -SBM dir ... -f ] name...\n" msgstr "whereis [ -sbmu ] [ -SBM katalog ... -f ] navn...\n" -#: misc-utils/write.c:98 +#: misc-utils/write.c:99 msgid "write: can't find your tty's name\n" msgstr "write: kunne ikke finde din tty's navn\n" -#: misc-utils/write.c:109 +#: misc-utils/write.c:110 msgid "write: you have write permission turned off.\n" msgstr "write: du har slået skriveadgang fra.\n" -#: misc-utils/write.c:130 +#: misc-utils/write.c:131 #, c-format msgid "write: %s is not logged in on %s.\n" msgstr "write: %s er ikke logget ind på %s.\n" -#: misc-utils/write.c:138 +#: misc-utils/write.c:139 #, c-format msgid "write: %s has messages disabled on %s\n" msgstr "write: %s har deaktiveret beskeder på %s\n" -#: misc-utils/write.c:145 +#: misc-utils/write.c:146 msgid "usage: write user [tty]\n" msgstr "brug: write bruger [tty]\n" -#: misc-utils/write.c:244 +#: misc-utils/write.c:234 #, c-format msgid "write: %s is not logged in\n" msgstr "write: %s er ikke logget på\n" -#: misc-utils/write.c:253 +#: misc-utils/write.c:243 #, c-format msgid "write: %s has messages disabled\n" msgstr "write: %s har deaktiveret beskeder\n" -#: misc-utils/write.c:257 +#: misc-utils/write.c:247 #, c-format msgid "write: %s is logged in more than once; writing to %s\n" msgstr "write: %s er logget på flere gange; skriver til %s\n" -#: misc-utils/write.c:323 +#: misc-utils/write.c:313 #, c-format msgid "Message from %s@%s (as %s) on %s at %s ..." msgstr "Besked fra %s@%s (som %s) på %s klokken %s ..." -#: misc-utils/write.c:326 +#: misc-utils/write.c:316 #, c-format msgid "Message from %s@%s on %s at %s ..." msgstr "Besked fra %s@%s på %s klokken %s ..." @@ -7010,31 +7026,31 @@ msgstr "fejl ved skrivning af %s: %s" msgid "error changing mode of %s: %s\n" msgstr "fejl ved ændring af filmodus for %s: %s\n" -#: mount/fstab.c:544 +#: mount/fstab.c:554 #, c-format msgid "can't rename %s to %s: %s\n" msgstr "kunne ikke omdøbe %s til %s: %s\n" -#: mount/lomount.c:78 +#: mount/lomount.c:79 #, c-format msgid "loop: can't open device %s: %s\n" msgstr "loop: kunne ikke åbne enheden %s: %s\n" -#: mount/lomount.c:84 +#: mount/lomount.c:85 #, c-format msgid "loop: can't get info on device %s: %s\n" msgstr "loop: kunne ikke få oplysninger om enheden %s: %s\n" -#: mount/lomount.c:89 +#: mount/lomount.c:90 #, c-format msgid "%s: [%04x]:%ld (%s) offset %d, %s encryption\n" msgstr "%s: [%04x]:%ld (%s) forskydning %d, %s kryptering\n" -#: mount/lomount.c:148 +#: mount/lomount.c:176 msgid "mount: could not find any device /dev/loop#" msgstr "mount: kunne ikke finde nogen /dev/loop# enhed" -#: mount/lomount.c:152 +#: mount/lomount.c:180 msgid "" "mount: Could not find any loop device.\n" " Maybe /dev/loop# has a wrong major number?" @@ -7042,7 +7058,7 @@ msgstr "" "mount: Kunne ikke finde nogen loop-enhed.\n" " Måske har /dev/loop# forkert hovednummer?" -#: mount/lomount.c:156 +#: mount/lomount.c:184 #, c-format msgid "" "mount: Could not find any loop device, and, according to %s,\n" @@ -7053,7 +7069,7 @@ msgstr "" " kender denne kerne ikke til loop-enheder.\n" " (Hvis det er rigtigt, genoversæt kernen, eller 'insmod loop.o'.)" -#: mount/lomount.c:162 +#: mount/lomount.c:190 msgid "" "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" @@ -7064,53 +7080,53 @@ msgstr "" "loop.o'),\n" " eller har /dev/loop# bare et forkert hovednummer?" -#: mount/lomount.c:166 +#: mount/lomount.c:194 msgid "mount: could not find any free loop device" msgstr "mount: kunne ikke finde nogen ledig loop-enhed" -#: mount/lomount.c:197 +#: mount/lomount.c:224 #, c-format msgid "Unsupported encryption type %s\n" msgstr "Ikke-understøttet krypteringstype %s\n" -#: mount/lomount.c:211 +#: mount/lomount.c:238 msgid "Couldn't lock into memory, exiting.\n" msgstr "Kunne ikke låse ind i hukommelsen, afslutter.\n" -#: mount/lomount.c:231 +#: mount/lomount.c:257 msgid "Init (up to 16 hex digits): " msgstr "Init (op til 16 hex-cifre): " -#: mount/lomount.c:238 +#: mount/lomount.c:264 #, c-format msgid "Non-hex digit '%c'.\n" msgstr "Ikke-hex ciffer '%c'.\n" -#: mount/lomount.c:245 +#: mount/lomount.c:271 #, c-format msgid "Don't know how to get key for encryption system %d\n" msgstr "Ved ikke, hvordan man får en nøgle til krypteringssystem %d\n" -#: mount/lomount.c:261 +#: mount/lomount.c:287 #, c-format msgid "set_loop(%s,%s,%d): success\n" msgstr "set_loop(%s,%s,%d): lykkedes\n" -#: mount/lomount.c:272 +#: mount/lomount.c:298 #, c-format msgid "loop: can't delete device %s: %s\n" msgstr "loop: kunne ikke slette enheden %s: %s\n" -#: mount/lomount.c:282 +#: mount/lomount.c:308 #, c-format msgid "del_loop(%s): success\n" msgstr "del_loop(%s): lykkedes\n" -#: mount/lomount.c:290 +#: mount/lomount.c:316 msgid "This mount was compiled without loop support. Please recompile.\n" msgstr "Denne 'mount' er oversat uden loop-understøttelse. Genoversæt venligst.\n" -#: mount/lomount.c:327 +#: mount/lomount.c:353 #, c-format msgid "" "usage:\n" @@ -7123,11 +7139,11 @@ msgstr "" " %s -d loop_enhed # slet\n" " %s [ -e kryptering ] [ -o forskydning ] loop_enhed fil # klargør\n" -#: mount/lomount.c:345 mount/sundries.c:41 mount/sundries.c:56 +#: mount/lomount.c:371 mount/sundries.c:41 mount/sundries.c:56 msgid "not enough memory" msgstr "ikke nok hukommelse" -#: mount/lomount.c:416 +#: mount/lomount.c:442 msgid "No loop support was available at compile time. Please recompile.\n" msgstr "" "Der var ingen loop-understøttelse tilgængelig ved oversættelsen. Genoversæt " @@ -7158,158 +7174,158 @@ msgstr "" msgid "mount: bad UUID" msgstr "mount: ugyldig UUID" -#: mount/mount.c:383 +#: mount/mount.c:378 #, c-format msgid "mount: according to mtab, %s is already mounted on %s" msgstr "mount: ifølge mtab er %s allerede monteret som %s" -#: mount/mount.c:387 +#: mount/mount.c:382 #, c-format msgid "mount: according to mtab, %s is mounted on %s" msgstr "mount: ifølge mtab er %s monteret som %s" -#: mount/mount.c:408 +#: mount/mount.c:403 #, c-format msgid "mount: can't open %s for writing: %s" msgstr "mount: kunne ikke åbne %s for skrivning: %s" -#: mount/mount.c:423 mount/mount.c:624 +#: mount/mount.c:418 mount/mount.c:619 #, c-format msgid "mount: error writing %s: %s" msgstr "mount: fejl ved skrivning til %s: %s" -#: mount/mount.c:430 +#: mount/mount.c:425 #, c-format msgid "mount: error changing mode of %s: %s" msgstr "mount: fejl ved ændring af filmodus for %s: %s" -#: mount/mount.c:475 +#: mount/mount.c:470 #, c-format msgid "%s looks like swapspace - not mounted" msgstr "%s ligner et swap-område - ikke monteret" -#: mount/mount.c:518 +#: mount/mount.c:513 msgid "mount failed" msgstr "montering mislykkedes" -#: mount/mount.c:520 +#: mount/mount.c:515 #, c-format msgid "mount: only root can mount %s on %s" msgstr "mount: kun root kan montere %s som %s" -#: mount/mount.c:548 +#: mount/mount.c:543 msgid "mount: loop device specified twice" msgstr "mount: loop-enheden angivet to gange" -#: mount/mount.c:553 +#: mount/mount.c:548 msgid "mount: type specified twice" msgstr "mount: type angivet to gange" -#: mount/mount.c:565 +#: mount/mount.c:560 msgid "mount: skipping the setup of a loop device\n" msgstr "mount: dropper opsætning af loop-enhed\n" -#: mount/mount.c:574 +#: mount/mount.c:569 #, c-format msgid "mount: going to use the loop device %s\n" msgstr "mount: skal til at benytte loop-enheden %s\n" -#: mount/mount.c:578 +#: mount/mount.c:573 msgid "mount: failed setting up loop device\n" msgstr "mount: klargøring af loop-enhed mislykkedes\n" -#: mount/mount.c:582 +#: mount/mount.c:577 msgid "mount: setup loop device successfully\n" msgstr "mount: klargøringen af loop-enhed lykkedes\n" -#: mount/mount.c:619 +#: mount/mount.c:614 #, c-format msgid "mount: can't open %s: %s" msgstr "mount: kunne ikke åbne %s: %s" -#: mount/mount.c:642 +#: mount/mount.c:637 #, c-format msgid "mount: cannot not open %s for setting speed" msgstr "mount: kunne ikke åbne %s for at sætte hastigheden" -#: mount/mount.c:645 +#: mount/mount.c:640 #, c-format msgid "mount: cannot set speed: %s" msgstr "mount: kunne ikke sætte hastigheden: %s" -#: mount/mount.c:706 mount/mount.c:1235 +#: mount/mount.c:701 mount/mount.c:1230 #, c-format msgid "mount: cannot fork: %s" msgstr "mount: kunne ikke forgrene: %s" -#: mount/mount.c:780 +#: mount/mount.c:775 msgid "mount: this version was compiled without support for the type `nfs'" msgstr "mount: denne version blev oversat uden understøttelse for 'nfs'-typen" -#: mount/mount.c:820 +#: mount/mount.c:815 msgid "mount: failed with nfs mount version 4, trying 3..\n" msgstr "mount: montering af nfs version 4 mislykkedes, prøver version 3..\n" -#: mount/mount.c:831 +#: mount/mount.c:826 msgid "mount: I could not determine the filesystem type, and none was specified" msgstr "mount: Jeg kunne ikke bestemme filsystemtypen, og ingen var angivet" -#: mount/mount.c:834 +#: mount/mount.c:829 msgid "mount: you must specify the filesystem type" msgstr "mount: du skal angive filsystemtypen" #. should not happen -#: mount/mount.c:837 +#: mount/mount.c:832 msgid "mount: mount failed" msgstr "mount: montering mislykkedes" -#: mount/mount.c:843 mount/mount.c:878 +#: mount/mount.c:838 mount/mount.c:873 #, c-format msgid "mount: mount point %s is not a directory" msgstr "mount: monteringspunkt %s er ikke et katalog" -#: mount/mount.c:845 +#: mount/mount.c:840 msgid "mount: permission denied" msgstr "mount: adgang nægtet" -#: mount/mount.c:847 +#: mount/mount.c:842 msgid "mount: must be superuser to use mount" msgstr "mount: skal være superbruger for at bruge 'mount'" #. heuristic: if /proc/version exists, then probably proc is mounted #. proc mounted? -#: mount/mount.c:851 mount/mount.c:855 +#: mount/mount.c:846 mount/mount.c:850 #, c-format msgid "mount: %s is busy" msgstr "mount: %s er optaget" #. no #. yes, don't mention it -#: mount/mount.c:857 +#: mount/mount.c:852 msgid "mount: proc already mounted" msgstr "mount: proc er allerede monteret" -#: mount/mount.c:859 +#: mount/mount.c:854 #, c-format msgid "mount: %s already mounted or %s busy" msgstr "mount: enten er %s allerede monteret eller %s optaget" -#: mount/mount.c:865 +#: mount/mount.c:860 #, c-format msgid "mount: mount point %s does not exist" msgstr "mount: monteringspunkt %s eksisterer ikke" -#: mount/mount.c:867 +#: mount/mount.c:862 #, c-format msgid "mount: mount point %s is a symbolic link to nowhere" msgstr "mount: monteringspunkt %s er en symbolsk lænke ud i ingenting" -#: mount/mount.c:870 +#: mount/mount.c:865 #, c-format msgid "mount: special device %s does not exist" msgstr "mount: specialenhed %s eksisterer ikke" -#: mount/mount.c:880 +#: mount/mount.c:875 #, c-format msgid "" "mount: special device %s does not exist\n" @@ -7318,60 +7334,60 @@ msgstr "" "mount: specialenhed %s eksisterer ikke\n" " (en sti er ikke et katalog)\n" -#: mount/mount.c:893 +#: mount/mount.c:888 #, c-format msgid "mount: %s not mounted already, or bad option" msgstr "mount: %s ikke allerede monteret, eller forkert tilvalg" -#: mount/mount.c:895 +#: mount/mount.c:890 #, c-format msgid "" "mount: wrong fs type, bad option, bad superblock on %s,\n" " or too many mounted file systems" msgstr "" -"mount: forkert fs-type, forkert tilvalg, ugyldig superblok på %s,\n" +"mount: forkert filsystemtype, forkert tilvalg, ugyldig superblok på %s,\n" " eller for mange monterede filsystemer" -#: mount/mount.c:929 +#: mount/mount.c:924 msgid "mount table full" msgstr "monteringstabellen er fuld" -#: mount/mount.c:931 +#: mount/mount.c:926 #, c-format msgid "mount: %s: can't read superblock" msgstr "mount: %s: kunne ikke læse superblokken" -#: mount/mount.c:935 +#: mount/mount.c:930 #, c-format msgid "mount: %s: unknown device" msgstr "mount: %s: ukendt enhed" -#: mount/mount.c:940 +#: mount/mount.c:935 #, c-format msgid "mount: fs type %s not supported by kernel" -msgstr "mount: fs-type %s understøttes ikke af kernen" +msgstr "mount: filsystemtype %s understøttes ikke af kernen" -#: mount/mount.c:952 +#: mount/mount.c:947 #, c-format msgid "mount: probably you meant %s" msgstr "mount: du mente sikkert %s" -#: mount/mount.c:954 +#: mount/mount.c:949 msgid "mount: maybe you meant iso9660 ?" msgstr "mount: du mente måske iso9660 ?" -#: mount/mount.c:957 +#: mount/mount.c:952 #, c-format msgid "mount: %s has wrong device number or fs type %s not supported" -msgstr "mount: %s har forkert enhedsnummer eller fs-typen %s understøttes ikke" +msgstr "mount: %s har forkert enhedsnummer eller filsystemtypen %s understøttes ikke" #. strange ... -#: mount/mount.c:963 +#: mount/mount.c:958 #, c-format msgid "mount: %s is not a block device, and stat fails?" msgstr "mount: %s er ikke en blokenhed, og 'stat' fejler?" -#: mount/mount.c:965 +#: mount/mount.c:960 #, c-format msgid "" "mount: the kernel does not recognize %s as a block device\n" @@ -7380,82 +7396,82 @@ msgstr "" "mount: kernen genkender ikke %s som en blokenhed\n" " (måske hjælper 'insmod enheds-driver'?)" -#: mount/mount.c:968 +#: mount/mount.c:963 #, c-format msgid "mount: %s is not a block device (maybe try `-o loop'?)" msgstr "mount: %s er ikke en blokenhed (brug eventuelt '-o loop'?)" -#: mount/mount.c:971 +#: mount/mount.c:966 #, c-format msgid "mount: %s is not a block device" msgstr "mount: %s er ikke en blokenhed" -#: mount/mount.c:974 +#: mount/mount.c:969 #, c-format msgid "mount: %s is not a valid block device" msgstr "mount: %s er ikke en gyldig blokenhed" #. pre-linux 1.1.38, 1.1.41 and later #. linux 1.1.38 and later -#: mount/mount.c:977 +#: mount/mount.c:972 msgid "block device " msgstr "blokenhed " -#: mount/mount.c:979 +#: mount/mount.c:974 #, c-format msgid "mount: cannot mount %s%s read-only" msgstr "mount: kunne ikke montere %s%s skrivebeskyttet" -#: mount/mount.c:983 +#: mount/mount.c:978 #, c-format msgid "mount: %s%s is write-protected but explicit `-w' flag given" msgstr "mount: %s%s er skrivebeskyttet, men eksplicit '-w'-tilvalg blev givet" -#: mount/mount.c:999 +#: mount/mount.c:994 #, c-format msgid "mount: %s%s is write-protected, mounting read-only" msgstr "mount: %s%s er skrivebeskyttet, monterer skrivebeskyttet" -#: mount/mount.c:1088 +#: mount/mount.c:1083 #, c-format msgid "mount: going to mount %s by %s\n" msgstr "mount: vil montere %s som %s\n" -#: mount/mount.c:1089 +#: mount/mount.c:1084 msgid "UUID" msgstr "UUID" -#: mount/mount.c:1089 +#: mount/mount.c:1084 msgid "label" msgstr "mærke" -#: mount/mount.c:1091 mount/mount.c:1463 +#: mount/mount.c:1086 mount/mount.c:1464 msgid "mount: no such partition found" msgstr "mount: fandt ingen sådan partition" -#: mount/mount.c:1099 +#: mount/mount.c:1094 msgid "mount: no type was given - I'll assume nfs because of the colon\n" msgstr "mount: ingen type blev angive - Jeg antager nfs på grund af kolonnet\n" #. #. * Retry in the background. #. -#: mount/mount.c:1115 +#: mount/mount.c:1110 #, c-format msgid "mount: backgrounding \"%s\"\n" msgstr "mount: kører \"%s\" i baggrunden\n" -#: mount/mount.c:1126 +#: mount/mount.c:1121 #, c-format msgid "mount: giving up \"%s\"\n" msgstr "mount: opgiver \"%s\"\n" -#: mount/mount.c:1186 +#: mount/mount.c:1181 #, c-format msgid "mount: %s already mounted on %s\n" msgstr "mount: %s er allerede monteret som %s\n" -#: mount/mount.c:1303 +#: mount/mount.c:1299 msgid "" "Usage: mount -V : print version\n" " mount -h : print this help\n" @@ -7474,8 +7490,6 @@ msgid "" " mount --bind 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" -"Union or stack mounts are specified using one of\n" -" --replace, --after, --before, --over\n" "Other options: [-nfFrsvw] [-o options].\n" "For many more details, say man 8 mount .\n" msgstr "" @@ -7483,10 +7497,10 @@ msgstr "" " mount -h : vis denne hjælp\n" " mount : vis monterede filsystemer\n" " mount -l : det samme, incl. mærkater\n" -"Tilvalgene ovenfor viser kun data. De næste er vedrører montering.\n" +"Tilvalgene ovenfor giver information. De næste vedrører montering.\n" "Kommandoen lyder 'mount [-t fstype] noget et-sted'.\n" "Detaljer, der står i /etc/fstab, kan udelades.\n" -" mount -a : montér alt, som beskrives i /etc/fstab\n" +" mount -a : montér alt, der beskrives i /etc/fstab\n" " mount enhed : montér enhed på dets standardplads\n" " mount katalog : montér enheden, tilhørende katalog\n" " mount -t type enh kat : almindelig mount-kommando\n" @@ -7496,36 +7510,33 @@ msgstr "" " mount --bind glkat nytkat\n" "En enhed kan angives ved navn, f.eks. /dev/hda1 eller /dev/cdrom,\n" "eller ved mærkat med -L mærkat, eller ved uuid med -U uuid .\n" -"Samlede monteringer eller stak-montering angives med én af:\n" -" --replace, --after, --before, --over\n" -" (udskift) (efter) (før) (ovenpå)\n" "Andre tilvalg: [-nfFrsvw] [-o tilvalg].\n" "Læs mange flere detaljer med 'man 8 mount'.\n" -#: mount/mount.c:1447 +#: mount/mount.c:1448 msgid "mount: only root can do that" msgstr "mount: dette kan kun root gøre" -#: mount/mount.c:1452 +#: mount/mount.c:1453 #, c-format msgid "mount: no %s found - creating it..\n" msgstr "mount: ingen %s fundet - opretter den..\n" -#: mount/mount.c:1465 +#: mount/mount.c:1466 #, c-format msgid "mount: mounting %s\n" msgstr "mount: monterer %s\n" -#: mount/mount.c:1474 +#: mount/mount.c:1475 msgid "not mounted anything" msgstr "intet er monteret" -#: mount/mount.c:1489 +#: mount/mount.c:1490 #, c-format msgid "mount: cannot find %s in %s" msgstr "mount: kunne ikke finde %s i %s" -#: mount/mount.c:1504 +#: mount/mount.c:1505 #, c-format msgid "mount: can't find %s in %s or %s" msgstr "mount: kunne ikke finde %s i %s eller %s" @@ -7549,7 +7560,7 @@ msgstr " og det ser ud til, at dette er swapområde\n" msgid " I will try type %s\n" msgstr " Jeg vil forsøge type %s\n" -#: mount/mount_guess_fstype.c:386 +#: mount/mount_guess_fstype.c:398 #, c-format msgid "Trying %s\n" msgstr "Forsøger %s\n" @@ -7581,16 +7592,16 @@ msgstr "mount: voldsomt langt tilvalgsparameter\n" #: mount/nfsmount.c:375 msgid "Warning: Unrecognized proto= option.\n" -msgstr "Warning: Ukendt proto= tilvalg.\n" +msgstr "Advarsel: Ukendt proto= tilvalg.\n" #: mount/nfsmount.c:382 msgid "Warning: Option namlen is not supported.\n" -msgstr "Warning: Tilvalget 'namlen' understøttes ikke.\n" +msgstr "Advarsel: Tilvalget 'namlen' understøttes ikke.\n" #: mount/nfsmount.c:386 #, c-format msgid "unknown nfs mount parameter: %s=%d\n" -msgstr "ukendt nfs-montageparameter: %s=%d\n" +msgstr "ukendt NFS-montageparameter: %s=%d\n" #: mount/nfsmount.c:421 msgid "Warning: option nolock is not supported.\n" @@ -7599,41 +7610,41 @@ msgstr "Advarsel: tilvalget 'nolock' understøttes ikke.\n" #: mount/nfsmount.c:426 #, c-format msgid "unknown nfs mount option: %s%s\n" -msgstr "ukendt nfs-montageparameter: %s%s\n" +msgstr "ukendt NFS-montageparameter: %s%s\n" #: mount/nfsmount.c:523 msgid "mount: got bad hp->h_length?\n" msgstr "mount: fik ugyldig hp->h_length?\n" -#: mount/nfsmount.c:699 +#: mount/nfsmount.c:709 msgid "NFS over TCP is not supported.\n" msgstr "NFS via TCP understøttes ikke.\n" -#: mount/nfsmount.c:706 +#: mount/nfsmount.c:716 msgid "nfs socket" -msgstr "nfs-sokkel" +msgstr "NFS-sokkel" -#: mount/nfsmount.c:710 +#: mount/nfsmount.c:720 msgid "nfs bindresvport" msgstr "nfs bindresvport" -#: mount/nfsmount.c:721 +#: mount/nfsmount.c:731 msgid "used portmapper to find NFS port\n" msgstr "benyttede portmapper til at finde NFS-port\n" -#: mount/nfsmount.c:725 +#: mount/nfsmount.c:735 #, c-format msgid "using port %d for nfs deamon\n" -msgstr "bruger port %d til nfs-dæmonen\n" +msgstr "bruger port %d til NFS-dæmonen\n" -#: mount/nfsmount.c:736 +#: mount/nfsmount.c:746 msgid "nfs connect" -msgstr "nfs-forbindelse" +msgstr "NFS-forbindelse" -#: mount/nfsmount.c:823 +#: mount/nfsmount.c:833 #, c-format msgid "unknown nfs status return value: %d" -msgstr "ukendt nfs-statusværdi: %d" +msgstr "ukendt NFS-statusværdi: %d" #: mount/sundries.c:66 msgid "bug in xstrndup call" @@ -7681,91 +7692,91 @@ msgstr "%s: kunne ikke åbne %s: %s\n" msgid "umount: compiled without support for -f\n" msgstr "umount: oversat uden understøttelse af tilvalget -f\n" -#: mount/umount.c:125 +#: mount/umount.c:128 #, c-format msgid "host: %s, directory: %s\n" msgstr "vært: %s, katalog: %s\n" -#: mount/umount.c:145 +#: mount/umount.c:148 #, c-format msgid "umount: can't get address for %s\n" msgstr "umount: kunne ikke få adressen på %s\n" -#: mount/umount.c:150 +#: mount/umount.c:153 msgid "umount: got bad hostp->h_length\n" msgstr "umount: fik ugyldig hostp->h_length\n" -#: mount/umount.c:188 +#: mount/umount.c:191 #, c-format msgid "umount: %s: invalid block device" msgstr "umount: %s: ugyldig blokenhed" -#: mount/umount.c:190 +#: mount/umount.c:193 #, c-format msgid "umount: %s: not mounted" msgstr "umount: %s: ikke monteret" -#: mount/umount.c:192 +#: mount/umount.c:195 #, c-format msgid "umount: %s: can't write superblock" msgstr "umount: %s: kunne ikke skrive superblok" #. Let us hope fstab has a line "proc /proc ..." #. and not "none /proc ..." -#: mount/umount.c:196 +#: mount/umount.c:199 #, c-format msgid "umount: %s: device is busy" msgstr "umount: %s: enhed optaget" -#: mount/umount.c:198 +#: mount/umount.c:201 #, c-format msgid "umount: %s: not found" msgstr "umount: %s: ikke fundet" -#: mount/umount.c:200 +#: mount/umount.c:203 #, c-format msgid "umount: %s: must be superuser to umount" msgstr "umount: %s: skal være superbruger for at afmontere" -#: mount/umount.c:202 +#: mount/umount.c:205 #, c-format msgid "umount: %s: block devices not permitted on fs" msgstr "umount: %s: blokenheder tillades ikke på dette fs" -#: mount/umount.c:204 +#: mount/umount.c:207 #, c-format msgid "umount: %s: %s" msgstr "umount: %s: %s" -#: mount/umount.c:248 +#: mount/umount.c:252 msgid "no umount2, trying umount...\n" msgstr "ingen umount2, forsøger umount...\n" -#: mount/umount.c:261 +#: mount/umount.c:268 #, c-format msgid "could not umount %s - trying %s instead\n" msgstr "kunne ikke afmontere %s med umount - forsøger %s i stedet\n" -#: mount/umount.c:279 +#: mount/umount.c:286 #, c-format msgid "umount: %s busy - remounted read-only\n" msgstr "umount: %s optaget - genmonteret skrivebeskyttet\n" -#: mount/umount.c:289 +#: mount/umount.c:296 #, c-format msgid "umount: could not remount %s read-only\n" msgstr "umount: kunne ikke montere %s skrivebeskyttet\n" -#: mount/umount.c:297 +#: mount/umount.c:305 #, c-format msgid "%s umounted\n" msgstr "%s afmonteret\n" -#: mount/umount.c:381 +#: mount/umount.c:392 msgid "umount: cannot find list of filesystems to unmount" msgstr "umount: kunne ikke finde listen over filsystemer, der skulle afmonteres" -#: mount/umount.c:410 +#: mount/umount.c:421 msgid "" "Usage: umount [-hV]\n" " umount -a [-f] [-r] [-n] [-v] [-t vfstypes]\n" @@ -7775,55 +7786,55 @@ msgstr "" " umount -a [-f] [-r] [-n] [-v] [-t vfstyper]\n" " umount [-f] [-r] [-n] [-v] speciel | node...\n" -#: mount/umount.c:471 +#: mount/umount.c:486 msgid "umount: only root can do that" msgstr "umount: dette kan kun root gøre" -#: mount/umount.c:486 +#: mount/umount.c:501 #, c-format msgid "Trying to umount %s\n" msgstr "Forsøger at afmontere %s\n" -#: mount/umount.c:490 +#: mount/umount.c:505 #, c-format msgid "Could not find %s in mtab\n" msgstr "Kunne ikke finde %s i mtab\n" -#: mount/umount.c:494 +#: mount/umount.c:509 #, c-format msgid "umount: %s is not mounted (according to mtab)" msgstr "umount: %s er ikke monteret (ifølge mtab)" -#: mount/umount.c:496 +#: mount/umount.c:511 #, c-format msgid "umount: it seems %s is mounted multiple times" msgstr "umount: det lader til, at %s er monteret flere gange" -#: mount/umount.c:508 +#: mount/umount.c:523 #, c-format msgid "umount: %s is not in the fstab (and you are not root)" msgstr "umount: %s er ikke i fstab (og du er ikke root)" -#: mount/umount.c:511 +#: mount/umount.c:526 #, c-format msgid "umount: %s mount disagrees with the fstab" msgstr "umount: %s montering stemmer ikke med fstab" -#: mount/umount.c:532 +#: mount/umount.c:547 #, c-format msgid "umount: only root can unmount %s from %s" msgstr "umount: kun root kan afmontere %s fra %s" -#: mount/umount.c:543 +#: mount/umount.c:558 #, c-format msgid "umount: only %s can unmount %s from %s" msgstr "umount: kun %s kan afmontere %s fra %s" -#: sys-utils/ctrlaltdel.c:26 +#: sys-utils/ctrlaltdel.c:27 msgid "You must be root to set the Ctrl-Alt-Del behaviour.\n" msgstr "Du skal være root for at sætte Ctrl-Alt-Del-opførslen.\n" -#: sys-utils/ctrlaltdel.c:41 +#: sys-utils/ctrlaltdel.c:42 msgid "Usage: ctrlaltdel hard|soft\n" msgstr "Brug: ctrlaltdel hard|soft\n" @@ -7845,7 +7856,7 @@ msgid "" msgstr "" "Filen %s, For grænseværdi %lu og tidsoverløbsværdi %lu, Maksimale antal tegn " "i fifo var %d,\n" -"og den maksimale overførsleshastighed var %f tegn/sekund\n" +"og den maksimale overførselshastighed var %f tegn/sekund\n" #: sys-utils/cytune.c:196 #, c-format @@ -8058,7 +8069,7 @@ msgstr "" msgid "-i id [-s -q -m] : details on resource identified by id\n" msgstr "-i id [-s -q -m] : detaljer om ressourcen angivet ved id\n" -#: sys-utils/ipcs.c:268 sys-utils/ipcs.c:487 +#: sys-utils/ipcs.c:268 sys-utils/ipcs.c:491 msgid "kernel not configured for shared memory\n" msgstr "kernen er ikke konfigureret til brug af delt hukommelse\n" @@ -8119,36 +8130,36 @@ msgstr "Swap præstation: %ld forsøg\t %ld successer\n" #: sys-utils/ipcs.c:300 msgid "------ Shared Memory Segment Creators/Owners --------\n" -msgstr "---- Delte hukommelsessgementers skabere/ejere ------\n" +msgstr "---- Delte hukommelsessegmenters skabere/ejere ------\n" -#: sys-utils/ipcs.c:301 sys-utils/ipcs.c:412 sys-utils/ipcs.c:510 +#: sys-utils/ipcs.c:301 sys-utils/ipcs.c:415 sys-utils/ipcs.c:514 #, c-format msgid "%-10s%-10s%-10s%-10s%-10s%-10s\n" msgstr "%-10s%-10s%-10s%-10s%-10s%-10s\n" #: sys-utils/ipcs.c:302 sys-utils/ipcs.c:308 sys-utils/ipcs.c:313 -#: sys-utils/ipcs.c:318 sys-utils/ipcs.c:419 +#: sys-utils/ipcs.c:318 sys-utils/ipcs.c:422 msgid "shmid" msgstr "dthid" -#: sys-utils/ipcs.c:302 sys-utils/ipcs.c:319 sys-utils/ipcs.c:413 -#: sys-utils/ipcs.c:428 sys-utils/ipcs.c:511 sys-utils/ipcs.c:528 +#: sys-utils/ipcs.c:302 sys-utils/ipcs.c:319 sys-utils/ipcs.c:416 +#: sys-utils/ipcs.c:431 sys-utils/ipcs.c:515 sys-utils/ipcs.c:532 msgid "perms" msgstr "rtghd" -#: sys-utils/ipcs.c:302 sys-utils/ipcs.c:413 sys-utils/ipcs.c:511 +#: sys-utils/ipcs.c:302 sys-utils/ipcs.c:416 sys-utils/ipcs.c:515 msgid "cuid" msgstr "cuid" -#: sys-utils/ipcs.c:302 sys-utils/ipcs.c:413 sys-utils/ipcs.c:511 +#: sys-utils/ipcs.c:302 sys-utils/ipcs.c:416 sys-utils/ipcs.c:515 msgid "cgid" msgstr "cgid" -#: sys-utils/ipcs.c:302 sys-utils/ipcs.c:413 sys-utils/ipcs.c:511 +#: sys-utils/ipcs.c:302 sys-utils/ipcs.c:416 sys-utils/ipcs.c:515 msgid "uid" msgstr "uid" -#: sys-utils/ipcs.c:302 sys-utils/ipcs.c:511 +#: sys-utils/ipcs.c:302 sys-utils/ipcs.c:515 msgid "gid" msgstr "gid" @@ -8162,8 +8173,8 @@ msgid "%-10s%-10s %-20s%-20s%-20s\n" msgstr "%-10s%-10s %-20s%-20s%-20s\n" #: sys-utils/ipcs.c:308 sys-utils/ipcs.c:313 sys-utils/ipcs.c:319 -#: sys-utils/ipcs.c:419 sys-utils/ipcs.c:428 sys-utils/ipcs.c:517 -#: sys-utils/ipcs.c:522 sys-utils/ipcs.c:528 +#: sys-utils/ipcs.c:422 sys-utils/ipcs.c:431 sys-utils/ipcs.c:521 +#: sys-utils/ipcs.c:526 sys-utils/ipcs.c:532 msgid "owner" msgstr "ejer" @@ -8183,7 +8194,7 @@ msgstr "ændret" msgid "------ Shared Memory Creator/Last-op --------\n" msgstr "----- Delt hukommelse skaber/Sidste-op ------\n" -#: sys-utils/ipcs.c:313 sys-utils/ipcs.c:522 +#: sys-utils/ipcs.c:313 sys-utils/ipcs.c:526 #, c-format msgid "%-10s%-10s%-10s%-10s\n" msgstr "%-10s%-10s%-10s%-10s\n" @@ -8205,7 +8216,7 @@ msgstr "----- Delte hukommelsessegmenter -----\n" msgid "%-10s%-10s%-10s%-10s%-10s%-10s%-12s\n" msgstr "%-10s%-10s%-10s%-10s%-10s%-10s%-12s\n" -#: sys-utils/ipcs.c:318 sys-utils/ipcs.c:428 sys-utils/ipcs.c:527 +#: sys-utils/ipcs.c:318 sys-utils/ipcs.c:431 sys-utils/ipcs.c:531 msgid "key" msgstr "nøgle" @@ -8217,207 +8228,209 @@ msgstr "byte" msgid "nattch" msgstr "atlkbl" -#: sys-utils/ipcs.c:319 sys-utils/ipcs.c:428 +#: sys-utils/ipcs.c:319 sys-utils/ipcs.c:431 msgid "status" msgstr "status" -#: sys-utils/ipcs.c:339 sys-utils/ipcs.c:340 sys-utils/ipcs.c:341 -#: sys-utils/ipcs.c:449 sys-utils/ipcs.c:450 sys-utils/ipcs.c:548 -#: sys-utils/ipcs.c:549 sys-utils/ipcs.c:550 -msgid "Not set" -msgstr "Ej sat" +#: sys-utils/ipcs.c:340 sys-utils/ipcs.c:342 sys-utils/ipcs.c:344 +#: sys-utils/ipcs.c:452 sys-utils/ipcs.c:454 sys-utils/ipcs.c:552 +#: sys-utils/ipcs.c:554 sys-utils/ipcs.c:556 sys-utils/ipcs.c:609 +#: sys-utils/ipcs.c:611 sys-utils/ipcs.c:641 sys-utils/ipcs.c:643 +#: sys-utils/ipcs.c:645 sys-utils/ipcs.c:669 +msgid "Not set\n" +msgstr "Ikke sat\n" -#: sys-utils/ipcs.c:366 +#: sys-utils/ipcs.c:369 msgid "dest" msgstr "mål" -#: sys-utils/ipcs.c:367 +#: sys-utils/ipcs.c:370 msgid "locked" msgstr "låst" -#: sys-utils/ipcs.c:387 +#: sys-utils/ipcs.c:390 msgid "kernel not configured for semaphores\n" msgstr "kernen ikke konfigureret til semaforer\n" -#: sys-utils/ipcs.c:393 +#: sys-utils/ipcs.c:396 msgid "------ Semaphore Limits --------\n" msgstr "-------- Semaforgrænser -------\n" -#: sys-utils/ipcs.c:397 +#: sys-utils/ipcs.c:400 #, c-format msgid "max number of arrays = %d\n" msgstr "maks antal tabeller = %d\n" -#: sys-utils/ipcs.c:398 +#: sys-utils/ipcs.c:401 #, c-format msgid "max semaphores per array = %d\n" msgstr "maks semaforer per tabel = %d\n" -#: sys-utils/ipcs.c:399 +#: sys-utils/ipcs.c:402 #, c-format msgid "max semaphores system wide = %d\n" msgstr "maks semaforer i hele systemet = %d\n" -#: sys-utils/ipcs.c:400 +#: sys-utils/ipcs.c:403 #, c-format msgid "max ops per semop call = %d\n" msgstr "maks ops per semop-kald = %d\n" -#: sys-utils/ipcs.c:401 +#: sys-utils/ipcs.c:404 #, c-format msgid "semaphore max value = %d\n" msgstr "semafor maksværdi = %d\n" -#: sys-utils/ipcs.c:405 +#: sys-utils/ipcs.c:408 msgid "------ Semaphore Status --------\n" msgstr "-------- Semaforstatus --------\n" -#: sys-utils/ipcs.c:406 +#: sys-utils/ipcs.c:409 #, c-format msgid "used arrays = %d\n" msgstr "brugte tabeller = %d\n" -#: sys-utils/ipcs.c:407 +#: sys-utils/ipcs.c:410 #, c-format msgid "allocated semaphores = %d\n" msgstr "allokerede semaforer = %d\n" -#: sys-utils/ipcs.c:411 +#: sys-utils/ipcs.c:414 msgid "------ Semaphore Arrays Creators/Owners --------\n" msgstr "------- Semafortabellers skabere/ejere ---------\n" -#: sys-utils/ipcs.c:413 sys-utils/ipcs.c:428 +#: sys-utils/ipcs.c:416 sys-utils/ipcs.c:431 msgid "semid" msgstr "semid" -#: sys-utils/ipcs.c:417 +#: sys-utils/ipcs.c:420 msgid "------ Shared Memory Operation/Change Times --------\n" msgstr "---- Delt hukommelse operations-/ændringstider -----\n" -#: sys-utils/ipcs.c:418 +#: sys-utils/ipcs.c:421 #, c-format msgid "%-8s%-10s %-26.24s %-26.24s\n" msgstr "%-8s%-10s %-26.24s %-26.24s\n" -#: sys-utils/ipcs.c:419 +#: sys-utils/ipcs.c:422 msgid "last-op" msgstr "sidstop" -#: sys-utils/ipcs.c:419 +#: sys-utils/ipcs.c:422 msgid "last-changed" msgstr "sidst-ændret" -#: sys-utils/ipcs.c:426 +#: sys-utils/ipcs.c:429 msgid "------ Semaphore Arrays --------\n" msgstr "-------- Semafortabeller --------\n" -#: sys-utils/ipcs.c:427 +#: sys-utils/ipcs.c:430 #, c-format msgid "%-10s%-10s%-10s%-10s%-10s%-12s\n" msgstr "%-10s%-10s%-10s%-10s%-10s%-12s\n" -#: sys-utils/ipcs.c:428 +#: sys-utils/ipcs.c:431 msgid "nsems" msgstr "nsemf" -#: sys-utils/ipcs.c:495 +#: sys-utils/ipcs.c:499 msgid "------ Messages: Limits --------\n" msgstr "------ Beskeder: Grænser -------\n" -#: sys-utils/ipcs.c:496 +#: sys-utils/ipcs.c:500 #, c-format msgid "max queues system wide = %d\n" msgstr "maks køer på systemet = %d\n" -#: sys-utils/ipcs.c:497 +#: sys-utils/ipcs.c:501 #, c-format msgid "max size of message (bytes) = %d\n" msgstr "maks-størrelse af besked (byte) = %d\n" -#: sys-utils/ipcs.c:498 +#: sys-utils/ipcs.c:502 #, c-format msgid "default max size of queue (bytes) = %d\n" msgstr "standard maks-størrelse af kø (byte) = %d\n" -#: sys-utils/ipcs.c:502 +#: sys-utils/ipcs.c:506 msgid "------ Messages: Status --------\n" msgstr "------ Beskeder: Status --------\n" -#: sys-utils/ipcs.c:503 +#: sys-utils/ipcs.c:507 #, c-format msgid "allocated queues = %d\n" msgstr "allokerede køer= %d\n" -#: sys-utils/ipcs.c:504 +#: sys-utils/ipcs.c:508 #, c-format msgid "used headers = %d\n" msgstr "brugte hoveder = %d\n" -#: sys-utils/ipcs.c:505 +#: sys-utils/ipcs.c:509 #, c-format msgid "used space = %d bytes\n" msgstr "brugt plads = %d byte\n" -#: sys-utils/ipcs.c:509 +#: sys-utils/ipcs.c:513 msgid "------ Message Queues: Creators/Owners --------\n" msgstr "--------- Beskedkøer: skabere/ejere ----------\n" -#: sys-utils/ipcs.c:511 sys-utils/ipcs.c:517 sys-utils/ipcs.c:522 -#: sys-utils/ipcs.c:527 +#: sys-utils/ipcs.c:515 sys-utils/ipcs.c:521 sys-utils/ipcs.c:526 +#: sys-utils/ipcs.c:531 msgid "msqid" msgstr "bkøid" -#: sys-utils/ipcs.c:515 +#: sys-utils/ipcs.c:519 msgid "------ Message Queues Send/Recv/Change Times --------\n" msgstr "------ Beskedkøer send/modtag/ændrings-tider --------\n" -#: sys-utils/ipcs.c:516 +#: sys-utils/ipcs.c:520 #, c-format msgid "%-8s%-10s %-20s%-20s%-20s\n" msgstr "%-8s%-10s %-20s%-20s%-20s\n" -#: sys-utils/ipcs.c:517 +#: sys-utils/ipcs.c:521 msgid "send" msgstr "send" -#: sys-utils/ipcs.c:517 +#: sys-utils/ipcs.c:521 msgid "recv" msgstr "modt" -#: sys-utils/ipcs.c:517 +#: sys-utils/ipcs.c:521 msgid "change" msgstr "ændrng" -#: sys-utils/ipcs.c:521 +#: sys-utils/ipcs.c:525 msgid "------ Message Queues PIDs --------\n" msgstr "------ Beskedkøers PIDer ---------\n" -#: sys-utils/ipcs.c:522 +#: sys-utils/ipcs.c:526 msgid "lspid" msgstr "lspid" -#: sys-utils/ipcs.c:522 +#: sys-utils/ipcs.c:526 msgid "lrpid" msgstr "lrpid" -#: sys-utils/ipcs.c:526 +#: sys-utils/ipcs.c:530 msgid "------ Message Queues --------\n" msgstr "-------- Beskedkøer ----------\n" -#: sys-utils/ipcs.c:527 +#: sys-utils/ipcs.c:531 #, c-format msgid "%-10s%-10s%-10s%-10s%-12s%-12s\n" msgstr "%-10s%-10s%-10s%-10s%-12s%-12s\n" -#: sys-utils/ipcs.c:528 +#: sys-utils/ipcs.c:532 msgid "used-bytes" msgstr "brugte-byte" -#: sys-utils/ipcs.c:528 +#: sys-utils/ipcs.c:532 msgid "messages" msgstr "beskeder" -#: sys-utils/ipcs.c:594 +#: sys-utils/ipcs.c:600 #, c-format msgid "" "\n" @@ -8426,41 +8439,37 @@ msgstr "" "\n" "Delt hukommelsessegment dhsid=%d\n" -#: sys-utils/ipcs.c:595 +#: sys-utils/ipcs.c:601 #, c-format msgid "uid=%d\tgid=%d\tcuid=%d\tcgid=%d\n" msgstr "uid=%d\tgid=%d\tcuid=%d\tcgid=%d\n" -#: sys-utils/ipcs.c:597 +#: sys-utils/ipcs.c:603 #, c-format msgid "mode=%#o\taccess_perms=%#o\n" msgstr "modus=%#o\tadgangs_rett=%#o\n" -#: sys-utils/ipcs.c:599 +#: sys-utils/ipcs.c:605 #, c-format msgid "bytes=%d\tlpid=%d\tcpid=%d\tnattch=%ld\n" msgstr "byte=%d\tlpid=%d\tcpid=%d\tatilkbl=%ld\n" -#: sys-utils/ipcs.c:602 +#: sys-utils/ipcs.c:608 #, c-format msgid "att_time=%s" msgstr "tilk_tid=%s" -#: sys-utils/ipcs.c:603 sys-utils/ipcs.c:605 sys-utils/ipcs.c:661 -msgid "Not set\n" -msgstr "Ikke sat\n" - -#: sys-utils/ipcs.c:604 +#: sys-utils/ipcs.c:610 #, c-format msgid "det_time=%s" msgstr "frak_tid=%s" -#: sys-utils/ipcs.c:606 +#: sys-utils/ipcs.c:612 sys-utils/ipcs.c:644 #, c-format msgid "change_time=%s" msgstr "ændrings_tid=%s" -#: sys-utils/ipcs.c:622 +#: sys-utils/ipcs.c:628 #, c-format msgid "" "\n" @@ -8469,26 +8478,27 @@ msgstr "" "\n" "Beskedkø bkøid=%d\n" -#: sys-utils/ipcs.c:623 +#: sys-utils/ipcs.c:629 #, c-format msgid "uid=%d\tgid=%d\tcuid=%d\tcgid=%d\tmode=%#o\n" msgstr "uid=%d\tgid=%d\tcuid=%d\tcgid=%d\tmodus=%#o\n" -#: sys-utils/ipcs.c:625 +#: sys-utils/ipcs.c:631 #, c-format msgid "cbytes=%ld\tqbytes=%ld\tqnum=%ld\tlspid=%d\tlrpid=%d\n" msgstr "cbyte=%ld\tkøbyte=%ld\tkant=%ld\tlspid=%d\tlrpid=%d\n" -#: sys-utils/ipcs.c:634 +#: sys-utils/ipcs.c:640 #, c-format -msgid "send_time=%srcv_time=%schange_time=%s" -msgstr "send_tid=%smodt_tid=%sændrings_tid=%s" +msgid "send_time=%s" +msgstr "send_tid=%s" -#: sys-utils/ipcs.c:635 sys-utils/ipcs.c:636 sys-utils/ipcs.c:637 -msgid "Not Set\n" -msgstr "Ikke sat\n" +#: sys-utils/ipcs.c:642 +#, c-format +msgid "rcv_time=%s" +msgstr "modt_tid= %s" -#: sys-utils/ipcs.c:654 +#: sys-utils/ipcs.c:662 #, c-format msgid "" "\n" @@ -8497,120 +8507,121 @@ msgstr "" "\n" "Semafortabel semid=%d\n" -#: sys-utils/ipcs.c:655 +#: sys-utils/ipcs.c:663 #, c-format msgid "uid=%d\t gid=%d\t cuid=%d\t cgid=%d\n" msgstr "uid=%d\t gid=%d\t cuid=%d\t cgid=%d\n" -#: sys-utils/ipcs.c:657 +#: sys-utils/ipcs.c:665 #, c-format msgid "mode=%#o, access_perms=%#o\n" msgstr "modus=%#o, adgangs_rett=%#o\n" -#: sys-utils/ipcs.c:659 +#: sys-utils/ipcs.c:667 #, c-format msgid "nsems = %ld\n" msgstr "nsign = %ld\n" -#: sys-utils/ipcs.c:660 +#: sys-utils/ipcs.c:668 #, c-format msgid "otime = %s" msgstr "otid = %s" -#: sys-utils/ipcs.c:662 +#: sys-utils/ipcs.c:670 #, c-format msgid "ctime = %s" msgstr "ætid = %s" -#: sys-utils/ipcs.c:664 +#: sys-utils/ipcs.c:672 #, c-format msgid "%-10s%-10s%-10s%-10s%-10s\n" msgstr "%-10s%-10s%-10s%-10s%-10s\n" -#: sys-utils/ipcs.c:665 +#: sys-utils/ipcs.c:673 msgid "semnum" msgstr "sigant" -#: sys-utils/ipcs.c:665 +#: sys-utils/ipcs.c:673 msgid "value" msgstr "værdi" -#: sys-utils/ipcs.c:665 +#: sys-utils/ipcs.c:673 msgid "ncount" msgstr "nantal" -#: sys-utils/ipcs.c:665 +#: sys-utils/ipcs.c:673 msgid "zcount" msgstr "zantal" -#: sys-utils/ipcs.c:665 +#: sys-utils/ipcs.c:673 msgid "pid" msgstr "pid" -#: sys-utils/rdev.c:67 +#: sys-utils/rdev.c:68 msgid "usage: rdev [ -rsv ] [ -o OFFSET ] [ IMAGE [ VALUE [ OFFSET ] ] ]" msgstr "brug: rdev [ -rsv ] [ -o FORSKYDNING ] [ BILLEDE [ VÆRDI [ FORSKYDNING ] ] ]" -#: sys-utils/rdev.c:68 +#: sys-utils/rdev.c:69 msgid " rdev /dev/fd0 (or rdev /linux, etc.) displays the current ROOT device" msgstr " rdev /dev/fd0 (eller rdev /linux, osv.) viser den nuværende rod-enhed" -#: sys-utils/rdev.c:69 +#: sys-utils/rdev.c:70 msgid " rdev /dev/fd0 /dev/hda2 sets ROOT to /dev/hda2" -msgstr " rdev /dev/fd0 /dev/hda2 sætter fs-roden til /dev/hda2" +msgstr " rdev /dev/fd0 /dev/hda2 sætter filsystemroden til /dev/hda2" -#: sys-utils/rdev.c:70 +#: sys-utils/rdev.c:71 msgid " rdev -R /dev/fd0 1 set the ROOTFLAGS (readonly status)" msgstr " rdev -R /dev/fd0 1 sætter ROOTFLAGS (skrivebeskyttelsesstatus)" -#: sys-utils/rdev.c:71 +#: sys-utils/rdev.c:72 msgid " rdev -s /dev/fd0 /dev/hda2 set the SWAP device" msgstr " rdev -s /dev/fd0 /dev/hda2 angiv SWAP-enhed" -#: sys-utils/rdev.c:72 +#: sys-utils/rdev.c:73 msgid " rdev -r /dev/fd0 627 set the RAMDISK size" msgstr " rdev -r /dev/fd0 627 angiv RAMDISK-størrelsen" -#: sys-utils/rdev.c:73 +#: sys-utils/rdev.c:74 msgid " rdev -v /dev/fd0 1 set the bootup VIDEOMODE" msgstr " rdev -v /dev/fd0 1 angiv opstarts-skærmtilstand" -#: sys-utils/rdev.c:74 +#: sys-utils/rdev.c:75 msgid " rdev -o N ... use the byte offset N" msgstr " rdev -o N ... brug byteforskydning N" -#: sys-utils/rdev.c:75 +#: sys-utils/rdev.c:76 msgid " rootflags ... same as rdev -R" msgstr " rootflags ... samme som rdev -R" -#: sys-utils/rdev.c:76 +#: sys-utils/rdev.c:77 msgid " swapdev ... same as rdev -s" msgstr " swapdev ... samme som rdev -s" -#: sys-utils/rdev.c:77 +#: sys-utils/rdev.c:78 msgid " ramsize ... same as rdev -r" msgstr " ramsize ... samme som rdev -r" -#: sys-utils/rdev.c:78 +#: sys-utils/rdev.c:79 msgid " vidmode ... same as rdev -v" msgstr " vidmode ... samme som rdev -v" -#: sys-utils/rdev.c:79 +#: sys-utils/rdev.c:80 msgid "Note: video modes are: -3=Ask, -2=Extended, -1=NormalVga, 1=key1, 2=key2,..." msgstr "" "Bemærk: skærmtilstande er: -3=Spørg, -2=Udvidet, -1=NormalVGA, 1=nøgle1, " "2=nøgle2,..." -#: sys-utils/rdev.c:80 +#: sys-utils/rdev.c:81 msgid " use -R 1 to mount root readonly, -R 0 for read/write." msgstr " brug -R 1 for at montere skrivebeskyttet, -R 0 for skriveadgang." -#: sys-utils/readprofile.c:52 +#: sys-utils/readprofile.c:54 #, c-format msgid "" "%s: Usage: \"%s [options]\n" "\t -m <mapfile> (default = \"%s\")\n" "\t -p <pro-file> (default = \"%s\")\n" +"\t -M <mult> set the profiling multiplier to <mult>\n" "\t -i print only info about the sampling step\n" "\t -v print verbose data\n" "\t -a print all symbols, even if count is 0\n" @@ -8619,10 +8630,11 @@ msgid "" msgstr "" "%s: Brug: \"%s [tilvalg]\n" "\t -m <oversigtsfil> (standard = \"%s\")\n" -"\t -p <pro-file> (standard = \"%s\")\n" +"\t -p <pro-fil> (standard = \"%s\")\n" +"\t -M <fakt> sæt profileringsfaktor til <fakt>\n" "\t -i vis kun sample-skridt oplysninger\n" "\t -v medtag flere detaljer\n" -"\t -a vis alle symboler selvom tælleren er 0\n" +"\t -a vis alle symboler, selvom tælleren er 0\n" "\t -r nulstil alle tællere (kun root)\n" "\t -V vis version og afslut\n" @@ -8631,62 +8643,58 @@ msgstr "" msgid "%s Version %s\n" msgstr "%s Version %s\n" -#: sys-utils/readprofile.c:128 -msgid "anything\n" -msgstr "hvad som helst\n" - -#: sys-utils/readprofile.c:157 +#: sys-utils/readprofile.c:175 #, c-format msgid "Sampling_step: %i\n" msgstr "Sampling_step: %i\n" -#: sys-utils/readprofile.c:170 sys-utils/readprofile.c:196 +#: sys-utils/readprofile.c:188 sys-utils/readprofile.c:211 #, c-format msgid "%s: %s(%i): wrong map line\n" msgstr "%s: %s(%i): forkert oversigtlinie\n" -#: sys-utils/readprofile.c:183 +#: sys-utils/readprofile.c:199 #, c-format msgid "%s: can't find \"_stext\" in %s\n" msgstr "%s: kunne ikke finde \"_stext\" i %s\n" -#: sys-utils/readprofile.c:226 +#: sys-utils/readprofile.c:242 msgid "total" msgstr "total" -#: sys-utils/renice.c:67 +#: sys-utils/renice.c:68 msgid "usage: renice priority [ [ -p ] pids ] [ [ -g ] pgrps ] [ [ -u ] users ]\n" msgstr "brug: renice prioritet [ [ -p ] pids ] [ [ -g ] pgrpr ] [ [ -u ] brugere ]\n" -#: sys-utils/renice.c:94 +#: sys-utils/renice.c:95 #, c-format msgid "renice: %s: unknown user\n" msgstr "renice: %s: ukendt bruger\n" -#: sys-utils/renice.c:102 +#: sys-utils/renice.c:103 #, c-format msgid "renice: %s: bad value\n" msgstr "renice: %s: ugyldig værdi\n" -#: sys-utils/renice.c:121 +#: sys-utils/renice.c:122 msgid "getpriority" msgstr "læsprioritet" -#: sys-utils/renice.c:126 +#: sys-utils/renice.c:127 msgid "setpriority" msgstr "sætprioritet" -#: sys-utils/renice.c:129 +#: sys-utils/renice.c:130 #, c-format msgid "%d: old priority %d, new priority %d\n" msgstr "%d: gammel prioritet %d, ny prioritet %d\n" -#: sys-utils/setsid.c:23 +#: sys-utils/setsid.c:26 #, c-format msgid "usage: %s program [arg ...]\n" msgstr "brug: %s program [parametre ...]\n" -#: sys-utils/tunelp.c:74 +#: sys-utils/tunelp.c:75 #, c-format msgid "" "Usage: %s <device> [ -i <IRQ> | -t <TIME> | -c <CHARS> | -w <WAIT> | \n" @@ -8697,55 +8705,55 @@ msgstr "" " -a [on|off] | -o [on|off] | -C [on|off] | -q [on|off] | -s | \n" " -T [on|off] ]\n" -#: sys-utils/tunelp.c:90 +#: sys-utils/tunelp.c:91 msgid "malloc error" -msgstr "fejl ved hukommelsallokering (malloc)" +msgstr "fejl ved hukommelsesallokering (malloc)" -#: sys-utils/tunelp.c:102 +#: sys-utils/tunelp.c:103 #, c-format msgid "%s: bad value\n" msgstr "%s: ugyldig værdi\n" -#: sys-utils/tunelp.c:241 +#: sys-utils/tunelp.c:242 #, c-format msgid "%s: %s not an lp device.\n" msgstr "%s: %s ikke en printerenhed.\n" -#: sys-utils/tunelp.c:262 +#: sys-utils/tunelp.c:263 #, c-format msgid "%s status is %d" msgstr "%s status er %d" -#: sys-utils/tunelp.c:263 +#: sys-utils/tunelp.c:264 msgid ", busy" msgstr ", optaget" -#: sys-utils/tunelp.c:264 +#: sys-utils/tunelp.c:265 msgid ", ready" msgstr ", klar" -#: sys-utils/tunelp.c:265 +#: sys-utils/tunelp.c:266 msgid ", out of paper" msgstr ", ikke mere papir" -#: sys-utils/tunelp.c:266 +#: sys-utils/tunelp.c:267 msgid ", on-line" msgstr ", klar" -#: sys-utils/tunelp.c:267 +#: sys-utils/tunelp.c:268 msgid ", error" msgstr ", fejl" -#: sys-utils/tunelp.c:284 +#: sys-utils/tunelp.c:285 msgid "LPGETIRQ error" msgstr "LPGETIRQ fejl" -#: sys-utils/tunelp.c:290 +#: sys-utils/tunelp.c:291 #, c-format msgid "%s using IRQ %d\n" msgstr "%s ved brug af IRQ %d\n" -#: sys-utils/tunelp.c:292 +#: sys-utils/tunelp.c:293 #, c-format msgid "%s using polling\n" msgstr "%s bruger overvågning (polling)\n" @@ -8776,7 +8784,7 @@ msgstr "forbi første linie" msgid "-- line already flushed" msgstr "-- linie allerede skrevet ud" -#: text-utils/colcrt.c:96 +#: text-utils/colcrt.c:97 #, c-format msgid "usage: %s [ - ] [ -2 ] [ file ... ]\n" msgstr "brug: %s [ - ] [ -2 ] [ fil ... ]\n" @@ -8803,12 +8811,12 @@ msgstr "" "hexdump: [-bcdovx] [-e fmt] [-f fmt_fil] [-n længde] [-s overspring] [fil " "...]\n" -#: text-utils/more.c:262 +#: text-utils/more.c:263 #, c-format msgid "usage: %s [-dflpcsu] [+linenum | +/pattern] name1 name2 ...\n" msgstr "brug: %s [-dflpcsu] [+linieantal | +/mønster] navn1 navn2 ...\n" -#: text-utils/more.c:520 +#: text-utils/more.c:521 #, c-format msgid "" "\n" @@ -8820,7 +8828,7 @@ msgstr "" "\n" #. simple ELF detection -#: text-utils/more.c:559 +#: text-utils/more.c:560 #, c-format msgid "" "\n" @@ -8831,34 +8839,34 @@ msgstr "" "******** %s: Ikke en tekstfil ********\n" "\n" -#: text-utils/more.c:662 +#: text-utils/more.c:663 msgid "[Use q or Q to quit]" msgstr "[Brug q eller Q for at afslutte]" -#: text-utils/more.c:842 +#: text-utils/more.c:843 msgid "--More--" msgstr "--Mere--" -#: text-utils/more.c:844 +#: text-utils/more.c:845 #, c-format msgid "(Next file: %s)" msgstr "(Næste fil: %s)" -#: text-utils/more.c:850 +#: text-utils/more.c:851 msgid "[Press space to continue, 'q' to quit.]" msgstr "[Tryk mellemrum for at fortsætte, 'q' for at afslutte.]" -#: text-utils/more.c:1184 +#: text-utils/more.c:1185 #, c-format msgid "...back %d page" msgstr "...bak %d sider" -#: text-utils/more.c:1230 +#: text-utils/more.c:1231 #, c-format msgid "...skipping %d line" msgstr "...overspringer %d linie" -#: text-utils/more.c:1271 +#: text-utils/more.c:1272 msgid "" "\n" "***Back***\n" @@ -8868,37 +8876,37 @@ msgstr "" "***Tilbage***\n" "\n" -#: text-utils/more.c:1328 +#: text-utils/more.c:1329 msgid "Can't open help file" msgstr "Kunne ikke åbne hjælpefilen" -#: text-utils/more.c:1358 text-utils/more.c:1362 +#: text-utils/more.c:1359 text-utils/more.c:1363 msgid "[Press 'h' for instructions.]" msgstr "[Tryk 'h' for instruktioner.]" -#: text-utils/more.c:1396 +#: text-utils/more.c:1397 #, c-format msgid "\"%s\" line %d" msgstr "\"%s\" linie %d" -#: text-utils/more.c:1398 +#: text-utils/more.c:1399 #, c-format msgid "[Not a file] line %d" msgstr "[Ikke en fil] linie %d" -#: text-utils/more.c:1482 +#: text-utils/more.c:1483 msgid " Overflow\n" msgstr " Overløb\n" -#: text-utils/more.c:1529 +#: text-utils/more.c:1530 msgid "...skipping\n" msgstr "...overspringer\n" -#: text-utils/more.c:1559 +#: text-utils/more.c:1560 msgid "Regular expression botch" msgstr "Forkludret regulært udtryk" -#: text-utils/more.c:1571 +#: text-utils/more.c:1572 msgid "" "\n" "Pattern not found\n" @@ -8906,15 +8914,15 @@ msgstr "" "\n" "Mønster ikke fundet\n" -#: text-utils/more.c:1574 +#: text-utils/more.c:1575 msgid "Pattern not found" msgstr "Mønster ikke fundet" -#: text-utils/more.c:1635 +#: text-utils/more.c:1636 msgid "can't fork\n" msgstr "kunne ikke forgrene (fork)\n" -#: text-utils/more.c:1674 +#: text-utils/more.c:1675 msgid "" "\n" "...Skipping " @@ -8922,23 +8930,23 @@ msgstr "" "\n" "...Overspringer " -#: text-utils/more.c:1678 +#: text-utils/more.c:1679 msgid "...Skipping " msgstr "...Overspringer " -#: text-utils/more.c:1679 +#: text-utils/more.c:1680 msgid "to file " msgstr "til fil " -#: text-utils/more.c:1679 +#: text-utils/more.c:1680 msgid "back to file " msgstr "tilbage til fil " -#: text-utils/more.c:1915 +#: text-utils/more.c:1914 msgid "Line too long" msgstr "For lang linie" -#: text-utils/more.c:1958 +#: text-utils/more.c:1957 msgid "No previous command to substitute for" msgstr "Ingen tidligere kommando at erstatte med" @@ -8949,7 +8957,7 @@ msgstr "od: od(1) er blevet erstattet af hexdump(1).\n" #: text-utils/odsyntax.c:136 #, c-format msgid "od: hexdump(1) compatibility doesn't support the -%c option%s\n" -msgstr "od: hexdump(1) kompabilitet understøtter ikke -%c tilvalg%s\n" +msgstr "od: hexdump(1) kompatibilitet understøtter ikke -%c tilvalg%s\n" #: text-utils/odsyntax.c:137 msgid "; see strings(1)." @@ -8994,29 +9002,29 @@ msgstr "Kunne ikke allokere bufferplads\n" msgid "usage: rev [file ...]\n" msgstr "brug: rev [fil ...]\n" -#: text-utils/ul.c:142 +#: text-utils/ul.c:143 #, c-format msgid "usage: %s [ -i ] [ -tTerm ] file...\n" msgstr "brug: %s [ -i ] [ -tTerm ] fil...\n" -#: text-utils/ul.c:153 +#: text-utils/ul.c:154 msgid "trouble reading terminfo" msgstr "problemer ved læsning af 'terminfo'" -#: text-utils/ul.c:243 +#: text-utils/ul.c:244 #, c-format msgid "Unknown escape sequence in input: %o, %o\n" msgstr "Ukendt undvigelsessekvens i inddata: %o, %o\n" -#: text-utils/ul.c:425 +#: text-utils/ul.c:427 msgid "Unable to allocate buffer.\n" msgstr "Kunne ikke allokere buffer.\n" -#: text-utils/ul.c:584 +#: text-utils/ul.c:588 msgid "Input line too long.\n" msgstr "For lang inddatalinie.\n" -#: text-utils/ul.c:597 +#: text-utils/ul.c:601 msgid "Out of memory when growing buffer.\n" msgstr "Løb tør for hukommelse under forstørring af buffer.\n" @@ -54,7 +54,7 @@ msgstr "/dev/port konnte nicht geöffnet werden: %s" # typo in the english version: didn't #: clock/cmos.c:577 -msgid "I failed to get permission because I didnt try.\n" +msgid "I failed to get permission because I didn't try.\n" msgstr "Keine Erlaubnis, da sie nicht angefordert wurde.\n" #: clock/cmos.c:580 @@ -6924,22 +6924,6 @@ msgstr "Lesen von %s und Ausgabe von ioctl nicht möglich.\n" msgid "%s: $TERM is not defined.\n" msgstr "%s: Die Umgebungsvariable $TERM ist nicht definiert.\n" -#: misc-utils/tsort.c:117 -msgid "usage: tsort [ inputfile ]\n" -msgstr "Verwendung: tsort [ Eingabedatei ]\n" - -#: misc-utils/tsort.c:154 -msgid "tsort: odd data count.\n" -msgstr "tsort: ungewöhnliche Datenzählung.\n" - -#: misc-utils/tsort.c:305 -msgid "tsort: cycle in data.\n" -msgstr "tsort: Zyklus in den Daten.\n" - -#: misc-utils/tsort.c:318 -msgid "tsort: internal error -- could not find cycle.\n" -msgstr "tsort: Interner Fehler -- Zyklus wurde nicht gefunden.\n" - #: misc-utils/whereis.c:155 msgid "whereis [ -sbmu ] [ -SBM dir ... -f ] name...\n" msgstr "whereis [ -sbmu ] [ -SBM-Verzeichnis ... -f ] Name...\n" @@ -40,7 +40,7 @@ msgid "Cannot open /dev/port: %s" msgstr "No es posible abrir /dev/port: %s" #: clock/cmos.c:577 -msgid "I failed to get permission because I didnt try.\n" +msgid "I failed to get permission because I didn't try.\n" msgstr "No se ha podido obtener permiso porque no se ha intentado.\n" #: clock/cmos.c:580 @@ -6902,22 +6902,6 @@ msgstr "No se ha podido leer %s y no se puede efectuar vuelco de ioctl\n" msgid "%s: $TERM is not defined.\n" msgstr "%s: $TERM no está definido.\n" -#: misc-utils/tsort.c:117 -msgid "usage: tsort [ inputfile ]\n" -msgstr "uso: tsort [ archivoentrada ]\n" - -#: misc-utils/tsort.c:154 -msgid "tsort: odd data count.\n" -msgstr "tsort: número de datos impar.\n" - -#: misc-utils/tsort.c:305 -msgid "tsort: cycle in data.\n" -msgstr "tsort: ciclo en datos.\n" - -#: misc-utils/tsort.c:318 -msgid "tsort: internal error -- could not find cycle.\n" -msgstr "tsort: error interno -- no se ha podido encontrar el ciclo.\n" - #: misc-utils/whereis.c:155 msgid "whereis [ -sbmu ] [ -SBM dir ... -f ] name...\n" msgstr "whereis [ -sbmu ] [ -SBM dir ... -f ] nombre...\n" @@ -48,7 +48,7 @@ msgid "Cannot open /dev/port: %s" msgstr "Impossible d'ouvrir /dev/port : %s" #: clock/cmos.c:577 -msgid "I failed to get permission because I didnt try.\n" +msgid "I failed to get permission because I didn't try.\n" msgstr "" "Je n'ai pas réussi à obtenir l'autorisation parce que je n'ai pas essayé.\n" @@ -6871,22 +6871,6 @@ msgstr "Lecture de %s impossible, et ioctl dump impossible.\n" msgid "%s: $TERM is not defined.\n" msgstr "%s : $TERM n'est pas défini.\n" -#: misc-utils/tsort.c:117 -msgid "usage: tsort [ inputfile ]\n" -msgstr "Usage : tsort [ fichier entrée ]\n" - -#: misc-utils/tsort.c:154 -msgid "tsort: odd data count.\n" -msgstr "tsort : total données impaires.\n" - -#: misc-utils/tsort.c:305 -msgid "tsort: cycle in data.\n" -msgstr "tsort : cycle des données.\n" - -#: misc-utils/tsort.c:318 -msgid "tsort: internal error -- could not find cycle.\n" -msgstr "tsort : erreur interne -- cycle introuvable.\n" - #: misc-utils/whereis.c:155 msgid "whereis [ -sbmu ] [ -SBM dir ... -f ] name...\n" msgstr "whereis [ -sbmu ] [ -SBM dir ... -f ] nom...\n" @@ -40,7 +40,7 @@ msgid "Cannot open /dev/port: %s" msgstr "Impossibile aprire /dev/port: %s" #: clock/cmos.c:577 -msgid "I failed to get permission because I didnt try.\n" +msgid "I failed to get permission because I didn't try.\n" msgstr "" "Non sono riuscito ad ottenere l'autorizzazione perché non ho provato.\n" @@ -6885,22 +6885,6 @@ msgstr "impossibile leggere %s e impossibile eseguire ioctl sul dump\n" msgid "%s: $TERM is not defined.\n" msgstr "%s: $TERM non è definito.\n" -#: misc-utils/tsort.c:117 -msgid "usage: tsort [ inputfile ]\n" -msgstr "utilizzo: tsort [ inputfile ]\n" - -#: misc-utils/tsort.c:154 -msgid "tsort: odd data count.\n" -msgstr "tsort: conteggio dati strano.\n" - -#: misc-utils/tsort.c:305 -msgid "tsort: cycle in data.\n" -msgstr "tsort: ciclo nei dati.\n" - -#: misc-utils/tsort.c:318 -msgid "tsort: internal error -- could not find cycle.\n" -msgstr "tsort: errore interno - impossibile trovare il ciclo.\n" - #: misc-utils/whereis.c:155 msgid "whereis [ -sbmu ] [ -SBM dir ... -f ] name...\n" msgstr "whereis [ -sbmu ] [ -SBM dir ... -f ] nome...\n" @@ -43,7 +43,7 @@ msgid "Cannot open /dev/port: %s" msgstr "/dev/port ¤ò³«¤±¤Þ¤»¤ó: %s" #: clock/cmos.c:577 -msgid "I failed to get permission because I didnt try.\n" +msgid "I failed to get permission because I didn't try.\n" msgstr "µö²Ä¤Î¼èÆÀ¤ò»î¤µ¤Ê¤«¤Ã¤¿¤Î¤Ç¡¢µö²Ä¤Î¼èÆÀ¤Ë¼ºÇÔ¤·¤Þ¤·¤¿¡£\n" #: clock/cmos.c:580 @@ -6742,22 +6742,6 @@ msgstr "%s ¤òÆɤá¤Þ¤»¤ó¡¢¤½¤·¤Æ ioctl ¥À¥ó¥×¤¬¤Ç¤¤Þ¤»¤ó\n" msgid "%s: $TERM is not defined.\n" msgstr "%s: $TERM ¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£\n" -#: misc-utils/tsort.c:117 -msgid "usage: tsort [ inputfile ]\n" -msgstr "»È¤¤Êý: tsort [ ÆþÎÏ¥Õ¥¡¥¤¥ë ]\n" - -#: misc-utils/tsort.c:154 -msgid "tsort: odd data count.\n" -msgstr "tsort: ÊѤʥǡ¼¥¿¥«¥¦¥ó¥È¤Ç¤¹¡£\n" - -#: misc-utils/tsort.c:305 -msgid "tsort: cycle in data.\n" -msgstr "tsort: ¥Ç¡¼¥¿¤¬½Û´Ä¤·¤Æ¤¤¤Þ¤¹¡£\n" - -#: misc-utils/tsort.c:318 -msgid "tsort: internal error -- could not find cycle.\n" -msgstr "tsort: ÆâÉô¥¨¥é¡¼ -- ½Û´Ä¤ò¸«¤Ä¤±¤é¤ì¤Þ¤»¤ó¤Ç¤·¤¿¡£\n" - #: misc-utils/whereis.c:155 msgid "whereis [ -sbmu ] [ -SBM dir ... -f ] name...\n" msgstr "whereis [ -sbmu ] [ -SBM ¥Ç¥£¥ì¥¯¥È¥ê ... -f ] ̾Á° ...\n" @@ -41,7 +41,7 @@ msgid "Cannot open /dev/port: %s" msgstr "Kan /dev/port niet openen: %s" #: clock/cmos.c:577 -msgid "I failed to get permission because I didnt try.\n" +msgid "I failed to get permission because I didn't try.\n" msgstr "" #: clock/cmos.c:580 @@ -6460,22 +6460,6 @@ msgstr "" msgid "%s: $TERM is not defined.\n" msgstr "" -#: misc-utils/tsort.c:117 -msgid "usage: tsort [ inputfile ]\n" -msgstr "" - -#: misc-utils/tsort.c:154 -msgid "tsort: odd data count.\n" -msgstr "" - -#: misc-utils/tsort.c:305 -msgid "tsort: cycle in data.\n" -msgstr "" - -#: misc-utils/tsort.c:318 -msgid "tsort: internal error -- could not find cycle.\n" -msgstr "" - #: misc-utils/whereis.c:155 msgid "whereis [ -sbmu ] [ -SBM dir ... -f ] name...\n" msgstr "" diff --git a/po/pt_BR.po b/po/pt_BR.po index bcd4f862..5f8c56d3 100644 --- a/po/pt_BR.po +++ b/po/pt_BR.po @@ -49,7 +49,7 @@ msgid "Cannot open /dev/port: %s" msgstr "Não é possível abrir /dev/port: %s" #: clock/cmos.c:577 -msgid "I failed to get permission because I didnt try.\n" +msgid "I failed to get permission because I didn't try.\n" msgstr "Não consegui obter permissão porque não tentei.\n" #: clock/cmos.c:580 @@ -6477,22 +6477,6 @@ msgstr "não foi possível ler %s e não é possível realizar ioctl da descarga\n" msgid "%s: $TERM is not defined.\n" msgstr "%s: $TERM indefinido.\n" -#: misc-utils/tsort.c:117 -msgid "usage: tsort [ inputfile ]\n" -msgstr "Uso: tsort [ arquivo_entrada ]\n" - -#: misc-utils/tsort.c:154 -msgid "tsort: odd data count.\n" -msgstr "tsort: contagem de dados incomum.\n" - -#: misc-utils/tsort.c:305 -msgid "tsort: cycle in data.\n" -msgstr "tsort: ciclo nos dados.\n" - -#: misc-utils/tsort.c:318 -msgid "tsort: internal error -- could not find cycle.\n" -msgstr "tsort: erro interno -- não foi possível localizar o ciclo.\n" - #: misc-utils/whereis.c:155 msgid "whereis [ -sbmu ] [ -SBM dir ... -f ] name...\n" msgstr "whereis [ -sbmu ] [ -SBM dir ... -f ] nome...\n" diff --git a/sys-utils/ctrlaltdel.c b/sys-utils/ctrlaltdel.c index 91b67bc8..beabc605 100644 --- a/sys-utils/ctrlaltdel.c +++ b/sys-utils/ctrlaltdel.c @@ -2,7 +2,7 @@ * ctrlaltdel.c - Set the function of the Ctrl-Alt-Del combination * Created 4-Jul-92 by Peter Orbaek <poe@daimi.aau.dk> * ftp://ftp.daimi.aau.dk/pub/linux/poe/ - * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support * */ diff --git a/sys-utils/cytune.c b/sys-utils/cytune.c index 63ca0e4e..dfa276e9 100644 --- a/sys-utils/cytune.c +++ b/sys-utils/cytune.c @@ -34,7 +34,7 @@ */ /* - * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support * Sun Mar 21 1999 - Arnaldo Carvalho de Melo <acme@conectiva.com.br> * - fixed strerr(errno) in gettext calls diff --git a/sys-utils/dmesg.c b/sys-utils/dmesg.c index 5cf1817a..f9d1e282 100644 --- a/sys-utils/dmesg.c +++ b/sys-utils/dmesg.c @@ -6,7 +6,7 @@ * Modifications by Rick Sladkey (jrs@world.std.com) * Larger buffersize 3 June 1998 by Nicolai Langfeldt, based on a patch * by Peeter Joot. This was also suggested by John Hudson. - * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support * */ diff --git a/sys-utils/ipcrm.c b/sys-utils/ipcrm.c index 2fc6ec47..3e3a9ba0 100644 --- a/sys-utils/ipcrm.c +++ b/sys-utils/ipcrm.c @@ -1,7 +1,7 @@ /* * krishna balasubramanian 1993 * - * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support * * 1999-04-02 frank zago diff --git a/sys-utils/ipcs.c b/sys-utils/ipcs.c index d74fa359..eec8bce9 100644 --- a/sys-utils/ipcs.c +++ b/sys-utils/ipcs.c @@ -1,7 +1,7 @@ -/* Original author unknown, but may be "krishna balasub@cis.ohio-state.edu" - Modified Sat Oct 9 10:55:28 1993 for 0.99.13 */ +/* Original author unknown, may be "krishna balasub@cis.ohio-state.edu" */ +/* -/* + Modified Sat Oct 9 10:55:28 1993 for 0.99.13 Patches from Mike Jagdis (jaggy@purplet.demon.co.uk) applied Wed Feb 8 12:12:21 1995 by faith@cs.unc.edu to print numeric uids if no @@ -13,7 +13,7 @@ Patched to display the key field -- hy@picksys.com 12/18/96 - 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> - added Native Language Support @@ -335,10 +335,13 @@ void do_shm (char format) printf ("%-10d%-10.10s", shmid, pw->pw_name); else printf ("%-10d%-10d", shmid, ipcp->uid); - printf(" %-20.16s%-20.16s%-20.16s\n", - shmseg.shm_atime ? ctime(&shmseg.shm_atime) + 4 : _("Not set"), - shmseg.shm_dtime ? ctime(&shmseg.shm_dtime) + 4 : _("Not set"), - shmseg.shm_ctime ? ctime(&shmseg.shm_ctime) + 4 : _("Not set")); + /* ctime uses static buffer: use separate calls */ + printf(" %-20.16s", shmseg.shm_atime + ? ctime(&shmseg.shm_atime) + 4 : _("Not set\n")); + printf("%-20.16s", shmseg.shm_dtime + ? ctime(&shmseg.shm_dtime) + 4 : _("Not set\n")); + printf("%-20.16s\n", shmseg.shm_ctime + ? ctime(&shmseg.shm_ctime) + 4 : _("Not set\n")); break; case PID: if (pw) @@ -445,9 +448,10 @@ void do_sem (char format) printf ("%-8d%-10.10s", semid, pw->pw_name); else printf ("%-8d%-10d", semid, ipcp->uid); - printf (" %-26.24s %-26.24s\n", - semary.sem_otime ? ctime(&semary.sem_otime) : _("Not set"), - semary.sem_ctime ? ctime(&semary.sem_ctime) : _("Not set")); + printf (" %-26.24s", semary.sem_otime + ? ctime(&semary.sem_otime) : _("Not set\n")); + printf (" %-26.24s\n", semary.sem_ctime + ? ctime(&semary.sem_ctime) : _("Not set\n")); break; case PID: break; @@ -544,10 +548,12 @@ void do_msg (char format) printf ("%-8d%-10.10s", msqid, pw->pw_name); else printf ("%-8d%-10d", msqid, ipcp->uid); - printf (" %-20.16s%-20.16s%-20.16s\n", - msgque.msg_stime ? ctime(&msgque.msg_stime) + 4 : _("Not set"), - msgque.msg_rtime ? ctime(&msgque.msg_rtime) + 4 : _("Not set"), - msgque.msg_ctime ? ctime(&msgque.msg_ctime) + 4 : _("Not set")); + printf (" %-20.16s", msgque.msg_stime + ? ctime(&msgque.msg_stime) + 4 : _("Not set\n")); + printf ("%-20.16s", msgque.msg_rtime + ? ctime(&msgque.msg_rtime) + 4 : _("Not set\n")); + printf ("%-20.16s\n", msgque.msg_ctime + ? ctime(&msgque.msg_ctime) + 4 : _("Not set\n")); break; case PID: if (pw) @@ -631,10 +637,12 @@ void print_msg (int msqid) */ (long) buf.msg_cbytes, (long) buf.msg_qbytes, (long) buf.msg_qnum, buf.msg_lspid, buf.msg_lrpid); - printf (_("send_time=%srcv_time=%schange_time=%s"), - buf.msg_rtime? ctime (&buf.msg_rtime) : _("Not Set\n"), - buf.msg_stime? ctime (&buf.msg_stime) : _("Not Set\n"), - buf.msg_ctime? ctime (&buf.msg_ctime) : _("Not Set\n")); + printf (_("send_time=%s"), + buf.msg_stime? ctime (&buf.msg_stime) : _("Not set\n")); + printf (_("rcv_time=%s"), + buf.msg_rtime? ctime (&buf.msg_rtime) : _("Not set\n")); + printf (_("change_time=%s"), + buf.msg_ctime? ctime (&buf.msg_ctime) : _("Not set\n")); printf ("\n"); return; } diff --git a/sys-utils/rdev.c b/sys-utils/rdev.c index d49da823..54ccd99f 100644 --- a/sys-utils/rdev.c +++ b/sys-utils/rdev.c @@ -49,7 +49,7 @@ Tue Mar 30 09:31:52 1993: rdev -Rn to set root readonly flag, sct@dcs.ed.ac.uk Wed Jun 22 21:12:29 1994: Applied patches from Dave (gentzel@nova.enet.dec.com) to prevent dereferencing the NULL pointer, faith@cs.unc.edu -1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> +1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> - added Native Language Support ------------------------------------------------------------------------- diff --git a/sys-utils/readprofile.1 b/sys-utils/readprofile.1 index a72113c8..d26e8eca 100644 --- a/sys-utils/readprofile.1 +++ b/sys-utils/readprofile.1 @@ -23,7 +23,7 @@ The output is organized in three columns: the first is the number of clock ticks, the second is the name of the C function in the kernel where those many ticks occurred, and the third is the normalized `load' of the procedure, -calculated as a ratio between the number of thicks and the lenght of +calculated as a ratio between the number of ticks and the length of the procedure. The output is filled with blanks to ease readability. .LP @@ -78,6 +78,15 @@ you can make setuid 0, in order to reset the buffer without gaining privileges. .TP +.RB -M " multiplier" +On some architectures it is possible to alter the frequency at which +the kernel delivers profiling interrupts to each CPU. This option allows you to +set the frequency, as a multiplier of the system clock frequency, HZ. +This is supported on i386-SMP (2.2 and 2.4 kernel) and also on sparc-SMP +and sparc64-SMP (2.4 kernel). This option also resets the profiling buffer, +and requires superuser privileges. + +.TP .B -v Verbose. The output is organized in four columns and filled with blanks. The first column is the RAM address of a kernel function, the second is @@ -116,6 +125,11 @@ Browse a `freezed' profile buffer for a non current kernel: readprofile -p ~/profile.freeze -m /zImage.map.gz .fi +Request profiling at 2kHz per CPU, and reset the profiling buffer +.nf + sudo readprofile -M 20 + +.fi .SH BUGS diff --git a/sys-utils/readprofile.c b/sys-utils/readprofile.c index b531fa90..18932262 100644 --- a/sys-utils/readprofile.c +++ b/sys-utils/readprofile.c @@ -19,10 +19,12 @@ */ /* - * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support * 1999-09-01 Stephane Eranian <eranian@cello.hpl.hp.com> * - 64bit clean patch + * 3Feb2001 Andrew Morton <andrewm@uow.edu.au> + * - -M option to write profile multiplier. */ #include <errno.h> @@ -44,7 +46,7 @@ static char *prgname; /* These are the defaults */ static char defaultmap[]="/usr/src/linux/System.map"; static char defaultpro[]="/proc/profile"; -static char optstring[]="m:p:itvarV"; +static char optstring[]="M:m:p:itvarV"; static void usage(void) { @@ -52,6 +54,7 @@ usage(void) { _("%s: Usage: \"%s [options]\n" "\t -m <mapfile> (default = \"%s\")\n" "\t -p <pro-file> (default = \"%s\")\n" + "\t -M <mult> set the profiling multiplier to <mult>\n" "\t -i print only info about the sampling step\n" "\t -v print verbose data\n" "\t -a print all symbols, even if count is 0\n" @@ -63,171 +66,181 @@ usage(void) { static FILE * myopen(char *name, char *mode, int *flag) { - static char cmdline[S_LEN]; - - if (!strcmp(name+strlen(name)-3,".gz")) - { - *flag=1; - sprintf(cmdline,"zcat %s", name); - return popen(cmdline,mode); - } - *flag=0; - return fopen(name,mode); + static char cmdline[S_LEN]; + + if (!strcmp(name+strlen(name)-3,".gz")) { + *flag=1; + sprintf(cmdline,"zcat %s", name); + return popen(cmdline,mode); + } + *flag=0; + return fopen(name,mode); } int main (int argc, char **argv) { - FILE *pro; - FILE *map; - int proFd; - char *mapFile, *proFile; - unsigned long len=0, add0=0, indx=0; - unsigned int step; - unsigned int *buf, total, fn_len; - unsigned long fn_add, next_add; /* current and next address */ - char fn_name[S_LEN], next_name[S_LEN]; /* current and next name */ - char mode[8]; - int c; - int optAll=0, optInfo=0, optReset=0, optVerbose=0; - char mapline[S_LEN]; - int maplineno=1; - int popenMap; /* flag to tell if popen() has been used */ + FILE *map; + int proFd; + char *mapFile, *proFile, *mult=0; + unsigned long len=0, add0=0, indx=0; + unsigned int step; + unsigned int *buf, total, fn_len; + unsigned long fn_add, next_add; /* current and next address */ + char fn_name[S_LEN], next_name[S_LEN]; /* current and next name */ + char mode[8]; + int c; + int optAll=0, optInfo=0, optReset=0, optVerbose=0; + char mapline[S_LEN]; + int maplineno=1; + int popenMap; /* flag to tell if popen() has been used */ #define next (current^1) - setlocale(LC_ALL, ""); - bindtextdomain(PACKAGE, LOCALEDIR); - textdomain(PACKAGE); - - prgname=argv[0]; - proFile=defaultpro; - mapFile=defaultmap; - - while ((c=getopt(argc,argv,optstring))!=-1) - { - switch(c) - { - case 'm': mapFile=optarg; break; - case 'p': proFile=optarg; break; - case 'a': optAll++; break; - case 'i': optInfo++; break; - case 'r': optReset++; break; - case 'v': optVerbose++; break; - case 'V': printf(_("%s Version %s\n"),prgname,RELEASE); exit(0); - default: usage(); - } - } - - if (optReset) - { - /* try to become root, just in case */ - setuid(0); - pro=fopen(defaultpro,"w"); - if (!pro) - {perror(proFile); exit(1);} - fprintf(pro,_("anything\n")); - fclose(pro); - exit(0); - } - - /* - * Use an fd for the profiling buffer, to skip stdio overhead - */ - if ( ((proFd=open(proFile,O_RDONLY)) < 0) - || ((int)(len=lseek(proFd,0,SEEK_END)) < 0) - || (lseek(proFd,0,SEEK_SET)<0) ) - { - fprintf(stderr,"%s: %s: %s\n",prgname,proFile,strerror(errno)); - exit(1); - } - - if ( !(buf=malloc(len)) ) - { fprintf(stderr,"%s: malloc(): %s\n",prgname, strerror(errno)); exit(1); } - - if (read(proFd,buf,len) != len) - { - fprintf(stderr,"%s: %s: %s\n",prgname,proFile,strerror(errno)); - exit(1); - } - close(proFd); - - step=buf[0]; - if (optInfo) - { - printf(_("Sampling_step: %i\n"),step); - exit(0); - } - - total=0; - - if (!(map=myopen(mapFile,"r",&popenMap))) - {fprintf(stderr,"%s: ",prgname);perror(mapFile);exit(1);} - - while(fgets(mapline,S_LEN,map)) - { - if (sscanf(mapline,"%lx %s %s",&fn_add,mode,fn_name)!=3) - { - fprintf(stderr,_("%s: %s(%i): wrong map line\n"), - prgname,mapFile, maplineno); - exit(1); - } - if (!strcmp(fn_name,"_stext")) /* only elf works like this */ - { - add0=fn_add; - break; - } - } - - if (!add0) - { - fprintf(stderr,_("%s: can't find \"_stext\" in %s\n"),prgname, mapFile); - exit(1); - } - - /* - * Main loop. - */ - while(fgets(mapline,S_LEN,map)) - { - unsigned int this=0; - - if (sscanf(mapline,"%lx %s %s",&next_add,mode,next_name)!=3) - { - fprintf(stderr,_("%s: %s(%i): wrong map line\n"), - prgname,mapFile, maplineno); - exit(1); - } - /* ignore any LEADING (before a '[tT]' symbol is found) Absolute symbols */ - if (*mode == 'A' && total == 0) continue; - if (*mode!='T' && *mode!='t') break; /* only text is profiled */ - - while (indx < (next_add-add0)/step) - this += buf[indx++]; - total += this; - - fn_len = next_add-fn_add; - if (fn_len && (this || optAll)) - { - if (optVerbose) - printf("%08lx %-40s %6i %8.4f\n", - fn_add,fn_name,this,this/(double)fn_len); - else - printf("%6i %-40s %8.4f\n", - this,fn_name,this/(double)fn_len); - } - fn_add=next_add; strcpy(fn_name,next_name); - } - /* trailer */ - if (optVerbose) - printf("%08x %-40s %6i %8.4f\n", - 0,"total",total,total/(double)(fn_add-add0)); - else - printf("%6i %-40s %8.4f\n", - total,_("total"),total/(double)(fn_add-add0)); + setlocale(LC_ALL, ""); + bindtextdomain(PACKAGE, LOCALEDIR); + textdomain(PACKAGE); + + prgname=argv[0]; + proFile=defaultpro; + mapFile=defaultmap; + + while ((c=getopt(argc,argv,optstring))!=-1) { + switch(c) { + case 'm': mapFile=optarg; break; + case 'p': proFile=optarg; break; + case 'a': optAll++; break; + case 'i': optInfo++; break; + case 'M': mult=optarg; break; + case 'r': optReset++; break; + case 'v': optVerbose++; break; + case 'V': printf(_("%s Version %s\n"),prgname,RELEASE); + exit(0); + default: usage(); + } + } + + if (optReset || mult) { + int multiplier, fd, to_write; + + /* + * When writing the multiplier, if the length of the write is + * not sizeof(int), the multiplier is not changed + */ + if (mult) { + multiplier = strtoul(mult, 0, 10); + to_write = sizeof(int); + } else { + multiplier = 0; + to_write = 1; /* sth different from sizeof(int) */ + } + /* try to become root, just in case */ + setuid(0); + fd = open(defaultpro,O_WRONLY); + if (fd < 0) { + perror(defaultpro); + exit(1); + } + if (write(fd, &multiplier, to_write) != to_write) { + fprintf(stderr, "readprofile: error writing %s: %s\n", + defaultpro, strerror(errno)); + exit(1); + } + close(fd); + exit(0); + } + + /* + * Use an fd for the profiling buffer, to skip stdio overhead + */ + if ( ((proFd=open(proFile,O_RDONLY)) < 0) + || ((int)(len=lseek(proFd,0,SEEK_END)) < 0) + || (lseek(proFd,0,SEEK_SET)<0) ) { + fprintf(stderr,"%s: %s: %s\n",prgname,proFile,strerror(errno)); + exit(1); + } + + if ( !(buf=malloc(len)) ) { + fprintf(stderr,"%s: malloc(): %s\n",prgname, strerror(errno)); + exit(1); + } + + if (read(proFd,buf,len) != len) { + fprintf(stderr,"%s: %s: %s\n",prgname,proFile,strerror(errno)); + exit(1); + } + close(proFd); + + step=buf[0]; + if (optInfo) { + printf(_("Sampling_step: %i\n"),step); + exit(0); + } + + total=0; + + if (!(map=myopen(mapFile,"r",&popenMap))) { + fprintf(stderr,"%s: ",prgname);perror(mapFile); + exit(1); + } + + while(fgets(mapline,S_LEN,map)) { + if (sscanf(mapline,"%lx %s %s",&fn_add,mode,fn_name)!=3) { + fprintf(stderr,_("%s: %s(%i): wrong map line\n"), + prgname,mapFile, maplineno); + exit(1); + } + if (!strcmp(fn_name,"_stext")) /* only elf works like this */ { + add0=fn_add; + break; + } + } + + if (!add0) { + fprintf(stderr,_("%s: can't find \"_stext\" in %s\n"), + prgname, mapFile); + exit(1); + } + + /* + * Main loop. + */ + while(fgets(mapline,S_LEN,map)) { + unsigned int this=0; + + if (sscanf(mapline,"%lx %s %s",&next_add,mode,next_name)!=3) { + fprintf(stderr,_("%s: %s(%i): wrong map line\n"), + prgname,mapFile, maplineno); + exit(1); + } + + /* ignore any LEADING (before a '[tT]' symbol is found) + Absolute symbols */ + if (*mode == 'A' && total == 0) continue; + if (*mode!='T' && *mode!='t') break;/* only text is profiled */ + + while (indx < (next_add-add0)/step) + this += buf[indx++]; + total += this; + + fn_len = next_add-fn_add; + if (fn_len && (this || optAll)) { + if (optVerbose) + printf("%08lx %-40s %6i %8.4f\n", fn_add, + fn_name,this,this/(double)fn_len); + else + printf("%6i %-40s %8.4f\n", + this,fn_name,this/(double)fn_len); + } + fn_add=next_add; strcpy(fn_name,next_name); + } + /* trailer */ + if (optVerbose) + printf("%08x %-40s %6i %8.4f\n", + 0,"total",total,total/(double)(fn_add-add0)); + else + printf("%6i %-40s %8.4f\n", + total,_("total"),total/(double)(fn_add-add0)); - popenMap ? pclose(map) : fclose(map); - exit(0); + popenMap ? pclose(map) : fclose(map); + exit(0); } - - - diff --git a/sys-utils/renice.c b/sys-utils/renice.c index cd1fa87a..f04f69f1 100644 --- a/sys-utils/renice.c +++ b/sys-utils/renice.c @@ -31,7 +31,7 @@ * SUCH DAMAGE. */ - /* 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + /* 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support */ diff --git a/sys-utils/setsid.c b/sys-utils/setsid.c index 7aeb2de8..baf3b0aa 100644 --- a/sys-utils/setsid.c +++ b/sys-utils/setsid.c @@ -3,9 +3,12 @@ * Rick Sladkey <jrs@world.std.com> * In the public domain. * - * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support * + * 2001-01-18 John Fremlin <vii@penguinpowered.com> + * - fork in case we are process group leader + * */ #include <stdio.h> @@ -13,8 +16,8 @@ #include <stdlib.h> #include "nls.h" -int main(int argc, char *argv[]) -{ +int +main(int argc, char *argv[]) { setlocale(LC_ALL, ""); bindtextdomain(PACKAGE, LOCALEDIR); textdomain(PACKAGE); @@ -24,8 +27,19 @@ int main(int argc, char *argv[]) argv[0]); exit(1); } + if (getpgrp() == getpid()) { + switch(fork()){ + case -1: + perror("fork"); + exit(1); + case 0: /* child */ + break; + default: /* parent */ + exit(0); + } + } if (setsid() < 0) { - perror("setsid"); + perror("setsid"); /* cannot happen */ exit(1); } execvp(argv[1], argv + 1); diff --git a/sys-utils/tunelp.c b/sys-utils/tunelp.c index 4453de74..9249283d 100644 --- a/sys-utils/tunelp.c +++ b/sys-utils/tunelp.c @@ -42,7 +42,7 @@ * Revision 1.2 1995/01/03 07:33:44 johnsonm * revisions for lp driver updates in Linux 1.1.76 * - * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support * * 1999-05-07 Merged LPTRUSTIRQ patch by Andrea Arcangeli (1998/11/29), aeb diff --git a/text-utils/Makefile b/text-utils/Makefile index 2cead324..5018f6a6 100644 --- a/text-utils/Makefile +++ b/text-utils/Makefile @@ -6,22 +6,23 @@ include ../make_include include ../MCONFIG -# Where to put man pages? - -MAN1= col.1 colcrt.1 colrm.1 column.1 hexdump.1 more.1 rev.1 - -# Where to put binaries? -# See the "install" rule for the links. . . - -BIN= more +MAN1= col.1 colcrt.1 colrm.1 column.1 hexdump.1 rev.1 USRBIN= col colcrt colrm column hexdump rev -MAYBE= ul +BIN= + +MAYBE= more ul ifeq "$(HAVE_NCURSES)" "yes" +BIN:=$(BIN) more USRBIN:=$(USRBIN) ul -MAN1:=$(MAN1) ul.1 +MAN1:=$(MAN1) ul.1 more.1 +else +ifeq "$(HAVE_TERMCAP)" "yes" +BIN:=$(BIN) more +MAN1:=$(MAN1) more.1 +endif endif # Where to put datebase files? @@ -38,7 +39,7 @@ ifeq "$(HAVE_NCURSES)" "yes" # Have ncurses - make more and ul more ul: $(CC) $(CFLAGS) $(LDFLAGS) $^ -o $@ $(LIBCURSES) -more: more.o +more: more.o $(LIB)/xstrncpy.o ul: ul.o else # Do not have ncurses - give up on ul @@ -71,9 +72,13 @@ column: column.o $(ERR_O) more.o: more.c $(LIB)/pathnames.h rev: rev.o +colcrt.o colrm.o column.o rev.o ul.o: $(LIB)/widechar.h + install install.shadow install.text-utils: all $(INSTALLDIR) $(BINDIR) $(USRBINDIR) $(MOREHELPDIR) $(MAN1DIR) +ifneq "$(BIN)" "" $(INSTALLBIN) $(BIN) $(BINDIR) +endif $(INSTALLBIN) $(USRBIN) $(USRBINDIR) $(INSTALLDAT) $(MOREHELP) $(MOREHELPDIR) $(INSTALLMAN) $(MAN1) $(MAN1DIR) diff --git a/kbd/README.clear b/text-utils/README.clear index 7684132d..7684132d 100644 --- a/kbd/README.clear +++ b/text-utils/README.clear diff --git a/kbd/README.reset b/text-utils/README.reset index 8060d265..8060d265 100644 --- a/kbd/README.reset +++ b/text-utils/README.reset diff --git a/kbd/clear b/text-utils/clear index 73d1ebe1..73d1ebe1 100755 --- a/kbd/clear +++ b/text-utils/clear diff --git a/kbd/clear.1 b/text-utils/clear.1 index 9d208230..9d208230 100644 --- a/kbd/clear.1 +++ b/text-utils/clear.1 diff --git a/text-utils/col.c b/text-utils/col.c index 2e1552a7..0a875af3 100644 --- a/text-utils/col.c +++ b/text-utils/col.c @@ -37,7 +37,7 @@ * patches from Andries.Brouwer@cwi.nl * Wed Sep 14 22:31:17 1994: patches from Carl Christofferson * (cchris@connected.com) - * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * added Native Language Support * 1999-09-19 Bruno Haible <haible@clisp.cons.org> * modified to work correctly in multi-byte locales diff --git a/text-utils/colcrt.c b/text-utils/colcrt.c index efb176f3..891fd86d 100644 --- a/text-utils/colcrt.c +++ b/text-utils/colcrt.c @@ -32,7 +32,7 @@ */ /* - * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * added Native Language Support * 1999-09-19 Bruno Haible <haible@clisp.cons.org> * modified to work correctly in multi-byte locales diff --git a/text-utils/colrm.c b/text-utils/colrm.c index 1b90fe4a..9ef8af67 100644 --- a/text-utils/colrm.c +++ b/text-utils/colrm.c @@ -32,7 +32,7 @@ */ /* - * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * added Native Language Support * 1999-09-19 Bruno Haible <haible@clisp.cons.org> * modified to work correctly in multi-byte locales diff --git a/text-utils/column.c b/text-utils/column.c index 79ebb115..3a54fe05 100644 --- a/text-utils/column.c +++ b/text-utils/column.c @@ -32,7 +32,7 @@ */ /* - * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * added Native Language Support * 1999-09-19 Bruno Haible <haible@clisp.cons.org> * modified to work correctly in multi-byte locales diff --git a/text-utils/hexdump.c b/text-utils/hexdump.c index c18c6150..82eb4d51 100644 --- a/text-utils/hexdump.c +++ b/text-utils/hexdump.c @@ -31,7 +31,7 @@ * SUCH DAMAGE. */ - /* 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + /* 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support */ diff --git a/text-utils/hexsyntax.c b/text-utils/hexsyntax.c index e376b066..154289da 100644 --- a/text-utils/hexsyntax.c +++ b/text-utils/hexsyntax.c @@ -31,7 +31,7 @@ * SUCH DAMAGE. */ - /* 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + /* 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support */ diff --git a/text-utils/more.1 b/text-utils/more.1 index 0853dcd9..0a5fa47a 100644 --- a/text-utils/more.1 +++ b/text-utils/more.1 @@ -36,7 +36,8 @@ .\" 25Dec92: Extensive changes made by Rik Faith (faith@cs.unc.edu) to .\" conform with the more 5.19 currently in use by the Linux community. .\" -.Dd July 29, 1991 (Modified December 25, 1992) +.\" .Dd July 29, 1991 (Modified December 25, 1992) +.Dd December 25, 1992 .Dt MORE 1 .Os "Linux 0.98" .Sh NAME diff --git a/text-utils/more.c b/text-utils/more.c index 79dc626d..ac62d070 100644 --- a/text-utils/more.c +++ b/text-utils/more.c @@ -26,7 +26,7 @@ ** on linux/axp. ** modified by Kars de Jong <jongk@cs.utwente.nl> to use terminfo instead ** of termcap. - 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> - added Native Language Support 1999-03-19 Arnaldo Carvalho de Melo <acme@conectiva.com.br> - more nls translatable strings @@ -55,6 +55,7 @@ #include <sys/wait.h> #include <a.out.h> #include <locale.h> +#include "xstrncpy.h" #include "nls.h" #define _REGEX_RE_COMP @@ -1786,14 +1787,12 @@ retry: if ((padstr = my_tgetstr("pc","pad")) != NULL) PC = *padstr; Home = my_tgetstr("ho","home"); - if (Home == 0 || *Home == '\0') - { + if (Home == 0 || *Home == '\0') { if ((cursorm = my_tgetstr("cm","cup")) != NULL) { const char *t = (const char *)my_tgoto(cursorm, 0, 0); - strncpy(cursorhome, t, sizeof(cursorhome)); - cursorhome[sizeof(cursorhome)-1] = 0; + xstrncpy(cursorhome, t, sizeof(cursorhome)); Home = cursorhome; - } + } } EodClr = my_tgetstr("cd","ed"); if ((chBS = my_tgetstr("le","cub1")) == NULL) diff --git a/text-utils/odsyntax.c b/text-utils/odsyntax.c index 74d724e1..13f7dfa7 100644 --- a/text-utils/odsyntax.c +++ b/text-utils/odsyntax.c @@ -31,7 +31,7 @@ * SUCH DAMAGE. */ - /* 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + /* 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support */ diff --git a/text-utils/parse.c b/text-utils/parse.c index f96a68e8..ce57c071 100644 --- a/text-utils/parse.c +++ b/text-utils/parse.c @@ -31,7 +31,7 @@ * SUCH DAMAGE. */ - /* 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + /* 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * - added Native Language Support */ diff --git a/kbd/reset b/text-utils/reset index fb9834db..fb9834db 100755 --- a/kbd/reset +++ b/text-utils/reset diff --git a/text-utils/rev.c b/text-utils/rev.c index a5697b46..29b8ee52 100644 --- a/text-utils/rev.c +++ b/text-utils/rev.c @@ -37,7 +37,7 @@ * last line that has no newline correctly. * 3-Jun-1998: Patched by Nicolai Langfeldt to work better on Linux: * Handle any-length-lines. Code copied from util-linux' setpwnam.c - * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * added Native Language Support * 1999-09-19 Bruno Haible <haible@clisp.cons.org> * modified to work correctly in multi-byte locales diff --git a/text-utils/ul.c b/text-utils/ul.c index 570c4f47..fb0a697d 100644 --- a/text-utils/ul.c +++ b/text-utils/ul.c @@ -34,7 +34,7 @@ /* * modified by Kars de Jong <jongk@cs.utwente.nl> * to use terminfo instead of termcap. - * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org> + * 1999-02-22 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> * added Native Language Support * 1999-09-19 Bruno Haible <haible@clisp.cons.org> * modified to work correctly in multi-byte locales |