mirror of
https://github.com/MacRimi/ProxMenux.git
synced 2026-09-14 10:47:36 +00:00
Rebuild of the 7 supported translation catalogs (ES/DE/FR/IT/PT/SK/SV) covering Monitor (`AppImage/messages/<lang>/common.json`, 3903 keys each) and CLI (`lang/<lang>.json`, 5272 keys each). Swedish (sv) is added as a new locale end-to-end.
4600 lines
237 KiB
JSON
4600 lines
237 KiB
JSON
{
|
||
"_meta": "Community translation target. Copy keys from ../en/common.json and translate the values.",
|
||
"app": {
|
||
"title": "ProxMenux Monitor",
|
||
"description": "Panel de control del sistema Proxmox",
|
||
"loading": "Cargando...",
|
||
"connecting": "Conexión al ProxMenux Monitor",
|
||
"unknown": "Desconocido",
|
||
"notAvailable": "N / A",
|
||
"serverOffline": "Servidor sin conexión",
|
||
"supportProject": "Apoyar y contribuir al proyecto."
|
||
},
|
||
"common": {
|
||
"notAvailable": "N / A",
|
||
"unknown": "Desconocido"
|
||
},
|
||
"actions": {
|
||
"refresh": "Refrescar",
|
||
"toggleTheme": "Alternar tema",
|
||
"openUserMenu": "Abrir menú de usuario",
|
||
"cancel": "Cancelar",
|
||
"save": "Ahorrar",
|
||
"edit": "Editar",
|
||
"close": "Cerca",
|
||
"resetAll": "Restablecer todo",
|
||
"undo": "Deshacer",
|
||
"copy": "Copiar",
|
||
"copied": "Copiado",
|
||
"copyToClipboard": "Copiar al portapapeles"
|
||
},
|
||
"navigation": {
|
||
"overview": "Descripción general",
|
||
"storage": "Almacenamiento",
|
||
"network": "Red",
|
||
"virtualMachines": "VM y LXC",
|
||
"hardware": "Hardware",
|
||
"backup": "Respaldo",
|
||
"terminal": "Terminal",
|
||
"systemLogs": "Registros del sistema",
|
||
"security": "Seguridad",
|
||
"settings": "Ajustes",
|
||
"about": "Acerca de",
|
||
"profile": "Perfil",
|
||
"node": "Nodo",
|
||
"admin": "Administración",
|
||
"menu": "Menú de navegación"
|
||
},
|
||
"status": {
|
||
"healthy": "Saludable",
|
||
"warning": "Advertencia",
|
||
"critical": "Crítico",
|
||
"uptime": "Tiempo de actividad: {uptime}",
|
||
"node": "Nodo: {node}",
|
||
"connectionFailed": "Error de conexión al servidor ProxMenux",
|
||
"checkService": "Compruebe que monitor.service se esté ejecutando correctamente.",
|
||
"serverPort": "El servidor ProxMenux debería iniciarse automáticamente en el puerto 8008",
|
||
"tryAccessing": "Intenta acceder a:",
|
||
"normal": "Normal",
|
||
"warm": "Cálido",
|
||
"hot": "Caliente",
|
||
"moderate": "Moderado",
|
||
"high": "Alto",
|
||
"stopped": "Interrumpido",
|
||
"active": "Activo",
|
||
"disabled": "Desactivado",
|
||
"inactive": "inactivo",
|
||
"saving": "Ahorro...",
|
||
"saved": "Guardado",
|
||
"saveFailed": "Error al guardar",
|
||
"networkErrorWhileSaving": "Error de red al guardar"
|
||
},
|
||
"overview": {
|
||
"loadingTitle": "Cargando descripción general del sistema...",
|
||
"loadingDescription": "Obtener el estado y las métricas del sistema",
|
||
"topProcessesCpu": "Ver procesos principales por CPU",
|
||
"topProcessesMemory": "Ver procesos principales por memoria",
|
||
"suggestedFix": "Solución sugerida en el host Proxmox",
|
||
"noMetricsData": "No hay datos de métricas disponibles",
|
||
"invalidMetricsData": "Datos de métricas no válidos recibidos del servidor.",
|
||
"metricsLoadError": "Error al cargar métricas",
|
||
"networkMetricsUnavailable": "Las métricas de red aún no están disponibles",
|
||
"noNetworkMetrics": "No hay métricas de red disponibles",
|
||
"cpuUsage": "Uso de CPU",
|
||
"cpuUsageLoadAverage": "Uso de CPU y carga promedio",
|
||
"cpuPercent": "CPU %",
|
||
"loadAverage": "Carga promedio",
|
||
"loadAxis": "Carga",
|
||
"memory": "Memoria",
|
||
"memoryUsage": "Uso de la memoria",
|
||
"user": "Usuario",
|
||
"system": "Sistema",
|
||
"cores": "Núcleos",
|
||
"used": "Usado",
|
||
"cached": "En caché",
|
||
"total": "Total",
|
||
"free": "Gratis",
|
||
"activeVmLxc": "Máquina virtual activa y LXC",
|
||
"runningCount": "{count} en ejecución",
|
||
"vmsCount": "{count} máquinas virtuales",
|
||
"stoppedCount": "{count} detenido",
|
||
"temperature": "Temperatura",
|
||
"noSensorAvailable": "No hay sensores disponibles",
|
||
"collectingData": "Recopilando datos...",
|
||
"storageOverview": "Descripción general del almacenamiento",
|
||
"totalNodeCapacity": "Capacidad total del nodo:",
|
||
"totalCapacity": "Capacidad total:",
|
||
"physicalDisks": "Discos físicos:",
|
||
"diskSingular": "disco",
|
||
"diskPlural": "discos",
|
||
"vmLxcStorage": "Almacenamiento VM/LXC",
|
||
"available": "Disponible",
|
||
"storageVolumeSingular": "volumen de almacenamiento",
|
||
"storageVolumePlural": "volúmenes de almacenamiento",
|
||
"noVmLxcStorage": "No hay almacenamiento VM/LXC configurado",
|
||
"localStorageSystem": "Almacenamiento local (sistema)",
|
||
"storageDataUnavailable": "Datos de almacenamiento no disponibles",
|
||
"networkOverview": "Descripción general de la red",
|
||
"activeInterfaces": "Interfaces activas:",
|
||
"received": "Recibió:",
|
||
"sent": "Enviado:",
|
||
"receivedShort": "Recibió",
|
||
"sentShort": "Enviado",
|
||
"networkDataUnavailable": "Datos de red no disponibles",
|
||
"systemInformation": "Información del sistema",
|
||
"uptime": "Tiempo de actividad:",
|
||
"uptimeDuration": {
|
||
"dayOne": "{count} día",
|
||
"dayFew": "{count} días",
|
||
"dayMany": "{count} días"
|
||
},
|
||
"proxmoxVersion": "Versión Proxmox:",
|
||
"kernel": "Núcleo:",
|
||
"availableUpdates": "Actualizaciones disponibles:",
|
||
"packages": "paquetes",
|
||
"systemOverview": "Descripción general del sistema",
|
||
"loadAverage1m": "Carga Promedio (1m):",
|
||
"cpuThreads": "Hilos de CPU:",
|
||
"networkInterfaces": "Interfaces de red:",
|
||
"timeframes": {
|
||
"hour": "1 hora",
|
||
"day": "24 Horas",
|
||
"week": "7 dias",
|
||
"month": "30 dias",
|
||
"year": "1 año"
|
||
},
|
||
"stats": {
|
||
"avg": "promedio",
|
||
"max": "máximo",
|
||
"min": "mín."
|
||
},
|
||
"errors": {
|
||
"serverUnavailableTitle": "El servidor de monitor no está disponible",
|
||
"serverUnavailableDescription": "No se puede conectar con el servidor Monitor. Asegúrese de que el servicio se esté ejecutando y vuelva a intentarlo."
|
||
}
|
||
},
|
||
"storage": {
|
||
"loadingTitle": "Cargando datos de almacenamiento...",
|
||
"loadingDescription": "Escaneo de discos, particiones y grupos de almacenamiento",
|
||
"loadingError": "Error al cargar datos de almacenamiento: {error}",
|
||
"storageUsed": "Almacenamiento utilizado",
|
||
"localUsed": "Local usado",
|
||
"remoteUsed": "Remoto usado",
|
||
"physicalDisks": "Discos físicos",
|
||
"proxmoxStorage": "Almacenamiento Proxmox",
|
||
"remoteMounts": "Montajes remotos",
|
||
"externalStorageUsb": "Almacenamiento externo (USB)",
|
||
"physicalDisksSmart": "Discos físicos y estado SMART",
|
||
"zfsPools": "Grupos ZFS",
|
||
"local": "Local",
|
||
"remote": "Remoto",
|
||
"free": "Gratis",
|
||
"used": "Usado",
|
||
"total": "Total",
|
||
"available": "Disponible",
|
||
"size": "Tamaño",
|
||
"allocated": "Asignado",
|
||
"none": "Ninguno",
|
||
"noRemoteStorage": "Sin almacenamiento remoto",
|
||
"diskSingular": "disco",
|
||
"diskPlural": "discos",
|
||
"allHealthy": "todos sanos",
|
||
"criticalCount": "{count} crítico",
|
||
"warningCount": "{count} advertencia",
|
||
"remoteMount": "montaje remoto",
|
||
"remoteMountShort": "remoto",
|
||
"excluded": "excluido",
|
||
"notMonitored": "no monitoreado",
|
||
"namespaceRestricted": "espacio de nombres restringido",
|
||
"namespaceRestrictedTitle": "Almacenamiento accesible; Tamaño del almacén de datos oculto por ACL (por ejemplo, PBS DatastoreAdmin en un único espacio de nombres)",
|
||
"managedByProxmox": "gestionado por Proxmox",
|
||
"readOnlyShort": "ro",
|
||
"stale": "duro",
|
||
"readOnly": "solo lectura",
|
||
"reachable": "accesible",
|
||
"source": "Fuente:",
|
||
"capacity": "Capacidad",
|
||
"mountOptions": "Opciones de montaje",
|
||
"mountStaleSkipped": "df omitido: el montaje está obsoleto.",
|
||
"notApplicable": "n / A",
|
||
"error": "Error",
|
||
"system": "Sistema",
|
||
"standby": "Apoyar",
|
||
"standbyTitle": "La unidad está en espera: se omitió smartctl para mantenerla apagada",
|
||
"filesystemCorruption": "Se detectó corrupción en el sistema de archivos",
|
||
"ioErrorOne": "{count} Error de E/S en 5 minutos",
|
||
"ioErrorMany": "{count} Errores de E/S en 5 minutos",
|
||
"model": "Modelo",
|
||
"wearLevel": "Nivel de desgaste",
|
||
"powerCycles": "Ciclos de energía",
|
||
"powerOn": "Encendido",
|
||
"crcErrors": "Errores de CRC",
|
||
"reallocatedShort": "Reasignar. Sectores",
|
||
"serialShort": "S/N:",
|
||
"viewDetails": "Ver detalles",
|
||
"diskDetails": "Detalles del disco: /dev/{name}",
|
||
"physicalDisk": "Disco físico",
|
||
"overview": "Descripción general",
|
||
"smart": "SMART",
|
||
"history": "Historia",
|
||
"schedule": "Cronograma",
|
||
"serialNumber": "Número de serie",
|
||
"healthStatus": "Estado de salud",
|
||
"wearLifetime": "Desgaste y vida útil",
|
||
"dataWritten": "Datos escritos",
|
||
"life": "vida",
|
||
"lifeRemaining": "Vida restante",
|
||
"realTest": "Prueba real",
|
||
"wear": {
|
||
"label": "Tener puesto",
|
||
"percentageUsed": "Porcentaje utilizado",
|
||
"mediaWearout": "Desgaste de los medios",
|
||
"wearLevel": "Nivel de desgaste",
|
||
"lifeUsed": "Vida usada"
|
||
},
|
||
"estimatedLife": "Est. Vida",
|
||
"noWearDetected": "Aún no se ha detectado desgaste",
|
||
"months": "meses",
|
||
"years": "años",
|
||
"duration": {
|
||
"daysShort": "{days}d",
|
||
"monthsShort": "{months}m",
|
||
"yearsShort": "{years}y",
|
||
"monthsDaysShort": "{months}m {days}d",
|
||
"yearsMonthsShort": "{years}y {months}m",
|
||
"estimatedYears": "~{value} años",
|
||
"estimatedMonths": "~{value} meses"
|
||
},
|
||
"availableSpare": "Aprovechar. Repuesto",
|
||
"smartAttributes": "Atributos SMART",
|
||
"powerOnHours": "Horas de encendido",
|
||
"rotationRate": "Tasa de rotación",
|
||
"smartStatus": "Estado SMART",
|
||
"reallocatedSectors": "Sectores reasignados",
|
||
"pendingSectors": "Sectores Pendientes",
|
||
"temperature": "Temperatura",
|
||
"noSmartData": "No hay datos de prueba SMART disponibles para este disco.",
|
||
"smartDataHint": "Ejecute una prueba SMART en la pestaña Prueba SMART para obtener información de salud detallada.",
|
||
"observations": "Observaciones",
|
||
"observationsDescription": "Se han registrado las siguientes observaciones para este disco:",
|
||
"loadingObservations": "Cargando observaciones...",
|
||
"firstSeen": "Primero",
|
||
"lastSeen": "Último",
|
||
"occurrences": "Ocurrencias",
|
||
"observationShort": "obs.",
|
||
"observationTypes": {
|
||
"smart_error": "Problema de SMART",
|
||
"io_error": "problema de E/S",
|
||
"filesystem_error": "Problema del sistema de archivos",
|
||
"zfs_pool_error": "Problema con el grupo ZFS",
|
||
"connection_error": "Problema de conexión"
|
||
},
|
||
"health": {
|
||
"healthy": "Saludable",
|
||
"warning": "Advertencia",
|
||
"critical": "Crítico",
|
||
"unknown": "Desconocido",
|
||
"passed": "Aprobado",
|
||
"online": "En línea",
|
||
"failed": "Fallido",
|
||
"degraded": "Degradado"
|
||
},
|
||
"status": {
|
||
"active": "activo",
|
||
"inactive": "inactivo",
|
||
"offline": "desconectado",
|
||
"error": "error",
|
||
"failed": "fallido"
|
||
},
|
||
"smartTest": {
|
||
"loading": "Cargando datos SMART...",
|
||
"toolsMissing": "Las herramientas SMART no están instaladas",
|
||
"nvmeToolRequired": "Se requiere nvme-cli para ejecutar pruebas SMART en discos NVMe.",
|
||
"smartctlRequired": "Se requiere smartmontools para ejecutar pruebas SMART en este disco.",
|
||
"installingTools": "Instalando herramientas SMART...",
|
||
"installTools": "Instalar herramientas SMART",
|
||
"installFailed": "La instalación falló",
|
||
"installFailedManual": "La instalación falló. Pruebe manualmente: apt-get install smartmontools nvme-cli",
|
||
"installToolsManual": "No se pudieron instalar las herramientas. Pruebe manualmente: apt-get install smartmontools nvme-cli",
|
||
"runTest": "Ejecutar prueba SMART",
|
||
"shortTest": "Prueba corta (~2 min)",
|
||
"longTest": "Prueba larga (1-4 horas)",
|
||
"extendedTest": "Prueba extendida (antecedentes)",
|
||
"testHelp": "Una prueba corta dura unos 2 minutos. La prueba extendida se ejecuta en segundo plano y puede tardar varias horas en discos grandes. Recibirás una notificación cuando finalice.",
|
||
"startFailed": "No se pudo iniciar la prueba",
|
||
"short": "Corto",
|
||
"extended": "Extendido",
|
||
"testInProgress": "La prueba {type} se está ejecutando",
|
||
"testWait": "Espere hasta que finalice la prueba. Los botones se desbloquearán automáticamente.",
|
||
"noProgress": "El firmware de este disco no informa progreso. La prueba se ejecuta en segundo plano.",
|
||
"lastTest": "última prueba",
|
||
"nvmeMetrics": "Métricas de estado de NVMe",
|
||
"sasMetrics": "Métricas de estado de SAS/SCSI",
|
||
"id": "IDENTIFICACIÓN",
|
||
"attribute": "Atributo",
|
||
"value": "Valor",
|
||
"worst": "El peor",
|
||
"status": "Estado",
|
||
"viewFullReport": "Ver informe SMART completo",
|
||
"reportHelp": "Genere un informe SMART detallado con análisis y recomendaciones.",
|
||
"loadingReport": "Cargando informe...",
|
||
"reportLoadFailed": "No se pudieron cargar los datos del informe.",
|
||
"statusValues": {
|
||
"passed": "Aprobado",
|
||
"failed": "Fallido",
|
||
"running": "Correr",
|
||
"aborted": "Abortado",
|
||
"unknown": "Desconocido"
|
||
}
|
||
},
|
||
"historyTab": {
|
||
"loading": "Cargando historial de pruebas...",
|
||
"empty": "Sin historial de pruebas",
|
||
"emptyHint": "Ejecute una prueba SMART para comenzar a crear el historial de este disco.",
|
||
"title": "Historial de pruebas",
|
||
"latest": "el último",
|
||
"today": "Hoy",
|
||
"yesterday": "Ayer",
|
||
"daysAgo": "Hace {count} días",
|
||
"downloadJson": "Descargar JSON",
|
||
"delete": "Borrar",
|
||
"confirmDelete": "¿Eliminar este registro de prueba?",
|
||
"note": "Los resultados de las pruebas se almacenan localmente y se utilizan para generar informes SMART detallados."
|
||
},
|
||
"smartReport": {
|
||
"title": "Informe de estado SMART",
|
||
"printPdf": "Imprimir/Guardar como PDF",
|
||
"printHintMac": "Utilice Cmd+P para guardar como PDF",
|
||
"printHintCtrl": "Utilice Ctrl+P para guardar como PDF",
|
||
"subtitle": "ProxMenux Monitor: análisis del estado del disco",
|
||
"htmlLang": "es",
|
||
"date": "Fecha",
|
||
"device": "Dispositivo",
|
||
"executiveSummary": "Resumen ejecutivo",
|
||
"smartStatus": "Estado SMART",
|
||
"healthAssessment": "Evaluación del estado del disco",
|
||
"passedUpper": "APROBADO",
|
||
"testAgeWarning": "Este informe se basa en una prueba SMART realizada hace {days} días ({date}). Es posible que la salud del disco haya cambiado desde entonces. Recomendamos ejecutar una nueva prueba SMART para obtener resultados actualizados.",
|
||
"healthyAssessment": "Este disco está funcionando dentro de los parámetros normales. Todos los atributos SMART están dentro de umbrales aceptables. El disco ha estado encendido durante aproximadamente {uptime} y actualmente está funcionando a {temperature}. {sectors}",
|
||
"failedAssessment": "Este disco ha informado de un error de salud SMART. Se requiere acción inmediata. Haga una copia de seguridad de todos los datos críticos y planifique el reemplazo del disco.",
|
||
"noBadSectors": "No se han detectado sectores defectuosos.",
|
||
"reallocatedSectors": "{count} sectores reasignados detectados: supervise de cerca.",
|
||
"healthyMeaningTitle": "¿Qué quiere decir esto? ¡Tu disco está sano!",
|
||
"attentionTitle": "ATENCIÓN REQUERIDA: Problemas detectados",
|
||
"monitorTitle": "Algunas cuestiones necesitan seguimiento",
|
||
"healthyMeaning": "En términos simples: este disco funciona correctamente. Puedes seguir usándolo normalmente. Recomendamos realizar pruebas SMART periódicas (mensuales) para detectar cualquier problema a tiempo.",
|
||
"criticalMeaning": "En términos simples: este disco tiene problemas que podrían provocar la pérdida de datos. Haga una copia de seguridad de sus archivos importantes de inmediato y considere reemplazar el disco pronto.",
|
||
"warningMeaning": "En términos simples: el disco funciona pero muestra algunos signos de desgaste. Aún no es crítico, pero vigílelo de cerca y mantenga sus copias de seguridad actualizadas.",
|
||
"issuesFound": "Problemas encontrados",
|
||
"criticalStatus": "Crítico: requiere atención inmediata",
|
||
"warningStatus": "Advertencia: debe ser monitoreado",
|
||
"moreIssues": "...y {count} problemas más (ver detalles a continuación)",
|
||
"dismissed": "Despedido",
|
||
"occurrences": "Ocurrencias",
|
||
"errorSignature": "Firma de error",
|
||
"rawMessage": "Mensaje sin procesar",
|
||
"firstSeen": "visto por primera vez",
|
||
"lastSeen": "Visto por última vez",
|
||
"observationsIntro": "Se han detectado y registrado los siguientes eventos para este disco. Estas observaciones pueden indicar problemas potenciales que requieren atención.",
|
||
"temperatureHistory": "Historial de temperatura",
|
||
"temperatureSamples": "{count} muestras",
|
||
"temperatureBands": "Bandas: ámbar = advertencia (>= {warn}°C), rojo = crítico (>= {hot}°C). Muestreado cada 60s.",
|
||
"observationSummary": "{unique} único, {total} total",
|
||
"observationsTitle": "Observaciones y eventos ({count} registrados, {total} ocurrencias totales)",
|
||
"outdatedTestTitle": "Datos de prueba obsoletos ({days} días de antigüedad)",
|
||
"diskInformation": "Información del disco",
|
||
"attributeCount": "{total} total",
|
||
"attributeCountWithWarnings": "{total} total, {warnings} advertencia(s)",
|
||
"entriesCount": "{count} entradas",
|
||
"fullSelfTestHistory": "Historial completo de autopruebas (entradas {count})",
|
||
"firmwareNoSelfTestLog": "El firmware de este disco no mantiene un registro de autoprueba interno. Los resultados de las pruebas son rastreados por ProxMenux Monitor.",
|
||
"ssdWearNote": "Las estimaciones de vida útil de las SSD se basan en los indicadores de desgaste informados por el fabricante. La vida útil real puede variar según la carga de trabajo y los patrones de uso.",
|
||
"labels": {
|
||
"model": "Modelo",
|
||
"serial": "De serie",
|
||
"estimatedLife": "Vida restante estimada",
|
||
"totalDataWritten": "Datos totales escritos",
|
||
"availableSpare": "Repuesto disponible",
|
||
"reportGenerated": "Informe generado",
|
||
"testType": "Tipo de prueba",
|
||
"lastTestType": "Último tipo de prueba",
|
||
"testResult": "Resultado de la prueba",
|
||
"attributesChecked": "Atributos marcados",
|
||
"capacity": "Capacidad",
|
||
"type": "Tipo",
|
||
"family": "Familia",
|
||
"formFactor": "Factor de forma",
|
||
"interface": "Interfaz",
|
||
"transport": "Transporte",
|
||
"linkSpeed": "Velocidad de enlace",
|
||
"blockSize": "Tamaño del bloque",
|
||
"temperature": "Temperatura",
|
||
"optimal": "Óptimo",
|
||
"powerOnTime": "Tiempo de encendido",
|
||
"powerCycles": "Ciclos de energía",
|
||
"uncorrectedErrors": "Errores no corregidos",
|
||
"pendingSectors": "Sectores Pendientes",
|
||
"crcErrors": "Errores de CRC",
|
||
"grownDefects": "Defectos crecidos",
|
||
"lifeRemaining": "VIDA RESTANTE",
|
||
"estimated": "Estimado",
|
||
"usageStatistics": "ESTADÍSTICAS DE USO",
|
||
"percentageUsed": "Porcentaje utilizado",
|
||
"dataWritten": "Datos escritos",
|
||
"source": "Fuente",
|
||
"ssdLifeIndicator": "Indicador de vida SSD",
|
||
"wearLevel": "Nivel de desgaste",
|
||
"powerOnHours": "Horas de encendido",
|
||
"smartStatus": "Estado SMART",
|
||
"reallocatedSectors": "Sectores reasignados",
|
||
"note": "Nota",
|
||
"metric": "Métrico",
|
||
"attribute": "Atributo",
|
||
"value": "Valor",
|
||
"worst": "El peor",
|
||
"thresholdShort": "tr",
|
||
"raw": "Crudo",
|
||
"result": "Resultado",
|
||
"completed": "Terminado",
|
||
"atPowerOnHours": "En horas de encendido",
|
||
"ataErrorLog": "Registro de errores de ATA",
|
||
"status": "Estado",
|
||
"atPoh": "En POH",
|
||
"date": "Fecha",
|
||
"min": "mín.",
|
||
"avg": "promedio",
|
||
"max": "máx."
|
||
},
|
||
"sections": {
|
||
"nvmeWearLifetime": "Desgaste y vida útil de NVMe",
|
||
"extendedNvmeHealth": "Estado NVMe extendido",
|
||
"ssdWearLifetime": "Desgaste y vida útil de SSD",
|
||
"nvmeHealthMetrics": "Métricas de estado de NVMe",
|
||
"sasHealthMetrics": "Métricas de estado de SAS/SCSI",
|
||
"smartAttributes": "Atributos SMART",
|
||
"selfTestResult": "Resultado de la autoprueba",
|
||
"lastSelfTestResult": "Resultado de la última autoprueba",
|
||
"recommendations": "Recomendaciones"
|
||
},
|
||
"statusValues": {
|
||
"ok": "DE ACUERDO",
|
||
"warning": "Advertencia",
|
||
"critical": "Crítico",
|
||
"failed": "Fallido",
|
||
"passed": "Aprobado",
|
||
"supported": "Apoyado",
|
||
"notSupported": "No compatible",
|
||
"none": "Ninguno",
|
||
"info": "Información"
|
||
},
|
||
"selfTestStatus": {
|
||
"completedWithoutError": "Completado sin errores",
|
||
"completedWithReadFailure": "Completado: error de lectura",
|
||
"completedWithWriteFailure": "Completado: error de escritura",
|
||
"completedWithUnknownFailure": "Completado: error desconocido",
|
||
"interrupted": "interrumpido",
|
||
"aborted": "Abortado",
|
||
"inProgress": "En curso"
|
||
},
|
||
"testTypes": {
|
||
"short": "prueba corta",
|
||
"extended": "prueba extendida"
|
||
},
|
||
"observationTypes": {
|
||
"io": "Error de E/S",
|
||
"ioPlural": "Errores de E/S",
|
||
"smart": "Error SMART",
|
||
"smartPlural": "Errores SMART",
|
||
"filesystem": "Error del sistema de archivos",
|
||
"filesystemPlural": "Errores del sistema de archivos"
|
||
},
|
||
"duration": {
|
||
"yearDayHours": "{years}y {days}d ({hours}h)",
|
||
"dayHours": "{days}d ({hours}h)",
|
||
"yearDay": "{years}y {days}d",
|
||
"minutes": "{minutes} min",
|
||
"approxMinutes": "~{minutes} min"
|
||
},
|
||
"estimatedLife": {
|
||
"years": "~{value} años",
|
||
"days": "~{value} días",
|
||
"hours": "~{value} horas",
|
||
"excellent": "Excelente"
|
||
},
|
||
"units": {
|
||
"bytes": "bytes"
|
||
},
|
||
"metrics": {
|
||
"criticalWarning": "Advertencia crítica",
|
||
"mediaErrors": "Errores de medios",
|
||
"unsafeShutdowns": "Paradas inseguras",
|
||
"enduranceWarning": "Advertencia de resistencia",
|
||
"controllerBusy": "Controlador ocupado",
|
||
"errorLogEntries": "Entradas del registro de errores",
|
||
"warningTempTime": "Tiempo de temperatura de advertencia",
|
||
"criticalTempTime": "Tiempo de temperatura crítica",
|
||
"dataRead": "Lectura de datos",
|
||
"hostReadCommands": "Comandos de lectura del host",
|
||
"hostWriteCommands": "Comandos de escritura del host",
|
||
"hotspotTemp": "Temperatura del punto de acceso",
|
||
"sensors": "Sensores"
|
||
},
|
||
"metricNotes": {
|
||
"controllerAlertFlags": "Banderas de alerta del controlador",
|
||
"flashCellDamage": "Daño de la celda flash",
|
||
"powerLossWithoutFlush": "Pérdida de energía sin descarga",
|
||
"groupEnduranceAlert": "Alerta de resistencia grupal",
|
||
"totalBusyTime": "tiempo ocupado total",
|
||
"mayIncludeBenignArtifacts": "Puede incluir artefactos benignos",
|
||
"minutesInWarningRange": "Minutos en rango de advertencia",
|
||
"minutesInCriticalRange": "Minutos en rango crítico",
|
||
"totalHostReads": "Lecturas totales del host",
|
||
"totalReadCommands": "Comandos de lectura totales",
|
||
"totalWriteCommands": "Comandos de escritura totales",
|
||
"sensorHotspot": "Punto de acceso del sensor[1]"
|
||
},
|
||
"empty": {
|
||
"nvmeMetrics": "No hay métricas NVMe disponibles",
|
||
"sasMetrics": "No hay métricas de SAS disponibles",
|
||
"smartAttributes": "No hay atributos SMART disponibles",
|
||
"selfTestHistory": "No hay historial de autopruebas disponible. Ejecute una autoprueba SMART para ver los resultados aquí."
|
||
},
|
||
"footer": {
|
||
"generatedBy": "Informe generado por ProxMenux Monitor"
|
||
},
|
||
"attributeLabels": {
|
||
"criticalWarning": "Advertencia crítica",
|
||
"nvmeTemperature": "Temperatura",
|
||
"temperatureSensor1": "Sensor de temperatura 1",
|
||
"temperatureSensor2": "Sensor de temperatura 2",
|
||
"temperatureSensor3": "Sensor de temperatura 3",
|
||
"availableSpare": "Repuesto disponible",
|
||
"availableSpareThreshold": "Umbral de repuesto disponible",
|
||
"percentageUsed": "Porcentaje utilizado",
|
||
"enduranceGroupWarning": "Advertencia de grupo de resistencia",
|
||
"mediaErrors": "Errores de medios",
|
||
"mediaIntegrityErrors": "Errores de integridad de datos y medios",
|
||
"unsafeShutdowns": "Paradas inseguras",
|
||
"nvmePowerCycles": "Ciclos de energía",
|
||
"nvmePowerOnHours": "Horas de encendido",
|
||
"dataUnitsRead": "Unidades de datos leídas",
|
||
"dataUnitsWritten": "Unidades de datos escritas",
|
||
"hostReadCommands": "Comandos de lectura del host",
|
||
"hostWriteCommands": "Comandos de escritura del host",
|
||
"controllerBusyTime": "Tiempo ocupado del controlador",
|
||
"errorLogEntries": "Entradas del registro de errores",
|
||
"warningTempTime": "Tiempo de temperatura de advertencia",
|
||
"criticalTempTime": "Tiempo de temperatura crítica",
|
||
"warningCompositeTemperatureTime": "Advertencia de tiempo de temperatura compuesta",
|
||
"criticalCompositeTemperatureTime": "Tiempo crítico de temperatura compuesta",
|
||
"thermalManagementT1TransCount": "Transiciones T1 de gestión térmica",
|
||
"thermalManagementT2TransCount": "Transiciones T2 de gestión térmica",
|
||
"thermalManagementT1TotalTime": "Gestión térmica T1 tiempo total",
|
||
"thermalManagementT2TotalTime": "Gestión térmica T2 tiempo total"
|
||
},
|
||
"attributeExplanations": {
|
||
"criticalWarning": "Banderas de alerta activas del controlador NVMe. Cualquier valor distinto de cero requiere una investigación inmediata.",
|
||
"nvmeTemperature": "Temperatura compuesta informada por el controlador. Las altas temperaturas sostenidas provocan estrangulamiento térmico y reducen la vida útil de NAND.",
|
||
"temperatureSensor1": "Sensor de temperatura primario, generalmente el flash NAND. Más representativo de la salud flash.",
|
||
"temperatureSensor2": "El sensor secundario, a menudo el controlador, muere. Normalmente funciona a más temperatura que el sensor 1.",
|
||
"temperatureSensor3": "Sensor terciario, si está presente. La ubicación varía según el fabricante.",
|
||
"availableSpare": "Porcentaje de bloques NAND de repuesto que quedan para el reemplazo de bloques defectuosos. Se activa una alerta por debajo del umbral.",
|
||
"availableSpareThreshold": "Mínimo establecido por el fabricante para repuesto disponible. Debajo de esto, la unidad señala una advertencia crítica.",
|
||
"percentageUsed": "Estimación de la resistencia consumida de la unidad en función de los ciclos de escritura reales versus los ciclos de escritura nominales. 100% significa que se alcanzó el TBW nominal; la unidad puede seguir funcionando más allá de esto.",
|
||
"mediaErrors": "Errores de lectura/escritura irrecuperables en memoria flash NAND. Cualquier valor distinto de cero indica daño celular permanente. Un recuento cada vez mayor significa un reemplazo pronto.",
|
||
"mediaIntegrityErrors": "Errores irrecuperables detectados por el controlador. Un valor distinto de cero significa riesgo de corrupción de datos.",
|
||
"unsafeShutdowns": "Pérdidas de energía sin descarga o apagado adecuado. Los recuentos muy altos corren el riesgo de corrupción de metadatos y problemas de firmware.",
|
||
"nvmePowerCycles": "Ciclos totales de encendido/apagado. Los ciclos frecuentes aumentan el desgaste del conector y del condensador.",
|
||
"nvmePowerOnHours": "Total de horas acumuladas que la unidad ha estado encendida desde su fabricación.",
|
||
"dataUnitsRead": "Datos totales leídos en unidades de 512 KB. Multiplique por 512.000 para bytes. Útil para calcular la carga de trabajo de lectura diaria.",
|
||
"dataUnitsWritten": "Datos totales escritos en unidades de 512 KB. Compare con la clasificación TBW para estimar la resistencia restante.",
|
||
"hostReadCommands": "Total de comandos de lectura emitidos por el host. Una proporción alta frente a los comandos de escritura indica una carga de trabajo de lectura intensa.",
|
||
"hostWriteCommands": "Total de comandos de escritura emitidos por el host. Incluye escrituras de metadatos del sistema de archivos.",
|
||
"controllerBusyTime": "Minutos totales que el controlador pasó procesando comandos de E/S. Los valores altos indican una carga de trabajo pesada y sostenida.",
|
||
"errorLogEntries": "Número de entradas en el registro de información de errores. A menudo incluye artefactos benignos de autoevaluación; verifique con Errores de Medios.",
|
||
"warningTempTime": "Total de minutos transcurridos por encima del umbral de temperatura de advertencia. Provoca una limitación del rendimiento. El cero es ideal.",
|
||
"criticalTempTime": "Minutos totales pasados por encima del umbral de temperatura crítica. La unidad puede apagarse para evitar daños. Siempre debe ser cero.",
|
||
"warningCompositeTemperatureTime": "Minutos totales que la temperatura compuesta superó el umbral de advertencia.",
|
||
"criticalCompositeTemperatureTime": "Minutos totales la temperatura compuesta superó el umbral crítico. Debe ser cero.",
|
||
"thermalManagementT1TransCount": "Número de veces que la unidad entró en aceleración térmica ligera (T1). Indica problemas de enfriamiento.",
|
||
"thermalManagementT2TransCount": "Número de veces que la unidad entró en aceleración térmica intensa (T2). Impacto significativo en el rendimiento.",
|
||
"thermalManagementT1TotalTime": "Total de segundos transcurridos en aceleración térmica ligera. Indica problemas de enfriamiento sostenidos.",
|
||
"thermalManagementT2TotalTime": "Total de segundos dedicados a una fuerte aceleración térmica. Grave degradación del rendimiento.",
|
||
"rawReadErrorRate": "Se detectaron errores de lectura de hardware. Los valores brutos elevados en las unidades Seagate/Samsung son normales porque su fórmula patentada hace que el VALOR sea más importante que el bruto.",
|
||
"writeErrorRate": "Errores encontrados durante las operaciones de escritura. Un recuento creciente puede indicar problemas con la cabeza o los medios.",
|
||
"multiZoneErrorRate": "Errores al escribir en regiones multizona. Específico del fabricante; una tendencia al alza es preocupante.",
|
||
"softReadErrorRate": "Errores de lectura corregidos por firmware sin pérdida de datos. Los valores altos pueden indicar medios degradantes.",
|
||
"readErrorRetryRate": "Número de reintentos de lectura necesarios. Los reintentos ocasionales son normales; El crecimiento persistente indica desgaste.",
|
||
"reportedUncorrect": "Errores que ECC no pudo corregir. Cualquier valor distinto de cero significa que los datos se perdieron o no se pueden leer.",
|
||
"reportedUncorrectableErrors": "Errores que ECC no pudo corregir. Un valor distinto de cero significa riesgo de pérdida de datos.",
|
||
"reallocatedSectorCount": "Sectores defectuosos reemplazados por sectores sobrantes del fondo de reserva. Un recuento creciente significa degradación del impulsor.",
|
||
"retiredBlockCount": "Bloques NAND retirados por desgaste o fallo (SSD). Similar al recuento de sectores reasignados para discos duros.",
|
||
"reallocatedEventCount": "Número de operaciones de reasignación realizadas. Cada evento significa que se reemplazó un sector defectuoso.",
|
||
"currentPendingSector": "Sectores inestables esperando ser reasignados en la próxima escritura. Podrán resolverse o ser reasignados permanentemente.",
|
||
"pendingSectors": "Sectores esperando ser reasignados. Pueden resolverse o ser reasignados.",
|
||
"offlineUncorrectable": "Sectores que fallaron durante el escaneo fuera de línea y no se pudieron corregir. Indica una posible pérdida de datos.",
|
||
"offlineUncorrectableSectorCount": "Se encontraron sectores no corregibles durante el análisis en segundo plano. Se pierden datos sobre estos sectores.",
|
||
"sataTemperature": "Temperatura actual de la unidad. Las altas temperaturas sostenidas aceleran el desgaste y reducen la vida útil.",
|
||
"temperatureCelsius": "Temperatura actual de la unidad en grados Celsius. Los discos duros normalmente deben permanecer por debajo de los 45°C; SSD por debajo de 60°C.",
|
||
"airflowTemperatureCel": "Temperatura medida por el sensor de flujo de aire. Generalmente ligeramente más bajo que el sensor de temperatura principal.",
|
||
"temperatureCase": "Temperatura de la carcasa del variador. Útil para monitorear la ventilación del recinto.",
|
||
"temperatureInternal": "Sensor de temperatura interno. Puede leerse por encima de la temperatura de la caja.",
|
||
"sataPowerOnHours": "Total de horas acumuladas que la unidad ha estado encendida. Se utiliza para estimar la edad y planificar reemplazos.",
|
||
"powerOnHoursAndMsec": "Tiempo total de encendido con precisión de milisegundos.",
|
||
"powerCycleCount": "Número total de ciclos completos de encendido/apagado. El ciclismo frecuente estresa la electrónica.",
|
||
"powerOffRetractCount": "Veces que los cabezales estuvieron retraídos debido a una pérdida de energía (HDD). Los valores altos indican una fuente de alimentación inestable.",
|
||
"unexpectedPowerLossCt": "Pérdidas de energía inesperadas (SSD). Puede provocar daños en los metadatos si la caché de escritura estaba activa.",
|
||
"unsafeShutdownCount": "Pérdidas de energía sin apagado adecuado (SSD). Los valores altos corren el riesgo de dañar el firmware.",
|
||
"startStopCount": "Ciclos de arranque/parada del motor del husillo (HDD). Cada ciclo provoca desgaste mecánico.",
|
||
"spinUpTime": "Es hora de que los platos alcancen la velocidad máxima de funcionamiento (HDD). Los valores crecientes pueden indicar desgaste de los cojinetes del motor.",
|
||
"spinRetryCount": "Intentos fallidos de hacer girar el motor (HDD). Un valor distinto de cero generalmente indica problemas con el suministro de energía o el motor.",
|
||
"calibrationRetryCount": "Número de reintentos de calibración del cabezal (HDD). Un valor distinto de cero puede indicar problemas mecánicos.",
|
||
"seekErrorRate": "Errores durante el posicionamiento del cabezal (HDD). Los valores brutos elevados de Seagate suelen ser normales debido a una fórmula patentada.",
|
||
"seekTimePerformance": "Rendimiento promedio de la operación de búsqueda (HDD). Los valores decrecientes sugieren degradación mecánica.",
|
||
"loadCycleCount": "Ciclos de carga/descarga del cabezal (HDD). Clasificado para ciclos de 300K-600K en la mayoría de las unidades.",
|
||
"loadUnloadCycleCount": "Ciclos de carga/descarga del cabezal (HDD). Cada ciclo provoca un pequeño desgaste en el mecanismo de rampa.",
|
||
"headFlyingHours": "Horas que los cabezales de lectura/escritura han estado colocados sobre los platos (HDD).",
|
||
"highFlyWrites": "Escribe donde la cabeza voló más alto de lo esperado (HDD). Es posible que los datos no estén escritos correctamente.",
|
||
"gSenseErrorRate": "Eventos de choque o vibración detectados por el acelerómetro (HDD). Los valores altos indican alteración física.",
|
||
"diskShift": "Distancia que el disco se ha desplazado desde su posición original (HDD). Relacionado con la temperatura o el shock.",
|
||
"loadedHours": "Horas pasadas con los cabezales cargados sobre los platos (HDD).",
|
||
"loadInTime": "Tiempo del proceso de carga del cabezal. Métrica de diagnóstico específica del fabricante.",
|
||
"torqueAmplificationCount": "Veces que la unidad necesitaba torque adicional para girar. Puede indicar fricción o problemas de motor.",
|
||
"flyingHeight": "Distancia entre el cabezal y el plato durante el funcionamiento (HDD). Crítico para la confiabilidad de lectura/escritura.",
|
||
"loadFriction": "Fricción detectada durante la carga del cabezal (HDD). Los valores crecientes sugieren desgaste del mecanismo de rampa.",
|
||
"loadUnloadRetryCount": "Intentos fallidos de carga/descarga del cabezal (HDD). Un valor distinto de cero indica problemas mecánicos.",
|
||
"udmaCrcErrorCount": "Errores de suma de comprobación de transferencia de datos en el cable SATA. Generalmente causado por un cable defectuoso, una conexión suelta o un problema con el puerto.",
|
||
"crcErrors": "Errores de comunicación de interfaz. Generalmente causado por problemas de cable o conexión.",
|
||
"crcErrorCount": "Errores de suma de comprobación de transferencia de datos. Reemplace el cable SATA si este valor aumenta.",
|
||
"commandTimeout": "Comandos que tardaron demasiado y expiraron. Puede indicar problemas con el controlador o la conexión.",
|
||
"interfaceCrcErrorCount": "Errores de CRC en el enlace de la interfaz. Problema de cable o conector.",
|
||
"hardwareEccRecovered": "Errores de lectura corregidos por hardware ECC. Un valor distinto de cero es normal; El rápido crecimiento merece atención.",
|
||
"eccErrorRate": "Tasa de errores corregidos por ECC. Fórmula patentada; EL VALOR importa más que el recuento bruto.",
|
||
"endToEndError": "Se detectaron daños en los datos entre la caché del controlador y la interfaz del host. Siempre debe ser cero.",
|
||
"endToEndErrorDetectionCount": "Número de errores de paridad en la ruta de datos. Un valor distinto de cero indica problemas con el controlador.",
|
||
"wearLevelingCount": "Ciclos de borrado promedio por bloque NAND (SSD). Un VALOR más bajo significa más desgaste consumido.",
|
||
"wearRangeDelta": "Diferencia entre bloques más y menos desgastados (SSD). Los valores altos indican un desgaste desigual.",
|
||
"mediaWearoutIndicator": "Estimación de la vida útil restante de la SSD Intel. Comienza en 100 y disminuye a 0 a medida que se consume la resistencia.",
|
||
"ssdLifeLeft": "Porcentaje estimado de vida útil restante de SSD basado en el desgaste de NAND.",
|
||
"percentLifetimeRemain": "Porcentaje estimado de vida útil restante. 100 significa nuevo; 0 significa fin de vida nominal.",
|
||
"percentLifetimeUsed": "Porcentaje de resistencia nominal consumida. Inverso del porcentaje restante de vida útil.",
|
||
"availableReservedSpace": "Bloques de repuesto restantes como porcentaje (SSD). Los valores bajos reducen la capacidad de la unidad para manejar bloques defectuosos.",
|
||
"usedReservedBlockCount": "Bloques de reserva consumidos para el reemplazo de bloques defectuosos (SSD). Un valor creciente significa envejecimiento.",
|
||
"unusedReservedBlockCount": "Los bloques de reserva aún están disponibles para el reemplazo de bloques defectuosos (SSD). Cero significa que ya no es posible reemplazar más bloques defectuosos.",
|
||
"programFailCount": "Fallos de escritura NAND (SSD). Un recuento creciente significa que las células flash se están desgastando.",
|
||
"programFailCountChip": "Fallos de programa a nivel de chip (SSD). Un valor distinto de cero indica degradación NAND.",
|
||
"eraseFailCount": "Fallos en la operación de borrado NAND (SSD). Un valor distinto de cero indica un desgaste severo por rebaba.",
|
||
"eraseFailCountTotal": "Fallos totales de borrado de NAND (SSD). Combinado con Program Fail Count, muestra el estado general de NAND.",
|
||
"eraseFailCountChip": "Borrar fallas a nivel de chip (SSD). Un valor distinto de cero significa degradación NAND.",
|
||
"runtimeBadBlock": "Bloques defectuosos descubiertos durante el funcionamiento normal (SSD). Un recuento creciente significa que el flash se está desgastando.",
|
||
"totalLbasWritten": "Total de direcciones de bloques lógicos escritas. Multiplique por 512 bytes para obtener el volumen total de datos.",
|
||
"totalLbasRead": "Total de direcciones de bloques lógicos leídas. Útil para calcular la carga de trabajo diaria.",
|
||
"lifetimeWritesGib": "Datos totales escritos en GiB durante la vida útil de la unidad.",
|
||
"lifetimeReadsGib": "Datos totales leídos en GiB durante la vida útil de la unidad.",
|
||
"totalWritesGib": "Datos totales escritos en GiB. Compare con la clasificación TBW para obtener una estimación de resistencia.",
|
||
"totalReadsGib": "Datos totales leídos en GiB.",
|
||
"nandWritesGib": "NAND sin formato escribe en GiB. Mayor que las escrituras del host debido a la amplificación de escritura.",
|
||
"hostWrites32Mib": "Datos totales escritos por el host en unidades de 32 MiB.",
|
||
"hostReads32Mib": "Datos totales leídos por el host en unidades de 32 MiB.",
|
||
"hostWritesMib": "Datos totales escritos por el host en MiB.",
|
||
"hostReadsMib": "Datos totales leídos por el host en MiB.",
|
||
"nandGbWrittenTlc": "Datos totales escritos en celdas TLC NAND en GB. Incluye sobrecarga de amplificación de escritura.",
|
||
"nandGibWritten": "Escritura NAND total en GiB. Mayor que las escrituras del host debido a la amplificación de escritura y la recolección de basura.",
|
||
"averageBlockEraseCount": "Número promedio de ciclos de borrado por bloque NAND (SSD). Las unidades suelen estar clasificadas para ciclos de 3.000 a 100.000.",
|
||
"averageEraseCount": "Ciclos de borrado promedio por bloque. Compare con la resistencia nominal para conocer la estimación de vida restante.",
|
||
"maxEraseCount": "Ciclos de borrado máximos en cualquier bloque. Una gran brecha con el promedio indica un desgaste desigual.",
|
||
"totalEraseCount": "Suma de todos los ciclos de borrado en todos los bloques. Indicador general de volumen de escritura NAND.",
|
||
"powerLossCapTest": "Resultado de la autoprueba del condensador de protección contra pérdida de energía (SSD). Fallido significa riesgo de pérdida de datos debido a un corte de energía.",
|
||
"powerLossProtection": "Estado del mecanismo de protección contra pérdida de energía. Los SSD empresariales utilizan condensadores para vaciar el caché en caso de pérdida de energía.",
|
||
"successfulRainRecovCnt": "Recuperaciones exitosas utilizando RAIN (Redundant Array of Independent NAND). Muestra que la paridad NAND está funcionando.",
|
||
"ssdEraseFailCount": "Errores de borrado total en el SSD. Indica degradación general de NAND.",
|
||
"ssdProgramFailCount": "Errores totales de escritura en el SSD. Indica problemas de confiabilidad de la celda flash.",
|
||
"throughputPerformance": "Clasificación de rendimiento de rendimiento general (HDD). Los valores decrecientes indican degradación.",
|
||
"unknownAttribute": "Atributo específico del proveedor no definido en el estándar SMART. Consulte la documentación del fabricante.",
|
||
"freeFallSensor": "Se detectaron eventos de caída libre (HDD de computadora portátil). Los cabezales están estacionados para evitar daños durante las caídas.",
|
||
"grownDefectList": "Sectores reasignados por defectos encontrados durante la operación. Equivalente a sectores reasignados en SATA. Un recuento creciente significa degradación del impulsor.",
|
||
"readErrorsCorrected": "Errores de lectura corregidos por ECC. Normal para unidades empresariales con una gran carga de trabajo; sólo los errores no corregidos son críticos.",
|
||
"readEccFast": "Errores corregidos mediante ECC rápido sobre la marcha durante las operaciones de lectura. Normal en unidades SAS.",
|
||
"readEccDelayed": "Errores que requieren corrección ECC retrasada o fuera de línea durante las lecturas. Un valor distinto de cero es aceptable, pero no debería crecer rápidamente.",
|
||
"readUncorrectedErrors": "Lea los errores que ECC no pudo corregir. Un valor distinto de cero significa que los datos se perdieron o no se pudieron leer. Métrica crítica.",
|
||
"readDataProcessed": "Datos totales leídos por la unidad. Útil para calcular la carga de trabajo diaria.",
|
||
"writeErrorsCorrected": "Errores de escritura corregidos por ECC. Normal para unidades empresariales.",
|
||
"writeUncorrectedErrors": "Escriba errores que ECC no pudo corregir. Un valor distinto de cero significa una posible pérdida de datos. Crítico.",
|
||
"writeDataProcessed": "Datos totales escritos en la unidad. Útil para el análisis de carga de trabajo.",
|
||
"verifyErrorsCorrected": "Errores de verificación corregidos durante las operaciones de verificación en segundo plano.",
|
||
"verifyUncorrectedErrors": "Verifique los errores que no se pudieron corregir. Un valor distinto de cero indica degradación del medio.",
|
||
"nonMediumErrors": "Errores del controlador o del bus no relacionados con el propio medio. Un recuento alto puede indicar problemas con el backplane o el cable.",
|
||
"sasTemperature": "Temperatura actual de la unidad. Las unidades SAS empresariales toleran hasta 55-60 °C bajo carga sostenida.",
|
||
"sasPowerOnHours": "Horas totales que la unidad ha estado encendida. Las unidades empresariales están clasificadas para funcionar las 24 horas del día, los 7 días de la semana.",
|
||
"startStopCycles": "Ciclos de arranque/parada del motor. Las unidades Enterprise SAS tienen una capacidad nominal de más de 50 000 ciclos.",
|
||
"loadUnloadCycles": "Ciclos de carga/descarga del cabezal. Las unidades empresariales tienen una capacidad nominal de más de 600 000 ciclos.",
|
||
"backgroundScanStatus": "Estado de la exploración de medios SCSI en segundo plano. Se ejecuta continuamente para detectar defectos en la superficie."
|
||
},
|
||
"recommendations": {
|
||
"healthyTitle": "El disco está sano",
|
||
"healthyText": "Todos los atributos SMART están dentro de los rangos normales. Continuar con el seguimiento periódico.",
|
||
"criticalTitle": "Crítico: problema de salud del disco detectado",
|
||
"criticalText": "SMART ha informado de un problema de salud. Haga una copia de seguridad de todos los datos inmediatamente y planifique el reemplazo del disco.",
|
||
"reallocatedTitle": "Sectores reasignados detectados ({count})",
|
||
"reallocatedText": "El disco tiene sectores defectuosos que han sido reasignados. Vigílelo de cerca y considere reemplazarlo si el recuento aumenta.",
|
||
"pendingTitle": "Sectores Pendientes ({count})",
|
||
"pendingText": "Algunos sectores están esperando ser reasignados. Esto puede indicar una falla inminente.",
|
||
"highTemperature": "Temperatura alta ({temperature}°C)",
|
||
"hotHdd": "El disco duro se está calentando. Mejore el flujo de aire de la caja o agregue refrigeración.",
|
||
"hotSsd": "El SSD se está calentando. Verifique el flujo de aire alrededor de la unidad.",
|
||
"hotNvme": "El NVMe se está sobrecalentando. Considere agregar un disipador de calor o mejorar el flujo de aire de la carcasa.",
|
||
"maintenanceTitle": "Mantenimiento regular",
|
||
"maintenanceText": "Programe una prueba SMART ampliada cada mes para detectar problemas con antelación.",
|
||
"backupTitle": "Estrategia de respaldo",
|
||
"backupText": "Realice copias de seguridad de los datos críticos con regularidad, independientemente del estado del disco.",
|
||
"nvmeWarningTitle": "Advertencia crítica de NVMe activa (0x{value})",
|
||
"nvmeWarningText": "El controlador NVMe ha generado una alerta. Haga una copia de seguridad de los datos inmediatamente e investigue más a fondo.",
|
||
"nvmeMediaTitle": "Errores de medios NVMe detectados ({count})",
|
||
"nvmeMediaText": "Los errores de flash NAND irrecuperables indican daño físico. Haga una copia de seguridad de los datos y planifique el reemplazo.",
|
||
"unsafeTitle": "Recuento elevado de apagados inseguros ({count})",
|
||
"unsafeText": "Las frecuentes pérdidas de energía aumentan el riesgo de corrupción del firmware. Asegure una energía estable o utilice un UPS.",
|
||
"seagateTitle": "Seagate Raw_Read_Error_Rate: comportamiento normal",
|
||
"seagateText": "Las unidades Seagate informan valores brutos muy grandes para el atributo n.º 1. Esto es de esperar; sólo importa el valor normalizado y debe permanecer en 100.",
|
||
"smrTitle": "Unidad SMR detectada: limitaciones de escritura",
|
||
"smrText": "Los discos SMR escriben datos aleatorios más lentamente y pueden detenerse bajo una carga de trabajo mixta intensa. Se adaptan a copias de seguridad y archivos, pero no se recomiendan como almacenamiento principal de Proxmox o vdevs ZFS."
|
||
}
|
||
},
|
||
"ataErrors": {
|
||
"idnf": "Dirección del sector no encontrada: posible sector defectuoso o problema con el cable",
|
||
"unc": "Error de lectura incorregible: sector defectuoso",
|
||
"abrt": "Comando cancelado por el variador",
|
||
"amnf": "Marca de dirección no encontrada: daños en la superficie",
|
||
"tk0nf": "Pista 0 no encontrada: falla del hardware de la unidad",
|
||
"bbk": "Bloque incorrecto detectado",
|
||
"icrc": "Error de interfaz CRC: problema con el cable o el conector",
|
||
"mc": "Medios cambiados",
|
||
"mcr": "Cambio de medios solicitado",
|
||
"wp": "Protegido contra escritura"
|
||
},
|
||
"scheduleTab": {
|
||
"loading": "Cargando horarios...",
|
||
"automaticTests": "Pruebas SMART automáticas",
|
||
"toggleHelp": "Activar o desactivar todas las pruebas programadas",
|
||
"enabled": "Activado",
|
||
"disabled": "Desactivado",
|
||
"configured": "Horarios configurados",
|
||
"disks": "Discos",
|
||
"allDisks": "todos los discos",
|
||
"keepResults": "Mantener {count} resultados",
|
||
"empty": "No hay pruebas programadas configuradas",
|
||
"emptyHint": "Cree un cronograma para ejecutar pruebas SMART automáticamente.",
|
||
"edit": "Editar horario",
|
||
"new": "Nuevo horario",
|
||
"testType": "Tipo de prueba",
|
||
"frequency": "Frecuencia",
|
||
"daily": "A diario",
|
||
"weekly": "Semanalmente",
|
||
"monthly": "Mensual",
|
||
"dailyAt": "Diariamente a las {time}",
|
||
"weeklyAt": "{day} en {time}",
|
||
"monthlyAt": "Día {day} del mes a las {time}",
|
||
"dayOfWeek": "dia de la semana",
|
||
"dayOfMonth": "Día del mes",
|
||
"timeHour": "Tiempo (hora)",
|
||
"retention": "Mantener resultados",
|
||
"lastN": "Último {count}",
|
||
"keepAll": "mantener todo",
|
||
"saving": "Ahorro...",
|
||
"save": "Guardar horario",
|
||
"cancel": "Cancelar",
|
||
"add": "Agregar horario",
|
||
"note": "Las pruebas programadas se ejecutan automáticamente mediante cron. Los resultados se guardan en el historial SMART.",
|
||
"days": {
|
||
"sunday": "Domingo",
|
||
"monday": "Lunes",
|
||
"tuesday": "Martes",
|
||
"wednesday": "Miércoles",
|
||
"thursday": "Jueves",
|
||
"friday": "Viernes",
|
||
"saturday": "Sábado"
|
||
}
|
||
}
|
||
},
|
||
"details": {
|
||
"temperature": {
|
||
"title": "Temperatura de la CPU",
|
||
"diskTitle": "Temperatura",
|
||
"current": "Actual",
|
||
"min": "mín.",
|
||
"avg": "promedio",
|
||
"max": "máx.",
|
||
"seriesName": "Temperatura",
|
||
"noData": "No hay datos de temperatura disponibles para este período",
|
||
"collectionHint": "Los datos se recopilan cada 60 segundos.",
|
||
"openHistory": "Historial de temperatura abierto",
|
||
"collectingSamples": "Recopilación de muestras: el gráfico se completa después de ~2 minutos",
|
||
"sampleInterval": "Las muestras se recogen cada 60 segundos.",
|
||
"timeframes": {
|
||
"hour": "1 hora",
|
||
"day": "24 Horas",
|
||
"week": "7 dias",
|
||
"month": "30 dias"
|
||
},
|
||
"status": {
|
||
"hot": "Caliente",
|
||
"warm": "Cálido",
|
||
"normal": "Normal"
|
||
}
|
||
},
|
||
"processes": {
|
||
"topByCpu": "Principales procesos por CPU",
|
||
"topByMemory": "Procesos principales por memoria",
|
||
"cpuDescription": "Uso actual de CPU por proceso, como fracción de la CPU total del host; la misma escala que la tarjeta de uso de CPU anterior. Se actualiza cada 3 s mientras está abierto.",
|
||
"memoryDescription": "Memoria residente actual por proceso. Se actualiza cada 3 s mientras está abierto.",
|
||
"filterPlaceholder": "Filtrar por línea de comando, usuario o PID...",
|
||
"pid": "PID",
|
||
"user": "Usuario",
|
||
"command": "Dominio",
|
||
"cpuPercent": "CPU %",
|
||
"memory": "Memoria",
|
||
"memPercent": "% memoria",
|
||
"noMatches": "Ningún proceso coincide con el filtro",
|
||
"captured": "Capturado {time}",
|
||
"matchCount": "{count} coincidencia de {total} procesos",
|
||
"matchesCount": "{count} coincidencias de {total} procesos",
|
||
"topCount": "Principales {shown} de {total} procesos",
|
||
"loadFailed": "No se pudieron recuperar los procesos",
|
||
"lifetimeAverageTitle": "% de CPU promedio durante la vida útil de este proceso: útil para encontrar líneas de base inactivas de larga duración",
|
||
"averageShort": "promedio"
|
||
},
|
||
"processInfo": {
|
||
"titleFallback": "Proceso",
|
||
"descriptionLive": "Instantánea en vivo de /proc/{pid}. Se actualiza automáticamente cada {seconds} s mientras está abierto.",
|
||
"descriptionExited": "Última instantánea de /proc/{pid} antes de que finalizara el proceso.",
|
||
"finishedTitle": "Este proceso ha terminado",
|
||
"finishedDescription": "Probablemente fue un comando auxiliar, script, pct exec o comando de una sola vez de corta duración que se completó mientras el modal estaba abierto. Los datos a continuación son la última instantánea capturada antes de salir, no una lectura obsoleta o rota.",
|
||
"loading": "Cargando…",
|
||
"fetchFailed": "No se pudo recuperar el proceso",
|
||
"captured": "capturado",
|
||
"lastSeen": "visto por última vez",
|
||
"sections": {
|
||
"overview": "Descripción general",
|
||
"resources": "Recursos",
|
||
"command": "Dominio",
|
||
"lifetime": "Vida"
|
||
},
|
||
"labels": {
|
||
"state": "Estado",
|
||
"parent": "Proceso padre",
|
||
"threads": "Hilos",
|
||
"openFds": "FD abiertos",
|
||
"user": "Usuario",
|
||
"group": "Grupo",
|
||
"cpu": "CPU",
|
||
"memory": "Memoria",
|
||
"residentRss": "Residente (RSS)",
|
||
"virtualSize": "tamaño virtual",
|
||
"swap": "Swap",
|
||
"ioRead": "lectura de E/S",
|
||
"ioWrite": "escritura de E/S",
|
||
"name": "Nombre",
|
||
"commandLine": "línea de comando",
|
||
"executable": "Ejecutable",
|
||
"workingDir": "Directorio de trabajo",
|
||
"started": "Comenzó",
|
||
"runningFor": "Corriendo por"
|
||
},
|
||
"states": {
|
||
"running": "Correr",
|
||
"sleeping": "Durmiendo",
|
||
"diskWait": "espera de disco",
|
||
"zombie": "Zombi",
|
||
"stopped": "Interrumpido",
|
||
"tracingStop": "parada de rastreo",
|
||
"dead": "Muerto",
|
||
"idle": "Inactivo",
|
||
"exited": "Salido"
|
||
}
|
||
}
|
||
},
|
||
"vmLxc": {
|
||
"loadingTitle": "Cargando máquinas virtuales y LXC...",
|
||
"loadingDescription": "Obteniendo el estado del contenedor VM y LXC",
|
||
"loadingError": "Error al cargar máquinas virtuales: {error}",
|
||
"totalVmLxc": "Total de máquinas virtuales y LXC",
|
||
"totalCpuAllocated": "CPU total asignada",
|
||
"totalMemory": "Memoria Total",
|
||
"totalDisk": "Disco total",
|
||
"running": "correr",
|
||
"stopped": "interrumpido",
|
||
"vms": "máquinas virtuales",
|
||
"used": "Usado",
|
||
"configured": "Configurado",
|
||
"inUse": "En uso",
|
||
"allocated": "Alloc",
|
||
"total": "Total",
|
||
"utilization": "útil",
|
||
"idle": "Inactivo",
|
||
"listTitle": "Máquinas virtuales y contenedores",
|
||
"empty": "No se encontraron máquinas virtuales",
|
||
"uptime": "Tiempo de actividad: {uptime}",
|
||
"cpuUsage": "Uso de CPU",
|
||
"memory": "Memoria",
|
||
"disk": "Disco",
|
||
"diskUsage": "Uso del disco",
|
||
"diskIo": "E/S de disco",
|
||
"networkIo": "E/S de red",
|
||
"sinceBoot": "desde el arranque",
|
||
"loadingConfiguration": "Cargando configuración...",
|
||
"resources": "Recursos",
|
||
"cpuCores": "Núcleos de CPU",
|
||
"notes": "Notas",
|
||
"hideNotes": "Ocultar notas",
|
||
"lessInfo": "Menos información",
|
||
"info": "Información",
|
||
"ipAddresses": "Direcciones IP",
|
||
"enterNotes": "Introduzca notas aquí...",
|
||
"editNotes": "Editar",
|
||
"savingNotes": "Ahorro...",
|
||
"notesDecodeError": "Error al decodificar notas. Edítelo para solucionarlo.",
|
||
"noNotes": "Aún no hay notas. Haga clic en Editar para agregar notas.",
|
||
"containerConfiguration": "Configuración del contenedor",
|
||
"mountedFromContainer": "Montado desde el interior del contenedor.",
|
||
"openTerminal": "Terminal abierta",
|
||
"coreCount": {
|
||
"one": "{count} núcleo",
|
||
"few": "{count} núcleos",
|
||
"many": "{count} núcleos"
|
||
},
|
||
"duration": {
|
||
"dhm": "{days}d {hours}h {minutes}m"
|
||
},
|
||
"details": {
|
||
"sourceHost": "Fuente (anfitrión)",
|
||
"mountedAtCt": "Montado en (CT)",
|
||
"total": "Total",
|
||
"used": "Usado",
|
||
"available": "Disponible",
|
||
"swap": "Swap",
|
||
"privilegeLevel": "Nivel de privilegio",
|
||
"gpuPassthrough": "Paso de GPU",
|
||
"hardwareDevices": "Dispositivos de hardware",
|
||
"cpuSockets": "Zócalos de CPU",
|
||
"cpuType": "Tipo de procesador",
|
||
"numa": "NUMA",
|
||
"bios": "BIOS",
|
||
"machineType": "Tipo de máquina",
|
||
"vga": "VGA",
|
||
"qemuAgent": "Agente QEMU",
|
||
"tabletPointer": "Puntero de tableta",
|
||
"localTime": "Hora local",
|
||
"rawConfig": "Configuración sin formato",
|
||
"scsiController": "controlador SCSI",
|
||
"dnsNameserver": "Servidor de nombres DNS",
|
||
"searchDomain": "Dominio de búsqueda",
|
||
"hostname": "Nombre de host",
|
||
"storageType": "{type} almacenamiento",
|
||
"mountAttributes": "Atributos de montaje (configuración LXC)",
|
||
"runtimeMountOptions": "Opciones de montaje en tiempo de ejecución",
|
||
"privileged": "Privilegiado",
|
||
"unprivileged": "Sin privilegios",
|
||
"hardware": "Hardware",
|
||
"pciPassthrough": "Paso PCI",
|
||
"usbDevices": "Dispositivos USB",
|
||
"serialPorts": "Puertos serie",
|
||
"bridge": "Puente",
|
||
"enabled": "Activado",
|
||
"disabled": "Desactivado",
|
||
"on": "en",
|
||
"off": "apagado",
|
||
"included": "incluido",
|
||
"excluded": "excluido",
|
||
"storage": "Almacenamiento",
|
||
"rootFilesystem": "sistema de archivos raíz",
|
||
"efiDisk": "disco EFI",
|
||
"tpmState": "Estado del TPM",
|
||
"mountPoint": "Punto de montaje",
|
||
"mountPointIndexed": "Punto de montaje {index}",
|
||
"network": "Red",
|
||
"networkInterface": "Interfaz de red {index}",
|
||
"hostInterface": "Anfitrión: {interface}",
|
||
"gateway": "Puerta",
|
||
"gatewayV6": "Puerta de enlace v6",
|
||
"type": "Tipo",
|
||
"rateLimit": "Límite de tarifa",
|
||
"firewall": "Cortafuegos",
|
||
"backup": "Respaldo",
|
||
"replicate": "Reproducir exactamente",
|
||
"volume": "Volumen",
|
||
"path": "Camino",
|
||
"media": "Medios de comunicación",
|
||
"discard": "Desechar",
|
||
"cache": "Cache",
|
||
"efiType": "tipo EFI",
|
||
"preEnrolledKeys": "Claves preinscritas",
|
||
"serial": "De serie",
|
||
"mountTypes": {
|
||
"pveVolume": "volumen PVE",
|
||
"pveStorageBind": "unirse desde el almacenamiento PVE",
|
||
"hostBind": "enlazar desde el host",
|
||
"adHoc": "ad-hoc dentro de CT"
|
||
},
|
||
"mountStatus": {
|
||
"stale": "duro",
|
||
"notMounted": "no montado",
|
||
"hostDetached": "anfitrión independiente",
|
||
"readOnly": "solo lectura",
|
||
"stopped": "interrumpido",
|
||
"mounted": "montado"
|
||
}
|
||
},
|
||
"logs": {
|
||
"header": "Registros para {name} (VMID: {vmid})",
|
||
"node": "Nodo",
|
||
"type": "Tipo",
|
||
"totalLines": "Líneas totales",
|
||
"generated": "Generado"
|
||
},
|
||
"tabs": {
|
||
"status": "Estado",
|
||
"mounts": "monturas",
|
||
"backups": "Copias de seguridad",
|
||
"updates": "Actualizaciones",
|
||
"firewall": "Cortafuegos",
|
||
"app": "Aplicación"
|
||
},
|
||
"actions": {
|
||
"start": "Comenzar",
|
||
"shutdown": "Cerrar",
|
||
"reboot": "Reiniciar",
|
||
"forceStop": "Forzar parada",
|
||
"working": "Laboral..."
|
||
},
|
||
"confirm": {
|
||
"forceStopTitle": "Forzar parada",
|
||
"rebootTitle": "Reiniciar",
|
||
"forceStopDescription": "Esto omite la secuencia de apagado del sistema operativo invitado y puede dañar las bases de datos o sistemas de archivos en ejecución. El huésped muere inmediatamente.",
|
||
"rebootDescription": "Esto fuerza un reinicio sin esperar a que el sistema operativo invitado borre las escrituras pendientes. Utilice un Apagado elegante cuando sea posible.",
|
||
"typeToConfirm": "Escriba {vmid} para confirmar:",
|
||
"guest": "Invitado:"
|
||
},
|
||
"guestTypes": {
|
||
"container": "recipiente",
|
||
"vm": "VM",
|
||
"containerUi": "Recipiente"
|
||
},
|
||
"backups": {
|
||
"title": "Copias de seguridad",
|
||
"create": "Crear copia de seguridad",
|
||
"available": "Copias de seguridad disponibles",
|
||
"loading": "Cargando copias de seguridad...",
|
||
"empty": "No se encontraron copias de seguridad",
|
||
"emptyHint": "Crea tu primera copia de seguridad usando el botón de arriba"
|
||
},
|
||
"updatesPanel": {
|
||
"pendingTitle": "Actualizaciones de paquetes pendientes",
|
||
"total": "{count} total",
|
||
"lastChecked": "Última comprobación:",
|
||
"applyWith": "Aplicar con",
|
||
"securityUpdate": "Actualización de seguridad",
|
||
"security": "seguridad",
|
||
"clickToView": "Haga clic para ver los paquetes pendientes",
|
||
"updateSingular": "actualizar",
|
||
"updatePlural": "actualizaciones",
|
||
"packagePending": "{count} paquete pendiente",
|
||
"packagesPending": "{count} paquetes pendientes",
|
||
"securityUpdatePending": "{count} actualización de seguridad",
|
||
"securityUpdatesPending": "{count} actualizaciones de seguridad",
|
||
"fullListInside": "Lista completa disponible dentro del contenedor:",
|
||
"loadingMountPoints": "Cargando puntos de montaje..."
|
||
},
|
||
"errors": {
|
||
"unknown": "Error desconocido",
|
||
"backupStartFailed": "No se pudo iniciar la copia de seguridad: {message}",
|
||
"controlFailed": "Error en {action} VM {vmid}: {message}",
|
||
"saveNotesFailed": "Error al guardar notas. Por favor inténtalo de nuevo."
|
||
},
|
||
"backupModal": {
|
||
"title": "Copia de seguridad {type} {vmid} ({name})",
|
||
"description": "Configure las opciones de copia de seguridad para este {type}",
|
||
"storage": "Almacenamiento",
|
||
"selectStorage": "Seleccionar almacenamiento",
|
||
"free": "gratis",
|
||
"mode": "Modo",
|
||
"notification": "Notificación",
|
||
"useGlobalSettings": "Usar configuración global",
|
||
"alwaysNotify": "Notificar siempre",
|
||
"notifyOnFailure": "Notificar en caso de falla",
|
||
"neverNotify": "Nunca notificar",
|
||
"protected": "Protegido (evitar eliminación accidental)",
|
||
"pbsChangeMode": "Modo de detección de cambio de PBS",
|
||
"forPbsStorage": "para almacenamiento de PBS",
|
||
"notes": "Notas",
|
||
"variables": "Variables: {{cluster}}, {{guestname}}, {{node}}, {{vmid}}",
|
||
"creating": "Creando...",
|
||
"submit": "Respaldo",
|
||
"typeContainer": "recipiente",
|
||
"typeVirtualMachine": "máquina virtual",
|
||
"modes": {
|
||
"snapshot": "Instantánea",
|
||
"suspend": "Suspender",
|
||
"stop": "Detener"
|
||
},
|
||
"changeModes": {
|
||
"default": "Por defecto",
|
||
"legacy": "Legado",
|
||
"data": "Datos"
|
||
}
|
||
},
|
||
"firewall": {
|
||
"title": "Registros de cortafuegos",
|
||
"refresh": "Refrescar",
|
||
"loading": "Cargando registro del cortafuegos...",
|
||
"disabledTitle": "El cortafuegos no está habilitado para este {type}",
|
||
"disabledHint": "Habilítelo en la interfaz de usuario de Proxmox en {type} -> Firewall -> Opciones y agregue al menos una regla con registro: información o superior para que los paquetes comiencen a registrarse. Las nuevas entradas aparecerán aquí automáticamente en la próxima actualización.",
|
||
"readFailed": "No se pudo leer el registro del cortafuegos",
|
||
"empty": "Aún no se han registrado eventos del cortafuegos.",
|
||
"emptyHint": "Las reglas con log: info o superior completarán esta vista a medida que lleguen los paquetes."
|
||
},
|
||
"options": {
|
||
"title": "Opciones",
|
||
"snapshotBefore": "Instantánea antes de aplicar",
|
||
"snapshotOn": "— el {storage}",
|
||
"noSnapshot": "Sin instantánea previa a la solicitud",
|
||
"restartAfter": "Reinicie el contenedor después de aplicar.",
|
||
"noRestart": "Sin reinicio posterior a la aplicación",
|
||
"snapshotLabel": "Instantánea del contenedor antes de aplicar (vzdump)",
|
||
"appliesToBoth": "Aplica para ejecuciones manuales + programadas.",
|
||
"backupStorage": "Almacenamiento de respaldo",
|
||
"pickStorage": "Elige un almacenamiento",
|
||
"editButton": "Editar",
|
||
"cancelButton": "Cancelar",
|
||
"saveButton": "Ahorrar",
|
||
"storageAuto": "auto"
|
||
},
|
||
"scheduled": {
|
||
"title": "Actualizaciones programadas",
|
||
"enabledHelper": "Se ejecuta en segundo plano usando las opciones de aplicación anteriores.",
|
||
"disabledHelper": "Habilite la ejecución de actualizaciones automáticamente según una programación cron.",
|
||
"chipLabel": "Cronograma",
|
||
"disabledSuffix": "(desactivado)",
|
||
"whatLabel": "Qué:",
|
||
"targetOs": "Paquetes de sistema operativo",
|
||
"targetApp": "Solicitud",
|
||
"targetBoth": "SO + aplicación",
|
||
"lastRun": "Última ejecución: {date}",
|
||
"runSuccess": "✓ éxito",
|
||
"runFailed": "✗ falló",
|
||
"notScheduled": "No programado",
|
||
"frequency": "Frecuencia",
|
||
"cronExpression": "expresión cron",
|
||
"cronPlaceholder": "por ejemplo, 0 3 * * *",
|
||
"whatToUpdate": "Que actualizar",
|
||
"targetOptionOs": "Solo paquetes de sistema operativo",
|
||
"targetOptionApp": "Sólo aplicación",
|
||
"targetOptionBoth": "SO + aplicación",
|
||
"deleteButton": "Eliminar horario",
|
||
"deleteConfirm": "¿Eliminar las actualizaciones programadas para este contenedor? Se mantienen los valores predeterminados de aplicación (copia de seguridad + reinicio)."
|
||
},
|
||
"cronChip": {
|
||
"detected": "cron del host detectado",
|
||
"variantTteck": "tteck (legado)",
|
||
"variantCustom": "costumbre",
|
||
"variantCommunityScripts": "guiones comunitarios",
|
||
"scopeAptApk": "apt/apk en todos los CT",
|
||
"scopeUnknown": "alcance desconocido"
|
||
},
|
||
"cronPresets": {
|
||
"hourly": "Cada hora",
|
||
"dailyAt3": "Todos los días a las 3:00",
|
||
"dailyAtNoon": "Todos los días a las 12:00",
|
||
"weeklySun3": "Semanal (domingo 3:00)",
|
||
"monthly1st3": "Mensual (1º a las 3:00)",
|
||
"custom": "Cron personalizado..."
|
||
},
|
||
"updates": {
|
||
"osPackagesTitle": "Paquetes de sistema operativo",
|
||
"lastCheckedPrefix": "Última comprobación:",
|
||
"familyLabel": "Familia:",
|
||
"applyOsUpdate": "Aplicar actualización del sistema operativo",
|
||
"osUpToDate": "SO actualizado",
|
||
"installedByHelperPrefix": "Instalado por",
|
||
"helperScriptsName": "Proxmox Helper-Scripts",
|
||
"helperUpdatesRun": "— las actualizaciones ejecutan el asistente de scripts comunitarios.",
|
||
"installedPrefix": "instalado",
|
||
"upstreamAvailable": "versión {version} disponible",
|
||
"upToDateAt": "Al día en",
|
||
"applyUpdate": "Aplicar actualización",
|
||
"upToDate": "A hoy",
|
||
"runUpdater": "Ejecutar actualizador",
|
||
"terminalTitle": "Aplicar actualizaciones: CT {vmid}",
|
||
"terminalDescriptionOs": "Aplicando actualizaciones de paquetes del sistema operativo dentro del contenedor...",
|
||
"terminalDescriptionApp": "Ejecutando el actualizador de aplicaciones dentro del contenedor...",
|
||
"terminalDescriptionBoth": "Aplicando actualizaciones de paquetes y aplicaciones del sistema operativo dentro del contenedor...",
|
||
"terminalCompletedSuccessfully": "Actualizaciones completadas exitosamente",
|
||
"terminalCompletedWithError": "Las actualizaciones finalizaron con el código de error {code}",
|
||
"applyOsPlusApp": "Aplicar actualizaciones de SO + {appName}",
|
||
"applyOsPlusApps": "Aplicar actualizaciones de SO y aplicaciones",
|
||
"osPlusApp": "SO + actualizaciones {appName}",
|
||
"osPlusApps": "Actualizaciones de SO y aplicaciones",
|
||
"noUpdateMethodTitle": "No hay ningún método de actualización disponible",
|
||
"noUpdateMethodBody": "No hay ningún método de actualización disponible. Actualice desde la propia aplicación o configure un comando personalizado en la pestaña Aplicación.",
|
||
"ociImmutableTitle": "Contenedor de imágenes OCI",
|
||
"ociImmutableBody": "Los paquetes del sistema operativo se integran en el momento de crear la imagen y no se pueden actualizar en el lugar. Aplique las actualizaciones manualmente o reinstálelas con una imagen más nueva.",
|
||
"hideNoticeButton": "Ocultar este aviso para esta aplicación",
|
||
"noOsUpdatesPending": "No hay actualizaciones del sistema operativo pendientes",
|
||
"securityUpdateAria": "Actualización de seguridad",
|
||
"packagePendingLabel": "paquete pendiente",
|
||
"packagesPendingLabel": "paquetes pendientes",
|
||
"securityUpdateLabel": "actualización de seguridad",
|
||
"securityUpdatesLabel": "actualizaciones de seguridad",
|
||
"applicationDefaultName": "Solicitud",
|
||
"installedLabel": "instalado",
|
||
"upToDateAtLabel": "Al día en",
|
||
"versionTrackingPending": "Seguimiento de versiones pendiente: la próxima comprobación programada mostrará las versiones instalada y disponible.",
|
||
"customCommandTitle": "Comando de actualización personalizado",
|
||
"customCommandBody": "Ejecute un comando de shell definido por el usuario para actualizar esta aplicación dentro del contenedor.",
|
||
"noUpdaterConfiguredTitle": "No hay actualizador configurado",
|
||
"noUpdaterConfiguredBody": "Esta aplicación no tiene un instalador auxiliar ni un comando personalizado registrado.",
|
||
"hideNoticeAction": "Ocultar este aviso para {appName}",
|
||
"detectedByPrefix": "Detectado por",
|
||
"editApp": "Editar",
|
||
"alsoDetectedTitle": "También detectado en este contenedor:",
|
||
"detectedInline": "· detectado por {method}",
|
||
"customCommandLabel": "Comando de actualización personalizado",
|
||
"customCommandPlaceholder": "por ejemplo, cd /opt/<tu-aplicación> && git pull && systemctl restart <tu-aplicación>",
|
||
"removeButton": "Eliminar",
|
||
"cancelButton": "Cancelar",
|
||
"saveButton": "Ahorrar",
|
||
"editCommandButton": "Editar comando",
|
||
"wireUpCommandButton": "Agregar comando de actualización personalizado",
|
||
"versionTrackingPendingShort": "Seguimiento de versión pendiente.",
|
||
"noMethodBody": "No hay ningún método de actualización disponible. Actualice desde la propia aplicación o conecte un comando personalizado que ProxMenux ejecutará dentro del contenedor.",
|
||
"noMethodHideBody": "Esta aplicación no tiene ningún método de actualización registrado. Configure uno desde la pestaña Aplicación o ignore este aviso.",
|
||
"hideForApp": "Ocultar aviso para {appName}",
|
||
"applyOsAppsFooter": "Aplicar actualizaciones de SO + {appName}",
|
||
"applyOsAppsFooterPlural": "Aplicar actualizaciones de SO y aplicaciones",
|
||
"osAppsFooter": "SO + actualizaciones {appName}",
|
||
"osAppsFooterPlural": "Actualizaciones de SO y aplicaciones",
|
||
"noUpdatesAvailableChip": "No hay actualizaciones disponibles",
|
||
"managedApp": "aplicación administrada",
|
||
"managedBadge": "administrado",
|
||
"lastCheckedAt": "Última comprobación: {date}",
|
||
"tailscaleAvailable": "Tailscale v{version} disponible",
|
||
"updateToVersion": "Actualizar a v{version}",
|
||
"otherPackagePending": "+{count} otro paquete pendiente en el contenedor",
|
||
"otherPackagesPending": "+{count} otros paquetes pendientes en el contenedor",
|
||
"noManagedUpdateInfo": "Aún no hay información de actualización: verifique desde Seguridad → Secure Gateway.",
|
||
"ociTitle": "Contenedor de imágenes OCI",
|
||
"ociBody": "Este contenedor se creó a partir de una imagen OCI (Docker). La gestión de actualizaciones para contenedores OCI viene con la próxima función de instalación de OCI: las actualizaciones reconstruirán el contenedor a partir de una etiqueta de imagen más nueva en lugar de aplicar parches a los paquetes internos.",
|
||
"helperNotUpdateable": "El registro de scripts comunitarios marca esta aplicación como no actualizable.",
|
||
"helperDetectedTitle": "Detectado un actualizador de scripts auxiliares",
|
||
"helperDetectedBody": "La aplicación manual es la más segura."
|
||
},
|
||
"appEditor": {
|
||
"closePanel": "Cerrar panel",
|
||
"cancelButton": "Cancelar",
|
||
"saveButton": "Ahorrar",
|
||
"hideButton": "Esconder",
|
||
"hidePermanentlyTooltip": "Ocultar esta detección permanentemente",
|
||
"hiddenBadge": "Actualmente oculto: volverá a aparecer en la lista de detección",
|
||
"registerDifferent": "Registrar una aplicación diferente",
|
||
"detectedInContainer": "Detectado en este contenedor",
|
||
"installedManaged": "Instalado y administrado por ProxMenux",
|
||
"nameLabel": "Nombre",
|
||
"installedViaLabel": "Instalado a través de",
|
||
"installedVersionLabel": "Versión instalada",
|
||
"installedVersionRegexLabel": "Versión instalada de expresiones regulares (grupo de captura)",
|
||
"installedRegexPlaceholder": "por ejemplo, v?(\\d+\\.\\d+\\.\\d+)",
|
||
"installedRegexAlt": "install_regex",
|
||
"regexCaptureGroupLabel": "Regex (con grupo de captura)",
|
||
"regexPlaceholderVersion": "versión:\\s*(\\d+\\.\\d+\\.\\d+)",
|
||
"optionalSuffix": "(opcional)",
|
||
"methodNone": "Ninguno (solo enlace)",
|
||
"methodDpkg": "Paquete dpkg (Debian/Ubuntu)",
|
||
"methodApk": "paquete apk (alpino)",
|
||
"methodBinary": "Binario (ruta absoluta o nombre simple)",
|
||
"methodFile": "archivo + expresión regular",
|
||
"methodDockerLabel": "inspección acoplable (etiqueta OCI)",
|
||
"methodDockerExec": "docker exec (binario en contenedor)",
|
||
"methodPython": "distribución de Python (importlib.metadata)",
|
||
"methodCommand": "comando (avanzado - argv)",
|
||
"methodManual": "manual (escribo la versión)",
|
||
"packageIdentifierLabel": "Identificador de paquete",
|
||
"binaryPathLabel": "camino binario",
|
||
"binaryPathPlaceholder": "por ejemplo, /opt/<tu-aplicación>/binary",
|
||
"binaryPathBare": "Binario (ruta absoluta o nombre simple)",
|
||
"binaryPathBarePlaceholder": "por ejemplo, myapp (o ruta absoluta)",
|
||
"binaryArgsLabel": "Argumentos binarios (separados por comas, opcionales)",
|
||
"binaryArgsPlaceholder": "por ejemplo, --version (separado por comas)",
|
||
"filePathLabel": "Ruta del archivo",
|
||
"commandLabel": "Comando (argv separados por comas, sin shell)",
|
||
"commandPlaceholder": "miaplicación, versión, --json",
|
||
"commandServerExample": "servidor, -v",
|
||
"containerNameLabel": "Nombre del contenedor",
|
||
"containerNamePlaceholder": "por ejemplo, <nombre-de-su-contenedor>",
|
||
"ociLabelKeyLabel": "Clave de etiqueta OCI",
|
||
"ociLabelPlaceholder": "org.opencontainers.image.version",
|
||
"pythonInterpreterLabel": "Ruta del intérprete de Python",
|
||
"pythonInterpreterPlaceholder": "por ejemplo, /opt/<tu-aplicación>/venv/bin/python",
|
||
"pipDistLabel": "Nombre de distribución (paquete pip)",
|
||
"pipDistPlaceholder": "por ejemplo, <tu-paquete-pip>",
|
||
"upstreamSourceLabel": "Fuente de la versión disponible (opcional)",
|
||
"upstreamNone": "ninguna (no comprobar la versión disponible)",
|
||
"upstreamGithub": "repositorio de GitHub",
|
||
"upstreamHttp": "Punto final HTTP JSON",
|
||
"upstreamDocker": "Imagen de Docker Hub",
|
||
"githubRepoLabel": "repositorio de GitHub",
|
||
"githubRepoPlaceholder": "por ejemplo, propietario/nombre",
|
||
"githubRepoAlt": "propietario/nombre",
|
||
"githubSourceLabel": "fuente de GitHub",
|
||
"sourceReleases": "lanzamientos",
|
||
"sourceTags": "etiquetas",
|
||
"endpointUrlLabel": "URL de punto final",
|
||
"endpointUrlPlaceholder": "por ejemplo, https://vendor.example.com/api/latest.json",
|
||
"jsonPathLabel": "ruta JSON",
|
||
"jsonPathPlaceholder": "por ejemplo, data.version o lanzamientos[0].tag_name",
|
||
"dockerImageLabel": "Imagen de Docker Hub",
|
||
"dockerImagePlaceholder": "por ejemplo, linuxserver/plex o nginx",
|
||
"tagRegexLabel": "Etiquetar expresiones regulares (con grupo de captura)",
|
||
"tagRegexPlaceholder": "por ejemplo, v?(\\d+\\.\\d+\\.\\d+)",
|
||
"tagRegexBare": "v?(\\d+\\.\\d+\\.\\d+)",
|
||
"installedStatus": "Instalado",
|
||
"checkingStatus": "de cheques…",
|
||
"latestFromLabel": "Lo último de",
|
||
"upToDateBadge": "A hoy",
|
||
"updateAvailableBadge": "Actualización disponible",
|
||
"portDescriptionPlaceholder": "Descripción (por ejemplo, interfaz de usuario web, go2rtc, administrador)",
|
||
"portPortPlaceholder": "puerto",
|
||
"portHttp": "http",
|
||
"portHttps": "https",
|
||
"portLogoLabel": "URL del logotipo para este enlace (opcional)",
|
||
"portLogoPlaceholder": "por ejemplo, https://example.com/logo.webp",
|
||
"removePortTooltip": "Quitar puerto",
|
||
"detectMethodDpkg": "dp kg ·",
|
||
"detectMethodApk": "aplicación ·",
|
||
"detectMethodBinary": "binario ·",
|
||
"detectMethodFile": "archivo ·",
|
||
"detectMethodDockerLabel": "etiqueta acoplable",
|
||
"detectMethodDockerExec": "ejecutivo de ventana acoplable",
|
||
"detectMethodCommand": "dominio",
|
||
"binaryVersionHint": "binario --versión",
|
||
"systemctlHint": "systemctl show <servicio> -p ExecStart",
|
||
"whichHint": "cual <aplicación>",
|
||
"apkInfoHint": "\" : \"información de la aplicación | grep",
|
||
"grafanaNote": ". Grafana necesita",
|
||
"hiddenDetectionsHelpSingular": "Tienes {count} detección oculta. Restaure una para recuperarla o registre una aplicación personalizada manualmente.",
|
||
"hiddenDetectionsHelpPlural": "Tienes {count} detecciones ocultas. Restaure una para recuperarla o registre una aplicación personalizada manualmente.",
|
||
"registerCustom": "Registrar una aplicación personalizada",
|
||
"noAppsTitle": "No hay aplicaciones registradas",
|
||
"noAppsBody": "Registre las aplicaciones que se ejecutan en este contenedor. Obtendrá enlaces web y, opcionalmente, seguimiento de versiones disponibles y notificaciones de nuevos lanzamientos.",
|
||
"registerApplication": "Solicitud de registro",
|
||
"hiddenSuffix": "{count} oculto",
|
||
"confirmHide": "¿Ocultar la detección \"{name}\" permanentemente en este contenedor?\n\nPara recuperarlo más tarde, haga clic en \"Registrar una aplicación diferente\"; la lista oculta aparece allí con una opción de Restaurar.",
|
||
"saveFailed": "Error al guardar",
|
||
"tagFilterRegexOptional": "Expresión regular del filtro de etiquetas (opcional)",
|
||
"versionRegexOptional": "Versión de expresión regular (opcional)",
|
||
"top20Matches": "20 coincidencias principales: limite la consulta para obtener más",
|
||
"binaryArgsHintPrefix": "Dejar vacío por defecto es",
|
||
"binaryArgsHintGrafana": "Grafana necesita",
|
||
"loadFailed": "No se pudo cargar la configuración de la aplicación",
|
||
"checkFailed": "Verificación fallida",
|
||
"deleteFailed": "Error al eliminar",
|
||
"dismissFailed": "No se pudo descartar la detección",
|
||
"restoreFailed": "No se pudo restaurar la detección",
|
||
"managedApp": "aplicación administrada",
|
||
"managedStatus": "administrado",
|
||
"checkedAt": "Marcado {date}",
|
||
"latestUpstream": "Última versión disponible",
|
||
"loadingApplications": "Cargando aplicaciones…",
|
||
"nameSearchPlaceholder": "Escribe para buscar más de 700 aplicaciones o escribe la tuya propia",
|
||
"matchCount": "{count} coincidencias",
|
||
"catalogPort": "puerto {port}",
|
||
"trackingAvailable": "seguimiento disponible",
|
||
"logoUrlLabel": "URL del logotipo",
|
||
"webLinks": "Enlaces web",
|
||
"addPort": "Agregar puerto",
|
||
"detectedPorts": "Puertos detectados en el contenedor: haga clic para agregar:",
|
||
"noWebPorts": "No hay puertos web escuchando. Utilice Agregar puerto si aún desea crear un enlace manualmente.",
|
||
"trackUpstream": "Seguir versión disponible (opcional)",
|
||
"trackOff": "Desactivado: solo enlace",
|
||
"trackOn": "En · {method}",
|
||
"trackHelp": "Opcional. Si se activa, ProxMenux comprueba la versión instalada y la compara con la última disponible.",
|
||
"commandSafetyHelp": "Ejecuta el estilo argv dentro del CT como root, nunca a través de un shell. Usted es responsable de lo que hace el comando. Utilice install_regex a continuación para extraer la versión de la salida.",
|
||
"manualVersionHelp": "Escriba la versión instalada. Si configura abajo una fuente para la versión disponible, ProxMenux seguirá buscando actualizaciones. Tras actualizar la aplicación, vuelva aquí y actualice este valor.",
|
||
"upstreamHelp": "Cómo ProxMenux encuentra la última versión para compararla con la instalada.",
|
||
"githubRepoHelp": "Repositorio público de GitHub donde se publican lanzamientos o etiquetas.",
|
||
"httpJsonHelp": "Punto final JSON público que devuelve una versión en algún lugar de la carga útil.",
|
||
"jsonPathHelp": "Ruta de puntos con índices de matriz [N] opcionales.",
|
||
"restoreButton": "Restaurar",
|
||
"registerButton": "Registro",
|
||
"removeButton": "Eliminar",
|
||
"checkButton": "Controlar",
|
||
"editFieldsButton": "Editar campos",
|
||
"alsoDetectedContainer": "También detectado en este contenedor.",
|
||
"addAnotherApplication": "Agregar otra aplicación",
|
||
"doneButton": "Hecho",
|
||
"editButton": "Editar"
|
||
}
|
||
},
|
||
"settings": {
|
||
"title": "Ajustes",
|
||
"description": "Administre las preferencias de su panel de control",
|
||
"common": {
|
||
"health": "Salud",
|
||
"alerts": "Alertas"
|
||
},
|
||
"interfaceLanguage": {
|
||
"title": "Idioma de la interfaz",
|
||
"description": "Elija el idioma utilizado por el panel de Monitor. Las traducciones que faltan vuelven al inglés.",
|
||
"label": "Idioma del panel",
|
||
"fallbackNote": "El texto no traducido se muestra en inglés hasta que la comunidad lo completa.",
|
||
"statusComplete": "completo",
|
||
"statusPartial": "parcial",
|
||
"statusNeedsTranslation": "Se necesita traducción comunitaria."
|
||
},
|
||
"networkUnits": {
|
||
"title": "Unidades de red",
|
||
"description": "Cambiar cómo se muestra el tráfico de red",
|
||
"label": "Pantalla de unidad de red",
|
||
"bytes": "bytes",
|
||
"bits": "bits"
|
||
},
|
||
"healthMonitor": {
|
||
"title": "Monitor de salud",
|
||
"description": "Configure cuánto tiempo permanecen ocultas las alertas descartadas para cada categoría. Los cambios se aplican a las alertas descartadas existentes y futuras.",
|
||
"category": "Categoría",
|
||
"suppressionDuration": "Duración de la supresión",
|
||
"hours": "Horas",
|
||
"permanentNotice": "Las alertas de {category} permanecerán ocultas permanentemente después del despido.",
|
||
"temperatureSafetyNotice": "Aún aparecen alertas de temperatura crítica de la CPU para proteger el hardware.",
|
||
"longSuppressionNotice": "Largo período de supresión. Las alertas descartadas en esta categoría permanecerán ocultas durante mucho tiempo.",
|
||
"footerNote": "Esta configuración se aplica cuando descarta una advertencia del Monitor de salud. Las alertas de temperatura crítica de la CPU siempre aparecen para proteger su hardware.",
|
||
"activeSuppressions": "Supresiones activas",
|
||
"activeSuppressionsDescription": "Alertas que ha ocultado del Health Monitor. Los despidos definitivos sólo podrán revertirse aquí. La edición requiere el Monitor de salud",
|
||
"noActiveSuppressions": "Sin supresiones activas. Las alertas descartadas del Health Monitor aparecerán aquí.",
|
||
"permanent": "Permanente",
|
||
"daysRemaining": "{count}d restantes",
|
||
"hoursRemaining": "{count}h restantes",
|
||
"reEnableDisabledTitle": "Habilite el modo de edición de Health Monitor para volver a habilitarlo",
|
||
"reEnableQueuedTitle": "Cancelar volver a habilitar; no se aplicará al guardar",
|
||
"reEnableTitle": "Ponga en cola esta alerta para volver a habilitarla al guardar",
|
||
"reEnable": "Volver a habilitar",
|
||
"labels": {
|
||
"category": "categoría",
|
||
"severity": "gravedad",
|
||
"dismissed": "despedido"
|
||
},
|
||
"errorNames": {
|
||
"security_login_attempts": "Intentos de inicio de sesión de seguridad"
|
||
},
|
||
"options": {
|
||
"24h": "24 horas",
|
||
"3d": "3 dias",
|
||
"1w": "1 semana",
|
||
"1m": "1 mes",
|
||
"1y": "1 año",
|
||
"custom": "Costumbre",
|
||
"permanent": "Permanente"
|
||
},
|
||
"categories": {
|
||
"cpu": "Uso y temperatura de la CPU",
|
||
"memory": "Memoria y swap",
|
||
"storage": "Soportes de almacenamiento y espacio",
|
||
"disk": "E/S de disco y errores",
|
||
"network": "Interfaces de red",
|
||
"vms": "Máquinas virtuales y contenedores",
|
||
"services": "Servicios PVE",
|
||
"logs": "Registros del sistema",
|
||
"updates": "Actualizaciones del sistema",
|
||
"security": "Seguridad y certificados",
|
||
"temperature": "Temperatura"
|
||
}
|
||
},
|
||
"remoteStorage": {
|
||
"title": "Exclusiones de almacenamiento remoto",
|
||
"description": "Excluya los almacenamientos remotos (PBS, NFS, CIFS, etc.) del seguimiento del estado y las notificaciones. Úselo para almacenamientos que están intencionalmente fuera de línea o que tienen acceso API limitado.",
|
||
"emptyTitle": "No se detectaron almacenamientos remotos",
|
||
"emptyDescription": "PBS, NFS, CIFS y otros almacenamientos remotos aparecerán aquí cuando se configuren",
|
||
"storage": "Almacenamiento",
|
||
"offline": "Sin conexión o no disponible",
|
||
"namespaceRestricted": "Accesible; tamaño del almacén de datos oculto por ACL",
|
||
"healthHelp": "Cuando está APAGADO, este almacenamiento no activará advertencias ni alertas críticas en Health Monitor.",
|
||
"alertsHelp": "Cuando esté APAGADO, no se enviarán notificaciones para este almacenamiento."
|
||
},
|
||
"networkInterfaces": {
|
||
"title": "Exclusiones de interfaz de red",
|
||
"description": "Excluya las interfaces de red (puentes, enlaces, NIC físicas) del monitoreo y las notificaciones de estado. Úselo para interfaces que están deshabilitadas o no utilizadas intencionalmente.",
|
||
"emptyTitle": "No se detectaron interfaces de red",
|
||
"interface": "Interfaz",
|
||
"down": "ABAJO",
|
||
"excluded": "excluido",
|
||
"noIp": "Sin IP",
|
||
"healthHelp": "Cuando está APAGADA, esta interfaz no activará advertencias ni alertas críticas en Health Monitor.",
|
||
"alertsHelp": "Cuando esté APAGADO, no se enviarán notificaciones para esta interfaz."
|
||
},
|
||
"snippets": {
|
||
"title": "Almacenamiento de hookscripts",
|
||
"description": "Donde ProxMenux instala los hookscripts, como el de protección para el passthrough de GPU en VM/LXC. En un clúster, elija almacenamiento compartido para que las VM y los LXC migren correctamente entre nodos;",
|
||
"localNote": "es específico del nodo y rompe la migración.",
|
||
"placeholder": "Elija un almacenamiento...",
|
||
"footer": "Las VM/LXC que ya usan el almacenamiento anterior seguirán funcionando. Solo las nuevas operaciones de passthrough de GPU o la ejecución de \"sync hookscripts\" en el host usarán la nueva selección."
|
||
},
|
||
"lxcUpdateDetection": {
|
||
"title": "Detección de actualización de LXC",
|
||
"descriptionStart": "Verifique periódicamente los contenedores de Debian/Ubuntu/Alpine LXC en ejecución para ver si hay actualizaciones de paquetes pendientes",
|
||
"descriptionEnd": "y colóquelos en el tablero. La alternancia de notificación correspondiente en Notificaciones -> Servicios aparece solo cuando la detección está habilitada.",
|
||
"enableLabel": "Habilitar la detección de actualizaciones de LXC",
|
||
"loadFailed": "No se pudo cargar la configuración de detección de actualizaciones de LXC.",
|
||
"saveFailed": "No se pudo guardar la configuración de detección de actualizaciones de LXC.",
|
||
"purgedMessage": "{count} Entradas LXC eliminadas del registro. Al volver a habilitar la detección, se volverán a llenar en el siguiente ciclo de escaneo."
|
||
},
|
||
"notifications": {
|
||
"title": "Notificaciones",
|
||
"description": "Configure canales de notificación y filtros de eventos. Recibe alertas vía Telegram, Gotify, Discord o Email.",
|
||
"disabledDescription": "Reciba alertas en tiempo real sobre su entorno Proxmox a través de Telegram, Discord, Gotify o correo electrónico.",
|
||
"enableService": "Habilitar el servicio de notificaciones",
|
||
"enableServiceDescription": "Supervise el estado del sistema, los eventos de VM/CT, las copias de seguridad, las alertas de seguridad y el estado del clúster. La integración del webhook PVE se configura automáticamente.",
|
||
"enableButton": "Habilitar notificaciones",
|
||
"configuring": "Configurando...",
|
||
"webhookConfigured": "Webhook PVE configurado automáticamente. Proxmox enviará notificaciones a ProxMenux.",
|
||
"webhookFailed": "Error en la configuración automática de PVE: {error}",
|
||
"webhookManualSetup": "Las notificaciones están habilitadas. Ejecute los siguientes comandos en el host PVE para completar la configuración del webhook.",
|
||
"serviceRunning": "Servicio en ejecución",
|
||
"serviceStopped": "Servicio detenido",
|
||
"sentLast24h": "{count} enviado en las últimas 24h",
|
||
"channelCountOne": "{count} canal",
|
||
"channelCountMany": "{count} canales",
|
||
"activateService": "Activar el servicio de notificaciones",
|
||
"channels": "Canales",
|
||
"test": {
|
||
"sent": "Notificación de prueba enviada correctamente.",
|
||
"failed": "La notificación de prueba falló."
|
||
},
|
||
"errors": {
|
||
"saveFailed": "No se pudo guardar la configuración de notificaciones.",
|
||
"unknown": "Error desconocido",
|
||
"setupUnavailable": "No se pudo comunicar con el servicio de configuración."
|
||
},
|
||
"categories": {
|
||
"vm_ct": {
|
||
"label": "VM / TC"
|
||
},
|
||
"backup": {
|
||
"label": "Copias de seguridad"
|
||
},
|
||
"resources": {
|
||
"label": "Recursos"
|
||
},
|
||
"storage": {
|
||
"label": "Almacenamiento"
|
||
},
|
||
"network": {
|
||
"label": "Red"
|
||
},
|
||
"security": {
|
||
"label": "Seguridad"
|
||
},
|
||
"cluster": {
|
||
"label": "Grupo"
|
||
},
|
||
"services": {
|
||
"label": "Servicios"
|
||
},
|
||
"health": {
|
||
"label": "Monitor de salud"
|
||
},
|
||
"updates": {
|
||
"label": "Actualizaciones"
|
||
},
|
||
"other": {
|
||
"label": "Otro"
|
||
}
|
||
},
|
||
"eventTypes": {
|
||
"state_change": "El estado de salud cambió",
|
||
"new_error": "Nuevo problema de salud",
|
||
"error_resolved": "Notificación de recuperación",
|
||
"error_escalated": "El problema de salud se agravó",
|
||
"health_degraded": "Control de salud degradado",
|
||
"lxc_updates_available": "Actualizaciones de LXC disponibles (experimentales)",
|
||
"vm_start": "VM iniciada",
|
||
"vm_start_warning": "VM iniciada (advertencias)",
|
||
"vm_stop": "VM detenida",
|
||
"vm_shutdown": "VM apagada",
|
||
"vm_fail": "La máquina virtual falló",
|
||
"vm_restart": "VM reiniciada",
|
||
"ct_start": "TC iniciada",
|
||
"ct_start_warning": "CT iniciado (advertencias)",
|
||
"ct_stop": "TC detenida",
|
||
"ct_shutdown": "TC apagado",
|
||
"ct_restart": "CT reiniciado",
|
||
"ct_fail": "TC falló",
|
||
"migration_start": "La migración comenzó",
|
||
"migration_complete": "Migración completa",
|
||
"migration_warning": "Migración completada con advertencias.",
|
||
"migration_fail": "La migración falló",
|
||
"replication_fail": "La replicación falló",
|
||
"replication_complete": "Replicación completa",
|
||
"backup_start": "Copia de seguridad iniciada",
|
||
"backup_complete": "Copia de seguridad completa",
|
||
"backup_warning": "Copia de seguridad completada con advertencias",
|
||
"backup_fail": "Error en la copia de seguridad",
|
||
"host_backup_start": "Se inició la copia de seguridad del host",
|
||
"host_backup_complete": "Copia de seguridad del host completa",
|
||
"host_backup_fail": "Error en la copia de seguridad del host",
|
||
"snapshot_complete": "Instantánea creada",
|
||
"snapshot_fail": "La instantánea falló",
|
||
"cpu_high": "Alto uso de CPU",
|
||
"ram_high": "Alto uso de memoria",
|
||
"temp_high": "Temperatura alta",
|
||
"disk_space_low": "Poco espacio en disco",
|
||
"disk_io_error": "Fallo de disco/error de E/S",
|
||
"storage_unavailable": "Almacenamiento no disponible",
|
||
"smart_test_complete": "Prueba SMART completada",
|
||
"smart_test_failed": "La prueba SMART falló",
|
||
"gpu_mode_switch": "Modo GPU cambiado",
|
||
"gpu_passthrough_blocked": "Paso de GPU bloqueado",
|
||
"pci_passthrough_conflict": "Conflicto de dispositivo PCIe",
|
||
"load_high": "Alta carga del sistema",
|
||
"network_down": "Se perdió la conectividad de red",
|
||
"network_latency": "Alta latencia de red",
|
||
"auth_fail": "Fallo de autenticación",
|
||
"ip_block": "IP bloqueada por Fail2Ban",
|
||
"firewall_issue": "Problema de cortafuegos detectado",
|
||
"user_permission_change": "Permiso de usuario cambiado",
|
||
"burst_auth_fail": "Ráfaga de fallos de autenticación",
|
||
"burst_ip_block": "Ráfaga de bloqueos de IP",
|
||
"burst_disk_io": "Ráfaga de errores de E/S de disco",
|
||
"burst_cluster": "Conexión de clúster aleteando",
|
||
"burst_service_fail": "Múltiples fallas de servicio",
|
||
"burst_system": "Múltiples problemas del sistema",
|
||
"burst_generic": "Múltiples eventos relacionados",
|
||
"split_brain": "Cerebro dividido detectado",
|
||
"node_disconnect": "Nodo desconectado",
|
||
"node_reconnect": "Nodo reconectado",
|
||
"system_startup": "Informe de inicio del sistema",
|
||
"system_shutdown": "Sistema apagándose",
|
||
"system_reboot": "Reinicio del sistema",
|
||
"system_restore_completed": "Restauración del host completada",
|
||
"system_problem": "Problema del sistema detectado",
|
||
"service_fail": "Servicio fallido",
|
||
"oom_kill": "Eliminación del proceso por falta de memoria",
|
||
"service_fail_batch": "Múltiples fallas de servicio",
|
||
"cron_output": "Salida del trabajo cron",
|
||
"system_mail": "Smartd / correo del sistema",
|
||
"webhook_test": "prueba de webhook",
|
||
"update_available": "Actualizaciones disponibles (heredadas)",
|
||
"unknown_persistent": "Verificar no disponible",
|
||
"health_persistent": "Problemas de salud activos (diarios)",
|
||
"health_issue_new": "Nuevo problema de salud",
|
||
"health_issue_resolved": "Problema de salud resuelto",
|
||
"update_summary": "Actualizaciones disponibles",
|
||
"pve_update": "Actualización de Proxmox VE disponible",
|
||
"update_complete": "Actualización completada",
|
||
"ai_model_migrated": "Modelo de IA actualizado automáticamente",
|
||
"proxmenux_update": "Actualización de ProxMenux disponible",
|
||
"mount_stale": "El montaje remoto está obsoleto",
|
||
"mount_readonly": "El montaje remoto es de solo lectura",
|
||
"lxc_disk_low": "Rootfs de LXC casi llenos",
|
||
"vm_disk_low": "Sistemas de archivos VM casi llenos",
|
||
"lxc_mount_low": "Soporte LXC casi lleno",
|
||
"pve_storage_full": "Almacenamiento PVE casi lleno",
|
||
"zfs_pool_full": "Grupo ZFS casi lleno",
|
||
"post_install_update": "Actualizaciones de optimización de ProxMenux disponibles",
|
||
"secure_gateway_update_available": "Actualización de Secure Gateway disponible",
|
||
"nvidia_driver_update_available": "Actualización del controlador NVIDIA disponible",
|
||
"coral_driver_update_available": "Actualización del controlador Coral TPU disponible"
|
||
},
|
||
"ui": {
|
||
"quietHours": "Horas tranquilas",
|
||
"quietHoursDescription": "Durante esta ventana solo los eventos CRÍTICOS llegan a este canal.",
|
||
"from": "De",
|
||
"until": "Hasta",
|
||
"quietSameTime": "Establezca una hora de inicio y finalización diferente para la activación.",
|
||
"quietActive": "Activo ahora: solo pasan eventos CRÍTICOS hasta el {time}.",
|
||
"quietInactive": "Inactivo ahora: comienza en {time}.",
|
||
"nextDigest": "Siguiente resumen en {hours}h {minutes}m (en {time}).",
|
||
"dailyDigest": "Resumen diario de eventos INFO",
|
||
"dailyDigestDescription": "Los eventos INFO se acumulan durante el día y llegan una vez como resumen. Los eventos CRÍTICOS y de ADVERTENCIA nunca se retrasan.",
|
||
"sendAt": "Enviar a",
|
||
"notificationCategories": "Categorías de notificación",
|
||
"enableTelegram": "Habilitar telegrama",
|
||
"setupGuide": "+guía de configuración",
|
||
"botToken": "Ficha de robot",
|
||
"chatId": "ID de chat",
|
||
"topicId": "ID de tema",
|
||
"optional": "opcional",
|
||
"topicHint": "Para supergrupos con temas habilitados. Déjelo vacío para chats habituales.",
|
||
"richMessages": "Mensajes ricos",
|
||
"richMessagesDescription": "Enriquece las notificaciones con emojis e íconos contextuales",
|
||
"sendTest": "Enviar prueba",
|
||
"enableGotify": "Habilitar Gotify",
|
||
"serverUrl": "URL del servidor",
|
||
"appToken": "Ficha de aplicación",
|
||
"enableDiscord": "Habilitar discordia",
|
||
"webhookUrl": "URL de webhook",
|
||
"enableEmail": "Habilitar correo electrónico",
|
||
"smtpHost": "servidor SMTP",
|
||
"port": "Puerto",
|
||
"tlsMode": "modo TLS",
|
||
"noTls": "Ninguno (puerto 25)",
|
||
"username": "Nombre de usuario",
|
||
"password": "Contraseña",
|
||
"appPassword": "Contraseña de la aplicación",
|
||
"fromAddress": "De la dirección",
|
||
"toAddresses": "A direcciones (separadas por comas)",
|
||
"subjectPrefix": "Prefijo de asunto",
|
||
"emailHint": "Deje el host SMTP vacío para usar sendmail local. Para Gmail, utilice una contraseña de aplicación.",
|
||
"enableApprise": "Habilitar información",
|
||
"urlFormats": "+formatos de URL",
|
||
"appriseUrl": "Informar URL",
|
||
"showUrl": "Mostrar URL",
|
||
"hideUrl": "Ocultar URL",
|
||
"appriseDescription": "Una URL permite a Apprise enrutar la notificación al servicio correcto. Ejemplos:",
|
||
"seeThe": "Ver el",
|
||
"fullList": "lista completa",
|
||
"displayName": "Nombre para mostrar",
|
||
"systemHostname": "Nombre de host del sistema",
|
||
"displayNameHint": "Nombre que se muestra en las notificaciones. Edítelo o déjelo vacío para usar el nombre de host del sistema.",
|
||
"activeFooter": "Las notificaciones están activas. Cada canal sigue su propia categoría y selección de eventos.",
|
||
"inactiveFooter": "Habilite notificaciones para recibir alertas del sistema, de salud y de seguridad a través de los canales configurados."
|
||
},
|
||
"ai": {
|
||
"title": "mejora de la IA",
|
||
"enhancedMessages": "Mensajes mejorados por IA",
|
||
"enhancedMessagesDescription": "Utilice IA para generar mensajes de notificación contextuales",
|
||
"provider": "Proveedor",
|
||
"customBaseUrl": "URL base personalizada",
|
||
"customBaseUrlPlaceholder": "Déjelo vacío para OpenAI o ingrese un punto final personalizado",
|
||
"customBaseUrlHint": "Para API compatibles con OpenAI como BytePlus, LocalAI, LM Studio o vLLM.",
|
||
"apiKey": "clave API",
|
||
"model": "Modelo",
|
||
"promptMode": "Modo rápido",
|
||
"defaultPrompt": "Mensaje predeterminado",
|
||
"customPrompt": "Mensaje personalizado",
|
||
"language": "Idioma",
|
||
"selectLanguage": "Seleccionar idioma",
|
||
"detailLevel": "Nivel de detalle por canal",
|
||
"suggestions": "sugerencias de IA",
|
||
"suggestionsDescription": "Permitir que AI agregue breves consejos para la solución de problemas según el contexto del registro",
|
||
"customPromptPlaceholder": "Ingrese sus instrucciones personalizadas para la IA...",
|
||
"testing": "Pruebas…",
|
||
"testConnection": "Conexión de prueba",
|
||
"ollamaUrl": "URL de Ollama",
|
||
"getKey": "Obtener clave",
|
||
"loadModelsPlaceholder": "Haga clic en Cargar para buscar modelos",
|
||
"selectModel": "Seleccionar modelo",
|
||
"noModelsLoaded": "No hay modelos cargados: haga clic en Cargar",
|
||
"noModelSelected": "Seleccione un modelo primero. Haga clic en Cargar para buscar los modelos disponibles.",
|
||
"load": "Carga",
|
||
"modelsAvailable": "{count} modelos disponibles",
|
||
"detailHint": "La IA traduce y formatea las notificaciones en el idioma seleccionado. Cada canal puede utilizar un nivel de detalle diferente.",
|
||
"beta": "BETA",
|
||
"export": "Exportar",
|
||
"import": "Importar",
|
||
"communityPrompts": "Indicaciones de la comunidad",
|
||
"customPromptHint": "Defina sus propias reglas y formato. Tú controlas el detalle y el estilo de todas las notificaciones. Exporte el mensaje para compartirlo o importe uno de la comunidad.",
|
||
"local": "Local",
|
||
"detailLevels": {
|
||
"brief": "Breve",
|
||
"standard": "Estándar",
|
||
"detailed": "Detallado"
|
||
},
|
||
"providersInfo": "Información del proveedor de IA",
|
||
"loadModelsHint": "Haga clic en Cargar para obtener los modelos disponibles de este proveedor.",
|
||
"openAiCompatible": "API compatibles con OpenAI",
|
||
"openAiCompatibleDescription": "Establezca una URL base personalizada para utilizar una API compatible con OpenAI. Supported services include:",
|
||
"anyOpenAiService": "Cualquier servicio que utilice el formato OpenAI",
|
||
"providers": {
|
||
"groq": "Muy rápido, con un generoso nivel gratuito. Un buen lugar para empezar.",
|
||
"openai": "Estándar de la industria, preciso y ampliamente utilizado.",
|
||
"anthropic": "Excelente para escribir y traducir; rápido y económico.",
|
||
"gemini": "Hay disponible un nivel gratuito, con una buena relación calidad-precio.",
|
||
"ollama": "Utiliza modelos en su servidor Ollama. Totalmente local, privado y gratuito.",
|
||
"openrouter": "Acceso a más de 100 modelos a través de una clave API."
|
||
}
|
||
},
|
||
"telegramGuide": {
|
||
"title": "Guía de configuración del bot de Telegram",
|
||
"createBot": "Crea un bot con BotFather",
|
||
"create1": "1. Abre Telegram y busca",
|
||
"create2": "2. Envía el comando",
|
||
"create3": "3. Elija un nombre para el bot, por ejemplo Notificaciones ProxMenux.",
|
||
"create4": "4. Elija un nombre de usuario que termine en bot, por ejemplo proxmenux_alerts_bot.",
|
||
"getToken": "Obtén el token del bot",
|
||
"tokenIntro": "Después de crear el bot, BotFather te da un token como este:",
|
||
"tokenPaste": "Copie el token y péguelo en el campo Bot Token.",
|
||
"getChatId": "Obtenga su ID de chat",
|
||
"optionA": "Opción A: usar un bot (la más fácil)",
|
||
"chat1": "1. Encuentra",
|
||
"or": "o",
|
||
"chat2": "2. Enviar cualquier mensaje; el bot responde con tu ID de chat.",
|
||
"optionB": "Opción B: método manual",
|
||
"manual1": "1. Envía un mensaje a tu nuevo bot.",
|
||
"manual2": "2. Abra esta URL en su navegador y reemplace YOUR_TOKEN:",
|
||
"manual3": "3. Encuentre este valor; su número es su ID de chat:",
|
||
"groups": "Grupos y canales",
|
||
"group1": "1. Agrega el bot al grupo o canal como administrador.",
|
||
"group2": "2. Envía un mensaje en el grupo.",
|
||
"group3": "3. Utilice la URL getUpdates anterior para encontrar el ID de chat del grupo.",
|
||
"group4": "4. Los ID de grupo son números negativos, por ejemplo",
|
||
"summary": "Resumen rápido",
|
||
"summaryToken": "Identifica tu bot (de BotFather)",
|
||
"summaryChat": "Le dice al bot dónde enviar mensajes (su ID o un ID de grupo)"
|
||
},
|
||
"validation": {
|
||
"discordWebhook": "Ingrese una URL de webhook de Discord en el formato https://discord.com/api/webhooks/<id>/<token>.",
|
||
"invalidUrl": "Introduzca una URL válida.",
|
||
"unsupportedScheme": "Sólo se permite una dirección que comience con http:// o https://.",
|
||
"localPveApi": "La dirección no puede apuntar a la API PVE local (localhost:8006/8007).",
|
||
"metadataIp": "La IP de metadatos del enlace local no se puede utilizar como punto final de Gotify."
|
||
},
|
||
"customPromptInfo": {
|
||
"title": "Modo de aviso personalizado",
|
||
"description": "Cree su propio mensaje de IA para las notificaciones de ProxMenux Monitor",
|
||
"whatTitle": "¿Qué es un aviso personalizado?",
|
||
"whatDescription": "El mensaje define cómo la IA formatea sus notificaciones. Un mensaje personalizado le permite controlar el estilo, el nivel de detalle y el formato de cada mensaje.",
|
||
"requirements": "Requisitos importantes",
|
||
"formatIntro": "Su mensaje debe utilizar este formato de salida:",
|
||
"formatTitleThen": "seguido del título, luego",
|
||
"formatBodyThen": "seguido del mensaje",
|
||
"plainText": "Utilice solo texto sin formato, sin Markdown, para que el resultado funcione en todos los canales.",
|
||
"rawData": "El mensaje recibe datos sin procesar del evento Proxmox como entrada.",
|
||
"language": "Defina el idioma de salida en el mensaje. El selector de idioma solo se aplica al modo predeterminado.",
|
||
"gettingStarted": "Empezando",
|
||
"gettingStartedDescription": "Un mensaje de ejemplo está listo para ayudarle a comenzar. Puede ajustarlo, exportarlo para compartirlo con otros o importar un mensaje de la comunidad.",
|
||
"loadExample": "Cargar ejemplo",
|
||
"startFromScratch": "Empezar desde el principio"
|
||
}
|
||
},
|
||
"optimizations": {
|
||
"title": "ProxMenux Optimizations",
|
||
"description": "Optimizaciones del sistema y utilidades instaladas a través de ProxMenux",
|
||
"emptyTitle": "Aún no se han instalado optimizaciones de ProxMenux",
|
||
"emptyDescription": "Ejecute ProxMenux para configurar optimizaciones del sistema",
|
||
"installedTools": "Herramientas instaladas",
|
||
"activeCount": "{count} activo",
|
||
"viewUpdates": "Ver actualizaciones disponibles",
|
||
"updateCount": "{count} actualizaciones",
|
||
"updateOneTitle": "Actualización: {name}",
|
||
"updateManyTitle": "Actualizar {count} optimizaciones",
|
||
"updateOneDescription": "Volver a ejecutar {functionName} desde el flujo {source}.",
|
||
"updateManyDescription": "Volver a ejecutar {count} funciones posteriores a la instalación en secuencia.",
|
||
"legacySourceTitle": "Optimización heredada: haga clic para ver la fuente",
|
||
"sourceTitle": "Haga clic para ver el código fuente",
|
||
"legacy": "legado",
|
||
"updateToolTitle": "Actualizar {name} a v{version}",
|
||
"availableUpdates": "Actualizaciones disponibles",
|
||
"availableUpdatesDescription": "Las {count} optimizaciones se pueden actualizar a una versión más reciente.",
|
||
"selectedCount": "{selected} de {total} seleccionado",
|
||
"updateSelected": "Actualización seleccionada"
|
||
},
|
||
"healthThresholds": {
|
||
"title": "Umbrales del monitor de salud",
|
||
"description": "Health Monitor y las notificaciones reaccionan cuando se cruzan estos límites. Arrastre el controlador ámbar para el nivel de advertencia y el controlador rojo para el nivel crítico. Los valores diferentes a la recomendación aparecen en azul; Coloque el cursor sobre un controlador para ver la recomendación o use Restablecer para restaurarla.",
|
||
"loadFailed": "No se pudieron cargar los umbrales.",
|
||
"invalidValue": "Valor no válido para {key}: debe ser un número",
|
||
"resetFailed": "Error al restablecer",
|
||
"networkErrorWhileResetting": "Error de red al restablecer",
|
||
"resetSectionConfirm": "¿Restablecer todos los umbrales \"{section}\" a los valores recomendados?",
|
||
"resetAllConfirm": "¿Restablecer TODOS los umbrales a los valores recomendados? Esto afecta a todas las secciones.",
|
||
"resetAllTitle": "Restablecer cada umbral a su valor recomendado",
|
||
"resetSectionTitle": "Restablecer esta sección a recomendada",
|
||
"recommended": "Recomendado",
|
||
"warning": "Advertencia",
|
||
"critical": "Crítico",
|
||
"ok": "DE ACUERDO",
|
||
"warn": "ADVERTIR",
|
||
"crit": "CRÍTICO",
|
||
"ram": "RAM",
|
||
"swapCriticalOnly": "Swap (solo nivel crítico)",
|
||
"sections": {
|
||
"cpu": {
|
||
"title": "uso de CPU"
|
||
},
|
||
"memory": {
|
||
"title": "Memoria y swap"
|
||
},
|
||
"cpu_temperature": {
|
||
"title": "temperatura de la CPU"
|
||
},
|
||
"disk_temperature": {
|
||
"title": "Temperatura del disco",
|
||
"description": "Umbrales por clase. Mismas unidades (°C), diferentes valores predeterminados porque cada clase tolera un rango diferente."
|
||
},
|
||
"host_storage": {
|
||
"title": "Espacio en disco - host",
|
||
"description": "Se aplica a / y a todos los puntos de montaje en /var/lib/vz, /mnt/*, etc."
|
||
},
|
||
"lxc_rootfs": {
|
||
"title": "Espacio en disco - rootfs LXC",
|
||
"description": "Disco raíz por contenedor, evaluado con respecto al tamaño de rootfs de PVE."
|
||
},
|
||
"lxc_mount": {
|
||
"title": "Puntos de montaje LXC",
|
||
"description": "Capacidad de puntos de montaje dentro de CT en ejecución (mp0, mp1, NFS, montajes vinculados). Excluye los rootfs; que se trata arriba."
|
||
},
|
||
"pve_storage": {
|
||
"title": "Capacidad de almacenamiento PVE",
|
||
"description": "Almacenamientos PVE estilo bloque: LVM, LVM-thin, ZFS-pool, RBD/Ceph, PBS. El almacenamiento estilo sistema de archivos ya está cubierto por los umbrales del disco host."
|
||
},
|
||
"zfs_pool": {
|
||
"title": "Capacidad del grupo ZFS",
|
||
"description": "Grupos ZFS a nivel de host, independientes del registro PVE, por lo que también se monitorean el rpool y los grupos de respaldo dedicados."
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"login": {
|
||
"subtitle": "Inicia sesión para acceder a tu panel de control",
|
||
"username": "Nombre de usuario",
|
||
"password": "Contraseña",
|
||
"usernamePlaceholder": "Ingrese su nombre de usuario",
|
||
"passwordPlaceholder": "Introduce tu contraseña",
|
||
"rememberMe": "Acuérdate de mí",
|
||
"missingCredentials": "Por favor ingrese nombre de usuario y contraseña",
|
||
"missingTotp": "Por favor ingresa tu código 2FA",
|
||
"invalidCredentials": "Nombre de usuario o contraseña incorrectos",
|
||
"invalidTotp": "Código 2FA incorrecto",
|
||
"tooManyAttempts": "Demasiados intentos de inicio de sesión. Espere un momento e inténtelo de nuevo.",
|
||
"loginFailed": "error de inicio de sesion",
|
||
"signingIn": "Iniciando sesión...",
|
||
"signIn": "Iniciar sesión",
|
||
"twoFactorTitle": "Autenticación de dos factores",
|
||
"twoFactorDescription": "Ingrese el código de 6 dígitos de su aplicación de autenticación",
|
||
"authenticationCode": "Código de autenticación",
|
||
"backupCodeHint": "También puedes utilizar un código de respaldo (formato: XXXX-XXXX)",
|
||
"backToLogin": "Volver a iniciar sesión",
|
||
"verifyCode": "Verificar código",
|
||
"version": "ProxMenux Monitor v1.2.4.1-beta"
|
||
},
|
||
"account": {
|
||
"signedIn": "Iniciado sesión",
|
||
"viewProfile": "Ver perfil",
|
||
"security": "Seguridad",
|
||
"signOut": "desconectar"
|
||
},
|
||
"authSetup": {
|
||
"choiceTitle": "Configurar la protección del panel",
|
||
"passwordTitle": "Crear contraseña",
|
||
"protectTitle": "¿Proteger su tablero?",
|
||
"protectDescription": "Agregue una capa adicional de seguridad para proteger sus datos de Proxmox cuando acceda desde redes no privadas.",
|
||
"setupPassword": "Sí, configurar contraseña",
|
||
"skipProtection": "No, continuar sin protección",
|
||
"enableLater": "Siempre puedes habilitar esto más tarde en Configuración",
|
||
"setupTitle": "Configurar autenticación",
|
||
"setupDescription": "Cree un nombre de usuario y contraseña para proteger su panel",
|
||
"fillFields": "Por favor complete todos los campos",
|
||
"passwordMismatch": "Las contraseñas no coinciden",
|
||
"passwordTooShort": "La contraseña debe tener al menos 6 caracteres.",
|
||
"skipFailed": "No se pudo omitir la autenticación",
|
||
"savePreferenceFailed": "No se pudo guardar la preferencia",
|
||
"setupFailed": "No se pudo configurar la autenticación",
|
||
"username": "Nombre de usuario",
|
||
"usernamePlaceholder": "Ingrese el nombre de usuario",
|
||
"password": "Contraseña",
|
||
"passwordPlaceholder": "Introduce la contraseña",
|
||
"confirmPassword": "confirmar Contraseña",
|
||
"confirmPasswordPlaceholder": "Confirmar Contraseña",
|
||
"profileOptional": "Perfil · opcional",
|
||
"displayName": "Nombre para mostrar",
|
||
"displayNamePlaceholder": "Se muestra encima del nombre de usuario en el menú.",
|
||
"displayNameHint": "Déjelo vacío para representar el nombre de usuario. Hasta 64 caracteres.",
|
||
"avatar": "Avatar",
|
||
"change": "Cambiar",
|
||
"chooseImage": "Elige imagen",
|
||
"clear": "Claro",
|
||
"avatarHint": "PNG, JPEG, WebP o GIF · hasta 2 MB · cuadrado precortado para obtener mejores resultados.",
|
||
"settingUp": "Configurando...",
|
||
"setupAuthentication": "Configurar autenticación",
|
||
"back": "Atrás"
|
||
},
|
||
"securityPage": {
|
||
"title": "Seguridad",
|
||
"description": "Proteja el acceso al Monitor y al host Proxmox desde un solo lugar.",
|
||
"values": {
|
||
"permanent": "Permanente",
|
||
"perm": "permanente",
|
||
"enabled": "Activado",
|
||
"disabled": "Desactivado",
|
||
"enable": "Permitir",
|
||
"disable": "Desactivar",
|
||
"enabledLower": "activado",
|
||
"disabledLower": "desactivado",
|
||
"clusterLower": "grupo",
|
||
"hostLower": "anfitrión",
|
||
"remove": "Eliminar",
|
||
"allow": "Permitir",
|
||
"delete": "Borrar",
|
||
"uninstall": "Desinstalar",
|
||
"uninstalling": "Desinstalando...",
|
||
"serviceRunning": "Servicio en ejecución",
|
||
"serviceNotRunning": "Servicio no funcionando",
|
||
"active": "Activo",
|
||
"inactive": "Inactivo",
|
||
"installed": "Instalado",
|
||
"notInstalled": "No instalado",
|
||
"notFound": "Extraviado",
|
||
"never": "Nunca",
|
||
"unknownDate": "fecha desconocida",
|
||
"system": "sistema",
|
||
"none": "Ninguno",
|
||
"external": "Externo",
|
||
"up": "Arriba",
|
||
"down": "Abajo"
|
||
},
|
||
"errors": {
|
||
"passwordMinLength": "La contraseña debe tener al menos 10 caracteres.",
|
||
"passwordComplexity": "Utilice al menos tres de estos: minúscula, mayúscula, número y símbolo.",
|
||
"passwordCommon": "Esta contraseña es demasiado común. Elija algo más difícil de adivinar.",
|
||
"fail2banUninstallFailed": "No se pudo desinstalar Fail2Ban",
|
||
"lynisUninstallFailed": "No se pudo desinstalar Lynis",
|
||
"unbanIpFailed": "No se pudo desbloquear la dirección IP",
|
||
"applyMissingJailsFailed": "No se pudieron agregar las protecciones faltantes",
|
||
"auditFailed": "La auditoría falló",
|
||
"startAuditFailed": "No se pudo iniciar la auditoría",
|
||
"updateJailConfigFailed": "No se pudo guardar la configuración de protección",
|
||
"invalidTrustedNetwork": "Ingrese una dirección IP válida o una red CIDR.",
|
||
"trustedNetworkExists": "Esta dirección IP o red ya es de confianza.",
|
||
"updateTrustedNetworksFailed": "No se pudieron actualizar las direcciones IP y redes confiables.",
|
||
"ruleNeedsPortOrSource": "Agregue primero un puerto de destino o una dirección de origen.",
|
||
"addRuleFailed": "No se pudo agregar la regla",
|
||
"deleteRuleFailed": "No se pudo eliminar la regla",
|
||
"updateRuleFailed": "No se pudo actualizar la regla",
|
||
"updateFirewallFailed": "No se pudo actualizar el cortafuegos",
|
||
"updateMonitorPortFailed": "No se pudo actualizar la regla del puerto de Monitor",
|
||
"fillAllFields": "Complete todos los campos.",
|
||
"passwordsDoNotMatch": "Las contraseñas no coinciden.",
|
||
"enableAuthFailed": "No se pudo habilitar la autenticación",
|
||
"authAlreadyConfigured": "La protección de inicio de sesión ya está configurada. Actualiza la página y vuelve a intentarlo.",
|
||
"disableAuthFailed": "No se pudo deshabilitar la autenticación",
|
||
"disableAuthRetry": "No se pudo deshabilitar la autenticación. Por favor inténtalo de nuevo.",
|
||
"newPasswordsDoNotMatch": "Las nuevas contraseñas no coinciden.",
|
||
"changePasswordFailed": "No se pudo cambiar la contraseña",
|
||
"invalidPassword": "La contraseña no es correcta.",
|
||
"enterPassword": "Ingrese su contraseña.",
|
||
"enter2faOrBackup": "Ingrese un código 2FA o un código de respaldo.",
|
||
"disable2faFailed": "No se pudo desactivar 2FA",
|
||
"invalid2faCode": "El código 2FA no es correcto.",
|
||
"enter2fa": "Ingrese un código 2FA.",
|
||
"revokeTokenFailed": "No se pudo revocar el token",
|
||
"generateTokenFailed": "No se pudo generar el token",
|
||
"noTokenReceived": "El servidor no devolvió ningún token.",
|
||
"generateTokenRetry": "No se pudo generar el token. Por favor inténtalo de nuevo.",
|
||
"configureSslFailed": "No se pudo configurar SSL",
|
||
"disableSslFailed": "No se pudo deshabilitar SSL",
|
||
"deleteReportFailed": "No se pudo eliminar el informe"
|
||
},
|
||
"messages": {
|
||
"fail2banUninstalled": "Fail2Ban fue desinstalado.",
|
||
"lynisUninstalled": "Lynis fue desinstalado.",
|
||
"ipUnbanned": "{ip} fue desbloqueado de la protección {jail}.",
|
||
"missingJailsApplied": "Se agregaron las protecciones que faltaban.",
|
||
"auditCompleted": "Auditoría de Lynis completada.",
|
||
"jailConfigUpdated": "Se guardaron los ajustes de protección.",
|
||
"trustedNetworkAdded": "Fail2Ban ahora confía en {value}.",
|
||
"trustedNetworkRemoved": "{value} se eliminó de las redes confiables.",
|
||
"trustedNetworkUpdated": "La entrada confiable se cambió a {value}.",
|
||
"ruleAdded": "Se añadió la regla del cortafuegos.",
|
||
"ruleDeleted": "Se eliminó la regla del cortafuegos.",
|
||
"ruleUpdated": "Se actualizó la regla del cortafuegos.",
|
||
"firewallUpdated": "El cortafuegos {level} ahora está {state}.",
|
||
"monitorPortAdded": "Se agregó la regla del puerto de monitor.",
|
||
"monitorPortRemoved": "Se eliminó la regla del puerto de monitor.",
|
||
"authEnabled": "La autenticación ahora está habilitada.",
|
||
"authDisabledReloading": "La autenticación está deshabilitada. Recargando...",
|
||
"passwordChanged": "Se cambió la contraseña.",
|
||
"twoFactorDisabled": "La autenticación de dos factores está deshabilitada.",
|
||
"tokenRevoked": "El token de API fue revocado.",
|
||
"apiTokenGenerated": "Se generó el token API.",
|
||
"sslEnabledRestarting": "HTTPS está habilitado. Reiniciando servicio...",
|
||
"sslDisabledRestarting": "HTTPS está deshabilitado. Reiniciando servicio...",
|
||
"reportDeleted": "Se eliminó el informe de auditoría.",
|
||
"twoFactorEnabled": "La autenticación de dos factores está habilitada."
|
||
},
|
||
"confirm": {
|
||
"disableAuth": "¿Desactivar la autenticación? Cualquiera que pueda alcanzar el tablero podrá abrirlo.",
|
||
"revokeToken": "¿Revocar este token API?",
|
||
"disableHttps": "¿Desactivar HTTPS y volver a HTTP simple?",
|
||
"deleteAuditReport": "¿Eliminar este informe de auditoría?",
|
||
"cannotBeUndone": "Esto no se puede deshacer."
|
||
},
|
||
"auth": {
|
||
"title": "Acceso y autenticación",
|
||
"description": "Controle quién puede abrir el panel de Monitor.",
|
||
"statusTitle": "Protección con contraseña",
|
||
"passwordEnabled": "El inicio de sesión con contraseña está habilitado.",
|
||
"noPasswordProtection": "El panel está actualmente abierto sin contraseña.",
|
||
"enableHint": "Agregue un nombre de usuario y contraseña antes de exponer este panel fuera de su red privada.",
|
||
"enable": "Habilitar autenticación",
|
||
"setupTitle": "Crear inicio de sesión",
|
||
"username": "Nombre de usuario",
|
||
"usernamePlaceholder": "administración",
|
||
"password": "Contraseña",
|
||
"passwordPlaceholder": "Introduce la contraseña",
|
||
"confirmPassword": "Confirmar Contraseña",
|
||
"confirmPasswordPlaceholder": "Ingrese la contraseña nuevamente",
|
||
"enabling": "Habilitando...",
|
||
"enableShort": "Permitir",
|
||
"changePassword": "Cambiar la contraseña",
|
||
"currentPassword": "Contraseña actual",
|
||
"currentPasswordPlaceholder": "Ingrese la contraseña actual",
|
||
"newPassword": "Nueva contraseña",
|
||
"newPasswordPlaceholder": "Ingrese una nueva contraseña",
|
||
"confirmNewPassword": "Confirmar nueva contraseña",
|
||
"confirmNewPasswordPlaceholder": "Ingrese la nueva contraseña nuevamente",
|
||
"changing": "Cambio...",
|
||
"enterYourPassword": "Introduce tu contraseña",
|
||
"disable": "Deshabilitar la autenticación"
|
||
},
|
||
"twoFactor": {
|
||
"title": "Autenticación de dos factores",
|
||
"hint": "Agregue un código de un solo uso desde una aplicación de autenticación después de la contraseña.",
|
||
"enable": "Habilitar 2FA",
|
||
"enabled": "2FA está habilitado.",
|
||
"disable": "Deshabilitar 2FA",
|
||
"disableTitle": "Deshabilitar la autenticación de dos factores",
|
||
"disableDescription": "Confirme con su contraseña y un código 2FA actual o un código de respaldo.",
|
||
"codeOrBackup": "Código 2FA o código de respaldo",
|
||
"codeOrBackupPlaceholder": "123456 o XXXX-XXXX",
|
||
"disabling": "Desactivando...",
|
||
"code": "código 2FA",
|
||
"codePlaceholder": "123456"
|
||
},
|
||
"ssl": {
|
||
"title": "SSL/HTTPS",
|
||
"description": "Cifre la conexión del panel cuando se abre en un navegador.",
|
||
"httpsEnabled": "HTTPS está habilitado.",
|
||
"httpNoSsl": "El panel utiliza HTTP simple.",
|
||
"usingCertificate": "Usando el certificado {source}.",
|
||
"proxmoxHost": "anfitrión Proxmox",
|
||
"custom": "costumbre",
|
||
"unencryptedHttp": "El tráfico no está cifrado a través de HTTP.",
|
||
"activeCertificate": "Certificado activo",
|
||
"cert": "Certificado",
|
||
"key": "clave privada",
|
||
"disabling": "Desactivando...",
|
||
"restarting": "Reiniciando...",
|
||
"disableHttps": "Deshabilitar HTTPS",
|
||
"proxmoxCertDetected": "Certificado Proxmox detectado",
|
||
"subject": "Sujeto",
|
||
"issuer": "Editor",
|
||
"expires": "Vence",
|
||
"selfSignedWarning": "Los certificados autofirmados pueden mostrar una advertencia en el navegador. Esto es normal para las configuraciones locales de Proxmox.",
|
||
"configuring": "Configurando...",
|
||
"useProxmoxCertificate": "Utilice el certificado Proxmox",
|
||
"noProxmoxCertificate": "No se detectó ningún certificado Proxmox.",
|
||
"useCustomCertificate": "Usar certificado personalizado",
|
||
"customPaths": "Rutas de certificados personalizadas",
|
||
"customPathsDescription": "Utilice archivos de claves y certificados existentes del host.",
|
||
"certificatePath": "Ruta del certificado",
|
||
"privateKeyPath": "Ruta de clave privada",
|
||
"enableHttps": "Habilitar HTTPS",
|
||
"restartTitle": "Se requiere reinicio del servicio",
|
||
"restartDescription": "Cambiar la configuración de HTTPS reinicia el servicio Monitor por un momento.",
|
||
"changesRestart": "La página puede desconectarse brevemente mientras se reinicia el servicio."
|
||
},
|
||
"apiTokens": {
|
||
"defaultName": "Ficha del panel de control",
|
||
"title": "Fichas API",
|
||
"description": "Cree tokens de larga duración para integraciones y automatización.",
|
||
"aboutTitle": "Acerca de los tokens API",
|
||
"validFor": "Los tokens siguen siendo válidos hasta que los revoques.",
|
||
"externalServices": "Úselos con herramientas externas en lugar de su contraseña.",
|
||
"authorizationHeader": "Envíe el token en el encabezado de Autorización.",
|
||
"seeGuideBefore": "Ver el",
|
||
"integrationsGuide": "guía de integraciones",
|
||
"seeGuideAfter": "para ejemplos.",
|
||
"generateNew": "Generar nuevo token",
|
||
"generateTitle": "Generar token API",
|
||
"generateDescription": "Ingrese su contraseña y código 2FA si está habilitado.",
|
||
"tokenName": "Nombre del token",
|
||
"tokenNamePlaceholder": "Panel de la página de inicio",
|
||
"generating": "Generando...",
|
||
"generate": "Generar ficha",
|
||
"yourToken": "Tu token API",
|
||
"saveTokenNow": "Guarde este token ahora.",
|
||
"tokenOnlyShownOnce": "Sólo se mostrará una vez.",
|
||
"token": "Simbólico",
|
||
"copied": "Copiado",
|
||
"howToUse": "como usarlo",
|
||
"addToHeaders": "Agregue este encabezado a sus solicitudes:",
|
||
"authorizationHeaderExample": "Autorización: Portador <token>",
|
||
"readmeExamples": "Consulte el archivo README para ver ejemplos de integración.",
|
||
"done": "Hecho",
|
||
"activeTokens": "Fichas activas",
|
||
"invalidRegenerate": "Si se pierde un token, revocarlo y generar uno nuevo.",
|
||
"legacy": "Legado",
|
||
"revoke": "Revocar",
|
||
"loading": "Cargando fichas...",
|
||
"empty": "Aún no hay tokens API."
|
||
},
|
||
"firewall": {
|
||
"title": "Cortafuegos",
|
||
"description": "Administre el estado del cortafuegos de Proxmox y reglas de acceso sencillas.",
|
||
"notDetectedTitle": "No se detectó el cortafuegos de Proxmox",
|
||
"notDetectedDescription": "Las herramientas del cortafuegos no están disponibles en este host.",
|
||
"clusterTitle": "Cortafuegos de clúster",
|
||
"clusterActive": "El cortafuegos del clúster está activo.",
|
||
"clusterDisabled": "El cortafuegos del clúster está deshabilitado.",
|
||
"hostTitle": "Cortafuegos del host",
|
||
"hostActive": "El cortafuegos del host está activo para este nodo.",
|
||
"clusterRequiredHint": "Habilite primero el cortafuegos del clúster y después el del host.",
|
||
"quickAccessRules": "Reglas de acceso rápido",
|
||
"port8008": "Monitorear el puerto 8008",
|
||
"port8006AlwaysAllowed": "El puerto Proxmox 8006 siempre está permitido.",
|
||
"builtIn": "Construido en",
|
||
"monitorPortWarning": "Mantenga el puerto 8008 permitido si accede al monitor desde otro dispositivo.",
|
||
"rulesOverview": "Descripción general de las reglas",
|
||
"totalRules": "reglas totales",
|
||
"accept": "Aceptar",
|
||
"blockReject": "Bloquear/rechazar",
|
||
"portsCovered": "Puertos cubiertos",
|
||
"drop": "Gota",
|
||
"reject": "Rechazar",
|
||
"cluster": "Grupo",
|
||
"host": "Anfitrión",
|
||
"rules": "{count} reglas",
|
||
"addRule": "Agregar regla",
|
||
"newRule": "Nueva regla",
|
||
"quickPresets": "Preajustes rápidos",
|
||
"incomingLower": "entrante",
|
||
"outgoingLower": "extrovertido",
|
||
"allowLower": "permitir",
|
||
"blockSilentlyLower": "bloquear silenciosamente",
|
||
"blockWithResponseLower": "bloquear con respuesta",
|
||
"destinationPortHint": "Por ejemplo 22, 80, 443 u 8008.",
|
||
"sourceAddressHint": "IP o CIDR opcional, por ejemplo 192.168.1.0/24.",
|
||
"anyInterface": "Cualquier interfaz",
|
||
"hostFirewallThisNode": "Cortafuegos del host para este nodo",
|
||
"clusterFirewallAllNodes": "Cortafuegos del clúster para todos los nodos",
|
||
"any": "Cualquier",
|
||
"anyLower": "cualquier",
|
||
"incoming": "Entrante",
|
||
"outgoing": "Extrovertido",
|
||
"saveChanges": "Guardar cambios",
|
||
"noRules": "Aún no hay reglas del cortafuegos.",
|
||
"noRulesHint": "Agregue una regla o use un ajuste preestablecido arriba.",
|
||
"fields": {
|
||
"direction": "Dirección",
|
||
"action": "Acción",
|
||
"protocol": "Protocolo",
|
||
"proto": "prototipo",
|
||
"destinationPort": "Puerto de destino",
|
||
"sourceAddress": "Dirección de origen",
|
||
"interfaceOptional": "Interfaz (opcional)",
|
||
"applyTo": "Referirse a",
|
||
"commentOptional": "Comentario (opcional)",
|
||
"port": "Puerto",
|
||
"source": "Fuente",
|
||
"level": "Nivel",
|
||
"interface": "Interfaz",
|
||
"comment": "Comentario",
|
||
"scope": "Alcance"
|
||
},
|
||
"placeholders": {
|
||
"destinationPort": "22, 80, 443",
|
||
"sourceAddress": "192.168.1.0/24",
|
||
"comment": "Para qué sirve esta regla",
|
||
"shortPort": "8008",
|
||
"ipOrCidr": "IP o CIDR",
|
||
"description": "Descripción"
|
||
},
|
||
"presets": {
|
||
"httpWeb": "red HTTP",
|
||
"httpsWeb": "Web HTTPS",
|
||
"sshRemoteAccess": "Acceso remoto SSH",
|
||
"smtpMail": "correo SMTP",
|
||
"icmpPing": "ping ICMP"
|
||
}
|
||
},
|
||
"fail2ban": {
|
||
"description": "Bloquee repetidos intentos fallidos de inicio de sesión contra SSH, Proxmox y el Monitor.",
|
||
"notInstalled": "Fail2Ban no está instalado.",
|
||
"notInstalledDescription": "Instálelo para bloquear automáticamente los inicios de sesión fallidos repetidos.",
|
||
"configureTitle": "El instalador configurará:",
|
||
"configureSsh": "Protección SSH",
|
||
"configureProxmox": "Protección de inicio de sesión de Proxmox",
|
||
"configureMonitor": "Supervisar la protección de inicio de sesión",
|
||
"configureGlobal": "Configuración básica de prohibición",
|
||
"customizeAfterInstall": "Puede ajustar cada protección después de la instalación.",
|
||
"installConfigure": "Instalar y configurar",
|
||
"jails": "Protecciones",
|
||
"bannedIps": "IP bloqueadas",
|
||
"totalBans": "Bloques totales",
|
||
"failedAttempts": "Intentos fallidos",
|
||
"missingProtectionsTitle": "Faltan algunas protecciones",
|
||
"missingProtectionsBefore": "Agregar protecciones faltantes para",
|
||
"applyMissingJails": "Agregar protecciones",
|
||
"permanentBan": "Bloqueo permanente",
|
||
"maxRetriesTitle": "Intentos fallidos antes de la prohibición",
|
||
"retries": "Límite de intentos",
|
||
"banDurationTitle": "¿Cuánto tiempo permanece prohibida la IP?",
|
||
"ban": "bloquear el tiempo",
|
||
"findTimeTitle": "Ventana de tiempo para contar los intentos fallidos",
|
||
"window": "Período",
|
||
"configureJailSettings": "Editar esta protección",
|
||
"configureJail": "Editar protección {jail}",
|
||
"maxRetries": "Reintentos máximos",
|
||
"failedAttemptsBeforeBan": "Intentos fallidos antes de que se bloquee la IP.",
|
||
"banTimeSeconds": "Tiempo de bloqueo (segundos)",
|
||
"permanentBanNeverExpires": "Bloqueo permanente, nunca caduca.",
|
||
"findTimeSeconds": "Encontrar tiempo (segundos)",
|
||
"timeWindowHint": "Los intentos fallidos se cuentan dentro de esta ventana.",
|
||
"commonValuesHint": "Valores comunes: 600 = 10 min, 3600 = 1 hora, -1 = permanente.",
|
||
"saveConfiguration": "Guardar configuración",
|
||
"banned": "Actualmente bloqueado",
|
||
"failedNow": "Falló ahora",
|
||
"totalFailed": "totales fallidos",
|
||
"bannedIpsWithCount": "IP bloqueadas ({count})",
|
||
"unban": "Desatascar",
|
||
"noBannedIps": "Actualmente no hay direcciones IP bloqueadas.",
|
||
"noJails": "No se encontraron protecciones.",
|
||
"noActivity": "Aún no hay actividad de Fail2Ban.",
|
||
"installationTitle": "Instalar Fail2Ban",
|
||
"installationDescription": "La terminal instalará Fail2Ban y configurará protecciones de inicio de sesión.",
|
||
"uninstallConfirmTitle": "¿Desinstalar Fail2Ban?",
|
||
"uninstallConfirmDescription": "Esto elimina el paquete Fail2Ban y sus archivos de protección creados por Monitor.",
|
||
"removeSshJail": "Eliminar la protección SSH",
|
||
"removeProxmoxProtection": "Quitar la protección Proxmox",
|
||
"removeMonitorProtection": "Quitar la protección del monitor",
|
||
"removeCustomJails": "Eliminar archivos de protección personalizados creados por el Monitor",
|
||
"removeAuthLogger": "Eliminar el registrador de autenticación de Monitor",
|
||
"jailLabels": {
|
||
"sshd": "SSH",
|
||
"proxmox": "Proxmox",
|
||
"proxmenux": "ProxMenux Monitor"
|
||
},
|
||
"jailDescriptions": {
|
||
"sshd": "Bloquea errores repetidos de inicio de sesión SSH.",
|
||
"proxmox": "Bloquea los errores repetidos de inicio de sesión en la interfaz de usuario de Proxmox.",
|
||
"proxmenux": "Bloquea los errores repetidos de inicio de sesión del Monitor."
|
||
},
|
||
"tabs": {
|
||
"jails": "Protecciones e IP bloqueadas",
|
||
"activity": "Actividad"
|
||
},
|
||
"activity": {
|
||
"ban": "Obstruido",
|
||
"unban": "Desbloqueado",
|
||
"fail": "Fallido"
|
||
},
|
||
"placeholders": {
|
||
"maxRetries": "5",
|
||
"banTime": "3600",
|
||
"findTime": "600"
|
||
},
|
||
"trustedNetworks": {
|
||
"title": "Direcciones IP y redes confiables",
|
||
"description": "Fail2Ban nunca bloqueará estas direcciones.",
|
||
"required": "Requerido",
|
||
"remove": "Eliminar de redes confiables",
|
||
"placeholder": "192.168.1.25 o 192.168.1.0/24",
|
||
"add": "Agregar",
|
||
"addCurrent": "Agregar mi IP ({ip})",
|
||
"addRule": "Agregar dirección/red",
|
||
"addressOrNetwork": "Dirección IP o red CIDR",
|
||
"example": "Una dirección: 192.168.1.25 · Toda la red: 192.168.1.0/24",
|
||
"useCurrent": "Usar mi IP actual: {ip}",
|
||
"singleIp": "dirección IP",
|
||
"network": "Red",
|
||
"edit": "Editar",
|
||
"delete": "Borrar",
|
||
"save": "Guardar cambios",
|
||
"trusted": "Confiable",
|
||
"system": "Sistema",
|
||
"columns": {
|
||
"status": "Estado",
|
||
"type": "Tipo",
|
||
"address": "Dirección / red",
|
||
"actions": "Comportamiento"
|
||
},
|
||
"warning": "La confianza sólo se dirige a lo que usted controla. Si confía en toda una red, Fail2Ban también ignorará un dispositivo comprometido en esa red."
|
||
}
|
||
},
|
||
"lynis": {
|
||
"title": "Auditoría de seguridad de Lynis",
|
||
"description": "Realice una auditoría de seguridad local y revise sugerencias prácticas de refuerzo.",
|
||
"notInstalled": "Lynis no está instalado.",
|
||
"notInstalledDescription": "Instale Lynis para ejecutar auditorías de seguridad locales en este host.",
|
||
"featuresTitle": "Lynis comprueba:",
|
||
"featureScoring": "puntuación de endurecimiento del sistema",
|
||
"featureVulnerabilities": "puntos débiles conocidos y entornos riesgosos",
|
||
"featureCompliance": "controles de seguridad comunes",
|
||
"featureGithub": "informe claro que puede imprimir o guardar",
|
||
"install": "Instalar Lynis",
|
||
"installedDescription": "Lynis está instalado y listo para auditar este host.",
|
||
"lastScan": "último escaneo",
|
||
"hardeningIndex": "Índice de endurecimiento",
|
||
"warnings": "Advertencias",
|
||
"pveExpectedPlus": "+ {count} esperado para Proxmox",
|
||
"expectedWarningsSuffix": "+ {count} esperado para Proxmox",
|
||
"suggestions": "Sugerencias",
|
||
"securityHardeningScore": "Puntuación de refuerzo de seguridad",
|
||
"proxmoxAdjustedParen": "(Proxmox ajustado)",
|
||
"scoreBreakdown": "Lynis: {raw} | Proxmox: {adjusted}",
|
||
"scoreCritical": "Crítico",
|
||
"scoreModerate": "Moderado",
|
||
"scoreGood": "Bien",
|
||
"rawScorePrefix": "Puntuación bruta",
|
||
"expectedFindings": "{count} resultados esperados de Proxmox",
|
||
"auditInProgress": "Auditoría en curso",
|
||
"auditInProgressDescription": "Esto puede tardar uno o dos minutos.",
|
||
"auditReports": "Informes de auditoría",
|
||
"auditReportTitle": "Informe Lynis",
|
||
"reportSummary": "{host} · {tests} · puntuación {score}/100 · {warnings} · {suggestions}",
|
||
"printSavePdf": "Imprimir o guardar PDF",
|
||
"deleteReport": "Eliminar informe",
|
||
"hostname": "Nombre de host",
|
||
"kernel": "Núcleo",
|
||
"tests": "Pruebas",
|
||
"packages": "Paquetes",
|
||
"firewall": "Cortafuegos",
|
||
"malwareScanner": "Escáner de malware",
|
||
"malwareScannerNotInstalled": "Escáner no instalado",
|
||
"quickStatus": "Estado rápido",
|
||
"allPveExpected": "todos los {count} esperados para Proxmox",
|
||
"actionableCount": "{count} procesable",
|
||
"hardeningScorePve": "Puntuación de endurecimiento (Proxmox ajustada)",
|
||
"noCheckDetails": "No hay resultados de verificación detallados disponibles.",
|
||
"checksCount": "{count} cheques",
|
||
"noWarnings": "Sin advertencias.",
|
||
"pveExpected": "Esperado para Proxmox",
|
||
"lowRisk": "Bajo riesgo",
|
||
"solution": "Solución",
|
||
"noSuggestions": "Sin sugerencias.",
|
||
"lowPriority": "Prioridad baja",
|
||
"runningAudit": "Ejecutando auditoría...",
|
||
"runAudit": "Ejecutar auditoría",
|
||
"installationTitle": "Instalar Lynis",
|
||
"installationDescription": "La terminal instalará Lynis y preparará el informe de soporte.",
|
||
"uninstallConfirmTitle": "¿Desinstalar Lynis?",
|
||
"uninstallConfirmDescription": "Esto elimina los archivos de informes de auditoría creados por Lynis y Monitor.",
|
||
"removeInstallation": "Quitar la instalación de Lynis",
|
||
"removeWrapper": "Eliminar el contenedor Monitor Lynis",
|
||
"removeReports": "Eliminar informes de auditoría guardados",
|
||
"counts": {
|
||
"tests": {
|
||
"one": "{count} prueba",
|
||
"few": "{count} pruebas",
|
||
"many": "{count} pruebas"
|
||
},
|
||
"warnings": {
|
||
"one": "{count} advertencia",
|
||
"few": "{count} advertencias",
|
||
"many": "{count} advertencias"
|
||
},
|
||
"suggestions": {
|
||
"one": "{count} sugerencia",
|
||
"few": "{count} sugerencias",
|
||
"many": "{count} sugerencias"
|
||
},
|
||
"testsExecuted": {
|
||
"one": "Se ejecutó la prueba {count}.",
|
||
"few": "Se ejecutaron {count} pruebas.",
|
||
"many": "Se ejecutaron {count} pruebas."
|
||
},
|
||
"actionableWarnings": {
|
||
"one": "{count} advertencia procesable",
|
||
"few": "{count} advertencias procesables",
|
||
"many": "{count} advertencias procesables"
|
||
},
|
||
"actionableSuggestions": {
|
||
"one": "{count} sugerencia procesable",
|
||
"few": "{count} sugerencias procesables",
|
||
"many": "{count} sugerencias procesables"
|
||
}
|
||
},
|
||
"tabs": {
|
||
"overview": "Descripción general",
|
||
"checksWithCount": "Cheques ({count})",
|
||
"warningsWithCount": "Advertencias ({count})",
|
||
"suggestionsWithCount": "Sugerencias ({count})"
|
||
},
|
||
"report": {
|
||
"scoreGood": "Bien",
|
||
"scoreModerate": "Moderado",
|
||
"scoreCritical": "Asunto",
|
||
"scoreUnavailable": "Incompleto",
|
||
"title": "Informe de auditoría de Lynis",
|
||
"useCmdP": "Utilice ⌘+P para imprimir o guardar como PDF.",
|
||
"useCtrlP": "Utilice Ctrl+P para imprimir o guardar como PDF.",
|
||
"brandTitle": "ProxMenux Monitor · Auditoría Lynis",
|
||
"reviewHint": "Revisión generada para decisiones de endurecimiento local.",
|
||
"subtitle": "Informe de auditoría de seguridad",
|
||
"date": "Fecha",
|
||
"auditor": "Auditor",
|
||
"executiveSummary": "Resumen ejecutivo",
|
||
"hardeningAssessment": "Evaluación de endurecimiento",
|
||
"auditOf": "Auditoría de",
|
||
"running": "corriendo",
|
||
"unknownOs": "sistema operativo desconocido",
|
||
"noActionableWarnings": "Sin advertencias procesables",
|
||
"and": "y",
|
||
"expectedBehavior": "Los resultados marcados como esperados para Proxmox suelen ser normales para los hosts Proxmox VE.",
|
||
"lynisRaw": "Lynis cruda",
|
||
"pveAdjusted": "Proxmox ajustado",
|
||
"rangeCritical": "0-49 crítico",
|
||
"rangeModerate": "50-69 moderado",
|
||
"rangeGood": "70-100 bien",
|
||
"systemInformation": "Información del sistema",
|
||
"operatingSystem": "Sistema operativo",
|
||
"lynisVersion": "versión Lynis",
|
||
"reportDate": "Fecha del informe",
|
||
"testsPerformed": "Pruebas realizadas",
|
||
"securityPosture": "Postura de seguridad",
|
||
"proxmoxScoreWithLabel": "Puntuación de Proxmox ({label})",
|
||
"actionableWarningsLabel": "Advertencias procesables",
|
||
"actionableSuggestionsLabel": "Sugerencias procesables",
|
||
"warningsDescription": "Advertencias que vale la pena revisar primero. Los hallazgos esperados por Proxmox están ocultos aquí.",
|
||
"noWarningsDetected": "No se detectaron advertencias procesables.",
|
||
"recommendation": "Recomendación",
|
||
"suggestionsDescription": "Sugerencias de endurecimiento de menor prioridad. Los hallazgos esperados por Proxmox también están ocultos aquí.",
|
||
"incompleteDescription": "Lynis creó un informe incompleto sin puntuación ni recuento de pruebas. Ejecute la auditoría nuevamente para mostrar un resultado confiable.",
|
||
"detailedChecks": "Controles detallados",
|
||
"categoriesCount": "{count} categorías",
|
||
"detailedChecksDescription": "Raw Lynis verifica los grupos del informe de auditoría.",
|
||
"check": "Controlar",
|
||
"status": "Estado",
|
||
"generatedBy": "Generado por",
|
||
"confidential": "Mantenga este informe privado; puede contener detalles del host."
|
||
},
|
||
"reportIncompleteTitle": "La auditoría aún no tiene resultados utilizables",
|
||
"reportIncompleteDescription": "Lynis creó un informe incompleto sin puntuación ni recuento de pruebas. Ejecute la auditoría nuevamente.",
|
||
"reportIncompleteShort": "El informe está incompleto: ejecute la auditoría nuevamente."
|
||
},
|
||
"twoFactorSetup": {
|
||
"setupFailed": "No se pudo iniciar la configuración 2FA",
|
||
"enterSixDigitCode": "Ingrese el código de 6 dígitos.",
|
||
"invalidCode": "código no válido",
|
||
"verificationFailed": "No se pudo verificar el código",
|
||
"copyPrompt": "Copie esta clave secreta:",
|
||
"title": "Configurar la autenticación de dos factores",
|
||
"description": "Utilice una aplicación de autenticación para agregar un código de un solo uso a su inicio de sesión.",
|
||
"intro": "Esto agrega un segundo paso después de su contraseña, por lo que una contraseña filtrada no es suficiente para iniciar sesión.",
|
||
"youWillNeed": "Necesitarás:",
|
||
"needApp": "Una aplicación de autenticación como Aegis, 1Password, Bitwarden o Google Authenticator.",
|
||
"needQrOrKey": "Un código QR o clave manual de esta configuración.",
|
||
"needBackupCodes": "Códigos de respaldo guardados en algún lugar seguro.",
|
||
"starting": "A partir de...",
|
||
"startSetup": "Iniciar configuración",
|
||
"scanTitle": "Escanea el código QR",
|
||
"scanDescription": "Abra su aplicación de autenticación y escanee este código.",
|
||
"qrCodeAlt": "Código QR 2FA",
|
||
"manualKey": "llave manual",
|
||
"copyKey": "Copiar clave",
|
||
"verifyTitle": "Verificar código",
|
||
"verifyDescription": "Ingrese el código actual de 6 dígitos de su aplicación.",
|
||
"verifying": "Verificando...",
|
||
"verifyAndEnable": "Verificar y habilitar",
|
||
"enabledTitle": "2FA está habilitado.",
|
||
"enabledDescription": "Guarde los códigos de respaldo antes de cerrar esta ventana.",
|
||
"saveCodesTitle": "Guarde sus códigos de respaldo",
|
||
"saveCodesDescription": "Cada código se puede usar una vez si pierde el acceso a su aplicación de autenticación.",
|
||
"backupCodes": "Códigos de respaldo",
|
||
"copyAll": "Copiar todo",
|
||
"finish": "Finalizar"
|
||
},
|
||
"secureGateway": {
|
||
"title": "Secure Gateway",
|
||
"learnMore": "Más información",
|
||
"noNetworkDetected": "No se detectó ninguna red",
|
||
"noNetworksDetected": "No se detectaron redes.",
|
||
"recommended": "Recomendado",
|
||
"retry": "Rever",
|
||
"errors": {
|
||
"loadWizardFailed": "No se pudo cargar la configuración de Secure Gateway",
|
||
"updateFailed": "No se pudo actualizar Secure Gateway",
|
||
"networkUpdateFailed": "Error de red al actualizar Secure Gateway",
|
||
"fieldRequired": "Se requiere {field}.",
|
||
"deploymentFailed": "Error en la implementación",
|
||
"ociRequiresPve": "Secure Gateway utiliza LXC estándar y debería funcionar en este host Proxmox. Si esto sigue sucediendo, consulte los registros del backend.",
|
||
"authKeyRequired": "Ingrese una clave de autenticación de Tailscale.",
|
||
"updateAuthKeyFailed": "No se pudo actualizar la clave de autenticación",
|
||
"couldNotLoadSetupData": "No se pudieron cargar los datos de configuración."
|
||
},
|
||
"messages": {
|
||
"updateApplied": "Se aplicó la actualización.",
|
||
"preparingDeployment": "Preparando el despliegue...",
|
||
"creatingLxc": "Creando contenedor LXC...",
|
||
"gatewayDeployed": "Secure Gateway implementado."
|
||
},
|
||
"logs": {
|
||
"empty": "No hay registros disponibles.",
|
||
"failed": "No se pudieron cargar los registros.",
|
||
"title": "Secure Gateway registros",
|
||
"description": "Salida de servicio reciente del contenedor de puerta de enlace."
|
||
},
|
||
"values": {
|
||
"never": "nunca",
|
||
"yesterdayAt": "ayer a las {time}",
|
||
"yes": "Sí",
|
||
"no": "No"
|
||
},
|
||
"wizard": {
|
||
"introTitle": "Acceso remoto seguro con Tailscale",
|
||
"introDescription": "Implemente una pequeña puerta de enlace LXC para que sus dispositivos puedan llegar a ProxMenux, Proxmox y redes locales seleccionadas a través de su red trasera Tailscale.",
|
||
"whatYouGet": "lo que obtienes",
|
||
"benefitMonitorAnywhere": "Abra el Monitor desde cualquier lugar de su tailnet.",
|
||
"benefitProxmoxUi": "Acceda a la interfaz de usuario web de Proxmox sin exponer el puerto 8006.",
|
||
"benefitVmLxc": "Acceda a redes VM y LXC seleccionadas cuando sea necesario.",
|
||
"benefitEncryption": "El tráfico permanece cifrado a través de Tailscale.",
|
||
"benefitNoPorts": "No se requiere reenvío de puerto público.",
|
||
"tailscaleAccountBefore": "Necesita una cuenta de Tailscale y una clave de autenticación previa de",
|
||
"reviewDeploy": "Revisar e implementar",
|
||
"reviewDescription": "Verifique la configuración final antes de crear la puerta de enlace LXC.",
|
||
"storageLocation": "Ubicación de almacenamiento",
|
||
"storageDescription": "Elija dónde almacenar el contenedor de puerta de enlace.",
|
||
"gbAvailable": "{amount}GB disponibles",
|
||
"configurationSummary": "Resumen de configuración",
|
||
"hostname": "Nombre de host",
|
||
"storage": "Almacenamiento",
|
||
"accessMode": "Modo de acceso",
|
||
"accessModes": {
|
||
"hostOnly": "Sólo Proxmox",
|
||
"proxmoxNetwork": "Red local completa",
|
||
"customNetworks": "Redes personalizadas"
|
||
},
|
||
"hostAccess": "Acceso de host",
|
||
"networks": "Redes",
|
||
"exitNode": "Nodo de salida",
|
||
"acceptRoutes": "Aceptar rutas",
|
||
"important": "Importante",
|
||
"approvalRequired": "Después de la implementación, apruebe las rutas de subred anunciadas en Tailscale Admin.",
|
||
"exitNodeApprovalRequired": "Salir del modo Nodo también necesita aprobación allí.",
|
||
"showAfterDeploy": "Mostraremos los pasos de aprobación exactos después de la implementación.",
|
||
"setupTitle": "Secure Gateway configuración"
|
||
},
|
||
"steps": {
|
||
"intro": {
|
||
"title": "Acceso remoto seguro",
|
||
"description": "Configure un acceso VPN seguro a su servidor Proxmox"
|
||
},
|
||
"auth": {
|
||
"title": "Autenticación de Tailscale",
|
||
"description": "Conecte la puerta de enlace a su cuenta de Tailscale"
|
||
},
|
||
"access": {
|
||
"title": "Alcance del acceso",
|
||
"description": "Elija a qué se debe acceder a través de esta puerta de enlace"
|
||
},
|
||
"options": {
|
||
"title": "Opciones avanzadas",
|
||
"description": "Configuraciones de enrutamiento adicionales"
|
||
},
|
||
"deploy": {
|
||
"title": "Implementar puerta de enlace",
|
||
"description": "Revisar e implementar"
|
||
}
|
||
},
|
||
"status": {
|
||
"connected": "Conectado",
|
||
"stopped": "Interrumpido",
|
||
"error": "Error"
|
||
},
|
||
"installed": {
|
||
"description": "Secure Gateway es implementado y administrado por el Monitor.",
|
||
"uptime": "tiempo de actividad"
|
||
},
|
||
"actions": {
|
||
"start": "Comenzar",
|
||
"stop": "Detener",
|
||
"restart": "Reanudar",
|
||
"logs": "Registros",
|
||
"remove": "Eliminar",
|
||
"back": "Atrás",
|
||
"continue": "Continuar",
|
||
"deploying": "Implementando...",
|
||
"deployGateway": "Implementar puerta de enlace"
|
||
},
|
||
"updates": {
|
||
"lastChecked": "Última comprobación",
|
||
"tailscaleAvailable": "Tailscale {version} disponible",
|
||
"updating": "Actualizando...",
|
||
"updateToVersion": "Actualizar a {version}",
|
||
"otherPackagesPending": "+ {count} otros paquetes pendientes",
|
||
"noneAvailable": "No hay actualizaciones disponibles"
|
||
},
|
||
"authKey": {
|
||
"update": "Actualizar clave de autenticación",
|
||
"description": "Utilice una nueva clave de autenticación de Tailscale si la actual expiró o fue revocada.",
|
||
"newKey": "Nueva clave de autenticación",
|
||
"generateAt": "Generarlo en",
|
||
"adminKeys": "Tailscale Admin → Claves",
|
||
"updateKey": "Clave de actualización"
|
||
},
|
||
"tailscale": {
|
||
"openAdmin": "Abrir Tailscale Admin"
|
||
},
|
||
"remove": {
|
||
"title": "¿Quitar Secure Gateway?",
|
||
"description": "Esto detiene y elimina el contenedor de puerta de enlace. El estado de Tailscale puede permanecer en los datos guardados si el backend los conserva."
|
||
},
|
||
"postDeploy": {
|
||
"title": "Finalizar la configuración en Tailscale Admin",
|
||
"description": "La puerta de enlace está implementada. Aún se necesita un paso de aprobación antes de que los dispositivos remotos puedan utilizar las rutas anunciadas.",
|
||
"nextStep": "Siguiente paso",
|
||
"approveDescription": "Apruebe las rutas de subred anunciadas para esta puerta de enlace.",
|
||
"subnetRoutes": "Rutas de subred",
|
||
"exitNode": "Salir del nodo",
|
||
"routeAllTraffic": "Aprovéchelo si desea que los dispositivos dirijan todo el tráfico de Internet a través de esta puerta de enlace.",
|
||
"howToApprove": "como aprobarlo",
|
||
"stepOpenAdmin": "Abra la consola de Tailscale Admin.",
|
||
"stepFindBefore": "Encuentra la máquina llamada",
|
||
"stepFindAfter": "en la lista de Máquinas.",
|
||
"stepOpenDetails": "Abre sus detalles.",
|
||
"stepSubnetsBefore": "En",
|
||
"stepSubnetsMiddle": "hacer clic",
|
||
"stepSubnetsAfter": "y aprobar las rutas anunciadas.",
|
||
"stepRoutingBefore": "Para salir del nodo, abra",
|
||
"stepRoutingMiddle": "y aprobar",
|
||
"accessAfterApproval": "Después de la aprobación, puede abrir",
|
||
"or": "o",
|
||
"fromAnyDevice": "desde cualquier dispositivo en su tailnet.",
|
||
"doLater": "haré esto más tarde"
|
||
},
|
||
"notInstalled": {
|
||
"subtitle": "La puerta de enlace Tailscale aún no está implementada.",
|
||
"description": "Implementarlo para llegar a ProxMenux y Proxmox de forma segura desde su tailnet sin abrir puertos públicos.",
|
||
"deploy": "Implementar Secure Gateway"
|
||
},
|
||
"schema": {
|
||
"auth_key": {
|
||
"label": "Clave de autenticación de Tailscale",
|
||
"description": "Clave de autenticación previa desde la consola de administración de Tailscale. Genere uno en el siguiente enlace.",
|
||
"placeholder": "tskey-auth-xxxxx",
|
||
"helpText": "Generar clave de autenticación"
|
||
},
|
||
"hostname": {
|
||
"label": "Nombre de host del dispositivo",
|
||
"description": "Nombre que se muestra en la consola de administración de Tailscale.",
|
||
"placeholder": "puerta de enlace proxmox"
|
||
},
|
||
"access_mode": {
|
||
"label": "Alcance del acceso",
|
||
"description": "Lo que debería ser accesible a través de esta puerta de enlace.",
|
||
"options": {
|
||
"host_only": {
|
||
"label": "Sólo Proxmox",
|
||
"description": "Acceda únicamente a este servidor Proxmox, la interfaz de usuario y el ProxMenux Monitor."
|
||
},
|
||
"proxmox_network": {
|
||
"label": "Red local completa",
|
||
"description": "Acceda a todos los dispositivos de su red local, como NAS, impresoras, VM y LXC."
|
||
},
|
||
"custom": {
|
||
"label": "Subredes personalizadas",
|
||
"description": "Elija exactamente qué subredes exponer."
|
||
}
|
||
}
|
||
},
|
||
"advertise_routes": {
|
||
"label": "Redes anunciadas",
|
||
"description": "Seleccione redes a las que se debería poder acceder a través de la VPN."
|
||
},
|
||
"exit_node": {
|
||
"label": "Salir del nodo",
|
||
"description": "Utilice esta puerta de enlace como punto de salida de Internet cuando esté fuera de casa.",
|
||
"warning": "Requiere aprobación en Tailscale Admin. Cuando está habilitado en su dispositivo, todo el tráfico de Internet pasa por su servidor Proxmox."
|
||
},
|
||
"accept_routes": {
|
||
"label": "Aceptar rutas",
|
||
"description": "Permita que esta puerta de enlace llegue a las redes anunciadas por otros nodos de Tailscale en su tailnet."
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"about": {
|
||
"releaseNotes": "Notas de la versión",
|
||
"changelog": "Registro de cambios",
|
||
"logoAlt": "Logotipo de ProxMenux",
|
||
"heroDescription": "Un panel web y una capa de administración para Proxmox VE: monitoreo de salud, notificaciones, terminal, rastreador de optimización y más, empaquetado como una única AppImage.",
|
||
"project": {
|
||
"title": "Proyecto",
|
||
"description": "Repositorio, documentación y canales comunitarios."
|
||
},
|
||
"support": {
|
||
"title": "Soporte y licencia",
|
||
"description": "ProxMenux es gratuito y de código abierto bajo la licencia GPL-3.0. Si te resulta útil, una contribución única ayuda a que siga siendo así."
|
||
},
|
||
"license": {
|
||
"label": "Licencia GPL-3.0",
|
||
"description": "Software gratuito: consulte el archivo de LICENCIA para obtener el texto completo."
|
||
},
|
||
"links": {
|
||
"repository": {
|
||
"label": "repositorio de GitHub",
|
||
"description": "Código fuente, lanzamientos y seguimiento de problemas."
|
||
},
|
||
"documentation": {
|
||
"label": "Documentación",
|
||
"description": "Guía de usuario completa para ProxMenux y el Monitor."
|
||
},
|
||
"discussions": {
|
||
"label": "Discusiones",
|
||
"description": "Haga preguntas, comparta indicaciones personalizadas de IA e intercambie ideas."
|
||
},
|
||
"issues": {
|
||
"label": "Informar un error o solicitar una función",
|
||
"description": "Abra una incidencia en GitHub: errores, ideas o regresiones."
|
||
},
|
||
"support": {
|
||
"label": "Apoya el proyecto en Ko-fi",
|
||
"description": "ProxMenux es gratuito y de código abierto. Las donaciones ayudan a cubrir el tiempo de alojamiento y desarrollo."
|
||
}
|
||
}
|
||
},
|
||
"systemLogs": {
|
||
"title": "Registros y eventos del sistema",
|
||
"sections": "Secciones",
|
||
"loading": {
|
||
"title": "Cargando registros…",
|
||
"description": "Obteniendo registros y eventos del sistema"
|
||
},
|
||
"errors": {
|
||
"connectFailed": "No se pudo conectar al servidor.",
|
||
"loadFailed": "No se pudieron cargar los registros. Por favor inténtalo de nuevo."
|
||
},
|
||
"cards": {
|
||
"totalEntries": "Entradas totales",
|
||
"selectedRange": "En el rango seleccionado",
|
||
"errors": "Errores",
|
||
"requiresAttention": "Requiere atención",
|
||
"warnings": "Advertencias",
|
||
"monitorClosely": "Monitorear de cerca",
|
||
"backups": "Copias de seguridad"
|
||
},
|
||
"tabs": {
|
||
"logs": "Registros",
|
||
"events": "Eventos",
|
||
"backups": "Copias de seguridad",
|
||
"notifications": "Notificaciones"
|
||
},
|
||
"filters": {
|
||
"searchPlaceholder": "Buscar registros y eventos...",
|
||
"timeRange": "Rango de tiempo",
|
||
"oneDay": "Hace 1 día",
|
||
"threeDays": "Hace 3 días",
|
||
"oneWeek": "hace 1 semana",
|
||
"twoWeeks": "hace 2 semanas",
|
||
"oneMonth": "hace 1 mes",
|
||
"customDays": "Número de días personalizado",
|
||
"daysAgoPlaceholder": "Hace dias",
|
||
"byLevel": "Filtrar por nivel",
|
||
"allLevels": "Todos los niveles",
|
||
"byService": "Filtrar por servicio",
|
||
"allServices": "Todos los servicios",
|
||
"dateRange": "Rango de fechas",
|
||
"daysAgo": "Últimos {count} días"
|
||
},
|
||
"levels": {
|
||
"error": "Error",
|
||
"critical": "Crítico",
|
||
"emergency": "Emergencia",
|
||
"alert": "Alerta",
|
||
"warning": "Advertencia",
|
||
"info": "Información",
|
||
"notice": "Aviso",
|
||
"success": "Éxito",
|
||
"debug": "Depurar"
|
||
},
|
||
"export": {
|
||
"button": "Exportar registros",
|
||
"title": "Exportación de eventos y registros del sistema Proxmox",
|
||
"filtersApplied": "Filtros aplicados"
|
||
},
|
||
"fields": {
|
||
"generated": "Generado",
|
||
"level": "Nivel",
|
||
"service": "Servicio",
|
||
"search": "Buscar",
|
||
"none": "Ninguno",
|
||
"message": "Mensaje",
|
||
"source": "Fuente",
|
||
"hostname": "Nombre de host",
|
||
"node": "Nodo",
|
||
"user": "Usuario",
|
||
"unit": "Unidad",
|
||
"host": "Anfitrión",
|
||
"timestamp": "Marca de tiempo",
|
||
"type": "Tipo",
|
||
"systemdUnit": "unidad del sistema",
|
||
"processId": "ID de proceso",
|
||
"duration": "Duración",
|
||
"startTime": "Hora de inicio",
|
||
"endTime": "Hora de finalización",
|
||
"storage": "Almacenamiento",
|
||
"storageType": "Tipo de almacenamiento",
|
||
"size": "Tamaño",
|
||
"created": "Creado",
|
||
"volumeId": "ID de volumen"
|
||
},
|
||
"badges": {
|
||
"event": "Evento"
|
||
},
|
||
"empty": {
|
||
"logs": "Ningún registro coincide con los filtros seleccionados.",
|
||
"backups": "No se encontraron copias de seguridad.",
|
||
"notifications": "No se encontraron notificaciones."
|
||
},
|
||
"loadMore": "Cargar más ({count} restante)",
|
||
"backups": {
|
||
"vm": "Copias de seguridad de máquinas virtuales",
|
||
"lxc": "copias de seguridad LXC",
|
||
"totalSize": "tamaño total"
|
||
},
|
||
"modals": {
|
||
"logTitle": "Detalles del registro",
|
||
"logDescription": "Información completa sobre esta entrada de registro",
|
||
"eventTitle": "Detalles del evento",
|
||
"eventDescription": "Información completa sobre este evento",
|
||
"backupTitle": "Detalles de la copia de seguridad",
|
||
"backupDescription": "Información completa sobre esta copia de seguridad",
|
||
"notificationTitle": "Detalles de notificación",
|
||
"notificationDescription": "Información completa sobre esta notificación"
|
||
},
|
||
"download": {
|
||
"taskLog": "Registro de tareas de Proxmox",
|
||
"completeTaskLog": "Registro de tareas completo",
|
||
"completeMessage": "mensaje completo",
|
||
"completeMessageButton": "Descargar mensaje completo"
|
||
}
|
||
},
|
||
"onboarding": {
|
||
"dialogTitle": "Incorporación de ProxMenux",
|
||
"previous": "Anterior",
|
||
"skip": "Saltar",
|
||
"next": "Próximo",
|
||
"getStarted": "¡Empieza!",
|
||
"dontShowAgain": "No vuelvas a mostrar esto",
|
||
"goToSlide": "Ir a la diapositiva {number}",
|
||
"slides": {
|
||
"welcome": {
|
||
"title": "¡Bienvenido a ProxMenux Monitor!",
|
||
"description": "Tu nueva herramienta de seguimiento para Proxmox. Descubra las funciones que le ayudarán a gestionar y supervisar su infraestructura más fácilmente."
|
||
},
|
||
"overview": {
|
||
"title": "Descripción general del sistema",
|
||
"description": "Supervise su servidor en tiempo real: CPU, memoria, temperatura, carga del sistema y más, todo en un panel claro."
|
||
},
|
||
"storage": {
|
||
"title": "Gestión de almacenamiento",
|
||
"description": "Vea el estado de sus discos y almacenamiento: capacidad, uso, estado SMART, temperatura y rendimiento de cada dispositivo."
|
||
},
|
||
"network": {
|
||
"title": "Métricas de red",
|
||
"description": "Supervise el tráfico de la red en tiempo real, incluidas las interfaces activas, las velocidades de transferencia y los gráficos de uso histórico."
|
||
},
|
||
"virtualMachines": {
|
||
"title": "Máquinas virtuales y contenedores",
|
||
"description": "Mantenga las máquinas virtuales y los contenedores LXC en un solo lugar. Ver estado, recursos asignados, uso actual y controles rápidos."
|
||
},
|
||
"hardware": {
|
||
"title": "Información de hardware",
|
||
"description": "Vea los detalles del hardware del servidor: CPU, RAM, GPU, discos, red, UPS y más, incluidos modelos, números de serie y estado."
|
||
},
|
||
"logs": {
|
||
"title": "Registros del sistema",
|
||
"description": "Acceda a registros del sistema, filtre eventos, busque errores específicos y descargue los registros mostrados cuando necesite un análisis más profundo."
|
||
},
|
||
"future": {
|
||
"title": "¡Listo para el futuro!",
|
||
"description": "ProxMenux Monitor está listo para nuevas funciones y mejoras, y gradualmente se trasladarán más acciones al panel web."
|
||
}
|
||
}
|
||
},
|
||
"releaseNotes": {
|
||
"dialogTitle": "Notas de la versión: versión {version}",
|
||
"title": "Novedades de la versión {version}",
|
||
"intro": "Hemos agregado nuevas funciones y mejoras para hacer que ProxMenux Monitor sea aún mejor.",
|
||
"gotIt": "¡Entiendo!",
|
||
"dontShowAgain": "No volver a mostrar para esta versión",
|
||
"currentFeatures": {
|
||
"hostUpdate": "Actualización del host con un solo clic desde Health Monitor. El nuevo botón Actualizar ahora en Actualizaciones del sistema ejecuta el flujo de actualización de Proxmox dentro de una terminal del tablero, sin salir del navegador.",
|
||
"mobileInstall": "Aviso de instalación en la aplicación para dispositivos móviles. Quienes visitan Safari por primera vez en Android e iOS ahora ven pasos sencillos para agregar el monitor a su pantalla de inicio como PWA."
|
||
}
|
||
},
|
||
"network": {
|
||
"actions": {
|
||
"viewDetails": "Ver detalles"
|
||
},
|
||
"loading": {
|
||
"title": "Cargando datos de red...",
|
||
"description": "Escaneo de interfaces, puentes y tráfico."
|
||
},
|
||
"errors": {
|
||
"serverUnavailableTitle": "El servidor no está disponible",
|
||
"serverUnavailableDescription": "No se puede conectar con el servidor de monitorización. Asegúrese de que el servicio se esté ejecutando y vuelva a intentarlo."
|
||
},
|
||
"cards": {
|
||
"traffic": "Tráfico de red",
|
||
"activeInterfaces": "Interfaces activas",
|
||
"status": "Estado de la red",
|
||
"latency": "Latencia de red"
|
||
},
|
||
"sections": {
|
||
"physicalInterfaces": "Interfaces físicas",
|
||
"bridgeInterfaces": "Interfaces de puente",
|
||
"vmLxcInterfaces": "Interfaces de red VM y LXC"
|
||
},
|
||
"summary": {
|
||
"totalInterfaces": "{count} interfaces totales",
|
||
"activeCount": "{active}/{total} Activo"
|
||
},
|
||
"status": {
|
||
"healthy": "Saludable",
|
||
"warning": "Advertencia",
|
||
"critical": "Crítico",
|
||
"up": "Arriba",
|
||
"down": "Abajo"
|
||
},
|
||
"duplex": {
|
||
"full": "Dúplex completo",
|
||
"half": "Medio dúplex"
|
||
},
|
||
"interfaceTypes": {
|
||
"physical": "Físico",
|
||
"bridge": "Puente",
|
||
"bridges": "Puentes",
|
||
"bond": "Vínculo",
|
||
"vlan": "VLAN",
|
||
"virtual": "Virtual",
|
||
"other": "Otro"
|
||
},
|
||
"labels": {
|
||
"activeSlave": "esclavo activo",
|
||
"average": "Promedio",
|
||
"avg": "promedio",
|
||
"bitsReceived": "bits recibidos",
|
||
"bitsSent": "bits enviados",
|
||
"bondingMode": "Modo de vinculación",
|
||
"bondMembers": "Miembros de bonos",
|
||
"bytesReceived": "Bytes recibidos",
|
||
"bytesSent": "Bytes enviados",
|
||
"current": "Actual",
|
||
"domain": "Dominio",
|
||
"down": "Abajo",
|
||
"drops": "Gotas",
|
||
"dropsIn": "Gotas en",
|
||
"dropsOut": "Se retira",
|
||
"duplex": "Dúplex",
|
||
"errors": "Errores",
|
||
"errorsIn": "Errores en",
|
||
"errorsOut": "Errores fuera",
|
||
"hostname": "Nombre de host",
|
||
"interfaceName": "Nombre de la interfaz",
|
||
"ipAddress": "dirección IP",
|
||
"latency": "Estado latente",
|
||
"macAddress": "dirección MAC",
|
||
"max": "máx.",
|
||
"maximum": "Máximo",
|
||
"maxSpeed": "máximo {speed}",
|
||
"min": "mín.",
|
||
"minimum": "Mínimo",
|
||
"netmask": "máscara de red",
|
||
"packetLoss": "pérdida de paquetes",
|
||
"packetLossShort": "Pérdida de paquete",
|
||
"packetsReceived": "Paquetes recibidos",
|
||
"packetsSent": "Paquetes enviados",
|
||
"physicalInterface": "Interfaz física",
|
||
"primarySlave": "esclavo primario",
|
||
"received": "Recibió",
|
||
"sent": "Enviado",
|
||
"slaveInterfaces": "Interfaces esclavas",
|
||
"speed": "Velocidad",
|
||
"status": "Estado",
|
||
"time": "Tiempo",
|
||
"type": "Tipo",
|
||
"up": "Arriba",
|
||
"virtualMemberInterfaces": "Interfaces de miembros virtuales",
|
||
"vmLxcName": "Nombre de máquina virtual/LXC"
|
||
},
|
||
"roles": {
|
||
"active": "activo",
|
||
"standby": "apoyar",
|
||
"down": "abajo"
|
||
},
|
||
"empty": {
|
||
"noVmLxc": "Sin máquina virtual/LXC",
|
||
"noVirtualMembers": "Sin miembros virtuales"
|
||
},
|
||
"timeframes": {
|
||
"hour": "1 hora",
|
||
"day": "24 Horas",
|
||
"week": "7 dias",
|
||
"month": "30 dias",
|
||
"year": "1 año",
|
||
"short": {
|
||
"hour": "Pasada 1 hora",
|
||
"day": "Pasadas 24h",
|
||
"week": "Pasados los 7 días",
|
||
"month": "Pasados los 30 días",
|
||
"year": "Último 1 año"
|
||
},
|
||
"last": {
|
||
"hour": "Última Hora",
|
||
"day": "Últimas 24 horas",
|
||
"week": "Últimos 7 días",
|
||
"month": "Últimos 30 días",
|
||
"year": "El año pasado"
|
||
}
|
||
},
|
||
"interfaceDetails": {
|
||
"title": "Detalles de la interfaz",
|
||
"description": "Ver información detallada y estadísticas de tráfico de red para esta interfaz",
|
||
"basicInformation": "Información básica",
|
||
"ipAddresses": "Direcciones IP",
|
||
"trafficStatistics": "Estadísticas de tráfico de red ({timeframe})",
|
||
"trafficSinceBoot": "Tráfico desde el último arranque",
|
||
"inactiveTitle": "Interfaz inactiva",
|
||
"inactiveDescription": "Esta interfaz está actualmente inactiva. Las estadísticas de tráfico de red no están disponibles.",
|
||
"bondConfiguration": "Configuración de bonos",
|
||
"bridgeConfiguration": "Configuración del puente"
|
||
},
|
||
"flow": {
|
||
"title": "Flujo de red"
|
||
},
|
||
"chart": {
|
||
"invalidDataFormat": "Formato de datos no válido recibido del servidor.",
|
||
"loadError": "Error al cargar métricas"
|
||
},
|
||
"latency": {
|
||
"status": {
|
||
"excellent": "Excelente",
|
||
"good": "Bien",
|
||
"fair": "Justo",
|
||
"poor": "Pobre"
|
||
},
|
||
"timeframes": {
|
||
"hour": "1 hora",
|
||
"sixHours": "6 horas",
|
||
"day": "24 Horas",
|
||
"threeDays": "3 dias",
|
||
"week": "7 dias"
|
||
},
|
||
"targets": {
|
||
"gateway": "Puerta de enlace (enrutador)",
|
||
"gatewayShort": "Puerta",
|
||
"cloudflare": "Llamarada de nube (1.1.1.1)",
|
||
"cloudflareShort": "Llamarada de nube",
|
||
"google": "DNS de Google (8.8.8.8)",
|
||
"googleShort": "DNS de Google"
|
||
},
|
||
"actions": {
|
||
"stop": "Detener",
|
||
"testAgain": "Prueba de nuevo",
|
||
"report": "Informe"
|
||
},
|
||
"testingProgress": "Probando... {percent}%",
|
||
"secondsRemaining": "{seconds}s restantes",
|
||
"samplesCollected": "{count} muestras recolectadas",
|
||
"packetLossValue": "{value}% pérdida de paquetes",
|
||
"collectingData": "Recopilando datos...",
|
||
"noRealtimeData": "Aún no hay datos. Haga clic en \"Probar de nuevo\" para comenzar.",
|
||
"noDataForPeriod": "No hay datos de latencia disponibles para este período",
|
||
"collectionInterval": "Los datos se recopilan cada 60 segundos.",
|
||
"realTimeMode": "Modo en tiempo real",
|
||
"realTimeModeDescription": "Las pruebas se ejecutan durante 2 minutos con lecturas cada 5 segundos. Ejecute la prueba nuevamente después para agregar más muestras. Todos los datos están incluidos en el informe.",
|
||
"report": {
|
||
"title": "Informe de latencia de red",
|
||
"subtitle": "ProxMenux Monitor - Análisis de rendimiento de la red",
|
||
"topBarTitle": "Informe de latencia de red ProxMenux",
|
||
"topBarSubtitle": "Revise el informe y luego imprímalo o guárdelo como PDF.",
|
||
"printSavePdf": "Imprimir/Guardar como PDF",
|
||
"date": "Fecha",
|
||
"target": "Objetivo",
|
||
"mode": "Modo",
|
||
"realTimeTest": "Prueba en tiempo real",
|
||
"historicalAnalysis": "Análisis histórico",
|
||
"realTime": "en tiempo real",
|
||
"executiveSummary": "Resumen ejecutivo",
|
||
"assessmentTitle": "Evaluación de latencia de red",
|
||
"realtimeSummary": "Prueba de latencia en tiempo real para {target}. Muestras: {count}; duración: {duration}. Latencia media: {avg}.",
|
||
"historicalSummary": "Análisis de latencia histórica hasta {target} sobre {timeframe}. {count} muestras analizadas. Latencia media: {avg} ms.",
|
||
"minutes": "{count} minuto(s)",
|
||
"minutesShort": "{count} min",
|
||
"seconds": "{count} segundo(s)",
|
||
"secondsShort": "{count}s",
|
||
"testPeriod": "el periodo de prueba",
|
||
"averagePacketLoss": "Pérdida promedio de paquetes: {value}%.",
|
||
"noPacketLoss": "No se detectó pérdida de paquetes.",
|
||
"defaultGateway": "Puerta de enlace predeterminada",
|
||
"failed": "Fallido",
|
||
"notEnoughData": "No hay suficientes puntos de datos para el gráfico",
|
||
"samples": "{count} muestras",
|
||
"latencyStatistics": "Estadísticas de latencia",
|
||
"sampleCount": "Recuento de muestras",
|
||
"packetLossAvg": "Pérdida de paquetes (promedio)",
|
||
"testPeriodLabel": "Período de prueba",
|
||
"latencyGraph": "Gráfico de latencia",
|
||
"performanceThresholds": "Umbrales de rendimiento",
|
||
"thresholdExcellent": "Óptimo para aplicaciones en tiempo real, juegos y videollamadas.",
|
||
"thresholdGood": "Aceptable para la mayoría de aplicaciones con impacto mínimo.",
|
||
"thresholdFair": "Retraso notable. Puede afectar a VoIP y aplicaciones interactivas.",
|
||
"thresholdPoor": "Latencia significativa. Se recomienda investigación.",
|
||
"detailedTestResults": "Resultados detallados de la prueba",
|
||
"latencyHistory": "Historial de latencia (últimos {count} registros)",
|
||
"methodology": "Metodología",
|
||
"testMethod": "Método de prueba",
|
||
"icmpEchoRequest": "Solicitud de eco ICMP (Ping)",
|
||
"samplesPerTest": "Muestras por prueba",
|
||
"threeConsecutivePings": "3 pings consecutivos",
|
||
"targetIp": "IP de destino",
|
||
"performanceAssessment": "Evaluación de desempeño",
|
||
"assessmentExcellent": "La latencia de la red es excelente. No se requiere ninguna acción.",
|
||
"assessmentGood": "La latencia de la red está dentro de los parámetros aceptables.",
|
||
"assessmentFair": "La latencia de la red es elevada. Considere investigar la congestión de la red o los problemas de enrutamiento.",
|
||
"assessmentPoor": "La latencia de la red es críticamente alta. Se recomienda una investigación inmediata.",
|
||
"assessmentUnknown": "No se puede determinar el estado de la red.",
|
||
"footerTitle": "ProxMenux Monitor - Informe de rendimiento de la red",
|
||
"generated": "Generado",
|
||
"reportId": "ID de informe"
|
||
}
|
||
}
|
||
},
|
||
"hardware": {
|
||
"loading": {
|
||
"title": "Cargando datos de hardware...",
|
||
"description": "Detección de dispositivos CPU, GPU, almacenamiento y PCI",
|
||
"realtimeData": "Cargando datos en tiempo real..."
|
||
},
|
||
"sections": {
|
||
"systemInformation": "Información del sistema",
|
||
"motherboard": "Placa madre",
|
||
"memoryModules": "Módulos de memoria",
|
||
"thermalMonitoring": "Monitoreo Térmico",
|
||
"otherSensors": "Otro",
|
||
"graphicsCards": "Tarjetas gráficas",
|
||
"basicInformation": "Información básica",
|
||
"coralTpu": "Aceleradores Coral TPU / AI",
|
||
"powerConsumption": "Consumo de energía",
|
||
"powerSupplies": "Fuentes de alimentación",
|
||
"systemFans": "Ventiladores del sistema",
|
||
"upsStatus": "Estado del SAI",
|
||
"statusOverview": "Descripción general del estado",
|
||
"batteryInformation": "Información de la batería",
|
||
"powerInformation": "Información de energía",
|
||
"deviceInformation": "Información del dispositivo",
|
||
"pciDevices": "Dispositivos PCI",
|
||
"networkSummary": "Resumen de red",
|
||
"storageSummary": "Resumen de almacenamiento",
|
||
"interfaceInformation": "Información de la interfaz",
|
||
"usbDevices": "Dispositivos USB"
|
||
},
|
||
"counts": {
|
||
"installed": "{count} instalado",
|
||
"sensors": "{count} sensores",
|
||
"gpu": "{count} GPU",
|
||
"devices": "{count} dispositivos",
|
||
"psus": "{count} PSU",
|
||
"fans": "{count} fans",
|
||
"ups": "{count} SAI",
|
||
"interfaces": "{count} interfaces"
|
||
},
|
||
"labels": {
|
||
"model": "Modelo",
|
||
"cores": "Núcleos",
|
||
"threads": "Hilos",
|
||
"l3Cache": "Caché L3",
|
||
"virtualization": "Virtualización",
|
||
"manufacturer": "Fabricante",
|
||
"version": "Versión",
|
||
"date": "Fecha",
|
||
"size": "Tamaño",
|
||
"type": "Tipo",
|
||
"speed": "Velocidad",
|
||
"vendor": "Proveedor",
|
||
"pciSlot": "Ranura PCI",
|
||
"driver": "Conductor",
|
||
"kernelModule": "Módulo del núcleo",
|
||
"kernelDriver": "Controlador del núcleo",
|
||
"kernelModules": "Módulos del núcleo",
|
||
"lastChecked": "Última comprobación",
|
||
"switchMode": "Modo de cambio",
|
||
"currentDriver": "Conductor actual",
|
||
"consumer": "Consumidor",
|
||
"graphicsClock": "Reloj de gráficos",
|
||
"memoryClock": "Reloj de memoria",
|
||
"powerDraw": "Consumo de energía",
|
||
"temperature": "Temperatura",
|
||
"memory": "Memoria",
|
||
"total": "Total",
|
||
"used": "Usado",
|
||
"free": "Gratis",
|
||
"memoryUtilization": "Utilización de la memoria",
|
||
"connection": "Conexión",
|
||
"formFactor": "Factor de forma",
|
||
"link": "Enlace",
|
||
"busDevice": "Autobús / Dispositivo",
|
||
"vendorProductId": "ID de proveedor/producto",
|
||
"deviceNodes": "Nodos de dispositivo",
|
||
"runtimeState": "Estado de ejecución",
|
||
"edgeTpuRuntime": "Tiempo de ejecución de Edge TPU",
|
||
"thresholds": "Umbrales",
|
||
"hardwareWarnings": "Advertencias de hardware",
|
||
"currentDraw": "Sorteo actual",
|
||
"currentOutput": "Salida actual",
|
||
"remote": "Remoto",
|
||
"batteryCharge": "Carga de la batería",
|
||
"load": "Carga",
|
||
"runtime": "Tiempo de ejecución",
|
||
"inputVoltage": "Voltaje de entrada",
|
||
"status": "Estado",
|
||
"host": "Anfitrión",
|
||
"chargeLevel": "Nivel de carga",
|
||
"runtimeRemaining": "Tiempo de ejecución restante",
|
||
"batteryVoltage": "Voltaje de la batería",
|
||
"batteryDate": "Fecha de la batería",
|
||
"outputVoltage": "Voltaje de salida",
|
||
"inputFrequency": "Frecuencia de entrada",
|
||
"outputFrequency": "Frecuencia de salida",
|
||
"realPower": "verdadero poder",
|
||
"apparentPower": "poder aparente",
|
||
"serialNumber": "Número de serie",
|
||
"firmware": "firmware",
|
||
"deviceType": "Tipo de dispositivo",
|
||
"deviceName": "Nombre del dispositivo",
|
||
"productName": "Nombre del producto",
|
||
"class": "Clase",
|
||
"capacity": "Capacidad",
|
||
"currentLinkSpeed": "Velocidad de enlace actual",
|
||
"maximumLinkSpeed": "Velocidad máxima de enlace",
|
||
"pcieLinkSpeed": "Velocidad de enlace PCIe",
|
||
"sataVersion": "Versión SATA",
|
||
"sasVersion": "Versión SAS",
|
||
"sasSpeed": "Velocidad SAS",
|
||
"linkSpeed": "Velocidad de enlace",
|
||
"family": "Familia",
|
||
"interface": "Interfaz",
|
||
"rotationRate": "Tasa de rotación",
|
||
"classCode": "Código de clase",
|
||
"serial": "De serie"
|
||
},
|
||
"values": {
|
||
"cores": "{count} núcleos",
|
||
"max": "(máx.: {value})",
|
||
"never": "nunca",
|
||
"nvidiaDriverAvailable": "Controlador NVIDIA v{version} disponible",
|
||
"reinstallViaPostInstall": "Reinstale a través de ProxMenux después de la instalación: {label}",
|
||
"noUpdatesAvailable": "No hay actualizaciones disponibles",
|
||
"none": "ninguno",
|
||
"running": "correr",
|
||
"stopped": "interrumpido",
|
||
"unused": "no usado",
|
||
"unbound": "sin consolidar",
|
||
"driversReady": "Conductores listos",
|
||
"driversNotInstalled": "Controladores no instalados",
|
||
"programmed": "Programado (tiempo de ejecución cargado)",
|
||
"unprogrammed": "No programado (tiempo de ejecución no cargado)",
|
||
"notInstalled": "no instalado",
|
||
"detecting": "Detector...",
|
||
"solidStateDevice": "Dispositivo de estado sólido",
|
||
"notSpecified": "No especificado"
|
||
},
|
||
"time": {
|
||
"yesterdayAt": "ayer {time}"
|
||
},
|
||
"recommendations": {
|
||
"intel": "Para obtener información ampliada sobre el monitoreo de GPU, instale el paquete intel-gpu-tools o igt-gpu-tools.",
|
||
"nvidia": "Para las GPU NVIDIA, la monitorización en tiempo real requiere controladores propietarios (paquete de controladores nvidia). Instálelos solo si el host utiliza su GPU directamente.",
|
||
"amd": "Para obtener información ampliada de monitoreo de GPU para GPU AMD, instale amdgpu_top. Puedes descargarlo desde: https://github.com/Umio-Yasuno/amdgpu_top",
|
||
"generic": "Para obtener información ampliada de monitoreo de GPU, instale las herramientas de monitoreo de GPU apropiadas para su hardware."
|
||
},
|
||
"deviceTypes": {
|
||
"graphics": "Gráficos",
|
||
"graphicsCard": "Tarjeta gráfica",
|
||
"usb": "USB",
|
||
"usbController": "Controlador USB",
|
||
"audio": "Audio",
|
||
"audioController": "Controlador de audio",
|
||
"network": "Red",
|
||
"networkController": "Controlador de red",
|
||
"ethernet": "Ethernet",
|
||
"wireless": "wifi",
|
||
"wirelessController": "Controlador inalámbrico",
|
||
"wifi": "wifi",
|
||
"storage": "Almacenamiento",
|
||
"storageController": "Controlador de almacenamiento",
|
||
"hid": "escondido",
|
||
"vendorSpecific": "Específico del proveedor",
|
||
"communications": "Comunicaciones",
|
||
"integrated": "Integrado",
|
||
"discrete": "Discreto"
|
||
},
|
||
"gpu": {
|
||
"monitoringTitle": "Monitoreo en tiempo real de GPU",
|
||
"sriovVirtualFunction": "Función virtual SR-IOV",
|
||
"sriovVirtualFunctionDescription": "Este dispositivo es una función virtual generada por una función física. El kernel no expone la telemetría por VF (temperatura, utilización, memoria): abra el PF principal para ver las métricas agregadas de GPU.",
|
||
"virtualFunctionDetail": "Detalle de la función virtual",
|
||
"parentPhysicalFunction": "Función física de los padres",
|
||
"sriovActive": "SR-IOV activo",
|
||
"sriovMetricsDescription": "Las métricas a continuación reflejan la función física (agregada en {count} VF).",
|
||
"updatingEverySeconds": "Actualizando cada {seconds} segundos",
|
||
"realTimeMetrics": "Métricas en tiempo real",
|
||
"engineUtilizationTotal": "Utilización del motor (total)",
|
||
"engineUtilization": "Utilización del motor",
|
||
"activeProcesses": "Procesos activos ({count})",
|
||
"noActiveProcesses": "No hay procesos activos usando la GPU.",
|
||
"virtualFunctions": "Funciones virtuales",
|
||
"switchModeVmTitle": "GPU en modo de conmutación VM",
|
||
"switchModeVmDescription": "Esta GPU se asigna a una máquina virtual mediante transferencia VFIO. La supervisión en tiempo real no está disponible desde el host porque la GPU está controlada por la VM.",
|
||
"extendedMonitoringUnavailable": "Monitoreo extendido no disponible"
|
||
},
|
||
"gpuSwitch": {
|
||
"gpu": "GPU",
|
||
"lxc": "LXC",
|
||
"vm": "VM",
|
||
"sriov": "SR-IOV",
|
||
"sriovVf": "SR-IOV FV",
|
||
"sriovCount": "SR-IOV ×{count}",
|
||
"sriovActive": "SR-IOV activo",
|
||
"readyForLxc": "Listo para contenedores LXC",
|
||
"readyForVm": "Listo para el paso de VM",
|
||
"modeUnknown": "Modo desconocido",
|
||
"virtualFunctionsExternal": "Funciones virtuales gestionadas externamente",
|
||
"nativeDriverActive": "Conductor nativo activo",
|
||
"vfioDriverActive": "Controlador VFIO-PCI activo",
|
||
"noDriverDetected": "No se detectó ningún conductor",
|
||
"virtualFunction": "Función Virtual",
|
||
"virtualFunctionWithParent": "Función virtual · PF principal {parent}",
|
||
"physicalFunction": "1 PF + {count} VF",
|
||
"physicalFunctionWithMax": "1 PF + {count} VF / {max} máx.",
|
||
"changePending": "Cambio pendiente..."
|
||
},
|
||
"actions": {
|
||
"installNvidiaDrivers": "Instalar controladores NVIDIA",
|
||
"installAmdGpuTools": "Instalar herramientas de GPU AMD",
|
||
"installIntelGpuTools": "Instalar herramientas Intel GPU",
|
||
"installCoralDrivers": "Instalar los controladores Coral TPU",
|
||
"installDrivers": "Instalar controladores"
|
||
},
|
||
"coral": {
|
||
"driversNeededDescription": "Uno o más dispositivos Coral detectados necesitan controladores. Es necesario reiniciar el servidor después de la instalación.",
|
||
"deviceInformation": "Información del dispositivo Coral TPU"
|
||
},
|
||
"ups": {
|
||
"detailedInformation": "Información detallada de UPS"
|
||
},
|
||
"pci": {
|
||
"deviceInformation": "Información del dispositivo PCI"
|
||
},
|
||
"network": {
|
||
"interfaceInformation": "Información de la interfaz de red"
|
||
},
|
||
"storage": {
|
||
"deviceHardwareInformation": "Información del hardware del dispositivo de almacenamiento"
|
||
},
|
||
"usb": {
|
||
"deviceInformation": "Información del dispositivo USB"
|
||
},
|
||
"scripts": {
|
||
"nvidiaTitle": "Instalación del controlador NVIDIA",
|
||
"nvidiaDescription": "Instalando controladores propietarios de NVIDIA para monitoreo de GPU...",
|
||
"amdTitle": "Instalación de herramientas de GPU AMD",
|
||
"amdDescription": "Instalando amdgpu_top para monitoreo de GPU AMD...",
|
||
"intelTitle": "Instalación de herramientas Intel GPU",
|
||
"intelDescription": "Instalando intel-gpu-tools para el monitoreo de GPU Intel...",
|
||
"coralTitle": "Instalación del controlador Coral TPU",
|
||
"coralDescription": "Instalación de módulos de kernel de junta + apex y tiempo de ejecución de Edge TPU...",
|
||
"switchModeTitle": "Modo de cambio de GPU → {mode}",
|
||
"switchModeDescription": "Cambiando GPU {slot} al modo {mode}...",
|
||
"switchModeVm": "VM (transmisión VFIO)",
|
||
"switchModeLxc": "LXC (conductor nativo)"
|
||
}
|
||
},
|
||
"backup": {
|
||
"actions": {
|
||
"addAnother": "agregar otro",
|
||
"addPath": "Agregar ruta",
|
||
"all": "Todo",
|
||
"apply": "Aplicar",
|
||
"back": "Atrás",
|
||
"change": "Cambiar",
|
||
"clear": "Claro",
|
||
"delete": "Borrar",
|
||
"disable": "Desactivar",
|
||
"download": "Descargar",
|
||
"edit": "Editar",
|
||
"enable": "Permitir",
|
||
"format": "Formato",
|
||
"generateKey": "Generar clave",
|
||
"import": "Importar",
|
||
"importKeyfile": "Importar archivo de claves",
|
||
"mount": "Montar",
|
||
"next": "Próximo",
|
||
"recoverKeyfile": "Recuperar archivo de claves",
|
||
"regenerate": "Regenerado",
|
||
"restore": "Restaurar",
|
||
"restoreSelected": "Restaurar seleccionado",
|
||
"runNow": "Corre ahora",
|
||
"saveChanges": "Guardar cambios",
|
||
"unmount": "Desmontar",
|
||
"upload": "Subir",
|
||
"use": "Usar",
|
||
"viewContents": "Ver contenidos"
|
||
},
|
||
"archives": {
|
||
"archive": "Archivo",
|
||
"at": "en",
|
||
"backup": "Respaldo",
|
||
"backupTimeLabel": "tiempo de respaldo",
|
||
"deleteBackendTitle": "Eliminar esta copia de seguridad",
|
||
"deleteBorgDescription": "Esto elimina el archivo Borg del repositorio.",
|
||
"deleteBorgTitle": "Eliminar archivo Borg",
|
||
"deleteLocalDescription": "Esto elimina el archivo de copia de seguridad local del disco.",
|
||
"deleteLocalTitle": "Eliminar archivo local",
|
||
"deletePbsDescription": "Esto elimina la instantánea de PBS del almacén de datos.",
|
||
"deletePbsTitle": "Eliminar instantánea de PBS",
|
||
"companionFile": "archivo complementario",
|
||
"descriptionBefore": "Explorar y restaurar copias de seguridad encontradas en",
|
||
"downloadTitle": "Descarga esta copia de seguridad",
|
||
"emptyAfter": "copias de seguridad todavía.",
|
||
"emptyBefore": "No",
|
||
"encrypted": "cifrado",
|
||
"encryptedTitle": "Esta copia de seguridad está cifrada",
|
||
"filesInBackup": "Archivos en copia de seguridad",
|
||
"group": "Grupo",
|
||
"host": "Anfitrión",
|
||
"importKeyToDownloadTitle": "Importe el archivo de claves correspondiente antes de descargarlo",
|
||
"importKeyToRestoreTitle": "Importe el archivo de claves correspondiente antes de restaurar",
|
||
"importKeyToViewTitle": "Importe el archivo de claves correspondiente antes de ver el contenido",
|
||
"inspectTitle": "Inspeccionar copia de seguridad",
|
||
"job": "Trabajo",
|
||
"loadFailed": "No se pudieron cargar las copias de seguridad",
|
||
"packedSizeLabel": "Tamaño empaquetado",
|
||
"remoteQueryWarning": "Las copias de seguridad remotas pueden tardar un momento en consultarse.",
|
||
"restoreTitle": "Restaurar desde esta copia de seguridad",
|
||
"startingExport": "Preparando descarga...",
|
||
"title": "Copias de seguridad",
|
||
"viewContentsTitle": "Ver contenidos de la copia de seguridad"
|
||
},
|
||
"backends": {
|
||
"borgDescription": "Repositorio Borg para copias de seguridad de host deduplicadas.",
|
||
"borgDescriptionTimerOnly": "Los destinos Borg son utilizados por los temporizadores Monitor, no por los trabajos PVE vzdump.",
|
||
"borgShortDescription": "Repositorio Borg deduplicado",
|
||
"local": "Local",
|
||
"localDescription": "Carpeta en este host o en una unidad USB montada.",
|
||
"localShortDescription": "Carpeta local o disco montado",
|
||
"pbsDescription": "Proxmox Backup Server almacén de datos.",
|
||
"pbsShortDescription": "Proxmox Backup Server"
|
||
},
|
||
"common": {
|
||
"checking": "De cheques...",
|
||
"loading": "Cargando...",
|
||
"no": "No",
|
||
"or": "o",
|
||
"yes": "Sí"
|
||
},
|
||
"configuration": {
|
||
"title": "Configuración de copia de seguridad"
|
||
},
|
||
"contents": {
|
||
"driversToReinstall": "Controladores para reinstalar",
|
||
"extracting": "Extracción de instantáneas y análisis: esto puede llevar un minuto en copias de seguridad grandes...",
|
||
"filesShowing": "Mostrando {shown} de {filtered}{filteredLabel}{total}",
|
||
"filesTitle": "Archivos ({count}{plus})",
|
||
"filesTruncated": "· lista truncada en 5000: abre la instantánea manualmente para ver el resto",
|
||
"filtered": "filtrado",
|
||
"manifest": "Manifiesto",
|
||
"manifestMissingBefore": "Esta copia de seguridad no incluye manifest.json. Los archivos de metadatos siguientes contienen información equivalente:",
|
||
"metadataFiles": "Archivos de metadatos",
|
||
"network": "Red",
|
||
"noDrivers": "No hay controladores para reinstalar.",
|
||
"noManifest": "No hay manifiesto en este archivo.",
|
||
"noNetworkChanges": "No se planean cambios de interfaz.",
|
||
"noStorageEntries": "No se informaron entradas de almacenamiento.",
|
||
"restorePlan": "plan de restauración",
|
||
"restorePlanUnavailable": "Plan de restauración no disponible: {error}",
|
||
"rollbackPlan": "plan de reversión",
|
||
"storage": "Almacenamiento",
|
||
"title": "Contenido de la copia de seguridad",
|
||
"totalFiles": "(total {count})"
|
||
},
|
||
"deleteJob": {
|
||
"attachedToStorage": "Adjunto al almacenamiento PVE",
|
||
"attachedWarning": "Este trabajo está conectado a un gancho de almacenamiento PVE. Al eliminarlo, también se elimina el gancho del Monitor de ese almacenamiento.",
|
||
"description": "Se eliminarán los metadatos del temporizador y del monitor para este trabajo.",
|
||
"timerWarning": "Se eliminará el temporizador systemd. Las copias de seguridad ya creadas permanecen en su destino.",
|
||
"title": "Eliminar trabajo de copia de seguridad"
|
||
},
|
||
"destinations": {
|
||
"absolutePathHelp": "Utilice una ruta absoluta en este host.",
|
||
"addBorgRepository": "Agregar repositorio Borg",
|
||
"addDestinationTitle": "Agregar destino {type}",
|
||
"addLocalDestinationTitle": "Agregar destino local",
|
||
"addPbsRepository": "Agregar repositorio de PBS",
|
||
"appendAuthorizedKeyBefore": "Agregue la clave pública generada a",
|
||
"backupsKeptBefore": "Las copias de seguridad existentes se guardan en",
|
||
"borgEncryptionInherited": "El cifrado Borg está controlado por el repositorio.",
|
||
"builtIn": "Incorporado",
|
||
"builtInDefault": "Valor predeterminado incorporado",
|
||
"capacityUnavailable": "Capacidad no disponible",
|
||
"configureDescription": "Elija dónde se deben almacenar las copias de seguridad del host.",
|
||
"configureDestination": "Configurar destino",
|
||
"createsSshKeyAfter": "cuando guardas.",
|
||
"createsSshKeyBefore": "Monitor crea una clave SSH en",
|
||
"datacenterStorage": "Centro de datos → Copia de seguridad",
|
||
"defaultUserBefore": "Usuario predeterminado:",
|
||
"editDestinationTitle": "Editar destino {type}",
|
||
"editLocalDestinationTitle": "Editar destino local",
|
||
"editTitle": "Editar destino",
|
||
"fingerprintHelp": "Verificación opcional de la huella digital del servidor.",
|
||
"generateNewSshKey": "Generar nueva clave SSH",
|
||
"jobsWillBeDeleted": "También se eliminarán {count} trabajos que utilicen este destino.",
|
||
"kept": "conservó",
|
||
"leavePassphraseBlank": "Déjelo en blanco para conservar la frase de contraseña guardada.",
|
||
"leavePasswordBlank": "Déjelo en blanco para conservar la contraseña guardada.",
|
||
"localAttachHelpBefore": "Utilice una ruta local montada. Para unidades USB, móntelas primero en",
|
||
"localAttachHelpMiddle": "unidades USB",
|
||
"localManualPickHelp": "Elija una ruta local para la salida de respaldo de una sola vez.",
|
||
"localPathHelpAfter": "u otro camino montado.",
|
||
"localPathHelpBefore": "Ejemplo:",
|
||
"localPickHelpBefore": "Elija una carpeta local o una ruta USB montada.",
|
||
"localUsb": "Local/USB",
|
||
"localUsbDescription": "Carpeta en este host o una unidad USB montada.",
|
||
"managedByPve": "Gestionado por PVE",
|
||
"manuallyAdded": "Agregado manualmente",
|
||
"nameCredentialsLocked": "El nombre y las credenciales están bloqueados mientras los trabajos utilizan este destino.",
|
||
"namePassphraseLocked": "El nombre del repositorio y la frase de contraseña están bloqueados mientras los trabajos utilizan este destino.",
|
||
"noBorgInDialog": "La edición de destinos de Borg está disponible desde el flujo de configuración de Borg.",
|
||
"noBorgInWizard": "Borg no está disponible para trabajos adjuntos PVE.",
|
||
"noPbsInDialog": "La edición de destino de PBS está disponible desde el flujo de configuración de PBS.",
|
||
"noPbsInWizard": "Aún no se han configurado repositorios de PBS.",
|
||
"not": "no",
|
||
"pbsUserHelpBefore": "Generalmente",
|
||
"probingCapacity": "Comprobando capacidad...",
|
||
"remoteSsh": "SSH remoto",
|
||
"remoteSshDescription": "Repositorio Borg en otro host a través de SSH.",
|
||
"removeAndDeleteJobs": "Eliminar destino y eliminar trabajos",
|
||
"removeDescriptionPlain": "Esto solo elimina el destino del Monitor. Las copias de seguridad existentes permanecen donde están.",
|
||
"removeDescriptionWithData": "Esto elimina el destino del Monitor. Las copias de seguridad existentes permanecen donde están.",
|
||
"removeDestination": "Eliminar destino",
|
||
"removeTitle": "Eliminar este destino",
|
||
"saveAnotherBorgTitle": "Guarde otro destino Borg",
|
||
"saveAnotherLocalTitle": "Guardar otro destino local",
|
||
"saveAnotherPbsTitle": "Guarde otro destino de PBS",
|
||
"shortIdentifierHelp": "Nombre corto que se muestra en Monitor.",
|
||
"single": "Destino",
|
||
"sshKeyHelpAfter": "y permitirlo en el host remoto.",
|
||
"sshKeyHelpBefore": "Monitor almacena la clave privada en",
|
||
"sshKeyHelpMiddle": "Copie la clave pública a",
|
||
"sshUserHelpAfter": "por ejemplo raíz.",
|
||
"sshUserHelpBefore": "Usuario en el host remoto,",
|
||
"title": "Destinos",
|
||
"unmountTitle": "Desmontar este destino",
|
||
"whereIsBorgRepo": "¿Dónde está el repositorio Borg?"
|
||
},
|
||
"encryption": {
|
||
"autoDetectedFromPveStorage": "Detectado desde el almacenamiento PVE",
|
||
"borgPassphraseLossBefore": "Si pierde la frase de contraseña de Borg, las copias de seguridad cifradas no se podrán restaurar.",
|
||
"borgPassphraseOnlyWay": "Esta frase de contraseña es la única forma de desbloquear el repositorio.",
|
||
"borgPassphraseSavedAfter": "para que los trabajos programados puedan ejecutarse sin supervisión.",
|
||
"borgPassphraseSavedAt": "La frase de contraseña se guarda en",
|
||
"encryptBackups": "Cifrar copias de seguridad",
|
||
"encryptThisBackup": "Cifre esta copia de seguridad",
|
||
"encryptedModeTitle": "Modo cifrado",
|
||
"encryptedRepokey": "Repokey cifrado",
|
||
"encryptedRepokeyDescription": "Borg almacena la clave dentro del repositorio, protegida por su frase de contraseña.",
|
||
"existingKeyAt": "Clave existente en",
|
||
"generateManualDescription": "Genere un nuevo archivo de claves y utilícelo para esta copia de seguridad.",
|
||
"generateNewKeyfile": "Generar nuevo archivo de claves",
|
||
"generateNewKeyfileDescriptionAfter": "y lo almacena localmente para futuras restauraciones de PBS.",
|
||
"generateNewKeyfileDescriptionBefore": "Monitor crea",
|
||
"importExistingKeyfile": "Importar archivo de claves existente",
|
||
"importExistingKeyfileDescription": "Cargue un archivo de claves que coincida con las copias de seguridad cifradas existentes.",
|
||
"importKeyfileHelpAfter": "antes de restaurar las copias de seguridad cifradas de PBS.",
|
||
"importKeyfileHelpBefore": "Importe el archivo de claves correspondiente a",
|
||
"importManualDescription": "Utilice un archivo de claves existente de esta máquina.",
|
||
"noEncryption": "Sin cifrado",
|
||
"noEncryptionDescription": "Las copias de seguridad se almacenan sin clave de cifrado.",
|
||
"noKeyStored": "No hay ningún archivo de claves almacenado localmente.",
|
||
"none": "Ninguno",
|
||
"passphraseNotSaved": "La frase de contraseña no se guarda.",
|
||
"passphraseSaved": "Frase de contraseña guardada",
|
||
"pbsHelpAfter": "para restauraciones de PBS cifradas.",
|
||
"pbsHelpBefore": "Usos del cifrado PBS",
|
||
"pbsHelpEnd": "Mantenga una copia segura fuera de este host.",
|
||
"pbsHelpMiddle": "como el archivo clave",
|
||
"pveKeyWillBeCopied": "La clave de cifrado PVE se copiará para las restauraciones del Monitor.",
|
||
"savePassphraseNow": "Guardar frase de contraseña para ejecuciones programadas",
|
||
"unrecoverable": "Sin la clave, las copias de seguridad cifradas no se pueden restaurar.",
|
||
"usesSharedKeyfileAt": "Utiliza un archivo de claves compartido en"
|
||
},
|
||
"errors": {
|
||
"backendNoStagingPath": "El backend no devolvió una ruta de preparación.",
|
||
"deleteFailed": "Error al eliminar: {error}",
|
||
"downloadFailed": "Error de descarga: {error}",
|
||
"encryptionSetupFailed": "Error en la configuración del cifrado: {error}",
|
||
"exportDidNotComplete": "La exportación no se completó.",
|
||
"localArchivePathMissing": "Falta la ruta del archivo local.",
|
||
"passphrasesDoNotMatch": "Las frases de contraseña no coinciden.",
|
||
"passphrasesDontMatch": "Las frases de contraseña no coinciden.",
|
||
"pickKeyfile": "Elija un archivo clave primero.",
|
||
"preflightFailed": "Error de verificación previa: {error}",
|
||
"proxmoxBackupClientOutput": "Salida del cliente de copia de seguridad de proxmox:",
|
||
"recoveryPassphraseRequired": "Se requiere una contraseña de recuperación.",
|
||
"repoNameAndSnapshotRequired": "Se requieren el nombre del repositorio y la instantánea.",
|
||
"runFailed": "Error de ejecución: {error}",
|
||
"snapshotInfoMissing": "Falta información de la instantánea.",
|
||
"toggleFailed": "No se pudo cambiar el estado del trabajo: {error}"
|
||
},
|
||
"extraPaths": {
|
||
"absolutePathHintAfter": "— la ruta debe existir en este host exactamente como se escribió.",
|
||
"absolutePathHintBefore": "Utilice la ruta absoluta completa.",
|
||
"absolutePathHintMiddle": "no es lo mismo que",
|
||
"descriptionAfter": "(perfil manual o programado, predeterminado o personalizado) en la parte superior de la lista de perfiles predeterminados. Útil para datos de aplicaciones, carpetas de configuración personalizadas y rutas similares. ({count} configurado)",
|
||
"descriptionBefore": "Las rutas agregadas aquí están incluidas en",
|
||
"empty": "Aún no hay rutas personalizadas: las copias de seguridad utilizan únicamente el perfil predeterminado.",
|
||
"everyBackup": "cada copia de seguridad",
|
||
"missingOnDisk": "falta en el disco",
|
||
"removeTitle": "Eliminar esta ruta personalizada",
|
||
"title": "Rutas personalizadas"
|
||
},
|
||
"fields": {
|
||
"absolutePathOnHost": "Ruta absoluta en el host",
|
||
"archiveNameLabel": "Nombre del archivo",
|
||
"backend": "backend",
|
||
"backendLabel": "backend",
|
||
"backupGroupLabel": "grupo de respaldo",
|
||
"backupId": "ID de respaldo",
|
||
"bootMode": "Modo de arranque",
|
||
"borgIdLabel": "Identificación de Borg",
|
||
"borgRepository": "repositorio borg",
|
||
"confirmPassphrase": "Confirmar contraseña",
|
||
"createdLabel": "Creado",
|
||
"datastore": "almacén de datos",
|
||
"dayOfMonth": "Día del mes",
|
||
"daysOfWeek": "dias de la semana",
|
||
"destinationDirectory": "Directorio de destino",
|
||
"detectedViaLabel": "Detectado mediante",
|
||
"directoryPath": "Ruta del directorio",
|
||
"directoryShort": "Directorio",
|
||
"encryption": "Cifrado",
|
||
"expressionLabel": "Expresión",
|
||
"filesystemShort": "fs",
|
||
"fingerprintOptional": "Huella digital (opcional)",
|
||
"free": "Gratis",
|
||
"groupNameInPbs": "Nombre del grupo en PBS",
|
||
"jobId": "ID de trabajo",
|
||
"jobIdLabel": "ID de trabajo",
|
||
"jobName": "Nombre del trabajo",
|
||
"kernel": "Núcleo",
|
||
"label": "Etiqueta",
|
||
"localDestination": "Destino local",
|
||
"lvmVgs": "LVM VG",
|
||
"memory": "Memoria",
|
||
"minuteOfHour": "minuto de hora",
|
||
"mode": "Modo",
|
||
"name": "Nombre",
|
||
"nameLabel": "Nombre",
|
||
"newRecoveryPassphrase": "Nueva contraseña de recuperación",
|
||
"nextRun": "Próxima ejecución",
|
||
"normalizedLabel": "Normalizado",
|
||
"onCalendarExpression": "Expresión OnCalendar",
|
||
"ownerLabel": "Dueño",
|
||
"passphrase": "frase de contraseña",
|
||
"password": "Contraseña",
|
||
"pathLabel": "Camino",
|
||
"pbsRepository": "repositorio de PBS",
|
||
"profileLabel": "Perfil",
|
||
"pveJobLabel": "trabajo PvE",
|
||
"pveStorage": "almacenamiento PVE",
|
||
"pveVersion": "versión PvE",
|
||
"recoveryPassphrase": "Frase de contraseña de recuperación",
|
||
"remoteRepositoryPath": "Ruta del repositorio remoto",
|
||
"repo": "repositorio",
|
||
"repoNameLabel": "Nombre del repositorio",
|
||
"repository": "Repositorio",
|
||
"repositoryLabel": "Repositorio",
|
||
"repositoryPath": "Ruta del repositorio",
|
||
"retentionLabel": "Retención",
|
||
"roles": "Roles",
|
||
"schedule": "Cronograma",
|
||
"scheduleLabel": "Cronograma",
|
||
"serverHostOrIp": "IP/host del servidor",
|
||
"size": "Tamaño",
|
||
"sizeLabel": "Tamaño",
|
||
"source": "Fuente",
|
||
"sourceHost": "Host de origen",
|
||
"sourceHostLabel": "Host de origen",
|
||
"sshHostOrIp": "IP/host SSH",
|
||
"sshKeyPath": "Ruta de clave SSH",
|
||
"sshUser": "Usuario SSH",
|
||
"status": "Estado",
|
||
"storageLabel": "Almacenamiento",
|
||
"target": "Objetivo",
|
||
"timeOfDay": "Hora del día",
|
||
"type": "Tipo",
|
||
"used": "Usado",
|
||
"username": "Nombre de usuario",
|
||
"vmsLxcs": "VM/LXC",
|
||
"when": "Cuando",
|
||
"whenLabel": "Cuando",
|
||
"zfsPools": "grupos ZFS"
|
||
},
|
||
"jobs": {
|
||
"attachDescriptionAfter": "copias de seguridad.",
|
||
"attachDescriptionBefore": "Adjunte Monitor a un trabajo PVE vzdump y ejecútelo después del",
|
||
"attachDescriptionMiddle": "evento para seleccionados",
|
||
"attachToPveJob": "Adjuntar al trabajo PVE",
|
||
"attachedToPveVzdump": "Adjunto a PVE vzdump",
|
||
"backendEditHelp": "El backend no se puede cambiar una vez creado el trabajo.",
|
||
"createJob": "crear trabajo",
|
||
"createScheduledJob": "Crear trabajo programado",
|
||
"customProfileTitle": "Perfil personalizado",
|
||
"defaultProfileTitle": "Perfil predeterminado",
|
||
"detailDescription": "Programación, perfil, destino y última ejecución de este trabajo.",
|
||
"disableJob": "Desactivar trabajo",
|
||
"disableJobDescription": "El temporizador systemd se detendrá; no se ejecutarán más automáticamente. Puede volver a habilitarlo más tarde desde este mismo cuadro de diálogo.",
|
||
"editScheduledJob": "Editar trabajo programado",
|
||
"encryptedTitle": "cifrado",
|
||
"inheritedRetentionLabel": "Retención del trabajo PVE",
|
||
"inheritedScheduleLabel": "Programación del trabajo PVE",
|
||
"invalidJobName": "Utilice únicamente letras, números, guiones y guiones bajos.",
|
||
"jobNameHelpAfter": "Sea breve y legible.",
|
||
"jobNameHelpAnd": "y",
|
||
"jobNameHelpBefore": "Se utiliza en nombres y registros de temporizadores. Los caracteres permitidos también incluyen",
|
||
"jobNameLocked": "El nombre del trabajo se bloquea después de la creación.",
|
||
"lastRun": "última ejecución",
|
||
"lastRunLabel": "última ejecución",
|
||
"liveLogSize": "en vivo · {size}",
|
||
"loadFailed": "No se pudieron cargar trabajos",
|
||
"loadingJob": "Cargando trabajo...",
|
||
"manualOneShot": "manual / de una sola vez",
|
||
"manualOneShotDescription": "Copia de seguridad de un solo disparo: capturada en el momento del disparo. No se puede volver a ejecutar ni editar.",
|
||
"neverRun": "nunca corras",
|
||
"newScheduledJob": "Nuevo trabajo programado",
|
||
"newScheduledJobDescription": "Cree una tarea de copia de seguridad del host recurrente.",
|
||
"nextRun": "Próxima ejecución",
|
||
"nextRunLabel": "Próxima ejecución",
|
||
"nextRunTitle": "Próxima ejecución programada",
|
||
"noCompatiblePveJob": "No se encontró ningún trabajo de copia de seguridad PVE compatible",
|
||
"noCompatiblePveJobDescriptionAfter": "primero.",
|
||
"noCompatiblePveJobDescriptionBefore": "Cree o habilite un trabajo de copia de seguridad PVE para",
|
||
"noCompatiblePveJobDescriptionMiddle": "en",
|
||
"notAvailableForBorg": "no disponible para Borg",
|
||
"openJobTitle": "Abrir detalles del trabajo",
|
||
"parentPveJobHelpAfter": "se ejecuta con éxito.",
|
||
"parentPveJobHelpBefore": "El monitor se ejecuta después de este trabajo PVE.",
|
||
"pbsGroupHelp": "Este se convierte en el grupo de respaldo de PBS.",
|
||
"pickParentPveJob": "Elige el trabajo PVE principal",
|
||
"retentionTitle": "Retención",
|
||
"runAttachedTitle": "Activar una ejecución ad hoc ahora (el temporizador PVE mantiene su propio cronograma)",
|
||
"runNowTitle": "Activa este trabajo ahora",
|
||
"running": "Ejecutando...",
|
||
"scheduledTitle": "Programado",
|
||
"standaloneScheduledJob": "Trabajo programado independiente",
|
||
"starting": "Iniciando...",
|
||
"stepOf": "Paso {step} de {total}",
|
||
"summary": "Resumen",
|
||
"waitingForRunner": "Esperando a que se inicie el ejecutor..."
|
||
},
|
||
"keyfileActions": {
|
||
"deleteDialogDescription": "Las copias de seguridad cifradas de PBS necesitarán el mismo archivo de claves antes de poder restaurarlas.",
|
||
"deleteDialogTitle": "¿Eliminar el archivo de claves de PBS local?",
|
||
"deleteTitle": "Eliminar archivo de claves local",
|
||
"deleteWarningDownloadsAfter": "hasta que importes la clave coincidente nuevamente.",
|
||
"deleteWarningDownloadsBefore": "Las descargas y restauraciones de copias de seguridad cifradas fallarán",
|
||
"deleteWarningNewBackups": "Las nuevas copias de seguridad cifradas no se pueden ejecutar sin un archivo de claves.",
|
||
"deleteWarningRecoveryBlobs": "Los blobs de recuperación de PBS permanecen en el servidor.",
|
||
"downloadTitle": "Descargar archivo clave",
|
||
"fingerprintTitle": "Mostrar huella digital clave",
|
||
"installed": "Instalado",
|
||
"keyfileLabel": "archivo de claves PBS",
|
||
"notInstalled": "No instalado",
|
||
"orUploadFromMachine": "o cargar uno desde esta máquina.",
|
||
"orUploadOwn": "o cargue su propio archivo de claves.",
|
||
"pveKeyDescriptionAfter": "y puede ser reutilizado por Monitor.",
|
||
"pveKeyDescriptionBefore": "Existe una clave PVE en",
|
||
"pveKeyDescriptionMiddle": "Coincide con el cifrado de almacenamiento PVE",
|
||
"pveKeyDetected": "Clave PVE detectada",
|
||
"uploadDialogDescriptionAfter": "Las copias de seguridad cifradas creadas con una clave diferente seguirán requiriendo su clave original.",
|
||
"uploadDialogDescriptionBefore": "Cargue el archivo de claves utilizado para las copias de seguridad cifradas de PBS.",
|
||
"uploadDialogTitle": "Cargar archivo de claves PBS",
|
||
"uploadFromMachine": "Subir desde esta máquina",
|
||
"uploadTitle": "Cargar archivo de claves",
|
||
"useThisKey": "Usa esta clave",
|
||
"willFail": "fallará"
|
||
},
|
||
"keyfileError": {
|
||
"currentlyInstalled": "Actualmente instalado",
|
||
"description": "Esta copia de seguridad está cifrada y necesita el archivo de claves PBS correspondiente.",
|
||
"importFrom": "Importe el archivo de claves correspondiente desde",
|
||
"importPath": "Copia de seguridad → Destinos → Archivo de claves PBS",
|
||
"requiredManifest": "Requerido por respaldo",
|
||
"retryHint": "e inténtalo de nuevo.",
|
||
"title": "Se requiere un archivo de claves coincidente"
|
||
},
|
||
"keyfileGate": {
|
||
"descriptionAfter": "antes de que esta acción pueda continuar.",
|
||
"descriptionBefore": "Esta copia de seguridad cifrada necesita el archivo de claves correspondiente",
|
||
"title": "Se requiere archivo de claves"
|
||
},
|
||
"keyfileManagement": {
|
||
"below": "abajo",
|
||
"copyAfterCreateAfter": "después de crearlo.",
|
||
"copyAfterCreateBefore": "Descargar una copia segura",
|
||
"copyAfterManualBefore": "Mantenga una copia segura fuera de este host",
|
||
"currentPbsUploadStays": "Las cargas de recuperación de PBS existentes permanecen en su lugar.",
|
||
"downloadKeyfile": "Descargar archivo clave",
|
||
"hideOptions": "Ocultar opciones",
|
||
"keepLocalDescriptionAfter": "y guarde su propia copia de seguridad en otro lugar.",
|
||
"keepLocalDescriptionBefore": "Mantenga la clave solo en este host",
|
||
"keepLocalOnly": "Mantener solo local",
|
||
"keepOffsiteCopy": "Mantenga una copia fuera del sitio",
|
||
"keyfileInstalled": "Archivo de claves instalado",
|
||
"startUploading": "Comience a cargar blobs de recuperación en PBS",
|
||
"stopUploading": "Dejar de cargar blobs de recuperación",
|
||
"thisBackupReusesKeyfile": "Esta copia de seguridad reutiliza el archivo de claves PBS compartido.",
|
||
"title": "Gestión de archivos clave",
|
||
"updatePassphrase": "Actualizar frase de contraseña",
|
||
"uploadNo": "No, mantenlo solo local",
|
||
"uploadQuestion": "¿Subir copia de recuperación cifrada a PBS?",
|
||
"uploadToPbs": "Subir a PBS",
|
||
"uploadYes": "Sí, cargar copia de recuperación",
|
||
"withoutCopyWarning": "Sin una copia, perder este host también puede perder la clave.",
|
||
"yesUpload": "Si, subir",
|
||
"yesUploadDescription": "Monitor almacena una copia de recuperación cifrada en PBS."
|
||
},
|
||
"keyfileRecovery": {
|
||
"descriptionBefore": "El blob del archivo de claves cifrado se descarga de PBS y se descifra con su frase de contraseña de recuperación. La clave resultante se escribe en",
|
||
"passphrase": "Frase de contraseña de recuperación",
|
||
"pickSourceHost": "Elija el host de origen cuya contraseña recuerde: cada instalación carga su propio depósito en garantía.",
|
||
"snapshot": "Instantánea de recuperación",
|
||
"title": "Recuperar archivo de claves PBS"
|
||
},
|
||
"logs": {
|
||
"openFull": "Abrir registro completo",
|
||
"runLog": "Ejecutar registro",
|
||
"tail": "cola"
|
||
},
|
||
"manifest": {
|
||
"bootMode": "Modo de arranque",
|
||
"builtBy": "Construido por",
|
||
"componentsAtBackup": "Componentes en respaldo",
|
||
"compression": "Compresión",
|
||
"createdAt": "Creado en",
|
||
"deviceCount": "{count} dispositivo(s)",
|
||
"encrypted": "cifrado",
|
||
"gpus": "GPU",
|
||
"interfaceCount": "{count} interfaz(es)",
|
||
"lxcsAtBackup": "LXC en respaldo",
|
||
"memory": "Memoria",
|
||
"nics": "NIC",
|
||
"pathCount": "{count} rutas",
|
||
"pathsArchived": "Rutas archivadas",
|
||
"proxmoxVersion": "Versión Proxmox",
|
||
"roles": "Roles",
|
||
"sourceHost": "Host de origen",
|
||
"vmsAtBackup": "VM en respaldo"
|
||
},
|
||
"manual": {
|
||
"description": "Ejecute una copia de seguridad única del host ahora.",
|
||
"inProgress": "Copia de seguridad manual en progreso",
|
||
"oneShotDescription": "Las copias de seguridad únicas se mantienen como trabajos congelados para que puedas inspeccionar su registro más tarde.",
|
||
"reopenLogTitle": "Reabrir registro",
|
||
"run": "Correr",
|
||
"runBackup": "Ejecutar copia de seguridad",
|
||
"runOneShotBackup": "Ejecute una copia de seguridad única",
|
||
"title": "Copia de seguridad manual",
|
||
"viewProgress": "Ver progreso"
|
||
},
|
||
"paths": {
|
||
"count": "{count} rutas",
|
||
"title": "Caminos"
|
||
},
|
||
"placeholders": {
|
||
"autoFromPveStorage": "auto desde el almacenamiento PVE",
|
||
"extraPathExamples": "/root/mi-carpeta, /srv/myapp/data, /etc/cron.d ...",
|
||
"filterPaths": "Filtrar rutas...",
|
||
"keyfilePath": "/usr/local/share/proxmenux/pbs-key.conf",
|
||
"keyfileRecoveryPassphrase": "La frase de contraseña establecida cuando se creó el archivo de claves",
|
||
"leaveBlankForDefault": "dejar en blanco por defecto",
|
||
"longRandomStoreSafe": "Valor aleatorio largo: guárdelo de forma segura",
|
||
"newRecoveryPassphrase": "Nueva contraseña de recuperación",
|
||
"onCalendar": "*-*-* 02:30:00",
|
||
"pickBorgRepository": "Elija el repositorio de Borg",
|
||
"pickLocalDestination": "Elige destino local",
|
||
"pickPbsRepository": "Elija el repositorio de PBS",
|
||
"recoveryPassphrase": "Frase de contraseña de recuperación",
|
||
"typeItAgain": "Escriba de vuelta",
|
||
"unchangedTypeToReplace": "sin cambios: escriba para reemplazar"
|
||
},
|
||
"plan": {
|
||
"blockers": "Bloqueadores",
|
||
"noIssues": "No se detectaron bloqueadores ni advertencias.",
|
||
"status": {
|
||
"blocked": "Obstruido",
|
||
"error": "Error",
|
||
"failed": "Fallido",
|
||
"ok": "DE ACUERDO",
|
||
"unknown": "Desconocido",
|
||
"warn": "Advertencia"
|
||
},
|
||
"warnings": "Advertencias"
|
||
},
|
||
"preflight": {
|
||
"applyWouldBeRefused": "La solicitud sería rechazada",
|
||
"driverReinstallPlan": "Plan de reinstalación del controlador",
|
||
"failCount": "{count} falló",
|
||
"keepCount": "{count} mantenido",
|
||
"lvmVgsCount": "{count} LVM VG",
|
||
"networkInMode": "Red en modo seleccionado",
|
||
"newCount": "{count} nuevo",
|
||
"orphanCount": "{count} huérfano",
|
||
"passCount": "{count} pasó",
|
||
"pveStorageCount": "{count} Almacenamientos PVE",
|
||
"remapCount": "{count} reasignado",
|
||
"storageInMode": "Almacenamiento en modo seleccionado",
|
||
"warnCount": "{count} advertencias",
|
||
"zfsPoolsCount": "{count} Grupos ZFS"
|
||
},
|
||
"profile": {
|
||
"custom": "Costumbre",
|
||
"customDescription": "Elija exactamente qué rutas deben incluirse.",
|
||
"default": "Por defecto",
|
||
"defaultDescription": "Configuración de host recomendada y datos de ProxMenux.",
|
||
"defaultDescriptionShort": "Configuración de host recomendada.",
|
||
"pathsToInclude": "Caminos a incluir",
|
||
"pickPaths": "Elige caminos",
|
||
"title": "Perfil"
|
||
},
|
||
"recovery": {
|
||
"copyFoundTitle": "Copia de recuperación encontrada",
|
||
"encryptedCopyAvailable": "La copia de recuperación de clave cifrada está disponible en PBS.",
|
||
"keyfileMissingTitle": "Falta el archivo de claves de PBS",
|
||
"recoverArrow": "Recuperar →"
|
||
},
|
||
"restore": {
|
||
"ackAfter": "las VM, LXC y componentes enumerados anteriormente. Esto es irreversible.",
|
||
"ackBefore": "Entiendo que la restauración completa",
|
||
"afterRebootHint": "Después del reinicio, esta pestaña Copias de seguridad mostrará el progreso posterior a la restauración en vivo con el tiempo estimado, el estado de cada componente, el final del registro y el delta de reversión. Si las notificaciones de Telegram/Discord/ntfy están configuradas, también recibirás el evento \"Restauración del host finalizada\".",
|
||
"backupKernel": "Núcleo de respaldo",
|
||
"blockedEncryptedTitle": "Restauración cifrada bloqueada",
|
||
"blockedPathsHint": "Las rutas vinculadas al kernel/arranque están atenuadas y no se pueden seleccionar: el destino ejecuta un kernel más nuevo.",
|
||
"chooseModeTitle": "Restaurar – elegir modo",
|
||
"complete": "Completo",
|
||
"completeDescription": "Restaura todo desde la copia de seguridad.",
|
||
"completeDescriptionAfter": "en el menú TUI del shell. El terminal que se abre a continuación aún le pedirá que confirme solo seguro, seguro+reinicio o todo a la vez antes de tocar el host.",
|
||
"completeDescriptionBefore": "Reproduce todo lo que hay en la copia de seguridad. Equivalente a recoger",
|
||
"completeTitle": "restauración completa",
|
||
"crossKernelDescription": "Tanto la restauración completa como la personalizada omiten automáticamente las rutas vinculadas al kernel/arranque para evitar un pánico del kernel en el siguiente arranque. Todo lo demás (VM, LXC, red, componentes, rutas personalizadas) se restaura normalmente.",
|
||
"crossKernelTitle": "Restauración entre núcleos: solo subconjunto seguro",
|
||
"customByPaths": "Personalizado por caminos",
|
||
"customByPathsDescription": "Elija exactamente qué rutas restaurar. Muestra lo que hay realmente en esta copia de seguridad (perfil predeterminado + sus rutas personalizadas).",
|
||
"customByPathsTitle": "Restauración personalizada por rutas",
|
||
"customPickDescriptionAfter": "env var: el mismo código descendente que la TUI. El flujo de bash detectará las rutas necesarias para el reinicio (kernel, módulos, fstab, etc.) y podrá programarlas para el próximo arranque desde allí.",
|
||
"customPickDescriptionBefore": "Elija los caminos para restaurar. Tus feeds de selección",
|
||
"customPickDescriptionMiddle": "a través del",
|
||
"destructiveTitle": "La restauración completa QUITARÁ lo siguiente (creado después de la copia de seguridad)",
|
||
"noPathsMatch": "Ninguna ruta coincide con el filtro.",
|
||
"noRestorablePaths": "Esta copia de seguridad no incluye rutas restaurables; aquí solo tiene sentido la restauración completa.",
|
||
"olderThanTargetKernel": "es más antiguo que el kernel de destino",
|
||
"operatorConfigDescription": "Las siguientes configuraciones creadas por el operador se fusionarán en el destino automáticamente, sin tocar los valores predeterminados vinculados al kernel. Se ejecuta tanto en restauración completa como personalizada.",
|
||
"operatorConfigTitle": "Configuración del operador reaplicada mediante fusión independiente del kernel",
|
||
"pathsInBackup": "({count} rutas en la copia de seguridad)",
|
||
"pathsSelected": "{count} rutas seleccionadas",
|
||
"pathsSkipped": "Rutas que se omitirán ({count})",
|
||
"permanentlyDelete": "eliminar permanentemente",
|
||
"pickPathError": "Elija al menos un camino para continuar.",
|
||
"preparationFailedTitle": "La preparación de la restauración falló",
|
||
"selectedCount": "Seleccionado: {selected} / {total}{shown}",
|
||
"shownCount": "(Se muestra {count})",
|
||
"skipped": "saltado",
|
||
"skippedPathTitle": "Omitido: ruta vinculada al kernel, el objetivo ejecuta un kernel más nuevo",
|
||
"terminalTitle": "Restaurar terminal",
|
||
"tickAckToEnable": "Marque el reconocimiento de arriba para habilitarlo."
|
||
},
|
||
"retention": {
|
||
"daily": "A diario",
|
||
"hourly": "Cada hora",
|
||
"keepDaily": "Mantener diariamente",
|
||
"keepHourly": "mantener cada hora",
|
||
"keepLast": "mantener el último",
|
||
"keepMonthly": "Mantener mensualmente",
|
||
"keepWeekly": "Mantener semanal",
|
||
"keepYearly": "Mantener anualmente",
|
||
"last": "Último",
|
||
"monthly": "Mensual",
|
||
"none": "Ninguno",
|
||
"noneAccumulate": "Sin límites de retención: las copias de seguridad se acumulan hasta que se eliminan manualmente.",
|
||
"title": "Retención",
|
||
"weekly": "Semanalmente",
|
||
"yearly": "Anual",
|
||
"zeroDisables": "0 desactiva este límite."
|
||
},
|
||
"rollback": {
|
||
"components": "Componentes:",
|
||
"configsIncluded": "Configuraciones incluidas en la copia de seguridad",
|
||
"lxcConfigs": "Configuraciones de LXC:",
|
||
"noDifferences": "No se detectaron diferencias en el estado del host: el estado de la copia de seguridad coincide con el host actual (o la copia de seguridad no incluía /etc/pve).",
|
||
"pveOnlyHint": "Sólo se restaura la configuración /etc/pve: las imágenes de disco permanecen donde residen.",
|
||
"vmConfigs": "Configuraciones de máquina virtual:"
|
||
},
|
||
"schedule": {
|
||
"advancedHelpAfter": "para la sintaxis exacta de systemd.",
|
||
"advancedHelpBefore": "Usar",
|
||
"advancedHelpMiddle": "y",
|
||
"advancedOption": "Avanzado",
|
||
"borgTimerOnly": "Los trabajos Borg están programados mediante temporizadores Monitor.",
|
||
"dailyOption": "A diario",
|
||
"everyDayAt": "Todos los días a las {time}",
|
||
"everyDayAtMidnight": "Todos los días a medianoche",
|
||
"everyHourAtMinute": "Cada hora en el minuto {minute}",
|
||
"everyHourAtMinuteZero": "Cada hora",
|
||
"everyMinute": "cada minuto",
|
||
"everyMondayAtMidnight": "Todos los lunes a medianoche",
|
||
"firstDayMonthly": "Primer día de cada mes",
|
||
"hourlyHelpAfter": "corre una vez por hora.",
|
||
"hourlyHelpBefore": "al minuto",
|
||
"hourlyHelpMiddle": "el cronómetro",
|
||
"hourlyOption": "Cada hora",
|
||
"howToSchedule": "¿Cómo debería funcionar?",
|
||
"janFirst": "1 de enero de cada año",
|
||
"modeHelp": "Elija un horario simple o ingrese una expresión systemd OnCalendar.",
|
||
"monthlyOption": "Mensual",
|
||
"monthlySkipHelp": "Si un mes tiene menos días, systemd omite esa ejecución.",
|
||
"pickAtLeastOneDay": "Elige al menos un día.",
|
||
"pickFrequency": "Frecuencia de selección",
|
||
"preview": "Avance",
|
||
"rawOnCalendar": "{value} (sistema en Calendario)",
|
||
"title": "Cronograma",
|
||
"weekdaysAt": "{days} en {time}",
|
||
"weeklyOption": "Semanalmente"
|
||
},
|
||
"status": {
|
||
"attached": "adjunto",
|
||
"disabled": "desactivado",
|
||
"legacy": "legado",
|
||
"manual": "manual",
|
||
"manualOneShot": "manual / de una sola vez",
|
||
"ok": "OK",
|
||
"running": "correr",
|
||
"scheduled": "programado"
|
||
},
|
||
"taskStates": {
|
||
"completed": "terminado",
|
||
"failed": "fallido",
|
||
"packing": "embalaje",
|
||
"queued": "en cola",
|
||
"restoring": "restaurando",
|
||
"running": "correr"
|
||
},
|
||
"usb": {
|
||
"description": "Monte unidades USB para que puedan ser elegidas como objetivo local o Borg. Las unidades que ya tenían un sistema de archivos se pueden volver a montar tal como están; Las unidades sin formato (sin tabla de particiones) se pueden borrar y formatear para",
|
||
"drivesDetected": "{count} unidades detectadas",
|
||
"empty": "No se detectaron unidades USB. Conecte uno y actualice: supervise los escaneos automáticamente cada 30 segundos.",
|
||
"formatAndUse": "Formato y uso",
|
||
"formatDescription": "Esto borrará el disco seleccionado y creará una única partición ext4.",
|
||
"formatDrive": "Formatear unidad",
|
||
"formatDriveQuestion": "¿Limpiar y formatear este disco?",
|
||
"formatTitle": "Limpiar + formatear este disco como ext4",
|
||
"formatWarning": "Todo lo que haya en el disco será destruido. Esto no se puede deshacer.",
|
||
"mountAndUse": "Montar y usar",
|
||
"mounted": "Montado",
|
||
"noneDetected": "No se detectaron unidades USB.",
|
||
"repartitionHint": "El disco se volverá a particionar (GPT + partición ext4 única) y se montará automáticamente.",
|
||
"scanning": "Escaneando unidades USB...",
|
||
"stateEmpty": "sin sistema de archivos",
|
||
"stateMounted": "montado",
|
||
"stateUnmounted": "no montado",
|
||
"typeDeviceExactly": "Escriba la ruta del dispositivo EXACTAMENTE para confirmar:",
|
||
"typeDeviceToConfirm": "Escriba la ruta del dispositivo para confirmar",
|
||
"unformatted": "Sin formato",
|
||
"unmountConfirm": "¿Desmontar {path}? Cualquier trabajo de copia de seguridad que apunte a esta ruta fallará hasta que lo vuelva a montar.",
|
||
"unmounted": "Desmontado",
|
||
"uuidTitle": "uuid: {uuid}",
|
||
"wipeAndFormat": "Limpiar y formatear"
|
||
},
|
||
"validation": {
|
||
"invalidLabel": "Etiqueta no válida."
|
||
},
|
||
"weekdays": {
|
||
"friday": "Viernes",
|
||
"monday": "Lunes",
|
||
"saturday": "Sábado",
|
||
"short": {
|
||
"fri": "Vie",
|
||
"mon": "Lun",
|
||
"sat": "Sáb",
|
||
"sun": "Dom",
|
||
"thu": "Jue",
|
||
"tue": "Mar",
|
||
"wed": "Mié"
|
||
},
|
||
"sunday": "Domingo",
|
||
"thursday": "Jueves",
|
||
"tuesday": "Martes",
|
||
"wednesday": "Miércoles"
|
||
}
|
||
},
|
||
"healthStatus": {
|
||
"title": "Estado de salud del sistema",
|
||
"description": "Comprobaciones detalladas de todos los componentes del sistema.",
|
||
"status": {
|
||
"ok": "DE ACUERDO",
|
||
"info": "Información",
|
||
"warning": "Advertencia",
|
||
"critical": "Crítico",
|
||
"unknown": "Desconocido"
|
||
},
|
||
"stats": {
|
||
"total": "Total",
|
||
"healthy": "Saludable",
|
||
"info": "Información",
|
||
"warning": "Advertir",
|
||
"critical": "Crítico",
|
||
"unknown": "Desconocido"
|
||
},
|
||
"categories": {
|
||
"cpu": "Uso y temperatura de la CPU",
|
||
"memory": "Memoria y swap",
|
||
"storage": "Soportes y espacio de almacenamiento",
|
||
"disks": "E/S de disco y errores",
|
||
"network": "Interfaces de red",
|
||
"vms": "Máquinas virtuales y contenedores",
|
||
"services": "servicios PVE",
|
||
"logs": "Registros del sistema",
|
||
"updates": "Actualizaciones del sistema",
|
||
"security": "Seguridad y certificados"
|
||
},
|
||
"checks": {
|
||
"cpu_usage": "uso de CPU",
|
||
"cpu_temperature": "Temperatura",
|
||
"ram_usage": "Uso de RAM",
|
||
"swap_usage": "Uso de swap",
|
||
"root_filesystem": "sistema de archivos raíz",
|
||
"smart_health": "Estado SMART",
|
||
"io_errors": "errores de E/S",
|
||
"zfs_pools": "grupos ZFS",
|
||
"lvm_volumes": "volúmenes LVM",
|
||
"lvm_check": "estado LVM",
|
||
"connectivity": "Conectividad",
|
||
"qmp_communication": "comunicación QMP",
|
||
"container_startup": "Inicio del contenedor",
|
||
"vm_startup": "Arranque de VM",
|
||
"oom_killer": "OOM killer",
|
||
"cluster_mode": "Modo de clúster",
|
||
"log_error_cascade": "cascada de errores",
|
||
"log_error_spike": "Pico de errores",
|
||
"log_persistent_errors": "Errores persistentes",
|
||
"log_critical_errors": "Errores críticos",
|
||
"pve_version": "Versión Proxmox VE",
|
||
"security_updates": "Actualizaciones de seguridad",
|
||
"system_age": "Edad del sistema",
|
||
"pending_updates": "Actualizaciones pendientes",
|
||
"kernel_pve": "Núcleo / PVE",
|
||
"uptime": "tiempo de actividad",
|
||
"certificates": "Certificados",
|
||
"login_attempts": "Intentos de inicio de sesión",
|
||
"fail2ban": "Fail2Ban",
|
||
"proxmox_storages": "Almacenamiento Proxmox"
|
||
},
|
||
"details": {
|
||
"allOperational": "Todos los sistemas operativos.",
|
||
"normal": "Normal",
|
||
"noIoErrors": "No hay errores de E/S en dmesg",
|
||
"rootFilesystemOk": "Lectura-escritura montada; el espacio está bien",
|
||
"noSmartWarnings": "No hay advertencias SMART en el diario",
|
||
"noCriticalErrors": "Sin errores críticos",
|
||
"noCascadingErrors": "Sin errores en cascada",
|
||
"noErrorSpikes": "Sin picos de error",
|
||
"noPersistentPatterns": "Sin patrones persistentes",
|
||
"certificateValid": "El certificado es válido",
|
||
"clusterDetected": "Clúster detectado (corosync.conf está presente)",
|
||
"active": "Activo",
|
||
"up": "ARRIBA",
|
||
"kernelUpToDate": "Kernel/PVE está actualizado",
|
||
"proxmoxUpToDate": "Proxmox VE está actualizado",
|
||
"noSecurityUpdates": "No hay actualizaciones de seguridad pendientes",
|
||
"noContainerErrors": "No hay errores de inicio del contenedor",
|
||
"noOomEvents": "No se detectaron eventos OOM",
|
||
"noQmpTimeouts": "No se detectaron tiempos de espera de QMP",
|
||
"noVmFailures": "No hay fallas de inicio de VM",
|
||
"dismissedByUser": "Descartado por el usuario",
|
||
"gatewayLatency": "Latencia a la puerta de enlace: {latency} ms",
|
||
"failedLogins": "{count} intentos fallidos de inicio de sesión en 24 horas",
|
||
"fail2banBannedIps": "Fail2Ban actualmente está bloqueando {count} direcciones IP (cárceles: {jails})",
|
||
"uptimeDays": "Tiempo de actividad: {count} días",
|
||
"pendingPackages": "{count} paquetes pendientes",
|
||
"updatedDaysAgo": "Última actualización hace {count} días",
|
||
"storageAvailable": "{type} almacenamiento está disponible",
|
||
"mountReachable": "Se puede acceder al soporte {type}",
|
||
"rootfsUsed": "Uso de rootfs: {percent}% ({size})",
|
||
"runningCtsSafe": "{count} los CT en ejecución tienen un uso seguro de rootfs",
|
||
"pveStorageSafe": "{count} Los objetivos de almacenamiento en bloque PVE tienen un uso seguro",
|
||
"remoteMountsHealthy": "{count} los montajes remotos están en buen estado"
|
||
},
|
||
"time": {
|
||
"justNow": "En este momento",
|
||
"oneMinuteAgo": "Hace 1 minuto",
|
||
"minutesAgo": "Hace {count} minutos",
|
||
"hoursMinutesAgo": "{hours}h Hace {minutes}m"
|
||
},
|
||
"errors": {
|
||
"fetchFailed": "No se pudieron recuperar los detalles de salud",
|
||
"unknown": "Error desconocido",
|
||
"loading": "Error al cargar el estado de salud"
|
||
},
|
||
"noIssues": "No se detectaron problemas",
|
||
"updateNow": "Actualizar ahora",
|
||
"dismissedItems": "Artículos descartados ({count})",
|
||
"permanent": "Permanente",
|
||
"dismissed": "Despedido",
|
||
"wasStatus": "era {status}",
|
||
"permanentlySuppressed": "Permanentemente suprimido",
|
||
"suppressedForMore": "Suprimido por {duration} más",
|
||
"customSuppressionSettings": "Configuración de supresión personalizada",
|
||
"autoSuppressedHint": "Las alertas en estas categorías se suprimen automáticamente cuando se detectan.",
|
||
"lastUpdated": "Última actualización: {date}",
|
||
"updateTerminalTitle": "Actualización del sistema Proxmox",
|
||
"updateTerminalDescription": "Ejecuta apt-get update + dist-upgrade y limpieza posterior a la actualización en el host.",
|
||
"dismiss": "Despedir",
|
||
"silenceFor": "Silencia esta alerta por",
|
||
"permanently": "Permanentemente",
|
||
"duration": {
|
||
"hours": "{count}h",
|
||
"days": "{count} días",
|
||
"weeks": "{count} semanas",
|
||
"months": "{count} meses",
|
||
"years": "{count} años",
|
||
"24hours": "24 horas",
|
||
"7days": "7 dias"
|
||
}
|
||
},
|
||
"profilePage": {
|
||
"loading": "Cargando perfil…",
|
||
"loadFailed": "No se pudo cargar el perfil",
|
||
"title": "Perfil de usuario",
|
||
"description": "Los datos personales se muestran en el menú del avatar del encabezado. Son opcionales: el nombre de usuario ya identifica la cuenta.",
|
||
"avatar": {
|
||
"label": "Avatar",
|
||
"upload": "Subir avatar",
|
||
"replace": "Reemplazar avatar",
|
||
"remove": "Eliminar avatar",
|
||
"hint": "PNG, JPEG, WebP o GIF. Hasta 2 MB. Utilice una imagen cuadrada o recórtela primero para obtener el mejor resultado en el encabezado."
|
||
},
|
||
"username": {
|
||
"label": "Nombre de usuario",
|
||
"help": "Este es el nombre de inicio de sesión. Para cambiarlo, deshabilite la autenticación y configúrelo nuevamente en Seguridad."
|
||
},
|
||
"displayName": {
|
||
"label": "Nombre para mostrar",
|
||
"optional": "(opcional)",
|
||
"placeholder": "Nombre para mostrar",
|
||
"help": "Se muestra encima del nombre de usuario en el menú de avatar. Déjelo vacío para mostrar solo el nombre de usuario. Máximo 64 caracteres."
|
||
},
|
||
"accountSecurity": {
|
||
"title": "Seguridad de la cuenta",
|
||
"description": "La contraseña, la autenticación de dos factores y los tokens API se administran en el panel de Seguridad.",
|
||
"openSecurity": "Abrir configuración de seguridad",
|
||
"fallback": "Abra la pestaña Seguridad desde la navegación."
|
||
},
|
||
"errors": {
|
||
"saveDisplayNameFailed": "No se pudo guardar el nombre para mostrar",
|
||
"uploadFailed": "Error al cargar ({status})",
|
||
"deleteFailed": "Error al eliminar ({status})"
|
||
}
|
||
},
|
||
"pwaInstall": {
|
||
"title": "Instalar el ProxMenux Monitor",
|
||
"iosDescription": "Agregue el monitor a su pantalla de inicio para un acceso rápido.",
|
||
"androidDescription": "Agregue el Monitor como una aplicación para que se abra como una aplicación normal.",
|
||
"addToHomeScreen": "Agregar a la pantalla de inicio",
|
||
"ios": {
|
||
"stepShareBefore": "Toca el",
|
||
"share": "Compartir",
|
||
"stepShareAfter": "botón en la barra inferior",
|
||
"stepChooseBefore": "Elegir",
|
||
"stepConfirmBefore": "Confirmar tocando",
|
||
"add": "Agregar",
|
||
"stepConfirmAfter": "en la parte superior derecha"
|
||
},
|
||
"android": {
|
||
"stepOpenMenu": "Abra el menú del navegador",
|
||
"stepConfirm": "confirmar tocando",
|
||
"install": "Instalar"
|
||
},
|
||
"notNow": "Ahora no",
|
||
"neverAgain": "No volver a mostrar"
|
||
},
|
||
"vmMetrics": {
|
||
"title": "Métricas: {name}",
|
||
"type": "Tipo",
|
||
"noData": "No hay datos disponibles",
|
||
"errors": {
|
||
"loading": "Error al cargar métricas"
|
||
},
|
||
"timeframes": {
|
||
"hour": "1 hora",
|
||
"day": "24 horas",
|
||
"week": "7 dias",
|
||
"month": "30 dias",
|
||
"year": "1 año"
|
||
},
|
||
"charts": {
|
||
"cpu": "uso de CPU",
|
||
"memory": "Uso de memoria",
|
||
"diskIo": "E/S de disco",
|
||
"networkIo": "E/S de red"
|
||
},
|
||
"series": {
|
||
"cpu": "CPU %",
|
||
"memoryGb": "GB de memoria",
|
||
"read": "Leer",
|
||
"write": "Escribir",
|
||
"download": "Descargar",
|
||
"upload": "Subir"
|
||
}
|
||
},
|
||
"lxcTerminal": {
|
||
"title": "Terminal: {name} (ID: {id})",
|
||
"errors": {
|
||
"invalidVmid": "VMID no válido: se niega a ejecutar pct enter"
|
||
},
|
||
"commands": {
|
||
"listFiles": "Listar todos los archivos con detalles",
|
||
"changeDirectory": "Cambiar directorio",
|
||
"displayFile": "Mostrar contenido del archivo",
|
||
"searchPattern": "Buscar un patrón en un archivo",
|
||
"findFiles": "Buscar archivos por nombre",
|
||
"diskUsage": "Mostrar uso del disco",
|
||
"directorySizes": "Mostrar tamaños de directorio",
|
||
"memoryUsage": "Mostrar uso de memoria",
|
||
"runningProcesses": "Mostrar procesos en ejecución",
|
||
"findProcess": "Encuentra un proceso en ejecución",
|
||
"serviceStatus": "Consultar estado del servicio",
|
||
"restartService": "Reiniciar un servicio",
|
||
"updatePackages": "Paquetes de actualización",
|
||
"installPackage": "Instalar un paquete",
|
||
"followLog": "Seguir un archivo de registro",
|
||
"changePermissions": "Cambiar permisos de archivos",
|
||
"changeOwner": "Cambiar propietario del archivo",
|
||
"extractArchive": "Extraer un archivo tar.gz",
|
||
"listContainers": "Listar contenedores en ejecución",
|
||
"listImages": "Listar imágenes de Docker",
|
||
"showIpAddresses": "Mostrar direcciones IP",
|
||
"testConnectivity": "Probar la conectividad de la red",
|
||
"httpHeaders": "Obtener encabezados HTTP",
|
||
"commandHistory": "Mostrar historial de comandos",
|
||
"clearScreen": "Limpiar la pantalla del terminal"
|
||
}
|
||
},
|
||
"restoreProgress": {
|
||
"title": "Progreso posterior a la restauración",
|
||
"startedAt": "Iniciado {time}",
|
||
"finishedAt": "terminado {time}",
|
||
"startedRelative": "iniciado {time}",
|
||
"steps": "{done}/{total} pasos",
|
||
"exitCode": "salir {code}",
|
||
"status": {
|
||
"running": "Restauración en curso",
|
||
"complete": "Restauración completa",
|
||
"failed": "Restauración fallida"
|
||
},
|
||
"componentStatus": {
|
||
"installing": "instalando",
|
||
"ok": "DE ACUERDO",
|
||
"failed": "fallido"
|
||
},
|
||
"time": {
|
||
"secondsAgo": "Hace {count}s",
|
||
"minutesAgo": "Hace {count}m",
|
||
"hoursAgo": "Hace {count}h",
|
||
"daysAgo": "Hace {count}d",
|
||
"estimating": "estimando el tiempo...",
|
||
"secondsLeft": "Quedan ~{count}s",
|
||
"minutesLeft": "~{count}m restantes",
|
||
"hoursLeft": "Faltan ~{count}h"
|
||
},
|
||
"log": {
|
||
"noLog": "aún no hay registro",
|
||
"full": "Lleno",
|
||
"issuesOnly": "Sólo problemas",
|
||
"noOutput": "(sin salida)"
|
||
},
|
||
"rollback": {
|
||
"empty": "No faltan entradas en este host en la copia de seguridad restaurada.",
|
||
"showCleanup": "Mostrar comandos de limpieza manual",
|
||
"description": "Estas entradas existen en este host pero no estaban en la copia de seguridad restaurada. Revíselos antes de eliminar cualquier cosa.",
|
||
"vms": "VM creadas después de la copia de seguridad",
|
||
"lxcs": "LXC creados después de la copia de seguridad",
|
||
"components": "Componentes instalados después de la copia de seguridad",
|
||
"uninstallComponentCommand": "# desinstalar {name} manualmente a través de ProxMenux → Hardware y GPU"
|
||
},
|
||
"sections": {
|
||
"components": "Componentes",
|
||
"bootWarnings": "Advertencias de cordura de arranque",
|
||
"rollbackDelta": "Delta de reversión",
|
||
"log": "Registro"
|
||
},
|
||
"dataPools": {
|
||
"title": "Grupos de datos ZFS: importación automática",
|
||
"imported": "Importado",
|
||
"importedForced": "Importado (forzado, hostid extranjero)",
|
||
"importedForcedHelp": "El nuevo hostid se escribió en la etiqueta del grupo; el próximo inicio debería importarse limpiamente.",
|
||
"skippedPartial": "Omitido (faltan algunos discos)",
|
||
"skippedPartialHelp": "Algunos discos vdev no se encontraron en /dev/disk/by-id. El grupo no se importó para evitar una importación automática degradada. Repare los discos o impórtelos manualmente con zpool import.",
|
||
"skippedMissing": "Omitido (no hay discos presentes)",
|
||
"skippedMissingHelp": "Ninguno de los discos de este grupo está en este host. Mueva los discos aquí o importe el grupo desde otro host.",
|
||
"importFailed": "Importación fallida",
|
||
"importFailedHelp": "ZFS rechazó la importación incluso con -f. Verifique la importación de zpool y el registro a continuación.",
|
||
"logPath": "Registro: {path}"
|
||
},
|
||
"history": {
|
||
"title": "Restauraciones pasadas",
|
||
"description": "Restaurar ejecuciones archivadas después del arranque. Se conservan los últimos 20.",
|
||
"empty": "No se registraron restauraciones pasadas."
|
||
},
|
||
"badges": {
|
||
"bootWarnings": "Advertencias de arranque: {count}",
|
||
"zfsPools": "Grupos ZFS: {count}",
|
||
"needAttention": "necesita atención: {count}"
|
||
},
|
||
"actions": {
|
||
"details": "Detalles",
|
||
"history": "Historia",
|
||
"dismiss": "Despedir"
|
||
},
|
||
"summary": {
|
||
"guests": "Huéspedes",
|
||
"bindMountStubs": "Marcadores de montajes bind",
|
||
"staleNodesCleaned": "Nodos obsoletos limpiados",
|
||
"components": "Componentes"
|
||
}
|
||
},
|
||
"terminal": {
|
||
"connected": "Conectado",
|
||
"disconnected": "Desconectado",
|
||
"terminalCount": "{count} / 4 terminales",
|
||
"stackedLayout": "Vista apilada (filas)",
|
||
"gridLayout": "vista de cuadrícula 2×2",
|
||
"new": "Nuevo",
|
||
"search": "Buscar",
|
||
"clear": "Claro",
|
||
"searchCommands": "Comandos de búsqueda",
|
||
"onlineSource": "En línea: utilizando la API Cheat.sh",
|
||
"offlineSource": "Sin conexión: usando comandos locales",
|
||
"searchDescription": "Busque comandos de Linux y Proxmox",
|
||
"searchPlaceholder": "Comandos de búsqueda... (por ejemplo, tar, docker, qm, systemctl)",
|
||
"searchingCheatSh": "Buscando trampa.sh…",
|
||
"poweredByCheatSh": "Desarrollado por Cheat.sh",
|
||
"send": "Enviar",
|
||
"noResults": "No se encontraron resultados para '{query}'",
|
||
"tryDifferentSearch": "Pruebe con otro comando o revise la ortografía.",
|
||
"searchAnyCommand": "Buscar cualquier comando",
|
||
"trySearchingFor": "Intente buscar:",
|
||
"searchTip": "Consejo: busque cualquier comando de Linux o Proxmox (qm, pct, zpool).",
|
||
"noExamplesFound": "No se encontraron ejemplos",
|
||
"reconnecting": "Reconectando…",
|
||
"reconnected": "Reconectado exitosamente",
|
||
"reconnectionFailed": "Error de reconexión",
|
||
"connectionClosed": "Conexión cerrada",
|
||
"terminalTitle": "Terminal {number}",
|
||
"connectionTimeout": "Se agotó el tiempo de conexión. Verifique su red e inténtelo nuevamente.",
|
||
"vpnTip": "Si utiliza una VPN, asegúrese de que la conexión sea estable.",
|
||
"websocketError": "Error de conexión WebSocket",
|
||
"commandDescriptions": "['Listar todos los nodos Proxmox', 'Listar VM en un nodo', 'Listar contenedores LXC en un nodo', 'Listar almacenamiento en un nodo', 'Listar interfaces de red', 'Listar todas las máquinas virtuales QEMU/KVM', 'Iniciar una máquina virtual', 'Detener una máquina virtual', 'Apagar una máquina virtual de forma segura', 'Mostrar estado de VM', 'Mostrar configuración de VM', 'Crear una instantánea de VM', 'Listar todos los contenedores LXC', 'Iniciar un contenedor LXC', 'Detener un contenedor LXC', 'Abrir una consola de contenedor LXC', 'Mostrar configuración del contenedor', 'Mostrar estado de almacenamiento', 'Enumerar el contenido del almacenamiento', 'Probar el rendimiento del sistema Proxmox', 'Mostrar la versión de Proxmox VE', 'Verificar el estado del clúster', 'Mostrar el estado del clúster', 'Enumerar los nodos del clúster', 'Mostrar el estado del grupo ZFS', 'Enumerar todos los grupos ZFS', 'Enumerar todo Conjuntos de datos ZFS', 'Enumerar todos los archivos con detalles', 'Cambiar directorio', 'Crear un directorio', 'Eliminar un directorio de forma recursiva', 'Copiar archivos o directorios', 'Mover o cambiar el nombre de archivos', 'Mostrar el contenido del archivo', 'Buscar un patrón en un archivo', 'Buscar archivos por nombre', 'Cambiar permisos de archivos', 'Cambiar el propietario del archivo', 'Extraer un archivo tar.gz', 'Crear un tar.gz archivo', 'Mostrar uso del disco', 'Mostrar tamaños de directorio', 'Mostrar uso de memoria', 'Mostrar procesos en ejecución', 'Buscar un proceso en ejecución', 'Forzar la eliminación de un proceso', 'Verificar el estado del servicio', 'Iniciar un servicio', 'Detener un servicio', 'Reiniciar un servicio', 'Actualizar paquetes de Debian/Ubuntu', 'Instalar un paquete de Debian/Ubuntu', 'Eliminar un paquete', 'Listar contenedores en ejecución', 'Listar Docker imágenes', 'Abrir un shell en un contenedor', 'Mostrar direcciones IP', 'Probar conectividad de red', 'Obtener encabezados HTTP', 'Descargar un archivo', 'Conectarse a través de SSH', 'Copiar un archivo a través de SSH', 'Seguir un archivo de registro en tiempo real', 'Mostrar historial de comandos', 'Borrar la pantalla del terminal']"
|
||
},
|
||
"scriptTerminal": {
|
||
"processing": "Tratamiento...",
|
||
"controlSequences": "Secuencias de control",
|
||
"cancelInterrupt": "Cancelar/Interrumpir",
|
||
"exitNano": "Salir (nano)",
|
||
"searchHistory": "Historial de búsqueda",
|
||
"clipboard": "Portapapeles",
|
||
"copySelection": "Copiar selección",
|
||
"paste": "Pasta",
|
||
"connected": "Conectado",
|
||
"connecting": "Conectando",
|
||
"disconnected": "Desconectado",
|
||
"online": "En línea",
|
||
"connectingStatus": "Conectando...",
|
||
"offline": "Desconectado",
|
||
"websocketError": "Ocurrió un error en WebSocket",
|
||
"connectionClosed": "Conexión cerrada",
|
||
"completedSuccessfully": "Guión completado con éxito",
|
||
"completedWithError": "Script terminado con el código de error {code}",
|
||
"yes": "Sí",
|
||
"yourInput": "Su entrada:",
|
||
"submit": "Entregar",
|
||
"ok": "DE ACUERDO"
|
||
}
|
||
}
|