[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [RFR] man://manpages-de/utmp.5



Hallo Martin,

Martin Eberhard Schauer:

Dieser Brocken ist etwas dicker

... mit Leerzeichen angereichert.


#. type: Plain text
msgid "utmp, wtmp - login records"
msgstr "utmp, wtmp - Login-Datensätze"

Anmeldedatensätze?


#. type: Plain text
msgid ""
"The I<utmp> file allows one to discover information about who is currently "
"using the system.  There may be more users currently using the system, "
"because not all programs use utmp logging."
msgstr ""
"Die Datei I<utmp> gibt Auskunft darüber, wer das System im Moment benutzt. "
"Da nicht alle Programme I<utmp> benutzen, kann es jedoch noch mehr "
"Systembenutzer  geben."

Leerzeichen hinter Systembenutzer zuviel


#. type: Plain text
msgid ""
"B<Warning:> I<utmp> must not be writable by the user class \"other\", "
"because many system programs (foolishly)  depend on its integrity.  You "
"risk faked system logfiles and modifications of system files if you leave "
"I<utmp> writable to any user other than the owner and group owner of the "
"file."
msgstr ""
"B<Warnung>: I<utmp> darf nicht von der Benutzerklasse »other« schreibbar "
"sein, weil viele Systemprogramme (törichterweise) von der Integrität dieser "
"Datei abhängig sind. Falls Sie I<utmp> für irgendwelche anderen Benutzer "
"als Besitzer und Gruppe schreibbar lassen, riskieren Sie falsche Einträge "
"in System-Protokolldateien und Modifikationen von Systemdateien."

Leerzeichen vor schreibbar zuviel
s/System-Protokolldateien/Systemprotokolldateien/
s/Modifikationen/Änderungen/


# FIXME: bold in source code
#. type: Plain text
#, no-wrap
msgid ""
"#define EMPTY         0 /* Record does not contain valid info\n"
"                           (formerly known as UT_UNKNOWN on Linux) */\n"
"#define RUN_LVL       1 /* Change in system run-level (see\n"
"                           B<init>(8)) */\n"
"#define BOOT_TIME     2 /* Time of system boot (in I<ut_tv>) */\n"
"#define NEW_TIME      3 /* Time after system clock change\n"
"                           (in I<ut_tv>) */\n"
"#define OLD_TIME      4 /* Time before system clock change\n"
"                           (in I<ut_tv>) */\n"
"#define INIT_PROCESS  5 /* Process spawned by B<init>(8) */\n"
"#define LOGIN_PROCESS 6 /* Session leader process for user login */\n"
"#define USER_PROCESS  7 /* Normal process */\n"
"#define DEAD_PROCESS  8 /* Terminated process */\n"
"#define ACCOUNTING    9 /* Not implemented */\n"
msgstr ""
"#define EMPTY         0 /* Datensatz enthält keine gültigen Infor-\n"
"                           mationen (früher unter Linux als\n"

Warum trennst Du Informationen? Du hast 80 Zeichen zur Verfügung. Auch im Folgenden bitte prüfen.

"                           UT_UNKNOWN bekannt) */\n"
"#define RUN_LVL       1 /* Wechsel des System-Runlevels (siehe\n"
"                           B<init>(8)) */\n"
"#define BOOT_TIME     2 /* Zeitpunkt des Systemstarts (in I<ut_tv>) */\n"
"#define NEW_TIME      3 /* Zeitdauer nach Änderung der Systemuhr\n"

s/Zeitdauer/Zeit/ (auch folgende)

"                           (in I<ut_tv>) */\n"
"#define OLD_TIME      4 /* Zeitdauer vor Änderung der Systemuhr\n"
"                           (in I<ut_tv>) */\n"
"#define INIT_PROCESS  5 /* Prozess von B<init>(8) erzeugt */\n"
"#define LOGIN_PROCESS 6 /* Prozessgruppen-Führer für\n"
"\"                          Benutzer-Anmeldung */\n"
"#define USER_PROCESS  7 /* normaler Prozess */\n"
"#define DEAD_PROCESS  8 /* beendeter Prozess */\n"
"#define ACCOUNTING    9 /* nicht implementiert */\n"


#. type: Plain text
#, no-wrap
msgid ""
"struct exit_status {              /* Type for ut_exit, below */\n"
"    short int e_termination;      /* Process termination status */\n"
"    short int e_exit;             /* Process exit status */\n"
"};\n"
msgstr ""
"struct exit_status {           /* nachfolgden der Typ für ut_exit */\n"
"   short int e_termination;    /* Abschluss-Status des Prozesses */\n"
"   short int e_exit;           /* Rückgabestatus des Prozesses */\n"
"};\n"

s/nachfolgden/nachfolgend/
s/Rückgabestatus/Exit-Status/ (Wortliste)


"struct utmp {\n"
"   short   ut_type;              /* Typ des Datensatzes */\n"
"   pid_t   ut_pid;               /* Prozess-ID des\n"
"                                    Login-Prozesses */\n"

Anmeldeprozesses

"   char    ut_line[UT_LINESIZE]; /* Gerätename des Terminals\n"
"                                    - \"/dev/\" */\n"
"   char    ut_id[4];             /* Suffix des Terminalnamens,\n"
"                                    oder inittab(5)-ID */\n"
"   char    ut_user[UT_NAMESIZE]; /* Benutzername */\n"
"   char    ut_host[UT_HOSTSIZE]; /* Rechnername für entferntes\n"
"                                    Login oder Kernel-Version für\n"
"                                    Runlevel-Nachrichten */\n"

s/entferntes Login/Anmeldung auf fernem System/


#. type: Plain text
#, no-wrap
msgid ""
"    int32_t ut_addr_v6[4];        /* Internet address of remote\n"
"                                     host; IPv4 address uses\n"
"                                     just ut_addr_v6[0] */\n"
"    char __unused[20];            /* Reserved for future use */\n"
"};\n"
msgstr ""
"   int32_t ut_addr_v6[4];     /* Internet-Adresse des entfernten\n"
"                                 Rechners, IPv4-Adressen nutzen\n"
"                                 nur ut_addr_v6[0] */\n"
"   char __unused[20];         /* für zukünftige Nutzung reserviert */\n"
"};\n"

des fernen Rechners - entfernt könnte missverstanden werden.


#. type: Plain text
#, no-wrap
msgid ""
"/* Backward compatibility hacks */\n"
"#define ut_name ut_user\n"
"#ifndef _NO_UT_TIME\n"
"#define ut_time ut_tv.tv_sec\n"
"#endif\n"
"#define ut_xtime ut_tv.tv_sec\n"
"#define ut_addr ut_addr_v6[0]\n"
msgstr ""
"/* Vorkehrungen für Rückwärtskompatibilität */\n"
"\n"

Woher kommt dieser Umbruch?

"#define ut_name ut_user\n"
"#ifndef _NO_UT_TIME\n"
"#define ut_time ut_tv.tv_sec\n"
"#endif\n"
"#define ut_xtime ut_tv.tv_sec\n"
"#define ut_addr ut_addr_v6[0]\n"


#. type: Plain text
msgid ""
"This structure gives the name of the special file associated with the "
"user's terminal, the user's login name, and the time of login in the form "
"of B<time>(2).  String fields are terminated by a null byte (\\(aq"
"\\e0\\(aq)  if they are shorter than the size of the field."
msgstr ""
"Diese Struktur enthält den Namen der Gerätedatei für das Terminal des "
"Benutzers, seinen Namen bei der Anmeldung und deren Zeitpunkt im Format von "
"B<time>(2). Zeichenketten werden mit einem Null-Byte  (\\(aq\\e0\\(aq) "
"terminiert, wenn sie kürzer als das Feld sind."

s/terminiert/beendet/


# Umformulieren (ist länglich).
#. type: Plain text
msgid ""
"The first entries ever created result from B<init>(8) processing B<inittab>"
"(5).  Before an entry is processed, though, B<init>(8)  cleans up utmp by "
"setting I<ut_type> to B<DEAD_PROCESS>, clearing I<ut_user>, I<ut_host>, and "
"I<ut_time> with null bytes for each record which I<ut_type> is not "
"B<DEAD_PROCESS> or B<RUN_LVL> and where no process with PID I<ut_pid> "
"exists.  If no empty record with the needed I<ut_id> can be found, B<init>"
"(8)  creates a new one.  It sets I<ut_id> from the inittab, I<ut_pid> and "
"I<ut_time> to the current values, and I<ut_type> to B<INIT_PROCESS>."
msgstr ""
"Die ersten Einträge erstellt B<init>(8) bei der Verarbeitung von B<inittab>" "(5). Bevor ein solcher Eintrag verarbeitet wird, räumt B<init>(8) I<utmp> " "auf, indem bei jedem Eintrag, dessen B<ut_type> nicht B<DEAD_PROCESS> oder "
"B<RUN_LVL> ist und für den kein Prozess mit der PID B<ut_pid> existiert, "
"B<ut_type> auf B<DEAD_PROCESS> gesetzt wird und B<ut_user>, B<ut_host> und " "B<ut_time> mit Null-Bytes gefüllt werden. Falls kein leerer Datensatz mit "
"der benötigten B<ut_id> gefunden wird, erstellt B<init>(8) einen neuen. "
"Dabei wird B<ut_id> von der inittab übernommen, B<ut_pid> und B<ut_time> "
"werden auf die aktuellen Werte und B<ut_type> auf B<INIT_PROCESS> gesetzt."

Leerzeichen vor Bevor,   I<utmp> und Falls zuviel
Inittab groß


#. type: Plain text
msgid ""
"B<mingetty>(8)  (or B<agetty>(8))  locates the entry by the PID, changes "
"I<ut_type> to B<LOGIN_PROCESS>, changes I<ut_time>, sets I<ut_line>, and "
"waits for connection to be established. B<login>(1), after a user has been "
"authenticated, changes I<ut_type> to B<USER_PROCESS>, changes I<ut_time>, "
"and sets I<ut_host> and I<ut_addr>.  Depending on B<mingetty>(8)  (or "
"B<agetty>(8))  and B<login>(1), records may be located by I<ut_line> "
"instead of the preferable I<ut_pid>."
msgstr ""
"B<mingetty>(8)  (oder B<agetty>(8))  findet den Eintrag mittels der PID, "
"ändert I<ut_type> zu B<LOGIN_PROCESS>, ändert I<ut_time>, setzt I<ut_line> " "und wartet darauf, dass eine Verbindung hergestellt wird. Nachdem B<login>"
"(1)  einen Benutzer authentifizieren konnte, ändert es I<ut_type> zu "
"B<USER_PROCESS>, ändert I<ut_time> und setzt I<ut_host> sowie B<ut_addr>. "
"Abhängig von B<mingetty>(8)  (oder B<agetty>(8)) und B<login>(1) könnten "
"Datensätze auch mittels B<ut_line> anstatt der vorzuziehenden B<ut_pid> "
"gefunden werden."

Leerzeichen vor (oder, findet, Nachdem, einen und  (oder zuviel


#. type: Plain text
msgid ""
"When B<init>(8) finds that a process has exited, it locates its utmp entry "
"by I<ut_pid>, sets I<ut_type> to B<DEAD_PROCESS>, and clears I<ut_user>, "
"I<ut_host> and I<ut_time> with null bytes."
msgstr ""
"Wenn B<init>(8)  feststellt, dass ein Prozess beendet wurde, bestimmt es "
"den entsprechenden Eintrag in utmp mittels I<ut_pid>, setzt I<ut_type> auf " "B<DEAD_PROCESS> und füllt I<ut_user>, I<ut_host> sowie I<ut_time> mit Null-"
"Bytes."

Leerzeichen vor feststellt zuviel


#. type: Plain text
msgid ""
"B<xterm>(1) and other terminal emulators directly create a B<USER_PROCESS> "
"record and generate the I<ut_id> by using the string that suffix part of "
"the terminal name (the characters following I</dev/[pt]ty>). If they find " "a B<DEAD_PROCESS> for this ID, they recycle it, otherwise they create a new " "entry. If they can, they will mark it as B<DEAD_PROCESS> on exiting and it "
"is advised that they null I<ut_line>, I<ut_time>, I<ut_user>, and "
"I<ut_host> as well."
msgstr ""
"B<xterm>(1)  und andere Terminal-Emulatoren erstellen direkt einen "
"B<USER_PROCESS>-Datensatz und erzeugen die I<ut_id> durch den Suffix des "
"Terminalnamens (die Zeichen, die auf I</dev/[pt]ty> folgen). Falls sie "
"einen B<DEAD_PROCESS>-Datensatz für diese ID finden, wird er wieder "
"benutzt, ansonsten wird ein neuer Eintrag erstellt.  Falls möglich, "
"markieren sie vor Beendigung den Eintrag als B<DEAD_PROCESS> und es wird "
"geraten, dass sie I<ut_line>, I<ut_time>, I<ut_user> und I<ut_host> "
"ebenfalls mit Nullen füllen."

Leerzeichen vor und und  Falls zuviel
sie groß


#. type: Plain text
msgid ""
"B<telnetd>(8)  sets up a B<LOGIN_PROCESS> entry and leaves the rest to "
"B<login>(1)  as usual.  After the telnet session ends, B<telnetd>(8)  "
"cleans up utmp in the described way."
msgstr ""
"B<telnetd>(8)  erzeugt einen B<LOGIN_PROCESS>-Datensatz und lässt B<login>"
"(1)  den Rest erledigen.  Nachdem die telnet-Sitzung beendet ist, räumt "
"B<telnetd>(8) I<utmp> in der oben beschriebenen Art und Weise auf."

Leerzeichen vor erzeugt, den und  Nachdem zuviel
Telnet-Sitzung groß


#. type: Plain text
msgid ""
"The I<wtmp> file records all logins and logouts.  Its format is exactly "
"like I<utmp> except that a null username indicates a logout on the "
"associated terminal.  Furthermore, the terminal name B<~> with username "
"B<shutdown> or B<reboot> indicates a system shutdown or reboot and the pair "
"of terminal names B<|>/B<}> logs the old/new system time when B<date>(1)  "
"changes it.  I<wtmp> is maintained by B<login>(1), B<init>(8), and some "
"versions of B<getty>(8) (e.g., B<mingetty>(8) or B<agetty>(8)). None of "
"these programs creates the file, so if it is removed, record-keeping is "
"turned off."
msgstr ""
"Die Datei I<wtmp> zeichnet alle An- und Abmeldungen im System auf.  Das "
"Format gleicht B<utmp>, mit der Ausnahme, dass ein leerer Benutzername eine "
"Abmeldung vom zugehörigen Terminal anzeigt.  Weiterhin bedeutet der "
"Terminalname B<~> mit den Benutzernamen B<shutdown> oder B<reboot> ein "
"Herunterfahren bzw.  den Neustart des Systems. Außerdem protokolliert das "
"Paar von Terminalnamen B<|>/B<}>  die alte/neue Systemzeit, wenn diese "
"durch B<date>(1)  geändert wird.  I<wtmp> wird durch B<login>(1), B<init>"
"(8) und B<getty>(1) (z.B. B<mingetty>(8) oder B<agetty>(8)) verwaltet. "
"Keines dieser Programme erstellt die Datei. Somit wird durch Löschen der "
"Datei die Datenhaltung deaktiviert."

Leerzeichen vor Das, Weiterhin, den, die, I<wtmp, und, (z.B,oder und Somit zuviel
Datenhaltung? Vielleicht Aufheben/Aufbewahren der Datensätze


#. type: Plain text
msgid ""
"POSIX.1 does not specify a I<utmp> structure, but rather one named "
"I<utmpx>, with specifications for the fields I<ut_type>, I<ut_pid>, "
"I<ut_line>, I<ut_id>, I<ut_user>, and I<ut_tv>.  POSIX.1 does not specify "
"the lengths of the I<ut_line> and I<ut_user> fields."
msgstr ""
"POSIX.1 definiert keine I<utmp>-Struktur, sondern eine namens I<utmpx> mit " "den Spezifikationen der Felder I<ut_type>, I<ut_pid>, I<ut_line>, I<ut_id>, "
"I<ut_user> und I<ut_tv>. Die Länge der Felder  I<ut_line> and I<ut_user> "
"wird von POSIX.1 nicht spezifiziert."

Leerzeichen vor ut_line zuviel


#. type: Plain text
msgid ""
"v7/BSD has fewer fields; most importantly it lacks I<ut_type>, which causes "
"native v7/BSD-like programs to display (for example) dead or login "
"entries. Further, there is no configuration file which allocates slots to "
"sessions.  BSD does so because it lacks I<ut_id> fields."
msgstr ""
"v7/BSD hat weniger Felder, vor allem fehlt I<ut_type>, was native v7/BSD-"
"Programme veranlasst, tote und login-Einträge anzuzeigen.  Weiterhin gibt "
"es keine Konfigurationsdatei, die jeder Sitzung eine Eintragsnummer "
"zuordnet. Das ist bei BSD der Fall,weil dort das Feld I<ut_id> fehlt. "

Leerzeichen vor Weiterhin zuviel
s/login-Einträge/Anmeldeeinträge/


#. type: Plain text
msgid ""
"In Linux (as in System V), the I<ut_id> field of a record will never change "
"once it has been set, which reserves that slot without needing a "
"configuration file.  Clearing I<ut_id> may result in race conditions "
"leading to corrupted utmp entries and potential security holes.  Clearing "
"the abovementioned fields by filling them with null bytes is not required "
"by System V semantics, but makes it possible to run many programs which "
"assume BSD semantics and which do not modify utmp.  Linux uses the BSD "
"conventions for line contents, as documented above."
msgstr ""
"In Linux (wie auch in System V) wird das I<ut_id>-Feld nicht mehr "
"geändert, nachdem ihm ein Wert zugewiesen wurde. Dadurch wird dieser Slot "
"reserviert, ohne dass eine Konfigurationsdatei erforderlich ist. Das "
"Löschen von I<ut_id> führt zu Wettlaufsituationen (race conditions) und "
"resultiert in beschädigten Einträgen in utmp und potenziellen "
"Sicherheitslücken.  Die Semantik von System Verfordert nicht, die oben "
"angegebenen Felder mit Null-Bytes zu löschen, aber ermöglicht die Nutzung "
"vieler Programme zu benutzen, die die BSD-Semantik verwenden und utmp nicht "
"verändern.  Wie oben beschrieben, wendet Linux die BSD-Konventionen für "
"Leitungsnamen an."

s/Wettlaufsituationen/Gleichzeitigkeitsbedingungen/
Leerzeichen vor Die und Wie zuviel
s/von System Verfordert/vom System erfordert/
s/ zu benutzen//


#. type: Plain text
msgid ""
"Unlike various other systems, where utmp logging can be disabled by "
"removing the file, utmp must always exist on Linux. If you want to disable "
"B<who>(1)  then do not make utmp world readable."
msgstr ""
"Im Gegensatz zu anderen Systemen, in denen die Protokollierung in utmp "
"durch Löschen der Datei abgeschaltet werden kann, muss utmp bei Linux immer "
"vorhanden sein. When Sie B<who>(1)  deaktivieren wollen, darf utmp nicht "
"für alle anderen Systembenutzer (world) lesbar sein."

s/When/Wenn/
Leerzeichen vor deaktivieren zuviel


#. type: Plain text
msgid ""
"The file format is machine-dependent, so it is recommended that it be "
"processed only on the machine architecture where it was created."
msgstr ""
"Das Dateiformat ist maschinenabhängig.  Es wird daher empfohlen, dass es "
"nur auf der Architektur verarbeitet wird, auf der es erstellt wurde."

Leerzeichen vor Es zuviel


#. type: Plain text
msgid ""
"Note that on I<biarch> platforms, that is, systems which can run both 32-"
"bit and 64-bit applications (x86-64, ppc64, s390x, etc.), I<ut_tv> is the "
"same size in 32-bit mode as in 64-bit mode.  The same goes for "
"I<ut_session> and I<ut_time> if they are present.  This allows data files "
"and shared memory to be shared between 32-bit and 64-bit applications.  "
"This is achieved by changing the type of I<ut_session> to I<int32_t>, and "
"that of I<ut_tv> to a struct with two I<int32_t> fields I<tv_sec> and "
"I<tv_usec>. Since I<ut_tv> may not be the same as I<struct timeval>, then "
"instead of the call:"
msgstr ""
"Beachten Sie, dass auf I<biarch>-Architekturen, also Systemen, die sowohl "
"32-Bit- und 64-Bit-Anwendungen ausführen können  (x86-64, ppc64, s390x "
"usw.), I<ut_tv> im 32-Bit-Modus und auch im 64-Bit-Modus die gleiche Größe " "hat. Das gleiche gilt für I<ut_session> und I<ut_time>, wenn Sie vorhanden "
"sind. Dies ermöglicht den gemeinsamen Zugriff von 32-Bit- und 64-Bit-"
"Anwendungen auf Datendateien und gemeinsamen Speicher. Das wird erreicht, "
"indem der Typ von I<ut_session> zu I<int32_t> geändert wird und der von "
"I<ut_tv> zu einer »struct« mit zwei I<int32_t>-Feldern ( I<tv_sec> und "
"I<tv_usec>). Da I<ut_tv> womöglich nicht das Gleiche ist wie ein I<struct "
"timeval>, wird anstelle des Aufrufs"

Leerzeichen vor (x86-64 und I<tv_sec> zuviel


#. type: Plain text
msgid ""
"Note that the I<utmp> struct from libc5 has changed in libc6.  Because of "
"this, binaries using the old libc5 struct will corrupt I</var/run/utmp> and/"
"or I</var/log/wtmp>."
msgstr ""
"Beachten Sie, dass das I<utmp>-struct aus Libc5 in Libc6 geändert wurde. "
"Daher werden Programme, die das alte Libc5-struct nutzen, I</var/run/utmp> "
"und/oder I</var/log/wtmp> korrumpieren."

Struct groß

Sonst habe ich keine überflüssigen Leerzeichen gesehen ;-)

Gruß,
Chris


Reply to: