summaryrefslogtreecommitdiffstats
path: root/po/es/man5/utmp.5.po
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-15 19:43:11 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-15 19:43:11 +0000
commitfc22b3d6507c6745911b9dfcc68f1e665ae13dbc (patch)
treece1e3bce06471410239a6f41282e328770aa404a /po/es/man5/utmp.5.po
parentInitial commit. (diff)
downloadmanpages-l10n-fc22b3d6507c6745911b9dfcc68f1e665ae13dbc.tar.xz
manpages-l10n-fc22b3d6507c6745911b9dfcc68f1e665ae13dbc.zip
Adding upstream version 4.22.0.upstream/4.22.0
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'po/es/man5/utmp.5.po')
-rw-r--r--po/es/man5/utmp.5.po924
1 files changed, 924 insertions, 0 deletions
diff --git a/po/es/man5/utmp.5.po b/po/es/man5/utmp.5.po
new file mode 100644
index 00000000..01139f80
--- /dev/null
+++ b/po/es/man5/utmp.5.po
@@ -0,0 +1,924 @@
+# Spanish translation of manpages
+# This file is distributed under the same license as the manpages-l10n package.
+# Copyright © of this file:
+# Juan Piernas <piernas@ditec.um.es>, 1999.
+# Miguel Pérez Ibars <mpi79470@alu.um.es>, 2005.
+# Marcos Fouces <marcos@debian.org>, 2020-2023.
+msgid ""
+msgstr ""
+"Project-Id-Version: manpages-l10n\n"
+"POT-Creation-Date: 2024-03-01 17:13+0100\n"
+"PO-Revision-Date: 2023-12-06 23:08+0100\n"
+"Last-Translator: Marcos Fouces <marcos@debian.org>\n"
+"Language-Team: Spanish <debian-l10n-spanish@lists.debian.org>\n"
+"Language: es\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#. type: TH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "utmp"
+msgstr "utmp"
+
+#. type: TH
+#: archlinux fedora-40 fedora-rawhide mageia-cauldron
+#, no-wrap
+msgid "2023-10-31"
+msgstr "31 Octubre 2023"
+
+#. type: TH
+#: archlinux fedora-40 fedora-rawhide mageia-cauldron
+#, no-wrap
+msgid "Linux man-pages 6.06"
+msgstr "Páginas de manual de Linux 6.06"
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "NAME"
+msgstr "NOMBRE"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "utmp, wtmp - login records"
+msgstr "utmp, wtmp - registro de sesiones"
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "SYNOPSIS"
+msgstr "SINOPSIS"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<#include E<lt>utmp.hE<gt>>\n"
+msgstr "B<#include E<lt>utmp.hE<gt>>\n"
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "DESCRIPTION"
+msgstr "DESCRIPCIÓN"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+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 ""
+"El archivo I<utmp> nos permite obtener información acerca de qué usuarios "
+"están usando el sistema actualmente. No todas las aplicaciones usan el "
+"registro de utmp por lo que puede haber usuarios que no figuren."
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+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<Atención:> I<utmp> no debe ser modificable ya que muchos programas del "
+"sistema dependen (tontamente) de su integridad. Corre el riesgo de tener "
+"registros del sistema (\"logs\" en inglés) incorrectos e incluso "
+"modificaciones indeseadas de archivos del sistema si deja que cualquiera "
+"pueda escribir en I<utmp>."
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The file is a sequence of I<utmp> structures, declared as follows in "
+"I<E<lt>utmp.hE<gt>> (note that this is only one of several definitions "
+"around; details depend on the version of libc):"
+msgstr ""
+"El archivo es una secuencia de estructuras de I<utmp>, declaradas a "
+"continuación en el archivo I<E<lt>utmp.hE<gt>> (esto es sólo una posible "
+"definición ya que los detalles dependen de la versión de libc):"
+
+#. type: Plain text
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
+#, no-wrap
+msgid ""
+"/* Values for ut_type field, below */\n"
+"\\&\n"
+"#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>(1)) */\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>(1) */\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"
+"\\&\n"
+"#define UT_LINESIZE 32\n"
+"#define UT_NAMESIZE 32\n"
+"#define UT_HOSTSIZE 256\n"
+"\\&\n"
+"struct exit_status { /* Type for ut_exit, below */\n"
+" short e_termination; /* Process termination status */\n"
+" short e_exit; /* Process exit status */\n"
+"};\n"
+"\\&\n"
+"struct utmp {\n"
+" short ut_type; /* Type of record */\n"
+" pid_t ut_pid; /* PID of login process */\n"
+" char ut_line[UT_LINESIZE]; /* Device name of tty - \"/dev/\" */\n"
+" char ut_id[4]; /* Terminal name suffix,\n"
+" or inittab(5) ID */\n"
+" char ut_user[UT_NAMESIZE]; /* Username */\n"
+" char ut_host[UT_HOSTSIZE]; /* Hostname for remote login, or\n"
+" kernel version for run-level\n"
+" messages */\n"
+" struct exit_status ut_exit; /* Exit status of a process\n"
+" marked as DEAD_PROCESS; not\n"
+" used by Linux init(1) */\n"
+" /* The ut_session and ut_tv fields must be the same size when\n"
+" compiled 32- and 64-bit. This allows data files and shared\n"
+" memory to be shared between 32- and 64-bit applications. */\n"
+"#if __WORDSIZE == 64 && defined __WORDSIZE_COMPAT32\n"
+" int32_t ut_session; /* Session ID (B<getsid>(2)),\n"
+" used for windowing */\n"
+" struct {\n"
+" int32_t tv_sec; /* Seconds */\n"
+" int32_t tv_usec; /* Microseconds */\n"
+" } ut_tv; /* Time entry was made */\n"
+"#else\n"
+" long ut_session; /* Session ID */\n"
+" struct timeval ut_tv; /* Time entry was made */\n"
+"#endif\n"
+"\\&\n"
+" 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"
+"\\&\n"
+"/* 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 ""
+"/* Values for ut_type field, below */\n"
+"\\&\n"
+"#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>(1)) */\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>(1) */\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"
+"\\&\n"
+"#define UT_LINESIZE 32\n"
+"#define UT_NAMESIZE 32\n"
+"#define UT_HOSTSIZE 256\n"
+"\\&\n"
+"struct exit_status { /* Type for ut_exit, below */\n"
+" short e_termination; /* Process termination status */\n"
+" short e_exit; /* Process exit status */\n"
+"};\n"
+"\\&\n"
+"struct utmp {\n"
+" short ut_type; /* Type of record */\n"
+" pid_t ut_pid; /* PID of login process */\n"
+" char ut_line[UT_LINESIZE]; /* Device name of tty - \"/dev/\" */\n"
+" char ut_id[4]; /* Terminal name suffix,\n"
+" or inittab(5) ID */\n"
+" char ut_user[UT_NAMESIZE]; /* Username */\n"
+" char ut_host[UT_HOSTSIZE]; /* Hostname for remote login, or\n"
+" kernel version for run-level\n"
+" messages */\n"
+" struct exit_status ut_exit; /* Exit status of a process\n"
+" marked as DEAD_PROCESS; not\n"
+" used by Linux init(1) */\n"
+" /* The ut_session and ut_tv fields must be the same size when\n"
+" compiled 32- and 64-bit. This allows data files and shared\n"
+" memory to be shared between 32- and 64-bit applications. */\n"
+"#if __WORDSIZE == 64 && defined __WORDSIZE_COMPAT32\n"
+" int32_t ut_session; /* Session ID (B<getsid>(2)),\n"
+" used for windowing */\n"
+" struct {\n"
+" int32_t tv_sec; /* Seconds */\n"
+" int32_t tv_usec; /* Microseconds */\n"
+" } ut_tv; /* Time entry was made */\n"
+"#else\n"
+" long ut_session; /* Session ID */\n"
+" struct timeval ut_tv; /* Time entry was made */\n"
+"#endif\n"
+"\\&\n"
+" 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"
+"\\&\n"
+"/* 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"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+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 ""
+"Esta estructura nos da el nombre del fichero especial asociado con el "
+"terminal del usuario, el nombre del usuario y el momento de inicio de sesión "
+"en el formato definido en B<time>(2). Los campos del tipo cadena terminan "
+"con bytes nulos ( (\\[aq]\\e0\\[aq]) si no completan la totalidad del campo."
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The first entries ever created result from B<init>(1) processing "
+"B<inittab>(5). Before an entry is processed, though, B<init>(1) 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>(1) 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 ""
+"Las primeras entradas que se crean siempre proceden del procesamiento de "
+"B<inittab>(5) por parte de B<init>(1). Sin embargo, antes de que se procese "
+"una entrada, B<init>(1) limpia utmp asignando a B<ut_type> el valor "
+"B<DEAD_PROCESS>, limpiando los campos B<ut_user>, B<ut_host> y B<ut_time> "
+"con caracteres nulos para cada registro cuyo campo B<ut_type> no sea "
+"B<DEAD_PROCESS> ni B<RUN_LVL> y donde no exista ningún proceso con PID "
+"B<ut_pid>. Si no se puede encontrar ningún registro vacío con el B<ut_id> "
+"que se necesita, B<init>(1) crea uno nuevo. Asigna un valor a B<ut_id> a "
+"partir del inittab, a B<ut_pid> y a B<ut_time> a partir de los valores "
+"actuales y asigna a B<ut_type> el valor B<INIT_PROCESS>."
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+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) (o B<agetty>(8)) busca la entrada por el PID, cambia el "
+"valor de I<ut_type> a B<LOGIN_PROCESS>, cambia I<ut_time>, asigna un valor a "
+"I<ut_line> y espera a que se establezca la conexión. Una vez que se produjo "
+"la autentifiación del usuario, B<login>(1), cambia el valor de I<ut_type> a "
+"B<USER_PROCESS>, cambia I<ut_time> y asigna un valor a I<ut_host> y a "
+"I<ut_addr>. Dependiendo de B<mingetty>(8) (o B<agetty>(8)) y B<login>(8), "
+"los registros se pueden buscar por I<ut_line> en lugar de por I<ut_pid>, "
+"como sería preferible."
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"When B<init>(1) 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 ""
+"Cuando B<init>(1) detecta que un proceso ha terminado, busca su entrada utmp "
+"mediante B<ut_pid>, asigna a B<ut_type> el valor B<DEAD_PROCESS> y limpia "
+"B<ut_user>, B<ut_host> y B<ut_time> con bytes nulos."
+
+#. type: Plain text
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-leap-15-6 opensuse-tumbleweed
+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]I<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) y otros emuladores de terminal crean directamente un registro "
+"B<USER_PROCESS> y generan B<ut_id> con los caracteres siguientes de la "
+"cadena I</dev/[pt]ty>. Si encuentran un B<DEAD_PROCESS> para este ID, lo "
+"reutilizan; en caso contrario, crean una nueva entrada. Si pueden, las "
+"marcarán como B<DEAD_PROCESS> al terminar y se aconseja que también rellenen "
+"con bytes nulos los campos I<ut_line>, I<ut_time>, I<ut_user> y I<ut_host>."
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+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) establece una entrada B<LOGIN_PROCESS> y deja el resto a "
+"B<login>(1), como es habitual. Después de que termine la sesión de telnet, "
+"B<telnetd>(8) limpia utmp de la forma descrita."
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+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<\\[ti]> 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>(1), 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 ""
+"El archivo B<wtmp> registra todos los inicios y finales de sesión. Su "
+"formato es como el de B<utmp> salvo que un nombre nulo de usuario indica el "
+"fin de sesión en la terminal asociada. Además, el nombre de terminal "
+"B<\\[ti]> con nombre de usuario B<shutdown> o B<reboot> indica un cierre "
+"(shutdown) o reinicio del sistema y el par de nombres de terminal B<|>/B<}> "
+"registra la fecha antigua/nueva del sistema cuando la cambia B<date>(1). "
+"B<wtmp> se gestiona a través de B<login>(1), B<init>(1) y algunas versiones "
+"de B<getty>(8) (por ejemplo: B<mingetty>(8) o B<agetty>(8)) Ninguno de estos "
+"programas crea el archivo, por lo que si se borra se desactiva el "
+"mantenimiento de los registros."
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "FILES"
+msgstr "ARCHIVOS"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "I</var/run/utmp>"
+msgstr "I</var/run/utmp>"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "I</var/log/wtmp>"
+msgstr "I</var/log/wtmp>"
+
+#. type: SH
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "VERSIONS"
+msgstr "VERSIONES"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"POSIX.1 does not specify a I<utmp> structure, but rather one named I<utmpx> "
+"(as part of the XSI extension), 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 no define la estructura de I<utmp>, en cambio la define para "
+"I<utmpx> (como parte de la extensión XSI) detallando especificaciones para "
+"los campos I<ut_type>, I<ut_pid>, I<ut_line>, I<ut_id>, I<ut_user> y "
+"I<ut_tv>. Tampoco define la longitud de los campos I<ut_line> y I<ut_user>."
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Linux defines the I<utmpx> structure to be the same as the I<utmp> structure."
+msgstr ""
+"Linux define que la estructura de I<utmpx> debe ser idéntica a la de "
+"I<utmp>."
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "STANDARDS"
+msgstr "ESTÁNDARES"
+
+#. type: Plain text
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-leap-15-6 opensuse-tumbleweed
+msgid "Linux."
+msgstr "Linux."
+
+#. type: SH
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "HISTORY"
+msgstr "HISTORIAL"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Linux utmp entries conform neither to v7/BSD nor to System V; they are a mix "
+"of the two."
+msgstr ""
+"Las entradas de utmp no son conformes nia v7/BSD ni a System V sino que son "
+"una mezcla de ambos."
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+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 tiene un menor número de campo; principalmente no tiene I<ut_type> lo "
+"que provoca que las aplicaciones nativas de este sistema muestren (entre "
+"otras cosas) algunas sesiones muertas. Es más, no dispone de un archivos "
+"para configurar la reserva de entradas para sesiones al no disponer de "
+"campos I<ut_id>."
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+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 ""
+"En Linux (igual que en System V), el campo I<ut_id> de un registro nunca "
+"cambiará una vez que se le haya asignado un valor, lo que reserva esa "
+"entrada sin necesidad de un fichero de configuración. Limpiar el campo "
+"I<ut_id> puede producir condiciones de carrera que den lugar a entradas utmp "
+"corruptas y a potenciales problemas de seguridad. La semántica de System V "
+"no necesita la limpieza de los campos mencionados anteriormente "
+"rellenándolos con bytes nulos, pero esto permite ejecutar muchos programas "
+"que suponen una semántica BSD y que no modifican utmp. Linux usa las "
+"convenciones de BSD para los contenidos de las líneas, tal y como se ha "
+"descrito anteriormente."
+
+#. mtk: What is the referrent of "them" in the following sentence?
+#. System V only uses the type field to mark them and logs
+#. informative messages such as \fB"new time"\fP in the line field.
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "System V has no I<ut_host> or I<ut_addr_v6> fields."
+msgstr "System V no tiene los campos I<ut_host> ni I<ut_addr_v6>."
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "NOTES"
+msgstr "NOTAS"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+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 ""
+"A diferencia de otros sistemas, donde el registro de información en utmp se "
+"puede deshabilitar borrando el fichero, en Linux este fichero siempre debe "
+"existir. Si quiere deshabilitar B<who>(1) elimine el permiso de lectura de "
+"utmp de los permisos correspondientes a \"otros\"."
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+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 ""
+"El formato del fichero depende de la arquitectura de la máquina, por lo que "
+"se recomienda que sea procesado únicamente en la arquitectura en que fue "
+"creado."
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+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 ""
+"Tenga en cuenta que en plataformas I<biarch> (aquellas que pueden ejecutar "
+"aplicaciones de 32 y de 64 bits tales como x86-64,ppc64,s390x,etc...), "
+"I<ut_tv> tiene el mismo tamaño en el mode de 32-bits y en el de 64-bits. Lo "
+"mismo ocurre con I<ut_session> y I<ut_time> si existen. Esto permite que se "
+"comparta memoria y datos entre aplicaciones de distinto tipo. Este se "
+"consigue al modificar el tipo de I<ut_session> a I<int32_t> y el de I<ut_tv> "
+"a una estructura con dos campos I<int32_t>: I<tv_sec> y I<tv_usec>. Como "
+"I<ut_tv> puede no ser igual que I<struct timeval> en lugar de la llamada:"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "gettimeofday((struct timeval *) &ut.ut_tv, NULL);\n"
+msgstr "gettimeofday((struct timeval *) &ut.ut_tv, NULL);\n"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "the following method of setting this field is recommended:"
+msgstr "se recomienda definir este campo con el siguiente método:"
+
+#. type: Plain text
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
+#, no-wrap
+msgid ""
+"struct utmp ut;\n"
+"struct timeval tv;\n"
+"\\&\n"
+"gettimeofday(&tv, NULL);\n"
+"ut.ut_tv.tv_sec = tv.tv_sec;\n"
+"ut.ut_tv.tv_usec = tv.tv_usec;\n"
+msgstr ""
+"struct utmp ut;\n"
+"struct timeval tv;\n"
+"\\&\n"
+"gettimeofday(&tv, NULL);\n"
+"ut.ut_tv.tv_sec = tv.tv_sec;\n"
+"ut.ut_tv.tv_usec = tv.tv_usec;\n"
+
+#. #-#-#-#-# archlinux: utmp.5.pot (PACKAGE VERSION) #-#-#-#-#
+#. .P
+#. Note that the \fIutmp\fP struct from libc5 has changed in libc6.
+#. Because of this,
+#. binaries using the old libc5 struct will corrupt
+#. .IR /var/run/utmp " and/or " /var/log/wtmp .
+#. .SH BUGS
+#. This man page is based on the libc5 one, things may work differently now.
+#. type: SH
+#. #-#-#-#-# debian-bookworm: utmp.5.pot (PACKAGE VERSION) #-#-#-#-#
+#. .PP
+#. Note that the \fIutmp\fP struct from libc5 has changed in libc6.
+#. Because of this,
+#. binaries using the old libc5 struct will corrupt
+#. .IR /var/run/utmp " and/or " /var/log/wtmp .
+#. .SH BUGS
+#. This man page is based on the libc5 one, things may work differently now.
+#. type: SH
+#. #-#-#-#-# debian-unstable: utmp.5.pot (PACKAGE VERSION) #-#-#-#-#
+#. .PP
+#. Note that the \fIutmp\fP struct from libc5 has changed in libc6.
+#. Because of this,
+#. binaries using the old libc5 struct will corrupt
+#. .IR /var/run/utmp " and/or " /var/log/wtmp .
+#. .SH BUGS
+#. This man page is based on the libc5 one, things may work differently now.
+#. type: SH
+#. #-#-#-#-# fedora-40: utmp.5.pot (PACKAGE VERSION) #-#-#-#-#
+#. .P
+#. Note that the \fIutmp\fP struct from libc5 has changed in libc6.
+#. Because of this,
+#. binaries using the old libc5 struct will corrupt
+#. .IR /var/run/utmp " and/or " /var/log/wtmp .
+#. .SH BUGS
+#. This man page is based on the libc5 one, things may work differently now.
+#. type: SH
+#. #-#-#-#-# fedora-rawhide: utmp.5.pot (PACKAGE VERSION) #-#-#-#-#
+#. .P
+#. Note that the \fIutmp\fP struct from libc5 has changed in libc6.
+#. Because of this,
+#. binaries using the old libc5 struct will corrupt
+#. .IR /var/run/utmp " and/or " /var/log/wtmp .
+#. .SH BUGS
+#. This man page is based on the libc5 one, things may work differently now.
+#. type: SH
+#. #-#-#-#-# mageia-cauldron: utmp.5.pot (PACKAGE VERSION) #-#-#-#-#
+#. .P
+#. Note that the \fIutmp\fP struct from libc5 has changed in libc6.
+#. Because of this,
+#. binaries using the old libc5 struct will corrupt
+#. .IR /var/run/utmp " and/or " /var/log/wtmp .
+#. .SH BUGS
+#. This man page is based on the libc5 one, things may work differently now.
+#. type: SH
+#. #-#-#-#-# opensuse-leap-15-6: utmp.5.pot (PACKAGE VERSION) #-#-#-#-#
+#. .PP
+#. Note that the \fIutmp\fP struct from libc5 has changed in libc6.
+#. Because of this,
+#. binaries using the old libc5 struct will corrupt
+#. .IR /var/run/utmp " and/or " /var/log/wtmp .
+#. .SH BUGS
+#. This man page is based on the libc5 one, things may work differently now.
+#. type: SH
+#. #-#-#-#-# opensuse-tumbleweed: utmp.5.pot (PACKAGE VERSION) #-#-#-#-#
+#. .PP
+#. Note that the \fIutmp\fP struct from libc5 has changed in libc6.
+#. Because of this,
+#. binaries using the old libc5 struct will corrupt
+#. .IR /var/run/utmp " and/or " /var/log/wtmp .
+#. .SH BUGS
+#. This man page is based on the libc5 one, things may work differently now.
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "SEE ALSO"
+msgstr "VÉASE TAMBIÉN"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"B<ac>(1), B<date>(1), B<init>(1), B<last>(1), B<login>(1), B<logname>(1), "
+"B<lslogins>(1), B<users>(1), B<utmpdump>(1), B<who>(1), B<getutent>(3), "
+"B<getutmp>(3), B<login>(3), B<logout>(3), B<logwtmp>(3), B<updwtmp>(3)"
+msgstr ""
+"B<ac>(1), B<date>(1), B<init>(1), B<last>(1), B<login>(1), B<logname>(1), "
+"B<lslogins>(1), B<users>(1), B<utmpdump>(1), B<who>(1), B<getutent>(3), "
+"B<getutmp>(3), B<login>(3), B<logout>(3), B<logwtmp>(3), B<updwtmp>(3)"
+
+#. type: TH
+#: debian-bookworm
+#, no-wrap
+msgid "2023-02-05"
+msgstr "5 Febrero 2023"
+
+#. type: TH
+#: debian-bookworm
+#, no-wrap
+msgid "Linux man-pages 6.03"
+msgstr "Páginas de manual de Linux 6.03"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid "/* Values for ut_type field, below */\n"
+msgstr "/* Valores para el campo ut_type */\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, 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>(1)) */\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>(1) */\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 /* El registro no contiene información válida\n"
+" (definido anteriormente en Linux como UT_UNKNOWN) */\n"
+"#define RUN_LVL 1 /* Modifica el nivel de ejecución del sistema (vea\n"
+" B<init>(1)) */\n"
+"#define BOOT_TIME 2 /* Hora de arranque del sistema (en I<ut_tv>) */\n"
+"#define NEW_TIME 3 /* Hora después de modificar el reloj del sistema\n"
+" (en I<ut_tv>) */\n"
+"#define OLD_TIME 4 /* Hora antes de modificar el reloj del sistema\n"
+" (en I<ut_tv>) */\n"
+"#define INIT_PROCESS 5 /* Proceso iniciado por B<init>(1) */\n"
+"#define LOGIN_PROCESS 6 /* Proceso principal para el inicio de sesión del usuario */\n"
+"#define USER_PROCESS 7 /* Proceso corriente*/\n"
+"#define DEAD_PROCESS 8 /* Proceso finalizado */\n"
+"#define ACCOUNTING 9 /* Actualmente sin uso */\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+"#define UT_LINESIZE 32\n"
+"#define UT_NAMESIZE 32\n"
+"#define UT_HOSTSIZE 256\n"
+msgstr ""
+"#define UT_LINESIZE 32\n"
+"#define UT_NAMESIZE 32\n"
+"#define UT_HOSTSIZE 256\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+"struct exit_status { /* Type for ut_exit, below */\n"
+" short e_termination; /* Process termination status */\n"
+" short e_exit; /* Process exit status */\n"
+"};\n"
+msgstr ""
+"struct exit_status { /* Type for ut_exit, below */\n"
+" short e_termination; /* Process termination status */\n"
+" short e_exit; /* Process exit status */\n"
+"};\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+"struct utmp {\n"
+" short ut_type; /* Type of record */\n"
+" pid_t ut_pid; /* PID of login process */\n"
+" char ut_line[UT_LINESIZE]; /* Device name of tty - \"/dev/\" */\n"
+" char ut_id[4]; /* Terminal name suffix,\n"
+" or inittab(5) ID */\n"
+" char ut_user[UT_NAMESIZE]; /* Username */\n"
+" char ut_host[UT_HOSTSIZE]; /* Hostname for remote login, or\n"
+" kernel version for run-level\n"
+" messages */\n"
+" struct exit_status ut_exit; /* Exit status of a process\n"
+" marked as DEAD_PROCESS; not\n"
+" used by Linux init(1) */\n"
+" /* The ut_session and ut_tv fields must be the same size when\n"
+" compiled 32- and 64-bit. This allows data files and shared\n"
+" memory to be shared between 32- and 64-bit applications. */\n"
+"#if __WORDSIZE == 64 && defined __WORDSIZE_COMPAT32\n"
+" int32_t ut_session; /* Session ID (B<getsid>(2)),\n"
+" used for windowing */\n"
+" struct {\n"
+" int32_t tv_sec; /* Seconds */\n"
+" int32_t tv_usec; /* Microseconds */\n"
+" } ut_tv; /* Time entry was made */\n"
+"#else\n"
+" long ut_session; /* Session ID */\n"
+" struct timeval ut_tv; /* Time entry was made */\n"
+"#endif\n"
+msgstr ""
+"struct utmp {\n"
+" short ut_type; /* Tipo de registro */\n"
+" pid_t ut_pid; /* PID del proceso de inicio de sesión */\n"
+" char ut_line[UT_LINESIZE]; /* Nombre de dispositivo del terminal - \"/dev/\" */\n"
+" char ut_id[4]; /* Extensión del nombre de terminal,\n"
+" o ID de inittab(5) */\n"
+" char ut_user[UT_NAMESIZE]; /* Nombre de usuario */\n"
+" char ut_host[UT_HOSTSIZE]; /* Nombre del host para sesión remota\n"
+" o versión del núcleo para los mensajes del\n"
+" nivel de ejecución */\n"
+" struct exit_status ut_exit; /* Estado de salida de un proceso\n"
+" marcado como DEAD_PROCESS; no\n"
+" se usa en el init(1) de Linux*/\n"
+" /* ut_session y ut_tv fields tiene que tener el mismo tamaño\n"
+" al compilarse en 32- y en 64-bit. Esto permite compartir datos\n"
+" y memoria entre aplicaciones de 32- y de 64-bits. */\n"
+"#if __WORDSIZE == 64 && defined __WORDSIZE_COMPAT32\n"
+" int32_t ut_session; /* ID de sesión (B<getsid>(2)),\n"
+" para la ventana */\n"
+" struct {\n"
+" int32_t tv_sec; /* segundos */\n"
+" int32_t tv_usec; /* microsegundos */\n"
+" } ut_tv; /* Hora de anotación de la entrada */\n"
+"#else\n"
+" long ut_session; /* ID de sesión */\n"
+" struct timeval ut_tv; /* Hora de la entrada */\n"
+"#endif\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, 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]; /* Dirección de internet del\n"
+" host remoto; las direcciones IPv4 emplean\n"
+" just ut_addr_v6[0] */\n"
+" char __unused[20]; /* Reservado para un uso futuro */\n"
+"};\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, 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 ""
+"/* Para compatibilidad con versiones anteriores. */\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"
+
+#. type: Plain text
+#: debian-bookworm
+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) y otros emuladores de terminal crean directamente un registro "
+"B<USER_PROCESS> y generan B<ut_id> con los caracteres siguientes de la "
+"cadena I</dev/[pt]ty>. Si encuentran un B<DEAD_PROCESS> para este ID, lo "
+"reutilizan; en caso contrario, crean una nueva entrada. Si pueden, las "
+"marcarán como B<DEAD_PROCESS> al terminar y se aconseja que también rellenen "
+"con bytes nulos los campos I<ut_line>, I<ut_time>, I<ut_user> y I<ut_host>."
+
+#. type: SS
+#: debian-bookworm
+#, no-wrap
+msgid "Comparison with historical systems"
+msgstr "Comparación con sistemas antiguos"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+"struct utmp ut;\n"
+"struct timeval tv;\n"
+msgstr ""
+"struct utmp ut;\n"
+"struct timeval tv;\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+"gettimeofday(&tv, NULL);\n"
+"ut.ut_tv.tv_sec = tv.tv_sec;\n"
+"ut.ut_tv.tv_usec = tv.tv_usec;\n"
+msgstr ""
+"gettimeofday(&tv, NULL);\n"
+"ut.ut_tv.tv_sec = tv.tv_sec;\n"
+"ut.ut_tv.tv_usec = tv.tv_usec;\n"
+
+#. type: TH
+#: debian-unstable opensuse-tumbleweed
+#, no-wrap
+msgid "2023-05-03"
+msgstr "3 Mayo 2023"
+
+#. type: TH
+#: debian-unstable opensuse-tumbleweed
+#, no-wrap
+msgid "Linux man-pages 6.05.01"
+msgstr "Páginas de manual de Linux 6.05.01"
+
+#. type: TH
+#: opensuse-leap-15-6
+#, no-wrap
+msgid "2023-04-03"
+msgstr "3 Abril 2023"
+
+#. type: TH
+#: opensuse-leap-15-6
+#, no-wrap
+msgid "Linux man-pages 6.04"
+msgstr "Linux man-pages 6.04"