diff options
Diffstat (limited to 'install/po')
-rw-r--r-- | install/po/bn_IN.po | 7 | ||||
-rw-r--r-- | install/po/ca.po | 63 | ||||
-rw-r--r-- | install/po/cs.po | 6 | ||||
-rw-r--r-- | install/po/de.po | 1916 | ||||
-rw-r--r-- | install/po/es.po | 616 | ||||
-rw-r--r-- | install/po/eu.po | 24 | ||||
-rw-r--r-- | install/po/fr.po | 1331 | ||||
-rw-r--r-- | install/po/id.po | 10 | ||||
-rw-r--r-- | install/po/ipa.pot | 5946 | ||||
-rw-r--r-- | install/po/ja.po | 27 | ||||
-rw-r--r-- | install/po/kn.po | 28 | ||||
-rw-r--r-- | install/po/nl.po | 6 | ||||
-rw-r--r-- | install/po/pl.po | 85 | ||||
-rw-r--r-- | install/po/ru.po | 69 | ||||
-rw-r--r-- | install/po/tg.po | 26 | ||||
-rw-r--r-- | install/po/uk.po | 2180 | ||||
-rw-r--r-- | install/po/zh_CN.po | 19 |
17 files changed, 8428 insertions, 3931 deletions
diff --git a/install/po/bn_IN.po b/install/po/bn_IN.po index c78bd86f1..f4639364a 100644 --- a/install/po/bn_IN.po +++ b/install/po/bn_IN.po @@ -10,10 +10,11 @@ msgstr "" "Project-Id-Version: FreeIPA\n" "Report-Msgid-Bugs-To: https://hosted.fedoraproject.org/projects/freeipa/" "newticket\n" -"POT-Creation-Date: 2013-10-09 14:39+0200\n" -"PO-Revision-Date: 2013-08-01 14:06+0000\n" +"POT-Creation-Date: 2014-06-27 16:29+0200\n" +"PO-Revision-Date: 2014-06-25 19:44+0000\n" "Last-Translator: Petr Viktorin <encukou@gmail.com>\n" -"Language-Team: Bengali (India) <anubad@lists.ankur.org.in>\n" +"Language-Team: Bengali (India) (http://www.transifex.com/projects/p/freeipa/" +"language/bn_IN/)\n" "Language: bn_IN\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" diff --git a/install/po/ca.po b/install/po/ca.po index 3521c50f5..c7b4b6020 100644 --- a/install/po/ca.po +++ b/install/po/ca.po @@ -3,16 +3,17 @@ # This file is distributed under the same license as the PACKAGE package. # # Translators: -# jordimash <jmas@softcatala.org>, 2013 +# Jordi Mas <jmas@softcatala.org>, 2013 msgid "" msgstr "" "Project-Id-Version: FreeIPA\n" "Report-Msgid-Bugs-To: https://hosted.fedoraproject.org/projects/freeipa/" "newticket\n" -"POT-Creation-Date: 2013-10-09 14:39+0200\n" -"PO-Revision-Date: 2013-08-01 14:06+0000\n" +"POT-Creation-Date: 2014-06-27 16:29+0200\n" +"PO-Revision-Date: 2014-06-25 19:44+0000\n" "Last-Translator: Petr Viktorin <encukou@gmail.com>\n" -"Language-Team: Catalan <fedora@llistes.softcatala.org>\n" +"Language-Team: Catalan (http://www.transifex.com/projects/p/freeipa/language/" +"ca/)\n" "Language: ca\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -46,6 +47,9 @@ msgstr "Subarbre" msgid "Description" msgstr "Descripció" +msgid "Users" +msgstr "Usuaris" + msgid "Location" msgstr "Ubicació" @@ -121,18 +125,12 @@ msgstr "Algorisme" msgid "Target" msgstr "Objectiu" -msgid "Flags" -msgstr "Indicadors" - -msgid "Protocol" -msgstr "Protocol" - -msgid "Public Key" -msgstr "Clau pública" - msgid "Size" msgstr "Mida" +msgid "Flags" +msgstr "Indicadors" + msgid "Regular Expression" msgstr "Expressió regular" @@ -145,12 +143,6 @@ msgstr "Pes" msgid "Port" msgstr "Port" -msgid "Labels" -msgstr "Etiquetes" - -msgid "Signature" -msgstr "Signatura" - msgid "Fingerprint" msgstr "Empremta" @@ -169,9 +161,6 @@ msgstr "Nom del grup" msgid "Enabled" msgstr "S'ha habilitat" -msgid "Users" -msgstr "Usuaris" - msgid "Services" msgstr "Serveis" @@ -421,9 +410,6 @@ msgstr "Nom de l'ordinador" msgid "User" msgstr "Usuari" -msgid "Identity" -msgstr "Identitat" - msgid "Active Directory domain" msgstr "Domini d'Active Directory" @@ -469,6 +455,9 @@ msgstr "Inhabilitat" msgid "DNS" msgstr "DNS" +msgid "Identity" +msgstr "Identitat" + msgid "Policy" msgstr "Política" @@ -493,6 +482,9 @@ msgstr "Continua" msgid "Netgroup name" msgstr "Nom de grup de xarxa" +msgid "Manager" +msgstr "Gestor" + msgid "Invalid credentials" msgstr "Credencials no vàlides" @@ -502,30 +494,30 @@ msgstr "permisos" msgid "Group" msgstr "Grup" +msgid "Server" +msgstr "Servidor" + msgid "Role" msgstr "Rol" msgid "services" msgstr "serveis" +msgid "user" +msgstr "usuari" + +msgid "users" +msgstr "usuaris" + msgid "Unknown" msgstr "Desconegut" msgid "Trust" msgstr "Confiança" -msgid "Server" -msgstr "Servidor" - msgid "Time now" msgstr "L'hora actual" -msgid "user" -msgstr "usuari" - -msgid "users" -msgstr "usuaris" - msgid "User login" msgstr "Entrada" @@ -571,9 +563,6 @@ msgstr "Número de fax" msgid "Job Title" msgstr "Càrrec" -msgid "Manager" -msgstr "Gestor" - msgid "Self" msgstr "Ell mateix" diff --git a/install/po/cs.po b/install/po/cs.po index 9de521e8c..561cca10a 100644 --- a/install/po/cs.po +++ b/install/po/cs.po @@ -9,10 +9,10 @@ msgstr "" "Project-Id-Version: FreeIPA\n" "Report-Msgid-Bugs-To: https://hosted.fedoraproject.org/projects/freeipa/" "newticket\n" -"POT-Creation-Date: 2013-10-09 14:39+0200\n" -"PO-Revision-Date: 2013-08-01 14:06+0000\n" +"POT-Creation-Date: 2014-06-27 16:29+0200\n" +"PO-Revision-Date: 2014-06-25 19:44+0000\n" "Last-Translator: Petr Viktorin <encukou@gmail.com>\n" -"Language-Team: Czech (http://www.transifex.com/projects/p/fedora/language/" +"Language-Team: Czech (http://www.transifex.com/projects/p/freeipa/language/" "cs/)\n" "Language: cs\n" "MIME-Version: 1.0\n" diff --git a/install/po/de.po b/install/po/de.po index ab59591a5..ca7d0cdc7 100644 --- a/install/po/de.po +++ b/install/po/de.po @@ -4,16 +4,18 @@ # # Translators: # Fabian Affolter <fab@fedoraproject.org>, 2011 +# Mario Blättermann <mario.blaettermann@gmail.com>, 2011,2014 # Mario Blättermann <mario.blaettermann@gmail.com>, 2011 msgid "" msgstr "" "Project-Id-Version: FreeIPA\n" "Report-Msgid-Bugs-To: https://hosted.fedoraproject.org/projects/freeipa/" "newticket\n" -"POT-Creation-Date: 2013-10-09 14:39+0200\n" -"PO-Revision-Date: 2013-08-01 14:06+0000\n" +"POT-Creation-Date: 2014-06-27 16:29+0200\n" +"PO-Revision-Date: 2014-06-25 19:44+0000\n" "Last-Translator: Petr Viktorin <encukou@gmail.com>\n" -"Language-Team: German <trans-de@lists.fedoraproject.org>\n" +"Language-Team: German (http://www.transifex.com/projects/p/freeipa/language/" +"de/)\n" "Language: de\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -28,33 +30,392 @@ msgstr "Geben Sie %(label)s zum Überprüfen ein:" msgid "Passwords do not match!" msgstr "Passwörter stimmen nicht überein!" +msgid "Command name" +msgstr "Befehlsname" + +msgid "Positional arguments" +msgstr "Positionale Argumente" + +msgid "No file to read" +msgstr "Keine Datei zum Lesen" + +msgid "A string searched in all relevant object attributes" +msgstr "" +"Eine Zeichenkette, nach der in allen relevanten Objektattributen gesucht wird" + +#, python-format +msgid "unknown error %(code)d from %(server)s: %(error)s" +msgstr "Unbekannter Fehler %(code)d von %(server)s: %(error)s" + msgid "an internal error has occurred" msgstr "Ein interner Fehler ist aufgetreten" +#, python-format +msgid "Invalid JSON-RPC request: %(error)s" +msgstr "Ungültige JSON-RPC-Anfrage: %(error)s" + +#, python-format +msgid "Missing or invalid HTTP Referer, %(referer)s" +msgstr "Fehlende oder ungültige HTTP-Referenz, %(referer)s" + +#, python-format +msgid "Kerberos error: %(major)s/%(minor)s" +msgstr "Kerberos-Fehler: %(major)s/%(minor)s" + +msgid "did not receive Kerberos credentials" +msgstr "Kerberos-Anmeldedaten wurden nicht empfangen" + msgid "No credentials cache found" msgstr "Keine Anmeldeinformationen-Cache gefunden" msgid "Ticket expired" msgstr "Ticket abgelaufen" +msgid "Credentials cache permissions incorrect" +msgstr "Zugriffsrechte des Anmeldedaten-Zwischenspeichers sind inkorrekt." + +msgid "Bad format in credentials cache" +msgstr "Falsches Format im Anmeldedaten-Zwischenspeicher" + +msgid "Cannot resolve KDC for requested realm" +msgstr "KDC für angeforderten Realm konnte nicht aufgelöst werden." + +msgid "Session error" +msgstr "Sitzungsfehler" + +#, python-format +msgid "Insufficient access: %(info)s" +msgstr "Unzureichender Zugriff: %(info)s" + msgid "Passwords do not match" msgstr "Passwörter stimmen nicht überein" msgid "Command not implemented" msgstr "Befehl nicht implementiert" +msgid "Client is not configured. Run ipa-client-install." +msgstr "Client ist nicht konfiguriert. Rufen Sie ipa-client-install auf." + +#, python-format +msgid "Could not get %(name)s interactively" +msgstr "%(name)s konnte nicht interaktiv ermittelt werden" + +#, python-format +msgid "%(reason)s" +msgstr "%(reason)s" + msgid "This entry already exists" msgstr "Dieser Eintrag existiert bereits" #, python-format +msgid "" +"Service principal is not of the form: service/fully-qualified host name: " +"%(reason)s" +msgstr "" +"Principal des Dienstes folgt nicht der Form »Dienst/voll ausgeschriebener " +"Hostname«: %(reason)s" + +msgid "" +"The realm for the principal does not match the realm for this IPA server" +msgstr "Der Realm des Principals passt nicht zum Realm dieses IPA-Servers." + +msgid "This command requires root access" +msgstr "Dieser Befehl erfordert Root-Zugriff" + +msgid "This is already a posix group" +msgstr "Dies ist bereits eine POSIX-Gruppe" + +msgid "This entry is already enabled" +msgstr "Dieser Eintrag ist bereits aktiviert" + +msgid "This entry is already disabled" +msgstr "Dieser Eintrag ist bereits deaktiviert" + +msgid "This entry cannot be enabled or disabled" +msgstr "Dieser Eintrag kann nicht aktiviert oder deaktiviert werden" + +msgid "This entry is not a member" +msgstr "Dieser Eintrag ist kein Mitglied" + +msgid "A group may not be a member of itself" +msgstr "Eine Gruppe kann kein Mitglied von sich selbst sein" + +msgid "This entry is already a member" +msgstr "Dieser Eintrag ist bereits ein Mitglied" + +#, python-format +msgid "Base64 decoding failed: %(reason)s" +msgstr "Base64-Dekodierung fehlgeschlagen: %(reason)s" + +msgid "A group may not be added as a member of itself" +msgstr "Eine Gruppe kann nicht als Mitglied von sich selbst hinzugefügt werden" + +msgid "The default users group cannot be removed" +msgstr "Die vorgegebene Benutzergruppe kann nicht entfernt werden" + +msgid "Host does not have corresponding DNS A record" +msgstr "Host verfügt nicht über einen entsprechenden DNS-A-Datensatz." + +msgid "Deleting a managed group is not allowed. It must be detached first." +msgstr "" +"Das Löschen einer verwalteten Gruppe ist unzulässig. Sie muss zuerst aus der " +"Verwaltung entfernt werden." + +msgid "A managed group cannot have a password policy." +msgstr "Eine verwaltete Gruppe kann keine Passwort-Policy haben." + +#, python-format +msgid "'%(entry)s' doesn't have a certificate." +msgstr "»%(entry)s« verfügt nicht über ein Zertifikat." + +#, python-format +msgid "Unable to create private group. A group '%(group)s' already exists." +msgstr "" +"Die private Gruppe konnte nicht erstellt werden. Eine Gruppe »%(group)s« " +"existiert bereits." + +#, python-format +msgid "" +"A problem was encountered when verifying that all members were %(verb)s: " +"%(exc)s" +msgstr "" +"Ein Problem trat bei der Überprüfung auf, ob alle Mitglieder %(verb)s waren: " +"%(exc)s" + +#, python-format +msgid "%(attr)s does not contain '%(value)s'" +msgstr "%(attr)s enthält nicht »%(value)s«" + +#, python-format +msgid "" +"The search criteria was not specific enough. Expected 1 and found %(found)d." +msgstr "" +"Die Suchkriterien waren nicht spezifisch genug. 1 wurde erwartet, aber " +"%(found)d gefunden." + +msgid "change collided with another change" +msgstr "Änderung kollidiert mit einer anderen Änderung" + +msgid "no modifications to be performed" +msgstr "Keine anzuwendenden Änderungen" + +#, python-format +msgid "%(desc)s: %(info)s" +msgstr "%(desc)s: %(info)s" + +msgid "limits exceeded for this query" +msgstr "Begrenzung wurde für diese Abfrage überschritten." + +#, python-format +msgid "%(info)s" +msgstr "%(info)s" + +msgid "modifying primary key is not allowed" +msgstr "Ändern des primären Schlüssels ist nicht erlaubt." + +#, python-format +msgid "%(attr)s: Only one value allowed." +msgstr "%(attr)s: Nur ein Wert erlaubt." + +#, python-format +msgid "%(attr)s: Invalid syntax." +msgstr "%(attr)s: Ungültige Syntax." + +#, python-format +msgid "Bad search filter %(info)s" +msgstr "Falscher Suchfilter %(info)s" + +#, python-format +msgid "Certificate operation cannot be completed: %(error)s" +msgstr "Zertifikat-Operation kann nicht abgeschlossen werden: %(error)s" + +#, python-format +msgid "Certificate format error: %(error)s" +msgstr "Formatfehler im Zertifikat: %(error)s" + +msgid "Already registered" +msgstr "Bereits registriert" + +msgid "Not registered yet" +msgstr "Noch nicht registriert" + +#, python-format +msgid "%(key)s cannot be deleted because %(label)s %(dependent)s requires it" +msgstr "" +"%(key)s kann nicht gelöscht werden, weil es von %(label)s %(dependent)s " +"benötigt wird." + +msgid "Results are truncated, try a more specific search" +msgstr "" +"Ergebnisse wurden abgeschnitten, versuchen Sie eine spezifischere Suche." + +msgid "" +"Retrieve and print all attributes from the server. Affects command output." +msgstr "" +"Ermittelt alle Attribute des Servers und gibt diese aus. Dies wirkt sich auf " +"die Befehlsausgabe aus." + +msgid "Print entries as stored on the server. Only affects output format." +msgstr "" +"Gibt die Einträge so aus, wie sie auf dem Server gespeichert sind. Dies " +"wirkt sich nur auf das Ausgabeformat aus." + +msgid "Client version. Used to determine if server will accept request." +msgstr "" +"Client-Version. Dadurch wird bestimmt, ob der Server die Anfrage akzeptiert." + +msgid "Forward to server instead of running locally" +msgstr "Zum Server weiterleiten, anstatt lokal auszuführen" + +msgid "A list of LDAP entries" +msgstr "Eine Liste von LDAP-Einträgen" + +msgid "All commands should at least have a result" +msgstr "Alle Befehle sollten mindestens ein Ergebnis haben." + +msgid "User-friendly description of action performed" +msgstr "Benutzerfreundliche Beschreibung der ausgeführten Aktion" + +msgid "The primary_key value of the entry, e.g. 'jdoe' for a user" +msgstr "" +"Der Wert von »primary_key« des Eintrags, z.B. »jdoe« für einen Benutzer" + +msgid "Number of entries returned" +msgstr "Anzahl der zurückgegebenen Einträge" + +msgid "True if not all results were returned" +msgstr "»True«, falls nicht alle Ergebnisse ausgegeben wurden" + +msgid "List of deletions that failed" +msgstr "Liste der fehlgeschlagenen Löschvorgänge" + +msgid "True means the operation was successful" +msgstr "»True« bedeutet, dass die Operation erfolgreich abgeschlossen wurde." + +msgid "incorrect type" +msgstr "inkorrekter Typ" + +msgid "Only one value is allowed" +msgstr "Nur ein Wert ist erlaubt" + +msgid "must be True or False" +msgstr "muss »True« oder »False« sein" + +msgid "must be an integer" +msgstr "muss eine Ganzzahl sein" + +#, python-format +msgid "must be at least %(minvalue)d" +msgstr "muss mindestens %(minvalue)d sein" + +#, python-format +msgid "can be at most %(maxvalue)d" +msgstr "darf höchstens %(maxvalue)d sein" + +msgid "must be a decimal number" +msgstr "muss eine Dezimalzahl sein" + +#, python-format +msgid "must be at least %(minvalue)s" +msgstr "muss mindestens %(minvalue)s sein" + +#, python-format +msgid "can be at most %(maxvalue)s" +msgstr "darf höchstens %(maxvalue)s sein" + +#, python-format +msgid "must match pattern \"%(pattern)s\"" +msgstr "muss dem Muster »%(pattern)s« entsprechen" + +msgid "must be binary data" +msgstr "muss im Binärformat sein" + +#, python-format +msgid "must be at least %(minlength)d bytes" +msgstr "muss mindestens %(minlength)d Bytes groß sein" + +#, python-format +msgid "can be at most %(maxlength)d bytes" +msgstr "darf höchstens %(maxlength)d Bytes groß sein" + +#, python-format +msgid "must be exactly %(length)d bytes" +msgstr "muss genau %(length)d Bytes groß sein" + +msgid "must be Unicode text" +msgstr "muss Unicode-Text sein" + +msgid "Leading and trailing spaces are not allowed" +msgstr "Führende und angehängte Leerzeichen sind nicht erlaubt." + +#, python-format +msgid "must be at least %(minlength)d characters" +msgstr "muss mindestens %(minlength)d Zeichen lang sein" + +#, python-format +msgid "can be at most %(maxlength)d characters" +msgstr "darf höchstens %(maxlength)d Zeichen lang sein" + +#, python-format +msgid "must be exactly %(length)d characters" +msgstr "muss genau %(length)d Zeichen lang sein" + +msgid "A list of ACI values" +msgstr "Liste von ACI-Werten" + +msgid "type, filter, subtree and targetgroup are mutually exclusive" +msgstr "" +"»type«, »filter«, »subtree« und »targetgroup« schließen sich gegenseitig aus." + +msgid "ACI prefix is required" +msgstr "ACI-Präfix ist erforderlich" + +msgid "" +"at least one of: type, filter, subtree, targetgroup, attrs or memberof are " +"required" +msgstr "" +"mindestens eines von »type«, »filter«, »subtree«, »targetgroup«, »attrs« " +"oder »memberof« wird benötigt" + +msgid "filter and memberof are mutually exclusive" +msgstr "»filter« und »memberof« schließen sich gegenseitig aus" + +msgid "group, permission and self are mutually exclusive" +msgstr "»group«, »permission« und »self« schließen sich gegenseitig aus" + +msgid "One of group, permission or self is required" +msgstr "Eines von »group«, »permission« oder »self« wird benötigt" + +#, python-format msgid "Group '%s' does not exist" -msgstr "Gruppe '%s' existiert nicht" +msgstr "Gruppe »%s« existiert nicht" + +msgid "empty filter" +msgstr "Filter ist leer" + +#, python-format +msgid "Syntax Error: %(error)s" +msgstr "Syntaxfehler: %(error)s" + +#, python-format +msgid "ACI with name \"%s\" not found" +msgstr "ACI mit dem Namen »%s« nicht gefunden" + +msgid "ACI prefix" +msgstr "ACI-Präfix" + +msgid "" +"Prefix used to distinguish ACI types (permission, delegation, selfservice, " +"none)" +msgstr "" +"Präfix zur Unterscheidung der ACI-Typen (permission, delegation, " +"selfservice, none)" msgid "ACIs" msgstr "ACIs" msgid "ACI name" -msgstr "ACI-Namen" +msgstr "ACI-Name" msgid "User group" msgstr "Benutzer-Gruppe" @@ -68,6 +429,9 @@ msgstr "Attribute" msgid "Type" msgstr "Typ" +msgid "type of IPA object (user, group, host, hostgroup, service, netgroup)" +msgstr "Typ des IPA-Objekts (user, group, host, hostgroup, service, netgroup)" + msgid "Member of" msgstr "Mitglied von" @@ -77,14 +441,52 @@ msgstr "Mitglied einer Gruppe" msgid "Filter" msgstr "Filter" +msgid "ACI" +msgstr "ACI" + +msgid "New ACI name" +msgstr "Neuer ACI-Name" + +msgid "Description" +msgstr "Beschreibung" + +msgid "Default group for entries to land" +msgstr "Vorgegebene Gruppe für Einträge" + +#, python-format +msgid "%s is not a valid attribute." +msgstr "%s ist kein gültiges Attribut" + +msgid "Failed to add" +msgstr "Hinzufügen fehlgeschlagen" + +msgid "Conditions that could not be added" +msgstr "Bedingungen, die nicht hinzugefügt werden konnten" + +msgid "Number of conditions added" +msgstr "Anzahl der hinzugefügten Bedingungen" + +msgid "Conditions that could not be removed" +msgstr "Bedingungen, die nicht entfernt werden konnten" + +msgid "Number of conditions removed" +msgstr "Anzahl der entfernten Bedingungen" + +msgid "Users" +msgstr "Benutzer" + msgid "Location" msgstr "Ort" +#, python-format +msgid "File %(file)s not found" +msgstr "Datei %(file)s nicht gefunden" + msgid "Map" msgstr "Karte" msgid "Key" -msgstr "Key" +msgstr "Schlüssel" msgid "Mount information" msgstr "Einhänge-Informationen" @@ -92,20 +494,1522 @@ msgstr "Einhänge-Informationen" msgid "description" msgstr "Beschreibung" +msgid "Mount point" +msgstr "Einhängepunkt" + +msgid "Password" +msgstr "Passwort" + +msgid "Failed to remove" +msgstr "Entfernen fehlgeschlagen" + +msgid "Failed RunAs" +msgstr "RunAs fehlgeschlagen" + +msgid "Failed RunAsGroup" +msgstr "RunAsGroup fehlgeschlagen" + +msgid "entry" +msgstr "Eintrag" + +msgid "entries" +msgstr "Einträge" + +msgid "Entry" +msgstr "Eintrag" + +#, python-format +msgid "container entry (%(container)s) not found" +msgstr "Container-Eintrag (%(container)s) nicht gefunden" + +#, python-format +msgid "%(parent)s: %(oname)s not found" +msgstr "%(parent)s: %(oname)s nicht gefunden" + +#, python-format +msgid "%(pkey)s: %(oname)s not found" +msgstr "%(pkey)s: %(oname)s nicht gefunden" + +#, python-format +msgid "%(oname)s with name \"%(pkey)s\" already exists" +msgstr "%(oname)s mit dem Namen »%(pkey)s« existiert bereits" + +msgid "" +"Set an attribute to a name/value pair. Format is attr=value.\n" +"For multi-valued attributes, the command replaces the values already present." +msgstr "" +"Ein Attribut für ein Attribut-Wert-Paar setzen. Das Format ist " +"Attribut=Wert.\n" +"Bei Attributen mit mehreren Werten ersetzt der Befehl die bereits " +"vorhandenen Werte." + +msgid "" +"Add an attribute/value pair. Format is attr=value. The attribute\n" +"must be part of the schema." +msgstr "" +"Ein Attribut-Wert-Paar hinzufügen. Das Format ist Attribut=Wert.\n" +"Das Attribut muss Teil des Schemas sein." + +msgid "" +"Delete an attribute/value pair. The option will be evaluated\n" +"last, after all sets and adds." +msgstr "" +"Ein Attribut-Wert-Paar löschen. Diese Option wird zuletzt angewendet,\n" +"nach allen Optionen, die etwas festlegen oder hinzufügen." + +msgid "Continuous mode: Don't stop on errors." +msgstr "Fortlaufender Modus: Kein Abbruch bei Fehlern." + +msgid "Rights" +msgstr "Rechte" + +msgid "" +"Display the access rights of this entry (requires --all). See ipa man page " +"for details." +msgstr "" +"Zugriffsrechte dieses Eintrags anzeigen (erfordert --all). In der " +"Handbuchseite zu ipa finden Sie weitere Details." + +msgid "Rename" +msgstr "Umbenennen" + +#, python-format +msgid "Rename the %(ldap_obj_name)s object" +msgstr "Das %(ldap_obj_name)s-Objekt umbenennen" + +msgid "the entry was deleted while being modified" +msgstr "Der Eintrag wurde während der Änderung entfernt." + +msgid "Members that could not be added" +msgstr "Mitglieder, die nicht hinzugefügt werden konnten" + +msgid "Number of members added" +msgstr "Zahl der hinzugefügten Mitglieder" + +msgid "Members that could not be removed" +msgstr "Mitglieder, die nicht entfernt werden konnten" + +msgid "Number of members removed" +msgstr "Anzahl der entfernten Mitglieder" + +msgid "Primary key only" +msgstr "Nur primärer Schlüssel" + +msgid "Time Limit" +msgstr "Zeitbegrenzung" + +msgid "Time limit of search in seconds" +msgstr "Zeitbegrenzung für den Suchvorgang in Sekunden" + +msgid "Maximum number of entries returned" +msgstr "Maximale Anzahl der zurückgegebenen Einträge" + +#, python-format +msgid "Failure decoding Certificate Signing Request: %s" +msgstr "Fehler beim Dekodieren der Signaturanfrage für das Zertifikat: %s" + +msgid "CSR" +msgstr "CSR" + +msgid "Principal" +msgstr "Principal" + +msgid "Service principal for this certificate (e.g. HTTP/test.example.com)" +msgstr "Dienst-Principal für dieses Zertifikat (z.B. HTTP/test.example.com)" + +msgid "automatically add the principal if it doesn't exist" +msgstr "Den Principal automatisch hinzufügen, falls dieser nicht existiert" + msgid "Certificate" msgstr "Zertifikat" msgid "Subject" msgstr "Betreff" +msgid "Issuer" +msgstr "Ausgabestelle" + +msgid "Not Before" +msgstr "Nicht vor" + +msgid "Not After" +msgstr "Nicht nach" + +msgid "Fingerprint (MD5)" +msgstr "Fingerabdruck (MD5)" + +msgid "Fingerprint (SHA1)" +msgstr "Fingerabdruck (SHA1)" + +msgid "Serial number" +msgstr "Seriennummer" + +msgid "Check the status of a certificate signing request." +msgstr "Den Status der Signaturanfrage des Zertifikats überprüfen." + +msgid "Request id" +msgstr "Anfrage-ID" + +msgid "Request status" +msgstr "Anfragestatus" + +msgid "Serial number in decimal or if prefixed with 0x in hexadecimal" +msgstr "" +"Seriennummer in Dezimalschreibweise oder (bei Präfix 0x) in " +"Hexadezimalschreibweise" + +msgid "Retrieve an existing certificate." +msgstr "Ein existierendes Zertifikat holen." + +msgid "Revocation reason" +msgstr "Grund des Widerrufs" + +msgid "Output filename" +msgstr "Name der Ausgabedatei" + +msgid "File to store the certificate in." +msgstr "Datei, in der das Zertifikat gespeichert werden soll." + +msgid "Revoke a certificate." +msgstr "Ein Zertifikat widerrufen." + +msgid "Revoked" +msgstr "Widerrufen" + msgid "Reason" msgstr "Grund" +msgid "Reason for revoking the certificate (0-10)" +msgstr "Grund für den Widerruf des Zertifikats (0-10)" + +msgid "7 is not a valid revocation reason" +msgstr "7 ist kein gültiger Grund für einen Widerruf." + +msgid "Unrevoked" +msgstr "Nicht widerrufen" + msgid "Error" msgstr "Fehler" +msgid "Status" +msgstr "Status" + +msgid "configuration options" +msgstr "Konfigurationsoptionen" + +msgid "Configuration" +msgstr "Konfiguration" + +msgid "Maximum username length" +msgstr "Maximale Länge des Benutzernamens" + +msgid "Home directory base" +msgstr "Basis für Home-Verzeichnisse" + +msgid "Default location of home directories" +msgstr "Vorgegebener Ort für Home-Verzeichnisse" + +msgid "Default shell" +msgstr "Vorgabe-Shell" + +msgid "Default shell for new users" +msgstr "Vorgegebene Shell für neue Benutzer" + +msgid "Default users group" +msgstr "Vorgegebene Gruppe des Benutzers" + +msgid "Default group for new users" +msgstr "Vorgegebene Gruppe für neue Benutzer" + +msgid "Enable migration mode" +msgstr "Migrationsmodus aktivieren" + +msgid "Password plugin features" +msgstr "Passwort-Plugin-Funktionen" + +msgid "Extra hashes to generate in password plug-in" +msgstr "Im Passwort-Plugin zusätzlich zu erzeugende Prüfsummen" + +msgid "Default SELinux user" +msgstr "Vorgegebener SELinux-Benutzer" + +msgid "Default SELinux user when no match is found in SELinux map rule" +msgstr "" +"Vorgegebener SELinux-Benutzer, sofern in den Zuweisungsregeln von SELinux " +"nichts anderes bestimmt ist" + +msgid "Modify configuration options." +msgstr "Konfigurationsoptionen bearbeiten." + +msgid "The group doesn't exist" +msgstr "Die Gruppe existiert nicht" + +#, python-format +msgid "attribute \"%s\" not allowed" +msgstr "Attribut »%s« ist nicht erlaubt" + +msgid "May not be empty" +msgstr "Darf nicht leer sein" + +msgid "Show the current configuration." +msgstr "Die aktuelle Konfiguration anzeigen." + +#, python-format +msgid "invalid IP address version (is %(value)d, must be %(required_value)d)!" +msgstr "" +"Ungültige IP-Adressversion (ist %(value)d, muss %(required_value)d) sein!" + +msgid "invalid IP address format" +msgstr "Ungültiges IP-Adressformat" + +msgid "invalid IP network format" +msgstr "Ungültiges IP-Netzwerkformat" + +#, python-format +msgid "(see RFC %s for details)" +msgstr "(siehe RFC %s für Details)" + +#, python-format +msgid "'%s' is a required part of DNS record" +msgstr "»%s« ist ein erforderlicher Teil des DNS-Datensatzes" + +#, python-format +msgid "format must be specified as \"%(format)s\" %(rfcs)s" +msgstr "Format muss als »%(format)s« %(rfcs)s angegeben werden" + +msgid "IP Address" +msgstr "IP-Adresse" + +msgid "Subtype" +msgstr "Untertyp" + +msgid "Hostname" +msgstr "Hostname" + +msgid "Certificate Type" +msgstr "Zertifikattyp" + +msgid "Algorithm" +msgstr "Algorithmus" + +msgid "Certificate/CRL" +msgstr "Zertifikat/CRL" + +msgid "Target" +msgstr "Ziel" + +msgid "Digest Type" +msgstr "Prüfsummentyp" + +msgid "Digest" +msgstr "Prüfsumme" + +msgid "Preference" +msgstr "Bevorzugung" + +msgid "Altitude" +msgstr "Höhe" + +msgid "Size" +msgstr "Größe" + +msgid "Horizontal Precision" +msgstr "Horizontale Genauigkeit" + +msgid "Vertical Precision" +msgstr "Vertikale Genauigkeit" + +#, python-format +msgid "'%(required)s' must not be empty when '%(name)s' is set" +msgstr "»%(required)s« darf nicht leer sein, wenn »%(name)s« gesetzt ist." + +msgid "Flags" +msgstr "Flags" + +msgid "Service" +msgstr "Dienst" + +msgid "Regular Expression" +msgstr "Regulärer Ausdruck" + +msgid "Replacement" +msgstr "Ersetzung" + +msgid "Priority" +msgstr "Priorität" + +msgid "Port" +msgstr "Port" + +msgid "Fingerprint Type" +msgstr "Fingerabdruck-Typ" + +msgid "Fingerprint" +msgstr "Fingerabdruck" + +msgid "Text Data" +msgstr "Textdaten" + +msgid "Records" +msgstr "Datensätze" + +msgid "Record type" +msgstr "Datensatztyp" + +msgid "Zone name" +msgstr "Zonenname" + +msgid "Zone name (FQDN)" +msgstr "Zonenname (FQDN)" + +msgid "Active zone" +msgstr "Aktive Zone" + +msgid "Is zone active?" +msgstr "Ist die Zone aktiv?" + +msgid "DNS is not configured" +msgstr "DNS ist nicht konfiguriert" + +msgid "DNS zone" +msgstr "DNS-Zone" + +msgid "DNS zones" +msgstr "DNS-Zonen" + +msgid "DNS Zones" +msgstr "DNS-Zonen" + +msgid "DNS Zone" +msgstr "DNS-Zone" + +msgid "Administrator e-mail address" +msgstr "E-Mail-Adresse des Administrators" + +msgid "Time to live" +msgstr "Lebensdauer" + +msgid "Dynamic update" +msgstr "Dynamische Aktualisierung" + +msgid "Allow dynamic updates." +msgstr "Dynamische Aktualisierungen erlauben." + +msgid "Record name" +msgstr "Datensatzname" + +msgid "Class" +msgstr "Klasse" + +msgid "DNS class" +msgstr "DNS-Klasse" + +msgid "Structured" +msgstr "Strukturiert" + +msgid "DNS records can be only updated one at a time" +msgstr "Es können nicht mehrere DNS-Datensätze aktualisiert werden." + +msgid "No option to modify specific record provided." +msgstr "Keine Option zum Ändern des spezifischen Datensatzes angegeben." + +msgid "Current DNS record contents:\n" +msgstr "Derzeitiger Inhalt des DNS-Datensatzes:\n" + +#, python-format +msgid "Modify %(name)s '%(value)s'?" +msgstr "Wert von %(name)s auf »%(value)s« ändern?" + +#, python-format +msgid "Deleted record \"%(value)s\"" +msgstr "Datensatz »%(value)s« gelöscht" + +msgid "Delete all associated records" +msgstr "Alle zugehörigen Datensätze löschen" + +#, python-format +msgid "Zone record '%s' cannot be deleted" +msgstr "Zonen-Datensatz »%s« kann nicht gelöscht werden" + +msgid "No option to delete specific record provided." +msgstr "Keine Option zum Löschen des spezifischen Datensatzes angegeben." + +msgid "Delete all?" +msgstr "Alles löschen?" + +#, python-format +msgid "Delete %(name)s '%(value)s'?" +msgstr "Wert von %(name)s auf »%(value)s« löschen?" + +msgid "Display DNS resource." +msgstr "DNS-Ressource anzeigen." + +msgid "Search for DNS resources." +msgstr "Nach DNS-Ressourcen suchen." + +#, python-format +msgid "Found '%(value)s'" +msgstr "»%(value)s« gefunden" + +#, python-format +msgid "Host '%(host)s' not found" +msgstr "Host »%(host)s« nicht gefunden" + +msgid "group" +msgstr "Gruppe" + +msgid "groups" +msgstr "Gruppen" + +msgid "User Groups" +msgstr "Benutzergruppen" + +msgid "User Group" +msgstr "Benutzergruppe" + +msgid "Group name" +msgstr "Gruppenname" + +msgid "Group description" +msgstr "Gruppenbeschreibung" + +msgid "GID" +msgstr "Gruppen-ID" + +msgid "GID (use this option to set it manually)" +msgstr "Gruppen-ID (verwenden Sie diese Option, um die ID manuell anzugeben)" + +msgid "Create a new group." +msgstr "Eine neue Gruppe erstellen." + +#, python-format +msgid "Added group \"%(value)s\"" +msgstr "Gruppe »%(value)s« hinzugefügt" + +msgid "Create as a non-POSIX group" +msgstr "Als Nicht-POSIX-Gruppe erstellen" + +msgid "Delete group." +msgstr "Gruppe löschen." + +#, python-format +msgid "Deleted group \"%(value)s\"" +msgstr "Gruppe »%(value)s« gelöscht" + +msgid "Modify a group." +msgstr "Eine Gruppe ändern." + +#, python-format +msgid "Modified group \"%(value)s\"" +msgstr "Gruppe »%(value)s« geändert" + +msgid "change to a POSIX group" +msgstr "in eine POSIC-Gruppe ändern" + +msgid "Search for groups." +msgstr "Nach Gruppen suchen." + +#, python-format +msgid "%(count)d group matched" +msgid_plural "%(count)d groups matched" +msgstr[0] "%(count)d passende Gruppe" +msgstr[1] "%(count)d passende Gruppen" + +msgid "search for private groups" +msgstr "nach privaten Gruppen suchen" + +msgid "Display information about a named group." +msgstr "Informationen zu einer genannten Gruppe anzeigen." + +msgid "Add members to a group." +msgstr "Mitglieder zu einer Gruppe hinzufügen." + +msgid "Remove members from a group." +msgstr "Mitglieder aus einer Gruppe entfernen." + +msgid "not allowed to modify user entries" +msgstr "Es ist nicht erlaubt, Benutzereinträge zu ändern." + +msgid "not allowed to modify group entries" +msgstr "Es ist nicht erlaubt, Gruppeneinträge zu ändern." + +msgid "Not a managed group" +msgstr "Keine verwaltete Gruppe" + +msgid "HBAC rule" +msgstr "HBAC-Regel" + +msgid "HBAC rules" +msgstr "HBAC-Regeln" + +msgid "HBAC Rules" +msgstr "Es ist nicht erlaubt, Benutzereinträge zu ändern." + +msgid "HBAC Rule" +msgstr "HBAC-Regel" + +msgid "Rule name" +msgstr "Regelname" + +msgid "Rule type (allow)" +msgstr "Regeltyp (erlauben)" + +msgid "Rule type" +msgstr "Regeltyp" + +msgid "User category" +msgstr "Benutzerkategorie" + +msgid "User category the rule applies to" +msgstr "Benutzerkategorie, auf welche die Regel angewendet werden soll" + +msgid "Host category" +msgstr "Host-Kategorie" + +msgid "Host category the rule applies to" +msgstr "Host-Kategorie, auf welche die Regel angewendet werden soll" + +msgid "Enabled" +msgstr "Aktiviert" + +msgid "Services" +msgstr "Dienste" + +msgid "Access time" +msgstr "Zugriffszeit" + +msgid "HBAC service" +msgstr "HBAC-Dienst" + +msgid "HBAC services" +msgstr "HBAC-Dienste" + +msgid "HBAC Services" +msgstr "HBAC-Dienste" + +msgid "HBAC Service" +msgstr "HBAC-Dienst" + +msgid "Service name" +msgstr "Dienstname" + +msgid "HBAC service description" +msgstr "Beschreibung des HBAC-Dienstes" + +msgid "Add a new HBAC service." +msgstr "Einen neuen HBAC-Dienst hinzufügen." + +msgid "Search for HBAC services." +msgstr "Nach HBAC-Diensten suchen." + +msgid "Display information about an HBAC service." +msgstr "Informationen zu einem HBAC-Dienst anzeigen." + +msgid "Warning" +msgstr "Warnung" + +msgid "Result of simulation" +msgstr "Ergebnis der Simulation" + +msgid "User name" +msgstr "Benutzername" + +#, python-format +msgid "Access granted: %s" +msgstr "Zugriff gewährt: %s" + +msgid "Serial Number" +msgstr "Seriennummer" + +msgid "SSH public key fingerprint" +msgstr "Fingerabdruck des öffentlichen SSH-Schlüssels" + +#, python-format +msgid "invalid domain-name: %s" +msgstr "Ungültiger Domainname: %s" + +msgid "Platform" +msgstr "Plattform" + +msgid "Operating system" +msgstr "Betriebssystem" + +msgid "User password" +msgstr "Benutzerpasswort" + +msgid "Random password" +msgstr "Zufälliges Passwort" + +msgid "Principal name" +msgstr "Principal-Name" + +msgid "MAC address" +msgstr "MAC-Adresse" + +msgid "Name of object to export" +msgstr "Name des zu exportierenden Objekts" + +msgid "Name of method to export" +msgstr "Name des zu exportierenden Methode" + +msgid "Name of command to export" +msgstr "Name des zu exportierenden Befehls" + +msgid "No entries." +msgstr "Keine Einträge." + +msgid "Show Results" +msgstr "Ergebnisse anzeigen" + +msgid "Add" +msgstr "Hinzufügen" + +msgid "Add and Add Another" +msgstr "Hinzufügen und weitere hinzufügen" + +msgid "Add and Close" +msgstr "Hinzufügen und schließen" + +msgid "Add and Edit" +msgstr "Hinzufügen und bearbeiten" + +msgid "Cancel" +msgstr "Abbrechen" + +msgid "Close" +msgstr "Schließen" + +msgid "Disable" +msgstr "Deaktivieren" + +msgid "Edit" +msgstr "Bearbeiten" + +msgid "Enable" +msgstr "Aktivieren" + +msgid "Find" +msgstr "Suchen" + +msgid "OK" +msgstr "OK" + +msgid "Refresh" +msgstr "Aktualisieren" + +msgid "Delete" +msgstr "Löschen" + +msgid "Reset" +msgstr "Zurücksetzen" + +msgid "Restore" +msgstr "Wiederherstellen" + +msgid "Revoke" +msgstr "Widerrufen" + +msgid "Update" +msgstr "Aktualisieren" + +msgid "View" +msgstr "Ansicht" + +msgid "Collapse All" +msgstr "Alle einklappen" + +msgid "Expand All" +msgstr "Alle aufklappen" + +msgid "Back to Top" +msgstr "Zurück nach oben" + +#, python-brace-format +msgid "Add ${entity}" +msgstr "${entity} hinzufügen" + +msgid "Available" +msgstr "Verfügbar" + +msgid "Confirmation" +msgstr "Bestätigung" + +msgid "Unsaved Changes" +msgstr "Ungespeicherte Änderungen" + +msgid "Hide details" +msgstr "Details verbergen" + +#, python-brace-format +msgid "Remove ${entity}" +msgstr "${entity} entfernen" + +msgid "Show details" +msgstr "Details anzeigen" + +msgid "HTTP Error" +msgstr "HTTP-Fehler" + +msgid "Internal Error" +msgstr "Interner Fehler" + +msgid "IPA Error" +msgstr "IPA-Fehler" + +msgid "No response" +msgstr "Keine Antwort" + +msgid "Unknown Error" +msgstr "Unbekannter Fehler" + +msgid "URL" +msgstr "URL" + +msgid "Settings" +msgstr "Einstellungen" + +msgid "Search" +msgstr "Suchen" + +msgid "Logged In As" +msgstr "Angemeldet als" + +msgid "Username" +msgstr "Benutzername" + +msgid "Attribute" +msgstr "Attribut" + +msgid "Add Rule" +msgstr "Regel hinzufügen" + +msgid "Expression" +msgstr "Ausdruck" + +msgid "Direct" +msgstr "Direkt" + +msgid "Indirect" +msgstr "Indirekt" + +msgid "Certificates" +msgstr "Zertifikate" + +msgid "Expires On" +msgstr "Läuft ab am" + +msgid "Issued By" +msgstr "Ausgegeben von" + +msgid "Issued On" +msgstr "Ausgegeben am" + +msgid "MD5 Fingerprint" +msgstr "MD5-Fingerabdruck" + +msgid "No Valid Certificate" +msgstr "Kein gültiges Zertifikat" + +msgid "New Certificate" +msgstr "Neues Zertifikat" + +msgid "Organization" +msgstr "Organisation" + +msgid "SHA1 Fingerprint" +msgstr "SHA1-Fingerabdruck" + +msgid "Unspecified" +msgstr "Nicht angegeben" + +msgid "Validity" +msgstr "Gültigkeit" + +msgid "Group Options" +msgstr "Gruppenoptionen" + +msgid "Search Options" +msgstr "Suchoptionen" + +msgid "SELinux Options" +msgstr "SELinux-Optionen" + +msgid "User Options" +msgstr "Benutzeroptionen" + +msgid "Options" +msgstr "Optionen" + +msgid "Data" +msgstr "Daten" + +msgid "Other Record Types" +msgstr "Andere Datensatztypen" + +msgid "Record not found." +msgstr "Datensatz nicht gefunden." + +msgid "Group Settings" +msgstr "Gruppeneinstellungen" + +msgid "External" +msgstr "Extern" + +msgid "Any Host" +msgstr "Jeder Host" + +msgid "Any Service" +msgstr "Jeder Dienst" + +msgid "Access Denied" +msgstr "Zugriff verweigert" + +msgid "Access Granted" +msgstr "Zugriff gewährt" + +msgid "New Test" +msgstr "Neuer Test" + +msgid "Kerberos Key" +msgstr "Kerberos-Schlüssel" + +msgid "User" +msgstr "Benutzer" + +msgid "Groups" +msgstr "Gruppen" + +msgid "Commands" +msgstr "Befehle" + +msgid "Allow" +msgstr "Erlauben" + +msgid "Run Commands" +msgstr "Befehle ausführen" + +msgid "Deny" +msgstr "Verweigern" + +msgid "Account" +msgstr "Konto" + +msgid "Current Password" +msgstr "Aktuelles Passwort" + +msgid "Current password is required" +msgstr "Aktuelles Passwort ist erforderlich" + +msgid "New Password" +msgstr "Neues Passwort" + +msgid "Password change complete" +msgstr "Passwortänderung abgeschlossen" + +msgid "Passwords must match" +msgstr "Passwörter müssen übereinstimmen" + +msgid "Reset Password" +msgstr "Passwort zurücksetzen" + +msgid "Verify Password" +msgstr "Passwort verifizieren" + +msgid "Are you sure you want to delete selected entries?" +msgstr "Sind Sie sicher, dass Sie die ausgewählten Einträge löschen wollen?" + +msgid "Some entries were not deleted" +msgstr "Einige Einträge wurden nicht gelöscht" + +msgid "Select All" +msgstr "Alle auswählen" + +msgid "Unselect All" +msgstr "Alle abwählen" + +msgid "Disabled" +msgstr "Deaktiviert" + msgid "Automount" msgstr "Automount" msgid "DNS" msgstr "DNS" + +msgid "Identity" +msgstr "Identität" + +msgid "IPA Server" +msgstr "IPA-Server" + +msgid "Sudo" +msgstr "Sudo" + +msgid "Must be an integer" +msgstr "Muss eine Ganzzahl sein" + +msgid "Not a valid IP address" +msgstr "Keine gültige IP-Adresse" + +msgid "Not a valid IPv4 address" +msgstr "Keine gültige IPv4-Adresse" + +msgid "Not a valid IPv6 address" +msgstr "Keine gültige IPv6-Adresse" + +#, python-brace-format +msgid "Maximum value is ${value}" +msgstr "Maximaler Wert ist ${value}" + +#, python-brace-format +msgid "Minimum value is ${value}" +msgstr "Minimaler Wert ist ${value}" + +msgid "LDAP URI" +msgstr "LDAP-URI" + +msgid "bind password" +msgstr "Bind-Passwort" + +msgid "Bind DN" +msgstr "Bind-DN" + +msgid "LDAP schema" +msgstr "LDAP-Schema" + +msgid "" +"The schema used on the LDAP server. Supported values are RFC2307 and " +"RFC2307bis. The default is RFC2307bis" +msgstr "" +"Das auf dem LDAP-Server verwendete Schema. Zulässige Werte sind RFC2307 und " +"RFC2307bis. Der Vorgabewert ist RFC2307bis." + +msgid "Lists of objects migrated; categorized by type." +msgstr "Liste der migrierten Objekte, nach Typ geordnet." + +msgid "Lists of objects that could not be migrated; categorized by type." +msgstr "" +"Liste der Objekte, die nicht migriert werden konnten, nach Typ geordnet." + +msgid "Migration mode is disabled. Use 'ipa config-mod' to enable it." +msgstr "" +"Der Migrationsmodus ist deaktiviert. Rufen Sie »ipa config-mod« auf, um ihn " +"zu aktivieren." + +msgid "Show environment variables." +msgstr "Umgebungsvariablen anzeigen." + +#, python-format +msgid "%(count)d variables" +msgstr "%(count)d Variablen" + +msgid "Show all loaded plugins." +msgstr "Alle geladenen Plugins anzeigen." + +#, python-format +msgid "%(count)d plugin loaded" +msgid_plural "%(count)d plugins loaded" +msgstr[0] "%(count)d Plugin geladen" +msgstr[1] "%(count)d Plugins geladen" + +msgid "Number of plugins loaded" +msgstr "Anzahl der geladenen Plugins" + +msgid "PKINIT" +msgstr "PKINIT" + +msgid "Group" +msgstr "Gruppe" + +msgid "Character classes" +msgstr "Zeichenklassen" + +msgid "service" +msgstr "Dienst" + +msgid "services" +msgstr "Dienste" + +msgid "Service principal" +msgstr "Dienst-Principal" + +msgid "Add a new IPA new service." +msgstr "Einen neuen IPA-Dienst hinzufügen." + +#, python-format +msgid "Added service \"%(value)s\"" +msgstr "Dienst »%(value)s« hinzugefügt" + +msgid "Delete an IPA service." +msgstr "Einen IPA-Dienst entfernen." + +#, python-format +msgid "Deleted service \"%(value)s\"" +msgstr "Dienst »%(value)s« gelöscht" + +msgid "Modify an existing IPA service." +msgstr "Einen existierenden IPA-Dienst bearbeiten." + +#, python-format +msgid "Modified service \"%(value)s\"" +msgstr "Dienst »%(value)s« geändert" + +msgid "Search for IPA services." +msgstr "Nach IPA-Diensten suchen." + +#, python-format +msgid "%(count)d service matched" +msgid_plural "%(count)d services matched" +msgstr[0] "%(count)d passender Dienst" +msgstr[1] "%(count)d passende Dienste" + +msgid "Display information about an IPA service." +msgstr "Informationen zu einem IPA-Dienst anzeigen." + +msgid "Add hosts that can manage this service." +msgstr "Hosts hinzufügen, die diesen Dienst verwalten können." + +msgid "Remove hosts that can manage this service." +msgstr "Hosts entfernen, die diesen Dienst verwalten können." + +msgid "Disable the Kerberos key and SSL certificate of a service." +msgstr "" +"Den Kerberos-Schlüssel und das SSL-Zertifikat eines Dienstes deaktivieren." + +#, python-format +msgid "Disabled service \"%(value)s\"" +msgstr "Dienst »%(value)s« deaktiviert" + +msgid "commands for controlling sudo configuration" +msgstr "Befehle zum Steuern der sudo-Konfiguration" + +msgid "sudo command" +msgstr "Sudo-Befehl" + +msgid "sudo commands" +msgstr "Sudo-Befehle" + +msgid "Sudo Commands" +msgstr "Sudo-Befehle" + +msgid "Sudo Command" +msgstr "Sudo-Befehl" + +msgid "A description of this command" +msgstr "Eine Beschreibung dieses Befehls" + +msgid "Create new Sudo Command." +msgstr "Neuen Sudo-Befehl erzeugen." + +msgid "Delete Sudo Command." +msgstr "Sudo-Befehl löschen." + +msgid "Modify Sudo Command." +msgstr "Sudo-Befehl ändern." + +msgid "Search for Sudo Commands." +msgstr "Nach Sudo-Befehlen suchen." + +msgid "Display Sudo Command." +msgstr "Sudo-Befehl anzeigen." + +msgid "sudo command group" +msgstr "Sudo-Befehlsgruppe" + +msgid "sudo command groups" +msgstr "Sudo-Befehlsgruppen" + +msgid "Sudo Command Group" +msgstr "Sudo-Befehlsgruppe" + +msgid "Commands for controlling sudo configuration" +msgstr "Befehle zum Steuern der Sudo-Konfiguration" + +msgid "this option has been deprecated." +msgstr "Diese Option ist veraltet." + +msgid "sudo rule" +msgstr "Sudo-Regel" + +msgid "sudo rules" +msgstr "Sudo-Regeln" + +msgid "Sudo Rules" +msgstr "Sudo-Regeln" + +msgid "Sudo Rule" +msgstr "Sudo-Regel" + +msgid "Command category" +msgstr "Befehlskategorie" + +msgid "Command category the rule applies to" +msgstr "Befehlskategorie, auf die die Regel angewendet werden soll" + +msgid "External User" +msgstr "Externer Benutzer" + +msgid "Sudo Option" +msgstr "Sudo-Option" + +msgid "user" +msgstr "Benutzer" + +msgid "users" +msgstr "Benutzer" + +msgid "Search for Sudo Rule." +msgstr "Nach Sudo-Regel suchen." + +msgid "Display Sudo Rule." +msgstr "Sudo-Regel anzeigen." + +msgid "Enable a Sudo Rule." +msgstr "Eine Sudo-Regel aktivieren." + +#, python-format +msgid "Enabled Sudo Rule \"%s\"" +msgstr "Sudo-Regel »%s« wurde aktiviert." + +msgid "Disable a Sudo Rule." +msgstr "Eine Sudo-Regel deaktivieren." + +#, python-format +msgid "Disabled Sudo Rule \"%s\"" +msgstr "Sudo-Regel »%s« wurde deaktiviert." + +msgid "Realm name" +msgstr "Realm-Name" + +msgid "Kerberos keys available" +msgstr "Kerberos-Schlüssel verfügbar" + +msgid "User login" +msgstr "Anmeldename" + +msgid "First name" +msgstr "Vorname" + +msgid "Last name" +msgstr "Nachname" + +msgid "Full name" +msgstr "Vollständiger Name" + +msgid "Display name" +msgstr "Angezeigter Name" + +msgid "Initials" +msgstr "Initialen" + +msgid "Home directory" +msgstr "Home-Verzeichnis" + +msgid "Login shell" +msgstr "Anmeldeshell" + +msgid "Kerberos principal" +msgstr "Kerberos-Principal" + +msgid "Email address" +msgstr "Email-Adresse" + +msgid "Generate a random user password" +msgstr "Ein zufälliges Benutzerpasswort erzeugen" + +msgid "UID" +msgstr "UID" + +msgid "User ID Number (system will assign one if not provided)" +msgstr "" +"Benutzer-ID (wird durch das System zugewiesen, falls diese nicht angegeben " +"wird)" + +msgid "Group ID Number" +msgstr "Gruppen-ID" + +msgid "Street address" +msgstr "Straße" + +msgid "City" +msgstr "Ort" + +msgid "State/Province" +msgstr "Staat/Bundesland" + +msgid "ZIP" +msgstr "Postleitzahl" + +msgid "Telephone Number" +msgstr "Telefonnummer" + +msgid "Mobile Telephone Number" +msgstr "Mobiltelefonnummer" + +msgid "Fax Number" +msgstr "Faxnummer" + +msgid "Account disabled" +msgstr "Konto ist deaktiviert" + +msgid "Add a new user." +msgstr "Einen neuen Benutzer hinzufügen." + +#, python-format +msgid "Added user \"%(value)s\"" +msgstr "Benutzer »%(value)s« hinzugefügt" + +#, python-format +msgid "can be at most %(len)d characters" +msgstr "darf höchstens %(len)d Zeichen lang sein" + +msgid "Delete a user." +msgstr "Einen Benutzer löschen." + +#, python-format +msgid "Deleted user \"%(value)s\"" +msgstr "Benutzer »%(value)s« gelöscht" + +msgid "Modify a user." +msgstr "Einen Benutzer bearbeiten." + +#, python-format +msgid "Modified user \"%(value)s\"" +msgstr "Benutzer »%(value)s« geändert" + +msgid "Search for users." +msgstr "Nach Benutzern suchen." + +msgid "Display user record for current Kerberos principal" +msgstr "Benutzer-Datensatz für den aktuellen Kerberos-Principal anzeigen" + +#, python-format +msgid "%(count)d user matched" +msgid_plural "%(count)d users matched" +msgstr[0] "%(count)d passender Benutzer" +msgstr[1] "%(count)d passende Benutzer" + +msgid "Display information about a user." +msgstr "Informationen zu einem Benutzer anzeigen." + +msgid "Disable a user account." +msgstr "Ein Benutzerkonto deaktivieren." + +#, python-format +msgid "Disabled user account \"%(value)s\"" +msgstr "Benutzerkonto »%(value)s« wurde deaktiviert" + +msgid "Enable a user account." +msgstr "Ein Benutzerkonto aktivieren." + +#, python-format +msgid "Enabled user account \"%(value)s\"" +msgstr "Benutzerkonto »%(value)s« wurde aktiviert" + +#, python-format +msgid "Unlocked account \"%(value)s\"" +msgstr "Konto »%(value)s« wurde entsperrt" + +#, python-format +msgid "Permission denied: %(file)s" +msgstr "Zugriff verweigert: %(file)s" + +msgid "too many '@' characters" +msgstr "Zu viele »@«-Zeichen" + +msgid "cannot be longer that 255 characters" +msgstr "darf nicht länger als 255 Zeichen sein" + +msgid "not fully qualified" +msgstr "nicht voll ausgeschrieben" + +msgid "invalid SSH public key" +msgstr "Ungültiger öffentlicher SSH-Schlüssel" + +#, python-format +msgid "objectclass %s not found" +msgstr "objektklasse %s nicht gefunden" + +msgid "The IPA realm" +msgstr "Der IPA-Realm" + +msgid "Hardware platform of the host (e.g. Lenovo T61)" +msgstr "Hardwareplattform des Hosts (z.B. Lenovo T400)" + +msgid "Operating System and version of the host (e.g. Fedora 9)" +msgstr "Betriebssystem und Version des Hosts (z.B. Fedora 20)" + +#, c-format +msgid "cannot open configuration file %s\n" +msgstr "Konfigurationsdatei %s konnte nicht geöffnet werden\n" + +#, c-format +msgid "cannot stat() configuration file %s\n" +msgstr "Aufruf von »stat« für Konfigurationsdatei %s nicht möglich\n" + +#, c-format +msgid "out of memory\n" +msgstr "Nicht genügend Speicher\n" + +#, c-format +msgid "read error\n" +msgstr "Lesefehler\n" + +#, c-format +msgid "No keys accepted by KDC\n" +msgstr "KDC akzeptiert keine Schlüssel\n" + +#, c-format +msgid "Out of memory \n" +msgstr "Nicht genügend Speicher\n" + +#, c-format +msgid "Unable to initialize ldap library!\n" +msgstr "ldap-Bibliothek konnte nicht initialisiert werden!\n" + +#, c-format +msgid "Operation failed! %s\n" +msgstr "Operation fehlgeschlagen! %s\n" + +#, c-format +msgid "Out of Memory!\n" +msgstr "Nicht genügend Speicher!\n" + +msgid "New Principal Password" +msgstr "Neues Principal-Passwort" + +msgid "Verify Principal Password" +msgstr "Principal-Passwort bestätigen" + +msgid "Output only on errors" +msgstr "Ausgabe nur bei Fehlern" + +msgid "Server Name" +msgstr "Servername" + +msgid "LDAP password" +msgstr "LDAP-Passwort" + +#, c-format +msgid "Kerberos context initialization failed\n" +msgstr "Initialisierung des Kerberos-Kontexts fehlgschlagen\n" + +#, c-format +msgid "Supported encryption types:\n" +msgstr "Unterstützte Verschlüsselungstypen:\n" + +#, c-format +msgid "Warning: failed to convert type (#%d)\n" +msgstr "Warnung: Typ konnte nicht umgewandelt werden (#%d)\n" + +#, c-format +msgid "Out of memory!" +msgstr "Nicht genügend Speicher!" + +#, c-format +msgid "Unable to initialize connection to ldap server: %s" +msgstr "Verbindung zum LDAP-Server konnte nicht initialisiert werden: %s" + +#, c-format +msgid "Unable to set LDAP version\n" +msgstr "LDAP-Version konnte nicht gesetzt werden\n" + +#, c-format +msgid "Bind failed: %s\n" +msgstr "Bind fehlgeschlagen: %s\n" + +#, c-format +msgid "No values for %s" +msgstr "Keine Werte für %s" + +#, c-format +msgid "Incorrect password.\n" +msgstr "Inkorrektes Passwort.\n" + +#, c-format +msgid "Error obtaining initial credentials: %s.\n" +msgstr "Fehler beim Holen der initialen Anmeldedaten: %s.\n" + +#, c-format +msgid "Unable to generate Kerberos Credential Cache\n" +msgstr "" +"Anmeldedaten-Zwischenspeicher für Kerberos konnte nicht erzeugt werden\n" + +#, c-format +msgid "Error storing creds in credential cache: %s.\n" +msgstr "" +"Fehler beim Speichern der Anmeldedaten im Anmeldedaten-Zwischenspeicher: " +"%s.\n" + +#, c-format +msgid "fork() failed\n" +msgstr "fork() fehlgeschlagen\n" + +#, c-format +msgid "ipa-getkeytab not found\n" +msgstr "ipa-getkeytab nicht gefunden\n" + +#, c-format +msgid "ipa-getkeytab has bad permissions?\n" +msgstr "ipa-getkeytab hat falsche Zugriffsrechte?\n" + +#, c-format +msgid "executing ipa-getkeytab failed, errno %d\n" +msgstr "Ausführen von ipa-getkeytab fehgeschlagen, errno %d\n" + +msgid "Print the raw XML-RPC output in GSSAPI mode" +msgstr "Die rohe XML-RPC-Ausgabe im GSSAPI-Modus anzeigen" + +msgid "Quiet mode. Only errors are displayed." +msgstr "Stiller Modus. Nur Fehler werden ausgegeben." + +msgid "Hostname of this server" +msgstr "Hostname dieses Servers" + +msgid "hostname" +msgstr "Hostname" + +msgid "IPA Server to use" +msgstr "Zu verwendender IPA-Server" + +msgid "filename" +msgstr "Dateiname" + +msgid "LDAP password (if not using Kerberos)" +msgstr "LDAP-Passwort (falls Kerberos nicht verwendet wird)" + +msgid "password" +msgstr "Passwort" + +#, c-format +msgid "Removing principal %s\n" +msgstr "Principal %s wird entfernt\n" + +#, c-format +msgid "principal not found\n" +msgstr "Principal nicht gefunden\n" + +#, c-format +msgid "realm not found\n" +msgstr "Realm nicht gefunden\n" + +msgid "Print debugging information" +msgstr "Ausgabe von Debug-Informationen" + +msgid "Debugging output" +msgstr "Debugging-Ausgabe" + +msgid "Remove all principals in this realm" +msgstr "Alle Principals in diesem Realm entfernen" + +msgid "Out of memory\n" +msgstr "Nicht genügend Speicher\n" + +msgid "Out of memory!?\n" +msgstr "Nicht genügend Speicher!?\n" + +msgid "Failed to create random key!\n" +msgstr "Zufallsschlüssel konnte nicht erzeugt werden!\n" + +msgid "Failed to create key!\n" +msgstr "Schlüssel konnte nicht erzeugt werden!\n" diff --git a/install/po/es.po b/install/po/es.po index bd94c6630..80bdc7beb 100644 --- a/install/po/es.po +++ b/install/po/es.po @@ -3,7 +3,8 @@ # This file is distributed under the same license as the PACKAGE package. # # Translators: -# Adolfo Jayme Barrientos <fitoschido@ubuntu.com>, 2013 +# Adolfo Jayme Barrientos <fitoschido@ubuntu.com>, 2013 +# Adolfo Jayme Barrientos <fitoschido@ubuntu.com>, 2014 # Eduardo Villagrán M <gotencool@gmail.com>, 2012 # vareli <ehespinosa@ya.com>, 2013 # Gladys Guerrero <gguerrer@redhat.com>, 2011 @@ -16,10 +17,11 @@ msgstr "" "Project-Id-Version: FreeIPA\n" "Report-Msgid-Bugs-To: https://hosted.fedoraproject.org/projects/freeipa/" "newticket\n" -"POT-Creation-Date: 2013-10-09 14:39+0200\n" -"PO-Revision-Date: 2013-09-20 06:46+0000\n" -"Last-Translator: Adolfo Jayme Barrientos <fitoschido@ubuntu.com>\n" -"Language-Team: Spanish <trans-es@lists.fedoraproject.org>\n" +"POT-Creation-Date: 2014-06-27 16:29+0200\n" +"PO-Revision-Date: 2014-06-25 19:44+0000\n" +"Last-Translator: Petr Viktorin <encukou@gmail.com>\n" +"Language-Team: Spanish (http://www.transifex.com/projects/p/freeipa/language/" +"es/)\n" "Language: es\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -32,7 +34,10 @@ msgstr "Ingrese %(label)s nuevamente para verificar: " #, c-format msgid "Passwords do not match!" -msgstr "¡Las contraseñas no coinciden!" +msgstr "Las contraseñas no coinciden." + +msgid "No matching entries found" +msgstr "No se encontraron entradas coincidentes" msgid "Topic commands:" msgstr "Tema comandos:" @@ -248,6 +253,11 @@ msgstr "Ya está registrado" msgid "Not registered yet" msgstr "Aún no está registrado" +#, python-format +msgid "%(key)s cannot be deleted because %(label)s %(dependent)s requires it" +msgstr "" +"No se puede eliminar %(key)s porque %(label)s %(dependent)s lo requiere" + msgid "Results are truncated, try a more specific search" msgstr "" "Los resultados se encuentran truncados, intente realizar una búsqueda más " @@ -272,6 +282,9 @@ msgstr "" msgid "Forward to server instead of running locally" msgstr "Reenvía al servidor en lugar de ejecutarse localmente" +msgid "Additional instructions:" +msgstr "Instrucciones adicionales:" + msgid "A dictionary representing an LDAP entry" msgstr "Un diccionario representando una entrada LDAP" @@ -281,9 +294,18 @@ msgstr "Una lista de entradas LDAP" msgid "All commands should at least have a result" msgstr "Todos los comandos deberían por lo menos tener un resultado" +msgid "User-friendly description of action performed" +msgstr "Descripción sencilla de la acción realizada" + +msgid "The primary_key value of the entry, e.g. 'jdoe' for a user" +msgstr "El valor de primary_key de la entrada, p.ej., «jperez» para un usuario" + msgid "Number of entries returned" msgstr "Cantidad de entradas devueltas" +msgid "True if not all results were returned" +msgstr "Verdadero si no todos los resultados se devolvieron" + msgid "List of deletions that failed" msgstr "Lista de eliminaciones fallidas" @@ -350,6 +372,10 @@ msgstr "puede tener a lo sumo %(maxlength)d caracteres" msgid "must be exactly %(length)d characters" msgstr "debe tener exactamente %(length)d caracteres" +#, python-format +msgid "must be '%(value)s'" +msgstr "debe ser «%(value)s»" + msgid "A list of ACI values" msgstr "Una lista de valores ACI" @@ -527,10 +553,6 @@ msgid "A description of this auto member rule" msgstr "Una descripción de esta regla auto miembro" #, python-format -msgid "Group: %s not found!" -msgstr "Grupo: %s no encontrado!" - -#, python-format msgid "%s is not a valid attribute." msgstr "%s no es un atributo válido." @@ -596,6 +618,10 @@ msgstr "" " Borrar condiciones de una regla automiembro.\n" " " +#, python-format +msgid "Removed condition(s) from \"%(value)s\"" +msgstr "Condición(es) eliminada(s) de «%(value)s»" + msgid "Conditions that could not be removed" msgstr "Condiciones que no pueden ser eliminadas" @@ -661,6 +687,12 @@ msgstr "" " Muestra información sobre una regla automiembro.\n" " " +msgid "Users" +msgstr "Usuarios" + +msgid "Hosts" +msgstr "Equipos" + msgid "automount location" msgstr "localización automontaje" @@ -1106,15 +1138,27 @@ msgid "the entry was deleted while being modified" msgstr "la entrada fue eliminada mientras estaba siendo modificada" #, python-format +msgid "%s" +msgstr "%s" + +#, python-format msgid "member %s" msgstr "miembro %s" +#, python-format +msgid "%s to add" +msgstr "%s a añadir" + msgid "Members that could not be added" msgstr "Miembros que no han podido ser añadidos" msgid "Number of members added" msgstr "Cantidad de miembros añadidos" +#, python-format +msgid "%s to remove" +msgstr "%s a eliminar" + msgid "Members that could not be removed" msgstr "Miembros que no han podido ser eliminados" @@ -1144,14 +1188,6 @@ msgstr "Cantidad máxima de entradas obtenidas" msgid "Nested Methods to execute" msgstr "Métodos anidados para ejecutar" -msgid "Failure decoding Certificate Signing Request:" -msgstr "" -"Falla al intentar decodificar la petición de identificación de certificado" - -msgid "Failure decoding Certificate Signing Request" -msgstr "" -"Falla al intentar decodificar la petición de identificación de certificado" - #, python-format msgid "Failure decoding Certificate Signing Request: %s" msgstr "" @@ -1198,6 +1234,9 @@ msgstr "Huella digital (SHA1)" msgid "Serial number" msgstr "Número de serie" +msgid "Serial number (hex)" +msgstr "N.º de serie (hex.)" + msgid "Dictionary mapping variable name to value" msgstr "Nombre de la variable de mapeo de dicionario a valorizar " @@ -1422,9 +1461,12 @@ msgstr "formato no válido de dirección IP" msgid "invalid IP network format" msgstr "formato no válido de red IP" +msgid "invalid address format" +msgstr "formato de dirección no válido" + #, python-format -msgid "invalid domain-name: %s" -msgstr "nombre de dominio no válido: %s" +msgid "%(port)s is not a valid port" +msgstr "%(port)s no es un puerto válido" #, python-format msgid "DNS reverse zone for IP address %(addr)s not found" @@ -1434,12 +1476,27 @@ msgstr "Zona invertida DNS para dirección IP %(addr)s no encontrada" msgid "DNS zone %(zone)s not found" msgstr "Zona DNS %(zone)s no encontrado" +#, python-format +msgid "%s record" +msgstr "%s registro" + +#, python-format +msgid "%s Record" +msgstr "%s registro" + +#, python-format +msgid "'%s' is a required part of DNS record" +msgstr "«%s» es una parte requerida del registro DNS" + msgid "Invalid number of parts!" msgstr "El número de partes no es válido." msgid "IP Address" msgstr "Dirección IP" +msgid "Record data" +msgstr "Registrar datos" + msgid "Subtype" msgstr "Subtipo" @@ -1449,6 +1506,9 @@ msgstr "Nombre del equipo anfitrión" msgid "Certificate Type" msgstr "Tipo de certificado" +msgid "Key Tag" +msgstr "Etiqueta de clave" + msgid "Algorithm" msgstr "Algoritmo" @@ -1458,15 +1518,33 @@ msgstr "Certificado/CRL" msgid "Target" msgstr "Meta" -msgid "Protocol" -msgstr "Protocolo" - -msgid "Public Key" -msgstr "Clave pública" - msgid "Preference" msgstr "Preferencia" +msgid "Degrees Latitude" +msgstr "Latitud en grados" + +msgid "Minutes Latitude" +msgstr "Latitud en minutos" + +msgid "Seconds Latitude" +msgstr "Latitud en segundos" + +msgid "Direction Latitude" +msgstr "Latitud de dirección" + +msgid "Altitude" +msgstr "Altitud" + +msgid "Size" +msgstr "Tamaño" + +msgid "Horizontal Precision" +msgstr "Precisión horizontal" + +msgid "Vertical Precision" +msgstr "Precisión vertical" + msgid "" "format must be specified as\n" " \"d1 [m1 [s1]] {\"N\"|\"S\"} d2 [m2 [s2]] {\"E\"|\"W\"} alt[\"m\"] " @@ -1491,33 +1569,24 @@ msgstr "" "siz, hp, vp: [0 .. 90000000.00] (tamaño/precisión en metros)\n" "Vea RFC 1876 para detalles" +msgid "Order" +msgstr "Orden" + msgid "Service" msgstr "Servicio" msgid "Regular Expression" msgstr "Expresión regular" +msgid "Replacement" +msgstr "Reemplazo" + msgid "Priority" msgstr "Prioridad" msgid "Port" msgstr "Puerto" -msgid "Labels" -msgstr "Etiquetas" - -msgid "Original TTL" -msgstr "TTL original" - -msgid "Signature Expiration" -msgstr "Caducidad de la firma" - -msgid "Signer's Name" -msgstr "Nombre del firmante" - -msgid "Signature" -msgstr "Firma" - msgid "Fingerprint Type" msgstr "Tipo de huella digital" @@ -1538,18 +1607,6 @@ msgid "Nameserver '%(host)s' does not have a corresponding A/AAAA record" msgstr "" "El servidor de nombre '%(host)s' no tiene su correspondiente registro A/AAAA" -msgid "DNS zone" -msgstr "zona DNS" - -msgid "DNS zones" -msgstr "zonas DNS" - -msgid "DNS Zones" -msgstr "Zonas DNS" - -msgid "DNS Zone" -msgstr "Zona DNS" - msgid "Zone name" msgstr "Nombre de la zona" @@ -1562,6 +1619,30 @@ msgstr "Zona reversa de red IP" msgid "IP network to create reverse zone name from" msgstr "Red IP para crear un nombre de zona reversa desde" +msgid "Active zone" +msgstr "Activar zona" + +msgid "Is zone active?" +msgstr "¿Está la zona activa?" + +msgid "DNS is not configured" +msgstr "DNS no está configurado" + +msgid "Search for DNS zones (SOA records)." +msgstr "Buscar zonas DNS (registros SOA)." + +msgid "DNS zone" +msgstr "zona DNS" + +msgid "DNS zones" +msgstr "zonas DNS" + +msgid "DNS Zones" +msgstr "Zonas DNS" + +msgid "DNS Zone" +msgstr "Zona DNS" + msgid "Authoritative nameserver" msgstr "Nombre de servidor autoritativo" @@ -1601,11 +1682,8 @@ msgstr "Mínimo SOA" msgid "How long should negative responses be cached" msgstr "¿Por cuánto tiempo las respuestas negativas deben guardarse en cache?" -msgid "SOA time to live" -msgstr "Tiempo para abandonar SOA" - -msgid "SOA record time to live" -msgstr "tiempo de vida de registro SOA" +msgid "Time to live" +msgstr "Tiempo para abandonar" msgid "SOA class" msgstr "Clase SOA" @@ -1616,36 +1694,30 @@ msgstr "Clase de registro SOA " msgid "BIND update policy" msgstr "Política de actualización de BIND" -msgid "Active zone" -msgstr "Activar zona" - -msgid "Is zone active?" -msgstr "¿Está la zona activa?" - msgid "Dynamic update" msgstr "Actualización dinámica" msgid "Allow dynamic updates." msgstr "Permitir actualizaciones dinámicas." +msgid "Allow query" +msgstr "Permitir consulta" + +msgid "Allow transfer" +msgstr "Permitir transferencia" + msgid "Create new DNS zone (SOA record)." msgstr "Crear nueva zona DNS (registro SOA)." msgid "Force" msgstr "Forzar" -msgid "DNS is not configured" -msgstr "DNS no está configurado" - msgid "Delete DNS zone (SOA record)." msgstr "Borrar zona DNS (registro SOA)." msgid "Modify DNS zone (SOA record)." msgstr "Modificar zona DNS (registro SOA)." -msgid "Search for DNS zones (SOA records)." -msgstr "Buscar zonas DNS (registros SOA)." - msgid "Forward zones only" msgstr "Zonas de reenvío sólo" @@ -1684,9 +1756,6 @@ msgstr "Registro de Recurso de DNS" msgid "Record name" msgstr "Nombre de registro" -msgid "Time to live" -msgstr "Tiempo para abandonar" - msgid "Class" msgstr "Clase" @@ -1762,6 +1831,12 @@ msgstr "Ha sido encontrado '%(value)s'" msgid "Host '%(host)s' not found" msgstr "No ha sido encontrado el equipo anfitrión '%(host)s' " +msgid "DNS configuration options" +msgstr "Opciones de configuración de DNS" + +msgid "DNS Global Configuration" +msgstr "Configuración global de DNS" + msgid "group" msgstr "grupo" @@ -1898,12 +1973,6 @@ msgstr "Categoría de servicio a la que se aplica la regla" msgid "Enabled" msgstr "Habilitado" -msgid "Users" -msgstr "Usuarios" - -msgid "Hosts" -msgstr "Equipos" - msgid "Host Groups" msgstr "Grupos de equipo" @@ -2191,9 +2260,16 @@ msgstr "Keytab" msgid "Serial Number" msgstr "Número de serie" +msgid "Serial Number (hex)" +msgstr "N.º de serie (hex.)" + msgid "Failed managedby" msgstr "Falló managedby" +#, python-format +msgid "invalid domain-name: %s" +msgstr "nombre de dominio no válido: %s" + msgid "host" msgstr "host" @@ -2252,6 +2328,9 @@ msgstr "Nombre principal" msgid "MAC address" msgstr "Dirección MAC" +msgid "SSH public key" +msgstr "Clave pública SSH" + msgid "Add a new host." msgstr "Añadir un n uevo host." @@ -2398,6 +2477,38 @@ msgstr "Añadir miembros a un grupo de host." msgid "Remove members from a hostgroup." msgstr "Borrar miembros de un grupo de host." +msgid "ID Ranges" +msgstr "Intervalos de ID" + +msgid "ID Range" +msgstr "Intervalo de ID" + +msgid "local domain range" +msgstr "intervalo de dominios locales" + +msgid "Active Directory domain range" +msgstr "Intervalo de dominios de Active Directory" + +msgid "Range name" +msgstr "Nombre del intervalo" + +msgid "Range type" +msgstr "Tipo de intervalo" + +#, python-format +msgid "Added ID range \"%(value)s\"" +msgstr "Se añadió el intervalo de ID «%(value)s»" + +msgid "Delete an ID range." +msgstr "Eliminar un intervalo de ID." + +#, python-format +msgid "Deleted ID range \"%(value)s\"" +msgstr "Se eliminó el intervalo de ID «%(value)s»" + +msgid "Search for ranges." +msgstr "Buscar intervalos." + msgid "Name of object to export" msgstr "Nombre del objeto a exportar" @@ -2416,24 +2527,31 @@ msgstr "Métodos IPA codificados de Dict de JSON " msgid "Dict of JSON encoded IPA Commands" msgstr "Dict de JSON comandos codificados IPA" +#, python-brace-format msgid "Add RunAs ${other_entity} into ${entity} ${primary_key}" msgstr "Añadir RunAs ${other_entity} en ${entity} ${primary_key}" +#, python-brace-format msgid "Add RunAs Groups into ${entity} ${primary_key}" msgstr "Añadir RunAs Grupos en ${entity} ${primary_key}" +#, python-brace-format msgid "Add ${other_entity} Managing ${entity} ${primary_key}" msgstr "Añadir ${other_entity} Gestionando ${entity} ${primary_key}" +#, python-brace-format msgid "Add ${other_entity} into ${entity} ${primary_key}" msgstr "Añadir ${other_entity} a ${entity} ${primary_key}" +#, python-brace-format msgid "Add Allow ${other_entity} into ${entity} ${primary_key}" msgstr "Añadir Permitir ${other_entity} en ${entity} ${primary_key}" +#, python-brace-format msgid "Add Deny ${other_entity} into ${entity} ${primary_key}" msgstr "Añadir Denegar ${other_entity} en ${entity} ${primary_key}" +#, python-brace-format msgid "Add ${entity} ${primary_key} into ${other_entity}" msgstr "Añadir ${entity} ${primary_key} en ${other_entity}" @@ -2446,27 +2564,35 @@ msgstr "Afiliación Indirecta" msgid "No entries." msgstr "Sin entradas." +#, python-brace-format msgid "Showing ${start} to ${end} of ${total} entries." msgstr "Mostrando ${start} a ${end} de ${total} entradas." +#, python-brace-format msgid "Remove RunAs ${other_entity} from ${entity} ${primary_key}" msgstr "Quitar RunAs ${other_entity} de ${entity} ${primary_key}" +#, python-brace-format msgid "Remove RunAs Groups from ${entity} ${primary_key}" msgstr "Quitar Grupos RunAs de ${entity} ${primary_key}" +#, python-brace-format msgid "Remove ${other_entity} Managing ${entity} ${primary_key}" msgstr "Quitar ${other_entity} Gestionando ${entity} ${primary_key}" +#, python-brace-format msgid "Remove ${other_entity} from ${entity} ${primary_key}" msgstr "Retirar ${other_entity} de ${entity} ${primary_key}" +#, python-brace-format msgid "Remove Allow ${other_entity} from ${entity} ${primary_key}" msgstr "Quitar Permitir ${other_entity} de ${entity} ${primary_key}" +#, python-brace-format msgid "Remove Deny ${other_entity} from ${entity} ${primary_key}" msgstr "Quitar Denegar ${other_entity} de ${entity} ${primary_key}" +#, python-brace-format msgid "Remove ${entity} ${primary_key} from ${other_entity}" msgstr "Quitar ${entity} ${primary_key} de ${other_entity}" @@ -2554,15 +2680,18 @@ msgstr "General" msgid "Identity Settings" msgstr "Configuración de identidad" +#, python-brace-format msgid "${entity} ${primary_key} Settings" msgstr "Configuraciones de ${entity} ${primary_key}" msgid "Back to Top" msgstr "Volver al comienzo" +#, python-brace-format msgid "${entity} successfully added" msgstr "${entity} añadido con éxito" +#, python-brace-format msgid "Add ${entity}" msgstr "Añadir ${entity}" @@ -2584,6 +2713,7 @@ msgstr "Esta página tiene cambios sin guardar. Por favor, guardar o deshacer." msgid "Unsaved Changes" msgstr "Cambios No Guardados" +#, python-brace-format msgid "Edit ${entity}" msgstr "Editar ${entity}" @@ -2599,6 +2729,7 @@ msgstr "Redirección " msgid "Select entries to be removed." msgstr "Las entradas seleccionadas han sido quitadas." +#, python-brace-format msgid "Remove ${entity}" msgstr "Quitar ${entity}" @@ -2629,12 +2760,15 @@ msgstr "Error Desconocido" msgid "URL" msgstr "URL" +#, python-brace-format msgid "${primary_key} is managed by:" msgstr "${primary_key} es gestionada por:" +#, python-brace-format msgid "${primary_key} members:" msgstr "${primary_key} miembros:" +#, python-brace-format msgid "${primary_key} is a member of:" msgstr "${primary_key} es un miembro de:" @@ -2659,6 +2793,9 @@ msgstr "Atributo" msgid "Add Rule" msgstr "Añadir una regla" +msgid "Expression" +msgstr "Expresión" + msgid "Automount Location Settings" msgstr "Configuración de ubicación de automount" @@ -2698,6 +2835,7 @@ msgstr "Expira el" msgid "Fingerprints" msgstr "Las huellas dactilares" +#, python-brace-format msgid "Issue New Certificate for ${entity} ${primary_key}" msgstr "Enviar Nuevo Certificado para ${entity} ${primary_key}" @@ -2740,9 +2878,13 @@ msgstr "Motivo de la revocación" msgid "Remove from CRL" msgstr "Borrar de CRL" +#, python-brace-format msgid "Restore Certificate for ${entity} ${primary_key}" msgstr "Restablecer Certificado para ${entity} ${primary_key}" +msgid "Restore Certificate" +msgstr "Restaurar certificado" + msgid "" "To confirm your intention to restore this certificate, click the \"Restore\" " "button." @@ -2750,9 +2892,13 @@ msgstr "" "Para confirmar su intención de restaurar este certificado, haga clic en el " "botón \"Restaurar\"." +#, python-brace-format msgid "Revoke Certificate for ${entity} ${primary_key}" msgstr "Revocar certificado por ${entity} ${primary_key}" +msgid "Revoke Certificate" +msgstr "Revocar certificado" + msgid "" "To confirm your intention to revoke this certificate, select a reason from " "the pull-down list, and click the \"Revoke\" button." @@ -2778,6 +2924,7 @@ msgstr "Presentar certificado válido" msgid "Validity" msgstr "Validez" +#, python-brace-format msgid "Certificate for ${entity} ${primary_key}" msgstr "Certificado para ${entity} ${primary_key}" @@ -2802,6 +2949,21 @@ msgstr "Registro DNS fue borrado porque no contenía datos." msgid "Other Record Types" msgstr "Otros Tipos de Registro" +msgid "Create dns record" +msgstr "Crear registro DNS" + +msgid "Creating record." +msgstr "Creando el registro." + +msgid "Record creation failed." +msgstr "Falló la creación del registro." + +msgid "Checking if record exists." +msgstr "Comprobando que el registro existe." + +msgid "Record not found." +msgstr "No se encontró el registro." + msgid "You will be redirected to DNS Zone." msgstr "Será redirigido a Zona DNS." @@ -2823,6 +2985,12 @@ msgstr "Configuración del grupo" msgid "External" msgstr "Externos" +msgid "POSIX" +msgstr "POSIX" + +msgid "Group Type" +msgstr "Tipo de grupo" + msgid "Any Host" msgstr "Cualquier host" @@ -2871,6 +3039,9 @@ msgstr "Prueba HBAC" msgid "Matched" msgstr "Emparejado" +msgid "Missing values: " +msgstr "Valores faltantes:" + msgid "New Test" msgstr "Nueva Prueba" @@ -2880,6 +3051,7 @@ msgstr "Reglas" msgid "Run Test" msgstr "Ejecutar Prueba" +#, python-brace-format msgid "Specify external ${entity}" msgstr "Especificar ${entity} externa" @@ -2940,6 +3112,7 @@ msgstr "Unprovision" msgid "Are you sure you want to unprovision this host?" msgstr "¿Está seguro que desea unprovision este equipo?" +#, python-brace-format msgid "Unprovisioning ${entity}" msgstr "Cancelación ${entity}" @@ -2955,12 +3128,6 @@ msgstr "Configuración de Netgroup" msgid "User" msgstr "Usuario" -msgid "Identity" -msgstr "Identidad" - -msgid "Permission with invalid target specification" -msgstr "Permiso con especificación de destino inválida" - msgid "Privilege Settings" msgstr "Configuración de privilegios" @@ -3021,6 +3188,12 @@ msgstr "Grupos especificados" msgid "Account" msgstr "Cuenta" +msgid "Domain" +msgstr "Dominio" + +msgid "Pre-shared password" +msgstr "Contraseña precompartida" + msgid "Account Settings" msgstr "Configuración de la cuenta" @@ -3045,6 +3218,7 @@ msgstr "Dirección de correo" msgid "Misc. Information" msgstr "Información diversa" +#, python-brace-format msgid "" "Are you sure you want to ${action} the user?<br/>The change will take effect " "immediately." @@ -3052,6 +3226,7 @@ msgstr "" "¿Está seguro que desea ${action} el usuario?<br/>El cambio tendrá efecto " "inmediatamente." +#, python-brace-format msgid "Click to ${action}" msgstr "Pulse para ${action}" @@ -3088,6 +3263,7 @@ msgstr "Enlaces rápidos" msgid "Select All" msgstr " Seleccionar todo" +#, python-brace-format msgid "" "Query returned more results than the configured size limit. Displaying the " "first ${counter} results." @@ -3113,6 +3289,9 @@ msgstr "DNS" msgid "Host Based Access Control" msgstr "Control de Acceso basado en Host" +msgid "Identity" +msgstr "Identidad" + msgid "IPA Server" msgstr "Servidor IPA" @@ -3158,15 +3337,24 @@ msgstr "No es una dirección IPv4 válida" msgid "Not a valid IPv6 address" msgstr "No es una dirección IPv6 válida" +#, python-brace-format msgid "Maximum value is ${value}" msgstr "Valor máximo es ${value}" +#, python-brace-format msgid "Minimum value is ${value}" msgstr "Valor mínimo es ${value}" +#, python-brace-format +msgid "'${port}' is not a valid port" +msgstr "«${port}» no es un puerto válido" + msgid "Required field" msgstr "Campo requerido" +msgid "Unsupported value" +msgstr "Valor no admitido" + msgid "Dict of I18N messages" msgstr "Dictado de los mensajes regionales" @@ -3519,6 +3707,9 @@ msgstr "Añadir miembros a un grupo de red." msgid "Remove members from a netgroup." msgstr "Borrar miembros de un grupo de red." +msgid "Manager" +msgstr "Manager" + msgid "" "\n" "Set a user's password\n" @@ -3561,117 +3752,6 @@ msgstr "Fijar una contraseña de usuario." msgid "Changed password for \"%(value)s\"" msgstr "Cambio de contraseña para \"%(value)s\"" -msgid "" -"\n" -"Permissions\n" -"\n" -"A permission enables fine-grained delegation of rights. A permission is\n" -"a human-readable form of a 389-ds Access Control Rule, or instruction " -"(ACI).\n" -"A permission grants the right to perform a specific task such as adding a\n" -"user, modifying a group, etc.\n" -"\n" -"A permission may not contain other permissions.\n" -"\n" -"* A permission grants access to read, write, add or delete.\n" -"* A privilege combines similar permissions (for example all the permissions\n" -" needed to add a user).\n" -"* A role grants a set of privileges to users, groups, hosts or hostgroups.\n" -"\n" -"A permission is made up of a number of different parts:\n" -"\n" -"1. The name of the permission.\n" -"2. The target of the permission.\n" -"3. The rights granted by the permission.\n" -"\n" -"Rights define what operations are allowed, and may be one or more\n" -"of the following:\n" -"1. write - write one or more attributes\n" -"2. read - read one or more attributes\n" -"3. add - add a new entry to the tree\n" -"4. delete - delete an existing entry\n" -"5. all - all permissions are granted\n" -"\n" -"Read permission is granted for most attributes by default so the read\n" -"permission is not expected to be used very often.\n" -"\n" -"Note the distinction between attributes and entries. The permissions are\n" -"independent, so being able to add a user does not mean that the user will\n" -"be editable.\n" -"\n" -"There are a number of allowed targets:\n" -"1. type: a type of object (user, group, etc).\n" -"2. memberof: a member of a group or hostgroup\n" -"3. filter: an LDAP filter\n" -"4. subtree: an LDAP filter specifying part of the LDAP DIT. This is a\n" -" super-set of the \"type\" target.\n" -"5. targetgroup: grant access to modify a specific group (such as granting\n" -" the rights to manage group membership)\n" -"\n" -"EXAMPLES:\n" -"\n" -" Add a permission that grants the creation of users:\n" -" ipa permission-add --type=user --permissions=add \"Add Users\"\n" -"\n" -" Add a permission that grants the ability to manage group membership:\n" -" ipa permission-add --attrs=member --permissions=write --type=group " -"\"Manage Group Members\"\n" -msgstr "" -"\n" -"Permisos\n" -"\n" -"Un permiso permite delegación de grano fino de derechos. Un permiso es una " -"regla de control de acceso 389-ds o de instrucción (ACI).\n" -"\n" -"Un permiso otorga el derecho de realizar tareas tales como añadir un " -"usuario, modificar un grupo, etc.\n" -"Un permiso no puede contener otros permisos.\n" -"Un permiso otorga acceso de lectura, escritura, agregar o borrar.\n" -"Un privilegio combina permisos similares (por ejemplo, todos los permisos \n" -" necesarios para agregar un usuario).\n" -"Un rol otorga un set de privilegios para usuarios, grupos, hosts o " -"hostgroups.\n" -"Un permiso está compuesto de varias partes:\n" -"\n" -"1. El nombre del permiso.\n" -"2. El destino del permiso.\n" -"3. Los derechos otorgados por permiso.\n" -"\n" -"Los derechos definen las operaciones permitidas y pueden ser una o más de " -"las siguientes.\n" -"\n" -"1. write - escribir uno o más atributos\n" -"2. read - leer uno o más atributos\n" -"3. add - agregar una nueva entrada al árbol\n" -"4. delete - borrar una entrada existente\n" -"5. all- todos los permisos son otorgados\n" -"\n" -"El permiso de lectura se otorga a la mayoría de los atributos y entradas. " -"Los permisos son independientes, por lo tanto, poder agregar un usuario no " -"significa que el usuario sea editable.\n" -"Hay un número de destinos permitidos:\n" -"1. type: un tipo de objeto (usuario, grupo, etc).\n" -"2. memberof: un miembro de grupo o hostgroup\n" -"3. filter: un filtro de LDAP \n" -"4. subtree: un filtro LDAP que especifica parte del LDAP DIT. Es un\n" -" super-set del \"type\" target.\n" -"5. targetgroup: otorga acceso para modificar un grupo específico (tal como " -"otorgar\n" -" los derechos para administrar la membresía de grupo)\n" -"EJEMPLOS:\n" -"Añadir un permiso que otogue la creación de usuarios:\n" -"\n" -" ipa permission-add --type=user --permissions=add \"Add Users\"\n" -"Añadir un permiso que otorgue la capacidad de administrar una membresía de " -"grupo:\n" -"\n" -" ipa permission-add --attrs=member --permissions=write --type=group " -"\"Manage Group \n" -"Members\"\n" - -msgid "Permission Type" -msgstr "Tipo de permiso" - msgid "permission" msgstr "permiso" @@ -3681,30 +3761,19 @@ msgstr "permisos" msgid "Permission name" msgstr "Nombre de permiso" -msgid "" -"Type of IPA object (user, group, host, hostgroup, service, netgroup, dns)" -msgstr "" -"Tipo de objeto del IPA (usuario, host, hostgroup, servicio, netgroup, dns)" - -msgid "Member of group" -msgstr "Miembro del grupo" - -msgid "Target members of a group" -msgstr "Objetivo para los miembros de un grupo" - msgid "Subtree to apply permissions to" msgstr "Subárbol para aplicar permisos" -msgid "User group to apply permissions to" -msgstr "Grupo de usuario para aplicar permisos" - -msgid "Add a new permission." -msgstr "Añadir un nuevo permiso." +msgid "Member of group" +msgstr "Miembro del grupo" #, python-format msgid "Added permission \"%(value)s\"" msgstr "Permiso agregado \"%(value)s\"" +msgid "Add a new permission." +msgstr "Añadir un nuevo permiso." + msgid "Delete a permission." msgstr "Borrar un permiso." @@ -4078,6 +4147,9 @@ msgstr "Ofrece la política efectiva para un determinado usuario" msgid "Search for group password policies." msgstr "Buscar grupo de políticas de contraseña." +msgid "Server" +msgstr "Servidor" + msgid "role" msgstr "rol" @@ -4201,6 +4273,9 @@ msgstr "servicios" msgid "Service principal" msgstr " Búsqueda de servicios IPA" +msgid "PAC type" +msgstr "Tipo PAC" + msgid "Add a new IPA new service." msgstr "Añadir un nuevo servicio nuevo IPA." @@ -4414,6 +4489,12 @@ msgstr "RunAs Grupo categoría" msgid "RunAs Group category the rule applies to" msgstr "RunAs Grupo categoría la regla aplica a" +msgid "External User" +msgstr "De usuarios externos" + +msgid "External User the rule applies to (sudorule-find only)" +msgstr "Usuario Externo la regla aplica a (sudorule-find sólo)" + msgid "Sudo Allow Commands" msgstr "Comandos Allow de sudo" @@ -4438,18 +4519,18 @@ msgstr "Grupos de Usuarios RunAs" msgid "Run as any user within a specified group" msgstr "Ejecutar como cualquier usuario dentro de un grupo especificado" -msgid "External User" -msgstr "De usuarios externos" - -msgid "External User the rule applies to (sudorule-find only)" -msgstr "Usuario Externo la regla aplica a (sudorule-find sólo)" - msgid "RunAs External User" msgstr "RunAs de usuarios externos" msgid "External User the commands can run as (sudorule-find only)" msgstr "Usuario Externo los comandos pueden correr como (sudorule-find sólo)" +msgid "RunAs Groups" +msgstr "Grupos RunAs" + +msgid "Run with the gid of a specified POSIX group" +msgstr "Ejecutar con la gid de un grupo POSIX especificado" + msgid "RunAs External Group" msgstr "Grupo externo RunAs" @@ -4459,12 +4540,6 @@ msgstr "Grupo Externo los comandos pueden correr como (sudorule-find sólo)" msgid "Sudo Option" msgstr "Opción de sudo" -msgid "RunAs Groups" -msgstr "Grupos RunAs" - -msgid "Run with the gid of a specified POSIX group" -msgstr "Ejecutar con la gid de un grupo POSIX especificado" - msgid "Create new Sudo Rule." msgstr "Crear nueva Regla Sudo." @@ -4486,6 +4561,12 @@ msgstr "Modificar Regla Sudo." msgid "Modified Sudo Rule \"%(value)s\"" msgstr "Regla Sudo Modificada “%(value)s”" +msgid "user" +msgstr "usuario" + +msgid "users" +msgstr "usuarios" + msgid "Search for Sudo Rule." msgstr "Buscar Regla Sudo." @@ -4548,17 +4629,33 @@ msgstr "Añadir una opción a la Regla Sudo." msgid "Remove an option from Sudo Rule." msgstr "Quitar una opción de la Regla Sudo." +msgid "Unknown" +msgstr "Desconocido" + msgid "Realm name" msgstr "Nombre de reino " +#, python-format +msgid "invalid SID: %(value)s" +msgstr "SID no válido: %(value)s" + +msgid "only \"ad\" is supported" +msgstr "solo se admite «ad»" + +msgid "range exists" +msgstr "el intervalo existe" + +msgid "Name" +msgstr "Nombre" + +msgid "SID" +msgstr "SID" + msgid "Kerberos keys available" msgstr "Claves Kerberos disponibles" -msgid "user" -msgstr "usuario" - -msgid "users" -msgstr "usuarios" +msgid "Failed logins" +msgstr "Inicios de sesión fallidos" msgid "User login" msgstr "Ingreso de usuario" @@ -4633,9 +4730,6 @@ msgstr "Unidad. org" msgid "Job Title" msgstr "Cargo" -msgid "Manager" -msgstr "Manager" - msgid "Car License" msgstr "Licencia de conducción" @@ -4734,20 +4828,33 @@ msgstr "Cuenta desbloqueada \" %(value)s \"" msgid "Permission denied: %(file)s" msgstr "Permiso denegado:%(file)s " +msgid "too many '@' characters" +msgstr "demasiados ‘@’ caracteres" + msgid "cannot be longer that 255 characters" msgstr "no puede ser más larga de 255 caracteres" -msgid "too many '@' characters" -msgstr "demasiados ‘@’ caracteres" +msgid "invalid SSH public key" +msgstr "clave SSH pública no válida" #, python-format msgid "Issuer \"%(issuer)s\" does not match the expected issuer" msgstr "Emisor \"%(issuer)s\" no coincide con el emisor esperado " #, python-format +msgid "Retrieving CA status failed: %s" +msgstr "Falló la obtención del estado de CA: %s" + +#, python-format msgid "objectclass %s not found" msgstr "clase objeto %s no encontrada" +msgid "domain is not configured" +msgstr "el dominio no está configurado" + +msgid "SID is not valid" +msgstr "el SID no es válido" + #, python-format msgid "Unable to communicate with CMS (%s)" msgstr "No es posible comunicarse con CMS (%s)" @@ -4789,14 +4896,6 @@ msgid "Out of memory \n" msgstr "¡Memoria insuficiente!\n" #, c-format -msgid "Out of Memory!\n" -msgstr "¡Memoria insuficiente!\n" - -#, c-format -msgid "Failed to create control!\n" -msgstr "¡Falló crear control!\n" - -#, c-format msgid "Unable to initialize ldap library!\n" msgstr "¡No puede iniciar biblioteca IDAP!\n" @@ -4805,10 +4904,6 @@ msgid "Unable to set LDAP_OPT_X_SASL_NOCANON\n" msgstr "Incapaz de fijar LDAP_OPT_X_SASL_NOCANON \n" #, c-format -msgid "Unable to set ldap options!\n" -msgstr "¡No puede establecer opciones IDAP!\n" - -#, c-format msgid "Simple bind failed\n" msgstr "¡Falló vinculación sencilla!\n" @@ -4821,9 +4916,21 @@ msgid "Missing reply control!\n" msgstr "¡Falta control de respuesta!\n" #, c-format +msgid "Out of Memory!\n" +msgstr "¡Memoria insuficiente!\n" + +#, c-format +msgid "Failed to create control!\n" +msgstr "¡Falló crear control!\n" + +#, c-format msgid "ber_init() failed, Invalid control ?!\n" msgstr "Falló ber_init(), ¿control inválido?\n" +#, c-format +msgid "Out of memory!\n" +msgstr "¡Memoria insuficiente!\n" + msgid "New Principal Password" msgstr "Nueva contraseña principal" @@ -4987,10 +5094,6 @@ msgid "IPA namingContext not found\n" msgstr "IPA namingContext no encontrado \n" #, c-format -msgid "Out of memory!\n" -msgstr "¡Memoria insuficiente!\n" - -#, c-format msgid "Search for ipaCertificateSubjectBase failed with error %d" msgstr "Búsqueda de ipaCertificateSubjectBase falló con error %d" @@ -5064,6 +5167,10 @@ msgid "result not found in XML-RPC response\n" msgstr "resultado no se encuentra en respuesta XML-RPC\n" #, c-format +msgid "The hostname must not be: %s\n" +msgstr "El nombre del equipo no debe ser: %s\n" + +#, c-format msgid "Unable to join host: Kerberos Credential Cache not found\n" msgstr "" "No se puede unir host: cache de credenciales de Kerberos no se encuentra\n" @@ -5181,14 +5288,14 @@ msgstr "Quite todos los principales en este ámbito" msgid "Closing keytab failed\n" msgstr "Cierre de tabla de claves falló\n" +msgid "Out of memory\n" +msgstr "¡Memoria insuficiente!\n" + msgid "Out of memory!?\n" msgstr "" "¡Memoria insuficiente!\n" "\n" -msgid "Out of memory\n" -msgstr "¡Memoria insuficiente!\n" - msgid "Enctype comparison failed!\n" msgstr "¡Falló comparación de Enctype!\n" @@ -5197,3 +5304,6 @@ msgstr "Falló la creación de clave aleatoria\n" msgid "Failed to create key!\n" msgstr "¡Falló la creación de clave!\n" + +#~ msgid "Unable to set ldap options!\n" +#~ msgstr "¡No puede establecer opciones IDAP!\n" diff --git a/install/po/eu.po b/install/po/eu.po index 8cc59366c..ed3fba5b4 100644 --- a/install/po/eu.po +++ b/install/po/eu.po @@ -9,10 +9,10 @@ msgstr "" "Project-Id-Version: FreeIPA\n" "Report-Msgid-Bugs-To: https://hosted.fedoraproject.org/projects/freeipa/" "newticket\n" -"POT-Creation-Date: 2013-10-09 14:39+0200\n" -"PO-Revision-Date: 2013-08-01 14:06+0000\n" +"POT-Creation-Date: 2014-06-27 16:29+0200\n" +"PO-Revision-Date: 2014-06-25 19:44+0000\n" "Last-Translator: Petr Viktorin <encukou@gmail.com>\n" -"Language-Team: Basque (http://www.transifex.com/projects/p/fedora/language/" +"Language-Team: Basque (http://www.transifex.com/projects/p/freeipa/language/" "eu/)\n" "Language: eu\n" "MIME-Version: 1.0\n" @@ -105,6 +105,12 @@ msgstr "ACI izen berria" msgid "Description" msgstr "Deskribapena" +msgid "Users" +msgstr "Erabiltzaileak" + +msgid "Hosts" +msgstr "Ostalariak" + msgid "description" msgstr "deskribapena" @@ -241,12 +247,6 @@ msgstr "Arau-mota" msgid "Enabled" msgstr "Gaituta" -msgid "Users" -msgstr "Erabiltzaileak" - -msgid "Hosts" -msgstr "Ostalariak" - msgid "Host Groups" msgstr "Ostalari-taldeak" @@ -446,6 +446,9 @@ msgstr "LDAP URI baliogabea." msgid "NIS domain name" msgstr "NIS domeinu-izena" +msgid "Manager" +msgstr "Kudeatzailea" + msgid "PKINIT" msgstr "PKINIT" @@ -514,9 +517,6 @@ msgstr "Bilagailu-zenbakia" msgid "Fax Number" msgstr "Fax-zenbakia" -msgid "Manager" -msgstr "Kudeatzailea" - #, python-format msgid "Added user \"%(value)s\"" msgstr "\"%(value)s\" erabiltzailea gehituta" diff --git a/install/po/fr.po b/install/po/fr.po index 736b94269..6ab213314 100644 --- a/install/po/fr.po +++ b/install/po/fr.po @@ -4,21 +4,22 @@ # # Translators: # Automatically generated, 2010 -# Dralyab <geodebay@gmail.com>, 2013 -# Dralyab <geodebay@gmail.com>, 2013 +# Gé Baylard <geodebay@gmail.com>, 2013 +# Gé Baylard <geodebay@gmail.com>, 2013 # Gé Baylard <<Geodebay@gmail.com>>, 2013 -# Jérôme Fenal <jfenal@gmail.com>, 2011-2013 +# Jérôme Fenal <jfenal@gmail.com>, 2011-2014 # Jérôme Fenal <jfenal@gmail.com>, 2011 -# Petr Viktorin <encukou@gmail.com>, 2013 +# Petr Viktorin <encukou@gmail.com>, 2013-2014 msgid "" msgstr "" "Project-Id-Version: FreeIPA\n" "Report-Msgid-Bugs-To: https://hosted.fedoraproject.org/projects/freeipa/" "newticket\n" -"POT-Creation-Date: 2013-09-12 15:37+0200\n" -"PO-Revision-Date: 2013-08-02 08:48+0000\n" +"POT-Creation-Date: 2014-06-27 16:29+0200\n" +"PO-Revision-Date: 2014-06-25 19:59+0000\n" "Last-Translator: Jérôme Fenal <jfenal@gmail.com>\n" -"Language-Team: French <trans-fr@lists.fedoraproject.org>\n" +"Language-Team: French (http://www.transifex.com/projects/p/freeipa/language/" +"fr/)\n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -57,6 +58,13 @@ msgstr "Nom de commande" msgid "Positional arguments" msgstr "Arguments positionnels" +#, python-format +msgid "Same as --%s" +msgstr "Identique à --%s" + +msgid "Deprecated options" +msgstr "Options obsolètes" + msgid "No file to read" msgstr "Pas de fichier à lire" @@ -332,7 +340,7 @@ msgid "Not allowed on non-leaf entry" msgstr "Interdit sur une entrée de type nœud" msgid "LDAP timeout" -msgstr "expiration de délai LDAP" +msgstr "Délai d'expiration LDAP" #, python-format msgid "Certificate operation cannot be completed: %(error)s" @@ -522,12 +530,39 @@ msgstr "doit être « %(value)s »" msgid "must be one of %(values)s" msgstr "doit être une valeur parmi %(values)s" +msgid "must be datetime value" +msgstr "doit être une valeur date/heure" + msgid "incomplete time value" msgstr "valeur de temps incomplète" msgid "this option is deprecated" msgstr "cette option est obsolète" +msgid "must be DNS name" +msgstr "doit être un nom DNS" + +msgid "invalid escape code in domain name" +msgstr "code d'échappement invalide dans le nom de domaine" + +msgid "empty DNS label" +msgstr "libellé DNS vide" + +msgid "domain name cannot be longer than 255 characters" +msgstr "le nom de domaine ne peut excéder 255 caractères" + +msgid "DNS label cannot be longer than 63 characters" +msgstr "un libellé DNS ne peut excéder 63 caractères" + +msgid "invalid domain name" +msgstr "nom de domaine invalide" + +msgid "must be absolute" +msgstr "doit être absolu" + +msgid "must be relative" +msgstr "doit être relatif" + msgid "A list of ACI values" msgstr "Une liste de valeurs d'ACI" @@ -555,7 +590,7 @@ msgstr "Un parmi group, permission ou self est requis" #, python-format msgid "Group '%s' does not exist" -msgstr "Le groupe '%s' n'existe pas" +msgstr "Le groupe « %s » n'existe pas" msgid "empty filter" msgstr "filtre vide" @@ -672,6 +707,9 @@ msgid_plural "%(count)d ACIs matched" msgstr[0] "%(count)d ACI correspondantes" msgstr[1] "%(count)d ACI correspondantes" +msgid "Location of the ACI" +msgstr "Emplacement de l'ACI" + msgid "New ACI name" msgstr "Nouveau nom de l'ACI" @@ -682,185 +720,16 @@ msgstr "ACI renommée en « %(value)s »" msgid "" "\n" "Auto Membership Rule.\n" +msgstr "" "\n" -"Bring clarity to the membership of hosts and users by configuring inclusive\n" -"or exclusive regex patterns, you can automatically assign a new entries " -"into\n" -"a group or hostgroup based upon attribute information.\n" -"\n" -"A rule is directly associated with a group by name, so you cannot create\n" -"a rule without an accompanying group or hostgroup.\n" -"\n" -"A condition is a regular expression used by 389-ds to match a new incoming\n" -"entry with an automember rule. If it matches an inclusive rule then the\n" -"entry is added to the appropriate group or hostgroup.\n" -"\n" -"A default group or hostgroup could be specified for entries that do not\n" -"match any rule. In case of user entries this group will be a fallback group\n" -"because all users are by default members of group specified in IPA config.\n" -"\n" +"Règle d'adhésion automatique.\n" + +msgid "" "\n" "EXAMPLES:\n" -"\n" -" Add the initial group or hostgroup:\n" -" ipa hostgroup-add --desc=\"Web Servers\" webservers\n" -" ipa group-add --desc=\"Developers\" devel\n" -"\n" -" Add the initial rule:\n" -" ipa automember-add --type=hostgroup webservers\n" -" ipa automember-add --type=group devel\n" -"\n" -" Add a condition to the rule:\n" -" ipa automember-add-condition --key=fqdn --type=hostgroup --inclusive-" -"regex=^web[1-9]+\\.example\\.com webservers\n" -" ipa automember-add-condition --key=manager --type=group --inclusive-" -"regex=^uid=mscott devel\n" -"\n" -" Add an exclusive condition to the rule to prevent auto assignment:\n" -" ipa automember-add-condition --key=fqdn --type=hostgroup --exclusive-" -"regex=^web5\\.example\\.com webservers\n" -"\n" -" Add a host:\n" -" ipa host-add web1.example.com\n" -"\n" -" Add a user:\n" -" ipa user-add --first=Tim --last=User --password tuser1 --manager=mscott\n" -"\n" -" Verify automembership:\n" -" ipa hostgroup-show webservers\n" -" Host-group: webservers\n" -" Description: Web Servers\n" -" Member hosts: web1.example.com\n" -"\n" -" ipa group-show devel\n" -" Group name: devel\n" -" Description: Developers\n" -" GID: 1004200000\n" -" Member users: tuser\n" -"\n" -" Remove a condition from the rule:\n" -" ipa automember-remove-condition --key=fqdn --type=hostgroup --inclusive-" -"regex=^web[1-9]+\\.example\\.com webservers\n" -"\n" -" Modify the automember rule:\n" -" ipa automember-mod\n" -"\n" -" Set the default (fallback) target group:\n" -" ipa automember-default-group-set --default-group=webservers --" -"type=hostgroup\n" -" ipa automember-default-group-set --default-group=ipausers --type=group\n" -"\n" -" Remove the default (fallback) target group:\n" -" ipa automember-default-group-remove --type=hostgroup\n" -" ipa automember-default-group-remove --type=group\n" -"\n" -" Show the default (fallback) target group:\n" -" ipa automember-default-group-show --type=hostgroup\n" -" ipa automember-default-group-show --type=group\n" -"\n" -" Find all of the automember rules:\n" -" ipa automember-find\n" -"\n" -" Display a automember rule:\n" -" ipa automember-show --type=hostgroup webservers\n" -" ipa automember-show --type=group devel\n" -"\n" -" Delete an automember rule:\n" -" ipa automember-del --type=hostgroup webservers\n" -" ipa automember-del --type=group devel\n" msgstr "" "\n" -"Règle d'auto adhésion.\n" -"\n" -"Il est possible d'apporter de la clarté dans l'adhésion de systèmes ou\n" -"d'utilisateurs en configurant des motifs d'expressions rationnelles " -"inclusives\n" -"ou exclusives, ce qui permet d'assigner de nouvelles entrées dans un groupe\n" -"d'utilisateurs ou de systèmes sur la base d'informations dans les " -"attributs.\n" -"\n" -"Une règle est directement associée avec un groupe par son nom, il est donc\n" -"impossible de créer une règle sans le nom du groupe auquel elle est " -"associée.\n" -"\n" -"Une condition est une expression rationnelle utilisée par 389-ds pour\n" -"identifier les nouvelles entrées à utiliser dans la règle d'auto-adhésion.\n" -"S'il y a correspondance avec une règle d'auto-adhésion, alors l'entrée\n" -"est automatiquement ajoutée au groupe d'utilisateurs ou de systèmes.\n" -"\n" -"Un groupe ou un groupe de systèmes par défaut peut être spécifié pour les\n" -"entrées qui ne correspondent à aucune règle. Dans le cas des entrées\n" -"utilisateurs, ce groupe sera le groupe de repli car tous les utilisateurs\n" -"sont par défaut membres d'un groupe spécifié dans la configuration IPA.\n" -"\n" -"EXEMPLES :\n" -"\n" -" Ajouter le groupe d'utilisateurs ou de systèmes initial :\n" -" ipa hostgroup-add --desc=\"Web Servers\" webservers\n" -" ipa group-add --desc=\"Developers\" devel\n" -"\n" -" Créer la règle initiale :\n" -" ipa automember-add --type=hostgroup webservers\n" -" ipa automember-add --type=group devel\n" -"\n" -" Ajouter une condition à la règle :\n" -" ipa automember-add-condition --key=fqdn --type=hostgroup --inclusive-" -"regex=^web[1-9]+\\\\.example\\\\.com webservers\n" -" ipa automember-add-condition --key=manager --type=group --inclusive-" -"regex=^uid=mscott devel\n" -"\n" -" Ajouter une condition exclusive à la règle empêchant l'auto-adhésion :\n" -" ipa automember-add-condition --key=fqdn --type=hostgroup --exclusive-" -"regex=^web5\\\\.example\\\\.com webservers\n" -"\n" -" Ajouter un système :\n" -" ipa host-add web1.example.com\n" -"\n" -" Ajouter un utilisateur :\n" -" ipa user-add --first=Tim --last=User --password tuser1 --manager=mscott\n" -"\n" -" Vérifier l'auto-adhésion :\n" -" ipa hostgroup-show webservers\n" -" Host-group: webservers\n" -" Description: Web Servers\n" -" Member hosts: web1.example.com\n" -"\n" -" ipa group-show devel\n" -" Group name: devel\n" -" Description: Developers\n" -" GID: 1004200000\n" -" Member users: tuser\n" -"\n" -" Supprimer une conditition de la règle :\n" -" ipa automember-remove-condition --key=fqdn --type=hostgroup --inclusive-" -"regex=^web[1-9]+\\.example\\.com webservers\n" -"\n" -" Modifier la règle d'auto-adhésion:\n" -" ipa automember-mod\n" -"\n" -" Définir le groupe cible (de repli) par défaut :\n" -" ipa automember-default-group-set --default-group=webservers --" -"type=hostgroup\n" -" ipa automember-default-group-set --default-group=ipausers --type=group\n" -"\n" -" Supprimer le groupe cible (de repli) par défaut :\n" -" ipa automember-default-group-remove --type=hostgroup\n" -" ipa automember-default-group-remove --type=group\n" -"\n" -" Afficher le groupe cible (de repli) par défaut :\n" -" ipa automember-default-group-show --type=hostgroup\n" -" ipa automember-default-group-show --type=group\n" -"\n" -" Rechercher toutes les règles d'auto-adhésion :\n" -" ipa automember-find\n" -"\n" -" Afficher une règle d'auto-adhésion :\n" -" ipa automember-show --type=hostgroup webservers\n" -" ipa automember-show --type=group devel\n" -"\n" -" Supprimer une règle d'auto-adhésion :\n" -" ipa automember-del --type=hostgroup webservers\n" -" ipa automember-del --type=group devel\n" +"EXEMPLES :\n" msgid "Inclusive Regex" msgstr "Regex inclusive" @@ -885,7 +754,7 @@ msgid "Grouping to which the rule applies" msgstr "Type de groupe auquel la règle s'applique" msgid "Automember Rule" -msgstr "Règle d'auto-adhésion" +msgstr "Règle d'auto adhésion" msgid "Auto Membership Rule" msgstr "Règle d'auto-adhésion" @@ -903,10 +772,6 @@ msgid "Default group for entries to land" msgstr "Groupe par défaut pour les nouvelles entrées" #, python-format -msgid "Group: %s not found!" -msgstr "Groupe : %s introuvable !" - -#, python-format msgid "%s is not a valid attribute." msgstr "%s n'est pas un attribut valide." @@ -1056,9 +921,7 @@ msgstr "Groupe par défaut (de repli) où les entrées seront visibles" #, python-format msgid "Set default (fallback) group for automember \"%(value)s\"" -msgstr "" -"Groupe par défaut (de repli) défini pour l'appartenance automatique " -"« %(value)s »" +msgstr "Groupe par défaut (de repli) défini pour l'auto-adhésion « %(value)s »" msgid "" "\n" @@ -1073,8 +936,7 @@ msgstr "" #, python-format msgid "Removed default (fallback) group for automember \"%(value)s\"" msgstr "" -"Groupe par défaut (de repli) supprimé pour l'appartenance automatique « " -"%(value)s »" +"Groupe par défaut (de repli) supprimé pour l'auto-adhésion « %(value)s »" msgid "No default (fallback) group set" msgstr "Pas de groupe par défaut (de repli) défini" @@ -1085,10 +947,53 @@ msgid "" " " msgstr "" "\n" -" Afficher les informations par défaut (repli) pour les groupes " -"d'appartenance automatique.\n" +" Afficher les informations par défaut (repli) pour les groupes d'auto-" +"adhésion.\n" " " +msgid "Rebuild auto membership." +msgstr "Reconstruire l'appartenance automatique." + +msgid "Rebuild membership for all members of a grouping" +msgstr "Reconstruire l'appartenance pour tous les membres d'un groupe" + +msgid "Users" +msgstr "Utilisateurs" + +msgid "Rebuild membership for specified users" +msgstr "Reconstruire l'appartenance pour les utilisateurs indiqués " + +msgid "Hosts" +msgstr "Hôtes" + +msgid "Rebuild membership for specified hosts" +msgstr "Reconstruire l'appartenance pour les hôtes indiqués" + +msgid "Task DN" +msgstr "DN de la tâche" + +msgid "DN of the started task" +msgstr "DN de la tâche démarrée" + +msgid "at least one of options: type, users, hosts must be specified" +msgstr "au moins l'une des options type, users ou hosts doit être indiquée" + +msgid "users and hosts cannot both be set" +msgstr "impossible d'indiquer à la fois les utilisateurs et les hôtes" + +msgid "hosts cannot be set when type is 'group'" +msgstr "des hôtes ne peuvent être indiqués lorsque le type est « group »" + +msgid "users cannot be set when type is 'hostgroup'" +msgstr "" +"impossible d'indiquer les utilisateurs lorsque le type est « hostgroup »" + +msgid "Automember rebuild membership task completed" +msgstr "La tâche de reconstruction d'appartenance automatique est terminée" + +msgid "Automember" +msgstr "Auto-adhésion" + msgid "" "\n" "Automount\n" @@ -1709,7 +1614,7 @@ msgid "No such attribute on this entry" msgstr "Aucun attribut pour cette entrée" msgid "Suppress processing of membership attributes." -msgstr "Arrêt du traitement des attributs d'appartenance." +msgstr "Arrêt du traitement des attributs d'adhésion." msgid "Continuous mode: Don't stop on errors." msgstr "Mode continu : pas d'arrêt sur erreurs." @@ -1971,12 +1876,6 @@ msgstr "" "http://www.ietf.org/rfc/rfc5280.txt\n" "\n" -msgid "Failure decoding Certificate Signing Request:" -msgstr "Échec dans le décodage du Certificate Signing Request :" - -msgid "Failure decoding Certificate Signing Request" -msgstr "Échec dans le décodage du Certificate Signing Request" - #, python-format msgid "Failure decoding Certificate Signing Request: %s" msgstr "Échec dans le décodage du Certificate Signing Request : %s" @@ -2053,12 +1952,6 @@ msgstr "" "l'entrée « %s »." #, python-format -msgid "no host record for subject alt name %s in certificate request" -msgstr "" -"pas d'enregistrement de système pour le nom alternatif de système %s sujet " -"de la demande de certificat" - -#, python-format msgid "" "Insufficient privilege to create a certificate with subject alt name '%s'." msgstr "" @@ -2379,6 +2272,12 @@ msgstr "Types de PAC par défaut" msgid "Default types of PAC supported for services" msgstr "Types de PAC par défaut pris en charge pour les services" +msgid "Default user authentication types" +msgstr "Types d'authentification utilisateur par défaut" + +msgid "Default types of supported user authentication" +msgstr "Types d'authentification utilisateur pris en charge par défaut" + msgid "Modify configuration options." msgstr "Modifier les options de configuration." @@ -2491,7 +2390,7 @@ msgid "Attributes to which the delegation applies" msgstr "Attributs auxquels la délégation s'applique" msgid "Member user group" -msgstr "Membre du groupe d'utilisateurs" +msgstr "Groupe d'utilisateurs membre" msgid "User group to apply delegation to" msgstr "Groupe d'utilisateur auquel appliquer la délégation" @@ -2967,6 +2866,9 @@ msgstr "" "globaux :\n" " ipa dnsconfig-mod --forwarder=10.0.0.1\n" +msgid "Permission value" +msgstr "Valeur de permission" + #, python-format msgid "invalid IP address version (is %(value)d, must be %(required_value)d)!" msgstr "" @@ -2985,10 +2887,6 @@ msgid "invalid address format" msgstr "format d'adresse invalide" #, python-format -msgid "invalid domain-name: %s" -msgstr "nom de domaine invalide : %s" - -#, python-format msgid "%(port)s is not a valid port" msgstr "%(port)s n'est pas un port valide" @@ -3090,15 +2988,6 @@ msgstr "Type de condensé" msgid "Digest" msgstr "Condensé" -msgid "Flags" -msgstr "Drapeaux" - -msgid "Protocol" -msgstr "Protocole" - -msgid "Public Key" -msgstr "Clé publique" - msgid "Preference" msgstr "Préférence" @@ -3181,18 +3070,14 @@ msgstr "'%(required)s' ne doit pas être vide lorsque '%(name)s' est défini" msgid "A host willing to act as a mail exchanger" msgstr "Un système désirant agir comme échangeur de messagerie" -msgid "" -"format must be specified as \"NEXT TYPE1 [TYPE2 [TYPE3 [...]]]\" (see RFC " -"4034 for details)" -msgstr "" -"le format doit être spécifié comme « NEXT TYPE1 [TYPE2 [TYPE3 [...]]] » (cf. " -"RFC 4034 pour les détails)" +msgid "Flags" +msgstr "Drapeaux" -msgid "Next Domain Name" -msgstr "Nom de domaine suivant" +msgid "Iterations" +msgstr "Itérations" -msgid "Type Map" -msgstr "Type de carte" +msgid "Salt" +msgstr "Graine" msgid "flags must be one of \"S\", \"A\", \"U\", or \"P\"" msgstr "" @@ -3232,27 +3117,6 @@ msgstr "" msgid "the value does not follow \"YYYYMMDDHHMMSS\" time format" msgstr "la valeur n'est pas au format temporel « YYYYMMDDHHMMSS »" -msgid "Type Covered" -msgstr "Type couvert" - -msgid "Labels" -msgstr "Étiquettes" - -msgid "Original TTL" -msgstr "TTL originel" - -msgid "Signature Expiration" -msgstr "Expiration de signature" - -msgid "Signature Inception" -msgstr "Création de signature" - -msgid "Signer's Name" -msgstr "Signataire" - -msgid "Signature" -msgstr "Signature" - msgid "Fingerprint Type" msgstr "Type d'empreinte" @@ -3276,18 +3140,6 @@ msgstr "" msgid "Managedby permission" msgstr "Permission managedby" -msgid "DNS zone" -msgstr "Zone DNS" - -msgid "DNS zones" -msgstr "Zones DNS" - -msgid "DNS Zones" -msgstr "Zones DNS" - -msgid "DNS Zone" -msgstr "Zone DNS" - msgid "Zone name" msgstr "Nom de zone" @@ -3300,6 +3152,60 @@ msgstr "Zone inverse de réseau IP" msgid "IP network to create reverse zone name from" msgstr "Réseau IP à partir duquel créer une zone inverse" +msgid "Active zone" +msgstr "Zone active" + +msgid "Is zone active?" +msgstr "La zone est-elle active ?" + +msgid "Zone forwarders" +msgstr "Transmetteurs de zone" + +msgid "" +"Per-zone forwarders. A custom port can be specified for each forwarder using " +"a standard format \"IP_ADDRESS port PORT\"" +msgstr "" +"Transmetteur par zone. Un port personnalisé peut être spécifié pour chaque " +"transmetteur en utilisant le format standard « adresse_IP port PORT »" + +msgid "Forward policy" +msgstr "Politique de transmission" + +msgid "" +"Per-zone conditional forwarding policy. Set to \"none\" to disable " +"forwarding to global forwarder for this zone. In that case, conditional zone " +"forwarders are disregarded." +msgstr "" +"Politique de tranmission conditionnelle par zone. Mettre à « none » pour " +"désactiver la transmission à un transmetteur global pour cette zone. Dans ce " +"cas, les transmetteurs de zone conditionnels sont ignorés." + +msgid "DNS is not configured" +msgstr "Le DNS n'est pas configuré" + +msgid "Search for DNS zones (SOA records)." +msgstr "Rechercher des zones DNS (enregistrements SOA)." + +#, python-format +msgid "Added system permission \"%(value)s\"" +msgstr "Permission système « %(value)s » ajoutée" + +#, python-format +msgid "Removed system permission \"%(value)s\"" +msgstr "Permission système « %(value)s » supprimée" + +msgid "DNS zone" +msgstr "Zone DNS" + +msgid "DNS zones" +msgstr "Zones DNS" + +msgid "DNS Zones" +msgstr "Zones DNS" + +msgid "DNS Zone" +msgstr "Zone DNS" + msgid "Authoritative nameserver" msgstr "Serveur de nom faisant autorité" @@ -3339,11 +3245,8 @@ msgstr "Minimum SOA" msgid "How long should negative responses be cached" msgstr "Durée de maintien en cache des réponses négatives" -msgid "SOA time to live" -msgstr "Durée de vie SOA" - -msgid "SOA record time to live" -msgstr "Durée de vie de l'enregistrement SOA" +msgid "Time to live" +msgstr "Durée de vie" msgid "SOA class" msgstr "Classe SOA" @@ -3354,12 +3257,6 @@ msgstr "Classe de l'enregistrement SOA " msgid "BIND update policy" msgstr "Politique de mise à jour BIND" -msgid "Active zone" -msgstr "Zone active" - -msgid "Is zone active?" -msgstr "La zone est-elle active ?" - msgid "Dynamic update" msgstr "Mise à jour dynamique" @@ -3386,28 +3283,6 @@ msgstr "" "Liste séparée par des points-virgules d'adresses IP de systèmes ou de " "réseaux autorisés à effectuer des transferts" -msgid "Zone forwarders" -msgstr "Transmetteurs de zone" - -msgid "" -"Per-zone forwarders. A custom port can be specified for each forwarder using " -"a standard format \"IP_ADDRESS port PORT\"" -msgstr "" -"Transmetteur par zone. Un port personnalisé peut être spécifié pour chaque " -"transmetteur en utilisant le format standard « adresse_IP port PORT »" - -msgid "Forward policy" -msgstr "Politique de transmission" - -msgid "" -"Per-zone conditional forwarding policy. Set to \"none\" to disable " -"forwarding to global forwarder for this zone. In that case, conditional zone " -"forwarders are disregarded." -msgstr "" -"Politique de tranmission conditionnelle par zone. Mettre à « none » pour " -"désactiver la transmission à un transmetteur global pour cette zone. Dans ce " -"cas, les transmetteurs de zone conditionnels sont ignorés." - msgid "Allow PTR sync" msgstr "Autoriser la synchronisation PTR" @@ -3437,9 +3312,6 @@ msgstr "" msgid "Nameserver IP address" msgstr "Adresse IP du serveur de noms" -msgid "DNS is not configured" -msgstr "Le DNS n'est pas configuré" - msgid "Nameserver address is not a domain name" msgstr "L'adresse du serveur de nom n'est pas un nom de domaine" @@ -3471,9 +3343,6 @@ msgstr "" "Forcer un changement de serveur de nom même si le serveur de nom n'est pas " "dans le DNS" -msgid "Search for DNS zones (SOA records)." -msgstr "Rechercher des zones DNS (enregistrements SOA)." - msgid "Forward zones only" msgstr "Zones forward uniquement" @@ -3501,17 +3370,9 @@ msgstr "Zone DNS « %(value)s » activée" msgid "Add a permission for per-zone access delegation." msgstr "Ajouter une permission pour la délégation par zone." -#, python-format -msgid "Added system permission \"%(value)s\"" -msgstr "Permission système « %(value)s » ajoutée" - msgid "Remove a permission for per-zone access delegation." msgstr "Supprimer une permission pour la délégation par zone." -#, python-format -msgid "Removed system permission \"%(value)s\"" -msgstr "Permission système « %(value)s » supprimée" - msgid "DNS resource record" msgstr "Enregistrement de ressource DNS" @@ -3527,9 +3388,6 @@ msgstr "Enregistrement de ressources DNS" msgid "Record name" msgstr "Nom d'enregistrement" -msgid "Time to live" -msgstr "Durée de vie" - msgid "Class" msgstr "Classe" @@ -4209,12 +4067,6 @@ msgstr "Catégorie de service sur laquelle la règle s'applique" msgid "Enabled" msgstr "Activée" -msgid "Users" -msgstr "Utilisateurs" - -msgid "Hosts" -msgstr "Hôtes" - msgid "Host Groups" msgstr "Groupes d'hôtes" @@ -4995,14 +4847,14 @@ msgid "" "- every enrolled client generates a host entry\n" msgstr "" "\n" -"Systèmes/Machines\n" +"Hôtes/Machines\n" "\n" -"Un système représente une machine, et peut être utilisé dans plusieurs\n" -"contextes :\n" -"- les entrées de services sont associés à un système\n" -"- un système stocke les entrées des principaux de services host/\n" -"- un système peut être utilisé dans les règles de contrôles d'accès HBAC\n" -"- chaque client enregistré crée une entrée système\n" +"Un hôte représente une machine. Elle peut être utilisée dans un certain " +"nombre de contextes :\n" +"- les entrées de service associées à un hôte,\n" +"- un hôte stockant le principal de service host/,\n" +"- un hôte utilisé dans les règles Host-based Access Control (HBAC),\n" +"- chaque client enregistré crée sa propre entrée d'hôte.\n" msgid "" "\n" @@ -5026,17 +4878,35 @@ msgstr "" "1. La machine est enregistrée par un administrateur de plein droit.\n" " L'entrée système peut pré-exister ou non. Un administrateur de\n" " plein droit est membre du rôle hostadmin ou du groupe admins\n" -"2. L'inscription est faite par un administrateur limité. Le système\n" +"2. L'inscription est faite par un administrateur limité. L'hôte\n" " doit avoir été préalablement créé. Un administrateur limité\n" " possède le privilège Host Enrollment.\n" "3. Le système a été créé avec un mot de passe à usage unique.\n" msgid "" "\n" -"EXAMPLES:\n" +"RE-ENROLLMENT:\n" +"\n" +"Host that has been enrolled at some point, and lost its configuration (e.g. " +"VM\n" +"destroyed) can be re-enrolled.\n" +"\n" +"For more information, consult the manual pages for ipa-client-install.\n" +"\n" +"A host can optionally store information such as where it is located,\n" +"the OS that it runs, etc.\n" msgstr "" "\n" -"EXEMPLES :\n" +"RÉ-INSCRIPTION :\n" +"\n" +"Un hôte qui a déjà été inscrit mais a perdu sa configuration (parce que sa " +"VM a été supprimée par exemple), peut être ré-inscrit.\n" +"\n" +"Pour plus d'informations sur le sujet, consulter les pages de manuel de la " +"commande ipa-client-install.\n" +"\n" +"Un système peut de façon optionnelle stocker des informations\n" +"complémentaires comme sa localisation, son système d'exploitation, etc.\n" msgid "" "\n" @@ -5045,8 +4915,8 @@ msgid "" "com\n" msgstr "" "\n" -" Ajouter un nouveau système :\n" -" ipa host-add --location=\"labo 3e étage\" --locality=Dallas test.example." +" Ajouter un nouvel hôte :\n" +" ipa host-add --location=\"3rd floor lab\" --locality=Dallas test.example." "com\n" msgid "" @@ -5055,7 +4925,7 @@ msgid "" " ipa host-del test.example.com\n" msgstr "" "\n" -" Supprimer un système :\n" +" Supprimer un hôte :\n" " ipa host-del test.example.com\n" msgid "" @@ -5064,7 +4934,7 @@ msgid "" " ipa host-add --os='Fedora 12' --password=Secret123 test.example.com\n" msgstr "" "\n" -" Ajouter un système avec un mot de passe à usage unique :\n" +" Ajouter un nouvel hôte à l'aide d'un mot de passe à usage unique :\n" " ipa host-add --os='Fedora 12' --password=Secret123 test.example.com\n" msgid "" @@ -5073,7 +4943,7 @@ msgid "" " ipa host-add --os='Fedora 12' --random test.example.com\n" msgstr "" "\n" -" Ajouter un nouveau système avec un mot de passe à usage unique aléatoire :\n" +"Ajouter un nouvel hôte avec un mot de passe aléatoire :\n" " ipa host-add --os='Fedora 12' --random test.example.com\n" msgid "" @@ -5082,7 +4952,7 @@ msgid "" " ipa host-mod --os='Fedora 12' test.example.com\n" msgstr "" "\n" -" Modifier les informations d'un système :\n" +" Modifier les informations d'un hôte :\n" " ipa host-mod --os='Fedora 12' test.example.com\n" msgid "" @@ -5091,8 +4961,8 @@ msgid "" " ipa host-mod --sshpubkey= --updatedns test.example.com\n" msgstr "" "\n" -" Supprimer les clés publiques SSH du système et modifie les DNS pour " -"refléter ce changement :\n" +" Supprimer les clés publiques SSH d'un hôte et modifier DNS en " +"conséquence :\n" " ipa host-mod --sshpubkey= --updatedns test.example.com\n" msgid "" @@ -5101,8 +4971,8 @@ msgid "" " ipa host-disable test.example.com\n" msgstr "" "\n" -" Désactiver la clé Kerberos du système, ses certificats SSL et tous\n" -" ses services :\n" +"Désactiver la clé Kerberos, les certificats SSL et tous les services d'un " +"hôte :\n" " ipa host-disable test.example.com\n" msgid "" @@ -5111,8 +4981,8 @@ msgid "" " ipa host-add-managedby --hosts=test2 test\n" msgstr "" "\n" -" Ajouter un système pouvant administrer le keytab et les certificats\n" -" du système sur lequel la commande est lancée :\n" +" Ajouter un hôte pouvant gérer la keytab et le certificat de l'hôte " +"courant :\n" " ipa host-add-managedby --hosts=test2 test\n" msgid "Keytab" @@ -5130,6 +5000,10 @@ msgstr "managedby en échec" msgid "SSH public key fingerprint" msgstr "Empreinte de clé publique SSH" +#, python-format +msgid "invalid domain-name: %s" +msgstr "nom de domaine invalide : %s" + msgid "host" msgstr "système" @@ -5757,6 +5631,7 @@ msgstr "Nom du domaine à approuver" msgid "Range type" msgstr "Type de plage" +#, python-brace-format msgid "ID range type, one of {vals}" msgstr "Type de plage d'identifiants, valeur à prendre parmi {vals}" @@ -5974,91 +5849,117 @@ msgstr "Votre session a expiré. Merci de vous reconnecter." msgid "Apply" msgstr "Appliquer" -msgid "Are you sure you want to proceed with the action." +msgid "Rebuild auto membership" +msgstr "Reconstruire l'appartenance automatique" + +msgid "Are you sure you want to proceed with the action?" msgstr "Êtes-vous sûr de vouloir procéder à cette action ?" -msgid "Are you sure you want to delete ${object}" +#, python-brace-format +msgid "Are you sure you want to delete ${object}?" msgstr "Êtes-vous sûr de vouloir supprimer ${object} ?" -msgid "Are you sure you want to disable ${object}" +#, python-brace-format +msgid "Are you sure you want to disable ${object}?" msgstr "Êtes-vous sûr de vouloir désactiver ${object} ?" -msgid "Are you sure you want to enable ${object}" +#, python-brace-format +msgid "Are you sure you want to enable ${object}?" msgstr "Êtes-vous sûr de vouloir activer ${object} ?" msgid "Actions" msgstr "Actions" +#, python-brace-format msgid "Add RunAs ${other_entity} into ${entity} ${primary_key}" msgstr "Ajouter RunAs ${other_entity} à ${entity} ${primary_key}" +#, python-brace-format msgid "Add RunAs Groups into ${entity} ${primary_key}" msgstr "Ajouter RunAs Groups à ${entity} ${primary_key}" +#, python-brace-format msgid "Add ${other_entity} Managing ${entity} ${primary_key}" msgstr "Ajouter ${other_entity} gérant ${entity} ${primary_key}" +#, python-brace-format msgid "Add ${other_entity} into ${entity} ${primary_key}" msgstr "Ajouter un objet ${other_entity} à l'objet ${entity} ${primary_key}" +#, python-brace-format msgid "Add Allow ${other_entity} into ${entity} ${primary_key}" msgstr "Ajouter Allow ${other_entity} à ${entity} ${primary_key}" +#, python-brace-format msgid "Add Deny ${other_entity} into ${entity} ${primary_key}" msgstr "Ajouter Deny ${other_entity} à ${entity} ${primary_key}" +#, python-brace-format msgid "Add ${entity} ${primary_key} into ${other_entity}" msgstr "Ajouter ${entity} ${primary_key} à ${other_entity}" +#, python-brace-format msgid "${count} item(s) added" msgstr "${count} élément(s) ajouté(s)" msgid "Direct Membership" -msgstr "Appartenance directe" +msgstr "Adhésion directe" msgid "Indirect Membership" -msgstr "Appartenance indirecte" +msgstr "Adhésion indirecte" msgid "No entries." msgstr "Pas d'entrées." +#, python-brace-format msgid "Showing ${start} to ${end} of ${total} entries." msgstr "Affichage des entrées ${start} à ${end} sur ${total}." +#, python-brace-format msgid "Remove RunAs ${other_entity} from ${entity} ${primary_key}" msgstr "Supprimer RunAs${other_entity} de ${entity} ${primary_key}" +#, python-brace-format msgid "Remove RunAs Groups from ${entity} ${primary_key}" msgstr "Supprimer RunAs Groups de ${entity} ${primary_key}" +#, python-brace-format msgid "Remove ${other_entity} Managing ${entity} ${primary_key}" msgstr "Supprimer ${other_entity} gérant ${entity} ${primary_key}" +#, python-brace-format msgid "Remove ${other_entity} from ${entity} ${primary_key}" msgstr "Supprimer l'objet ${other_entity} de l'objet ${entity} ${primary_key}" +#, python-brace-format msgid "Remove Allow ${other_entity} from ${entity} ${primary_key}" msgstr "" "Supprimer l'autorisation de ${other_entity} de ${entity} ${primary_key}" +#, python-brace-format msgid "Remove Deny ${other_entity} from ${entity} ${primary_key}" msgstr "" "Supprimer l'interdiction de ${other_entity} de ${entity} ${primary_key}" +#, python-brace-format msgid "Remove ${entity} ${primary_key} from ${other_entity}" msgstr "Supprimer ${entity} ${primary_key} de ${other_entity}" +#, python-brace-format msgid "${count} item(s) removed" msgstr "${count} élément(s) supprimé(s)" msgid "Show Results" msgstr "Afficher les résultats" +msgid "About" +msgstr "À propos de" + msgid "Add" msgstr "Ajouter" msgid "Add and Add Another" -msgstr "Ajouter, puis ajouter un nouveau" +msgstr "Ajouter, puis ajouter une nouvelle" msgid "Add and Close" msgstr "Ajouter et fermer" @@ -6141,18 +6042,22 @@ msgstr "Général" msgid "Identity Settings" msgstr "Paramètres d'identité" +#, python-brace-format msgid "${entity} ${primary_key} Settings" msgstr "Paramètres de l'objet ${entity} ${primary_key}" msgid "Back to Top" msgstr "Haut de page" +#, python-brace-format msgid "${entity} ${primary_key} updated" msgstr "${entity} ${primary_key} modifié" +#, python-brace-format msgid "${entity} successfully added" msgstr "${entity} ajoutée avec succès" +#, python-brace-format msgid "Add ${entity}" msgstr "Ajouter ${entity}" @@ -6176,6 +6081,7 @@ msgstr "" msgid "Unsaved Changes" msgstr "Modifications non sauvegardées" +#, python-brace-format msgid "Edit ${entity}" msgstr "Modifier ${entity}" @@ -6191,6 +6097,7 @@ msgstr "Redirection" msgid "Select entries to be removed." msgstr "Sélectionner les entrées à supprimer." +#, python-brace-format msgid "Remove ${entity}" msgstr "Supprimer ${entity}" @@ -6219,6 +6126,7 @@ msgstr "Recharger le navigateur." msgid "Return to the main page and retry the operation" msgstr "Retourner à la page principale et retenter l'opération" +#, python-brace-format msgid "An error has occurred (${error})" msgstr "Une erreur est survenue (${error})" @@ -6240,12 +6148,15 @@ msgstr "Erreur inconnue" msgid "URL" msgstr "URL" +#, python-brace-format msgid "${primary_key} is managed by:" -msgstr "${primary_key} est gérée par :" +msgstr "${primary_key} est géré par :" +#, python-brace-format msgid "${primary_key} members:" msgstr "membres ${primary_key} :" +#, python-brace-format msgid "${primary_key} is a member of:" msgstr "${primary_key} est membre de :" @@ -6280,6 +6191,7 @@ msgstr "" msgid "Logged In As" msgstr "Connecté en tant que" +#, python-brace-format msgid "" "To login with Kerberos, please make sure you have valid tickets (obtainable " "via kinit) and <a href='http://${host}/ipa/config/unauthorized." @@ -6311,6 +6223,7 @@ msgstr "secondes" msgid "Attribute" msgstr "Attribut" +#, python-brace-format msgid "Add Condition into ${pkey}" msgstr "Ajouter une condition à ${pkey}" @@ -6324,7 +6237,7 @@ msgid "Default user group" msgstr "Groupe d'utilisateur par défaut" msgid "Exclusive" -msgstr "Exclus" +msgstr "Exclusion" msgid "Expression" msgstr "Expression" @@ -6336,7 +6249,7 @@ msgid "Host group rules" msgstr "Règles de groupes d'hôtes" msgid "Inclusive" -msgstr "Inclus" +msgstr "Inclusion" msgid "User group rule" msgstr "Règle de groupe utilisateur" @@ -6413,6 +6326,10 @@ msgstr "Invalide avant, jusqu'au" msgid "Fingerprints" msgstr "Condensés" +msgid "Get Certificate" +msgstr "Obtenir le certificat" + +#, python-brace-format msgid "Issue New Certificate for ${entity} ${primary_key}" msgstr "Émettre un nouveau certificat pour l'objet ${entity} ${primary_key}" @@ -6455,6 +6372,7 @@ msgstr "Raison de la révocation" msgid "Remove from CRL" msgstr "Retrait de la LRC" +#, python-brace-format msgid "" "<ol> <li>Create a certificate database or use an existing one. To create a " "new database:<br/> <code># certutil -N -d <database path></code> </li> " @@ -6476,6 +6394,7 @@ msgstr "" msgid "Certificate requested" msgstr "Certificat demandé" +#, python-brace-format msgid "Restore Certificate for ${entity} ${primary_key}" msgstr "Restaurer un certificat pour ${entity} ${primary_key}" @@ -6492,6 +6411,7 @@ msgstr "" msgid "Certificate restored" msgstr "Certificat restauré" +#, python-brace-format msgid "Revoke Certificate for ${entity} ${primary_key}" msgstr "Révoquer un certificat pour l'objet ${entity} ${primary_key}" @@ -6523,9 +6443,13 @@ msgstr "Certificat validé présent" msgid "Validity" msgstr "Validité" +#, python-brace-format msgid "Certificate for ${entity} ${primary_key}" msgstr "Certificat pour l'objet ${entity} ${primary_key}" +msgid "View Certificate" +msgstr "Afficher le certificat" + msgid "Group Options" msgstr "Options de groupe" @@ -6583,6 +6507,7 @@ msgstr "Enregistrement non trouvé." msgid "Redirection to PTR record" msgstr "Redirection vers l'enregistrement PTR" +#, python-brace-format msgid "Zone found: ${zone}" msgstr "Zone trouvée : ${zone}" @@ -6697,6 +6622,7 @@ msgstr "Règles" msgid "Run Test" msgstr "Lancer test" +#, python-brace-format msgid "Specify external ${entity}" msgstr "Spécifier un ${entity} externe" @@ -6763,6 +6689,7 @@ msgstr "Décommissioner" msgid "Are you sure you want to unprovision this host?" msgstr "Êtes-vous sûr de vouloir décommissionner ce système ?" +#, python-brace-format msgid "Unprovisioning ${entity}" msgstr "Décommissionnement de l'objet ${entity}" @@ -6773,7 +6700,7 @@ msgid "Host Group Settings" msgstr "Paramètres des groupe d'hôtes" msgid "Kerberos Ticket Policy" -msgstr "Politique de ticket Kerberos" +msgstr "Politique de tickets Kerberos" msgid "Netgroup Settings" msgstr "Paramètres du netgroup" @@ -6781,11 +6708,8 @@ msgstr "Paramètres du netgroup" msgid "User" msgstr "Utilisateur" -msgid "Identity" -msgstr "Identité" - -msgid "Permission with invalid target specification" -msgstr "Permission avec spécification de cible invalide" +msgid "Permission settings" +msgstr "Paramètres de permission" msgid "Privilege Settings" msgstr "Paramètres du privilège" @@ -6817,6 +6741,9 @@ msgstr "Domaine Active Directory" msgid "Active Directory domain with POSIX attributes" msgstr "Domaine Active Directory avec attributs POSIX" +msgid "Detect" +msgstr "Détection" + msgid "Local domain" msgstr "Domaine local :" @@ -6827,7 +6754,7 @@ msgid "Active Directory winsync" msgstr "Active Directory winsync" msgid "Realm Domains" -msgstr "Domaines" +msgstr "Domaines pour le royaume" msgid "Check DNS" msgstr "Vérification DNS" @@ -6910,6 +6837,7 @@ msgstr "Accède cet hôte" msgid "Option added" msgstr "Option ajoutée" +#, python-brace-format msgid "${count} option(s) removed" msgstr "${count} option(s) supprimée(s)" @@ -6940,6 +6868,9 @@ msgstr "Domaine" msgid "Establish using" msgstr "Établir en utilisant" +msgid "Fetch domains" +msgstr "Récupérer les domaines" + msgid "Domain NetBIOS name" msgstr "Nom de domaine NetBIOS" @@ -6982,6 +6913,7 @@ msgstr "Adresse postale" msgid "Misc. Information" msgstr "Informations diverses" +#, python-brace-format msgid "" "Are you sure you want to ${action} the user?<br/>The change will take effect " "immediately." @@ -6989,6 +6921,7 @@ msgstr "" "Êtes-vous sûr de vouloir ${action} l'utilisateur ?<br/>Le changement prendra " "effet immédiatement." +#, python-brace-format msgid "Click to ${action}" msgstr "Cliquer pour ${action}." @@ -6998,6 +6931,7 @@ msgstr "Mot de passe actuel" msgid "Current password is required" msgstr "Le mot de passe actuel est requis" +#, python-brace-format msgid "Your password expires in ${days} days." msgstr "Votre mot de passe expire dans ${days} jours." @@ -7031,18 +6965,21 @@ msgstr "Vérifier le mot de passe" msgid "Are you sure you want to delete selected entries?" msgstr "Êtes-vous sûr de vouloir supprimer les entrées sélectionnées ?" +#, python-brace-format msgid "${count} item(s) deleted" msgstr "${count} élément(s) supprimé(s)" msgid "Are you sure you want to disable selected entries?" msgstr "Êtes-vous sûr de vouloir désactiver les entrées sélectionnées ?" +#, python-brace-format msgid "${count} item(s) disabled" msgstr "${count} élément(s) désactivé(s)" msgid "Are you sure you want to enable selected entries?" msgstr "Êtes-vous sûr de vouloir activer les entrées sélectionnées ?" +#, python-brace-format msgid "${count} item(s) enabled" msgstr "${count} élément(s) activé(s)" @@ -7055,6 +6992,7 @@ msgstr "Liens rapides" msgid "Select All" msgstr "Tout sélectionner" +#, python-brace-format msgid "" "Query returned more results than the configured size limit. Displaying the " "first ${counter} results." @@ -7068,12 +7006,12 @@ msgstr "Tout déselectionner" msgid "Disabled" msgstr "Désactivé" +msgid "Working" +msgstr "Fonctionnel" + msgid "Audit" msgstr "Audit" -msgid "Automember" -msgstr "Auto-adhésion" - msgid "Automount" msgstr "Automontage" @@ -7083,6 +7021,9 @@ msgstr "DNS" msgid "Host Based Access Control" msgstr "Contrôlé d'accès basé sur les hôtes (HBAC)" +msgid "Identity" +msgstr "Identité" + msgid "IPA Server" msgstr "Serveur IPA" @@ -7101,6 +7042,12 @@ msgstr "Approbations" msgid "True" msgstr "Vrai" +msgid "First" +msgstr "Premier" + +msgid "Last" +msgstr "Dernier" + msgid "Next" msgstr "Suivant(e)" @@ -7122,6 +7069,9 @@ msgstr "Le texte ne correspond pas au motif de champ" msgid "Must be a decimal number" msgstr "Doit être un nombre décimal" +msgid "Format error" +msgstr "Erreur de format" + msgid "Must be an integer" msgstr "Doit être un entier" @@ -7134,15 +7084,21 @@ msgstr "Pas une adresse IPv4 valide" msgid "Not a valid IPv6 address" msgstr "Pas une adresse IPv6 valide" +#, python-brace-format msgid "Maximum value is ${value}" msgstr "La valeur maximale est ${value}" +#, python-brace-format msgid "Minimum value is ${value}" msgstr "La valeur minimale est ${value}" msgid "Not a valid network address" msgstr "Pas une adresse réseau valide" +msgid "Parse error" +msgstr "Erreur d'analyse" + +#, python-brace-format msgid "'${port}' is not a valid port" msgstr "« ${port} » n'est pas un port valide" @@ -7194,7 +7150,7 @@ msgid "" " ipa krbtpolicy-mod admin --maxlife=3600\n" msgstr "" "\n" -"Politique de ticket Kerberos\n" +"Politique de tickets Kerberos\n" "\n" "Il n'existe qu'une unique politique de ticket Kerberos. Cette politique\n" "définit la durée de vie maximale des tickets, ainsi que l'âge maximal de\n" @@ -7235,10 +7191,10 @@ msgstr "" " ipa krbtpolicy-mod admin --maxlife=3600\n" msgid "kerberos ticket policy settings" -msgstr "configuration de la politique de ticket Kerberos" +msgstr "configuration de la politique de tickets Kerberos" msgid "Manage ticket policy for specific user" -msgstr "Administre la politique de ticket d'un utilisateur spécifique" +msgstr "Administrer la politique de tickets d'un utilisateur spécifique" msgid "Max life" msgstr "Vie max." @@ -7253,13 +7209,13 @@ msgid "Maximum renewable age (seconds)" msgstr "Âge maximale de renouvellement (secondes)" msgid "Modify Kerberos ticket policy." -msgstr "Modifier la politique de ticket Kerberos." +msgstr "Modifier la politique de tickets Kerberos." msgid "Display the current Kerberos ticket policy." -msgstr "Afficher la politique de ticket Kerberos." +msgstr "Afficher la politique de tickets Kerberos." msgid "Reset Kerberos ticket policy to the default values." -msgstr "Réinitialiser la politique de ticket Kerberos." +msgstr "Réinitialiser la politique de tickets Kerberos." msgid "" "\n" @@ -7486,7 +7442,7 @@ msgstr "" msgid "" "Kerberos principal %s already exists. Use 'ipa user-mod' to set it manually." msgstr "" -"Le principal Kerberos %s existe déjà. Utiliser la commande 'ipa user-mod' " +"Le principal Kerberos %s existe déjà. Utiliser la commande « ipa user-mod » " "pour le créer manuellement." #, python-format @@ -7633,6 +7589,12 @@ msgstr "Ignorer le greffon de compatibilité" msgid "Allows migration despite the usage of compat plugin" msgstr "Autoriser les migrations malgré l'utilisation du greffon compat" +msgid "CA certificate" +msgstr "Certificat de l'AC" + +msgid "Load CA certificate of LDAP server from FILE" +msgstr "Charger le certification de l'AC du serveur LDAP depuis FILE" + msgid "Lists of objects migrated; categorized by type." msgstr "Liste des objets migrés, catégorisés par type." @@ -7851,6 +7813,30 @@ msgstr "Ajouter des membres à un netgroup." msgid "Remove members from a netgroup." msgstr "Supprimer des membres d'un netgroup." +msgid "Manager" +msgstr "Responsable" + +msgid "Vendor" +msgstr "Fournisseur" + +msgid "Model" +msgstr "Modèle" + +msgid "Serial" +msgstr "Numéro de série" + +msgid "Clock offset" +msgstr "Décalage de l'horloge" + +msgid "Clock interval" +msgstr "Intervalle de l'horloge" + +msgid "Counter" +msgstr "Compteur" + +msgid "URI" +msgstr "URI" + msgid "" "\n" "Set a user's password\n" @@ -7904,120 +7890,9 @@ msgstr "Données d'authentification invalides" msgid "" "\n" "Permissions\n" -"\n" -"A permission enables fine-grained delegation of rights. A permission is\n" -"a human-readable form of a 389-ds Access Control Rule, or instruction " -"(ACI).\n" -"A permission grants the right to perform a specific task such as adding a\n" -"user, modifying a group, etc.\n" -"\n" -"A permission may not contain other permissions.\n" -"\n" -"* A permission grants access to read, write, add or delete.\n" -"* A privilege combines similar permissions (for example all the permissions\n" -" needed to add a user).\n" -"* A role grants a set of privileges to users, groups, hosts or hostgroups.\n" -"\n" -"A permission is made up of a number of different parts:\n" -"\n" -"1. The name of the permission.\n" -"2. The target of the permission.\n" -"3. The rights granted by the permission.\n" -"\n" -"Rights define what operations are allowed, and may be one or more\n" -"of the following:\n" -"1. write - write one or more attributes\n" -"2. read - read one or more attributes\n" -"3. add - add a new entry to the tree\n" -"4. delete - delete an existing entry\n" -"5. all - all permissions are granted\n" -"\n" -"Read permission is granted for most attributes by default so the read\n" -"permission is not expected to be used very often.\n" -"\n" -"Note the distinction between attributes and entries. The permissions are\n" -"independent, so being able to add a user does not mean that the user will\n" -"be editable.\n" -"\n" -"There are a number of allowed targets:\n" -"1. type: a type of object (user, group, etc).\n" -"2. memberof: a member of a group or hostgroup\n" -"3. filter: an LDAP filter\n" -"4. subtree: an LDAP filter specifying part of the LDAP DIT. This is a\n" -" super-set of the \"type\" target.\n" -"5. targetgroup: grant access to modify a specific group (such as granting\n" -" the rights to manage group membership)\n" -"\n" -"EXAMPLES:\n" -"\n" -" Add a permission that grants the creation of users:\n" -" ipa permission-add --type=user --permissions=add \"Add Users\"\n" -"\n" -" Add a permission that grants the ability to manage group membership:\n" -" ipa permission-add --attrs=member --permissions=write --type=group " -"\"Manage Group Members\"\n" msgstr "" "\n" "Permissions\n" -"\n" -"Une permission permet une définition fine des délégations de droits. Une\n" -"permission est une forme lisible par un humain des règles ou instructions\n" -"de contrôle d'accès (ACI) de 389-ds. Une permission accorde le droit\n" -"d'effectuer une tâche spécifique comme la création d'un utilisateur, la\n" -"modification d'un groupe, etc.\n" -"\n" -"Une permission ne peut contenir d'autres permissions.\n" -"\n" -"* Une permission accorde un droit en lecture, écriture, ajout ou " -"supression.\n" -"* Un privilège combine des permissions similaires (par exemple toutes les\n" -" permissions requises pour la création d'un utilisateur).\n" -"* Un rôle accorde un jeu de privilèges à des utilisateurs, des groupes, des\n" -" hôtes, ou à des groupes d'hôtes.\n" -"\n" -"Une permission est constituée des éléments suivants :\n" -"\n" -"1. Le nom de la permission.\n" -"2. La cible de la permission.\n" -"3. Les droits accordés par la permission.\n" -"\n" -"Les droits définissent quelles opérations sont autorisées, et\n" -"peuvent être une ou plusieurs parmi :\n" -"1. write - écrire un ou plusieurs attributs\n" -"2. read - lire un ou plusieurs attributs\n" -"3. add - ajouter une nouvelle entrée dans l'arbre\n" -"4. delete - supprimer une entrée existante\n" -"5. all - toutes les permissions sont accordées\n" -"\n" -"La permission read est accordée par défaut sur la plupart des\n" -"attributs, elle ne sera donc utilisée que peu souvent.\n" -"\n" -"Noter la distinction entre attributs et entrées. Les permissions sont\n" -"indépendantes, donc la capacité de créer un utilisateur ne signifie pas\n" -"que l'utilisateur sera modifiable.\n" -"\n" -"Il existe plusieurs sortes de cibles autorisées dans une permission :\n" -"1. type: un type d'objet (user, group, etc.).\n" -"2. memberof: un membre d'un groupe ou d'un groupe d'hôtes\n" -"3. filter: un filtre LDAP\n" -"4. subtree: un filtre LDAP spécifiant une branche du DIT LDAP. Ceci est un\n" -" sur-ensemble de la cible 'type'.\n" -"5. targetgroup: accorde l'accès permettant de modifier un groupe spécifique\n" -" (comme le fait d'accorder les droits en modification des membres d'un " -"groupe)\n" -"\n" -"EXEMPLES :\n" -"\n" -" Ajouter une permission accordant la création d'utilisateurs :\n" -" ipa permission-add --type=user --permissions=add \"Add Users\"\n" -"\n" -" Ajouter une permission accordant la capacité de gérer les membres d'un " -"groupe :\n" -" ipa permission-add --attrs=member --permissions=write --type=group " -"\"Manage Group Members\"\n" - -msgid "Permission Type" -msgstr "Type de permission" msgid "permission" msgstr "permission" @@ -8028,38 +7903,18 @@ msgstr "permissions" msgid "Permission name" msgstr "Nom de permission" -msgid "Permissions to grant (read, write, add, delete, all)" -msgstr "Permissions à accorder (read, write, add, delete, all)" - -msgid "" -"Type of IPA object (user, group, host, hostgroup, service, netgroup, dns)" -msgstr "" -"Type d'objet IPA (user, group, host, hostgroup, service, netgroup, dns)" - -msgid "Member of group" -msgstr "Membre du groupe" - -msgid "Target members of a group" -msgstr "Membres cible d'un groupe" - msgid "Subtree to apply permissions to" msgstr "Branche sur laquelle appliquer les permissions" -msgid "User group to apply permissions to" -msgstr "Groupe d'utilisateur sur lequel appliquer les permissions" - -msgid "Add a new permission." -msgstr "Ajouter une nouvelle permission." +msgid "Member of group" +msgstr "Membre du groupe" #, python-format msgid "Added permission \"%(value)s\"" msgstr "Permission « %(value)s » ajoutée" -msgid "Add a system permission without an ACI" -msgstr "Ajouter une permission système sans ACI" - -msgid "Permission type" -msgstr "Type de permission" +msgid "Add a new permission." +msgstr "Ajouter une nouvelle permission." msgid "Delete a permission." msgstr "Supprimer une permission." @@ -8071,9 +7926,6 @@ msgstr "Permission « %(value)s » supprimée" msgid "force delete of SYSTEM permissions" msgstr "forcer la suppression des permissions SYSTEM" -msgid "A SYSTEM permission may not be removed" -msgstr "Une permission SYSTEM ne peut être supprimée" - msgid "Modify a permission." msgstr "Modifier une permission." @@ -8081,12 +7933,6 @@ msgstr "Modifier une permission." msgid "Modified permission \"%(value)s\"" msgstr "Permission « %(value)s » modifiée" -msgid "A SYSTEM permission may not be modified" -msgstr "Une permission SYSTEM ne peut être modifiée" - -msgid "New name can not be empty" -msgstr "Un nouveau nom ne peut être vide" - msgid "Search for permissions." msgstr "Recherche des permissions." @@ -8154,8 +8000,7 @@ msgstr "" " Ping verbeux d'un serveur IPA :\n" " ipa -v ping\n" " ipa: INFO: trying https://ipa.example.com/ipa/xml\n" -" ipa: INFO: Forwarding 'ping' to server 'https://ipa.example.com/ipa/" -"xml'\n" +" ipa: INFO: Forwarding 'ping' to server 'https://ipa.example.com/ipa/xml'\n" " -----------------------------------------------------\n" " IPA server version 2.1.9. API version 2.20\n" " -----------------------------------------------------\n" @@ -8423,7 +8268,7 @@ msgstr "" "%(gname)s)" msgid "password policy" -msgstr "politique de mot de passe" +msgstr "politique de mots de passe" msgid "password policies" msgstr "politiques de mot de passe" @@ -8517,6 +8362,87 @@ msgstr "Afficher la politique effective sur un utilisateur spécifique" msgid "Search for group password policies." msgstr "Rechercher des politiques de mot de passe de groupe." +msgid "invalid attribute name" +msgstr "nom d'attribut invalide" + +msgid "invalid port number" +msgstr "numéro de port invalide" + +msgid "RADIUS proxy server" +msgstr "Serveur mandataire RADIUS" + +msgid "RADIUS proxy servers" +msgstr "Serveurs mandataires RADIUS" + +msgid "RADIUS Servers" +msgstr "Serveurs RADIUS" + +msgid "RADIUS Server" +msgstr "Serveur RADIUS" + +msgid "RADIUS proxy server name" +msgstr "Nom du serveur mandataire RADIUS" + +msgid "A description of this RADIUS proxy server" +msgstr "Description de ce serveur mandataire RADIUS" + +msgid "Server" +msgstr "Serveur" + +msgid "The hostname or IP (with or without port)" +msgstr "Nom d'hôte ou adresse IP (avec ou sans port)" + +msgid "Secret" +msgstr "Secret" + +msgid "The secret used to encrypt data" +msgstr "Le secret utilisé pour chiffrer les données" + +msgid "Timeout" +msgstr "Délai d'expiration" + +msgid "The total timeout across all retries (in seconds)" +msgstr "Délai d'expiration total pour toutes les tentatives (en secondes)" + +msgid "Retries" +msgstr "Tentatives" + +msgid "The number of times to retry authentication" +msgstr "Le nombre de tentatives de ré-authentification" + +msgid "User attribute" +msgstr "Attribut utilisateur" + +msgid "The username attribute on the user object" +msgstr "L'attribut de nom d'utilisateur de l'objet utilisateur" + +msgid "Add a new RADIUS proxy server." +msgstr "Ajouter un nouveau serveur mandataire RADIUS." + +#, python-format +msgid "Added RADIUS proxy server \"%(value)s\"" +msgstr "Serveur mandataire RADIUS « %(value)s » ajouté" + +msgid "Delete a RADIUS proxy server." +msgstr "Supprimer un serveur mandataire RADIUS." + +#, python-format +msgid "Deleted RADIUS proxy server \"%(value)s\"" +msgstr "Serveur mandataire RADIUS « %(value)s » supprimé" + +msgid "Modify a RADIUS proxy server." +msgstr "Modifier un serveur mandataire RADIUS" + +#, python-format +msgid "Modified RADIUS proxy server \"%(value)s\"" +msgstr "Serveur mandataire RADIUS « %(value)s » modifié" + +msgid "Search for RADIUS proxy servers." +msgstr "Rechercher des serveurs mandataires RADIUS." + +msgid "Display information about a RADIUS proxy server." +msgstr "Afficher les informations sur un serveur mandataire RADIUS." + msgid "" "\n" "Realm domains\n" @@ -8559,7 +8485,7 @@ msgstr "" " ipa realmdomains-mod --del-domain=olddomain.com\n" msgid "Realm domains" -msgstr "Domaines" +msgstr "Domaines pour le royaume" msgid "Add domain" msgstr "Ajouter un domaine" @@ -8568,7 +8494,7 @@ msgid "Delete domain" msgstr "Supprimer un domaine" msgid "Modify realm domains." -msgstr "Modifier les domaines." +msgstr "Modifier les domaines du royaume." msgid "Force adding domain even if not in DNS" msgstr "Forcer l'ajout d'un domaine même si absent des DNS" @@ -8592,7 +8518,7 @@ msgid "no SOA or NS records found for domain %s" msgstr "aucun enregistrement SOA ou NS trouvé pour le domaine : %s" msgid "Display the list of realm domains." -msgstr "Afficher la liste des domaines." +msgstr "Afficher la liste des domaines du royaume." msgid "" "\n" @@ -9495,78 +9421,9 @@ msgstr "Supprimer des membres d'un groupe de commandes Sudo." msgid "" "\n" "Sudo Rules\n" -"\n" -"Sudo (su \"do\") allows a system administrator to delegate authority to\n" -"give certain users (or groups of users) the ability to run some (or all)\n" -"commands as root or another user while providing an audit trail of the\n" -"commands and their arguments.\n" -"\n" -"FreeIPA provides a means to configure the various aspects of Sudo:\n" -" Users: The user(s)/group(s) allowed to invoke Sudo.\n" -" Hosts: The host(s)/hostgroup(s) which the user is allowed to to invoke " -"Sudo.\n" -" Allow Command: The specific command(s) permitted to be run via Sudo.\n" -" Deny Command: The specific command(s) prohibited to be run via Sudo.\n" -" RunAsUser: The user(s) or group(s) of users whose rights Sudo will be " -"invoked with.\n" -" RunAsGroup: The group(s) whose gid rights Sudo will be invoked with.\n" -" Options: The various Sudoers Options that can modify Sudo's behavior.\n" -"\n" -"An order can be added to a sudorule to control the order in which they\n" -"are evaluated (if the client supports it). This order is an integer and\n" -"must be unique.\n" -"\n" -"FreeIPA provides a designated binddn to use with Sudo located at:\n" -"uid=sudo,cn=sysaccounts,cn=etc,dc=example,dc=com\n" -"\n" -"To enable the binddn run the following command to set the password:\n" -"LDAPTLS_CACERT=/etc/ipa/ca.crt /usr/bin/ldappasswd -S -W -h ipa.example.com -" -"ZZ -D \"cn=Directory Manager\" uid=sudo,cn=sysaccounts,cn=etc,dc=example," -"dc=com\n" -"\n" -"For more information, see the FreeIPA Documentation to Sudo.\n" msgstr "" "\n" "Règles Sudo\n" -"\n" -"Sudo (su « do ») permet à un administrateur système de donner l'autorisation " -"à certains\n" -"utilisateurs (ou groupes d'utilisateurs) d'exécuter certaines (ou toute)\n" -"commandes en tant qu'utilisateur root ou autre, tout en fournissant une " -"piste de vérification\n" -"des commandes et de leurs arguments.\n" -"\n" -"FreeIPA donne des possibilités de configurer divers aspects de Sudo :\n" -" Users : les utilisateurs ou groupes autorisés à faire appel à Sudo.\n" -" Hosts : les hôtes ou groupes d'hôtes sur lesquels l'utilisateur peut " -"faire appel à Sudo.\n" -" Allow Command : les commandes précises pouvant être lancées via Sudo.\n" -" Deny Command : les commandes précises ne pouvant pas être lancées via " -"Sudo.\n" -" RunAsUser : utilisateurs ou groupes ayant des droits Sudo avec lesquels " -"il sera fait appel.\n" -" RunAsGroup : les groupes dont le gid permet de faire appel avec certains " -"droits Sudo.\n" -" Options : les diverses options Sudoers susceptibles de modifier le " -"comportement de Sudo.\n" -"\n" -"Un numéro d'ordre peut être ajouté à des règles Sudo pour contrôler l'ordre " -"dans lequel\n" -"elles sont évaluées (si le client la prend en charge). Ce numéro d'ordre est " -"un entier et\n" -"doit être unique.\n" -"\n" -"FreeIPA met à disposition un binddn conçu pour être utilisé avec Sudo situé " -"à :\n" -"uid=sudo,cn=sysaccounts,cn=etc,dc=example,dc=com\n" -"\n" -"Pour activer binddn, exécutez la commande ci-après pour définir le mot de " -"passe :\n" -"LDAPTLS_CACERT=/etc/ipa/ca.crt /usr/bin/ldappasswd -S -W -h ipa.example.com -" -"ZZ -D \"cn=Directory Manager\" uid=sudo,cn=sysaccounts,cn=etc,dc=example," -"dc=com\n" -"\n" -"Pour plus d'informations, voyez la documentation FreeIPA de Sudo.\n" msgid "Commands for controlling sudo configuration" msgstr "Commandes pour le contrôle d'une configuration sudo" @@ -9610,6 +9467,16 @@ msgstr "Ordre sudo" msgid "integer to order the Sudo rules" msgstr "nombre entier pour ordonner les règles sudo" +msgid "External User" +msgstr "Utilisateur externe" + +msgid "External User the rule applies to (sudorule-find only)" +msgstr "" +"Utilisateur externe auquel la règle s'applique (sudorule-find uniquement)" + +msgid "Host Masks" +msgstr "Masques d'hôtes" + msgid "Sudo Allow Commands" msgstr "Commandes sudo allow" @@ -9634,13 +9501,6 @@ msgstr "Groupe de RunAs Users" msgid "Run as any user within a specified group" msgstr "Lancer en tant que n'importe quel utilisateur du groupe spécifié" -msgid "External User" -msgstr "Utilisateur externe" - -msgid "External User the rule applies to (sudorule-find only)" -msgstr "" -"Utilisateur externe auquel la règle s'applique (sudorule-find uniquement)" - msgid "RunAs External User" msgstr "Lancer en tant que l'utilisateur externe" @@ -9649,6 +9509,12 @@ msgstr "" "Utilisateur externe en tant que lequel les commandes sont lancées (sudorule-" "find uniquement)" +msgid "RunAs Groups" +msgstr "RunAs Groups" + +msgid "Run with the gid of a specified POSIX group" +msgstr "Lancer avec le GID d'un groupe POSIX spécifique" + msgid "RunAs External Group" msgstr "Utilisateur externe" @@ -9660,12 +9526,6 @@ msgstr "" msgid "Sudo Option" msgstr "Option sudo" -msgid "RunAs Groups" -msgstr "RunAs Groups" - -msgid "Run with the gid of a specified POSIX group" -msgstr "Lancer avec le GID d'un groupe POSIX spécifique" - #, python-format msgid "order must be a unique value (%(order)d already used by %(rule)s)" msgstr "" @@ -9692,22 +9552,29 @@ msgstr "Modifier une règle Sudo." msgid "Modified Sudo Rule \"%(value)s\"" msgstr "Règle Sudo « %(value)s » modifiée" -msgid "" -"command category cannot be set to 'all' while there are allow or deny " -"commands" -msgstr "" -"la catégorie commandes ne peut être définie à 'all' alors qu'il reste des " -"commandes autorisées ou interdites" +msgid "user" +msgstr "utilisateur" -msgid "user runAs category cannot be set to 'all' while there are users" -msgstr "" -"la catégorie RunAs de l'utilisateur ne peut être mise à 'all' tant qu'il y a " -"des utilisateurs" +msgid "users" +msgstr "utilisateurs" -msgid "group runAs category cannot be set to 'all' while there are groups" -msgstr "" -"la catégorie RunAs du groupe ne peut être mise à 'all' tant qu'il y a des " -"groupes" +msgid "command" +msgstr "commande" + +msgid "commands" +msgstr "commandes" + +msgid "runAs user" +msgstr "utilisateur runAs" + +msgid "runAs users" +msgstr "utilisateurs runAs" + +msgid "group runAs" +msgstr "groupe runAs" + +msgid "runAs groups" +msgstr "groupes runAs" msgid "Search for Sudo Rule." msgstr "Rechercher une règle Sudo." @@ -10111,6 +9978,7 @@ msgstr "Premier ID POSIX de la plage pour le domaine approuvé" msgid "Size of the ID range reserved for the trusted domain" msgstr "Taille de la plage d'ID pour le domaine approuvé" +#, python-brace-format msgid "Type of trusted domain ID range, one of {vals}" msgstr "" "Type de plage d'identifiants de domaine approuvé, valeur à prendre parmi " @@ -10120,6 +9988,10 @@ msgstr "" msgid "Added Active Directory trust for realm \"%(value)s\"" msgstr "Approbation Active Directory ajoutée pour le domaine « %(value)s »" +#, python-format +msgid "Re-established trust to domain \"%(value)s\"" +msgstr "Ré-approbation du domaine « %(value)s »" + msgid "AD Trust setup" msgstr "Configuration des relations d'approbations avec AD" @@ -10145,6 +10017,9 @@ msgstr "type d'approbation" msgid "only \"ad\" is supported" msgstr "seul « ad » est pris en charge" +msgid "Realm-domain mismatch" +msgstr "Non correspondance de domaine et de royaume Kerberos" + msgid "Trusted domain and administrator account use different realms" msgstr "" "Le domaine approuvé et le compte administrateur utilisent des domaines " @@ -10198,10 +10073,6 @@ msgstr "" "soit ne pas forcer le type via l'option --range-type." #, python-format -msgid "Re-established trust to domain \"%(value)s\"" -msgstr "Ré-approbation du domaine « %(value)s »" - -#, python-format msgid "Unable to resolve domain controller for '%s' domain. " msgstr "Impossible de résoudre le contrôleur de domaine du domaine « %s »." @@ -10331,6 +10202,108 @@ msgstr "" "système" msgid "" +"Determine whether Schema Compatibility plugin is configured to serve trusted " +"domain users and groups" +msgstr "" +"Déterminer si le greffon de compatibilité de schéma est configuré pour " +"servir les utilisateurs et groupes du domaine" + +msgid "Determine whether ipa-adtrust-install has been run with sidgen task" +msgstr "" +"Déterminer si la commande ipa-adtrust-install a été lancée avec la tâche " +"sidgen" + +msgid "sidgen_was_run" +msgstr "sidgen_was_run" + +msgid "" +"This command relies on the existence of the \"editors\" group, but this " +"group was not found." +msgstr "" +"Cette commande s'appuie sur l'existence effective du groupe « editors », " +"mais ce groupe est introuvable." + +msgid "trust domain" +msgstr "domaine d'approbation" + +msgid "trust domains" +msgstr "domaines d'approbation" + +msgid "Trusted domains" +msgstr "Domaines approuvés" + +msgid "Trusted domain" +msgstr "Domaine approuvé" + +msgid "Domain name" +msgstr "Nom de domaine" + +msgid "Trusted domain partner" +msgstr "Partenaire de domaine approuvé" + +msgid "Search domains of the trust" +msgstr "Recherches dans les domaines approuvés" + +msgid "Domain enabled" +msgstr "Domaine activé" + +msgid "Modify trustdomain of the trust" +msgstr "Modifier le domaine de la relation d'approbation" + +msgid "Allow access from the trusted domain" +msgstr "Autoriser l'accès depuis le domaine approuvé" + +msgid "Remove infromation about the domain associated with the trust." +msgstr "" +"Supprimer les informations du domaine associées à la relation d'approbation." + +#, python-format +msgid "Removed information about the trusted domain \"%(value)s\"" +msgstr "Informations sur le domaine approuvé « %(value)s » supprimées" + +msgid "" +"cannot delete root domain of the trust, use trust-del to delete the trust " +"itself" +msgstr "" +"impossible de supprimer le domaine racine de la relation d'approbation, " +"utiliser la commande trust-del pour supprimer la relation d'approbation" + +msgid "Refresh list of the domains associated with the trust" +msgstr "Rafraîchir la liste des domaines associés à la relation d'approbation" + +msgid "List of trust domains successfully refreshed" +msgstr "Liste des domaines approuvés rafraîchie avec succès" + +msgid "No new trust domains were found" +msgstr "Aucun nouveau domaine approuvé trouvé" + +msgid "Allow use of IPA resources by the domain of the trust" +msgstr "Autoriser l'utlisation de ressources IPA par le domain approuvé" + +#, python-format +msgid "Enabled trust domain \"%(value)s\"" +msgstr "Activation du domaine approuvé « %(value)s »" + +msgid "Root domain of the trust is always enabled for the existing trust" +msgstr "" +"Le domaine racine de la relation d'approbation est toujours activé pour la " +"relation existante" + +msgid "Disable use of IPA resources by the domain of the trust" +msgstr "Interdire l'utlisation de ressources IPA par le domain approuvé" + +#, python-format +msgid "Disabled trust domain \"%(value)s\"" +msgstr "Domaine approuvé « %(value)s » désactivé" + +msgid "" +"cannot disable root domain of the trust, use trust-del to delete the trust " +"itself" +msgstr "" +"impossible de désactiver le domaine racine de la relation d'approbation, " +"utiliser la commande trust-del pour supprimer la relation" + +msgid "" "\n" "Users\n" "\n" @@ -10424,9 +10397,6 @@ msgstr "" msgid "Kerberos keys available" msgstr "Clés Kerberos disponibles" -msgid "Server" -msgstr "Serveur" - msgid "Failed logins" msgstr "Connexions échouées" @@ -10442,12 +10412,6 @@ msgstr "Heure actuelle" msgid "must be TRUE or FALSE" msgstr "doit être TRUE ou FALSE" -msgid "user" -msgstr "utilisateur" - -msgid "users" -msgstr "utilisateurs" - msgid "User login" msgstr "Identifiant de connexion" @@ -10528,15 +10492,43 @@ msgstr "Unité organisationnelle" msgid "Job Title" msgstr "Titre de poste" -msgid "Manager" -msgstr "Responsable" - msgid "Car License" msgstr "Carte d'identité" msgid "Account disabled" msgstr "Compte désactivé" +msgid "User authentication types" +msgstr "Types d'authentification utilisateur" + +msgid "Types of supported user authentication" +msgstr "Types d'authentification utilisateur pris en charge" + +msgid "" +"User category (semantics placed on this attribute are for local " +"interpretation)" +msgstr "" +"Catégorie d'utilisateurs (les sémantiques associées à cet attribut vous sont " +"propres)" + +msgid "RADIUS proxy configuration" +msgstr "Configuration du mandataire RADIUS" + +msgid "RADIUS proxy username" +msgstr "Nom d'utilisateur du mandataire RADIUS" + +msgid "Department Number" +msgstr "Numéro de département" + +msgid "Employee Number" +msgstr "Matricule" + +msgid "Employee Type" +msgstr "Type d'employé" + +msgid "Preferred Language" +msgstr "Langue préférée" + #, python-format msgid "invalid e-mail format: %(email)s" msgstr "format d'e-mail invalide : %(email)s" @@ -10724,31 +10716,16 @@ msgstr "Le nom de fichier est vide" msgid "Permission denied: %(file)s" msgstr "Autorisation refusée : %(file)s" -msgid "empty DNS label" -msgstr "libellé DNS vide" - msgid "DNS label cannot be longer that 63 characters" msgstr "un libellé DNS ne peut excéder 63 caractères" #, python-format msgid "" -"only letters, numbers,%(underscore)s and - are allowed. DNS label may not " -"start or end with -" +"only letters, numbers, %(chars)s are allowed. DNS label may not start or end " +"with %(chars2)s" msgstr "" -"seuls des lettres, nombres %(underscore)s et - sont autorisés. Les noms DNS " -"ne peuvent commencer ou se terminer par -" - -msgid "" -"mail account may only include letters, numbers, -, _ and a dot. There may " -"not be consecutive -, _ and . characters. Its parts may not start or end " -"with - or _" -msgstr "" -"un compte de messagerie ne peut inclure que des lettres, des chiffres, -, _ " -"et un point. Il ne peut y avoir de caractères -, _ et . consécutifs. Il ne " -"peut démarrer ou finir par - ou _" - -msgid "cannot be longer that 255 characters" -msgstr "ne peut excéder 255 caractères." +"seuls des lettres, des nombres, des %(chars)s sont autorisés. Les noms DNS " +"ne peuvent commencer ou se terminer par %(chars2)s" msgid "too many '@' characters" msgstr "trop de caractères '@'" @@ -10759,6 +10736,9 @@ msgstr "domaine d'adresse manquant" msgid "missing mail account" msgstr "compte de messagerie manquant" +msgid "cannot be longer that 255 characters" +msgstr "ne peut excéder 255 caractères." + msgid "hostname contains empty label (consecutive dots)" msgstr "le nom d'hôte contient un libellé vide (plusieurs points consécutifs)" @@ -10771,6 +10751,9 @@ msgstr "clé publique SSH invalide" msgid "options are not allowed" msgstr "les options ne sont pas autorisées" +msgid "invalid hostmask" +msgstr "masque d'hôte invalide" + msgid "improperly formatted DER-encoded certificate" msgstr "formatage incorrect du certificat encodé DER" @@ -10935,7 +10918,7 @@ msgid "" "Insufficient 'write' privilege to the 'krbLastPwdChange' attribute of entry " "'%s'." msgstr "" -"Privilège en écriture insuffisant sur l'attribut « krbLastPwdChange »de " +"Privilège en écriture insuffisant sur l'attribut « krbLastPwdChange » de " "l'entrée « %s »." msgid "Request must be a dict" @@ -10992,14 +10975,6 @@ msgid "Out of memory \n" msgstr "Mémoire saturée\n" #, c-format -msgid "Out of Memory!\n" -msgstr "Mémoire saturée !\n" - -#, c-format -msgid "Failed to create control!\n" -msgstr "Échec à la création du contrôle !\n" - -#, c-format msgid "Unable to initialize ldap library!\n" msgstr "Impossible d'initialiser la bibliothèque LDAP !\n" @@ -11008,10 +10983,6 @@ msgid "Unable to set LDAP_OPT_X_SASL_NOCANON\n" msgstr "Impossible de positionner LDAP_OPT_X_SASL_NOCANON\n" #, c-format -msgid "Unable to set ldap options!\n" -msgstr "Impossible de définir les options LDAP !\n" - -#, c-format msgid "Simple bind failed\n" msgstr "Échec de la connexion simple\n" @@ -11024,6 +10995,14 @@ msgid "Missing reply control!\n" msgstr "Absence de contrôle dans la réponse !\n" #, c-format +msgid "Out of Memory!\n" +msgstr "Mémoire saturée !\n" + +#, c-format +msgid "Failed to create control!\n" +msgstr "Échec à la création du contrôle !\n" + +#, c-format msgid "ber_init() failed, Invalid control ?!\n" msgstr "Échec de ber_init(), contrôle invalide ?!\n" @@ -11043,6 +11022,10 @@ msgstr "Échec lors de la récupération du type de chiffrement %1$s (#%2$d)\n" msgid "Failed to retrieve any keys" msgstr "Échec lors de la récupération des clés" +#, c-format +msgid "Out of memory!\n" +msgstr "Mémoire saturée !\n" + msgid "New Principal Password" msgstr "Nouveau mot de passe du principal" @@ -11174,7 +11157,7 @@ msgstr "Inscription de cet hôte au domaine IPA interdite.\n" #, c-format msgid "No write permissions on keytab file '%s'\n" -msgstr "Pas de permissions en écriture sur le fichier keytab '%s'\n" +msgstr "Pas de permissions en écriture sur le fichier keytab « %s »\n" #, c-format msgid "access() on %1$s failed: errno = %2$d\n" @@ -11206,7 +11189,7 @@ msgstr "La recherche de %1$s sur rootdse a échoué avec l'erreur %2$d\n" #, c-format msgid "No values for %s" -msgstr "Pas de valeurs pour %s" +msgstr "Aucune valeur pour %s" #, c-format msgid "Search for IPA namingContext failed with error %d\n" @@ -11217,10 +11200,6 @@ msgid "IPA namingContext not found\n" msgstr "namingContext IPA introuvable\n" #, c-format -msgid "Out of memory!\n" -msgstr "Mémoire saturée !\n" - -#, c-format msgid "Search for ipaCertificateSubjectBase failed with error %d" msgstr "Échec de la recherche de ipaCertificateSubjectBase avec une erreur %d" @@ -11448,9 +11427,6 @@ msgstr "La fermeture du tableau des clés a échoué\n" msgid "krb5_kt_close %1$d: %2$s\n" msgstr "krb5_kt_close %1$d : %2$s\n" -msgid "Out of memory!?\n" -msgstr "Mémoire saturée !?\n" - msgid "Out of memory\n" msgstr "Mémoire saturée\n" @@ -11460,6 +11436,9 @@ msgstr "Avertissement, type de chiffrement inconnu.\n" msgid "Warning unrecognized salt type.\n" msgstr "Avertissement, type de sel inconnu.\n" +msgid "Out of memory!?\n" +msgstr "Mémoire saturée !?\n" + msgid "Enctype comparison failed!\n" msgstr "Échec de comparaison enctype !\n" @@ -11471,3 +11450,9 @@ msgstr "Échec à la création de la clé !\n" msgid "Bad or unsupported salt type.\n" msgstr "Type de sel non-conforme ou non pris en compte.\n" + +#~ msgid "Display length" +#~ msgstr "Longueur de l'affichage" + +#~ msgid "Unable to set ldap options!\n" +#~ msgstr "Impossible de définir les options LDAP !\n" diff --git a/install/po/id.po b/install/po/id.po index bf5fa392b..fee957536 100644 --- a/install/po/id.po +++ b/install/po/id.po @@ -10,10 +10,11 @@ msgstr "" "Project-Id-Version: FreeIPA\n" "Report-Msgid-Bugs-To: https://hosted.fedoraproject.org/projects/freeipa/" "newticket\n" -"POT-Creation-Date: 2013-10-09 14:39+0200\n" -"PO-Revision-Date: 2013-08-01 14:06+0000\n" +"POT-Creation-Date: 2014-06-27 16:29+0200\n" +"PO-Revision-Date: 2014-06-25 19:44+0000\n" "Last-Translator: Petr Viktorin <encukou@gmail.com>\n" -"Language-Team: Indonesian <trans-id@lists.fedoraproject.org>\n" +"Language-Team: Indonesian (http://www.transifex.com/projects/p/freeipa/" +"language/id/)\n" "Language: id\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -188,9 +189,6 @@ msgid "%(count)d ACI matched" msgid_plural "%(count)d ACIs matched" msgstr[0] "%(count)d ACI sesuai" -msgid "Failure decoding Certificate Signing Request" -msgstr "Gagal mengurai Permintaan Penandatanganan Sertifikat" - #, python-format msgid "Failure decoding Certificate Signing Request: %s" msgstr "Gagal mengurai Permintaan Penandatanganan Sertifikat: %s" diff --git a/install/po/ipa.pot b/install/po/ipa.pot index 4ddd97f13..a6595ca03 100644 --- a/install/po/ipa.pot +++ b/install/po/ipa.pot @@ -9,7 +9,7 @@ msgstr "" "Project-Id-Version: ipa\n" "Report-Msgid-Bugs-To: https://hosted.fedoraproject.org/projects/freeipa/" "newticket\n" -"POT-Creation-Date: 2013-09-12 15:37+0200\n" +"POT-Creation-Date: 2014-06-27 16:29+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -19,49 +19,58 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n" -#: ipalib/cli.py:593 +#: ipalib/cli.py:599 #, python-format msgid "Enter %(label)s again to verify: " msgstr "" -#: ipalib/cli.py:601 ipa-client/ipa-getkeytab.c:420 +#: ipalib/cli.py:607 ipa-client/ipa-getkeytab.c:739 #, c-format msgid "Passwords do not match!" msgstr "" -#: ipalib/cli.py:624 +#: ipalib/cli.py:630 msgid "No matching entries found" msgstr "" -#: ipalib/cli.py:668 +#: ipalib/cli.py:674 msgid "Topic or Command" msgstr "" -#: ipalib/cli.py:669 +#: ipalib/cli.py:675 msgid "The topic or command name." msgstr "" -#: ipalib/cli.py:833 +#: ipalib/cli.py:844 msgid "Topic commands:" msgstr "" -#: ipalib/cli.py:838 +#: ipalib/cli.py:849 msgid "To get command help, use:" msgstr "" -#: ipalib/cli.py:839 +#: ipalib/cli.py:850 msgid " ipa <command> --help" msgstr "" -#: ipalib/cli.py:848 +#: ipalib/cli.py:859 msgid "Command name" msgstr "" -#: ipalib/cli.py:998 +#: ipalib/cli.py:1027 msgid "Positional arguments" msgstr "" -#: ipalib/cli.py:1254 +#: ipalib/cli.py:1175 +#, python-format +msgid "Same as --%s" +msgstr "" + +#: ipalib/cli.py:1178 +msgid "Deprecated options" +msgstr "" + +#: ipalib/cli.py:1300 msgid "No file to read" msgstr "" @@ -69,375 +78,385 @@ msgstr "" msgid "A string searched in all relevant object attributes" msgstr "" -#: ipalib/errors.py:269 +#: ipalib/errors.py:270 #, python-format msgid "%(cver)s client incompatible with %(sver)s server at '%(server)s'" msgstr "" -#: ipalib/errors.py:287 +#: ipalib/errors.py:288 #, python-format msgid "unknown error %(code)d from %(server)s: %(error)s" msgstr "" -#: ipalib/errors.py:303 +#: ipalib/errors.py:304 msgid "an internal error has occurred" msgstr "" -#: ipalib/errors.py:325 +#: ipalib/errors.py:326 #, python-format msgid "an internal error has occurred on server at '%(server)s'" msgstr "" -#: ipalib/errors.py:341 +#: ipalib/errors.py:342 #, python-format msgid "unknown command '%(name)s'" msgstr "" -#: ipalib/errors.py:358 ipalib/errors.py:383 +#: ipalib/errors.py:359 ipalib/errors.py:384 #, python-format msgid "error on server '%(server)s': %(error)s" msgstr "" -#: ipalib/errors.py:374 +#: ipalib/errors.py:375 #, python-format msgid "cannot connect to '%(uri)s': %(error)s" msgstr "" -#: ipalib/errors.py:392 +#: ipalib/errors.py:393 #, python-format msgid "Invalid JSON-RPC request: %(error)s" msgstr "" -#: ipalib/errors.py:408 +#: ipalib/errors.py:409 #, python-format msgid "error marshalling data for XML-RPC transport: %(error)s" msgstr "" -#: ipalib/errors.py:424 +#: ipalib/errors.py:425 #, python-format msgid "Missing or invalid HTTP Referer, %(referer)s" msgstr "" -#: ipalib/errors.py:451 +#: ipalib/errors.py:452 #, python-format msgid "Kerberos error: %(major)s/%(minor)s" msgstr "" -#: ipalib/errors.py:468 +#: ipalib/errors.py:469 msgid "did not receive Kerberos credentials" msgstr "" -#: ipalib/errors.py:484 +#: ipalib/errors.py:485 #, python-format msgid "Service '%(service)s' not found in Kerberos database" msgstr "" -#: ipalib/errors.py:500 +#: ipalib/errors.py:501 msgid "No credentials cache found" msgstr "" -#: ipalib/errors.py:516 +#: ipalib/errors.py:517 msgid "Ticket expired" msgstr "" -#: ipalib/errors.py:532 +#: ipalib/errors.py:533 msgid "Credentials cache permissions incorrect" msgstr "" -#: ipalib/errors.py:548 +#: ipalib/errors.py:549 msgid "Bad format in credentials cache" msgstr "" -#: ipalib/errors.py:564 +#: ipalib/errors.py:565 msgid "Cannot resolve KDC for requested realm" msgstr "" -#: ipalib/errors.py:576 +#: ipalib/errors.py:577 msgid "Session error" msgstr "" -#: ipalib/errors.py:584 +#: ipalib/errors.py:585 #, python-format msgid "Principal %(principal)s cannot be authenticated: %(message)s" msgstr "" -#: ipalib/errors.py:602 +#: ipalib/errors.py:603 #, python-format msgid "Insufficient access: %(info)s" msgstr "" -#: ipalib/errors.py:646 +#: ipalib/errors.py:647 #, python-format msgid "command '%(name)s' takes no arguments" msgstr "" -#: ipalib/errors.py:666 +#: ipalib/errors.py:667 #, python-format msgid "command '%(name)s' takes at most %(count)d argument" msgid_plural "command '%(name)s' takes at most %(count)d arguments" msgstr[0] "" msgstr[1] "" -#: ipalib/errors.py:696 +#: ipalib/errors.py:697 #, python-format msgid "overlapping arguments and options: %(names)s" msgstr "" -#: ipalib/errors.py:712 +#: ipalib/errors.py:713 #, python-format msgid "'%(name)s' is required" msgstr "" -#: ipalib/errors.py:728 ipalib/errors.py:744 +#: ipalib/errors.py:729 ipalib/errors.py:745 #, python-format msgid "invalid '%(name)s': %(error)s" msgstr "" -#: ipalib/errors.py:760 +#: ipalib/errors.py:761 #, python-format msgid "api has no such namespace: '%(name)s'" msgstr "" -#: ipalib/errors.py:769 +#: ipalib/errors.py:770 msgid "Passwords do not match" msgstr "" -#: ipalib/errors.py:778 +#: ipalib/errors.py:779 msgid "Command not implemented" msgstr "" -#: ipalib/errors.py:787 +#: ipalib/errors.py:788 msgid "Client is not configured. Run ipa-client-install." msgstr "" -#: ipalib/errors.py:796 +#: ipalib/errors.py:797 #, python-format msgid "Could not get %(name)s interactively" msgstr "" -#: ipalib/errors.py:811 +#: ipalib/errors.py:812 #, python-format msgid "Command '%(name)s' has been deprecated" msgstr "" -#: ipalib/errors.py:839 ipalib/errors.py:1079 ipalib/errors.py:1173 -#: ipalib/errors.py:1570 ipalib/errors.py:1587 +#: ipalib/errors.py:840 ipalib/errors.py:1080 ipalib/errors.py:1174 +#: ipalib/errors.py:1605 ipalib/errors.py:1622 #, python-format msgid "%(reason)s" msgstr "" -#: ipalib/errors.py:855 +#: ipalib/errors.py:856 msgid "This entry already exists" msgstr "" -#: ipalib/errors.py:871 +#: ipalib/errors.py:872 msgid "You must enroll a host in order to create a host service" msgstr "" -#: ipalib/errors.py:887 +#: ipalib/errors.py:888 #, python-format msgid "" "Service principal is not of the form: service/fully-qualified host name: " "%(reason)s" msgstr "" -#: ipalib/errors.py:903 +#: ipalib/errors.py:904 msgid "" "The realm for the principal does not match the realm for this IPA server" msgstr "" -#: ipalib/errors.py:919 +#: ipalib/errors.py:920 msgid "This command requires root access" msgstr "" -#: ipalib/errors.py:935 +#: ipalib/errors.py:936 msgid "This is already a posix group" msgstr "" -#: ipalib/errors.py:951 +#: ipalib/errors.py:952 #, python-format msgid "Principal is not of the form user@REALM: '%(principal)s'" msgstr "" -#: ipalib/errors.py:967 +#: ipalib/errors.py:968 msgid "This entry is already enabled" msgstr "" -#: ipalib/errors.py:983 +#: ipalib/errors.py:984 msgid "This entry is already disabled" msgstr "" -#: ipalib/errors.py:999 +#: ipalib/errors.py:1000 msgid "This entry cannot be enabled or disabled" msgstr "" -#: ipalib/errors.py:1015 +#: ipalib/errors.py:1016 msgid "This entry is not a member" msgstr "" -#: ipalib/errors.py:1031 +#: ipalib/errors.py:1032 msgid "A group may not be a member of itself" msgstr "" -#: ipalib/errors.py:1047 +#: ipalib/errors.py:1048 msgid "This entry is already a member" msgstr "" -#: ipalib/errors.py:1063 +#: ipalib/errors.py:1064 #, python-format msgid "Base64 decoding failed: %(reason)s" msgstr "" -#: ipalib/errors.py:1095 +#: ipalib/errors.py:1096 msgid "A group may not be added as a member of itself" msgstr "" -#: ipalib/errors.py:1111 +#: ipalib/errors.py:1112 msgid "The default users group cannot be removed" msgstr "" -#: ipalib/errors.py:1127 +#: ipalib/errors.py:1128 msgid "Host does not have corresponding DNS A record" msgstr "" -#: ipalib/errors.py:1142 +#: ipalib/errors.py:1143 msgid "Deleting a managed group is not allowed. It must be detached first." msgstr "" -#: ipalib/errors.py:1157 +#: ipalib/errors.py:1158 msgid "A managed group cannot have a password policy." msgstr "" -#: ipalib/errors.py:1189 +#: ipalib/errors.py:1190 #, python-format msgid "'%(entry)s' doesn't have a certificate." msgstr "" -#: ipalib/errors.py:1205 +#: ipalib/errors.py:1206 #, python-format msgid "Unable to create private group. A group '%(group)s' already exists." msgstr "" -#: ipalib/errors.py:1221 +#: ipalib/errors.py:1222 #, python-format msgid "" "A problem was encountered when verifying that all members were %(verb)s: " "%(exc)s" msgstr "" -#: ipalib/errors.py:1239 +#: ipalib/errors.py:1240 #, python-format msgid "%(attr)s does not contain '%(value)s'" msgstr "" -#: ipalib/errors.py:1256 +#: ipalib/errors.py:1257 #, python-format msgid "" "The search criteria was not specific enough. Expected 1 and found %(found)d." msgstr "" -#: ipalib/errors.py:1273 +#: ipalib/errors.py:1274 msgid "This group already allows external members" msgstr "" -#: ipalib/errors.py:1290 +#: ipalib/errors.py:1291 msgid "This group cannot be posix because it is external" msgstr "" -#: ipalib/errors.py:1307 +#: ipalib/errors.py:1308 msgid "This is already a posix group and cannot be converted to external one" msgstr "" -#: ipalib/errors.py:1330 +#: ipalib/errors.py:1331 #, python-format msgid "no command nor help topic '%(topic)s'" msgstr "" -#: ipalib/errors.py:1354 +#: ipalib/errors.py:1355 msgid "change collided with another change" msgstr "" -#: ipalib/errors.py:1370 +#: ipalib/errors.py:1371 msgid "no modifications to be performed" msgstr "" -#: ipalib/errors.py:1386 +#: ipalib/errors.py:1387 #, python-format msgid "%(desc)s: %(info)s" msgstr "" -#: ipalib/errors.py:1402 +#: ipalib/errors.py:1403 msgid "limits exceeded for this query" msgstr "" -#: ipalib/errors.py:1417 +#: ipalib/errors.py:1418 #, python-format msgid "%(info)s" msgstr "" -#: ipalib/errors.py:1432 +#: ipalib/errors.py:1433 msgid "modifying primary key is not allowed" msgstr "" -#: ipalib/errors.py:1448 +#: ipalib/errors.py:1449 #, python-format msgid "%(attr)s: Only one value allowed." msgstr "" -#: ipalib/errors.py:1464 +#: ipalib/errors.py:1465 #, python-format msgid "%(attr)s: Invalid syntax." msgstr "" -#: ipalib/errors.py:1480 +#: ipalib/errors.py:1481 #, python-format msgid "Bad search filter %(info)s" msgstr "" -#: ipalib/errors.py:1496 +#: ipalib/errors.py:1497 msgid "Not allowed on non-leaf entry" msgstr "" -#: ipalib/errors.py:1512 +#: ipalib/errors.py:1513 msgid "LDAP timeout" msgstr "" -#: ipalib/errors.py:1537 +#: ipalib/errors.py:1531 +#, python-format +msgid "DNS check failed: Expected {%(expected)s} got {%(got)s}" +msgstr "" + +#: ipalib/errors.py:1547 +#, python-format +msgid "%(task)s LDAP task timeout, Task DN: '%(task_dn)s'" +msgstr "" + +#: ipalib/errors.py:1572 #, python-format msgid "Certificate operation cannot be completed: %(error)s" msgstr "" -#: ipalib/errors.py:1553 +#: ipalib/errors.py:1588 #, python-format msgid "Certificate format error: %(error)s" msgstr "" -#: ipalib/errors.py:1604 +#: ipalib/errors.py:1639 msgid "Already registered" msgstr "" -#: ipalib/errors.py:1620 +#: ipalib/errors.py:1655 msgid "Not registered yet" msgstr "" -#: ipalib/errors.py:1636 +#: ipalib/errors.py:1671 #, python-format msgid "%(key)s cannot be deleted because %(label)s %(dependent)s requires it" msgstr "" -#: ipalib/errors.py:1652 +#: ipalib/errors.py:1687 #, python-format msgid "" "%(key)s cannot be deleted or disabled because it is the last member of " "%(label)s %(container)s" msgstr "" -#: ipalib/errors.py:1668 +#: ipalib/errors.py:1703 #, python-format msgid "%(label)s %(key)s cannot be deleted/modified: %(reason)s" msgstr "" -#: ipalib/errors.py:1685 +#: ipalib/errors.py:1720 #, python-format msgid "%(name)s certificate is not valid" msgstr "" @@ -446,25 +465,25 @@ msgstr "" msgid "Results are truncated, try a more specific search" msgstr "" -#: ipalib/frontend.py:531 +#: ipalib/frontend.py:535 #, python-format msgid "Unknown option: %(option)s" msgstr "" -#: ipalib/frontend.py:904 +#: ipalib/frontend.py:898 msgid "" "Retrieve and print all attributes from the server. Affects command output." msgstr "" -#: ipalib/frontend.py:910 +#: ipalib/frontend.py:904 msgid "Print entries as stored on the server. Only affects output format." msgstr "" -#: ipalib/frontend.py:916 ipalib/plugins/batch.py:69 +#: ipalib/frontend.py:910 ipalib/plugins/batch.py:73 msgid "Client version. Used to determine if server will accept request." msgstr "" -#: ipalib/frontend.py:1089 +#: ipalib/frontend.py:1087 msgid "Forward to server instead of running locally" msgstr "" @@ -479,402 +498,512 @@ msgid "" "Assuming server's API version, %(server_version)s" msgstr "" -#: ipalib/output.py:92 +#: ipalib/output.py:93 msgid "A dictionary representing an LDAP entry" msgstr "" -#: ipalib/output.py:100 +#: ipalib/output.py:101 msgid "A list of LDAP entries" msgstr "" -#: ipalib/output.py:111 +#: ipalib/output.py:153 msgid "All commands should at least have a result" msgstr "" -#: ipalib/output.py:114 +#: ipalib/output.py:156 msgid "User-friendly description of action performed" msgstr "" -#: ipalib/output.py:118 +#: ipalib/output.py:160 msgid "The primary_key value of the entry, e.g. 'jdoe' for a user" msgstr "" -#: ipalib/output.py:133 +#: ipalib/output.py:175 msgid "Number of entries returned" msgstr "" -#: ipalib/output.py:134 +#: ipalib/output.py:176 msgid "True if not all results were returned" msgstr "" -#: ipalib/output.py:139 +#: ipalib/output.py:181 ipalib/output.py:187 msgid "List of deletions that failed" msgstr "" -#: ipalib/output.py:145 +#: ipalib/output.py:193 ipalib/plugins/dns.py:266 msgid "True means the operation was successful" msgstr "" -#: ipalib/parameters.py:370 +#: ipalib/parameters.py:382 msgid "incorrect type" msgstr "" -#: ipalib/parameters.py:373 +#: ipalib/parameters.py:385 msgid "Only one value is allowed" msgstr "" -#: ipalib/parameters.py:932 +#: ipalib/parameters.py:953 msgid "must be True or False" msgstr "" -#: ipalib/parameters.py:1033 +#: ipalib/parameters.py:1055 msgid "must be an integer" msgstr "" -#: ipalib/parameters.py:1084 +#: ipalib/parameters.py:1103 #, python-format msgid "must be at least %(minvalue)d" msgstr "" -#: ipalib/parameters.py:1094 +#: ipalib/parameters.py:1113 #, python-format msgid "can be at most %(maxvalue)d" msgstr "" -#: ipalib/parameters.py:1135 +#: ipalib/parameters.py:1129 msgid "must be a decimal number" msgstr "" -#: ipalib/parameters.py:1181 +#: ipalib/parameters.py:1175 #, python-format msgid "must be at least %(minvalue)s" msgstr "" -#: ipalib/parameters.py:1191 +#: ipalib/parameters.py:1185 #, python-format msgid "can be at most %(maxvalue)s" msgstr "" -#: ipalib/parameters.py:1199 +#: ipalib/parameters.py:1193 #, python-format msgid "" "number class '%(cls)s' is not included in a list of allowed number classes: " "%(allowed)s" msgstr "" -#: ipalib/parameters.py:1323 +#: ipalib/parameters.py:1317 #, python-format msgid "must match pattern \"%(pattern)s\"" msgstr "" -#: ipalib/parameters.py:1341 +#: ipalib/parameters.py:1335 msgid "must be binary data" msgstr "" -#: ipalib/parameters.py:1357 +#: ipalib/parameters.py:1351 #, python-format msgid "must be at least %(minlength)d bytes" msgstr "" -#: ipalib/parameters.py:1367 +#: ipalib/parameters.py:1361 #, python-format msgid "can be at most %(maxlength)d bytes" msgstr "" -#: ipalib/parameters.py:1377 +#: ipalib/parameters.py:1371 #, python-format msgid "must be exactly %(length)d bytes" msgstr "" -#: ipalib/parameters.py:1407 +#: ipalib/parameters.py:1401 msgid "must be Unicode text" msgstr "" -#: ipalib/parameters.py:1440 +#: ipalib/parameters.py:1434 msgid "Leading and trailing spaces are not allowed" msgstr "" -#: ipalib/parameters.py:1448 +#: ipalib/parameters.py:1442 #, python-format msgid "must be at least %(minlength)d characters" msgstr "" -#: ipalib/parameters.py:1458 +#: ipalib/parameters.py:1452 #, python-format msgid "can be at most %(maxlength)d characters" msgstr "" -#: ipalib/parameters.py:1468 +#: ipalib/parameters.py:1462 #, python-format msgid "must be exactly %(length)d characters" msgstr "" -#: ipalib/parameters.py:1487 +#: ipalib/parameters.py:1483 #, python-format msgid "The character %(char)r is not allowed." msgstr "" -#: ipalib/parameters.py:1538 +#: ipalib/parameters.py:1534 #, python-format msgid "must be '%(value)s'" msgstr "" -#: ipalib/parameters.py:1541 +#: ipalib/parameters.py:1537 #, python-format msgid "must be one of %(values)s" msgstr "" -#: ipalib/parameters.py:1780 +#: ipalib/parameters.py:1647 +msgid "must be datetime value" +msgstr "" + +#: ipalib/parameters.py:1661 +msgid "does not match any of accepted formats: " +msgstr "" + +#: ipalib/parameters.py:1846 msgid "incomplete time value" msgstr "" -#: ipalib/parameters.py:1817 +#: ipalib/parameters.py:1883 msgid "this option is deprecated" msgstr "" -#: ipalib/plugins/aci.py:154 +#: ipalib/parameters.py:1936 +msgid "must be DNS name" +msgstr "" + +#: ipalib/parameters.py:1955 +msgid "invalid escape code in domain name" +msgstr "" + +#: ipalib/parameters.py:1957 ipalib/util.py:240 +msgid "empty DNS label" +msgstr "" + +#: ipalib/parameters.py:1959 +msgid "domain name cannot be longer than 255 characters" +msgstr "" + +#: ipalib/parameters.py:1961 +msgid "DNS label cannot be longer than 63 characters" +msgstr "" + +#: ipalib/parameters.py:1963 +msgid "invalid domain name" +msgstr "" + +#: ipalib/parameters.py:1970 +#, python-format +msgid "" +"domain name '%(domain)s' and normalized domain name '%(normalized)s' do not " +"match. Please use only normalized domains" +msgstr "" + +#: ipalib/parameters.py:1986 +msgid "must be absolute" +msgstr "" + +#: ipalib/parameters.py:1990 +msgid "must be relative" +msgstr "" + +#: ipalib/plugins/aci.py:157 msgid "A list of ACI values" msgstr "" -#: ipalib/plugins/aci.py:218 +#: ipalib/plugins/aci.py:221 msgid "type, filter, subtree and targetgroup are mutually exclusive" msgstr "" -#: ipalib/plugins/aci.py:221 +#: ipalib/plugins/aci.py:224 msgid "ACI prefix is required" msgstr "" -#: ipalib/plugins/aci.py:224 +#: ipalib/plugins/aci.py:227 msgid "" "at least one of: type, filter, subtree, targetgroup, attrs or memberof are " "required" msgstr "" -#: ipalib/plugins/aci.py:227 +#: ipalib/plugins/aci.py:230 msgid "filter and memberof are mutually exclusive" msgstr "" -#: ipalib/plugins/aci.py:233 +#: ipalib/plugins/aci.py:236 msgid "group, permission and self are mutually exclusive" msgstr "" -#: ipalib/plugins/aci.py:235 +#: ipalib/plugins/aci.py:238 msgid "One of group, permission or self is required" msgstr "" -#: ipalib/plugins/aci.py:258 +#: ipalib/plugins/aci.py:261 #, python-format msgid "Group '%s' does not exist" msgstr "" -#: ipalib/plugins/aci.py:284 +#: ipalib/plugins/aci.py:287 msgid "empty filter" msgstr "" -#: ipalib/plugins/aci.py:305 +#: ipalib/plugins/aci.py:308 #, python-format msgid "Syntax Error: %(error)s" msgstr "" -#: ipalib/plugins/aci.py:351 +#: ipalib/plugins/aci.py:354 #, python-format msgid "invalid DN (%s)" msgstr "" -#: ipalib/plugins/aci.py:398 +#: ipalib/plugins/aci.py:401 #, python-format msgid "ACI with name \"%s\" not found" msgstr "" -#: ipalib/plugins/aci.py:416 +#: ipalib/plugins/aci.py:419 msgid "ACI prefix" msgstr "" -#: ipalib/plugins/aci.py:417 +#: ipalib/plugins/aci.py:420 msgid "" "Prefix used to distinguish ACI types (permission, delegation, selfservice, " "none)" msgstr "" -#: ipalib/plugins/aci.py:428 +#: ipalib/plugins/aci.py:433 msgid "ACIs" msgstr "" -#: ipalib/plugins/aci.py:433 +#: ipalib/plugins/aci.py:438 msgid "ACI name" msgstr "" -#: ipalib/plugins/aci.py:439 ipalib/plugins/permission.py:123 +#: ipalib/plugins/aci.py:444 ipalib/plugins/permission.py:219 msgid "Permission" msgstr "" -#: ipalib/plugins/aci.py:440 +#: ipalib/plugins/aci.py:445 msgid "Permission ACI grants access to" msgstr "" -#: ipalib/plugins/aci.py:445 ipalib/plugins/delegation.py:101 +#: ipalib/plugins/aci.py:450 ipalib/plugins/delegation.py:105 msgid "User group" msgstr "" -#: ipalib/plugins/aci.py:446 ipalib/plugins/delegation.py:102 +#: ipalib/plugins/aci.py:451 ipalib/plugins/delegation.py:106 msgid "User group ACI grants access to" msgstr "" -#: ipalib/plugins/aci.py:451 ipalib/plugins/baseldap.py:65 -#: ipalib/plugins/delegation.py:83 ipalib/plugins/permission.py:122 -#: ipalib/plugins/permission.py:135 ipalib/plugins/selfservice.py:87 +#: ipalib/plugins/aci.py:456 ipalib/plugins/baseldap.py:67 +#: ipalib/plugins/delegation.py:87 ipalib/plugins/permission.py:218 +#: ipalib/plugins/selfservice.py:91 msgid "Permissions" msgstr "" -#: ipalib/plugins/aci.py:452 +#: ipalib/plugins/aci.py:457 msgid "Permissions to grant(read, write, add, delete, all)" msgstr "" -#: ipalib/plugins/aci.py:460 ipalib/plugins/permission.py:143 +#: ipalib/plugins/aci.py:465 msgid "Attributes to which the permission applies" msgstr "" -#: ipalib/plugins/aci.py:461 ipalib/plugins/delegation.py:89 -#: ipalib/plugins/permission.py:142 ipalib/plugins/selfservice.py:93 +#: ipalib/plugins/aci.py:466 ipalib/plugins/delegation.py:93 +#: ipalib/plugins/selfservice.py:97 msgid "Attributes" msgstr "" -#: ipalib/plugins/aci.py:467 ipalib/plugins/permission.py:150 +#: ipalib/plugins/aci.py:472 ipalib/plugins/otptoken.py:141 +#: ipalib/plugins/permission.py:315 msgid "Type" msgstr "" -#: ipalib/plugins/aci.py:468 +#: ipalib/plugins/aci.py:473 msgid "type of IPA object (user, group, host, hostgroup, service, netgroup)" msgstr "" -#: ipalib/plugins/aci.py:474 +#: ipalib/plugins/aci.py:479 msgid "Member of" msgstr "" -#: ipalib/plugins/aci.py:475 +#: ipalib/plugins/aci.py:480 msgid "Member of a group" msgstr "" -#: ipalib/plugins/aci.py:480 ipalib/plugins/permission.py:163 +#: ipalib/plugins/aci.py:485 ipalib/plugins/internal.py:206 msgid "Filter" msgstr "" -#: ipalib/plugins/aci.py:481 ipalib/plugins/permission.py:164 +#: ipalib/plugins/aci.py:486 msgid "Legal LDAP filter (e.g. ou=Engineering)" msgstr "" -#: ipalib/plugins/aci.py:486 ipalib/plugins/permission.py:169 +#: ipalib/plugins/aci.py:491 ipalib/plugins/permission.py:277 msgid "Subtree" msgstr "" -#: ipalib/plugins/aci.py:487 +#: ipalib/plugins/aci.py:492 msgid "Subtree to apply ACI to" msgstr "" -#: ipalib/plugins/aci.py:492 ipalib/plugins/permission.py:175 +#: ipalib/plugins/aci.py:497 ipalib/plugins/permission.py:309 msgid "Target group" msgstr "" -#: ipalib/plugins/aci.py:493 +#: ipalib/plugins/aci.py:498 msgid "Group to apply ACI to" msgstr "" -#: ipalib/plugins/aci.py:498 +#: ipalib/plugins/aci.py:503 msgid "Target your own entry (self)" msgstr "" -#: ipalib/plugins/aci.py:499 +#: ipalib/plugins/aci.py:504 msgid "Apply ACI to your own entry (self)" msgstr "" -#: ipalib/plugins/aci.py:511 +#: ipalib/plugins/aci.py:516 #, python-format msgid "Created ACI \"%(value)s\"" msgstr "" -#: ipalib/plugins/aci.py:516 +#: ipalib/plugins/aci.py:521 msgid "Test the ACI syntax but don't write anything" msgstr "" -#: ipalib/plugins/aci.py:567 +#: ipalib/plugins/aci.py:571 #, python-format msgid "Deleted ACI \"%(value)s\"" msgstr "" -#: ipalib/plugins/aci.py:610 ipalib/plugins/aci.py:886 -#: ipalib/plugins/aci.py:927 ipalib/plugins/delegation.py:59 -#: ipalib/plugins/permission.py:88 ipalib/plugins/selfservice.py:60 +#: ipalib/plugins/aci.py:613 ipalib/plugins/aci.py:888 +#: ipalib/plugins/aci.py:934 ipalib/plugins/delegation.py:62 +#: ipalib/plugins/permission.py:112 ipalib/plugins/selfservice.py:63 msgid "ACI" msgstr "" -#: ipalib/plugins/aci.py:618 +#: ipalib/plugins/aci.py:621 #, python-format msgid "Modified ACI \"%(value)s\"" msgstr "" -#: ipalib/plugins/aci.py:693 +#: ipalib/plugins/aci.py:695 #, python-format msgid "%(count)d ACI matched" msgid_plural "%(count)d ACIs matched" msgstr[0] "" msgstr[1] "" -#: ipalib/plugins/aci.py:934 +#: ipalib/plugins/aci.py:895 +msgid "Location of the ACI" +msgstr "" + +#: ipalib/plugins/aci.py:941 msgid "New ACI name" msgstr "" -#: ipalib/plugins/aci.py:938 +#: ipalib/plugins/aci.py:945 #, python-format msgid "Renamed ACI to \"%(value)s\"" msgstr "" -#: ipalib/plugins/automember.py:28 +#: ipalib/plugins/automember.py:30 msgid "" "\n" "Auto Membership Rule.\n" +msgstr "" + +#: ipalib/plugins/automember.py:32 +msgid "" "\n" "Bring clarity to the membership of hosts and users by configuring inclusive\n" "or exclusive regex patterns, you can automatically assign a new entries " "into\n" "a group or hostgroup based upon attribute information.\n" +msgstr "" + +#: ipalib/plugins/automember.py:36 +msgid "" "\n" "A rule is directly associated with a group by name, so you cannot create\n" "a rule without an accompanying group or hostgroup.\n" +msgstr "" + +#: ipalib/plugins/automember.py:39 +msgid "" "\n" "A condition is a regular expression used by 389-ds to match a new incoming\n" "entry with an automember rule. If it matches an inclusive rule then the\n" "entry is added to the appropriate group or hostgroup.\n" +msgstr "" + +#: ipalib/plugins/automember.py:43 +msgid "" "\n" "A default group or hostgroup could be specified for entries that do not\n" "match any rule. In case of user entries this group will be a fallback group\n" "because all users are by default members of group specified in IPA config.\n" +msgstr "" + +#: ipalib/plugins/automember.py:47 +msgid "" "\n" +"The automember-rebuild command can be used to retroactively run automember " +"rules\n" +"against existing entries, thus rebuilding their membership.\n" +msgstr "" + +#: ipalib/plugins/automember.py:50 ipalib/plugins/host.py:79 +#: ipalib/plugins/otptoken.py:46 ipalib/plugins/otptoken_yubikey.py:37 +#: ipalib/plugins/permission.py:90 ipalib/plugins/radiusproxy.py:35 +#: ipalib/plugins/sudorule.py:66 +msgid "" "\n" "EXAMPLES:\n" +msgstr "" + +#: ipalib/plugins/automember.py:52 +msgid "" "\n" " Add the initial group or hostgroup:\n" " ipa hostgroup-add --desc=\"Web Servers\" webservers\n" " ipa group-add --desc=\"Developers\" devel\n" +msgstr "" + +#: ipalib/plugins/automember.py:56 +msgid "" "\n" " Add the initial rule:\n" " ipa automember-add --type=hostgroup webservers\n" " ipa automember-add --type=group devel\n" +msgstr "" + +#: ipalib/plugins/automember.py:60 +msgid "" "\n" " Add a condition to the rule:\n" " ipa automember-add-condition --key=fqdn --type=hostgroup --inclusive-" "regex=^web[1-9]+\\.example\\.com webservers\n" " ipa automember-add-condition --key=manager --type=group --inclusive-" "regex=^uid=mscott devel\n" +msgstr "" + +#: ipalib/plugins/automember.py:64 +msgid "" "\n" " Add an exclusive condition to the rule to prevent auto assignment:\n" " ipa automember-add-condition --key=fqdn --type=hostgroup --exclusive-" "regex=^web5\\.example\\.com webservers\n" +msgstr "" + +#: ipalib/plugins/automember.py:67 +msgid "" "\n" " Add a host:\n" " ipa host-add web1.example.com\n" +msgstr "" + +#: ipalib/plugins/automember.py:70 +msgid "" "\n" " Add a user:\n" " ipa user-add --first=Tim --last=User --password tuser1 --manager=mscott\n" +msgstr "" + +#: ipalib/plugins/automember.py:73 +msgid "" "\n" " Verify automembership:\n" " ipa hostgroup-show webservers\n" @@ -887,152 +1016,214 @@ msgid "" " Description: Developers\n" " GID: 1004200000\n" " Member users: tuser\n" +msgstr "" + +#: ipalib/plugins/automember.py:85 +msgid "" "\n" " Remove a condition from the rule:\n" " ipa automember-remove-condition --key=fqdn --type=hostgroup --inclusive-" "regex=^web[1-9]+\\.example\\.com webservers\n" +msgstr "" + +#: ipalib/plugins/automember.py:88 +msgid "" "\n" " Modify the automember rule:\n" " ipa automember-mod\n" +msgstr "" + +#: ipalib/plugins/automember.py:91 +msgid "" "\n" " Set the default (fallback) target group:\n" " ipa automember-default-group-set --default-group=webservers --" "type=hostgroup\n" " ipa automember-default-group-set --default-group=ipausers --type=group\n" +msgstr "" + +#: ipalib/plugins/automember.py:95 +msgid "" "\n" " Remove the default (fallback) target group:\n" " ipa automember-default-group-remove --type=hostgroup\n" " ipa automember-default-group-remove --type=group\n" +msgstr "" + +#: ipalib/plugins/automember.py:99 +msgid "" "\n" " Show the default (fallback) target group:\n" " ipa automember-default-group-show --type=hostgroup\n" " ipa automember-default-group-show --type=group\n" +msgstr "" + +#: ipalib/plugins/automember.py:103 +msgid "" "\n" " Find all of the automember rules:\n" " ipa automember-find\n" +msgstr "" + +#: ipalib/plugins/automember.py:106 +msgid "" "\n" " Display a automember rule:\n" " ipa automember-show --type=hostgroup webservers\n" " ipa automember-show --type=group devel\n" +msgstr "" + +#: ipalib/plugins/automember.py:110 +msgid "" "\n" " Delete an automember rule:\n" " ipa automember-del --type=hostgroup webservers\n" " ipa automember-del --type=group devel\n" msgstr "" -#: ipalib/plugins/automember.py:119 ipalib/plugins/automember.py:120 +#: ipalib/plugins/automember.py:114 +msgid "" +"\n" +" Rebuild membership for all users:\n" +" ipa automember-rebuild --type=group\n" +msgstr "" + +#: ipalib/plugins/automember.py:117 +msgid "" +"\n" +" Rebuild membership for all hosts:\n" +" ipa automember-rebuild --type=hostgroup\n" +msgstr "" + +#: ipalib/plugins/automember.py:120 +msgid "" +"\n" +" Rebuild membership for specified users:\n" +" ipa automember-rebuild --users=tuser1 --users=tuser2\n" +msgstr "" + +#: ipalib/plugins/automember.py:123 +msgid "" +"\n" +" Rebuild membership for specified hosts:\n" +" ipa automember-rebuild --hosts=web1.example.com --hosts=web2.example." +"com\n" +msgstr "" + +#: ipalib/plugins/automember.py:142 ipalib/plugins/automember.py:143 msgid "Inclusive Regex" msgstr "" -#: ipalib/plugins/automember.py:126 ipalib/plugins/automember.py:127 +#: ipalib/plugins/automember.py:149 ipalib/plugins/automember.py:150 msgid "Exclusive Regex" msgstr "" -#: ipalib/plugins/automember.py:132 +#: ipalib/plugins/automember.py:155 msgid "Attribute Key" msgstr "" -#: ipalib/plugins/automember.py:133 +#: ipalib/plugins/automember.py:156 msgid "" "Attribute to filter via regex. For example fqdn for a host, or manager for a " "user" msgstr "" -#: ipalib/plugins/automember.py:140 +#: ipalib/plugins/automember.py:163 msgid "Grouping Type" msgstr "" -#: ipalib/plugins/automember.py:141 +#: ipalib/plugins/automember.py:164 msgid "Grouping to which the rule applies" msgstr "" -#: ipalib/plugins/automember.py:149 ipalib/plugins/automember.py:150 +#: ipalib/plugins/automember.py:172 ipalib/plugins/automember.py:173 msgid "Automember Rule" msgstr "" -#: ipalib/plugins/automember.py:171 +#: ipalib/plugins/automember.py:232 msgid "Auto Membership Rule" msgstr "" -#: ipalib/plugins/automember.py:176 ipalib/plugins/automount.py:579 -#: ipalib/plugins/group.py:155 ipalib/plugins/hbacrule.py:179 -#: ipalib/plugins/hbacsvc.py:79 ipalib/plugins/hbacsvcgroup.py:73 -#: ipalib/plugins/host.py:267 ipalib/plugins/hostgroup.py:90 -#: ipalib/plugins/netgroup.py:122 ipalib/plugins/privilege.py:73 -#: ipalib/plugins/role.py:92 ipalib/plugins/selinuxusermap.py:184 -#: ipalib/plugins/sudocmd.py:77 ipalib/plugins/sudocmdgroup.py:78 -#: ipalib/plugins/sudorule.py:111 +#: ipalib/plugins/automember.py:237 ipalib/plugins/automount.py:600 +#: ipalib/plugins/group.py:222 ipalib/plugins/hbacrule.py:233 +#: ipalib/plugins/hbacsvc.py:108 ipalib/plugins/hbacsvcgroup.py:112 +#: ipalib/plugins/host.py:385 ipalib/plugins/hostgroup.py:144 +#: ipalib/plugins/netgroup.py:179 ipalib/plugins/otptoken.py:149 +#: ipalib/plugins/privilege.py:107 ipalib/plugins/radiusproxy.py:109 +#: ipalib/plugins/role.py:139 ipalib/plugins/selinuxusermap.py:227 +#: ipalib/plugins/sudocmd.py:119 ipalib/plugins/sudocmdgroup.py:122 +#: ipalib/plugins/sudorule.py:223 msgid "Description" msgstr "" -#: ipalib/plugins/automember.py:177 +#: ipalib/plugins/automember.py:238 msgid "A description of this auto member rule" msgstr "" -#: ipalib/plugins/automember.py:181 ipalib/plugins/automember.py:511 +#: ipalib/plugins/automember.py:242 ipalib/plugins/automember.py:568 msgid "Default (fallback) Group" msgstr "" -#: ipalib/plugins/automember.py:182 +#: ipalib/plugins/automember.py:243 msgid "Default group for entries to land" msgstr "" -#: ipalib/plugins/automember.py:193 +#: ipalib/plugins/automember.py:255 #, python-format -msgid "Group: %s not found!" +msgid "%(otype)s \"%(oname)s\" not found" msgstr "" -#: ipalib/plugins/automember.py:217 +#: ipalib/plugins/automember.py:281 #, python-format msgid "%s is not a valid attribute." msgstr "" -#: ipalib/plugins/automember.py:230 +#: ipalib/plugins/automember.py:294 msgid "" "\n" " Add an automember rule.\n" " " msgstr "" -#: ipalib/plugins/automember.py:235 +#: ipalib/plugins/automember.py:299 #, python-format msgid "Added automember rule \"%(value)s\"" msgstr "" -#: ipalib/plugins/automember.py:242 +#: ipalib/plugins/automember.py:306 msgid "Auto Membership is not configured" msgstr "" -#: ipalib/plugins/automember.py:255 +#: ipalib/plugins/automember.py:318 msgid "" "\n" " Add conditions to an automember rule.\n" " " msgstr "" -#: ipalib/plugins/automember.py:260 +#: ipalib/plugins/automember.py:323 msgid "Failed to add" msgstr "" -#: ipalib/plugins/automember.py:267 +#: ipalib/plugins/automember.py:330 #, python-format msgid "Added condition(s) to \"%(value)s\"" msgstr "" -#: ipalib/plugins/automember.py:276 +#: ipalib/plugins/automember.py:339 msgid "Conditions that could not be added" msgstr "" -#: ipalib/plugins/automember.py:280 +#: ipalib/plugins/automember.py:343 msgid "Number of conditions added" msgstr "" -#: ipalib/plugins/automember.py:290 ipalib/plugins/automember.py:376 +#: ipalib/plugins/automember.py:353 ipalib/plugins/automember.py:438 #, python-format msgid "Auto member rule: %s not found!" msgstr "" -#: ipalib/plugins/automember.py:332 +#: ipalib/plugins/automember.py:395 msgid "" "\n" " Override this so we can add completed and failed to the return " @@ -1040,119 +1231,196 @@ msgid "" " " msgstr "" -#: ipalib/plugins/automember.py:348 +#: ipalib/plugins/automember.py:410 msgid "" "\n" " Remove conditions from an automember rule.\n" " " msgstr "" -#: ipalib/plugins/automember.py:353 +#: ipalib/plugins/automember.py:415 #, python-format msgid "Removed condition(s) from \"%(value)s\"" msgstr "" -#: ipalib/plugins/automember.py:362 +#: ipalib/plugins/automember.py:424 msgid "Conditions that could not be removed" msgstr "" -#: ipalib/plugins/automember.py:366 +#: ipalib/plugins/automember.py:428 msgid "Number of conditions removed" msgstr "" -#: ipalib/plugins/automember.py:420 +#: ipalib/plugins/automember.py:482 msgid "" "\n" " Override this so we can set completed and failed.\n" " " msgstr "" -#: ipalib/plugins/automember.py:436 +#: ipalib/plugins/automember.py:497 msgid "" "\n" " Modify an automember rule.\n" " " msgstr "" -#: ipalib/plugins/automember.py:441 +#: ipalib/plugins/automember.py:502 #, python-format msgid "Modified automember rule \"%(value)s\"" msgstr "" -#: ipalib/plugins/automember.py:452 +#: ipalib/plugins/automember.py:512 msgid "" "\n" " Delete an automember rule.\n" " " msgstr "" -#: ipalib/plugins/automember.py:457 +#: ipalib/plugins/automember.py:517 #, python-format msgid "Deleted automember rule \"%(value)s\"" msgstr "" -#: ipalib/plugins/automember.py:468 +#: ipalib/plugins/automember.py:527 msgid "" "\n" " Search for automember rules.\n" " " msgstr "" -#: ipalib/plugins/automember.py:475 +#: ipalib/plugins/automember.py:534 #, python-format msgid "%(count)d rules matched" msgid_plural "%(count)d rules matched" msgstr[0] "" msgstr[1] "" -#: ipalib/plugins/automember.py:488 +#: ipalib/plugins/automember.py:546 msgid "" "\n" " Display information about an automember rule.\n" " " msgstr "" -#: ipalib/plugins/automember.py:504 +#: ipalib/plugins/automember.py:561 msgid "" "\n" " Set default (fallback) group for all unmatched entries.\n" " " msgstr "" -#: ipalib/plugins/automember.py:512 +#: ipalib/plugins/automember.py:569 msgid "Default (fallback) group for entries to land" msgstr "" -#: ipalib/plugins/automember.py:516 +#: ipalib/plugins/automember.py:573 #, python-format msgid "Set default (fallback) group for automember \"%(value)s\"" msgstr "" -#: ipalib/plugins/automember.py:533 +#: ipalib/plugins/automember.py:589 msgid "" "\n" " Remove default (fallback) group for all unmatched entries.\n" " " msgstr "" -#: ipalib/plugins/automember.py:538 +#: ipalib/plugins/automember.py:594 #, python-format msgid "Removed default (fallback) group for automember \"%(value)s\"" msgstr "" -#: ipalib/plugins/automember.py:548 ipalib/plugins/automember.py:556 -#: ipalib/plugins/automember.py:581 +#: ipalib/plugins/automember.py:604 ipalib/plugins/automember.py:612 +#: ipalib/plugins/automember.py:636 msgid "No default (fallback) group set" msgstr "" -#: ipalib/plugins/automember.py:568 +#: ipalib/plugins/automember.py:623 msgid "" "\n" " Display information about the default (fallback) automember groups.\n" " " msgstr "" -#: ipalib/plugins/automount.py:29 +#: ipalib/plugins/automember.py:647 +msgid "Rebuild auto membership." +msgstr "" + +#: ipalib/plugins/automember.py:653 +msgid "Rebuild membership for all members of a grouping" +msgstr "" + +#: ipalib/plugins/automember.py:657 ipalib/plugins/hbacrule.py:240 +#: ipalib/plugins/internal.py:512 ipalib/plugins/selinuxusermap.py:234 +#: ipalib/plugins/sudorule.py:267 ipalib/plugins/user.py:429 +msgid "Users" +msgstr "" + +#: ipalib/plugins/automember.py:658 +msgid "Rebuild membership for specified users" +msgstr "" + +#: ipalib/plugins/automember.py:662 ipalib/plugins/hbacrule.py:248 +#: ipalib/plugins/host.py:373 ipalib/plugins/internal.py:506 +#: ipalib/plugins/selinuxusermap.py:242 ipalib/plugins/sudorule.py:280 +msgid "Hosts" +msgstr "" + +#: ipalib/plugins/automember.py:663 +msgid "Rebuild membership for specified hosts" +msgstr "" + +#: ipalib/plugins/automember.py:668 +msgid "No wait" +msgstr "" + +#: ipalib/plugins/automember.py:669 +msgid "Don't wait for rebuilding membership" +msgstr "" + +#: ipalib/plugins/automember.py:676 +msgid "Task DN" +msgstr "" + +#: ipalib/plugins/automember.py:677 +msgid "DN of the started task" +msgstr "" + +#: ipalib/plugins/automember.py:694 +msgid "at least one of options: type, users, hosts must be specified" +msgstr "" + +#: ipalib/plugins/automember.py:700 +msgid "users and hosts cannot both be set" +msgstr "" + +#: ipalib/plugins/automember.py:704 +msgid "hosts cannot be set when type is 'group'" +msgstr "" + +#: ipalib/plugins/automember.py:708 +msgid "users cannot be set when type is 'hostgroup'" +msgstr "" + +#: ipalib/plugins/automember.py:759 +msgid "Automember rebuild membership task started" +msgstr "" + +#: ipalib/plugins/automember.py:763 ipalib/plugins/internal.py:158 +msgid "Automember rebuild membership task completed" +msgstr "" + +#: ipalib/plugins/automember.py:780 +#, python-format +msgid "Task DN = '%s'" +msgstr "" + +#: ipalib/plugins/automember.py:783 ipalib/plugins/internal.py:692 +msgid "Automember" +msgstr "" + +#: ipalib/plugins/automount.py:30 msgid "" "\n" "Automount\n" @@ -1260,628 +1528,627 @@ msgid "" " ipa automountkey-del baltimore auto.share --key=man\n" msgstr "" -#: ipalib/plugins/automount.py:205 +#: ipalib/plugins/automount.py:209 msgid "automount location" msgstr "" -#: ipalib/plugins/automount.py:206 +#: ipalib/plugins/automount.py:210 msgid "automount locations" msgstr "" -#: ipalib/plugins/automount.py:209 +#: ipalib/plugins/automount.py:213 msgid "Automount Locations" msgstr "" -#: ipalib/plugins/automount.py:210 +#: ipalib/plugins/automount.py:214 msgid "Automount Location" msgstr "" -#: ipalib/plugins/automount.py:215 ipalib/plugins/host.py:277 +#: ipalib/plugins/automount.py:243 ipalib/plugins/host.py:395 msgid "Location" msgstr "" -#: ipalib/plugins/automount.py:216 +#: ipalib/plugins/automount.py:244 msgid "Automount location name." msgstr "" -#: ipalib/plugins/automount.py:225 +#: ipalib/plugins/automount.py:252 msgid "Create a new automount location." msgstr "" -#: ipalib/plugins/automount.py:227 +#: ipalib/plugins/automount.py:254 #, python-format msgid "Added automount location \"%(value)s\"" msgstr "" -#: ipalib/plugins/automount.py:247 +#: ipalib/plugins/automount.py:272 msgid "Delete an automount location." msgstr "" -#: ipalib/plugins/automount.py:249 +#: ipalib/plugins/automount.py:274 #, python-format msgid "Deleted automount location \"%(value)s\"" msgstr "" -#: ipalib/plugins/automount.py:255 +#: ipalib/plugins/automount.py:279 msgid "Display an automount location." msgstr "" -#: ipalib/plugins/automount.py:261 +#: ipalib/plugins/automount.py:284 msgid "Search for an automount location." msgstr "" -#: ipalib/plugins/automount.py:264 +#: ipalib/plugins/automount.py:287 #, python-format msgid "%(count)d automount location matched" msgid_plural "%(count)d automount locations matched" msgstr[0] "" msgstr[1] "" -#: ipalib/plugins/automount.py:272 +#: ipalib/plugins/automount.py:294 msgid "Generate automount files for a specific location." msgstr "" -#: ipalib/plugins/automount.py:350 +#: ipalib/plugins/automount.py:372 msgid "maps not connected to /etc/auto.master:" msgstr "" -#: ipalib/plugins/automount.py:368 +#: ipalib/plugins/automount.py:389 msgid "Import automount files for a specific location." msgstr "" -#: ipalib/plugins/automount.py:372 +#: ipalib/plugins/automount.py:393 msgid "Master file" msgstr "" -#: ipalib/plugins/automount.py:373 +#: ipalib/plugins/automount.py:394 msgid "Automount master file." msgstr "" -#: ipalib/plugins/automount.py:380 +#: ipalib/plugins/automount.py:401 msgid "" "Continuous operation mode. Errors are reported but the process continues." msgstr "" -#: ipalib/plugins/automount.py:392 +#: ipalib/plugins/automount.py:413 #, python-format msgid "File %(file)s not found" msgstr "" -#: ipalib/plugins/automount.py:444 +#: ipalib/plugins/automount.py:465 #, python-format msgid "key %(key)s already exists" msgstr "" -#: ipalib/plugins/automount.py:460 +#: ipalib/plugins/automount.py:481 #, python-format msgid "map %(map)s already exists" msgstr "" -#: ipalib/plugins/automount.py:565 +#: ipalib/plugins/automount.py:585 msgid "automount map" msgstr "" -#: ipalib/plugins/automount.py:566 +#: ipalib/plugins/automount.py:586 msgid "automount maps" msgstr "" -#: ipalib/plugins/automount.py:573 +#: ipalib/plugins/automount.py:594 msgid "Map" msgstr "" -#: ipalib/plugins/automount.py:574 +#: ipalib/plugins/automount.py:595 msgid "Automount map name." msgstr "" -#: ipalib/plugins/automount.py:583 +#: ipalib/plugins/automount.py:629 msgid "Automount Maps" msgstr "" -#: ipalib/plugins/automount.py:584 +#: ipalib/plugins/automount.py:630 msgid "Automount Map" msgstr "" -#: ipalib/plugins/automount.py:590 +#: ipalib/plugins/automount.py:635 msgid "Create a new automount map." msgstr "" -#: ipalib/plugins/automount.py:592 +#: ipalib/plugins/automount.py:637 #, python-format msgid "Added automount map \"%(value)s\"" msgstr "" -#: ipalib/plugins/automount.py:598 +#: ipalib/plugins/automount.py:642 msgid "Delete an automount map." msgstr "" -#: ipalib/plugins/automount.py:600 +#: ipalib/plugins/automount.py:644 #, python-format msgid "Deleted automount map \"%(value)s\"" msgstr "" -#: ipalib/plugins/automount.py:619 +#: ipalib/plugins/automount.py:662 msgid "Modify an automount map." msgstr "" -#: ipalib/plugins/automount.py:621 +#: ipalib/plugins/automount.py:664 #, python-format msgid "Modified automount map \"%(value)s\"" msgstr "" -#: ipalib/plugins/automount.py:627 +#: ipalib/plugins/automount.py:669 msgid "Search for an automount map." msgstr "" -#: ipalib/plugins/automount.py:630 +#: ipalib/plugins/automount.py:672 #, python-format msgid "%(count)d automount map matched" msgid_plural "%(count)d automount maps matched" msgstr[0] "" msgstr[1] "" -#: ipalib/plugins/automount.py:638 +#: ipalib/plugins/automount.py:679 msgid "Display an automount map." msgstr "" -#: ipalib/plugins/automount.py:644 +#: ipalib/plugins/automount.py:684 msgid "Automount key object." msgstr "" -#: ipalib/plugins/automount.py:648 +#: ipalib/plugins/automount.py:688 msgid "automount key" msgstr "" -#: ipalib/plugins/automount.py:649 +#: ipalib/plugins/automount.py:689 msgid "automount keys" msgstr "" -#: ipalib/plugins/automount.py:660 ipalib/plugins/automount.py:883 -#: ipalib/plugins/automount.py:993 +#: ipalib/plugins/automount.py:701 ipalib/plugins/automount.py:950 +#: ipalib/plugins/automount.py:1057 ipalib/plugins/otptoken.py:191 msgid "Key" msgstr "" -#: ipalib/plugins/automount.py:661 ipalib/plugins/automount.py:884 -#: ipalib/plugins/automount.py:994 +#: ipalib/plugins/automount.py:702 ipalib/plugins/automount.py:951 +#: ipalib/plugins/automount.py:1058 msgid "Automount key name." msgstr "" -#: ipalib/plugins/automount.py:666 ipalib/plugins/automount.py:888 -#: ipalib/plugins/automount.py:998 +#: ipalib/plugins/automount.py:707 ipalib/plugins/automount.py:955 +#: ipalib/plugins/automount.py:1062 msgid "Mount information" msgstr "" -#: ipalib/plugins/automount.py:669 +#: ipalib/plugins/automount.py:710 msgid "description" msgstr "" -#: ipalib/plugins/automount.py:678 +#: ipalib/plugins/automount.py:748 msgid "Automount Keys" msgstr "" -#: ipalib/plugins/automount.py:679 +#: ipalib/plugins/automount.py:749 msgid "Automount Key" msgstr "" -#: ipalib/plugins/automount.py:680 +#: ipalib/plugins/automount.py:750 #, python-format msgid "" "The key,info pair must be unique. A key named %(key)s with info %(info)s " "already exists" msgstr "" -#: ipalib/plugins/automount.py:681 +#: ipalib/plugins/automount.py:751 #, python-format msgid "key named %(key)s already exists" msgstr "" -#: ipalib/plugins/automount.py:682 +#: ipalib/plugins/automount.py:752 #, python-format msgid "The automount key %(key)s with info %(info)s does not exist" msgstr "" -#: ipalib/plugins/automount.py:732 +#: ipalib/plugins/automount.py:802 #, python-format msgid "" "More than one entry with key %(key)s found, use --info to select specific " "entry." msgstr "" -#: ipalib/plugins/automount.py:792 +#: ipalib/plugins/automount.py:861 msgid "Create a new automount key." msgstr "" -#: ipalib/plugins/automount.py:794 +#: ipalib/plugins/automount.py:863 #, python-format msgid "Added automount key \"%(value)s\"" msgstr "" -#: ipalib/plugins/automount.py:822 +#: ipalib/plugins/automount.py:890 msgid "Create a new indirect mount point." msgstr "" -#: ipalib/plugins/automount.py:824 +#: ipalib/plugins/automount.py:892 #, python-format msgid "Added automount indirect map \"%(value)s\"" msgstr "" -#: ipalib/plugins/automount.py:829 +#: ipalib/plugins/automount.py:897 msgid "Mount point" msgstr "" -#: ipalib/plugins/automount.py:833 +#: ipalib/plugins/automount.py:901 msgid "Parent map" msgstr "" -#: ipalib/plugins/automount.py:834 +#: ipalib/plugins/automount.py:902 msgid "Name of parent automount map (default: auto.master)." msgstr "" -#: ipalib/plugins/automount.py:848 +#: ipalib/plugins/automount.py:916 msgid "mount point is relative to parent map, cannot begin with /" msgstr "" -#: ipalib/plugins/automount.py:876 +#: ipalib/plugins/automount.py:943 msgid "Delete an automount key." msgstr "" -#: ipalib/plugins/automount.py:878 +#: ipalib/plugins/automount.py:945 #, python-format msgid "Deleted automount key \"%(value)s\"" msgstr "" -#: ipalib/plugins/automount.py:918 +#: ipalib/plugins/automount.py:984 msgid "Modify an automount key." msgstr "" -#: ipalib/plugins/automount.py:920 +#: ipalib/plugins/automount.py:986 #, python-format msgid "Modified automount key \"%(value)s\"" msgstr "" -#: ipalib/plugins/automount.py:927 +#: ipalib/plugins/automount.py:993 msgid "New mount information" msgstr "" -#: ipalib/plugins/automount.py:977 +#: ipalib/plugins/automount.py:1042 msgid "Search for an automount key." msgstr "" -#: ipalib/plugins/automount.py:980 +#: ipalib/plugins/automount.py:1045 #, python-format msgid "%(count)d automount key matched" msgid_plural "%(count)d automount keys matched" msgstr[0] "" msgstr[1] "" -#: ipalib/plugins/automount.py:988 +#: ipalib/plugins/automount.py:1052 msgid "Display an automount key." msgstr "" -#: ipalib/plugins/baseldap.py:41 ipalib/plugins/internal.py:280 -#: ipalib/plugins/internal.py:633 ipalib/plugins/migration.py:491 -#: ipalib/plugins/user.py:289 +#: ipalib/plugins/baseldap.py:43 ipalib/plugins/internal.py:292 +#: ipalib/plugins/internal.py:659 ipalib/plugins/migration.py:502 +#: ipalib/plugins/otptoken.py:442 ipalib/plugins/user.py:497 msgid "Password" msgstr "" -#: ipalib/plugins/baseldap.py:44 +#: ipalib/plugins/baseldap.py:46 msgid "Failed members" msgstr "" -#: ipalib/plugins/baseldap.py:47 +#: ipalib/plugins/baseldap.py:49 msgid "Member users" msgstr "" -#: ipalib/plugins/baseldap.py:50 +#: ipalib/plugins/baseldap.py:52 msgid "Member groups" msgstr "" -#: ipalib/plugins/baseldap.py:53 +#: ipalib/plugins/baseldap.py:55 msgid "Member of groups" msgstr "" -#: ipalib/plugins/baseldap.py:56 +#: ipalib/plugins/baseldap.py:58 msgid "Member hosts" msgstr "" -#: ipalib/plugins/baseldap.py:59 +#: ipalib/plugins/baseldap.py:61 msgid "Member host-groups" msgstr "" -#: ipalib/plugins/baseldap.py:62 +#: ipalib/plugins/baseldap.py:64 msgid "Member of host-groups" msgstr "" -#: ipalib/plugins/baseldap.py:71 ipalib/plugins/role.py:81 +#: ipalib/plugins/baseldap.py:73 ipalib/plugins/role.py:128 msgid "Roles" msgstr "" -#: ipalib/plugins/baseldap.py:74 ipalib/plugins/sudocmdgroup.py:66 -#: ipalib/plugins/sudocmdgroup.py:86 +#: ipalib/plugins/baseldap.py:76 ipalib/plugins/sudocmdgroup.py:110 +#: ipalib/plugins/sudocmdgroup.py:130 msgid "Sudo Command Groups" msgstr "" -#: ipalib/plugins/baseldap.py:80 +#: ipalib/plugins/baseldap.py:82 msgid "Granting privilege to roles" msgstr "" -#: ipalib/plugins/baseldap.py:83 +#: ipalib/plugins/baseldap.py:85 msgid "Member netgroups" msgstr "" -#: ipalib/plugins/baseldap.py:86 +#: ipalib/plugins/baseldap.py:88 msgid "Member of netgroups" msgstr "" -#: ipalib/plugins/baseldap.py:89 +#: ipalib/plugins/baseldap.py:91 msgid "Member services" msgstr "" -#: ipalib/plugins/baseldap.py:92 +#: ipalib/plugins/baseldap.py:94 msgid "Member service groups" msgstr "" -#: ipalib/plugins/baseldap.py:98 +#: ipalib/plugins/baseldap.py:100 msgid "Member HBAC service" msgstr "" -#: ipalib/plugins/baseldap.py:101 +#: ipalib/plugins/baseldap.py:103 msgid "Member HBAC service groups" msgstr "" -#: ipalib/plugins/baseldap.py:116 +#: ipalib/plugins/baseldap.py:118 msgid "Indirect Member users" msgstr "" -#: ipalib/plugins/baseldap.py:119 +#: ipalib/plugins/baseldap.py:121 msgid "Indirect Member groups" msgstr "" -#: ipalib/plugins/baseldap.py:122 +#: ipalib/plugins/baseldap.py:124 msgid "Indirect Member hosts" msgstr "" -#: ipalib/plugins/baseldap.py:125 +#: ipalib/plugins/baseldap.py:127 msgid "Indirect Member host-groups" msgstr "" -#: ipalib/plugins/baseldap.py:128 +#: ipalib/plugins/baseldap.py:130 msgid "Indirect Member of roles" msgstr "" -#: ipalib/plugins/baseldap.py:131 +#: ipalib/plugins/baseldap.py:133 msgid "Indirect Member permissions" msgstr "" -#: ipalib/plugins/baseldap.py:134 +#: ipalib/plugins/baseldap.py:136 msgid "Indirect Member HBAC service" msgstr "" -#: ipalib/plugins/baseldap.py:137 +#: ipalib/plugins/baseldap.py:139 msgid "Indirect Member HBAC service group" msgstr "" -#: ipalib/plugins/baseldap.py:140 +#: ipalib/plugins/baseldap.py:142 msgid "Indirect Member netgroups" msgstr "" -#: ipalib/plugins/baseldap.py:161 +#: ipalib/plugins/baseldap.py:163 msgid "Failed source hosts/hostgroups" msgstr "" -#: ipalib/plugins/baseldap.py:164 +#: ipalib/plugins/baseldap.py:166 msgid "Failed hosts/hostgroups" msgstr "" -#: ipalib/plugins/baseldap.py:167 +#: ipalib/plugins/baseldap.py:169 msgid "Failed users/groups" msgstr "" -#: ipalib/plugins/baseldap.py:170 +#: ipalib/plugins/baseldap.py:172 msgid "Failed service/service groups" msgstr "" -#: ipalib/plugins/baseldap.py:173 +#: ipalib/plugins/baseldap.py:175 msgid "Failed to remove" msgstr "" -#: ipalib/plugins/baseldap.py:177 +#: ipalib/plugins/baseldap.py:179 msgid "Failed RunAs" msgstr "" -#: ipalib/plugins/baseldap.py:180 +#: ipalib/plugins/baseldap.py:182 msgid "Failed RunAsGroup" msgstr "" -#: ipalib/plugins/baseldap.py:198 +#: ipalib/plugins/baseldap.py:200 msgid "Invalid format. Should be name=value" msgstr "" -#: ipalib/plugins/baseldap.py:286 +#: ipalib/plugins/baseldap.py:311 msgid "External host" msgstr "" -#: ipalib/plugins/baseldap.py:419 +#: ipalib/plugins/baseldap.py:483 msgid "An IPA master host cannot be deleted or disabled" msgstr "" -#: ipalib/plugins/baseldap.py:433 +#: ipalib/plugins/baseldap.py:497 msgid "entry" msgstr "" -#: ipalib/plugins/baseldap.py:434 +#: ipalib/plugins/baseldap.py:498 msgid "entries" msgstr "" -#: ipalib/plugins/baseldap.py:466 ipalib/plugins/baseldap.py:467 +#: ipalib/plugins/baseldap.py:531 ipalib/plugins/baseldap.py:532 msgid "Entry" msgstr "" -#: ipalib/plugins/baseldap.py:469 +#: ipalib/plugins/baseldap.py:535 #, python-format msgid "container entry (%(container)s) not found" msgstr "" -#: ipalib/plugins/baseldap.py:470 +#: ipalib/plugins/baseldap.py:536 #, python-format msgid "%(parent)s: %(oname)s not found" msgstr "" -#: ipalib/plugins/baseldap.py:471 +#: ipalib/plugins/baseldap.py:537 #, python-format msgid "%(pkey)s: %(oname)s not found" msgstr "" -#: ipalib/plugins/baseldap.py:472 +#: ipalib/plugins/baseldap.py:538 #, python-format msgid "%(oname)s with name \"%(pkey)s\" already exists" msgstr "" -#: ipalib/plugins/baseldap.py:669 ipalib/plugins/baseldap.py:677 -#: ipalib/plugins/baseldap.py:682 +#: ipalib/plugins/baseldap.py:738 ipalib/plugins/baseldap.py:746 +#: ipalib/plugins/baseldap.py:751 #, python-format msgid "attribute \"%(attribute)s\" not allowed" msgstr "" -#: ipalib/plugins/baseldap.py:744 +#: ipalib/plugins/baseldap.py:813 msgid "" "Set an attribute to a name/value pair. Format is attr=value.\n" "For multi-valued attributes, the command replaces the values already present." msgstr "" -#: ipalib/plugins/baseldap.py:750 +#: ipalib/plugins/baseldap.py:819 msgid "" "Add an attribute/value pair. Format is attr=value. The attribute\n" "must be part of the schema." msgstr "" -#: ipalib/plugins/baseldap.py:756 +#: ipalib/plugins/baseldap.py:825 msgid "" "Delete an attribute/value pair. The option will be evaluated\n" "last, after all sets and adds." msgstr "" -#: ipalib/plugins/baseldap.py:784 +#: ipalib/plugins/baseldap.py:859 msgid "attribute is not configurable" msgstr "" -#: ipalib/plugins/baseldap.py:887 +#: ipalib/plugins/baseldap.py:962 msgid "No such attribute on this entry" msgstr "" -#: ipalib/plugins/baseldap.py:981 +#: ipalib/plugins/baseldap.py:1058 msgid "Suppress processing of membership attributes." msgstr "" -#: ipalib/plugins/baseldap.py:1159 +#: ipalib/plugins/baseldap.py:1235 msgid "Continuous mode: Don't stop on errors." msgstr "" -#: ipalib/plugins/baseldap.py:1180 ipalib/plugins/baseldap.py:1253 -#: ipalib/plugins/internal.py:501 +#: ipalib/plugins/baseldap.py:1256 ipalib/plugins/baseldap.py:1332 msgid "Rights" msgstr "" -#: ipalib/plugins/baseldap.py:1181 ipalib/plugins/baseldap.py:1254 +#: ipalib/plugins/baseldap.py:1257 ipalib/plugins/baseldap.py:1333 msgid "" "Display the access rights of this entry (requires --all). See ipa man page " "for details." msgstr "" -#: ipalib/plugins/baseldap.py:1263 +#: ipalib/plugins/baseldap.py:1342 msgid "Rename" msgstr "" -#: ipalib/plugins/baseldap.py:1264 +#: ipalib/plugins/baseldap.py:1343 #, python-format msgid "Rename the %(ldap_obj_name)s object" msgstr "" -#: ipalib/plugins/baseldap.py:1345 +#: ipalib/plugins/baseldap.py:1424 msgid "the entry was deleted while being modified" msgstr "" -#: ipalib/plugins/baseldap.py:1472 ipalib/plugins/baseldap.py:1941 +#: ipalib/plugins/baseldap.py:1555 ipalib/plugins/baseldap.py:2023 #, python-format msgid "%s" msgstr "" -#: ipalib/plugins/baseldap.py:1484 +#: ipalib/plugins/baseldap.py:1567 #, python-format msgid "member %s" msgstr "" -#: ipalib/plugins/baseldap.py:1514 ipalib/plugins/baseldap.py:1966 +#: ipalib/plugins/baseldap.py:1597 ipalib/plugins/baseldap.py:2048 #, python-format msgid "%s to add" msgstr "" -#: ipalib/plugins/baseldap.py:1522 ipalib/plugins/baseldap.py:1978 -#: ipalib/plugins/privilege.py:150 ipalib/plugins/privilege.py:175 -#: ipalib/plugins/role.py:164 ipalib/plugins/role.py:187 +#: ipalib/plugins/baseldap.py:1605 ipalib/plugins/baseldap.py:2060 +#: ipalib/plugins/privilege.py:176 ipalib/plugins/privilege.py:231 +#: ipalib/plugins/role.py:211 ipalib/plugins/role.py:234 msgid "Members that could not be added" msgstr "" -#: ipalib/plugins/baseldap.py:1526 ipalib/plugins/baseldap.py:1982 +#: ipalib/plugins/baseldap.py:1609 ipalib/plugins/baseldap.py:2064 msgid "Number of members added" msgstr "" -#: ipalib/plugins/baseldap.py:1615 ipalib/plugins/baseldap.py:2071 +#: ipalib/plugins/baseldap.py:1697 ipalib/plugins/baseldap.py:2152 #, python-format msgid "%s to remove" msgstr "" -#: ipalib/plugins/baseldap.py:1622 ipalib/plugins/baseldap.py:2083 +#: ipalib/plugins/baseldap.py:1704 ipalib/plugins/baseldap.py:2164 msgid "Members that could not be removed" msgstr "" -#: ipalib/plugins/baseldap.py:1626 ipalib/plugins/baseldap.py:2087 +#: ipalib/plugins/baseldap.py:1708 ipalib/plugins/baseldap.py:2168 msgid "Number of members removed" msgstr "" -#: ipalib/plugins/baseldap.py:1716 +#: ipalib/plugins/baseldap.py:1797 msgid "Primary key only" msgstr "" -#: ipalib/plugins/baseldap.py:1717 +#: ipalib/plugins/baseldap.py:1798 #, python-format msgid "Results should contain primary key attribute only (\"%s\")" msgstr "" -#: ipalib/plugins/baseldap.py:1725 +#: ipalib/plugins/baseldap.py:1806 #, python-format msgid "" "Search for %(searched_object)s with these %(relationship)s %(ldap_object)s." msgstr "" -#: ipalib/plugins/baseldap.py:1726 +#: ipalib/plugins/baseldap.py:1807 #, python-format msgid "" "Search for %(searched_object)s without these %(relationship)s " "%(ldap_object)s." msgstr "" -#: ipalib/plugins/baseldap.py:1735 +#: ipalib/plugins/baseldap.py:1816 msgid "Time Limit" msgstr "" -#: ipalib/plugins/baseldap.py:1736 +#: ipalib/plugins/baseldap.py:1817 msgid "Time limit of search in seconds" msgstr "" -#: ipalib/plugins/baseldap.py:1742 ipalib/plugins/cert.py:696 -#: ipalib/plugins/hbactest.py:285 +#: ipalib/plugins/baseldap.py:1823 ipalib/plugins/cert.py:721 +#: ipalib/plugins/hbactest.py:289 msgid "Size Limit" msgstr "" -#: ipalib/plugins/baseldap.py:1743 +#: ipalib/plugins/baseldap.py:1824 msgid "Maximum number of entries returned" msgstr "" -#: ipalib/plugins/batch.py:62 +#: ipalib/plugins/batch.py:66 msgid "Nested Methods to execute" msgstr "" -#: ipalib/plugins/cert.py:45 +#: ipalib/plugins/cert.py:47 msgid "" "\n" "IPA certificate operations\n" @@ -1965,260 +2232,275 @@ msgid "" "\n" msgstr "" -#: ipalib/plugins/cert.py:145 -msgid "Failure decoding Certificate Signing Request:" -msgstr "" - -#: ipalib/plugins/cert.py:158 ipalib/plugins/cert.py:175 -msgid "Failure decoding Certificate Signing Request" -msgstr "" - -#: ipalib/plugins/cert.py:177 +#: ipalib/plugins/cert.py:155 ipalib/plugins/cert.py:320 #, python-format msgid "Failure decoding Certificate Signing Request: %s" msgstr "" -#: ipalib/plugins/cert.py:240 +#: ipalib/plugins/cert.py:219 msgid "Submit a certificate signing request." msgstr "" -#: ipalib/plugins/cert.py:244 +#: ipalib/plugins/cert.py:223 msgid "CSR" msgstr "" -#: ipalib/plugins/cert.py:253 ipalib/plugins/service.py:321 +#: ipalib/plugins/cert.py:232 ipalib/plugins/service.py:371 msgid "Principal" msgstr "" -#: ipalib/plugins/cert.py:254 +#: ipalib/plugins/cert.py:233 msgid "Service principal for this certificate (e.g. HTTP/test.example.com)" msgstr "" -#: ipalib/plugins/cert.py:261 +#: ipalib/plugins/cert.py:240 msgid "automatically add the principal if it doesn't exist" msgstr "" -#: ipalib/plugins/cert.py:269 ipalib/plugins/cert.py:481 -#: ipalib/plugins/host.py:306 ipalib/plugins/internal.py:319 -#: ipalib/plugins/service.py:328 +#: ipalib/plugins/cert.py:248 ipalib/plugins/cert.py:504 +#: ipalib/plugins/host.py:424 ipalib/plugins/internal.py:331 +#: ipalib/plugins/service.py:378 msgid "Certificate" msgstr "" -#: ipalib/plugins/cert.py:272 ipalib/plugins/cert.py:484 -#: ipalib/plugins/cert.py:638 ipalib/plugins/cert.py:639 -#: ipalib/plugins/host.py:166 ipalib/plugins/internal.py:332 -#: ipalib/plugins/service.py:102 +#: ipalib/plugins/cert.py:251 ipalib/plugins/cert.py:507 +#: ipalib/plugins/cert.py:661 ipalib/plugins/cert.py:662 +#: ipalib/plugins/host.py:169 ipalib/plugins/internal.py:344 +#: ipalib/plugins/service.py:105 msgid "Subject" msgstr "" -#: ipalib/plugins/cert.py:275 ipalib/plugins/cert.py:487 -#: ipalib/plugins/host.py:175 ipalib/plugins/service.py:111 +#: ipalib/plugins/cert.py:254 ipalib/plugins/cert.py:510 +#: ipalib/plugins/host.py:178 ipalib/plugins/service.py:114 msgid "Issuer" msgstr "" -#: ipalib/plugins/cert.py:278 ipalib/plugins/cert.py:490 -#: ipalib/plugins/host.py:178 ipalib/plugins/service.py:114 +#: ipalib/plugins/cert.py:257 ipalib/plugins/cert.py:513 +#: ipalib/plugins/host.py:181 ipalib/plugins/service.py:117 msgid "Not Before" msgstr "" -#: ipalib/plugins/cert.py:281 ipalib/plugins/cert.py:493 -#: ipalib/plugins/host.py:181 ipalib/plugins/service.py:117 +#: ipalib/plugins/cert.py:260 ipalib/plugins/cert.py:516 +#: ipalib/plugins/host.py:184 ipalib/plugins/service.py:120 msgid "Not After" msgstr "" -#: ipalib/plugins/cert.py:284 ipalib/plugins/cert.py:496 -#: ipalib/plugins/host.py:184 ipalib/plugins/service.py:120 +#: ipalib/plugins/cert.py:263 ipalib/plugins/cert.py:519 +#: ipalib/plugins/host.py:187 ipalib/plugins/service.py:123 msgid "Fingerprint (MD5)" msgstr "" -#: ipalib/plugins/cert.py:287 ipalib/plugins/cert.py:499 -#: ipalib/plugins/host.py:187 ipalib/plugins/service.py:123 +#: ipalib/plugins/cert.py:266 ipalib/plugins/cert.py:522 +#: ipalib/plugins/host.py:190 ipalib/plugins/service.py:126 msgid "Fingerprint (SHA1)" msgstr "" -#: ipalib/plugins/cert.py:290 ipalib/plugins/cert.py:469 -#: ipalib/plugins/cert.py:710 +#: ipalib/plugins/cert.py:269 ipalib/plugins/cert.py:491 +#: ipalib/plugins/cert.py:735 msgid "Serial number" msgstr "" -#: ipalib/plugins/cert.py:293 ipalib/plugins/cert.py:505 -#: ipalib/plugins/cert.py:707 +#: ipalib/plugins/cert.py:272 ipalib/plugins/cert.py:528 +#: ipalib/plugins/cert.py:732 msgid "Serial number (hex)" msgstr "" -#: ipalib/plugins/cert.py:300 ipalib/plugins/misc.py:57 +#: ipalib/plugins/cert.py:279 ipalib/plugins/misc.py:61 msgid "Dictionary mapping variable name to value" msgstr "" -#: ipalib/plugins/cert.py:333 +#: ipalib/plugins/cert.py:332 msgid "No hostname was found in subject of request." msgstr "" -#: ipalib/plugins/cert.py:338 +#: ipalib/plugins/cert.py:337 #, python-format msgid "" "hostname in subject of request '%(subject_host)s' does not match principal " "hostname '%(hostname)s'" msgstr "" -#: ipalib/plugins/cert.py:356 +#: ipalib/plugins/cert.py:344 +#, python-format +msgid "extension %s is forbidden" +msgstr "" + +#: ipalib/plugins/cert.py:352 +#, python-format +msgid "subject alt name type %s is forbidden" +msgstr "" + +#: ipalib/plugins/cert.py:366 msgid "The service principal for this request doesn't exist." msgstr "" -#: ipalib/plugins/cert.py:362 +#: ipalib/plugins/cert.py:371 msgid "You need to be a member of the serviceadmin role to add services" msgstr "" -#: ipalib/plugins/cert.py:367 +#: ipalib/plugins/cert.py:378 #, python-format msgid "" "Insufficient 'write' privilege to the 'userCertificate' attribute of entry " "'%s'." msgstr "" -#: ipalib/plugins/cert.py:383 +#: ipalib/plugins/cert.py:396 #, python-format -msgid "no host record for subject alt name %s in certificate request" +msgid "" +"The service principal for subject alt name %s in certificate request does " +"not exist" msgstr "" -#: ipalib/plugins/cert.py:389 +#: ipalib/plugins/cert.py:402 #, python-format msgid "" "Insufficient privilege to create a certificate with subject alt name '%s'." msgstr "" -#: ipalib/plugins/cert.py:442 +#: ipalib/plugins/cert.py:408 +#, python-format +msgid "" +"Principal '%s' in subject alt name does not match requested service principal" +msgstr "" + +#: ipalib/plugins/cert.py:412 +#, python-format +msgid "Subject alt name type %s is forbidden" +msgstr "" + +#: ipalib/plugins/cert.py:465 msgid "Check the status of a certificate signing request." msgstr "" -#: ipalib/plugins/cert.py:446 +#: ipalib/plugins/cert.py:469 msgid "Request id" msgstr "" -#: ipalib/plugins/cert.py:452 +#: ipalib/plugins/cert.py:475 msgid "Request status" msgstr "" -#: ipalib/plugins/cert.py:470 +#: ipalib/plugins/cert.py:492 msgid "Serial number in decimal or if prefixed with 0x in hexadecimal" msgstr "" -#: ipalib/plugins/cert.py:475 +#: ipalib/plugins/cert.py:498 msgid "Retrieve an existing certificate." msgstr "" -#: ipalib/plugins/cert.py:502 ipalib/plugins/host.py:190 -#: ipalib/plugins/internal.py:329 ipalib/plugins/internal.py:358 -#: ipalib/plugins/service.py:126 +#: ipalib/plugins/cert.py:525 ipalib/plugins/host.py:193 +#: ipalib/plugins/internal.py:341 ipalib/plugins/internal.py:371 +#: ipalib/plugins/service.py:129 msgid "Revocation reason" msgstr "" -#: ipalib/plugins/cert.py:511 +#: ipalib/plugins/cert.py:534 msgid "Output filename" msgstr "" -#: ipalib/plugins/cert.py:512 +#: ipalib/plugins/cert.py:535 msgid "File to store the certificate in." msgstr "" -#: ipalib/plugins/cert.py:563 +#: ipalib/plugins/cert.py:586 msgid "Revoke a certificate." msgstr "" -#: ipalib/plugins/cert.py:569 +#: ipalib/plugins/cert.py:592 msgid "Revoked" msgstr "" -#: ipalib/plugins/cert.py:577 ipalib/plugins/cert.py:643 +#: ipalib/plugins/cert.py:600 ipalib/plugins/cert.py:666 msgid "Reason" msgstr "" -#: ipalib/plugins/cert.py:578 ipalib/plugins/cert.py:644 +#: ipalib/plugins/cert.py:601 ipalib/plugins/cert.py:667 msgid "Reason for revoking the certificate (0-10)" msgstr "" -#: ipalib/plugins/cert.py:600 +#: ipalib/plugins/cert.py:623 msgid "7 is not a valid revocation reason" msgstr "" -#: ipalib/plugins/cert.py:610 +#: ipalib/plugins/cert.py:633 msgid "Take a revoked certificate off hold." msgstr "" -#: ipalib/plugins/cert.py:616 +#: ipalib/plugins/cert.py:639 msgid "Unrevoked" msgstr "" -#: ipalib/plugins/cert.py:619 ipalib/plugins/internal.py:249 +#: ipalib/plugins/cert.py:642 ipalib/plugins/internal.py:261 msgid "Error" msgstr "" -#: ipalib/plugins/cert.py:634 +#: ipalib/plugins/cert.py:657 msgid "Search for existing certificates." msgstr "" -#: ipalib/plugins/cert.py:650 +#: ipalib/plugins/cert.py:673 msgid "minimum serial number" msgstr "" -#: ipalib/plugins/cert.py:655 +#: ipalib/plugins/cert.py:679 msgid "maximum serial number" msgstr "" -#: ipalib/plugins/cert.py:660 +#: ipalib/plugins/cert.py:685 msgid "match the common name exactly" msgstr "" -#: ipalib/plugins/cert.py:664 +#: ipalib/plugins/cert.py:689 msgid "Valid not after from this date (YYYY-mm-dd)" msgstr "" -#: ipalib/plugins/cert.py:668 +#: ipalib/plugins/cert.py:693 msgid "Valid not after to this date (YYYY-mm-dd)" msgstr "" -#: ipalib/plugins/cert.py:672 +#: ipalib/plugins/cert.py:697 msgid "Valid not before from this date (YYYY-mm-dd)" msgstr "" -#: ipalib/plugins/cert.py:676 +#: ipalib/plugins/cert.py:701 msgid "Valid not before to this date (YYYY-mm-dd)" msgstr "" -#: ipalib/plugins/cert.py:680 +#: ipalib/plugins/cert.py:705 msgid "Issued on from this date (YYYY-mm-dd)" msgstr "" -#: ipalib/plugins/cert.py:684 +#: ipalib/plugins/cert.py:709 msgid "Issued on to this date (YYYY-mm-dd)" msgstr "" -#: ipalib/plugins/cert.py:688 +#: ipalib/plugins/cert.py:713 msgid "Revoked on from this date (YYYY-mm-dd)" msgstr "" -#: ipalib/plugins/cert.py:692 +#: ipalib/plugins/cert.py:717 msgid "Revoked on to this date (YYYY-mm-dd)" msgstr "" -#: ipalib/plugins/cert.py:697 +#: ipalib/plugins/cert.py:722 msgid "Maximum number of certs returned" msgstr "" -#: ipalib/plugins/cert.py:713 ipalib/plugins/internal.py:366 -#: ipalib/plugins/internal.py:472 ipalib/plugins/internal.py:552 -#: ipalib/plugins/internal.py:659 +#: ipalib/plugins/cert.py:738 ipalib/plugins/internal.py:379 +#: ipalib/plugins/internal.py:488 ipalib/plugins/internal.py:575 +#: ipalib/plugins/internal.py:687 msgid "Status" msgstr "" -#: ipalib/plugins/cert.py:718 +#: ipalib/plugins/cert.py:743 #, python-format msgid "%(count)d certificate matched" msgid_plural "%(count)d certificates matched" msgstr[0] "" msgstr[1] "" -#: ipalib/plugins/config.py:32 +#: ipalib/plugins/config.py:33 msgid "" "\n" "Server configuration\n" @@ -2268,187 +2550,195 @@ msgid "" "s0:c0.c1023$staff_u:s0-s0:c0.c1023$unconfined_u:s0-s0:c0.c1023'\n" msgstr "" -#: ipalib/plugins/config.py:80 +#: ipalib/plugins/config.py:83 msgid "searchtimelimit must be -1 or > 1." msgstr "" -#: ipalib/plugins/config.py:87 +#: ipalib/plugins/config.py:91 msgid "configuration options" msgstr "" -#: ipalib/plugins/config.py:97 ipalib/plugins/config.py:98 +#: ipalib/plugins/config.py:124 ipalib/plugins/config.py:125 msgid "Configuration" msgstr "" -#: ipalib/plugins/config.py:103 +#: ipalib/plugins/config.py:130 msgid "Maximum username length" msgstr "" -#: ipalib/plugins/config.py:108 +#: ipalib/plugins/config.py:135 msgid "Home directory base" msgstr "" -#: ipalib/plugins/config.py:109 +#: ipalib/plugins/config.py:136 msgid "Default location of home directories" msgstr "" -#: ipalib/plugins/config.py:113 +#: ipalib/plugins/config.py:140 msgid "Default shell" msgstr "" -#: ipalib/plugins/config.py:114 +#: ipalib/plugins/config.py:141 msgid "Default shell for new users" msgstr "" -#: ipalib/plugins/config.py:118 +#: ipalib/plugins/config.py:145 msgid "Default users group" msgstr "" -#: ipalib/plugins/config.py:119 +#: ipalib/plugins/config.py:146 msgid "Default group for new users" msgstr "" -#: ipalib/plugins/config.py:123 ipalib/plugins/config.py:124 +#: ipalib/plugins/config.py:150 ipalib/plugins/config.py:151 msgid "Default e-mail domain" msgstr "" -#: ipalib/plugins/config.py:128 +#: ipalib/plugins/config.py:155 msgid "Search time limit" msgstr "" -#: ipalib/plugins/config.py:129 +#: ipalib/plugins/config.py:156 msgid "" "Maximum amount of time (seconds) for a search (> 0, or -1 for unlimited)" msgstr "" -#: ipalib/plugins/config.py:134 +#: ipalib/plugins/config.py:161 msgid "Search size limit" msgstr "" -#: ipalib/plugins/config.py:135 +#: ipalib/plugins/config.py:162 msgid "Maximum number of records to search (-1 is unlimited)" msgstr "" -#: ipalib/plugins/config.py:140 +#: ipalib/plugins/config.py:167 msgid "User search fields" msgstr "" -#: ipalib/plugins/config.py:141 +#: ipalib/plugins/config.py:168 msgid "A comma-separated list of fields to search in when searching for users" msgstr "" -#: ipalib/plugins/config.py:146 +#: ipalib/plugins/config.py:173 msgid "A comma-separated list of fields to search in when searching for groups" msgstr "" -#: ipalib/plugins/config.py:150 ipalib/plugins/config.py:151 +#: ipalib/plugins/config.py:177 ipalib/plugins/config.py:178 msgid "Enable migration mode" msgstr "" -#: ipalib/plugins/config.py:155 +#: ipalib/plugins/config.py:182 msgid "Certificate Subject base" msgstr "" -#: ipalib/plugins/config.py:156 +#: ipalib/plugins/config.py:183 msgid "Base for certificate subjects (OU=Test,O=Example)" msgstr "" -#: ipalib/plugins/config.py:161 +#: ipalib/plugins/config.py:188 msgid "Default group objectclasses" msgstr "" -#: ipalib/plugins/config.py:162 +#: ipalib/plugins/config.py:189 msgid "Default group objectclasses (comma-separated list)" msgstr "" -#: ipalib/plugins/config.py:167 +#: ipalib/plugins/config.py:194 msgid "Default user objectclasses" msgstr "" -#: ipalib/plugins/config.py:168 +#: ipalib/plugins/config.py:195 msgid "Default user objectclasses (comma-separated list)" msgstr "" -#: ipalib/plugins/config.py:173 +#: ipalib/plugins/config.py:200 msgid "Password Expiration Notification (days)" msgstr "" -#: ipalib/plugins/config.py:174 +#: ipalib/plugins/config.py:201 msgid "Number of days's notice of impending password expiration" msgstr "" -#: ipalib/plugins/config.py:179 +#: ipalib/plugins/config.py:206 msgid "Password plugin features" msgstr "" -#: ipalib/plugins/config.py:180 +#: ipalib/plugins/config.py:207 msgid "Extra hashes to generate in password plug-in" msgstr "" -#: ipalib/plugins/config.py:186 +#: ipalib/plugins/config.py:213 msgid "SELinux user map order" msgstr "" -#: ipalib/plugins/config.py:187 +#: ipalib/plugins/config.py:214 msgid "Order in increasing priority of SELinux users, delimited by $" msgstr "" -#: ipalib/plugins/config.py:190 +#: ipalib/plugins/config.py:217 msgid "Default SELinux user" msgstr "" -#: ipalib/plugins/config.py:191 +#: ipalib/plugins/config.py:218 msgid "Default SELinux user when no match is found in SELinux map rule" msgstr "" -#: ipalib/plugins/config.py:195 +#: ipalib/plugins/config.py:222 msgid "Default PAC types" msgstr "" -#: ipalib/plugins/config.py:196 +#: ipalib/plugins/config.py:223 msgid "Default types of PAC supported for services" msgstr "" -#: ipalib/plugins/config.py:209 +#: ipalib/plugins/config.py:229 +msgid "Default user authentication types" +msgstr "" + +#: ipalib/plugins/config.py:230 +msgid "Default types of supported user authentication" +msgstr "" + +#: ipalib/plugins/config.py:243 msgid "Modify configuration options." msgstr "" -#: ipalib/plugins/config.py:218 +#: ipalib/plugins/config.py:252 msgid "The group doesn't exist" msgstr "" -#: ipalib/plugins/config.py:233 +#: ipalib/plugins/config.py:267 #, python-format msgid "attribute \"%s\" not allowed" msgstr "" -#: ipalib/plugins/config.py:241 +#: ipalib/plugins/config.py:275 msgid "May not be empty" msgstr "" -#: ipalib/plugins/config.py:259 +#: ipalib/plugins/config.py:293 #, python-format msgid "%(obj)s default attribute %(attr)s would not be allowed!" msgstr "" -#: ipalib/plugins/config.py:291 +#: ipalib/plugins/config.py:325 msgid "A list of SELinux users delimited by $ expected" msgstr "" -#: ipalib/plugins/config.py:295 +#: ipalib/plugins/config.py:329 #, python-format msgid "SELinux user '%(user)s' is not valid: %(error)s" msgstr "" -#: ipalib/plugins/config.py:307 +#: ipalib/plugins/config.py:341 msgid "SELinux user map default user not in order list" msgstr "" -#: ipalib/plugins/config.py:315 +#: ipalib/plugins/config.py:349 msgid "Show the current configuration." msgstr "" -#: ipalib/plugins/delegation.py:29 +#: ipalib/plugins/delegation.py:30 msgid "" "\n" "Group to Group Delegation\n" @@ -2478,85 +2768,85 @@ msgid "" " ipa delegation-del \"managers edit employees' street\"\n" msgstr "" -#: ipalib/plugins/delegation.py:69 +#: ipalib/plugins/delegation.py:73 msgid "delegation" msgstr "" -#: ipalib/plugins/delegation.py:70 +#: ipalib/plugins/delegation.py:74 msgid "delegations" msgstr "" -#: ipalib/plugins/delegation.py:71 +#: ipalib/plugins/delegation.py:75 msgid "Delegations" msgstr "" -#: ipalib/plugins/delegation.py:72 +#: ipalib/plugins/delegation.py:76 msgid "Delegation" msgstr "" -#: ipalib/plugins/delegation.py:77 ipalib/plugins/delegation.py:78 +#: ipalib/plugins/delegation.py:81 ipalib/plugins/delegation.py:82 msgid "Delegation name" msgstr "" -#: ipalib/plugins/delegation.py:84 ipalib/plugins/selfservice.py:88 +#: ipalib/plugins/delegation.py:88 ipalib/plugins/selfservice.py:92 msgid "Permissions to grant (read, write). Default is write." msgstr "" -#: ipalib/plugins/delegation.py:90 +#: ipalib/plugins/delegation.py:94 msgid "Attributes to which the delegation applies" msgstr "" -#: ipalib/plugins/delegation.py:96 +#: ipalib/plugins/delegation.py:100 msgid "Member user group" msgstr "" -#: ipalib/plugins/delegation.py:97 +#: ipalib/plugins/delegation.py:101 msgid "User group to apply delegation to" msgstr "" -#: ipalib/plugins/delegation.py:130 +#: ipalib/plugins/delegation.py:134 msgid "Add a new delegation." msgstr "" -#: ipalib/plugins/delegation.py:132 +#: ipalib/plugins/delegation.py:136 #, python-format msgid "Added delegation \"%(value)s\"" msgstr "" -#: ipalib/plugins/delegation.py:151 +#: ipalib/plugins/delegation.py:155 msgid "Delete a delegation." msgstr "" -#: ipalib/plugins/delegation.py:154 +#: ipalib/plugins/delegation.py:158 #, python-format msgid "Deleted delegation \"%(value)s\"" msgstr "" -#: ipalib/plugins/delegation.py:169 +#: ipalib/plugins/delegation.py:173 msgid "Modify a delegation." msgstr "" -#: ipalib/plugins/delegation.py:171 +#: ipalib/plugins/delegation.py:175 #, python-format msgid "Modified delegation \"%(value)s\"" msgstr "" -#: ipalib/plugins/delegation.py:188 +#: ipalib/plugins/delegation.py:192 msgid "Search for delegations." msgstr "" -#: ipalib/plugins/delegation.py:191 +#: ipalib/plugins/delegation.py:195 #, python-format msgid "%(count)d delegation matched" msgid_plural "%(count)d delegations matched" msgstr[0] "" msgstr[1] "" -#: ipalib/plugins/delegation.py:214 +#: ipalib/plugins/delegation.py:218 msgid "Display information about a delegation." msgstr "" -#: ipalib/plugins/dns.py:41 +#: ipalib/plugins/dns.py:46 msgid "" "\n" "Domain Name System (DNS)\n" @@ -2767,243 +3057,233 @@ msgid "" " ipa dnsconfig-mod --forwarder=10.0.0.1\n" msgstr "" -#: ipalib/plugins/dns.py:293 +#: ipalib/plugins/dns.py:267 +msgid "Permission value" +msgstr "" + +#: ipalib/plugins/dns.py:312 #, python-format msgid "invalid IP address version (is %(value)d, must be %(required_value)d)!" msgstr "" -#: ipalib/plugins/dns.py:296 +#: ipalib/plugins/dns.py:315 msgid "invalid IP address format" msgstr "" -#: ipalib/plugins/dns.py:309 +#: ipalib/plugins/dns.py:328 msgid "invalid IP network format" msgstr "" -#: ipalib/plugins/dns.py:318 +#: ipalib/plugins/dns.py:337 msgid "each ACL element must be terminated with a semicolon" msgstr "" -#: ipalib/plugins/dns.py:335 +#: ipalib/plugins/dns.py:354 msgid "invalid address format" msgstr "" -#: ipalib/plugins/dns.py:379 ipalib/plugins/dns.py:422 +#: ipalib/plugins/dns.py:404 #, python-format -msgid "invalid domain-name: %s" +msgid "%(port)s is not a valid port" msgstr "" -#: ipalib/plugins/dns.py:408 -#, python-format -msgid "%(port)s is not a valid port" +#: ipalib/plugins/dns.py:411 +msgid "invalid domain-name: not fully qualified" msgstr "" -#: ipalib/plugins/dns.py:484 +#: ipalib/plugins/dns.py:466 #, python-format msgid "DNS reverse zone for IP address %(addr)s not found" msgstr "" -#: ipalib/plugins/dns.py:496 +#: ipalib/plugins/dns.py:481 #, python-format msgid "DNS zone %(zone)s not found" msgstr "" -#: ipalib/plugins/dns.py:510 +#: ipalib/plugins/dns.py:495 #, python-format msgid "IP address %(ip)s is already assigned in domain %(domain)s." msgstr "" -#: ipalib/plugins/dns.py:523 +#: ipalib/plugins/dns.py:508 #, python-format msgid "" "Reverse record for IP address %(ip)s already exists in reverse zone %(zone)s." msgstr "" -#: ipalib/plugins/dns.py:559 +#: ipalib/plugins/dns.py:585 #, python-format msgid "%s record" msgstr "" -#: ipalib/plugins/dns.py:561 +#: ipalib/plugins/dns.py:587 #, python-format msgid "Raw %s records" msgstr "" -#: ipalib/plugins/dns.py:562 +#: ipalib/plugins/dns.py:588 #, python-format msgid "%s Record" msgstr "" -#: ipalib/plugins/dns.py:563 +#: ipalib/plugins/dns.py:589 #, python-format msgid "(see RFC %s for details)" msgstr "" -#: ipalib/plugins/dns.py:619 +#: ipalib/plugins/dns.py:654 #, python-format msgid "'%s' is a required part of DNS record" msgstr "" -#: ipalib/plugins/dns.py:626 +#: ipalib/plugins/dns.py:661 msgid "Invalid number of parts!" msgstr "" -#: ipalib/plugins/dns.py:681 +#: ipalib/plugins/dns.py:716 #, python-format msgid "DNS RR type \"%s\" is not supported by bind-dyndb-ldap plugin" msgstr "" -#: ipalib/plugins/dns.py:697 +#: ipalib/plugins/dns.py:732 #, python-format msgid "format must be specified as \"%(format)s\" %(rfcs)s" msgstr "" -#: ipalib/plugins/dns.py:821 +#: ipalib/plugins/dns.py:856 msgid "Create reverse" msgstr "" -#: ipalib/plugins/dns.py:822 +#: ipalib/plugins/dns.py:857 msgid "Create reverse record for this IP Address" msgstr "" -#: ipalib/plugins/dns.py:857 +#: ipalib/plugins/dns.py:892 #, python-format msgid "Cannot create reverse record for \"%(value)s\": %(exc)s" msgstr "" -#: ipalib/plugins/dns.py:866 ipalib/plugins/dns.py:889 -#: ipalib/plugins/host.py:406 +#: ipalib/plugins/dns.py:901 ipalib/plugins/dns.py:924 +#: ipalib/plugins/host.py:525 msgid "IP Address" msgstr "" -#: ipalib/plugins/dns.py:875 ipalib/plugins/dns.py:1486 +#: ipalib/plugins/dns.py:910 ipalib/plugins/dns.py:1453 msgid "Record data" msgstr "" -#: ipalib/plugins/dns.py:898 +#: ipalib/plugins/dns.py:933 msgid "Subtype" msgstr "" -#: ipalib/plugins/dns.py:904 ipalib/plugins/dns.py:943 -#: ipalib/plugins/dns.py:1196 ipalib/plugins/dns.py:1293 -#: ipalib/plugins/dns.py:2930 +#: ipalib/plugins/dns.py:938 ipalib/plugins/dns.py:976 +#: ipalib/plugins/dns.py:1215 ipalib/plugins/dns.py:1306 +#: ipalib/plugins/dns.py:3564 msgid "Hostname" msgstr "" -#: ipalib/plugins/dns.py:918 +#: ipalib/plugins/dns.py:952 msgid "Certificate Type" msgstr "" -#: ipalib/plugins/dns.py:923 ipalib/plugins/dns.py:978 -#: ipalib/plugins/dns.py:1376 +#: ipalib/plugins/dns.py:957 ipalib/plugins/dns.py:1005 msgid "Key Tag" msgstr "" -#: ipalib/plugins/dns.py:928 ipalib/plugins/dns.py:983 -#: ipalib/plugins/dns.py:1017 ipalib/plugins/dns.py:1354 -#: ipalib/plugins/dns.py:1402 +#: ipalib/plugins/dns.py:962 ipalib/plugins/dns.py:1010 +#: ipalib/plugins/dns.py:1234 ipalib/plugins/dns.py:1369 +#: ipalib/plugins/otptoken.py:198 msgid "Algorithm" msgstr "" -#: ipalib/plugins/dns.py:933 +#: ipalib/plugins/dns.py:967 msgid "Certificate/CRL" msgstr "" -#: ipalib/plugins/dns.py:944 +#: ipalib/plugins/dns.py:977 msgid "A hostname which this alias hostname points to" msgstr "" -#: ipalib/plugins/dns.py:964 ipalib/plugins/dns.py:1330 -#: ipalib/plugins/internal.py:502 +#: ipalib/plugins/dns.py:991 ipalib/plugins/dns.py:1336 +#: ipalib/plugins/internal.py:522 msgid "Target" msgstr "" -#: ipalib/plugins/dns.py:988 +#: ipalib/plugins/dns.py:1015 msgid "Digest Type" msgstr "" -#: ipalib/plugins/dns.py:993 +#: ipalib/plugins/dns.py:1020 msgid "Digest" msgstr "" -#: ipalib/plugins/dns.py:1007 ipalib/plugins/dns.py:1272 -msgid "Flags" -msgstr "" - -#: ipalib/plugins/dns.py:1012 -msgid "Protocol" -msgstr "" - -#: ipalib/plugins/dns.py:1022 -msgid "Public Key" -msgstr "" - -#: ipalib/plugins/dns.py:1036 ipalib/plugins/dns.py:1177 -#: ipalib/plugins/dns.py:1266 +#: ipalib/plugins/dns.py:1053 ipalib/plugins/dns.py:1198 +#: ipalib/plugins/dns.py:1280 msgid "Preference" msgstr "" -#: ipalib/plugins/dns.py:1037 ipalib/plugins/dns.py:1178 +#: ipalib/plugins/dns.py:1054 ipalib/plugins/dns.py:1199 msgid "Preference given to this exchanger. Lower values are more preferred" msgstr "" -#: ipalib/plugins/dns.py:1043 ipalib/plugins/dns.py:1184 +#: ipalib/plugins/dns.py:1059 ipalib/plugins/dns.py:1204 msgid "Exchanger" msgstr "" -#: ipalib/plugins/dns.py:1044 +#: ipalib/plugins/dns.py:1060 msgid "A host willing to act as a key exchanger" msgstr "" -#: ipalib/plugins/dns.py:1053 +#: ipalib/plugins/dns.py:1069 msgid "Degrees Latitude" msgstr "" -#: ipalib/plugins/dns.py:1058 +#: ipalib/plugins/dns.py:1074 msgid "Minutes Latitude" msgstr "" -#: ipalib/plugins/dns.py:1063 +#: ipalib/plugins/dns.py:1079 msgid "Seconds Latitude" msgstr "" -#: ipalib/plugins/dns.py:1069 +#: ipalib/plugins/dns.py:1085 msgid "Direction Latitude" msgstr "" -#: ipalib/plugins/dns.py:1073 +#: ipalib/plugins/dns.py:1089 msgid "Degrees Longitude" msgstr "" -#: ipalib/plugins/dns.py:1078 +#: ipalib/plugins/dns.py:1094 msgid "Minutes Longitude" msgstr "" -#: ipalib/plugins/dns.py:1083 +#: ipalib/plugins/dns.py:1099 msgid "Seconds Longitude" msgstr "" -#: ipalib/plugins/dns.py:1089 +#: ipalib/plugins/dns.py:1105 msgid "Direction Longitude" msgstr "" -#: ipalib/plugins/dns.py:1093 +#: ipalib/plugins/dns.py:1109 msgid "Altitude" msgstr "" -#: ipalib/plugins/dns.py:1099 +#: ipalib/plugins/dns.py:1115 msgid "Size" msgstr "" -#: ipalib/plugins/dns.py:1105 +#: ipalib/plugins/dns.py:1121 msgid "Horizontal Precision" msgstr "" -#: ipalib/plugins/dns.py:1111 +#: ipalib/plugins/dns.py:1127 msgid "Vertical Precision" msgstr "" -#: ipalib/plugins/dns.py:1118 +#: ipalib/plugins/dns.py:1134 msgid "" "format must be specified as\n" " \"d1 [m1 [s1]] {\"N\"|\"S\"} d2 [m2 [s2]] {\"E\"|\"W\"} alt[\"m\"] " @@ -3018,547 +3298,556 @@ msgid "" " See RFC 1876 for details" msgstr "" -#: ipalib/plugins/dns.py:1167 +#: ipalib/plugins/dns.py:1188 #, python-format msgid "'%(required)s' must not be empty when '%(name)s' is set" msgstr "" -#: ipalib/plugins/dns.py:1185 +#: ipalib/plugins/dns.py:1205 msgid "A host willing to act as a mail exchanger" msgstr "" -#: ipalib/plugins/dns.py:1203 -msgid "" -"format must be specified as \"NEXT TYPE1 [TYPE2 [TYPE3 [...]]]\" (see RFC " -"4034 for details)" +#: ipalib/plugins/dns.py:1239 ipalib/plugins/dns.py:1286 +msgid "Flags" msgstr "" -#: ipalib/plugins/dns.py:1210 -msgid "Next Domain Name" +#: ipalib/plugins/dns.py:1245 +msgid "Iterations" msgstr "" -#: ipalib/plugins/dns.py:1213 -msgid "Type Map" +#: ipalib/plugins/dns.py:1250 +msgid "Salt" +msgstr "" + +#: ipalib/plugins/dns.py:1251 +msgid "" +"A hexadecimal salt value. Requires hexadecimal digits or hyphen (\"-\") if " +"no salt is required" msgstr "" -#: ipalib/plugins/dns.py:1253 +#: ipalib/plugins/dns.py:1267 msgid "flags must be one of \"S\", \"A\", \"U\", or \"P\"" msgstr "" -#: ipalib/plugins/dns.py:1261 +#: ipalib/plugins/dns.py:1275 msgid "Order" msgstr "" -#: ipalib/plugins/dns.py:1276 ipalib/plugins/hbactest.py:265 -#: ipalib/plugins/internal.py:551 ipalib/plugins/service.py:316 +#: ipalib/plugins/dns.py:1290 ipalib/plugins/hbactest.py:269 +#: ipalib/plugins/internal.py:574 ipalib/plugins/service.py:366 msgid "Service" msgstr "" -#: ipalib/plugins/dns.py:1279 +#: ipalib/plugins/dns.py:1293 msgid "Regular Expression" msgstr "" -#: ipalib/plugins/dns.py:1282 +#: ipalib/plugins/dns.py:1296 msgid "Replacement" msgstr "" -#: ipalib/plugins/dns.py:1294 +#: ipalib/plugins/dns.py:1307 msgid "The hostname this reverse record points to" msgstr "" -#: ipalib/plugins/dns.py:1314 ipalib/plugins/pwpolicy.py:267 +#: ipalib/plugins/dns.py:1321 ipalib/plugins/pwpolicy.py:346 msgid "Priority" msgstr "" -#: ipalib/plugins/dns.py:1319 +#: ipalib/plugins/dns.py:1326 msgid "Weight" msgstr "" -#: ipalib/plugins/dns.py:1324 +#: ipalib/plugins/dns.py:1331 msgid "Port" msgstr "" -#: ipalib/plugins/dns.py:1331 +#: ipalib/plugins/dns.py:1337 msgid "" "The domain name of the target host or '.' if the service is decidedly not " "available at this domain" msgstr "" -#: ipalib/plugins/dns.py:1340 +#: ipalib/plugins/dns.py:1346 msgid "the value does not follow \"YYYYMMDDHHMMSS\" time format" msgstr "" -#: ipalib/plugins/dns.py:1350 -msgid "Type Covered" +#: ipalib/plugins/dns.py:1374 +msgid "Fingerprint Type" msgstr "" -#: ipalib/plugins/dns.py:1359 -msgid "Labels" +#: ipalib/plugins/dns.py:1379 +msgid "Fingerprint" msgstr "" -#: ipalib/plugins/dns.py:1364 -msgid "Original TTL" +#: ipalib/plugins/dns.py:1400 +msgid "Text Data" msgstr "" -#: ipalib/plugins/dns.py:1369 -msgid "Signature Expiration" +#: ipalib/plugins/dns.py:1447 +msgid "Records" msgstr "" -#: ipalib/plugins/dns.py:1373 -msgid "Signature Inception" +#: ipalib/plugins/dns.py:1450 +msgid "Record type" msgstr "" -#: ipalib/plugins/dns.py:1381 -msgid "Signer's Name" +#: ipalib/plugins/dns.py:1485 +#, python-format +msgid "Nameserver '%(host)s' does not have a corresponding A/AAAA record" msgstr "" -#: ipalib/plugins/dns.py:1384 -msgid "Signature" +#: ipalib/plugins/dns.py:1504 +msgid "Managedby permission" msgstr "" -#: ipalib/plugins/dns.py:1407 -msgid "Fingerprint Type" +#: ipalib/plugins/dns.py:1650 +msgid "Zone name" msgstr "" -#: ipalib/plugins/dns.py:1412 -msgid "Fingerprint" +#: ipalib/plugins/dns.py:1651 +msgid "Zone name (FQDN)" msgstr "" -#: ipalib/plugins/dns.py:1433 -msgid "Text Data" +#: ipalib/plugins/dns.py:1656 +msgid "Reverse zone IP network" msgstr "" -#: ipalib/plugins/dns.py:1480 -msgid "Records" +#: ipalib/plugins/dns.py:1657 +msgid "IP network to create reverse zone name from" msgstr "" -#: ipalib/plugins/dns.py:1483 -msgid "Record type" +#: ipalib/plugins/dns.py:1662 +msgid "Active zone" msgstr "" -#: ipalib/plugins/dns.py:1516 -#, python-format -msgid "Nameserver '%(host)s' does not have a corresponding A/AAAA record" +#: ipalib/plugins/dns.py:1663 +msgid "Is zone active?" msgstr "" -#: ipalib/plugins/dns.py:1534 -msgid "Managedby permission" +#: ipalib/plugins/dns.py:1670 +msgid "Zone forwarders" msgstr "" -#: ipalib/plugins/dns.py:1543 -msgid "DNS zone" +#: ipalib/plugins/dns.py:1671 +msgid "" +"Per-zone forwarders. A custom port can be specified for each forwarder using " +"a standard format \"IP_ADDRESS port PORT\"" msgstr "" -#: ipalib/plugins/dns.py:1544 -msgid "DNS zones" +#: ipalib/plugins/dns.py:1677 ipalib/plugins/dns.py:3633 +msgid "Forward policy" msgstr "" -#: ipalib/plugins/dns.py:1553 -msgid "DNS Zones" +#: ipalib/plugins/dns.py:1678 +msgid "" +"Per-zone conditional forwarding policy. Set to \"none\" to disable " +"forwarding to global forwarder for this zone. In that case, conditional zone " +"forwarders are disregarded." msgstr "" -#: ipalib/plugins/dns.py:1554 -msgid "DNS Zone" +#: ipalib/plugins/dns.py:1735 +msgid "DNS is not configured" msgstr "" -#: ipalib/plugins/dns.py:1560 -msgid "Zone name" +#: ipalib/plugins/dns.py:1746 +msgid "Only one zone type is allowed per zone name" msgstr "" -#: ipalib/plugins/dns.py:1561 -msgid "Zone name (FQDN)" +#: ipalib/plugins/dns.py:1777 ipalib/plugins/dns.py:2351 +msgid "Search for DNS zones (SOA records)." msgstr "" -#: ipalib/plugins/dns.py:1567 -msgid "Reverse zone IP network" +#: ipalib/plugins/dns.py:1864 +#, python-format +msgid "Added system permission \"%(value)s\"" msgstr "" -#: ipalib/plugins/dns.py:1568 -msgid "IP network to create reverse zone name from" +#: ipalib/plugins/dns.py:1891 +#, python-format +msgid "permission \"%(value)s\" already exists" +msgstr "" + +#: ipalib/plugins/dns.py:1919 +#, python-format +msgid "Removed system permission \"%(value)s\"" +msgstr "" + +#: ipalib/plugins/dns.py:1967 +msgid "DNS zone" +msgstr "" + +#: ipalib/plugins/dns.py:1968 +msgid "DNS zones" +msgstr "" + +#: ipalib/plugins/dns.py:1975 +msgid "DNS Zones" msgstr "" -#: ipalib/plugins/dns.py:1573 +#: ipalib/plugins/dns.py:1976 +msgid "DNS Zone" +msgstr "" + +#: ipalib/plugins/dns.py:1981 msgid "Authoritative nameserver" msgstr "" -#: ipalib/plugins/dns.py:1574 +#: ipalib/plugins/dns.py:1982 msgid "Authoritative nameserver domain name" msgstr "" -#: ipalib/plugins/dns.py:1580 ipalib/plugins/dns.py:1581 +#: ipalib/plugins/dns.py:1988 ipalib/plugins/dns.py:1989 msgid "Administrator e-mail address" msgstr "" -#: ipalib/plugins/dns.py:1587 +#: ipalib/plugins/dns.py:1996 msgid "SOA serial" msgstr "" -#: ipalib/plugins/dns.py:1588 +#: ipalib/plugins/dns.py:1997 msgid "SOA record serial number" msgstr "" -#: ipalib/plugins/dns.py:1596 +#: ipalib/plugins/dns.py:2005 msgid "SOA refresh" msgstr "" -#: ipalib/plugins/dns.py:1597 +#: ipalib/plugins/dns.py:2006 msgid "SOA record refresh time" msgstr "" -#: ipalib/plugins/dns.py:1605 +#: ipalib/plugins/dns.py:2014 msgid "SOA retry" msgstr "" -#: ipalib/plugins/dns.py:1606 +#: ipalib/plugins/dns.py:2015 msgid "SOA record retry time" msgstr "" -#: ipalib/plugins/dns.py:1614 +#: ipalib/plugins/dns.py:2023 msgid "SOA expire" msgstr "" -#: ipalib/plugins/dns.py:1615 +#: ipalib/plugins/dns.py:2024 msgid "SOA record expire time" msgstr "" -#: ipalib/plugins/dns.py:1623 +#: ipalib/plugins/dns.py:2032 msgid "SOA minimum" msgstr "" -#: ipalib/plugins/dns.py:1624 +#: ipalib/plugins/dns.py:2033 msgid "How long should negative responses be cached" msgstr "" -#: ipalib/plugins/dns.py:1632 -msgid "SOA time to live" +#: ipalib/plugins/dns.py:2041 ipalib/plugins/dns.py:2446 +#: ipalib/plugins/dns.py:2447 +msgid "Time to live" msgstr "" -#: ipalib/plugins/dns.py:1633 -msgid "SOA record time to live" +#: ipalib/plugins/dns.py:2042 +msgid "Time to live for records at zone apex" msgstr "" -#: ipalib/plugins/dns.py:1639 +#: ipalib/plugins/dns.py:2048 msgid "SOA class" msgstr "" -#: ipalib/plugins/dns.py:1640 +#: ipalib/plugins/dns.py:2049 msgid "SOA record class" msgstr "" -#: ipalib/plugins/dns.py:1645 ipalib/plugins/dns.py:1646 +#: ipalib/plugins/dns.py:2054 ipalib/plugins/dns.py:2055 msgid "BIND update policy" msgstr "" -#: ipalib/plugins/dns.py:1652 -msgid "Active zone" -msgstr "" - -#: ipalib/plugins/dns.py:1653 -msgid "Is zone active?" -msgstr "" - -#: ipalib/plugins/dns.py:1659 +#: ipalib/plugins/dns.py:2061 msgid "Dynamic update" msgstr "" -#: ipalib/plugins/dns.py:1660 +#: ipalib/plugins/dns.py:2062 msgid "Allow dynamic updates." msgstr "" -#: ipalib/plugins/dns.py:1669 +#: ipalib/plugins/dns.py:2071 msgid "Allow query" msgstr "" -#: ipalib/plugins/dns.py:1670 +#: ipalib/plugins/dns.py:2072 msgid "" "Semicolon separated list of IP addresses or networks which are allowed to " "issue queries" msgstr "" -#: ipalib/plugins/dns.py:1678 +#: ipalib/plugins/dns.py:2080 msgid "Allow transfer" msgstr "" -#: ipalib/plugins/dns.py:1679 +#: ipalib/plugins/dns.py:2081 msgid "" "Semicolon separated list of IP addresses or networks which are allowed to " "transfer the zone" msgstr "" -#: ipalib/plugins/dns.py:1686 -msgid "Zone forwarders" -msgstr "" - -#: ipalib/plugins/dns.py:1687 -msgid "" -"Per-zone forwarders. A custom port can be specified for each forwarder using " -"a standard format \"IP_ADDRESS port PORT\"" -msgstr "" - -#: ipalib/plugins/dns.py:1693 ipalib/plugins/dns.py:2999 -msgid "Forward policy" +#: ipalib/plugins/dns.py:2087 ipalib/plugins/dns.py:3640 +msgid "Allow PTR sync" msgstr "" -#: ipalib/plugins/dns.py:1694 +#: ipalib/plugins/dns.py:2088 msgid "" -"Per-zone conditional forwarding policy. Set to \"none\" to disable " -"forwarding to global forwarder for this zone. In that case, conditional zone " -"forwarders are disregarded." +"Allow synchronization of forward (A, AAAA) and reverse (PTR) records in the " +"zone" msgstr "" -#: ipalib/plugins/dns.py:1701 ipalib/plugins/dns.py:3006 -msgid "Allow PTR sync" +#: ipalib/plugins/dns.py:2093 +msgid "Allow in-line DNSSEC signing" msgstr "" -#: ipalib/plugins/dns.py:1702 -msgid "" -"Allow synchronization of forward (A, AAAA) and reverse (PTR) records in the " -"zone" +#: ipalib/plugins/dns.py:2094 +msgid "Allow inline DNSSEC signing of records in the zone" msgstr "" -#: ipalib/plugins/dns.py:1764 +#: ipalib/plugins/dns.py:2182 msgid "Create new DNS zone (SOA record)." msgstr "" -#: ipalib/plugins/dns.py:1769 ipalib/plugins/dns.py:1904 -#: ipalib/plugins/dns.py:2365 ipalib/plugins/host.py:398 -#: ipalib/plugins/permission.py:298 ipalib/plugins/realmdomains.py:97 -#: ipalib/plugins/service.py:369 +#: ipalib/plugins/dns.py:2186 ipalib/plugins/dns.py:2329 +#: ipalib/plugins/dns.py:2953 ipalib/plugins/host.py:517 +#: ipalib/plugins/permission.py:991 ipalib/plugins/realmdomains.py:116 +#: ipalib/plugins/service.py:419 msgid "Force" msgstr "" -#: ipalib/plugins/dns.py:1770 +#: ipalib/plugins/dns.py:2187 msgid "Force DNS zone creation even if nameserver is not resolvable." msgstr "" -#: ipalib/plugins/dns.py:1773 +#: ipalib/plugins/dns.py:2190 msgid "Add forward record for nameserver located in the created zone" msgstr "" -#: ipalib/plugins/dns.py:1774 ipalib/plugins/dns.py:1795 +#: ipalib/plugins/dns.py:2191 ipalib/plugins/dns.py:2220 msgid "Nameserver IP address" msgstr "" -#: ipalib/plugins/dns.py:1801 -msgid "DNS is not configured" -msgstr "" - -#: ipalib/plugins/dns.py:1811 +#: ipalib/plugins/dns.py:2235 msgid "Nameserver address is not a domain name" msgstr "" -#: ipalib/plugins/dns.py:1824 +#: ipalib/plugins/dns.py:2247 msgid "Nameserver for reverse zone cannot be a relative DNS name" msgstr "" -#: ipalib/plugins/dns.py:1828 +#: ipalib/plugins/dns.py:2251 msgid "Nameserver DNS record is created for for forward zones only" msgstr "" -#: ipalib/plugins/dns.py:1832 +#: ipalib/plugins/dns.py:2256 msgid "Nameserver DNS record is created only for nameservers in current zone" msgstr "" -#: ipalib/plugins/dns.py:1873 +#: ipalib/plugins/dns.py:2299 msgid "Delete DNS zone (SOA record)." msgstr "" -#: ipalib/plugins/dns.py:1875 +#: ipalib/plugins/dns.py:2301 #, python-format msgid "Deleted DNS zone \"%(value)s\"" msgstr "" -#: ipalib/plugins/dns.py:1900 +#: ipalib/plugins/dns.py:2325 msgid "Modify DNS zone (SOA record)." msgstr "" -#: ipalib/plugins/dns.py:1905 +#: ipalib/plugins/dns.py:2330 msgid "Force nameserver change even if nameserver not in DNS" msgstr "" -#: ipalib/plugins/dns.py:1922 -msgid "Search for DNS zones (SOA records)." -msgstr "" - -#: ipalib/plugins/dns.py:1946 +#: ipalib/plugins/dns.py:2355 msgid "Forward zones only" msgstr "" -#: ipalib/plugins/dns.py:1948 +#: ipalib/plugins/dns.py:2357 msgid "Search for forward zones only" msgstr "" -#: ipalib/plugins/dns.py:1968 +#: ipalib/plugins/dns.py:2389 msgid "Display information about a DNS zone (SOA record)." msgstr "" -#: ipalib/plugins/dns.py:1976 +#: ipalib/plugins/dns.py:2400 msgid "Disable DNS Zone." msgstr "" -#: ipalib/plugins/dns.py:1979 +#: ipalib/plugins/dns.py:2401 #, python-format msgid "Disabled DNS zone \"%(value)s\"" msgstr "" -#: ipalib/plugins/dns.py:1997 +#: ipalib/plugins/dns.py:2406 msgid "Enable DNS Zone." msgstr "" -#: ipalib/plugins/dns.py:2000 +#: ipalib/plugins/dns.py:2407 #, python-format msgid "Enabled DNS zone \"%(value)s\"" msgstr "" -#: ipalib/plugins/dns.py:2017 +#: ipalib/plugins/dns.py:2412 msgid "Add a permission for per-zone access delegation." msgstr "" -#: ipalib/plugins/dns.py:2020 -#, python-format -msgid "Added system permission \"%(value)s\"" -msgstr "" - -#: ipalib/plugins/dns.py:2053 +#: ipalib/plugins/dns.py:2417 msgid "Remove a permission for per-zone access delegation." msgstr "" -#: ipalib/plugins/dns.py:2056 -#, python-format -msgid "Removed system permission \"%(value)s\"" -msgstr "" - -#: ipalib/plugins/dns.py:2087 +#: ipalib/plugins/dns.py:2427 msgid "DNS resource record" msgstr "" -#: ipalib/plugins/dns.py:2088 +#: ipalib/plugins/dns.py:2428 msgid "DNS resource records" msgstr "" -#: ipalib/plugins/dns.py:2093 +#: ipalib/plugins/dns.py:2434 msgid "DNS Resource Records" msgstr "" -#: ipalib/plugins/dns.py:2094 +#: ipalib/plugins/dns.py:2435 msgid "DNS Resource Record" msgstr "" -#: ipalib/plugins/dns.py:2100 ipalib/plugins/dns.py:2101 +#: ipalib/plugins/dns.py:2440 ipalib/plugins/dns.py:2441 msgid "Record name" msgstr "" -#: ipalib/plugins/dns.py:2106 ipalib/plugins/dns.py:2107 -msgid "Time to live" -msgstr "" - -#: ipalib/plugins/dns.py:2111 ipalib/plugins/host.py:330 +#: ipalib/plugins/dns.py:2451 ipalib/plugins/host.py:448 +#: ipalib/plugins/user.py:585 msgid "Class" msgstr "" -#: ipalib/plugins/dns.py:2112 +#: ipalib/plugins/dns.py:2452 msgid "DNS class" msgstr "" -#: ipalib/plugins/dns.py:2118 +#: ipalib/plugins/dns.py:2458 msgid "Structured" msgstr "" -#: ipalib/plugins/dns.py:2119 +#: ipalib/plugins/dns.py:2459 msgid "Parse all raw DNS records and return them in a structured way" msgstr "" -#: ipalib/plugins/dns.py:2150 +#: ipalib/plugins/dns.py:2475 +msgid "must be in zone record" +msgstr "" + +#: ipalib/plugins/dns.py:2484 +msgid "" +"out-of-zone data: record name must be a subdomain of the zone or a relative " +"name" +msgstr "" + +#: ipalib/plugins/dns.py:2511 #, python-format msgid "" "Reverse zone for PTR record should be a sub-zone of one the following fully " "qualified domains: %s" msgstr "" -#: ipalib/plugins/dns.py:2156 +#: ipalib/plugins/dns.py:2526 #, python-format msgid "" "Reverse zone %(name)s requires exactly %(count)d IP address components, " "%(user_count)d given" msgstr "" -#: ipalib/plugins/dns.py:2328 +#: ipalib/plugins/dns.py:2567 +msgid "only master zones can contain records" +msgstr "" + +#: ipalib/plugins/dns.py:2736 msgid "only one CNAME record is allowed per name (RFC 2136, section 1.1.5)" msgstr "" -#: ipalib/plugins/dns.py:2334 +#: ipalib/plugins/dns.py:2742 msgid "" "CNAME record is not allowed to coexist with any other record (RFC 1034, " "section 3.6.2)" msgstr "" -#: ipalib/plugins/dns.py:2346 +#: ipalib/plugins/dns.py:2754 msgid "only one DNAME record is allowed per name (RFC 6672, section 2.4)" msgstr "" -#: ipalib/plugins/dns.py:2351 +#: ipalib/plugins/dns.py:2759 msgid "" "DNAME record is not allowed to coexist with an NS record except when located " "in a zone root record (RFC 6672, section 2.3)" msgstr "" -#: ipalib/plugins/dns.py:2359 +#: ipalib/plugins/dns.py:2768 +msgid "Only one NSEC3PARAM record is allowed per zone" +msgstr "" + +#: ipalib/plugins/dns.py:2947 msgid "Add new DNS resource record." msgstr "" -#: ipalib/plugins/dns.py:2367 +#: ipalib/plugins/dns.py:2955 msgid "force NS record creation even if its hostname is not in DNS" msgstr "" -#: ipalib/plugins/dns.py:2404 +#: ipalib/plugins/dns.py:3002 msgid "Please choose a type of DNS resource record to be added" msgstr "" -#: ipalib/plugins/dns.py:2405 +#: ipalib/plugins/dns.py:3003 #, python-format msgid "The most common types for this type of zone are: %s\n" msgstr "" -#: ipalib/plugins/dns.py:2410 +#: ipalib/plugins/dns.py:3008 msgid "DNS resource record type" msgstr "" -#: ipalib/plugins/dns.py:2426 +#: ipalib/plugins/dns.py:3024 #, python-format msgid "Invalid or unsupported type. Allowed values are: %s" msgstr "" -#: ipalib/plugins/dns.py:2454 +#: ipalib/plugins/dns.py:3052 #, python-format msgid "Raw value of a DNS record was already set by \"%(name)s\" option" msgstr "" -#: ipalib/plugins/dns.py:2549 +#: ipalib/plugins/dns.py:3154 msgid "Modify a DNS resource record." msgstr "" -#: ipalib/plugins/dns.py:2566 +#: ipalib/plugins/dns.py:3171 msgid "DNS zone root record cannot be renamed" msgstr "" -#: ipalib/plugins/dns.py:2584 +#: ipalib/plugins/dns.py:3189 msgid "DNS records can be only updated one at a time" msgstr "" -#: ipalib/plugins/dns.py:2664 +#: ipalib/plugins/dns.py:3280 msgid "No option to modify specific record provided." msgstr "" -#: ipalib/plugins/dns.py:2667 ipalib/plugins/dns.py:2839 +#: ipalib/plugins/dns.py:3283 ipalib/plugins/dns.py:3469 msgid "Current DNS record contents:\n" msgstr "" -#: ipalib/plugins/dns.py:2689 +#: ipalib/plugins/dns.py:3305 #, python-format msgid "Modify %(name)s '%(value)s'?" msgstr "" -#: ipalib/plugins/dns.py:2697 +#: ipalib/plugins/dns.py:3313 #, python-format msgid "" "%(count)d %(type)s record skipped. Only one value per DNS record type can be " @@ -3569,110 +3858,181 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: ipalib/plugins/dns.py:2709 +#: ipalib/plugins/dns.py:3325 #, python-format msgid "Deleted record \"%(value)s\"" msgstr "" -#: ipalib/plugins/dns.py:2716 +#: ipalib/plugins/dns.py:3332 msgid "Delete DNS resource record." msgstr "" -#: ipalib/plugins/dns.py:2720 +#: ipalib/plugins/dns.py:3336 msgid "" "Neither --del-all nor options to delete a specific record provided.\n" "Command help may be consulted for all supported record types." msgstr "" -#: ipalib/plugins/dns.py:2726 +#: ipalib/plugins/dns.py:3342 msgid "Delete all associated records" msgstr "" -#: ipalib/plugins/dns.py:2792 +#: ipalib/plugins/dns.py:3411 #, python-format msgid "Zone record '%s' cannot be deleted" msgstr "" -#: ipalib/plugins/dns.py:2831 +#: ipalib/plugins/dns.py:3461 msgid "No option to delete specific record provided." msgstr "" -#: ipalib/plugins/dns.py:2832 +#: ipalib/plugins/dns.py:3462 msgid "Delete all?" msgstr "" -#: ipalib/plugins/dns.py:2860 +#: ipalib/plugins/dns.py:3490 #, python-format msgid "Delete %(name)s '%(value)s'?" msgstr "" -#: ipalib/plugins/dns.py:2871 +#: ipalib/plugins/dns.py:3501 msgid "Display DNS resource." msgstr "" -#: ipalib/plugins/dns.py:2888 +#: ipalib/plugins/dns.py:3518 msgid "Search for DNS resources." msgstr "" -#: ipalib/plugins/dns.py:2923 +#: ipalib/plugins/dns.py:3557 msgid "Resolve a host name in DNS." msgstr "" -#: ipalib/plugins/dns.py:2926 +#: ipalib/plugins/dns.py:3560 #, python-format msgid "Found '%(value)s'" msgstr "" -#: ipalib/plugins/dns.py:2943 +#: ipalib/plugins/dns.py:3577 #, python-format msgid "Host '%(host)s' not found" msgstr "" -#: ipalib/plugins/dns.py:2980 +#: ipalib/plugins/dns.py:3614 msgid "DNS configuration options" msgstr "" -#: ipalib/plugins/dns.py:2985 ipalib/plugins/dns.py:2986 +#: ipalib/plugins/dns.py:3619 ipalib/plugins/dns.py:3620 msgid "DNS Global Configuration" msgstr "" -#: ipalib/plugins/dns.py:2992 +#: ipalib/plugins/dns.py:3626 msgid "Global forwarders" msgstr "" -#: ipalib/plugins/dns.py:2993 +#: ipalib/plugins/dns.py:3627 msgid "" "Global forwarders. A custom port can be specified for each forwarder using a " "standard format \"IP_ADDRESS port PORT\"" msgstr "" -#: ipalib/plugins/dns.py:3000 +#: ipalib/plugins/dns.py:3634 msgid "" "Global forwarding policy. Set to \"none\" to disable any configured global " "forwarders." msgstr "" -#: ipalib/plugins/dns.py:3007 +#: ipalib/plugins/dns.py:3641 msgid "Allow synchronization of forward (A, AAAA) and reverse (PTR) records" msgstr "" -#: ipalib/plugins/dns.py:3011 +#: ipalib/plugins/dns.py:3645 msgid "Zone refresh interval" msgstr "" -#: ipalib/plugins/dns.py:3025 +#: ipalib/plugins/dns.py:3689 msgid "Global DNS configuration is empty" msgstr "" -#: ipalib/plugins/dns.py:3031 +#: ipalib/plugins/dns.py:3695 msgid "Modify global DNS configuration." msgstr "" -#: ipalib/plugins/dns.py:3042 +#: ipalib/plugins/dns.py:3706 msgid "Show the current global DNS configuration." msgstr "" -#: ipalib/plugins/group.py:33 +#: ipalib/plugins/dns.py:3719 +msgid "DNS forward zone" +msgstr "" + +#: ipalib/plugins/dns.py:3720 +msgid "DNS forward zones" +msgstr "" + +#: ipalib/plugins/dns.py:3722 +msgid "DNS Forward Zones" +msgstr "" + +#: ipalib/plugins/dns.py:3723 +msgid "DNS Forward Zone" +msgstr "" + +#: ipalib/plugins/dns.py:3732 +msgid "Create new DNS forward zone." +msgstr "" + +#: ipalib/plugins/dns.py:3746 ipalib/plugins/dns.py:3786 +msgid "Please specify forwarders." +msgstr "" + +#: ipalib/plugins/dns.py:3753 +msgid "Delete DNS forward zone." +msgstr "" + +#: ipalib/plugins/dns.py:3755 +#, python-format +msgid "Deleted DNS forward zone \"%(value)s\"" +msgstr "" + +#: ipalib/plugins/dns.py:3760 +msgid "Modify DNS forward zone." +msgstr "" + +#: ipalib/plugins/dns.py:3793 +msgid "Search for DNS forward zones." +msgstr "" + +#: ipalib/plugins/dns.py:3798 +msgid "Display information about a DNS forward zone." +msgstr "" + +#: ipalib/plugins/dns.py:3805 +msgid "Disable DNS Forward Zone." +msgstr "" + +#: ipalib/plugins/dns.py:3806 +#, python-format +msgid "Disabled DNS forward zone \"%(value)s\"" +msgstr "" + +#: ipalib/plugins/dns.py:3811 +msgid "Enable DNS Forward Zone." +msgstr "" + +#: ipalib/plugins/dns.py:3812 +#, python-format +msgid "Enabled DNS forward zone \"%(value)s\"" +msgstr "" + +#: ipalib/plugins/dns.py:3817 +msgid "Add a permission for per-forward zone access delegation." +msgstr "" + +#: ipalib/plugins/dns.py:3822 +msgid "Remove a permission for per-forward zone access delegation." +msgstr "" + +#: ipalib/plugins/group.py:34 msgid "" "\n" "Groups of users\n" @@ -3764,173 +4124,173 @@ msgid "" " ipa group-show ad_admins_external\n" msgstr "" -#: ipalib/plugins/group.py:120 ipalib/plugins/group.py:229 -#: ipalib/plugins/group.py:449 ipalib/plugins/user.py:189 +#: ipalib/plugins/group.py:125 ipalib/plugins/group.py:295 +#: ipalib/plugins/group.py:532 ipalib/plugins/user.py:204 msgid "group" msgstr "" -#: ipalib/plugins/group.py:121 +#: ipalib/plugins/group.py:126 msgid "groups" msgstr "" -#: ipalib/plugins/group.py:140 ipalib/plugins/hbacrule.py:190 -#: ipalib/plugins/internal.py:495 ipalib/plugins/selinuxusermap.py:195 -#: ipalib/plugins/sudorule.py:159 +#: ipalib/plugins/group.py:207 ipalib/plugins/hbacrule.py:244 +#: ipalib/plugins/internal.py:511 ipalib/plugins/selinuxusermap.py:238 +#: ipalib/plugins/sudorule.py:271 msgid "User Groups" msgstr "" -#: ipalib/plugins/group.py:141 +#: ipalib/plugins/group.py:208 msgid "User Group" msgstr "" -#: ipalib/plugins/group.py:149 +#: ipalib/plugins/group.py:216 msgid "Group name" msgstr "" -#: ipalib/plugins/group.py:156 ipalib/plugins/sudocmdgroup.py:79 +#: ipalib/plugins/group.py:223 ipalib/plugins/sudocmdgroup.py:123 msgid "Group description" msgstr "" -#: ipalib/plugins/group.py:160 ipalib/plugins/user.py:311 +#: ipalib/plugins/group.py:227 ipalib/plugins/user.py:519 msgid "GID" msgstr "" -#: ipalib/plugins/group.py:161 +#: ipalib/plugins/group.py:228 msgid "GID (use this option to set it manually)" msgstr "" -#: ipalib/plugins/group.py:170 +#: ipalib/plugins/group.py:236 msgid "External member" msgstr "" -#: ipalib/plugins/group.py:171 +#: ipalib/plugins/group.py:237 msgid "Members of a trusted domain in DOM\\name or name@domain form" msgstr "" -#: ipalib/plugins/group.py:177 +#: ipalib/plugins/group.py:245 msgid "Create a new group." msgstr "" -#: ipalib/plugins/group.py:179 +#: ipalib/plugins/group.py:247 #, python-format msgid "Added group \"%(value)s\"" msgstr "" -#: ipalib/plugins/group.py:184 +#: ipalib/plugins/group.py:252 msgid "Create as a non-POSIX group" msgstr "" -#: ipalib/plugins/group.py:189 +#: ipalib/plugins/group.py:257 msgid "Allow adding external non-IPA members from trusted domains" msgstr "" -#: ipalib/plugins/group.py:214 +#: ipalib/plugins/group.py:280 msgid "Delete group." msgstr "" -#: ipalib/plugins/group.py:216 +#: ipalib/plugins/group.py:282 #, python-format msgid "Deleted group \"%(value)s\"" msgstr "" -#: ipalib/plugins/group.py:230 +#: ipalib/plugins/group.py:296 msgid "privileged group" msgstr "" -#: ipalib/plugins/group.py:248 +#: ipalib/plugins/group.py:313 msgid "Modify a group." msgstr "" -#: ipalib/plugins/group.py:250 +#: ipalib/plugins/group.py:315 #, python-format msgid "Modified group \"%(value)s\"" msgstr "" -#: ipalib/plugins/group.py:255 +#: ipalib/plugins/group.py:320 msgid "change to a POSIX group" msgstr "" -#: ipalib/plugins/group.py:259 +#: ipalib/plugins/group.py:324 msgid "change to support external non-IPA members from trusted domains" msgstr "" -#: ipalib/plugins/group.py:318 +#: ipalib/plugins/group.py:384 msgid "Search for groups." msgstr "" -#: ipalib/plugins/group.py:323 +#: ipalib/plugins/group.py:389 #, python-format msgid "%(count)d group matched" msgid_plural "%(count)d groups matched" msgstr[0] "" msgstr[1] "" -#: ipalib/plugins/group.py:329 +#: ipalib/plugins/group.py:395 msgid "search for private groups" msgstr "" -#: ipalib/plugins/group.py:333 +#: ipalib/plugins/group.py:399 msgid "search for POSIX groups" msgstr "" -#: ipalib/plugins/group.py:337 +#: ipalib/plugins/group.py:403 msgid "" "search for groups with support of external non-IPA members from trusted " "domains" msgstr "" -#: ipalib/plugins/group.py:341 +#: ipalib/plugins/group.py:407 msgid "search for non-POSIX groups" msgstr "" -#: ipalib/plugins/group.py:388 +#: ipalib/plugins/group.py:453 msgid "Display information about a named group." msgstr "" -#: ipalib/plugins/group.py:394 +#: ipalib/plugins/group.py:474 msgid "Add members to a group." msgstr "" -#: ipalib/plugins/group.py:403 ipalib/plugins/group.py:457 -#: ipalib/plugins/hbactest.py:382 +#: ipalib/plugins/group.py:483 ipalib/plugins/group.py:540 +#: ipalib/plugins/hbactest.py:386 msgid "" "Cannot perform external member validation without Samba 4 support installed. " "Make sure you have installed server-trust-ad sub-package of IPA on the server" msgstr "" -#: ipalib/plugins/group.py:408 ipalib/plugins/group.py:462 -#: ipalib/plugins/trust.py:416 ipalib/plugins/trust.py:1244 +#: ipalib/plugins/group.py:488 ipalib/plugins/group.py:545 +#: ipalib/plugins/trust.py:561 ipalib/plugins/trust.py:1334 msgid "" "Cannot perform join operation without own domain configured. Make sure you " "have run ipa-adtrust-install on the IPA server first" msgstr "" -#: ipalib/plugins/group.py:436 +#: ipalib/plugins/group.py:519 msgid "Remove members from a group." msgstr "" -#: ipalib/plugins/group.py:490 +#: ipalib/plugins/group.py:576 msgid "Detach a managed group from a user." msgstr "" -#: ipalib/plugins/group.py:493 +#: ipalib/plugins/group.py:579 #, python-format msgid "Detached group \"%(value)s\" from user \"%(value)s\"" msgstr "" -#: ipalib/plugins/group.py:514 +#: ipalib/plugins/group.py:600 msgid "not allowed to modify user entries" msgstr "" -#: ipalib/plugins/group.py:520 +#: ipalib/plugins/group.py:606 msgid "not allowed to modify group entries" msgstr "" -#: ipalib/plugins/group.py:539 +#: ipalib/plugins/group.py:625 msgid "Not a managed group" msgstr "" -#: ipalib/plugins/hbacrule.py:25 +#: ipalib/plugins/hbacrule.py:26 msgid "" "\n" "Host-based access control\n" @@ -3981,221 +4341,207 @@ msgid "" " ipa hbacrule-del allow_server\n" msgstr "" -#: ipalib/plugins/hbacrule.py:89 +#: ipalib/plugins/hbacrule.py:91 msgid "Host-based access control commands" msgstr "" -#: ipalib/plugins/hbacrule.py:93 +#: ipalib/plugins/hbacrule.py:95 msgid "The deny type has been deprecated." msgstr "" -#: ipalib/plugins/hbacrule.py:115 +#: ipalib/plugins/hbacrule.py:118 msgid "HBAC rule" msgstr "" -#: ipalib/plugins/hbacrule.py:116 +#: ipalib/plugins/hbacrule.py:119 msgid "HBAC rules" msgstr "" -#: ipalib/plugins/hbacrule.py:134 +#: ipalib/plugins/hbacrule.py:188 msgid "HBAC Rules" msgstr "" -#: ipalib/plugins/hbacrule.py:135 ipalib/plugins/selinuxusermap.py:167 +#: ipalib/plugins/hbacrule.py:189 ipalib/plugins/selinuxusermap.py:210 msgid "HBAC Rule" msgstr "" -#: ipalib/plugins/hbacrule.py:140 ipalib/plugins/selinuxusermap.py:158 -#: ipalib/plugins/sudorule.py:106 +#: ipalib/plugins/hbacrule.py:194 ipalib/plugins/selinuxusermap.py:201 +#: ipalib/plugins/sudorule.py:218 msgid "Rule name" msgstr "" -#: ipalib/plugins/hbacrule.py:145 +#: ipalib/plugins/hbacrule.py:199 msgid "Rule type (allow)" msgstr "" -#: ipalib/plugins/hbacrule.py:146 +#: ipalib/plugins/hbacrule.py:200 msgid "Rule type" msgstr "" -#: ipalib/plugins/hbacrule.py:156 ipalib/plugins/netgroup.py:139 -#: ipalib/plugins/selinuxusermap.py:172 ipalib/plugins/sudorule.py:119 +#: ipalib/plugins/hbacrule.py:210 ipalib/plugins/netgroup.py:196 +#: ipalib/plugins/selinuxusermap.py:215 ipalib/plugins/sudorule.py:231 msgid "User category" msgstr "" -#: ipalib/plugins/hbacrule.py:157 ipalib/plugins/netgroup.py:140 -#: ipalib/plugins/selinuxusermap.py:173 ipalib/plugins/sudorule.py:120 +#: ipalib/plugins/hbacrule.py:211 ipalib/plugins/netgroup.py:197 +#: ipalib/plugins/selinuxusermap.py:216 ipalib/plugins/sudorule.py:232 msgid "User category the rule applies to" msgstr "" -#: ipalib/plugins/hbacrule.py:162 ipalib/plugins/netgroup.py:145 -#: ipalib/plugins/selinuxusermap.py:178 ipalib/plugins/sudorule.py:125 +#: ipalib/plugins/hbacrule.py:216 ipalib/plugins/netgroup.py:202 +#: ipalib/plugins/selinuxusermap.py:221 ipalib/plugins/sudorule.py:237 msgid "Host category" msgstr "" -#: ipalib/plugins/hbacrule.py:163 ipalib/plugins/netgroup.py:146 -#: ipalib/plugins/selinuxusermap.py:179 ipalib/plugins/sudorule.py:126 +#: ipalib/plugins/hbacrule.py:217 ipalib/plugins/netgroup.py:203 +#: ipalib/plugins/selinuxusermap.py:222 ipalib/plugins/sudorule.py:238 msgid "Host category the rule applies to" msgstr "" -#: ipalib/plugins/hbacrule.py:169 +#: ipalib/plugins/hbacrule.py:223 msgid "Service category" msgstr "" -#: ipalib/plugins/hbacrule.py:170 +#: ipalib/plugins/hbacrule.py:224 msgid "Service category the rule applies to" msgstr "" -#: ipalib/plugins/hbacrule.py:182 ipalib/plugins/internal.py:658 -#: ipalib/plugins/selinuxusermap.py:187 ipalib/plugins/sudorule.py:114 +#: ipalib/plugins/hbacrule.py:236 ipalib/plugins/internal.py:686 +#: ipalib/plugins/selinuxusermap.py:230 ipalib/plugins/sudorule.py:226 msgid "Enabled" msgstr "" -#: ipalib/plugins/hbacrule.py:186 ipalib/plugins/internal.py:496 -#: ipalib/plugins/selinuxusermap.py:191 ipalib/plugins/sudorule.py:155 -#: ipalib/plugins/user.py:225 -msgid "Users" -msgstr "" - -#: ipalib/plugins/hbacrule.py:194 ipalib/plugins/host.py:255 -#: ipalib/plugins/internal.py:490 ipalib/plugins/selinuxusermap.py:199 -#: ipalib/plugins/sudorule.py:163 -msgid "Hosts" -msgstr "" - -#: ipalib/plugins/hbacrule.py:198 ipalib/plugins/hostgroup.py:75 -#: ipalib/plugins/internal.py:489 ipalib/plugins/selinuxusermap.py:203 -#: ipalib/plugins/sudorule.py:167 +#: ipalib/plugins/hbacrule.py:252 ipalib/plugins/hostgroup.py:129 +#: ipalib/plugins/internal.py:505 ipalib/plugins/selinuxusermap.py:246 +#: ipalib/plugins/sudorule.py:284 msgid "Host Groups" msgstr "" -#: ipalib/plugins/hbacrule.py:204 ipalib/plugins/internal.py:437 -#: ipalib/plugins/service.py:315 +#: ipalib/plugins/hbacrule.py:258 ipalib/plugins/internal.py:453 +#: ipalib/plugins/service.py:365 msgid "Services" msgstr "" -#: ipalib/plugins/hbacrule.py:208 +#: ipalib/plugins/hbacrule.py:262 msgid "Service Groups" msgstr "" -#: ipalib/plugins/hbacrule.py:218 +#: ipalib/plugins/hbacrule.py:272 msgid "Create a new HBAC rule." msgstr "" -#: ipalib/plugins/hbacrule.py:220 +#: ipalib/plugins/hbacrule.py:274 #, python-format msgid "Added HBAC rule \"%(value)s\"" msgstr "" -#: ipalib/plugins/hbacrule.py:232 +#: ipalib/plugins/hbacrule.py:286 msgid "Delete an HBAC rule." msgstr "" -#: ipalib/plugins/hbacrule.py:234 +#: ipalib/plugins/hbacrule.py:288 #, python-format msgid "Deleted HBAC rule \"%(value)s\"" msgstr "" -#: ipalib/plugins/hbacrule.py:249 +#: ipalib/plugins/hbacrule.py:303 msgid "Modify an HBAC rule." msgstr "" -#: ipalib/plugins/hbacrule.py:251 +#: ipalib/plugins/hbacrule.py:305 #, python-format msgid "Modified HBAC rule \"%(value)s\"" msgstr "" -#: ipalib/plugins/hbacrule.py:261 ipalib/plugins/netgroup.py:213 -#: ipalib/plugins/sudorule.py:289 +#: ipalib/plugins/hbacrule.py:316 ipalib/plugins/netgroup.py:269 msgid "user category cannot be set to 'all' while there are allowed users" msgstr "" -#: ipalib/plugins/hbacrule.py:263 ipalib/plugins/netgroup.py:215 -#: ipalib/plugins/sudorule.py:291 +#: ipalib/plugins/hbacrule.py:318 ipalib/plugins/netgroup.py:271 msgid "host category cannot be set to 'all' while there are allowed hosts" msgstr "" -#: ipalib/plugins/hbacrule.py:265 +#: ipalib/plugins/hbacrule.py:320 msgid "" "service category cannot be set to 'all' while there are allowed services" msgstr "" -#: ipalib/plugins/hbacrule.py:272 +#: ipalib/plugins/hbacrule.py:327 msgid "Search for HBAC rules." msgstr "" -#: ipalib/plugins/hbacrule.py:275 +#: ipalib/plugins/hbacrule.py:330 #, python-format msgid "%(count)d HBAC rule matched" msgid_plural "%(count)d HBAC rules matched" msgstr[0] "" msgstr[1] "" -#: ipalib/plugins/hbacrule.py:282 +#: ipalib/plugins/hbacrule.py:337 msgid "Display the properties of an HBAC rule." msgstr "" -#: ipalib/plugins/hbacrule.py:288 +#: ipalib/plugins/hbacrule.py:343 msgid "Enable an HBAC rule." msgstr "" -#: ipalib/plugins/hbacrule.py:290 +#: ipalib/plugins/hbacrule.py:345 #, python-format msgid "Enabled HBAC rule \"%(value)s\"" msgstr "" -#: ipalib/plugins/hbacrule.py:315 +#: ipalib/plugins/hbacrule.py:373 msgid "Disable an HBAC rule." msgstr "" -#: ipalib/plugins/hbacrule.py:317 +#: ipalib/plugins/hbacrule.py:375 #, python-format msgid "Disabled HBAC rule \"%(value)s\"" msgstr "" -#: ipalib/plugins/hbacrule.py:349 ipalib/plugins/hbacrule.py:389 +#: ipalib/plugins/hbacrule.py:409 ipalib/plugins/hbacrule.py:449 msgid "Access time" msgstr "" -#: ipalib/plugins/hbacrule.py:423 +#: ipalib/plugins/hbacrule.py:484 msgid "Add users and groups to an HBAC rule." msgstr "" -#: ipalib/plugins/hbacrule.py:437 ipalib/plugins/selinuxusermap.py:460 -#: ipalib/plugins/sudorule.py:439 +#: ipalib/plugins/hbacrule.py:499 ipalib/plugins/selinuxusermap.py:509 +#: ipalib/plugins/sudorule.py:590 msgid "users cannot be added when user category='all'" msgstr "" -#: ipalib/plugins/hbacrule.py:444 +#: ipalib/plugins/hbacrule.py:506 msgid "Remove users and groups from an HBAC rule." msgstr "" -#: ipalib/plugins/hbacrule.py:453 +#: ipalib/plugins/hbacrule.py:515 msgid "Add target hosts and hostgroups to an HBAC rule." msgstr "" -#: ipalib/plugins/hbacrule.py:467 ipalib/plugins/selinuxusermap.py:492 -#: ipalib/plugins/sudorule.py:475 +#: ipalib/plugins/hbacrule.py:530 ipalib/plugins/selinuxusermap.py:542 +#: ipalib/plugins/sudorule.py:644 msgid "hosts cannot be added when host category='all'" msgstr "" -#: ipalib/plugins/hbacrule.py:474 +#: ipalib/plugins/hbacrule.py:537 msgid "Remove target hosts and hostgroups from an HBAC rule." msgstr "" -#: ipalib/plugins/hbacrule.py:507 +#: ipalib/plugins/hbacrule.py:570 msgid "Add services to an HBAC rule." msgstr "" -#: ipalib/plugins/hbacrule.py:521 +#: ipalib/plugins/hbacrule.py:585 msgid "services cannot be added when service category='all'" msgstr "" -#: ipalib/plugins/hbacrule.py:528 +#: ipalib/plugins/hbacrule.py:592 msgid "Remove service and service groups from an HBAC rule." msgstr "" -#: ipalib/plugins/hbacsvc.py:27 +#: ipalib/plugins/hbacsvc.py:28 msgid "" "\n" "HBAC Services\n" @@ -4220,77 +4566,77 @@ msgid "" "\n" msgstr "" -#: ipalib/plugins/hbacsvc.py:50 ipalib/plugins/hbacsvcgroup.py:45 +#: ipalib/plugins/hbacsvc.py:53 ipalib/plugins/hbacsvcgroup.py:48 msgid "Host based access control commands" msgstr "" -#: ipalib/plugins/hbacsvc.py:57 ipalib/plugins/hbacsvc.py:73 +#: ipalib/plugins/hbacsvc.py:61 ipalib/plugins/hbacsvc.py:102 msgid "HBAC service" msgstr "" -#: ipalib/plugins/hbacsvc.py:58 +#: ipalib/plugins/hbacsvc.py:62 msgid "HBAC services" msgstr "" -#: ipalib/plugins/hbacsvc.py:66 +#: ipalib/plugins/hbacsvc.py:95 msgid "HBAC Services" msgstr "" -#: ipalib/plugins/hbacsvc.py:67 +#: ipalib/plugins/hbacsvc.py:96 msgid "HBAC Service" msgstr "" -#: ipalib/plugins/hbacsvc.py:72 +#: ipalib/plugins/hbacsvc.py:101 msgid "Service name" msgstr "" -#: ipalib/plugins/hbacsvc.py:80 +#: ipalib/plugins/hbacsvc.py:109 msgid "HBAC service description" msgstr "" -#: ipalib/plugins/hbacsvc.py:88 +#: ipalib/plugins/hbacsvc.py:117 msgid "Add a new HBAC service." msgstr "" -#: ipalib/plugins/hbacsvc.py:90 +#: ipalib/plugins/hbacsvc.py:119 #, python-format msgid "Added HBAC service \"%(value)s\"" msgstr "" -#: ipalib/plugins/hbacsvc.py:96 +#: ipalib/plugins/hbacsvc.py:125 msgid "Delete an existing HBAC service." msgstr "" -#: ipalib/plugins/hbacsvc.py:98 +#: ipalib/plugins/hbacsvc.py:127 #, python-format msgid "Deleted HBAC service \"%(value)s\"" msgstr "" -#: ipalib/plugins/hbacsvc.py:104 +#: ipalib/plugins/hbacsvc.py:133 msgid "Modify an HBAC service." msgstr "" -#: ipalib/plugins/hbacsvc.py:106 +#: ipalib/plugins/hbacsvc.py:135 #, python-format msgid "Modified HBAC service \"%(value)s\"" msgstr "" -#: ipalib/plugins/hbacsvc.py:112 +#: ipalib/plugins/hbacsvc.py:141 msgid "Search for HBAC services." msgstr "" -#: ipalib/plugins/hbacsvc.py:115 +#: ipalib/plugins/hbacsvc.py:144 #, python-format msgid "%(count)d HBAC service matched" msgid_plural "%(count)d HBAC services matched" msgstr[0] "" msgstr[1] "" -#: ipalib/plugins/hbacsvc.py:122 +#: ipalib/plugins/hbacsvc.py:151 msgid "Display information about an HBAC service." msgstr "" -#: ipalib/plugins/hbacsvcgroup.py:24 +#: ipalib/plugins/hbacsvcgroup.py:25 msgid "" "\n" "HBAC Service Groups\n" @@ -4313,81 +4659,81 @@ msgid "" " ipa hbacsvcgroup-del login\n" msgstr "" -#: ipalib/plugins/hbacsvcgroup.py:52 +#: ipalib/plugins/hbacsvcgroup.py:56 msgid "HBAC service group" msgstr "" -#: ipalib/plugins/hbacsvcgroup.py:53 +#: ipalib/plugins/hbacsvcgroup.py:57 msgid "HBAC service groups" msgstr "" -#: ipalib/plugins/hbacsvcgroup.py:61 +#: ipalib/plugins/hbacsvcgroup.py:100 msgid "HBAC Service Groups" msgstr "" -#: ipalib/plugins/hbacsvcgroup.py:62 +#: ipalib/plugins/hbacsvcgroup.py:101 msgid "HBAC Service Group" msgstr "" -#: ipalib/plugins/hbacsvcgroup.py:67 +#: ipalib/plugins/hbacsvcgroup.py:106 msgid "Service group name" msgstr "" -#: ipalib/plugins/hbacsvcgroup.py:74 +#: ipalib/plugins/hbacsvcgroup.py:113 msgid "HBAC service group description" msgstr "" -#: ipalib/plugins/hbacsvcgroup.py:82 +#: ipalib/plugins/hbacsvcgroup.py:121 msgid "Add a new HBAC service group." msgstr "" -#: ipalib/plugins/hbacsvcgroup.py:84 +#: ipalib/plugins/hbacsvcgroup.py:123 #, python-format msgid "Added HBAC service group \"%(value)s\"" msgstr "" -#: ipalib/plugins/hbacsvcgroup.py:90 +#: ipalib/plugins/hbacsvcgroup.py:129 msgid "Delete an HBAC service group." msgstr "" -#: ipalib/plugins/hbacsvcgroup.py:92 +#: ipalib/plugins/hbacsvcgroup.py:131 #, python-format msgid "Deleted HBAC service group \"%(value)s\"" msgstr "" -#: ipalib/plugins/hbacsvcgroup.py:98 +#: ipalib/plugins/hbacsvcgroup.py:137 msgid "Modify an HBAC service group." msgstr "" -#: ipalib/plugins/hbacsvcgroup.py:100 +#: ipalib/plugins/hbacsvcgroup.py:139 #, python-format msgid "Modified HBAC service group \"%(value)s\"" msgstr "" -#: ipalib/plugins/hbacsvcgroup.py:106 +#: ipalib/plugins/hbacsvcgroup.py:145 msgid "Search for an HBAC service group." msgstr "" -#: ipalib/plugins/hbacsvcgroup.py:109 +#: ipalib/plugins/hbacsvcgroup.py:148 #, python-format msgid "%(count)d HBAC service group matched" msgid_plural "%(count)d HBAC service groups matched" msgstr[0] "" msgstr[1] "" -#: ipalib/plugins/hbacsvcgroup.py:116 +#: ipalib/plugins/hbacsvcgroup.py:155 msgid "Display information about an HBAC service group." msgstr "" -#: ipalib/plugins/hbacsvcgroup.py:122 +#: ipalib/plugins/hbacsvcgroup.py:161 msgid "Add members to an HBAC service group." msgstr "" -#: ipalib/plugins/hbacsvcgroup.py:128 +#: ipalib/plugins/hbacsvcgroup.py:167 msgid "Remove members from an HBAC service group." msgstr "" -#: ipalib/plugins/hbactest.py:35 +#: ipalib/plugins/hbactest.py:36 msgid "" "\n" "Simulate use of Host-based access controls\n" @@ -4585,75 +4931,75 @@ msgid "" " Not matched rules: can_login\n" msgstr "" -#: ipalib/plugins/hbactest.py:241 +#: ipalib/plugins/hbactest.py:245 msgid "Simulate use of Host-based access controls" msgstr "" -#: ipalib/plugins/hbactest.py:245 +#: ipalib/plugins/hbactest.py:249 msgid "Warning" msgstr "" -#: ipalib/plugins/hbactest.py:246 +#: ipalib/plugins/hbactest.py:250 msgid "Matched rules" msgstr "" -#: ipalib/plugins/hbactest.py:247 +#: ipalib/plugins/hbactest.py:251 msgid "Not matched rules" msgstr "" -#: ipalib/plugins/hbactest.py:248 +#: ipalib/plugins/hbactest.py:252 msgid "Non-existent or invalid rules" msgstr "" -#: ipalib/plugins/hbactest.py:249 +#: ipalib/plugins/hbactest.py:253 msgid "Result of simulation" msgstr "" -#: ipalib/plugins/hbactest.py:255 ipalib/plugins/krbtpolicy.py:85 -#: ipalib/plugins/passwd.py:70 +#: ipalib/plugins/hbactest.py:259 ipalib/plugins/krbtpolicy.py:124 +#: ipalib/plugins/passwd.py:74 msgid "User name" msgstr "" -#: ipalib/plugins/hbactest.py:261 +#: ipalib/plugins/hbactest.py:265 msgid "Target host" msgstr "" -#: ipalib/plugins/hbactest.py:269 +#: ipalib/plugins/hbactest.py:273 msgid "Rules to test. If not specified, --enabled is assumed" msgstr "" -#: ipalib/plugins/hbactest.py:274 +#: ipalib/plugins/hbactest.py:278 msgid "Hide details which rules are matched, not matched, or invalid" msgstr "" -#: ipalib/plugins/hbactest.py:278 +#: ipalib/plugins/hbactest.py:282 msgid "Include all enabled IPA rules into test [default]" msgstr "" -#: ipalib/plugins/hbactest.py:282 +#: ipalib/plugins/hbactest.py:286 msgid "Include all disabled IPA rules into test" msgstr "" -#: ipalib/plugins/hbactest.py:286 +#: ipalib/plugins/hbactest.py:290 msgid "Maximum number of rules to process when no --rules is specified" msgstr "" -#: ipalib/plugins/hbactest.py:364 +#: ipalib/plugins/hbactest.py:368 msgid "Unresolved rules in --rules" msgstr "" -#: ipalib/plugins/hbactest.py:388 ipalib/plugins/trust.py:555 +#: ipalib/plugins/hbactest.py:392 ipalib/plugins/trust.py:230 msgid "" "Cannot search in trusted domains without own domain configured. Make sure " "you have run ipa-adtrust-install on the IPA server first" msgstr "" -#: ipalib/plugins/hbactest.py:472 +#: ipalib/plugins/hbactest.py:478 #, python-format msgid "Access granted: %s" msgstr "" -#: ipalib/plugins/host.py:48 +#: ipalib/plugins/host.py:49 msgid "" "\n" "Hosts/Machines\n" @@ -4665,7 +5011,7 @@ msgid "" "- every enrolled client generates a host entry\n" msgstr "" -#: ipalib/plugins/host.py:56 +#: ipalib/plugins/host.py:57 msgid "" "\n" "ENROLLMENT:\n" @@ -4681,7 +5027,7 @@ msgid "" "3. The host has been created with a one-time password.\n" msgstr "" -#: ipalib/plugins/host.py:68 +#: ipalib/plugins/host.py:69 msgid "" "\n" "RE-ENROLLMENT:\n" @@ -4696,13 +5042,7 @@ msgid "" "the OS that it runs, etc.\n" msgstr "" -#: ipalib/plugins/host.py:78 -msgid "" -"\n" -"EXAMPLES:\n" -msgstr "" - -#: ipalib/plugins/host.py:80 +#: ipalib/plugins/host.py:81 msgid "" "\n" " Add a new host:\n" @@ -4710,274 +5050,279 @@ msgid "" "com\n" msgstr "" -#: ipalib/plugins/host.py:83 +#: ipalib/plugins/host.py:84 msgid "" "\n" " Delete a host:\n" " ipa host-del test.example.com\n" msgstr "" -#: ipalib/plugins/host.py:86 +#: ipalib/plugins/host.py:87 msgid "" "\n" " Add a new host with a one-time password:\n" " ipa host-add --os='Fedora 12' --password=Secret123 test.example.com\n" msgstr "" -#: ipalib/plugins/host.py:89 +#: ipalib/plugins/host.py:90 msgid "" "\n" " Add a new host with a random one-time password:\n" " ipa host-add --os='Fedora 12' --random test.example.com\n" msgstr "" -#: ipalib/plugins/host.py:92 +#: ipalib/plugins/host.py:93 msgid "" "\n" " Modify information about a host:\n" " ipa host-mod --os='Fedora 12' test.example.com\n" msgstr "" -#: ipalib/plugins/host.py:95 +#: ipalib/plugins/host.py:96 msgid "" "\n" " Remove SSH public keys of a host and update DNS to reflect this change:\n" " ipa host-mod --sshpubkey= --updatedns test.example.com\n" msgstr "" -#: ipalib/plugins/host.py:98 +#: ipalib/plugins/host.py:99 msgid "" "\n" " Disable the host Kerberos key, SSL certificate and all of its services:\n" " ipa host-disable test.example.com\n" msgstr "" -#: ipalib/plugins/host.py:101 +#: ipalib/plugins/host.py:102 msgid "" "\n" " Add a host that can manage this host's keytab and certificate:\n" " ipa host-add-managedby --hosts=test2 test\n" msgstr "" -#: ipalib/plugins/host.py:157 ipalib/plugins/service.py:96 +#: ipalib/plugins/host.py:160 ipalib/plugins/service.py:99 msgid "Keytab" msgstr "" -#: ipalib/plugins/host.py:169 ipalib/plugins/internal.py:363 -#: ipalib/plugins/service.py:105 +#: ipalib/plugins/host.py:172 ipalib/plugins/internal.py:376 +#: ipalib/plugins/service.py:108 msgid "Serial Number" msgstr "" -#: ipalib/plugins/host.py:172 ipalib/plugins/internal.py:364 -#: ipalib/plugins/service.py:108 +#: ipalib/plugins/host.py:175 ipalib/plugins/internal.py:377 +#: ipalib/plugins/service.py:111 msgid "Serial Number (hex)" msgstr "" -#: ipalib/plugins/host.py:193 +#: ipalib/plugins/host.py:196 msgid "Failed managedby" msgstr "" -#: ipalib/plugins/host.py:196 ipalib/plugins/user.py:92 +#: ipalib/plugins/host.py:199 ipalib/plugins/user.py:95 msgid "SSH public key fingerprint" msgstr "" -#: ipalib/plugins/host.py:222 +#: ipalib/plugins/host.py:224 +#, python-format +msgid "invalid domain-name: %s" +msgstr "" + +#: ipalib/plugins/host.py:235 ipalib/plugins/sudorule.py:424 msgid "host" msgstr "" -#: ipalib/plugins/host.py:223 +#: ipalib/plugins/host.py:236 ipalib/plugins/sudorule.py:424 msgid "hosts" msgstr "" -#: ipalib/plugins/host.py:256 ipalib/plugins/internal.py:488 -#: ipalib/plugins/internal.py:539 +#: ipalib/plugins/host.py:374 ipalib/plugins/internal.py:504 +#: ipalib/plugins/internal.py:562 msgid "Host" msgstr "" -#: ipalib/plugins/host.py:261 +#: ipalib/plugins/host.py:379 msgid "Host name" msgstr "" -#: ipalib/plugins/host.py:268 +#: ipalib/plugins/host.py:386 msgid "A description of this host" msgstr "" -#: ipalib/plugins/host.py:272 +#: ipalib/plugins/host.py:390 msgid "Locality" msgstr "" -#: ipalib/plugins/host.py:273 +#: ipalib/plugins/host.py:391 msgid "Host locality (e.g. \"Baltimore, MD\")" msgstr "" -#: ipalib/plugins/host.py:278 +#: ipalib/plugins/host.py:396 msgid "Host location (e.g. \"Lab 2\")" msgstr "" -#: ipalib/plugins/host.py:282 +#: ipalib/plugins/host.py:400 msgid "Platform" msgstr "" -#: ipalib/plugins/host.py:283 +#: ipalib/plugins/host.py:401 msgid "Host hardware platform (e.g. \"Lenovo T61\")" msgstr "" -#: ipalib/plugins/host.py:287 +#: ipalib/plugins/host.py:405 msgid "Operating system" msgstr "" -#: ipalib/plugins/host.py:288 +#: ipalib/plugins/host.py:406 msgid "Host operating system and version (e.g. \"Fedora 9\")" msgstr "" -#: ipalib/plugins/host.py:292 +#: ipalib/plugins/host.py:410 msgid "User password" msgstr "" -#: ipalib/plugins/host.py:293 +#: ipalib/plugins/host.py:411 msgid "Password used in bulk enrollment" msgstr "" -#: ipalib/plugins/host.py:296 +#: ipalib/plugins/host.py:414 msgid "Generate a random password to be used in bulk enrollment" msgstr "" -#: ipalib/plugins/host.py:301 ipalib/plugins/user.py:301 +#: ipalib/plugins/host.py:419 ipalib/plugins/user.py:509 msgid "Random password" msgstr "" -#: ipalib/plugins/host.py:307 ipalib/plugins/service.py:329 +#: ipalib/plugins/host.py:425 ipalib/plugins/service.py:379 msgid "Base-64 encoded server certificate" msgstr "" -#: ipalib/plugins/host.py:310 ipalib/plugins/host.py:628 +#: ipalib/plugins/host.py:428 ipalib/plugins/host.py:751 msgid "Principal name" msgstr "" -#: ipalib/plugins/host.py:318 +#: ipalib/plugins/host.py:436 msgid "MAC address" msgstr "" -#: ipalib/plugins/host.py:319 +#: ipalib/plugins/host.py:437 msgid "Hardware MAC address(es) on this host" msgstr "" -#: ipalib/plugins/host.py:323 ipalib/plugins/user.py:363 +#: ipalib/plugins/host.py:441 ipalib/plugins/user.py:571 msgid "SSH public key" msgstr "" -#: ipalib/plugins/host.py:331 +#: ipalib/plugins/host.py:449 msgid "" "Host category (semantics placed on this attribute are for local " "interpretation)" msgstr "" -#: ipalib/plugins/host.py:391 +#: ipalib/plugins/host.py:510 msgid "Add a new host." msgstr "" -#: ipalib/plugins/host.py:394 +#: ipalib/plugins/host.py:513 #, python-format msgid "Added host \"%(value)s\"" msgstr "" -#: ipalib/plugins/host.py:399 +#: ipalib/plugins/host.py:518 msgid "force host name even if not in DNS" msgstr "" -#: ipalib/plugins/host.py:402 +#: ipalib/plugins/host.py:521 msgid "skip reverse DNS detection" msgstr "" -#: ipalib/plugins/host.py:405 +#: ipalib/plugins/host.py:524 msgid "Add the host to DNS with this IP address" msgstr "" -#: ipalib/plugins/host.py:486 +#: ipalib/plugins/host.py:609 #, python-format msgid "The host was added but the DNS update failed with: %(exc)s" msgstr "" -#: ipalib/plugins/host.py:507 +#: ipalib/plugins/host.py:630 msgid "Delete a host." msgstr "" -#: ipalib/plugins/host.py:509 +#: ipalib/plugins/host.py:632 #, python-format msgid "Deleted host \"%(value)s\"" msgstr "" -#: ipalib/plugins/host.py:514 +#: ipalib/plugins/host.py:637 msgid "Remove entries from DNS" msgstr "" -#: ipalib/plugins/host.py:619 +#: ipalib/plugins/host.py:742 msgid "Modify information about a host." msgstr "" -#: ipalib/plugins/host.py:622 +#: ipalib/plugins/host.py:745 #, python-format msgid "Modified host \"%(value)s\"" msgstr "" -#: ipalib/plugins/host.py:629 +#: ipalib/plugins/host.py:752 msgid "Kerberos principal name for this host" msgstr "" -#: ipalib/plugins/host.py:633 +#: ipalib/plugins/host.py:756 msgid "Update DNS entries" msgstr "" -#: ipalib/plugins/host.py:646 +#: ipalib/plugins/host.py:769 msgid "Password cannot be set on enrolled host." msgstr "" -#: ipalib/plugins/host.py:650 +#: ipalib/plugins/host.py:773 msgid "cn is immutable" msgstr "" -#: ipalib/plugins/host.py:769 +#: ipalib/plugins/host.py:890 msgid "Search for hosts." msgstr "" -#: ipalib/plugins/host.py:773 +#: ipalib/plugins/host.py:894 #, python-format msgid "%(count)d host matched" msgid_plural "%(count)d hosts matched" msgstr[0] "" msgstr[1] "" -#: ipalib/plugins/host.py:855 +#: ipalib/plugins/host.py:975 msgid "Display information about a host." msgstr "" -#: ipalib/plugins/host.py:860 ipalib/plugins/service.py:560 +#: ipalib/plugins/host.py:980 ipalib/plugins/service.py:608 msgid "file to store certificate in" msgstr "" -#: ipalib/plugins/host.py:892 ipalib/plugins/service.py:580 +#: ipalib/plugins/host.py:1012 ipalib/plugins/service.py:628 #, python-format msgid "Certificate stored in file '%(file)s'" msgstr "" -#: ipalib/plugins/host.py:903 +#: ipalib/plugins/host.py:1023 msgid "Disable the Kerberos key, SSL certificate and all services of a host." msgstr "" -#: ipalib/plugins/host.py:906 +#: ipalib/plugins/host.py:1026 #, python-format msgid "Disabled host \"%(value)s\"" msgstr "" -#: ipalib/plugins/host.py:999 +#: ipalib/plugins/host.py:1120 msgid "Add hosts that can manage this host." msgstr "" -#: ipalib/plugins/host.py:1014 +#: ipalib/plugins/host.py:1135 ipalib/plugins/otptoken.py:390 msgid "Remove hosts that can manage this host." msgstr "" -#: ipalib/plugins/hostgroup.py:26 +#: ipalib/plugins/hostgroup.py:27 msgid "" "\n" "Groups of hosts.\n" @@ -5009,88 +5354,88 @@ msgid "" " ipa hostgroup-del baltimore\n" msgstr "" -#: ipalib/plugins/hostgroup.py:61 +#: ipalib/plugins/hostgroup.py:65 msgid "host group" msgstr "" -#: ipalib/plugins/hostgroup.py:62 +#: ipalib/plugins/hostgroup.py:66 msgid "host groups" msgstr "" -#: ipalib/plugins/hostgroup.py:76 +#: ipalib/plugins/hostgroup.py:130 msgid "Host Group" msgstr "" -#: ipalib/plugins/hostgroup.py:83 +#: ipalib/plugins/hostgroup.py:137 msgid "Host-group" msgstr "" -#: ipalib/plugins/hostgroup.py:84 +#: ipalib/plugins/hostgroup.py:138 msgid "Name of host-group" msgstr "" -#: ipalib/plugins/hostgroup.py:91 +#: ipalib/plugins/hostgroup.py:145 msgid "A description of this host-group" msgstr "" -#: ipalib/plugins/hostgroup.py:118 +#: ipalib/plugins/hostgroup.py:172 msgid "Add a new hostgroup." msgstr "" -#: ipalib/plugins/hostgroup.py:120 +#: ipalib/plugins/hostgroup.py:174 #, python-format msgid "Added hostgroup \"%(value)s\"" msgstr "" -#: ipalib/plugins/hostgroup.py:136 +#: ipalib/plugins/hostgroup.py:190 #, python-format msgid "" "netgroup with name \"%s\" already exists. Hostgroups and netgroups share a " "common namespace" msgstr "" -#: ipalib/plugins/hostgroup.py:159 +#: ipalib/plugins/hostgroup.py:213 msgid "Delete a hostgroup." msgstr "" -#: ipalib/plugins/hostgroup.py:161 +#: ipalib/plugins/hostgroup.py:215 #, python-format msgid "Deleted hostgroup \"%(value)s\"" msgstr "" -#: ipalib/plugins/hostgroup.py:167 +#: ipalib/plugins/hostgroup.py:221 msgid "Modify a hostgroup." msgstr "" -#: ipalib/plugins/hostgroup.py:169 +#: ipalib/plugins/hostgroup.py:223 #, python-format msgid "Modified hostgroup \"%(value)s\"" msgstr "" -#: ipalib/plugins/hostgroup.py:180 +#: ipalib/plugins/hostgroup.py:234 msgid "Search for hostgroups." msgstr "" -#: ipalib/plugins/hostgroup.py:184 +#: ipalib/plugins/hostgroup.py:238 #, python-format msgid "%(count)d hostgroup matched" msgid_plural "%(count)d hostgroups matched" msgstr[0] "" msgstr[1] "" -#: ipalib/plugins/hostgroup.py:199 +#: ipalib/plugins/hostgroup.py:252 msgid "Display information about a hostgroup." msgstr "" -#: ipalib/plugins/hostgroup.py:210 +#: ipalib/plugins/hostgroup.py:263 msgid "Add members to a hostgroup." msgstr "" -#: ipalib/plugins/hostgroup.py:221 +#: ipalib/plugins/hostgroup.py:274 msgid "Remove members from a hostgroup." msgstr "" -#: ipalib/plugins/idrange.py:33 +#: ipalib/plugins/idrange.py:34 msgid "" "\n" "ID ranges\n" @@ -5238,94 +5583,95 @@ msgid "" "modified to match the new range.\n" msgstr "" -#: ipalib/plugins/idrange.py:169 +#: ipalib/plugins/idrange.py:185 msgid "ID Ranges" msgstr "" -#: ipalib/plugins/idrange.py:170 +#: ipalib/plugins/idrange.py:186 msgid "ID Range" msgstr "" -#: ipalib/plugins/idrange.py:173 +#: ipalib/plugins/idrange.py:189 msgid "local domain range" msgstr "" -#: ipalib/plugins/idrange.py:174 +#: ipalib/plugins/idrange.py:190 msgid "Active Directory winsync range" msgstr "" -#: ipalib/plugins/idrange.py:175 ipalib/plugins/trust.py:289 +#: ipalib/plugins/idrange.py:191 ipalib/plugins/trust.py:425 msgid "Active Directory domain range" msgstr "" -#: ipalib/plugins/idrange.py:176 ipalib/plugins/trust.py:290 +#: ipalib/plugins/idrange.py:192 ipalib/plugins/trust.py:426 msgid "Active Directory trust range with POSIX attributes" msgstr "" -#: ipalib/plugins/idrange.py:178 +#: ipalib/plugins/idrange.py:194 msgid "IPA trust range" msgstr "" -#: ipalib/plugins/idrange.py:184 +#: ipalib/plugins/idrange.py:200 msgid "Range name" msgstr "" -#: ipalib/plugins/idrange.py:189 +#: ipalib/plugins/idrange.py:205 msgid "First Posix ID of the range" msgstr "" -#: ipalib/plugins/idrange.py:193 +#: ipalib/plugins/idrange.py:209 msgid "Number of IDs in the range" msgstr "" -#: ipalib/plugins/idrange.py:197 +#: ipalib/plugins/idrange.py:213 msgid "First RID of the corresponding RID range" msgstr "" -#: ipalib/plugins/idrange.py:201 +#: ipalib/plugins/idrange.py:217 msgid "First RID of the secondary RID range" msgstr "" -#: ipalib/plugins/idrange.py:206 +#: ipalib/plugins/idrange.py:222 msgid "Domain SID of the trusted domain" msgstr "" -#: ipalib/plugins/idrange.py:211 +#: ipalib/plugins/idrange.py:227 msgid "Name of the trusted domain" msgstr "" -#: ipalib/plugins/idrange.py:214 ipalib/plugins/internal.py:517 -#: ipalib/plugins/trust.py:323 +#: ipalib/plugins/idrange.py:230 ipalib/plugins/internal.py:537 +#: ipalib/plugins/trust.py:459 msgid "Range type" msgstr "" -#: ipalib/plugins/idrange.py:216 +#: ipalib/plugins/idrange.py:232 +#, python-brace-format msgid "ID range type, one of {vals}" msgstr "" -#: ipalib/plugins/idrange.py:284 +#: ipalib/plugins/idrange.py:300 msgid "" "range modification leaving objects with ID out of the defined range is not " "allowed" msgstr "" -#: ipalib/plugins/idrange.py:289 +#: ipalib/plugins/idrange.py:305 msgid "" "Cannot perform SID validation without Samba 4 support installed. Make sure " "you have installed server-trust-ad sub-package of IPA on the server" msgstr "" -#: ipalib/plugins/idrange.py:296 +#: ipalib/plugins/idrange.py:312 msgid "" "Cross-realm trusts are not configured. Make sure you have run ipa-adtrust-" "install on the IPA server first" msgstr "" -#: ipalib/plugins/idrange.py:308 +#: ipalib/plugins/idrange.py:324 msgid "SID is not recognized as a valid SID for a trusted domain" msgstr "" -#: ipalib/plugins/idrange.py:344 +#: ipalib/plugins/idrange.py:361 msgid "" "\n" " Add new ID range.\n" @@ -5365,754 +5711,814 @@ msgid "" " " msgstr "" -#: ipalib/plugins/idrange.py:376 +#: ipalib/plugins/idrange.py:393 #, python-format msgid "Added ID range \"%(value)s\"" msgstr "" -#: ipalib/plugins/idrange.py:449 ipalib/plugins/idrange.py:647 +#: ipalib/plugins/idrange.py:466 ipalib/plugins/idrange.py:680 msgid "Options dom-sid and dom-name cannot be used together" msgstr "" -#: ipalib/plugins/idrange.py:459 ipalib/plugins/idrange.py:659 +#: ipalib/plugins/idrange.py:476 ipalib/plugins/idrange.py:692 msgid "" "SID for the specified trusted domain name could not be found. Please specify " "the SID directly using dom-sid option." msgstr "" -#: ipalib/plugins/idrange.py:474 +#: ipalib/plugins/idrange.py:491 msgid "" "IPA Range type must be one of ipa-ad-trust or ipa-ad-trust-posix when SID of " "the trusted domain is specified." msgstr "" -#: ipalib/plugins/idrange.py:480 +#: ipalib/plugins/idrange.py:497 msgid "Options dom-sid/dom-name and secondary-rid-base cannot be used together" msgstr "" -#: ipalib/plugins/idrange.py:485 +#: ipalib/plugins/idrange.py:502 msgid "Options dom-sid/dom-name and rid-base must be used together" msgstr "" -#: ipalib/plugins/idrange.py:504 +#: ipalib/plugins/idrange.py:521 msgid "" "IPA Range type must not be one of ipa-ad-trust or ipa-ad-trust-posix when " "SID of the trusted domain is not specified." msgstr "" -#: ipalib/plugins/idrange.py:511 ipalib/plugins/idrange.py:689 +#: ipalib/plugins/idrange.py:528 ipalib/plugins/idrange.py:722 msgid "Options secondary-rid-base and rid-base must be used together" msgstr "" -#: ipalib/plugins/idrange.py:521 ipalib/plugins/idrange.py:712 +#: ipalib/plugins/idrange.py:538 ipalib/plugins/idrange.py:745 msgid "Primary RID range and secondary RID range cannot overlap" msgstr "" -#: ipalib/plugins/idrange.py:533 +#: ipalib/plugins/idrange.py:550 msgid "" "You must specify both rid-base and secondary-rid-base options, because ipa-" "adtrust-install has already been run." msgstr "" -#: ipalib/plugins/idrange.py:548 +#: ipalib/plugins/idrange.py:566 msgid "Delete an ID range." msgstr "" -#: ipalib/plugins/idrange.py:550 +#: ipalib/plugins/idrange.py:568 #, python-format msgid "Deleted ID range \"%(value)s\"" msgstr "" -#: ipalib/plugins/idrange.py:583 +#: ipalib/plugins/idrange.py:614 msgid "Search for ranges." msgstr "" -#: ipalib/plugins/idrange.py:586 +#: ipalib/plugins/idrange.py:617 #, python-format msgid "%(count)d range matched" msgid_plural "%(count)d ranges matched" msgstr[0] "" msgstr[1] "" -#: ipalib/plugins/idrange.py:604 +#: ipalib/plugins/idrange.py:636 msgid "Display information about a range." msgstr "" -#: ipalib/plugins/idrange.py:618 +#: ipalib/plugins/idrange.py:651 msgid "Modify ID range." msgstr "" -#: ipalib/plugins/idrange.py:620 +#: ipalib/plugins/idrange.py:653 #, python-format msgid "Modified ID range \"%(value)s\"" msgstr "" -#: ipalib/plugins/idrange.py:666 +#: ipalib/plugins/idrange.py:699 msgid "Options dom-sid and secondary-rid-base cannot be used together" msgstr "" -#: ipalib/plugins/idrange.py:671 +#: ipalib/plugins/idrange.py:704 msgid "Options dom-sid and rid-base must be used together" msgstr "" -#: ipalib/plugins/internal.py:44 ipalib/plugins/internal.py:53 +#: ipalib/plugins/internal.py:48 ipalib/plugins/internal.py:57 msgid "Name of object to export" msgstr "" -#: ipalib/plugins/internal.py:47 ipalib/plugins/internal.py:56 +#: ipalib/plugins/internal.py:51 ipalib/plugins/internal.py:60 msgid "Name of method to export" msgstr "" -#: ipalib/plugins/internal.py:59 +#: ipalib/plugins/internal.py:63 msgid "Name of command to export" msgstr "" -#: ipalib/plugins/internal.py:64 +#: ipalib/plugins/internal.py:68 msgid "Dict of JSON encoded IPA Objects" msgstr "" -#: ipalib/plugins/internal.py:65 +#: ipalib/plugins/internal.py:69 msgid "Dict of JSON encoded IPA Methods" msgstr "" -#: ipalib/plugins/internal.py:66 +#: ipalib/plugins/internal.py:70 msgid "Dict of JSON encoded IPA Commands" msgstr "" -#: ipalib/plugins/internal.py:147 +#: ipalib/plugins/internal.py:151 msgid "Your session has expired. Please re-login." msgstr "" -#: ipalib/plugins/internal.py:151 +#: ipalib/plugins/internal.py:155 msgid "Apply" msgstr "" -#: ipalib/plugins/internal.py:152 -msgid "Are you sure you want to proceed with the action." +#: ipalib/plugins/internal.py:156 +msgid "Rebuild auto membership" msgstr "" -#: ipalib/plugins/internal.py:153 -msgid "Are you sure you want to delete ${object}" +#: ipalib/plugins/internal.py:157 +msgid "Are you sure you want to rebuild auto membership?" msgstr "" -#: ipalib/plugins/internal.py:154 -msgid "Are you sure you want to disable ${object}" +#: ipalib/plugins/internal.py:159 +msgid "Are you sure you want to proceed with the action?" msgstr "" -#: ipalib/plugins/internal.py:155 -msgid "Are you sure you want to enable ${object}" +#: ipalib/plugins/internal.py:160 +#, python-brace-format +msgid "Are you sure you want to delete ${object}?" msgstr "" -#: ipalib/plugins/internal.py:156 +#: ipalib/plugins/internal.py:161 +#, python-brace-format +msgid "Are you sure you want to disable ${object}?" +msgstr "" + +#: ipalib/plugins/internal.py:162 +#, python-brace-format +msgid "Are you sure you want to enable ${object}?" +msgstr "" + +#: ipalib/plugins/internal.py:163 msgid "Actions" msgstr "" -#: ipalib/plugins/internal.py:160 +#: ipalib/plugins/internal.py:167 +#, python-brace-format msgid "Add RunAs ${other_entity} into ${entity} ${primary_key}" msgstr "" -#: ipalib/plugins/internal.py:161 +#: ipalib/plugins/internal.py:168 +#, python-brace-format msgid "Add RunAs Groups into ${entity} ${primary_key}" msgstr "" -#: ipalib/plugins/internal.py:162 +#: ipalib/plugins/internal.py:169 +#, python-brace-format msgid "Add ${other_entity} Managing ${entity} ${primary_key}" msgstr "" -#: ipalib/plugins/internal.py:163 +#: ipalib/plugins/internal.py:170 +#, python-brace-format msgid "Add ${other_entity} into ${entity} ${primary_key}" msgstr "" -#: ipalib/plugins/internal.py:164 +#: ipalib/plugins/internal.py:171 +#, python-brace-format msgid "Add Allow ${other_entity} into ${entity} ${primary_key}" msgstr "" -#: ipalib/plugins/internal.py:165 +#: ipalib/plugins/internal.py:172 +#, python-brace-format msgid "Add Deny ${other_entity} into ${entity} ${primary_key}" msgstr "" -#: ipalib/plugins/internal.py:166 +#: ipalib/plugins/internal.py:173 +#, python-brace-format msgid "Add ${entity} ${primary_key} into ${other_entity}" msgstr "" -#: ipalib/plugins/internal.py:168 +#: ipalib/plugins/internal.py:175 +#, python-brace-format msgid "${count} item(s) added" msgstr "" -#: ipalib/plugins/internal.py:169 +#: ipalib/plugins/internal.py:176 msgid "Direct Membership" msgstr "" -#: ipalib/plugins/internal.py:170 +#: ipalib/plugins/internal.py:177 +#, python-brace-format +msgid "Filter available ${other_entity}" +msgstr "" + +#: ipalib/plugins/internal.py:178 msgid "Indirect Membership" msgstr "" -#: ipalib/plugins/internal.py:171 +#: ipalib/plugins/internal.py:179 msgid "No entries." msgstr "" -#: ipalib/plugins/internal.py:172 +#: ipalib/plugins/internal.py:180 +#, python-brace-format msgid "Showing ${start} to ${end} of ${total} entries." msgstr "" -#: ipalib/plugins/internal.py:174 +#: ipalib/plugins/internal.py:182 +#, python-brace-format msgid "Remove RunAs ${other_entity} from ${entity} ${primary_key}" msgstr "" -#: ipalib/plugins/internal.py:175 +#: ipalib/plugins/internal.py:183 +#, python-brace-format msgid "Remove RunAs Groups from ${entity} ${primary_key}" msgstr "" -#: ipalib/plugins/internal.py:176 +#: ipalib/plugins/internal.py:184 +#, python-brace-format msgid "Remove ${other_entity} Managing ${entity} ${primary_key}" msgstr "" -#: ipalib/plugins/internal.py:177 +#: ipalib/plugins/internal.py:185 +#, python-brace-format msgid "Remove ${other_entity} from ${entity} ${primary_key}" msgstr "" -#: ipalib/plugins/internal.py:178 +#: ipalib/plugins/internal.py:186 +#, python-brace-format msgid "Remove Allow ${other_entity} from ${entity} ${primary_key}" msgstr "" -#: ipalib/plugins/internal.py:179 +#: ipalib/plugins/internal.py:187 +#, python-brace-format msgid "Remove Deny ${other_entity} from ${entity} ${primary_key}" msgstr "" -#: ipalib/plugins/internal.py:180 +#: ipalib/plugins/internal.py:188 +#, python-brace-format msgid "Remove ${entity} ${primary_key} from ${other_entity}" msgstr "" -#: ipalib/plugins/internal.py:182 +#: ipalib/plugins/internal.py:190 +#, python-brace-format msgid "${count} item(s) removed" msgstr "" -#: ipalib/plugins/internal.py:183 +#: ipalib/plugins/internal.py:191 msgid "Show Results" msgstr "" -#: ipalib/plugins/internal.py:186 +#: ipalib/plugins/internal.py:194 ipalib/plugins/internal.py:242 +msgid "About" +msgstr "" + +#: ipalib/plugins/internal.py:195 msgid "Add" msgstr "" -#: ipalib/plugins/internal.py:187 +#: ipalib/plugins/internal.py:196 msgid "Add and Add Another" msgstr "" -#: ipalib/plugins/internal.py:188 +#: ipalib/plugins/internal.py:197 msgid "Add and Close" msgstr "" -#: ipalib/plugins/internal.py:189 +#: ipalib/plugins/internal.py:198 msgid "Add and Edit" msgstr "" -#: ipalib/plugins/internal.py:190 +#: ipalib/plugins/internal.py:199 msgid "Add Many" msgstr "" -#: ipalib/plugins/internal.py:191 +#: ipalib/plugins/internal.py:200 msgid "Back" msgstr "" -#: ipalib/plugins/internal.py:192 +#: ipalib/plugins/internal.py:201 msgid "Cancel" msgstr "" -#: ipalib/plugins/internal.py:193 +#: ipalib/plugins/internal.py:202 msgid "Close" msgstr "" -#: ipalib/plugins/internal.py:194 ipalib/plugins/internal.py:655 +#: ipalib/plugins/internal.py:203 ipalib/plugins/internal.py:683 msgid "Disable" msgstr "" -#: ipalib/plugins/internal.py:195 +#: ipalib/plugins/internal.py:204 msgid "Edit" msgstr "" -#: ipalib/plugins/internal.py:196 ipalib/plugins/internal.py:657 +#: ipalib/plugins/internal.py:205 ipalib/plugins/internal.py:685 msgid "Enable" msgstr "" -#: ipalib/plugins/internal.py:197 +#: ipalib/plugins/internal.py:207 msgid "Find" msgstr "" -#: ipalib/plugins/internal.py:198 +#: ipalib/plugins/internal.py:208 msgid "Get" msgstr "" -#: ipalib/plugins/internal.py:199 +#: ipalib/plugins/internal.py:209 msgid "Issue" msgstr "" -#: ipalib/plugins/internal.py:200 +#: ipalib/plugins/internal.py:210 msgid "OK" msgstr "" -#: ipalib/plugins/internal.py:201 +#: ipalib/plugins/internal.py:211 msgid "Refresh" msgstr "" -#: ipalib/plugins/internal.py:202 +#: ipalib/plugins/internal.py:212 msgid "Delete" msgstr "" -#: ipalib/plugins/internal.py:203 +#: ipalib/plugins/internal.py:213 msgid "Reset" msgstr "" -#: ipalib/plugins/internal.py:204 +#: ipalib/plugins/internal.py:214 msgid "Reset Password and Login" msgstr "" -#: ipalib/plugins/internal.py:205 +#: ipalib/plugins/internal.py:215 msgid "Restore" msgstr "" -#: ipalib/plugins/internal.py:206 +#: ipalib/plugins/internal.py:216 msgid "Retry" msgstr "" -#: ipalib/plugins/internal.py:207 +#: ipalib/plugins/internal.py:217 msgid "Revoke" msgstr "" -#: ipalib/plugins/internal.py:208 +#: ipalib/plugins/internal.py:218 msgid "Set" msgstr "" -#: ipalib/plugins/internal.py:209 +#: ipalib/plugins/internal.py:219 msgid "Update" msgstr "" -#: ipalib/plugins/internal.py:210 +#: ipalib/plugins/internal.py:220 msgid "View" msgstr "" -#: ipalib/plugins/internal.py:213 +#: ipalib/plugins/internal.py:223 msgid "Collapse All" msgstr "" -#: ipalib/plugins/internal.py:214 +#: ipalib/plugins/internal.py:224 msgid "Expand All" msgstr "" -#: ipalib/plugins/internal.py:215 +#: ipalib/plugins/internal.py:225 msgid "General" msgstr "" -#: ipalib/plugins/internal.py:216 +#: ipalib/plugins/internal.py:226 msgid "Identity Settings" msgstr "" -#: ipalib/plugins/internal.py:217 +#: ipalib/plugins/internal.py:227 +#, python-brace-format msgid "${entity} ${primary_key} Settings" msgstr "" -#: ipalib/plugins/internal.py:218 +#: ipalib/plugins/internal.py:228 msgid "Back to Top" msgstr "" -#: ipalib/plugins/internal.py:219 +#: ipalib/plugins/internal.py:229 +#, python-brace-format msgid "${entity} ${primary_key} updated" msgstr "" -#: ipalib/plugins/internal.py:222 +#: ipalib/plugins/internal.py:232 +#, python-brace-format msgid "${entity} successfully added" msgstr "" -#: ipalib/plugins/internal.py:223 +#: ipalib/plugins/internal.py:233 +#, python-brace-format msgid "Add ${entity}" msgstr "" -#: ipalib/plugins/internal.py:224 +#: ipalib/plugins/internal.py:234 msgid "Available" msgstr "" -#: ipalib/plugins/internal.py:225 +#: ipalib/plugins/internal.py:235 msgid "Some operations failed." msgstr "" -#: ipalib/plugins/internal.py:226 +#: ipalib/plugins/internal.py:236 msgid "Operations Error" msgstr "" -#: ipalib/plugins/internal.py:227 +#: ipalib/plugins/internal.py:237 msgid "Confirmation" msgstr "" -#: ipalib/plugins/internal.py:228 +#: ipalib/plugins/internal.py:238 msgid "This page has unsaved changes. Please save or revert." msgstr "" -#: ipalib/plugins/internal.py:229 +#: ipalib/plugins/internal.py:239 msgid "Unsaved Changes" msgstr "" -#: ipalib/plugins/internal.py:230 +#: ipalib/plugins/internal.py:240 +#, python-brace-format msgid "Edit ${entity}" msgstr "" -#: ipalib/plugins/internal.py:231 +#: ipalib/plugins/internal.py:241 msgid "Hide details" msgstr "" -#: ipalib/plugins/internal.py:232 +#: ipalib/plugins/internal.py:243 +#, python-brace-format +msgid "${product}, version: ${version}" +msgstr "" + +#: ipalib/plugins/internal.py:244 msgid "Prospective" msgstr "" -#: ipalib/plugins/internal.py:233 +#: ipalib/plugins/internal.py:245 msgid "Redirection" msgstr "" -#: ipalib/plugins/internal.py:234 +#: ipalib/plugins/internal.py:246 msgid "Select entries to be removed." msgstr "" -#: ipalib/plugins/internal.py:235 +#: ipalib/plugins/internal.py:247 +#, python-brace-format msgid "Remove ${entity}" msgstr "" -#: ipalib/plugins/internal.py:236 +#: ipalib/plugins/internal.py:248 msgid "Show details" msgstr "" -#: ipalib/plugins/internal.py:237 +#: ipalib/plugins/internal.py:249 msgid "Validation error" msgstr "" -#: ipalib/plugins/internal.py:238 +#: ipalib/plugins/internal.py:250 msgid "Input form contains invalid or missing values." msgstr "" -#: ipalib/plugins/internal.py:241 +#: ipalib/plugins/internal.py:253 msgid "Please try the following options:" msgstr "" -#: ipalib/plugins/internal.py:242 +#: ipalib/plugins/internal.py:254 msgid "If the problem persists please contact the system administrator." msgstr "" -#: ipalib/plugins/internal.py:243 +#: ipalib/plugins/internal.py:255 msgid "Refresh the page." msgstr "" -#: ipalib/plugins/internal.py:244 +#: ipalib/plugins/internal.py:256 msgid "Reload the browser." msgstr "" -#: ipalib/plugins/internal.py:245 +#: ipalib/plugins/internal.py:257 msgid "Return to the main page and retry the operation" msgstr "" -#: ipalib/plugins/internal.py:246 +#: ipalib/plugins/internal.py:258 +#, python-brace-format msgid "An error has occurred (${error})" msgstr "" -#: ipalib/plugins/internal.py:250 +#: ipalib/plugins/internal.py:262 msgid "HTTP Error" msgstr "" -#: ipalib/plugins/internal.py:251 +#: ipalib/plugins/internal.py:263 msgid "Internal Error" msgstr "" -#: ipalib/plugins/internal.py:252 +#: ipalib/plugins/internal.py:264 msgid "IPA Error" msgstr "" -#: ipalib/plugins/internal.py:253 +#: ipalib/plugins/internal.py:265 msgid "No response" msgstr "" -#: ipalib/plugins/internal.py:254 +#: ipalib/plugins/internal.py:266 msgid "Unknown Error" msgstr "" -#: ipalib/plugins/internal.py:255 +#: ipalib/plugins/internal.py:267 msgid "URL" msgstr "" -#: ipalib/plugins/internal.py:258 +#: ipalib/plugins/internal.py:270 +#, python-brace-format msgid "${primary_key} is managed by:" msgstr "" -#: ipalib/plugins/internal.py:259 +#: ipalib/plugins/internal.py:271 +#, python-brace-format msgid "${primary_key} members:" msgstr "" -#: ipalib/plugins/internal.py:260 +#: ipalib/plugins/internal.py:272 +#, python-brace-format msgid "${primary_key} is a member of:" msgstr "" -#: ipalib/plugins/internal.py:263 +#: ipalib/plugins/internal.py:275 msgid "Settings" msgstr "" -#: ipalib/plugins/internal.py:264 +#: ipalib/plugins/internal.py:276 ipalib/plugins/internal.py:676 msgid "Search" msgstr "" -#: ipalib/plugins/internal.py:266 +#: ipalib/plugins/internal.py:278 msgid "False" msgstr "" -#: ipalib/plugins/internal.py:268 +#: ipalib/plugins/internal.py:280 msgid "Inherited from server configuration" msgstr "" -#: ipalib/plugins/internal.py:269 +#: ipalib/plugins/internal.py:281 msgid "MS-PAC" msgstr "" -#: ipalib/plugins/internal.py:270 +#: ipalib/plugins/internal.py:282 msgid "Override inherited settings" msgstr "" -#: ipalib/plugins/internal.py:271 +#: ipalib/plugins/internal.py:283 msgid "PAD" msgstr "" -#: ipalib/plugins/internal.py:274 +#: ipalib/plugins/internal.py:286 msgid "" "To login with username and password, enter them in the fields below then " "click Login." msgstr "" -#: ipalib/plugins/internal.py:275 +#: ipalib/plugins/internal.py:287 msgid "Logged In As" msgstr "" -#: ipalib/plugins/internal.py:276 +#: ipalib/plugins/internal.py:288 +#, python-brace-format msgid "" "To login with Kerberos, please make sure you have valid tickets (obtainable " "via kinit) and <a href='http://${host}/ipa/config/unauthorized." "html'>configured</a> the browser correctly, then click Login." msgstr "" -#: ipalib/plugins/internal.py:277 +#: ipalib/plugins/internal.py:289 msgid "Login" msgstr "" -#: ipalib/plugins/internal.py:278 +#: ipalib/plugins/internal.py:290 msgid "Logout" msgstr "" -#: ipalib/plugins/internal.py:279 +#: ipalib/plugins/internal.py:291 msgid "Logout error" msgstr "" -#: ipalib/plugins/internal.py:281 +#: ipalib/plugins/internal.py:293 msgid "Username" msgstr "" -#: ipalib/plugins/internal.py:284 +#: ipalib/plugins/internal.py:296 msgid "number of passwords" msgstr "" -#: ipalib/plugins/internal.py:285 +#: ipalib/plugins/internal.py:297 msgid "seconds" msgstr "" -#: ipalib/plugins/internal.py:289 ipalib/plugins/internal.py:294 +#: ipalib/plugins/internal.py:301 ipalib/plugins/internal.py:306 msgid "Attribute" msgstr "" -#: ipalib/plugins/internal.py:292 +#: ipalib/plugins/internal.py:304 +#, python-brace-format msgid "Add Condition into ${pkey}" msgstr "" -#: ipalib/plugins/internal.py:293 +#: ipalib/plugins/internal.py:305 msgid "Add Rule" msgstr "" -#: ipalib/plugins/internal.py:295 +#: ipalib/plugins/internal.py:307 msgid "Default host group" msgstr "" -#: ipalib/plugins/internal.py:296 +#: ipalib/plugins/internal.py:308 msgid "Default user group" msgstr "" -#: ipalib/plugins/internal.py:297 +#: ipalib/plugins/internal.py:309 msgid "Exclusive" msgstr "" -#: ipalib/plugins/internal.py:298 +#: ipalib/plugins/internal.py:310 msgid "Expression" msgstr "" -#: ipalib/plugins/internal.py:299 +#: ipalib/plugins/internal.py:311 msgid "Host group rule" msgstr "" -#: ipalib/plugins/internal.py:300 +#: ipalib/plugins/internal.py:312 msgid "Host group rules" msgstr "" -#: ipalib/plugins/internal.py:301 +#: ipalib/plugins/internal.py:313 msgid "Inclusive" msgstr "" -#: ipalib/plugins/internal.py:302 +#: ipalib/plugins/internal.py:314 msgid "User group rule" msgstr "" -#: ipalib/plugins/internal.py:303 +#: ipalib/plugins/internal.py:315 msgid "User group rules" msgstr "" -#: ipalib/plugins/internal.py:308 +#: ipalib/plugins/internal.py:320 msgid "Automount Location Settings" msgstr "" -#: ipalib/plugins/internal.py:311 +#: ipalib/plugins/internal.py:323 msgid "Map Type" msgstr "" -#: ipalib/plugins/internal.py:312 +#: ipalib/plugins/internal.py:324 msgid "Direct" msgstr "" -#: ipalib/plugins/internal.py:313 +#: ipalib/plugins/internal.py:325 msgid "Indirect" msgstr "" -#: ipalib/plugins/internal.py:316 +#: ipalib/plugins/internal.py:328 msgid "AA Compromise" msgstr "" -#: ipalib/plugins/internal.py:317 +#: ipalib/plugins/internal.py:329 msgid "Affiliation Changed" msgstr "" -#: ipalib/plugins/internal.py:318 +#: ipalib/plugins/internal.py:330 msgid "CA Compromise" msgstr "" -#: ipalib/plugins/internal.py:320 ipalib/plugins/internal.py:665 +#: ipalib/plugins/internal.py:332 ipalib/plugins/internal.py:694 msgid "Certificates" msgstr "" -#: ipalib/plugins/internal.py:321 +#: ipalib/plugins/internal.py:333 msgid "Certificate Hold" msgstr "" -#: ipalib/plugins/internal.py:322 +#: ipalib/plugins/internal.py:334 msgid "Cessation of Operation" msgstr "" -#: ipalib/plugins/internal.py:323 +#: ipalib/plugins/internal.py:335 msgid "Common Name" msgstr "" -#: ipalib/plugins/internal.py:324 +#: ipalib/plugins/internal.py:336 msgid "Expires On" msgstr "" -#: ipalib/plugins/internal.py:325 +#: ipalib/plugins/internal.py:337 msgid "Issued on from" msgstr "" -#: ipalib/plugins/internal.py:326 +#: ipalib/plugins/internal.py:338 msgid "Issued on to" msgstr "" -#: ipalib/plugins/internal.py:327 +#: ipalib/plugins/internal.py:339 msgid "Maximum serial number" msgstr "" -#: ipalib/plugins/internal.py:328 +#: ipalib/plugins/internal.py:340 msgid "Minimum serial number" msgstr "" -#: ipalib/plugins/internal.py:330 +#: ipalib/plugins/internal.py:342 msgid "Revoked on from" msgstr "" -#: ipalib/plugins/internal.py:331 +#: ipalib/plugins/internal.py:343 msgid "Revoked on to" msgstr "" -#: ipalib/plugins/internal.py:333 +#: ipalib/plugins/internal.py:345 msgid "Valid not after from" msgstr "" -#: ipalib/plugins/internal.py:334 +#: ipalib/plugins/internal.py:346 msgid "Valid not after to" msgstr "" -#: ipalib/plugins/internal.py:335 +#: ipalib/plugins/internal.py:347 msgid "Valid not before from" msgstr "" -#: ipalib/plugins/internal.py:336 +#: ipalib/plugins/internal.py:348 msgid "Valid not before to" msgstr "" -#: ipalib/plugins/internal.py:337 +#: ipalib/plugins/internal.py:349 msgid "Fingerprints" msgstr "" -#: ipalib/plugins/internal.py:338 +#: ipalib/plugins/internal.py:350 +msgid "Get Certificate" +msgstr "" + +#: ipalib/plugins/internal.py:351 +#, python-brace-format msgid "Issue New Certificate for ${entity} ${primary_key}" msgstr "" -#: ipalib/plugins/internal.py:339 +#: ipalib/plugins/internal.py:352 msgid "Issued By" msgstr "" -#: ipalib/plugins/internal.py:340 +#: ipalib/plugins/internal.py:353 msgid "Issued On" msgstr "" -#: ipalib/plugins/internal.py:341 +#: ipalib/plugins/internal.py:354 msgid "Issued To" msgstr "" -#: ipalib/plugins/internal.py:342 +#: ipalib/plugins/internal.py:355 msgid "Key Compromise" msgstr "" -#: ipalib/plugins/internal.py:343 +#: ipalib/plugins/internal.py:356 msgid "MD5 Fingerprint" msgstr "" -#: ipalib/plugins/internal.py:344 +#: ipalib/plugins/internal.py:357 msgid "No Valid Certificate" msgstr "" -#: ipalib/plugins/internal.py:345 +#: ipalib/plugins/internal.py:358 msgid "New Certificate" msgstr "" -#: ipalib/plugins/internal.py:346 +#: ipalib/plugins/internal.py:359 msgid "Note" msgstr "" -#: ipalib/plugins/internal.py:347 +#: ipalib/plugins/internal.py:360 msgid "Organization" msgstr "" -#: ipalib/plugins/internal.py:348 +#: ipalib/plugins/internal.py:361 msgid "Organizational Unit" msgstr "" -#: ipalib/plugins/internal.py:349 +#: ipalib/plugins/internal.py:362 msgid "Privilege Withdrawn" msgstr "" -#: ipalib/plugins/internal.py:350 +#: ipalib/plugins/internal.py:363 msgid "Reason for Revocation" msgstr "" -#: ipalib/plugins/internal.py:351 +#: ipalib/plugins/internal.py:364 msgid "Remove from CRL" msgstr "" -#: ipalib/plugins/internal.py:352 +#: ipalib/plugins/internal.py:365 +#, python-brace-format msgid "" "<ol> <li>Create a certificate database or use an existing one. To create a " "new database:<br/> <code># certutil -N -d <database path></code> </li> " @@ -6123,919 +6529,990 @@ msgid "" "NEW CERTIFICATE REQUEST-----</em>) into the text area below: </li> </ol>" msgstr "" -#: ipalib/plugins/internal.py:353 +#: ipalib/plugins/internal.py:366 msgid "Certificate requested" msgstr "" -#: ipalib/plugins/internal.py:354 +#: ipalib/plugins/internal.py:367 +#, python-brace-format msgid "Restore Certificate for ${entity} ${primary_key}" msgstr "" -#: ipalib/plugins/internal.py:355 +#: ipalib/plugins/internal.py:368 msgid "Restore Certificate" msgstr "" -#: ipalib/plugins/internal.py:356 +#: ipalib/plugins/internal.py:369 msgid "" "To confirm your intention to restore this certificate, click the \"Restore\" " "button." msgstr "" -#: ipalib/plugins/internal.py:357 +#: ipalib/plugins/internal.py:370 msgid "Certificate restored" msgstr "" -#: ipalib/plugins/internal.py:359 +#: ipalib/plugins/internal.py:372 +#, python-brace-format msgid "Revoke Certificate for ${entity} ${primary_key}" msgstr "" -#: ipalib/plugins/internal.py:360 +#: ipalib/plugins/internal.py:373 msgid "Revoke Certificate" msgstr "" -#: ipalib/plugins/internal.py:361 +#: ipalib/plugins/internal.py:374 msgid "" "To confirm your intention to revoke this certificate, select a reason from " "the pull-down list, and click the \"Revoke\" button." msgstr "" -#: ipalib/plugins/internal.py:362 +#: ipalib/plugins/internal.py:375 msgid "Certificate Revoked" msgstr "" -#: ipalib/plugins/internal.py:365 +#: ipalib/plugins/internal.py:378 msgid "SHA1 Fingerprint" msgstr "" -#: ipalib/plugins/internal.py:367 +#: ipalib/plugins/internal.py:380 msgid "Superseded" msgstr "" -#: ipalib/plugins/internal.py:368 +#: ipalib/plugins/internal.py:381 msgid "Unspecified" msgstr "" -#: ipalib/plugins/internal.py:369 +#: ipalib/plugins/internal.py:382 msgid "Valid Certificate Present" msgstr "" -#: ipalib/plugins/internal.py:370 +#: ipalib/plugins/internal.py:383 msgid "Validity" msgstr "" -#: ipalib/plugins/internal.py:371 +#: ipalib/plugins/internal.py:384 +#, python-brace-format msgid "Certificate for ${entity} ${primary_key}" msgstr "" -#: ipalib/plugins/internal.py:374 +#: ipalib/plugins/internal.py:385 +msgid "View Certificate" +msgstr "" + +#: ipalib/plugins/internal.py:388 msgid "Group Options" msgstr "" -#: ipalib/plugins/internal.py:375 +#: ipalib/plugins/internal.py:389 msgid "Search Options" msgstr "" -#: ipalib/plugins/internal.py:376 +#: ipalib/plugins/internal.py:390 msgid "SELinux Options" msgstr "" -#: ipalib/plugins/internal.py:377 +#: ipalib/plugins/internal.py:391 msgid "Service Options" msgstr "" -#: ipalib/plugins/internal.py:378 +#: ipalib/plugins/internal.py:392 msgid "User Options" msgstr "" -#: ipalib/plugins/internal.py:383 +#: ipalib/plugins/internal.py:397 msgid "Forward first" msgstr "" -#: ipalib/plugins/internal.py:384 +#: ipalib/plugins/internal.py:398 msgid "Forwarding disabled" msgstr "" -#: ipalib/plugins/internal.py:385 +#: ipalib/plugins/internal.py:399 msgid "Forward only" msgstr "" -#: ipalib/plugins/internal.py:386 ipalib/plugins/internal.py:588 -#: ipalib/plugins/internal.py:611 +#: ipalib/plugins/internal.py:400 ipalib/plugins/internal.py:611 +#: ipalib/plugins/internal.py:635 msgid "Options" msgstr "" -#: ipalib/plugins/internal.py:389 +#: ipalib/plugins/internal.py:403 msgid "Data" msgstr "" -#: ipalib/plugins/internal.py:390 +#: ipalib/plugins/internal.py:404 msgid "DNS record was deleted because it contained no data." msgstr "" -#: ipalib/plugins/internal.py:391 +#: ipalib/plugins/internal.py:405 msgid "Other Record Types" msgstr "" -#: ipalib/plugins/internal.py:392 +#: ipalib/plugins/internal.py:406 msgid "Address not valid, can't redirect" msgstr "" -#: ipalib/plugins/internal.py:393 +#: ipalib/plugins/internal.py:407 msgid "Create dns record" msgstr "" -#: ipalib/plugins/internal.py:394 +#: ipalib/plugins/internal.py:408 msgid "Creating record." msgstr "" -#: ipalib/plugins/internal.py:395 +#: ipalib/plugins/internal.py:409 msgid "Record creation failed." msgstr "" -#: ipalib/plugins/internal.py:396 +#: ipalib/plugins/internal.py:410 msgid "Checking if record exists." msgstr "" -#: ipalib/plugins/internal.py:397 +#: ipalib/plugins/internal.py:411 msgid "Record not found." msgstr "" -#: ipalib/plugins/internal.py:398 +#: ipalib/plugins/internal.py:412 msgid "Redirection to PTR record" msgstr "" -#: ipalib/plugins/internal.py:399 +#: ipalib/plugins/internal.py:413 +#, python-brace-format msgid "Zone found: ${zone}" msgstr "" -#: ipalib/plugins/internal.py:400 +#: ipalib/plugins/internal.py:414 msgid "Target reverse zone not found." msgstr "" -#: ipalib/plugins/internal.py:401 +#: ipalib/plugins/internal.py:415 msgid "Fetching DNS zones." msgstr "" -#: ipalib/plugins/internal.py:402 +#: ipalib/plugins/internal.py:416 msgid "An error occurred while fetching dns zones." msgstr "" -#: ipalib/plugins/internal.py:403 +#: ipalib/plugins/internal.py:417 msgid "You will be redirected to DNS Zone." msgstr "" -#: ipalib/plugins/internal.py:404 +#: ipalib/plugins/internal.py:418 msgid "Standard Record Types" msgstr "" -#: ipalib/plugins/internal.py:405 +#: ipalib/plugins/internal.py:419 msgid "Records for DNS Zone" msgstr "" -#: ipalib/plugins/internal.py:406 +#: ipalib/plugins/internal.py:420 msgid "Record Type" msgstr "" -#: ipalib/plugins/internal.py:409 +#: ipalib/plugins/internal.py:423 msgid "DNS Zone Settings" msgstr "" -#: ipalib/plugins/internal.py:410 +#: ipalib/plugins/internal.py:424 msgid "Add Permission" msgstr "" -#: ipalib/plugins/internal.py:411 +#: ipalib/plugins/internal.py:425 +#, python-brace-format +msgid "Are you sure you want to add permission for DNS Zone ${object}?" +msgstr "" + +#: ipalib/plugins/internal.py:426 msgid "Remove Permission" msgstr "" -#: ipalib/plugins/internal.py:414 +#: ipalib/plugins/internal.py:427 +#, python-brace-format +msgid "Are you sure you want to remove permission for DNS Zone ${object}?" +msgstr "" + +#: ipalib/plugins/internal.py:430 msgid "Group Settings" msgstr "" -#: ipalib/plugins/internal.py:415 ipalib/plugins/internal.py:487 -#: ipalib/plugins/internal.py:583 +#: ipalib/plugins/internal.py:431 ipalib/plugins/internal.py:503 +#: ipalib/plugins/internal.py:606 msgid "External" msgstr "" -#: ipalib/plugins/internal.py:416 +#: ipalib/plugins/internal.py:432 msgid "Change to external group" msgstr "" -#: ipalib/plugins/internal.py:417 +#: ipalib/plugins/internal.py:433 msgid "Change to POSIX group" msgstr "" -#: ipalib/plugins/internal.py:418 +#: ipalib/plugins/internal.py:434 msgid "Normal" msgstr "" -#: ipalib/plugins/internal.py:419 +#: ipalib/plugins/internal.py:435 msgid "POSIX" msgstr "" -#: ipalib/plugins/internal.py:420 +#: ipalib/plugins/internal.py:436 msgid "Group Type" msgstr "" -#: ipalib/plugins/internal.py:423 ipalib/plugins/internal.py:485 -#: ipalib/plugins/internal.py:537 ipalib/plugins/internal.py:579 +#: ipalib/plugins/internal.py:439 ipalib/plugins/internal.py:501 +#: ipalib/plugins/internal.py:560 ipalib/plugins/internal.py:602 msgid "Any Host" msgstr "" -#: ipalib/plugins/internal.py:424 +#: ipalib/plugins/internal.py:440 msgid "Any Service" msgstr "" -#: ipalib/plugins/internal.py:425 ipalib/plugins/internal.py:486 -#: ipalib/plugins/internal.py:538 ipalib/plugins/internal.py:580 +#: ipalib/plugins/internal.py:441 ipalib/plugins/internal.py:502 +#: ipalib/plugins/internal.py:561 ipalib/plugins/internal.py:603 msgid "Anyone" msgstr "" -#: ipalib/plugins/internal.py:426 +#: ipalib/plugins/internal.py:442 msgid "Accessing" msgstr "" -#: ipalib/plugins/internal.py:427 ipalib/plugins/internal.py:585 +#: ipalib/plugins/internal.py:443 ipalib/plugins/internal.py:608 msgid "Rule status" msgstr "" -#: ipalib/plugins/internal.py:428 +#: ipalib/plugins/internal.py:444 msgid "Via Service" msgstr "" -#: ipalib/plugins/internal.py:429 ipalib/plugins/internal.py:492 -#: ipalib/plugins/internal.py:540 ipalib/plugins/internal.py:592 +#: ipalib/plugins/internal.py:445 ipalib/plugins/internal.py:508 +#: ipalib/plugins/internal.py:563 ipalib/plugins/internal.py:615 msgid "Specified Hosts and Groups" msgstr "" -#: ipalib/plugins/internal.py:430 +#: ipalib/plugins/internal.py:446 msgid "Specified Services and Groups" msgstr "" -#: ipalib/plugins/internal.py:431 ipalib/plugins/internal.py:493 -#: ipalib/plugins/internal.py:541 ipalib/plugins/internal.py:593 +#: ipalib/plugins/internal.py:447 ipalib/plugins/internal.py:509 +#: ipalib/plugins/internal.py:564 ipalib/plugins/internal.py:616 msgid "Specified Users and Groups" msgstr "" -#: ipalib/plugins/internal.py:432 ipalib/plugins/internal.py:594 +#: ipalib/plugins/internal.py:448 ipalib/plugins/internal.py:617 msgid "Who" msgstr "" -#: ipalib/plugins/internal.py:440 +#: ipalib/plugins/internal.py:456 msgid "Access Denied" msgstr "" -#: ipalib/plugins/internal.py:441 +#: ipalib/plugins/internal.py:457 msgid "Access Granted" msgstr "" -#: ipalib/plugins/internal.py:442 +#: ipalib/plugins/internal.py:458 msgid "Include Disabled" msgstr "" -#: ipalib/plugins/internal.py:443 +#: ipalib/plugins/internal.py:459 msgid "Include Enabled" msgstr "" -#: ipalib/plugins/internal.py:444 +#: ipalib/plugins/internal.py:460 msgid "HBAC Test" msgstr "" -#: ipalib/plugins/internal.py:445 +#: ipalib/plugins/internal.py:461 msgid "Matched" msgstr "" -#: ipalib/plugins/internal.py:446 +#: ipalib/plugins/internal.py:462 msgid "Missing values: " msgstr "" -#: ipalib/plugins/internal.py:447 +#: ipalib/plugins/internal.py:463 msgid "New Test" msgstr "" -#: ipalib/plugins/internal.py:448 +#: ipalib/plugins/internal.py:464 msgid "Rules" msgstr "" -#: ipalib/plugins/internal.py:449 +#: ipalib/plugins/internal.py:465 msgid "Run Test" msgstr "" -#: ipalib/plugins/internal.py:450 +#: ipalib/plugins/internal.py:466 +#, python-brace-format msgid "Specify external ${entity}" msgstr "" -#: ipalib/plugins/internal.py:451 +#: ipalib/plugins/internal.py:467 msgid "Unmatched" msgstr "" -#: ipalib/plugins/internal.py:454 +#: ipalib/plugins/internal.py:470 msgid "Host Certificate" msgstr "" -#: ipalib/plugins/internal.py:455 ipalib/plugins/internal.py:548 +#: ipalib/plugins/internal.py:471 ipalib/plugins/internal.py:571 msgid "Host Name" msgstr "" -#: ipalib/plugins/internal.py:456 ipalib/plugins/internal.py:546 +#: ipalib/plugins/internal.py:472 ipalib/plugins/internal.py:569 msgid "Delete Key, Unprovision" msgstr "" -#: ipalib/plugins/internal.py:457 +#: ipalib/plugins/internal.py:473 msgid "Host Settings" msgstr "" -#: ipalib/plugins/internal.py:458 +#: ipalib/plugins/internal.py:474 msgid "Enrolled" msgstr "" -#: ipalib/plugins/internal.py:459 +#: ipalib/plugins/internal.py:475 msgid "Enrollment" msgstr "" -#: ipalib/plugins/internal.py:460 +#: ipalib/plugins/internal.py:476 msgid "Fully Qualified Host Name" msgstr "" -#: ipalib/plugins/internal.py:461 +#: ipalib/plugins/internal.py:477 msgid "Kerberos Key" msgstr "" -#: ipalib/plugins/internal.py:462 ipalib/plugins/internal.py:549 +#: ipalib/plugins/internal.py:478 ipalib/plugins/internal.py:572 msgid "Kerberos Key Not Present" msgstr "" -#: ipalib/plugins/internal.py:463 +#: ipalib/plugins/internal.py:479 msgid "Kerberos Key Present, Host Provisioned" msgstr "" -#: ipalib/plugins/internal.py:464 +#: ipalib/plugins/internal.py:480 ipalib/plugins/internal.py:658 msgid "One-Time-Password" msgstr "" -#: ipalib/plugins/internal.py:465 +#: ipalib/plugins/internal.py:481 msgid "One-Time-Password Not Present" msgstr "" -#: ipalib/plugins/internal.py:466 +#: ipalib/plugins/internal.py:482 msgid "One-Time-Password Present" msgstr "" -#: ipalib/plugins/internal.py:467 +#: ipalib/plugins/internal.py:483 msgid "Reset OTP" msgstr "" -#: ipalib/plugins/internal.py:468 +#: ipalib/plugins/internal.py:484 msgid "Reset One-Time-Password" msgstr "" -#: ipalib/plugins/internal.py:469 +#: ipalib/plugins/internal.py:485 msgid "Set OTP" msgstr "" -#: ipalib/plugins/internal.py:470 +#: ipalib/plugins/internal.py:486 msgid "OTP set" msgstr "" -#: ipalib/plugins/internal.py:471 +#: ipalib/plugins/internal.py:487 msgid "Set One-Time-Password" msgstr "" -#: ipalib/plugins/internal.py:473 ipalib/plugins/internal.py:553 +#: ipalib/plugins/internal.py:489 ipalib/plugins/internal.py:576 msgid "Unprovision" msgstr "" -#: ipalib/plugins/internal.py:474 +#: ipalib/plugins/internal.py:490 msgid "Are you sure you want to unprovision this host?" msgstr "" -#: ipalib/plugins/internal.py:475 ipalib/plugins/internal.py:555 +#: ipalib/plugins/internal.py:491 ipalib/plugins/internal.py:578 +#, python-brace-format msgid "Unprovisioning ${entity}" msgstr "" -#: ipalib/plugins/internal.py:476 +#: ipalib/plugins/internal.py:492 msgid "Host unprovisioned" msgstr "" -#: ipalib/plugins/internal.py:479 +#: ipalib/plugins/internal.py:495 msgid "Host Group Settings" msgstr "" -#: ipalib/plugins/internal.py:482 ipalib/plugins/krbtpolicy.py:79 -#: ipalib/plugins/krbtpolicy.py:80 +#: ipalib/plugins/internal.py:498 ipalib/plugins/krbtpolicy.py:118 +#: ipalib/plugins/krbtpolicy.py:119 msgid "Kerberos Ticket Policy" msgstr "" -#: ipalib/plugins/internal.py:491 +#: ipalib/plugins/internal.py:507 msgid "Netgroup Settings" msgstr "" -#: ipalib/plugins/internal.py:494 ipalib/plugins/internal.py:542 -#: ipalib/plugins/pwpolicy.py:444 ipalib/plugins/user.py:226 +#: ipalib/plugins/internal.py:510 ipalib/plugins/internal.py:565 +#: ipalib/plugins/pwpolicy.py:519 ipalib/plugins/user.py:430 msgid "User" msgstr "" -#: ipalib/plugins/internal.py:499 ipalib/plugins/internal.py:668 -msgid "Identity" +#: ipalib/plugins/internal.py:520 +msgid "Permission settings" msgstr "" -#: ipalib/plugins/internal.py:500 -msgid "Permission with invalid target specification" +#: ipalib/plugins/internal.py:521 +msgid "Attribute breakdown" msgstr "" -#: ipalib/plugins/internal.py:505 +#: ipalib/plugins/internal.py:525 msgid "Privilege Settings" msgstr "" -#: ipalib/plugins/internal.py:508 ipalib/plugins/pwpolicy.py:224 +#: ipalib/plugins/internal.py:528 ipalib/plugins/pwpolicy.py:303 msgid "Password Policy" msgstr "" -#: ipalib/plugins/internal.py:511 +#: ipalib/plugins/internal.py:531 msgid "Range Settings" msgstr "" -#: ipalib/plugins/internal.py:512 +#: ipalib/plugins/internal.py:532 msgid "Base ID" msgstr "" -#: ipalib/plugins/internal.py:513 +#: ipalib/plugins/internal.py:533 msgid "Primary RID base" msgstr "" -#: ipalib/plugins/internal.py:514 +#: ipalib/plugins/internal.py:534 msgid "Range size" msgstr "" -#: ipalib/plugins/internal.py:515 +#: ipalib/plugins/internal.py:535 msgid "Domain SID" msgstr "" -#: ipalib/plugins/internal.py:516 +#: ipalib/plugins/internal.py:536 msgid "Secondary RID base" msgstr "" -#: ipalib/plugins/internal.py:518 ipalib/plugins/trust.py:142 +#: ipalib/plugins/internal.py:538 ipalib/plugins/trust.py:145 msgid "Active Directory domain" msgstr "" -#: ipalib/plugins/internal.py:519 +#: ipalib/plugins/internal.py:539 msgid "Active Directory domain with POSIX attributes" msgstr "" -#: ipalib/plugins/internal.py:520 +#: ipalib/plugins/internal.py:540 msgid "Detect" msgstr "" -#: ipalib/plugins/internal.py:521 +#: ipalib/plugins/internal.py:541 msgid "Local domain" msgstr "" -#: ipalib/plugins/internal.py:522 +#: ipalib/plugins/internal.py:542 msgid "IPA trust" msgstr "" -#: ipalib/plugins/internal.py:523 +#: ipalib/plugins/internal.py:543 msgid "Active Directory winsync" msgstr "" -#: ipalib/plugins/internal.py:526 ipalib/plugins/realmdomains.py:65 -#: ipalib/plugins/realmdomains.py:66 +#: ipalib/plugins/internal.py:546 +msgid "RADIUS Proxy Server Settings" +msgstr "" + +#: ipalib/plugins/internal.py:549 ipalib/plugins/realmdomains.py:84 +#: ipalib/plugins/realmdomains.py:85 msgid "Realm Domains" msgstr "" -#: ipalib/plugins/internal.py:527 +#: ipalib/plugins/internal.py:550 msgid "Check DNS" msgstr "" -#: ipalib/plugins/internal.py:528 +#: ipalib/plugins/internal.py:551 msgid "Do you also want to perform DNS check?" msgstr "" -#: ipalib/plugins/internal.py:529 +#: ipalib/plugins/internal.py:552 msgid "Force Update" msgstr "" -#: ipalib/plugins/internal.py:532 +#: ipalib/plugins/internal.py:555 msgid "Role Settings" msgstr "" -#: ipalib/plugins/internal.py:545 +#: ipalib/plugins/internal.py:568 msgid "Service Certificate" msgstr "" -#: ipalib/plugins/internal.py:547 +#: ipalib/plugins/internal.py:570 msgid "Service Settings" msgstr "" -#: ipalib/plugins/internal.py:550 +#: ipalib/plugins/internal.py:573 msgid "Provisioning" msgstr "" -#: ipalib/plugins/internal.py:554 +#: ipalib/plugins/internal.py:577 msgid "Are you sure you want to unprovision this service?" msgstr "" -#: ipalib/plugins/internal.py:556 +#: ipalib/plugins/internal.py:579 msgid "Service unprovisioned" msgstr "" -#: ipalib/plugins/internal.py:557 +#: ipalib/plugins/internal.py:580 msgid "Kerberos Key Present, Service Provisioned" msgstr "" -#: ipalib/plugins/internal.py:560 +#: ipalib/plugins/internal.py:583 msgid "SSH public keys" msgstr "" -#: ipalib/plugins/internal.py:561 +#: ipalib/plugins/internal.py:584 msgid "SSH public key:" msgstr "" -#: ipalib/plugins/internal.py:562 +#: ipalib/plugins/internal.py:585 msgid "Set SSH key" msgstr "" -#: ipalib/plugins/internal.py:563 +#: ipalib/plugins/internal.py:586 msgid "Show/Set key" msgstr "" -#: ipalib/plugins/internal.py:564 +#: ipalib/plugins/internal.py:587 msgid "Modified: key not set" msgstr "" -#: ipalib/plugins/internal.py:565 +#: ipalib/plugins/internal.py:588 msgid "Modified" msgstr "" -#: ipalib/plugins/internal.py:566 +#: ipalib/plugins/internal.py:589 msgid "New: key not set" msgstr "" -#: ipalib/plugins/internal.py:567 +#: ipalib/plugins/internal.py:590 msgid "New: key set" msgstr "" -#: ipalib/plugins/internal.py:570 +#: ipalib/plugins/internal.py:593 msgid "Groups" msgstr "" -#: ipalib/plugins/internal.py:573 ipalib/plugins/sudocmdgroup.py:82 +#: ipalib/plugins/internal.py:596 ipalib/plugins/sudocmdgroup.py:126 msgid "Commands" msgstr "" -#: ipalib/plugins/internal.py:576 +#: ipalib/plugins/internal.py:599 msgid "Allow" msgstr "" -#: ipalib/plugins/internal.py:577 +#: ipalib/plugins/internal.py:600 msgid "Any Command" msgstr "" -#: ipalib/plugins/internal.py:578 +#: ipalib/plugins/internal.py:601 msgid "Any Group" msgstr "" -#: ipalib/plugins/internal.py:581 +#: ipalib/plugins/internal.py:604 msgid "Run Commands" msgstr "" -#: ipalib/plugins/internal.py:582 +#: ipalib/plugins/internal.py:605 msgid "Deny" msgstr "" -#: ipalib/plugins/internal.py:584 +#: ipalib/plugins/internal.py:607 msgid "Access this host" msgstr "" -#: ipalib/plugins/internal.py:586 +#: ipalib/plugins/internal.py:609 msgid "Option added" msgstr "" -#: ipalib/plugins/internal.py:587 +#: ipalib/plugins/internal.py:610 +#, python-brace-format msgid "${count} option(s) removed" msgstr "" -#: ipalib/plugins/internal.py:589 +#: ipalib/plugins/internal.py:612 msgid "As Whom" msgstr "" -#: ipalib/plugins/internal.py:590 +#: ipalib/plugins/internal.py:613 msgid "Specified Commands and Groups" msgstr "" -#: ipalib/plugins/internal.py:591 +#: ipalib/plugins/internal.py:614 msgid "Specified Groups" msgstr "" -#: ipalib/plugins/internal.py:597 +#: ipalib/plugins/internal.py:620 msgid "Account" msgstr "" -#: ipalib/plugins/internal.py:598 +#: ipalib/plugins/internal.py:621 msgid "Administrative account" msgstr "" -#: ipalib/plugins/internal.py:599 +#: ipalib/plugins/internal.py:622 msgid "SID blacklists" msgstr "" -#: ipalib/plugins/internal.py:600 +#: ipalib/plugins/internal.py:623 msgid "Trust Settings" msgstr "" -#: ipalib/plugins/internal.py:601 ipalib/plugins/realmdomains.py:73 -#: ipalib/plugins/trust.py:803 +#: ipalib/plugins/internal.py:624 ipalib/plugins/realmdomains.py:92 +#: ipalib/plugins/trust.py:850 msgid "Domain" msgstr "" -#: ipalib/plugins/internal.py:602 +#: ipalib/plugins/internal.py:625 msgid "Establish using" msgstr "" -#: ipalib/plugins/internal.py:603 ipalib/plugins/trust.py:219 -#: ipalib/plugins/trust.py:1119 +#: ipalib/plugins/internal.py:626 +msgid "Fetch domains" +msgstr "" + +#: ipalib/plugins/internal.py:627 ipalib/plugins/trust.py:357 +#: ipalib/plugins/trust.py:1167 msgid "Domain NetBIOS name" msgstr "" -#: ipalib/plugins/internal.py:604 ipalib/plugins/trust.py:223 -#: ipalib/plugins/trust.py:1123 +#: ipalib/plugins/internal.py:628 ipalib/plugins/trust.py:361 +#: ipalib/plugins/trust.py:1171 msgid "Domain Security Identifier" msgstr "" -#: ipalib/plugins/internal.py:605 +#: ipalib/plugins/internal.py:629 msgid "Pre-shared password" msgstr "" -#: ipalib/plugins/internal.py:606 ipalib/plugins/trust.py:134 +#: ipalib/plugins/internal.py:630 ipalib/plugins/trust.py:137 msgid "Trust direction" msgstr "" -#: ipalib/plugins/internal.py:607 ipalib/plugins/trust.py:138 +#: ipalib/plugins/internal.py:631 ipalib/plugins/trust.py:141 msgid "Trust status" msgstr "" -#: ipalib/plugins/internal.py:608 ipalib/plugins/trust.py:136 +#: ipalib/plugins/internal.py:632 ipalib/plugins/trust.py:139 msgid "Trust type" msgstr "" -#: ipalib/plugins/internal.py:614 +#: ipalib/plugins/internal.py:638 msgid "Account Settings" msgstr "" -#: ipalib/plugins/internal.py:615 +#: ipalib/plugins/internal.py:639 msgid "Account Status" msgstr "" -#: ipalib/plugins/internal.py:616 +#: ipalib/plugins/internal.py:640 msgid "Contact Settings" msgstr "" -#: ipalib/plugins/internal.py:617 +#: ipalib/plugins/internal.py:641 msgid "Employee Information" msgstr "" -#: ipalib/plugins/internal.py:618 +#: ipalib/plugins/internal.py:642 msgid "Error changing account status" msgstr "" -#: ipalib/plugins/internal.py:619 +#: ipalib/plugins/internal.py:643 msgid "Password expiration" msgstr "" -#: ipalib/plugins/internal.py:620 +#: ipalib/plugins/internal.py:644 msgid "Mailing Address" msgstr "" -#: ipalib/plugins/internal.py:621 +#: ipalib/plugins/internal.py:645 msgid "Misc. Information" msgstr "" -#: ipalib/plugins/internal.py:622 +#: ipalib/plugins/internal.py:646 +#, python-brace-format msgid "" "Are you sure you want to ${action} the user?<br/>The change will take effect " "immediately." msgstr "" -#: ipalib/plugins/internal.py:623 +#: ipalib/plugins/internal.py:647 +#, python-brace-format msgid "Click to ${action}" msgstr "" -#: ipalib/plugins/internal.py:627 ipalib/plugins/passwd.py:80 +#: ipalib/plugins/internal.py:651 ipalib/plugins/passwd.py:84 msgid "Current Password" msgstr "" -#: ipalib/plugins/internal.py:628 +#: ipalib/plugins/internal.py:652 msgid "Current password is required" msgstr "" -#: ipalib/plugins/internal.py:629 +#: ipalib/plugins/internal.py:653 +#, python-brace-format msgid "Your password expires in ${days} days." msgstr "" -#: ipalib/plugins/internal.py:630 +#: ipalib/plugins/internal.py:654 msgid "The password or username you entered is incorrect." msgstr "" -#: ipalib/plugins/internal.py:631 ipalib/plugins/passwd.py:77 +#: ipalib/plugins/internal.py:655 ipalib/plugins/passwd.py:81 msgid "New Password" msgstr "" -#: ipalib/plugins/internal.py:632 +#: ipalib/plugins/internal.py:656 msgid "New password is required" msgstr "" -#: ipalib/plugins/internal.py:634 +#: ipalib/plugins/internal.py:657 ipalib/plugins/passwd.py:94 +msgid "OTP" +msgstr "" + +#: ipalib/plugins/internal.py:660 +msgid "Password or Password+One-Time-Password" +msgstr "" + +#: ipalib/plugins/internal.py:661 msgid "Password change complete" msgstr "" -#: ipalib/plugins/internal.py:635 +#: ipalib/plugins/internal.py:662 msgid "Passwords must match" msgstr "" -#: ipalib/plugins/internal.py:636 +#: ipalib/plugins/internal.py:663 msgid "Password reset was not successful." msgstr "" -#: ipalib/plugins/internal.py:637 +#: ipalib/plugins/internal.py:664 msgid "Reset Password" msgstr "" -#: ipalib/plugins/internal.py:638 +#: ipalib/plugins/internal.py:665 msgid "Reset your password." msgstr "" -#: ipalib/plugins/internal.py:639 +#: ipalib/plugins/internal.py:666 msgid "Verify Password" msgstr "" -#: ipalib/plugins/internal.py:642 +#: ipalib/plugins/internal.py:669 msgid "Are you sure you want to delete selected entries?" msgstr "" -#: ipalib/plugins/internal.py:643 +#: ipalib/plugins/internal.py:670 +#, python-brace-format msgid "${count} item(s) deleted" msgstr "" -#: ipalib/plugins/internal.py:644 +#: ipalib/plugins/internal.py:671 msgid "Are you sure you want to disable selected entries?" msgstr "" -#: ipalib/plugins/internal.py:645 +#: ipalib/plugins/internal.py:672 +#, python-brace-format msgid "${count} item(s) disabled" msgstr "" -#: ipalib/plugins/internal.py:646 +#: ipalib/plugins/internal.py:673 msgid "Are you sure you want to enable selected entries?" msgstr "" -#: ipalib/plugins/internal.py:647 +#: ipalib/plugins/internal.py:674 +#, python-brace-format msgid "${count} item(s) enabled" msgstr "" -#: ipalib/plugins/internal.py:648 +#: ipalib/plugins/internal.py:675 msgid "Some entries were not deleted" msgstr "" -#: ipalib/plugins/internal.py:649 +#: ipalib/plugins/internal.py:677 msgid "Quick Links" msgstr "" -#: ipalib/plugins/internal.py:650 +#: ipalib/plugins/internal.py:678 msgid "Select All" msgstr "" -#: ipalib/plugins/internal.py:651 +#: ipalib/plugins/internal.py:679 +#, python-brace-format msgid "" "Query returned more results than the configured size limit. Displaying the " "first ${counter} results." msgstr "" -#: ipalib/plugins/internal.py:652 +#: ipalib/plugins/internal.py:680 msgid "Unselect All" msgstr "" -#: ipalib/plugins/internal.py:656 +#: ipalib/plugins/internal.py:684 msgid "Disabled" msgstr "" -#: ipalib/plugins/internal.py:662 -msgid "Audit" +#: ipalib/plugins/internal.py:688 +msgid "Working" msgstr "" -#: ipalib/plugins/internal.py:663 -msgid "Automember" +#: ipalib/plugins/internal.py:691 +msgid "Audit" msgstr "" -#: ipalib/plugins/internal.py:664 +#: ipalib/plugins/internal.py:693 msgid "Automount" msgstr "" -#: ipalib/plugins/internal.py:666 +#: ipalib/plugins/internal.py:695 msgid "DNS" msgstr "" -#: ipalib/plugins/internal.py:667 +#: ipalib/plugins/internal.py:696 msgid "Host Based Access Control" msgstr "" -#: ipalib/plugins/internal.py:669 +#: ipalib/plugins/internal.py:697 +msgid "Identity" +msgstr "" + +#: ipalib/plugins/internal.py:698 msgid "IPA Server" msgstr "" -#: ipalib/plugins/internal.py:670 +#: ipalib/plugins/internal.py:699 msgid "Policy" msgstr "" -#: ipalib/plugins/internal.py:671 +#: ipalib/plugins/internal.py:700 msgid "Role Based Access Control" msgstr "" -#: ipalib/plugins/internal.py:672 +#: ipalib/plugins/internal.py:701 msgid "Sudo" msgstr "" -#: ipalib/plugins/internal.py:673 ipalib/plugins/trust.py:208 +#: ipalib/plugins/internal.py:702 ipalib/plugins/trust.py:346 msgid "Trusts" msgstr "" -#: ipalib/plugins/internal.py:675 +#: ipalib/plugins/internal.py:704 msgid "True" msgstr "" -#: ipalib/plugins/internal.py:677 +#: ipalib/plugins/internal.py:706 +msgid "First" +msgstr "" + +#: ipalib/plugins/internal.py:707 +msgid "Last" +msgstr "" + +#: ipalib/plugins/internal.py:708 msgid "Next" msgstr "" -#: ipalib/plugins/internal.py:678 +#: ipalib/plugins/internal.py:709 msgid "Page" msgstr "" -#: ipalib/plugins/internal.py:679 +#: ipalib/plugins/internal.py:710 msgid "Prev" msgstr "" -#: ipalib/plugins/internal.py:680 +#: ipalib/plugins/internal.py:711 msgid "undo" msgstr "" -#: ipalib/plugins/internal.py:681 +#: ipalib/plugins/internal.py:712 msgid "undo all" msgstr "" -#: ipalib/plugins/internal.py:683 +#: ipalib/plugins/internal.py:714 msgid "Text does not match field pattern" msgstr "" -#: ipalib/plugins/internal.py:684 +#: ipalib/plugins/internal.py:715 +msgid "Must be an UTC date/time value (e.g., \"2014-01-20 17:58:01Z\")" +msgstr "" + +#: ipalib/plugins/internal.py:716 msgid "Must be a decimal number" msgstr "" -#: ipalib/plugins/internal.py:685 +#: ipalib/plugins/internal.py:717 +msgid "Format error" +msgstr "" + +#: ipalib/plugins/internal.py:718 msgid "Must be an integer" msgstr "" -#: ipalib/plugins/internal.py:686 +#: ipalib/plugins/internal.py:719 msgid "Not a valid IP address" msgstr "" -#: ipalib/plugins/internal.py:687 +#: ipalib/plugins/internal.py:720 msgid "Not a valid IPv4 address" msgstr "" -#: ipalib/plugins/internal.py:688 +#: ipalib/plugins/internal.py:721 msgid "Not a valid IPv6 address" msgstr "" -#: ipalib/plugins/internal.py:689 +#: ipalib/plugins/internal.py:722 +#, python-brace-format msgid "Maximum value is ${value}" msgstr "" -#: ipalib/plugins/internal.py:690 +#: ipalib/plugins/internal.py:723 +#, python-brace-format msgid "Minimum value is ${value}" msgstr "" -#: ipalib/plugins/internal.py:691 +#: ipalib/plugins/internal.py:724 msgid "Not a valid network address" msgstr "" -#: ipalib/plugins/internal.py:692 +#: ipalib/plugins/internal.py:725 +msgid "Parse error" +msgstr "" + +#: ipalib/plugins/internal.py:726 +#, python-brace-format msgid "'${port}' is not a valid port" msgstr "" -#: ipalib/plugins/internal.py:693 +#: ipalib/plugins/internal.py:727 msgid "Required field" msgstr "" -#: ipalib/plugins/internal.py:694 +#: ipalib/plugins/internal.py:728 msgid "Unsupported value" msgstr "" -#: ipalib/plugins/internal.py:699 +#: ipalib/plugins/internal.py:733 msgid "Dict of I18N messages" msgstr "" -#: ipalib/plugins/krbtpolicy.py:25 +#: ipalib/plugins/krbtpolicy.py:27 msgid "" "\n" "Kerberos ticket policy\n" @@ -7075,43 +7552,52 @@ msgid "" " ipa krbtpolicy-mod admin --maxlife=3600\n" msgstr "" -#: ipalib/plugins/krbtpolicy.py:75 +#: ipalib/plugins/krbtpolicy.py:80 msgid "kerberos ticket policy settings" msgstr "" -#: ipalib/plugins/krbtpolicy.py:86 +#: ipalib/plugins/krbtpolicy.py:125 msgid "Manage ticket policy for specific user" msgstr "" -#: ipalib/plugins/krbtpolicy.py:91 +#: ipalib/plugins/krbtpolicy.py:130 msgid "Max life" msgstr "" -#: ipalib/plugins/krbtpolicy.py:92 +#: ipalib/plugins/krbtpolicy.py:131 msgid "Maximum ticket life (seconds)" msgstr "" -#: ipalib/plugins/krbtpolicy.py:97 +#: ipalib/plugins/krbtpolicy.py:136 msgid "Max renew" msgstr "" -#: ipalib/plugins/krbtpolicy.py:98 +#: ipalib/plugins/krbtpolicy.py:137 msgid "Maximum renewable age (seconds)" msgstr "" -#: ipalib/plugins/krbtpolicy.py:112 +#: ipalib/plugins/krbtpolicy.py:150 msgid "Modify Kerberos ticket policy." msgstr "" -#: ipalib/plugins/krbtpolicy.py:126 +#: ipalib/plugins/krbtpolicy.py:163 msgid "Display the current Kerberos ticket policy." msgstr "" -#: ipalib/plugins/krbtpolicy.py:151 +#: ipalib/plugins/krbtpolicy.py:186 +#, python-format +msgid "Ticket policy for %s could not be read" +msgstr "" + +#: ipalib/plugins/krbtpolicy.py:199 +msgid "Default ticket policy could not be read" +msgstr "" + +#: ipalib/plugins/krbtpolicy.py:205 msgid "Reset Kerberos ticket policy to the default values." msgstr "" -#: ipalib/plugins/migration.py:35 +#: ipalib/plugins/migration.py:38 msgid "" "\n" "Migration to IPA\n" @@ -7209,210 +7695,218 @@ msgid "" "updated.\n" msgstr "" -#: ipalib/plugins/migration.py:130 +#: ipalib/plugins/migration.py:135 #, python-format msgid "" "Kerberos principal %s already exists. Use 'ipa user-mod' to set it manually." msgstr "" -#: ipalib/plugins/migration.py:131 +#: ipalib/plugins/migration.py:136 #, python-format msgid "" "Unable to determine if Kerberos principal %s already exists. Use 'ipa user-" "mod' to set it manually." msgstr "" -#: ipalib/plugins/migration.py:132 +#: ipalib/plugins/migration.py:137 msgid "" "Failed to add user to the default group. Use 'ipa group-add-member' to add " "manually." msgstr "" -#: ipalib/plugins/migration.py:133 +#: ipalib/plugins/migration.py:138 msgid "Migration of LDAP search reference is not supported." msgstr "" -#: ipalib/plugins/migration.py:134 +#: ipalib/plugins/migration.py:139 msgid "Malformed DN" msgstr "" -#: ipalib/plugins/migration.py:151 +#: ipalib/plugins/migration.py:156 #, python-format msgid "%(user)s is not a POSIX user" msgstr "" -#: ipalib/plugins/migration.py:419 +#: ipalib/plugins/migration.py:429 msgid "" ". Check GID of the existing group. Use --group-overwrite-gid option to " "overwrite the GID" msgstr "" -#: ipalib/plugins/migration.py:434 +#: ipalib/plugins/migration.py:444 msgid "Invalid LDAP URI." msgstr "" -#: ipalib/plugins/migration.py:439 +#: ipalib/plugins/migration.py:450 msgid "Migrate users and groups from DS to IPA." msgstr "" -#: ipalib/plugins/migration.py:486 +#: ipalib/plugins/migration.py:497 msgid "LDAP URI" msgstr "" -#: ipalib/plugins/migration.py:487 +#: ipalib/plugins/migration.py:498 msgid "LDAP URI of DS server to migrate from" msgstr "" -#: ipalib/plugins/migration.py:493 +#: ipalib/plugins/migration.py:504 msgid "bind password" msgstr "" -#: ipalib/plugins/migration.py:500 +#: ipalib/plugins/migration.py:511 msgid "Bind DN" msgstr "" -#: ipalib/plugins/migration.py:506 +#: ipalib/plugins/migration.py:517 msgid "User container" msgstr "" -#: ipalib/plugins/migration.py:507 +#: ipalib/plugins/migration.py:518 msgid "DN of container for users in DS relative to base DN" msgstr "" -#: ipalib/plugins/migration.py:513 +#: ipalib/plugins/migration.py:524 msgid "Group container" msgstr "" -#: ipalib/plugins/migration.py:514 +#: ipalib/plugins/migration.py:525 msgid "DN of container for groups in DS relative to base DN" msgstr "" -#: ipalib/plugins/migration.py:520 +#: ipalib/plugins/migration.py:531 msgid "User object class" msgstr "" -#: ipalib/plugins/migration.py:521 +#: ipalib/plugins/migration.py:532 msgid "Objectclasses used to search for user entries in DS" msgstr "" -#: ipalib/plugins/migration.py:528 +#: ipalib/plugins/migration.py:539 msgid "Group object class" msgstr "" -#: ipalib/plugins/migration.py:529 +#: ipalib/plugins/migration.py:540 msgid "Objectclasses used to search for group entries in DS" msgstr "" -#: ipalib/plugins/migration.py:536 +#: ipalib/plugins/migration.py:547 msgid "Ignore user object class" msgstr "" -#: ipalib/plugins/migration.py:537 +#: ipalib/plugins/migration.py:548 msgid "Objectclasses to be ignored for user entries in DS" msgstr "" -#: ipalib/plugins/migration.py:544 +#: ipalib/plugins/migration.py:555 msgid "Ignore user attribute" msgstr "" -#: ipalib/plugins/migration.py:545 +#: ipalib/plugins/migration.py:556 msgid "Attributes to be ignored for user entries in DS" msgstr "" -#: ipalib/plugins/migration.py:552 +#: ipalib/plugins/migration.py:563 msgid "Ignore group object class" msgstr "" -#: ipalib/plugins/migration.py:553 +#: ipalib/plugins/migration.py:564 msgid "Objectclasses to be ignored for group entries in DS" msgstr "" -#: ipalib/plugins/migration.py:560 +#: ipalib/plugins/migration.py:571 msgid "Ignore group attribute" msgstr "" -#: ipalib/plugins/migration.py:561 +#: ipalib/plugins/migration.py:572 msgid "Attributes to be ignored for group entries in DS" msgstr "" -#: ipalib/plugins/migration.py:568 +#: ipalib/plugins/migration.py:579 msgid "Overwrite GID" msgstr "" -#: ipalib/plugins/migration.py:569 +#: ipalib/plugins/migration.py:580 msgid "" "When migrating a group already existing in IPA domain overwrite the group " "GID and report as success" msgstr "" -#: ipalib/plugins/migration.py:574 +#: ipalib/plugins/migration.py:585 msgid "LDAP schema" msgstr "" -#: ipalib/plugins/migration.py:575 +#: ipalib/plugins/migration.py:586 msgid "" "The schema used on the LDAP server. Supported values are RFC2307 and " "RFC2307bis. The default is RFC2307bis" msgstr "" -#: ipalib/plugins/migration.py:581 +#: ipalib/plugins/migration.py:592 msgid "Continue" msgstr "" -#: ipalib/plugins/migration.py:582 +#: ipalib/plugins/migration.py:593 msgid "" "Continuous operation mode. Errors are reported but the process continues" msgstr "" -#: ipalib/plugins/migration.py:587 +#: ipalib/plugins/migration.py:598 msgid "Base DN" msgstr "" -#: ipalib/plugins/migration.py:588 +#: ipalib/plugins/migration.py:599 msgid "Base DN on remote LDAP server" msgstr "" -#: ipalib/plugins/migration.py:592 +#: ipalib/plugins/migration.py:603 msgid "Ignore compat plugin" msgstr "" -#: ipalib/plugins/migration.py:593 +#: ipalib/plugins/migration.py:604 msgid "Allows migration despite the usage of compat plugin" msgstr "" -#: ipalib/plugins/migration.py:601 +#: ipalib/plugins/migration.py:609 +msgid "CA certificate" +msgstr "" + +#: ipalib/plugins/migration.py:610 +msgid "Load CA certificate of LDAP server from FILE" +msgstr "" + +#: ipalib/plugins/migration.py:618 msgid "Lists of objects migrated; categorized by type." msgstr "" -#: ipalib/plugins/migration.py:605 +#: ipalib/plugins/migration.py:622 msgid "Lists of objects that could not be migrated; categorized by type." msgstr "" -#: ipalib/plugins/migration.py:609 +#: ipalib/plugins/migration.py:626 msgid "False if migration mode was disabled." msgstr "" -#: ipalib/plugins/migration.py:613 +#: ipalib/plugins/migration.py:630 msgid "False if migration fails because the compatibility plug-in is enabled." msgstr "" -#: ipalib/plugins/migration.py:617 +#: ipalib/plugins/migration.py:634 #, python-format msgid "%s to exclude from migration" msgstr "" -#: ipalib/plugins/migration.py:619 +#: ipalib/plugins/migration.py:636 msgid "" "search results for objects to be migrated\n" "have been truncated by the server;\n" "migration process might be incomplete\n" msgstr "" -#: ipalib/plugins/migration.py:624 +#: ipalib/plugins/migration.py:641 msgid "Migration mode is disabled. Use 'ipa config-mod' to enable it." msgstr "" -#: ipalib/plugins/migration.py:627 +#: ipalib/plugins/migration.py:644 msgid "" "Passwords have been migrated in pre-hashed format.\n" "IPA is unable to generate Kerberos keys unless provided\n" @@ -7421,61 +7915,61 @@ msgid "" "can use their Kerberos accounts." msgstr "" -#: ipalib/plugins/migration.py:713 +#: ipalib/plugins/migration.py:730 #, python-format msgid "" "%(container)s LDAP search did not return any result (search base: " "%(search_base)s, objectclass: %(objectclass)s)" msgstr "" -#: ipalib/plugins/migration.py:745 ipalib/plugins/user.py:519 +#: ipalib/plugins/migration.py:762 ipalib/plugins/user.py:759 msgid "Default group for new users not found" msgstr "" -#: ipalib/plugins/misc.py:25 +#: ipalib/plugins/misc.py:26 msgid "" "\n" "Misc plug-ins\n" msgstr "" -#: ipalib/plugins/misc.py:36 +#: ipalib/plugins/misc.py:40 msgid "Show environment variables." msgstr "" -#: ipalib/plugins/misc.py:38 +#: ipalib/plugins/misc.py:42 #, python-format msgid "%(count)d variables" msgstr "" -#: ipalib/plugins/misc.py:47 ipalib/plugins/misc.py:115 +#: ipalib/plugins/misc.py:51 ipalib/plugins/misc.py:119 msgid "" "retrieve and print all attributes from the server. Affects command output." msgstr "" -#: ipalib/plugins/misc.py:61 +#: ipalib/plugins/misc.py:65 msgid "Total number of variables env (>= count)" msgstr "" -#: ipalib/plugins/misc.py:66 +#: ipalib/plugins/misc.py:70 msgid "Number of variables returned (<= total)" msgstr "" -#: ipalib/plugins/misc.py:106 +#: ipalib/plugins/misc.py:110 msgid "Show all loaded plugins." msgstr "" -#: ipalib/plugins/misc.py:109 +#: ipalib/plugins/misc.py:113 #, python-format msgid "%(count)d plugin loaded" msgid_plural "%(count)d plugins loaded" msgstr[0] "" msgstr[1] "" -#: ipalib/plugins/misc.py:126 +#: ipalib/plugins/misc.py:130 msgid "Number of plugins loaded" msgstr "" -#: ipalib/plugins/netgroup.py:28 +#: ipalib/plugins/netgroup.py:29 msgid "" "\n" "Netgroups\n" @@ -7501,104 +7995,336 @@ msgid "" " ipa netgroup-del admins\n" msgstr "" -#: ipalib/plugins/netgroup.py:69 +#: ipalib/plugins/netgroup.py:71 msgid "Member Host" msgstr "" -#: ipalib/plugins/netgroup.py:81 +#: ipalib/plugins/netgroup.py:85 msgid "netgroup" msgstr "" -#: ipalib/plugins/netgroup.py:82 +#: ipalib/plugins/netgroup.py:86 msgid "netgroups" msgstr "" -#: ipalib/plugins/netgroup.py:108 +#: ipalib/plugins/netgroup.py:165 msgid "Netgroups" msgstr "" -#: ipalib/plugins/netgroup.py:109 +#: ipalib/plugins/netgroup.py:166 msgid "Netgroup" msgstr "" -#: ipalib/plugins/netgroup.py:116 +#: ipalib/plugins/netgroup.py:173 msgid "Netgroup name" msgstr "" -#: ipalib/plugins/netgroup.py:123 +#: ipalib/plugins/netgroup.py:180 msgid "Netgroup description" msgstr "" -#: ipalib/plugins/netgroup.py:129 +#: ipalib/plugins/netgroup.py:186 msgid "NIS domain name" msgstr "" -#: ipalib/plugins/netgroup.py:134 +#: ipalib/plugins/netgroup.py:191 msgid "IPA unique ID" msgstr "" -#: ipalib/plugins/netgroup.py:156 +#: ipalib/plugins/netgroup.py:212 msgid "Add a new netgroup." msgstr "" -#: ipalib/plugins/netgroup.py:159 +#: ipalib/plugins/netgroup.py:215 #, python-format msgid "Added netgroup \"%(value)s\"" msgstr "" -#: ipalib/plugins/netgroup.py:161 +#: ipalib/plugins/netgroup.py:217 #, python-format msgid "" "hostgroup with name \"%s\" already exists. Hostgroups and netgroups share a " "common namespace" msgstr "" -#: ipalib/plugins/netgroup.py:193 +#: ipalib/plugins/netgroup.py:248 msgid "Delete a netgroup." msgstr "" -#: ipalib/plugins/netgroup.py:195 +#: ipalib/plugins/netgroup.py:250 #, python-format msgid "Deleted netgroup \"%(value)s\"" msgstr "" -#: ipalib/plugins/netgroup.py:201 +#: ipalib/plugins/netgroup.py:256 msgid "Modify a netgroup." msgstr "" -#: ipalib/plugins/netgroup.py:204 +#: ipalib/plugins/netgroup.py:259 #, python-format msgid "Modified netgroup \"%(value)s\"" msgstr "" -#: ipalib/plugins/netgroup.py:222 +#: ipalib/plugins/netgroup.py:277 msgid "Search for a netgroup." msgstr "" -#: ipalib/plugins/netgroup.py:227 +#: ipalib/plugins/netgroup.py:282 #, python-format msgid "%(count)d netgroup matched" msgid_plural "%(count)d netgroups matched" msgstr[0] "" msgstr[1] "" -#: ipalib/plugins/netgroup.py:237 +#: ipalib/plugins/netgroup.py:292 msgid "search for managed groups" msgstr "" -#: ipalib/plugins/netgroup.py:260 +#: ipalib/plugins/netgroup.py:314 msgid "Display information about a netgroup." msgstr "" -#: ipalib/plugins/netgroup.py:268 +#: ipalib/plugins/netgroup.py:321 msgid "Add members to a netgroup." msgstr "" -#: ipalib/plugins/netgroup.py:284 +#: ipalib/plugins/netgroup.py:343 msgid "Remove members from a netgroup." msgstr "" -#: ipalib/plugins/passwd.py:29 +#: ipalib/plugins/otptoken.py:39 +msgid "" +"\n" +"OTP Tokens\n" +msgstr "" + +#: ipalib/plugins/otptoken.py:41 +msgid "" +"\n" +"Manage OTP tokens.\n" +msgstr "" + +#: ipalib/plugins/otptoken.py:43 +msgid "" +"\n" +"IPA supports the use of OTP tokens for multi-factor authentication. This\n" +"code enables the management of OTP tokens.\n" +msgstr "" + +#: ipalib/plugins/otptoken.py:48 +msgid "" +"\n" +" Add a new token:\n" +" ipa otptoken-add --type=totp --owner=jdoe --desc=\"My soft token\"\n" +msgstr "" + +#: ipalib/plugins/otptoken.py:51 +msgid "" +"\n" +" Examine the token:\n" +" ipa otptoken-show a93db710-a31a-4639-8647-f15b2c70b78a\n" +msgstr "" + +#: ipalib/plugins/otptoken.py:54 +msgid "" +"\n" +" Change the vendor:\n" +" ipa otptoken-mod a93db710-a31a-4639-8647-f15b2c70b78a --vendor=\"Red Hat" +"\"\n" +msgstr "" + +#: ipalib/plugins/otptoken.py:57 +msgid "" +"\n" +" Delete a token:\n" +" ipa otptoken-del a93db710-a31a-4639-8647-f15b2c70b78a\n" +msgstr "" + +#: ipalib/plugins/otptoken.py:113 +msgid "OTP token" +msgstr "" + +#: ipalib/plugins/otptoken.py:114 +msgid "OTP tokens" +msgstr "" + +#: ipalib/plugins/otptoken.py:130 +msgid "OTP Tokens" +msgstr "" + +#: ipalib/plugins/otptoken.py:131 +msgid "OTP Token" +msgstr "" + +#: ipalib/plugins/otptoken.py:136 ipalib/plugins/otptoken_yubikey.py:53 +msgid "Unique ID" +msgstr "" + +#: ipalib/plugins/otptoken.py:153 +msgid "Owner" +msgstr "" + +#: ipalib/plugins/otptoken.py:156 ipalib/plugins/user.py:560 +msgid "Manager" +msgstr "" + +#: ipalib/plugins/otptoken.py:161 +msgid "Disabled state" +msgstr "" + +#: ipalib/plugins/otptoken.py:165 +msgid "Validity start" +msgstr "" + +#: ipalib/plugins/otptoken.py:169 +msgid "Validity end" +msgstr "" + +#: ipalib/plugins/otptoken.py:173 +msgid "Vendor" +msgstr "" + +#: ipalib/plugins/otptoken.py:179 +msgid "Model" +msgstr "" + +#: ipalib/plugins/otptoken.py:185 +msgid "Serial" +msgstr "" + +#: ipalib/plugins/otptoken.py:206 +msgid "Digits" +msgstr "" + +#: ipalib/plugins/otptoken.py:214 +msgid "Clock offset" +msgstr "" + +#: ipalib/plugins/otptoken.py:221 +msgid "Clock interval" +msgstr "" + +#: ipalib/plugins/otptoken.py:229 +msgid "Counter" +msgstr "" + +#: ipalib/plugins/otptoken.py:240 +msgid "Add a new OTP token." +msgstr "" + +#: ipalib/plugins/otptoken.py:241 +#, python-format +msgid "Added OTP token \"%(value)s\"" +msgstr "" + +#: ipalib/plugins/otptoken.py:244 +msgid "Display QR code (requires wide terminal)" +msgstr "" + +#: ipalib/plugins/otptoken.py:248 +msgid "URI" +msgstr "" + +#: ipalib/plugins/otptoken.py:329 +msgid "Delete an OTP token." +msgstr "" + +#: ipalib/plugins/otptoken.py:330 +#, python-format +msgid "Deleted OTP token \"%(value)s\"" +msgstr "" + +#: ipalib/plugins/otptoken.py:335 +msgid "Modify a OTP token." +msgstr "" + +#: ipalib/plugins/otptoken.py:336 +#, python-format +msgid "Modified OTP token \"%(value)s\"" +msgstr "" + +#: ipalib/plugins/otptoken.py:349 +msgid "Search for OTP token." +msgstr "" + +#: ipalib/plugins/otptoken.py:350 +#, python-format +msgid "%(count)d OTP token matched" +msgid_plural "%(count)d OTP tokens matched" +msgstr[0] "" +msgstr[1] "" + +#: ipalib/plugins/otptoken.py:376 +msgid "Display information about an OTP token." +msgstr "" + +#: ipalib/plugins/otptoken.py:384 +msgid "Add users that can manage this token." +msgstr "" + +#: ipalib/plugins/otptoken.py:436 +msgid "Synchronize an OTP token." +msgstr "" + +#: ipalib/plugins/otptoken.py:441 +msgid "User ID" +msgstr "" + +#: ipalib/plugins/otptoken.py:443 +msgid "First Code" +msgstr "" + +#: ipalib/plugins/otptoken.py:444 +msgid "Second Code" +msgstr "" + +#: ipalib/plugins/otptoken.py:448 +msgid "Token ID" +msgstr "" + +#: ipalib/plugins/otptoken_yubikey.py:30 +msgid "" +"\n" +"YubiKey Tokens\n" +msgstr "" + +#: ipalib/plugins/otptoken_yubikey.py:32 +msgid "" +"\n" +"Manage YubiKey tokens.\n" +msgstr "" + +#: ipalib/plugins/otptoken_yubikey.py:34 +msgid "" +"\n" +"This code is an extension to the otptoken plugin and provides support for\n" +"reading/writing YubiKey tokens directly.\n" +msgstr "" + +#: ipalib/plugins/otptoken_yubikey.py:39 +msgid "" +"\n" +" Add a new token:\n" +" ipa otptoken-add-yubikey --owner=jdoe --desc=\"My YubiKey\"\n" +msgstr "" + +#: ipalib/plugins/otptoken_yubikey.py:48 +msgid "Add a new YubiKey OTP token." +msgstr "" + +#: ipalib/plugins/otptoken_yubikey.py:61 +msgid "YubiKey slot" +msgstr "" + +#: ipalib/plugins/otptoken_yubikey.py:85 +msgid "No YubiKey found" +msgstr "" + +#: ipalib/plugins/otptoken_yubikey.py:95 +msgid "No free YubiKey slot!" +msgstr "" + +#: ipalib/plugins/passwd.py:30 msgid "" "\n" "Set a user's password\n" @@ -7619,181 +8345,403 @@ msgid "" " ipa passwd tuser1\n" msgstr "" -#: ipalib/plugins/passwd.py:65 +#: ipalib/plugins/passwd.py:69 msgid "Set a user's password." msgstr "" -#: ipalib/plugins/passwd.py:89 +#: ipalib/plugins/passwd.py:95 +msgid "One Time Password" +msgstr "" + +#: ipalib/plugins/passwd.py:101 #, python-format msgid "Changed password for \"%(value)s\"" msgstr "" -#: ipalib/plugins/passwd.py:115 +#: ipalib/plugins/passwd.py:127 msgid "Invalid credentials" msgstr "" -#: ipalib/plugins/permission.py:27 +#: ipalib/plugins/permission.py:33 msgid "" "\n" "Permissions\n" +msgstr "" + +#: ipalib/plugins/permission.py:35 +msgid "" "\n" "A permission enables fine-grained delegation of rights. A permission is\n" -"a human-readable form of a 389-ds Access Control Rule, or instruction " -"(ACI).\n" +"a human-readable wrapper around a 389-ds Access Control Rule,\n" +"or instruction (ACI).\n" "A permission grants the right to perform a specific task such as adding a\n" "user, modifying a group, etc.\n" +msgstr "" + +#: ipalib/plugins/permission.py:41 +msgid "" "\n" "A permission may not contain other permissions.\n" +msgstr "" + +#: ipalib/plugins/permission.py:43 +msgid "" "\n" -"* A permission grants access to read, write, add or delete.\n" +"* A permission grants access to read, write, add, delete, read, search,\n" +" or compare.\n" "* A privilege combines similar permissions (for example all the permissions\n" " needed to add a user).\n" "* A role grants a set of privileges to users, groups, hosts or hostgroups.\n" +msgstr "" + +#: ipalib/plugins/permission.py:49 +msgid "" "\n" "A permission is made up of a number of different parts:\n" "\n" "1. The name of the permission.\n" "2. The target of the permission.\n" "3. The rights granted by the permission.\n" +msgstr "" + +#: ipalib/plugins/permission.py:55 +msgid "" "\n" "Rights define what operations are allowed, and may be one or more\n" "of the following:\n" "1. write - write one or more attributes\n" "2. read - read one or more attributes\n" -"3. add - add a new entry to the tree\n" -"4. delete - delete an existing entry\n" -"5. all - all permissions are granted\n" -"\n" -"Read permission is granted for most attributes by default so the read\n" -"permission is not expected to be used very often.\n" +"3. search - search on one or more attributes\n" +"4. compare - compare one or more attributes\n" +"5. add - add a new entry to the tree\n" +"6. delete - delete an existing entry\n" +"7. all - all permissions are granted\n" +msgstr "" + +#: ipalib/plugins/permission.py:65 +msgid "" "\n" "Note the distinction between attributes and entries. The permissions are\n" "independent, so being able to add a user does not mean that the user will\n" "be editable.\n" +msgstr "" + +#: ipalib/plugins/permission.py:69 +msgid "" "\n" "There are a number of allowed targets:\n" -"1. type: a type of object (user, group, etc).\n" -"2. memberof: a member of a group or hostgroup\n" -"3. filter: an LDAP filter\n" -"4. subtree: an LDAP filter specifying part of the LDAP DIT. This is a\n" -" super-set of the \"type\" target.\n" -"5. targetgroup: grant access to modify a specific group (such as granting\n" -" the rights to manage group membership)\n" +"1. subtree: a DN; the permission applies to the subtree under this DN\n" +"2. target filter: an LDAP filter\n" +"3. target: DN with possible wildcards, specifies entries permission applies " +"to\n" +msgstr "" + +#: ipalib/plugins/permission.py:74 +msgid "" "\n" -"EXAMPLES:\n" +"Additionally, there are the following convenience options.\n" +"Setting one of these options will set the corresponding attribute(s).\n" +"1. type: a type of object (user, group, etc); sets subtree and target " +"filter.\n" +"2. memberof: apply to members of a group; sets target filter\n" +"3. targetgroup: grant access to modify a specific group (such as granting\n" +" the rights to manage group membership); sets target.\n" +msgstr "" + +#: ipalib/plugins/permission.py:81 +msgid "" +"\n" +"Managed permissions\n" +msgstr "" + +#: ipalib/plugins/permission.py:83 +msgid "" +"\n" +"Permissions that come with IPA by default can be so-called \"managed\"\n" +"permissions. These have a default set of attributes they apply to,\n" +"but the administrator can add/remove individual attributes to/from the set.\n" +msgstr "" + +#: ipalib/plugins/permission.py:87 +msgid "" +"\n" +"Deleting or renaming a managed permission, as well as changing its target,\n" +"is not allowed.\n" +msgstr "" + +#: ipalib/plugins/permission.py:92 +msgid "" "\n" " Add a permission that grants the creation of users:\n" " ipa permission-add --type=user --permissions=add \"Add Users\"\n" +msgstr "" + +#: ipalib/plugins/permission.py:95 +msgid "" "\n" " Add a permission that grants the ability to manage group membership:\n" " ipa permission-add --attrs=member --permissions=write --type=group " "\"Manage Group Members\"\n" msgstr "" -#: ipalib/plugins/permission.py:85 -msgid "Permission Type" +#: ipalib/plugins/permission.py:126 +msgid "must be enclosed in parentheses" msgstr "" -#: ipalib/plugins/permission.py:107 +#: ipalib/plugins/permission.py:145 +#, python-format +msgid "\"%s\" is not an object type" +msgstr "" + +#: ipalib/plugins/permission.py:147 ipalib/plugins/permission.py:832 +#, python-format +msgid "\"%s\" is not a valid permission type" +msgstr "" + +#: ipalib/plugins/permission.py:168 msgid "permission" msgstr "" -#: ipalib/plugins/permission.py:108 +#: ipalib/plugins/permission.py:169 msgid "permissions" msgstr "" -#: ipalib/plugins/permission.py:128 +#: ipalib/plugins/permission.py:224 msgid "Permission name" msgstr "" -#: ipalib/plugins/permission.py:136 -msgid "Permissions to grant (read, write, add, delete, all)" +#: ipalib/plugins/permission.py:234 +msgid "Granted rights" +msgstr "" + +#: ipalib/plugins/permission.py:235 +msgid "Rights to grant (read, search, compare, write, add, delete, all)" msgstr "" -#: ipalib/plugins/permission.py:151 +#: ipalib/plugins/permission.py:241 +msgid "Effective attributes" +msgstr "" + +#: ipalib/plugins/permission.py:242 +msgid "All attributes to which the permission applies" +msgstr "" + +#: ipalib/plugins/permission.py:247 +msgid "Included attributes" +msgstr "" + +#: ipalib/plugins/permission.py:248 +msgid "User-specified attributes to which the permission applies" +msgstr "" + +#: ipalib/plugins/permission.py:253 +msgid "Excluded attributes" +msgstr "" + +#: ipalib/plugins/permission.py:254 msgid "" -"Type of IPA object (user, group, host, hostgroup, service, netgroup, dns)" +"User-specified attributes to which the permission explicitly does not apply" msgstr "" -#: ipalib/plugins/permission.py:157 -msgid "Member of group" +#: ipalib/plugins/permission.py:260 +msgid "Default attributes" +msgstr "" + +#: ipalib/plugins/permission.py:261 +msgid "Attributes to which the permission applies by default" msgstr "" -#: ipalib/plugins/permission.py:158 -msgid "Target members of a group" +#: ipalib/plugins/permission.py:267 ipalib/plugins/permission.py:268 +msgid "Bind rule type" msgstr "" -#: ipalib/plugins/permission.py:170 +#: ipalib/plugins/permission.py:278 msgid "Subtree to apply permissions to" msgstr "" -#: ipalib/plugins/permission.py:176 -msgid "User group to apply permissions to" +#: ipalib/plugins/permission.py:284 ipalib/plugins/permission.py:285 +msgid "Extra target filter" msgstr "" -#: ipalib/plugins/permission.py:201 -msgid "Add a new permission." +#: ipalib/plugins/permission.py:291 +msgid "Raw target filter" +msgstr "" + +#: ipalib/plugins/permission.py:292 +msgid "All target filters, including those implied by type and memberof" +msgstr "" + +#: ipalib/plugins/permission.py:299 +msgid "ACI target DN" +msgstr "" + +#: ipalib/plugins/permission.py:304 +msgid "Member of group" +msgstr "" + +#: ipalib/plugins/permission.py:305 +msgid "Target members of a group (sets memberOf targetfilter)" +msgstr "" + +#: ipalib/plugins/permission.py:310 +msgid "User group to apply permissions to (sets target)" +msgstr "" + +#: ipalib/plugins/permission.py:316 +msgid "Type of IPA object (sets subtree and objectClass targetfilter)" +msgstr "" + +#: ipalib/plugins/permission.py:322 +#, python-format +msgid "Deprecated; use %s" +msgstr "" + +#: ipalib/plugins/permission.py:333 +#, python-format +msgid "Permission with unknown flag %s may not be modified or removed" +msgstr "" + +#: ipalib/plugins/permission.py:337 +msgid "A SYSTEM permission may not be modified or removed" +msgstr "" + +#: ipalib/plugins/permission.py:565 +#, python-format +msgid "Entry %s not found" +msgstr "" + +#: ipalib/plugins/permission.py:651 +#, python-format +msgid "The ACI for permission %(name)s was not found in %(dn)s " +msgstr "" + +#: ipalib/plugins/permission.py:755 +msgid "" +"cannot specify full target filter and extra target filter simultaneously" +msgstr "" + +#: ipalib/plugins/permission.py:778 +#, python-format +msgid "option was renamed; use %s" +msgstr "" + +#: ipalib/plugins/permission.py:782 +#, python-format +msgid "Cannot use %(old_name)s with %(new_name)s" msgstr "" -#: ipalib/plugins/permission.py:203 ipalib/plugins/permission.py:259 +#: ipalib/plugins/permission.py:796 ipalib/plugins/permission.py:811 +#, python-format +msgid "%s: group not found" +msgstr "" + +#: ipalib/plugins/permission.py:806 +msgid "target and targetgroup are mutually exclusive" +msgstr "" + +#: ipalib/plugins/permission.py:827 +msgid "subtree and type are mutually exclusive" +msgstr "" + +#: ipalib/plugins/permission.py:863 +msgid "Bad search filter" +msgstr "" + +#: ipalib/plugins/permission.py:873 +#, python-format +msgid "Entry %s does not exist" +msgstr "" + +#: ipalib/plugins/permission.py:882 +msgid "" +"there must be at least one target entry specifier (e.g. target, " +"targetfilter, attrs)" +msgstr "" + +#: ipalib/plugins/permission.py:892 +msgid "Add a system permission without an ACI (internal command)" +msgstr "" + +#: ipalib/plugins/permission.py:894 ipalib/plugins/permission.py:925 #, python-format msgid "Added permission \"%(value)s\"" msgstr "" -#: ipalib/plugins/permission.py:257 -msgid "Add a system permission without an ACI" +#: ipalib/plugins/permission.py:900 +msgid "Permission flags" msgstr "" -#: ipalib/plugins/permission.py:265 -msgid "Permission type" +#: ipalib/plugins/permission.py:923 +msgid "Add a new permission." msgstr "" -#: ipalib/plugins/permission.py:292 +#: ipalib/plugins/permission.py:951 +msgid "attrs and included attributes are mutually exclusive" +msgstr "" + +#: ipalib/plugins/permission.py:985 msgid "Delete a permission." msgstr "" -#: ipalib/plugins/permission.py:294 +#: ipalib/plugins/permission.py:987 #, python-format msgid "Deleted permission \"%(value)s\"" msgstr "" -#: ipalib/plugins/permission.py:300 +#: ipalib/plugins/permission.py:993 msgid "force delete of SYSTEM permissions" msgstr "" -#: ipalib/plugins/permission.py:308 -msgid "A SYSTEM permission may not be removed" +#: ipalib/plugins/permission.py:1007 +msgid "cannot delete managed permissions" msgstr "" -#: ipalib/plugins/permission.py:320 +#: ipalib/plugins/permission.py:1013 +#, python-format +msgid "ACI of permission %s was not found" +msgstr "" + +#: ipalib/plugins/permission.py:1020 msgid "Modify a permission." msgstr "" -#: ipalib/plugins/permission.py:322 +#: ipalib/plugins/permission.py:1022 #, python-format msgid "Modified permission \"%(value)s\"" msgstr "" -#: ipalib/plugins/permission.py:329 -msgid "A SYSTEM permission may not be modified" +#: ipalib/plugins/permission.py:1056 +msgid "cannot rename managed permissions" +msgstr "" + +#: ipalib/plugins/permission.py:1063 ipalib/plugins/permission.py:1067 +msgid "not modifiable on managed permissions" msgstr "" -#: ipalib/plugins/permission.py:354 -msgid "New name can not be empty" +#: ipalib/plugins/permission.py:1074 +msgid "only available on managed permissions" msgstr "" -#: ipalib/plugins/permission.py:410 +#: ipalib/plugins/permission.py:1081 ipalib/plugins/permission.py:1201 +msgid "attrs and included/excluded attributes are mutually exclusive" +msgstr "" + +#: ipalib/plugins/permission.py:1092 +msgid "cannot set bindtype for a permission that is assigned to a privilege" +msgstr "" + +#: ipalib/plugins/permission.py:1186 msgid "Search for permissions." msgstr "" -#: ipalib/plugins/permission.py:413 +#: ipalib/plugins/permission.py:1189 #, python-format msgid "%(count)d permission matched" msgid_plural "%(count)d permissions matched" msgstr[0] "" msgstr[1] "" -#: ipalib/plugins/permission.py:492 +#: ipalib/plugins/permission.py:1316 msgid "Display information about a permission." msgstr "" @@ -7831,7 +8779,7 @@ msgstr "" msgid "Ping a remote server." msgstr "" -#: ipalib/plugins/pkinit.py:26 +#: ipalib/plugins/pkinit.py:27 msgid "" "\n" "Kerberos pkinit options\n" @@ -7853,24 +8801,24 @@ msgid "" "http://k5wiki.kerberos.org/wiki/Projects/Anonymous_pkinit\n" msgstr "" -#: ipalib/plugins/pkinit.py:50 +#: ipalib/plugins/pkinit.py:54 msgid "pkinit" msgstr "" -#: ipalib/plugins/pkinit.py:52 +#: ipalib/plugins/pkinit.py:56 msgid "PKINIT" msgstr "" -#: ipalib/plugins/pkinit.py:64 +#: ipalib/plugins/pkinit.py:67 #, python-format msgid "Unknown command %s" msgstr "" -#: ipalib/plugins/pkinit.py:68 +#: ipalib/plugins/pkinit.py:72 msgid "Enable or Disable Anonymous PKINIT." msgstr "" -#: ipalib/plugins/privilege.py:23 +#: ipalib/plugins/privilege.py:24 msgid "" "\n" "Privileges\n" @@ -7893,93 +8841,100 @@ msgid "" "See role and permission for additional information.\n" msgstr "" -#: ipalib/plugins/privilege.py:49 +#: ipalib/plugins/privilege.py:54 msgid "privilege" msgstr "" -#: ipalib/plugins/privilege.py:50 +#: ipalib/plugins/privilege.py:55 msgid "privileges" msgstr "" -#: ipalib/plugins/privilege.py:62 +#: ipalib/plugins/privilege.py:96 msgid "Privileges" msgstr "" -#: ipalib/plugins/privilege.py:63 +#: ipalib/plugins/privilege.py:97 msgid "Privilege" msgstr "" -#: ipalib/plugins/privilege.py:68 +#: ipalib/plugins/privilege.py:102 msgid "Privilege name" msgstr "" -#: ipalib/plugins/privilege.py:74 +#: ipalib/plugins/privilege.py:108 msgid "Privilege description" msgstr "" -#: ipalib/plugins/privilege.py:82 +#: ipalib/plugins/privilege.py:115 msgid "Add a new privilege." msgstr "" -#: ipalib/plugins/privilege.py:84 +#: ipalib/plugins/privilege.py:117 #, python-format msgid "Added privilege \"%(value)s\"" msgstr "" -#: ipalib/plugins/privilege.py:90 +#: ipalib/plugins/privilege.py:122 msgid "Delete a privilege." msgstr "" -#: ipalib/plugins/privilege.py:92 +#: ipalib/plugins/privilege.py:124 #, python-format msgid "Deleted privilege \"%(value)s\"" msgstr "" -#: ipalib/plugins/privilege.py:98 +#: ipalib/plugins/privilege.py:129 msgid "Modify a privilege." msgstr "" -#: ipalib/plugins/privilege.py:100 +#: ipalib/plugins/privilege.py:131 #, python-format msgid "Modified privilege \"%(value)s\"" msgstr "" -#: ipalib/plugins/privilege.py:106 +#: ipalib/plugins/privilege.py:136 msgid "Search for privileges." msgstr "" -#: ipalib/plugins/privilege.py:109 +#: ipalib/plugins/privilege.py:139 #, python-format msgid "%(count)d privilege matched" msgid_plural "%(count)d privileges matched" msgstr[0] "" msgstr[1] "" -#: ipalib/plugins/privilege.py:116 +#: ipalib/plugins/privilege.py:145 msgid "Display information about a privilege." msgstr "" -#: ipalib/plugins/privilege.py:122 +#: ipalib/plugins/privilege.py:150 msgid "Add members to a privilege." msgstr "" -#: ipalib/plugins/privilege.py:139 +#: ipalib/plugins/privilege.py:165 msgid "Add permissions to a privilege." msgstr "" -#: ipalib/plugins/privilege.py:154 +#: ipalib/plugins/privilege.py:180 msgid "Number of permissions added" msgstr "" -#: ipalib/plugins/privilege.py:162 +#: ipalib/plugins/privilege.py:205 +#, python-format +msgid "" +"cannot add permission \"%(perm)s\" with bindtype \"%(bindtype)s\" to a " +"privilege" +msgstr "" + +#: ipalib/plugins/privilege.py:218 msgid "Remove permissions from a privilege." msgstr "" -#: ipalib/plugins/privilege.py:179 +#: ipalib/plugins/privilege.py:235 msgid "Number of permissions removed" msgstr "" -#: ipalib/plugins/pwpolicy.py:30 +#: ipalib/plugins/pwpolicy.py:31 msgid "" "\n" "Password policy\n" @@ -8025,135 +8980,304 @@ msgid "" " ipa pwpolicy-mod --minclasses=2 localadmins\n" msgstr "" -#: ipalib/plugins/pwpolicy.py:90 +#: ipalib/plugins/pwpolicy.py:130 #, python-format msgid "priority must be a unique value (%(prio)d already used by %(gname)s)" msgstr "" -#: ipalib/plugins/pwpolicy.py:180 +#: ipalib/plugins/pwpolicy.py:214 msgid "password policy" msgstr "" -#: ipalib/plugins/pwpolicy.py:181 +#: ipalib/plugins/pwpolicy.py:215 msgid "password policies" msgstr "" -#: ipalib/plugins/pwpolicy.py:205 +#: ipalib/plugins/pwpolicy.py:284 msgid "Max failures" msgstr "" -#: ipalib/plugins/pwpolicy.py:206 +#: ipalib/plugins/pwpolicy.py:285 msgid "Consecutive failures before lockout" msgstr "" -#: ipalib/plugins/pwpolicy.py:211 +#: ipalib/plugins/pwpolicy.py:290 msgid "Failure reset interval" msgstr "" -#: ipalib/plugins/pwpolicy.py:212 +#: ipalib/plugins/pwpolicy.py:291 msgid "Period after which failure count will be reset (seconds)" msgstr "" -#: ipalib/plugins/pwpolicy.py:217 +#: ipalib/plugins/pwpolicy.py:296 msgid "Lockout duration" msgstr "" -#: ipalib/plugins/pwpolicy.py:218 +#: ipalib/plugins/pwpolicy.py:297 msgid "Period for which lockout is enforced (seconds)" msgstr "" -#: ipalib/plugins/pwpolicy.py:223 +#: ipalib/plugins/pwpolicy.py:302 msgid "Password Policies" msgstr "" -#: ipalib/plugins/pwpolicy.py:229 +#: ipalib/plugins/pwpolicy.py:308 msgid "Group" msgstr "" -#: ipalib/plugins/pwpolicy.py:230 +#: ipalib/plugins/pwpolicy.py:309 msgid "Manage password policy for specific group" msgstr "" -#: ipalib/plugins/pwpolicy.py:235 +#: ipalib/plugins/pwpolicy.py:314 msgid "Max lifetime (days)" msgstr "" -#: ipalib/plugins/pwpolicy.py:236 +#: ipalib/plugins/pwpolicy.py:315 msgid "Maximum password lifetime (in days)" msgstr "" -#: ipalib/plugins/pwpolicy.py:242 +#: ipalib/plugins/pwpolicy.py:321 msgid "Min lifetime (hours)" msgstr "" -#: ipalib/plugins/pwpolicy.py:243 +#: ipalib/plugins/pwpolicy.py:322 msgid "Minimum password lifetime (in hours)" msgstr "" -#: ipalib/plugins/pwpolicy.py:248 +#: ipalib/plugins/pwpolicy.py:327 msgid "History size" msgstr "" -#: ipalib/plugins/pwpolicy.py:249 +#: ipalib/plugins/pwpolicy.py:328 msgid "Password history size" msgstr "" -#: ipalib/plugins/pwpolicy.py:254 +#: ipalib/plugins/pwpolicy.py:333 msgid "Character classes" msgstr "" -#: ipalib/plugins/pwpolicy.py:255 +#: ipalib/plugins/pwpolicy.py:334 msgid "Minimum number of character classes" msgstr "" -#: ipalib/plugins/pwpolicy.py:261 +#: ipalib/plugins/pwpolicy.py:340 msgid "Min length" msgstr "" -#: ipalib/plugins/pwpolicy.py:262 +#: ipalib/plugins/pwpolicy.py:341 msgid "Minimum length of password" msgstr "" -#: ipalib/plugins/pwpolicy.py:268 +#: ipalib/plugins/pwpolicy.py:347 msgid "Priority of the policy (higher number means lower priority" msgstr "" -#: ipalib/plugins/pwpolicy.py:322 +#: ipalib/plugins/pwpolicy.py:401 msgid "Maximum password life must be greater than minimum." msgstr "" -#: ipalib/plugins/pwpolicy.py:341 +#: ipalib/plugins/pwpolicy.py:419 msgid "Add a new group password policy." msgstr "" -#: ipalib/plugins/pwpolicy.py:368 +#: ipalib/plugins/pwpolicy.py:445 msgid "Delete a group password policy." msgstr "" -#: ipalib/plugins/pwpolicy.py:380 +#: ipalib/plugins/pwpolicy.py:457 msgid "cannot delete global password policy" msgstr "" -#: ipalib/plugins/pwpolicy.py:396 +#: ipalib/plugins/pwpolicy.py:472 msgid "Modify a group password policy." msgstr "" -#: ipalib/plugins/pwpolicy.py:407 +#: ipalib/plugins/pwpolicy.py:483 msgid "priority cannot be set on global policy" msgstr "" -#: ipalib/plugins/pwpolicy.py:440 +#: ipalib/plugins/pwpolicy.py:515 msgid "Display information about password policy." msgstr "" -#: ipalib/plugins/pwpolicy.py:445 +#: ipalib/plugins/pwpolicy.py:520 msgid "Display effective policy for a specific user" msgstr "" -#: ipalib/plugins/pwpolicy.py:470 +#: ipalib/plugins/pwpolicy.py:544 msgid "Search for group password policies." msgstr "" +#: ipalib/plugins/radiusproxy.py:27 +msgid "" +"\n" +"RADIUS Proxy Servers\n" +msgstr "" + +#: ipalib/plugins/radiusproxy.py:29 +msgid "" +"\n" +"Manage RADIUS Proxy Servers.\n" +msgstr "" + +#: ipalib/plugins/radiusproxy.py:31 +msgid "" +"\n" +"IPA supports the use of an external RADIUS proxy server for krb5 OTP\n" +"authentications. This permits a great deal of flexibility when\n" +"integrating with third-party authentication services.\n" +msgstr "" + +#: ipalib/plugins/radiusproxy.py:37 +msgid "" +"\n" +" Add a new server:\n" +" ipa radiusproxy-add MyRADIUS --server=radius.example.com:1812\n" +msgstr "" + +#: ipalib/plugins/radiusproxy.py:40 +msgid "" +"\n" +" Find all servers whose entries include the string \"example.com\":\n" +" ipa radiusproxy-find example.com\n" +msgstr "" + +#: ipalib/plugins/radiusproxy.py:43 +msgid "" +"\n" +" Examine the configuration:\n" +" ipa radiusproxy-show MyRADIUS\n" +msgstr "" + +#: ipalib/plugins/radiusproxy.py:46 +msgid "" +"\n" +" Change the secret:\n" +" ipa radiusproxy-mod MyRADIUS --secret\n" +msgstr "" + +#: ipalib/plugins/radiusproxy.py:49 +msgid "" +"\n" +" Delete a configuration:\n" +" ipa radiusproxy-del MyRADIUS\n" +msgstr "" + +#: ipalib/plugins/radiusproxy.py:60 +msgid "invalid attribute name" +msgstr "" + +#: ipalib/plugins/radiusproxy.py:72 +msgid "invalid port number" +msgstr "" + +#: ipalib/plugins/radiusproxy.py:90 +msgid "RADIUS proxy server" +msgstr "" + +#: ipalib/plugins/radiusproxy.py:91 +msgid "RADIUS proxy servers" +msgstr "" + +#: ipalib/plugins/radiusproxy.py:98 +msgid "RADIUS Servers" +msgstr "" + +#: ipalib/plugins/radiusproxy.py:99 +msgid "RADIUS Server" +msgstr "" + +#: ipalib/plugins/radiusproxy.py:104 +msgid "RADIUS proxy server name" +msgstr "" + +#: ipalib/plugins/radiusproxy.py:110 +msgid "A description of this RADIUS proxy server" +msgstr "" + +#: ipalib/plugins/radiusproxy.py:114 ipalib/plugins/user.py:101 +msgid "Server" +msgstr "" + +#: ipalib/plugins/radiusproxy.py:115 +msgid "The hostname or IP (with or without port)" +msgstr "" + +#: ipalib/plugins/radiusproxy.py:119 +msgid "Secret" +msgstr "" + +#: ipalib/plugins/radiusproxy.py:120 +msgid "The secret used to encrypt data" +msgstr "" + +#: ipalib/plugins/radiusproxy.py:126 +msgid "Timeout" +msgstr "" + +#: ipalib/plugins/radiusproxy.py:127 +msgid "The total timeout across all retries (in seconds)" +msgstr "" + +#: ipalib/plugins/radiusproxy.py:132 +msgid "Retries" +msgstr "" + +#: ipalib/plugins/radiusproxy.py:133 +msgid "The number of times to retry authentication" +msgstr "" + +#: ipalib/plugins/radiusproxy.py:139 +msgid "User attribute" +msgstr "" + +#: ipalib/plugins/radiusproxy.py:140 +msgid "The username attribute on the user object" +msgstr "" + +#: ipalib/plugins/radiusproxy.py:146 +msgid "Add a new RADIUS proxy server." +msgstr "" + +#: ipalib/plugins/radiusproxy.py:147 +#, python-format +msgid "Added RADIUS proxy server \"%(value)s\"" +msgstr "" + +#: ipalib/plugins/radiusproxy.py:151 +msgid "Delete a RADIUS proxy server." +msgstr "" + +#: ipalib/plugins/radiusproxy.py:152 +#, python-format +msgid "Deleted RADIUS proxy server \"%(value)s\"" +msgstr "" + +#: ipalib/plugins/radiusproxy.py:156 +msgid "Modify a RADIUS proxy server." +msgstr "" + +#: ipalib/plugins/radiusproxy.py:157 +#, python-format +msgid "Modified RADIUS proxy server \"%(value)s\"" +msgstr "" + +#: ipalib/plugins/radiusproxy.py:161 +msgid "Search for RADIUS proxy servers." +msgstr "" + +#: ipalib/plugins/radiusproxy.py:163 +#, python-format +msgid "%(count)d RADIUS proxy server matched" +msgid_plural "%(count)d RADIUS proxy servers matched" +msgstr[0] "" +msgstr[1] "" + +#: ipalib/plugins/radiusproxy.py:168 +msgid "Display information about a RADIUS proxy server." +msgstr "" + #: ipalib/plugins/realmdomains.py:30 msgid "" "\n" @@ -8177,51 +9301,51 @@ msgid "" " ipa realmdomains-mod --del-domain=olddomain.com\n" msgstr "" -#: ipalib/plugins/realmdomains.py:61 +#: ipalib/plugins/realmdomains.py:70 msgid "Realm domains" msgstr "" -#: ipalib/plugins/realmdomains.py:79 +#: ipalib/plugins/realmdomains.py:98 msgid "Add domain" msgstr "" -#: ipalib/plugins/realmdomains.py:85 +#: ipalib/plugins/realmdomains.py:104 msgid "Delete domain" msgstr "" -#: ipalib/plugins/realmdomains.py:93 +#: ipalib/plugins/realmdomains.py:112 msgid "Modify realm domains." msgstr "" -#: ipalib/plugins/realmdomains.py:98 +#: ipalib/plugins/realmdomains.py:117 msgid "Force adding domain even if not in DNS" msgstr "" -#: ipalib/plugins/realmdomains.py:111 +#: ipalib/plugins/realmdomains.py:130 msgid "" "you cannot specify the --domain option together with --add-domain or --del-" "domain" msgstr "" -#: ipalib/plugins/realmdomains.py:113 ipalib/plugins/realmdomains.py:133 +#: ipalib/plugins/realmdomains.py:132 ipalib/plugins/realmdomains.py:152 msgid "cannot delete domain of IPA server" msgstr "" -#: ipalib/plugins/realmdomains.py:118 +#: ipalib/plugins/realmdomains.py:137 #, python-format msgid "no SOA or NS records found for domains: %s" msgstr "" -#: ipalib/plugins/realmdomains.py:127 +#: ipalib/plugins/realmdomains.py:146 #, python-format msgid "no SOA or NS records found for domain %s" msgstr "" -#: ipalib/plugins/realmdomains.py:190 +#: ipalib/plugins/realmdomains.py:209 msgid "Display the list of realm domains." msgstr "" -#: ipalib/plugins/role.py:26 +#: ipalib/plugins/role.py:27 msgid "" "\n" "Roles\n" @@ -8260,93 +9384,93 @@ msgid "" " add users, reset passwords or add a user to the default IPA user group.\n" msgstr "" -#: ipalib/plugins/role.py:66 +#: ipalib/plugins/role.py:70 msgid "role" msgstr "" -#: ipalib/plugins/role.py:67 +#: ipalib/plugins/role.py:71 msgid "roles" msgstr "" -#: ipalib/plugins/role.py:82 +#: ipalib/plugins/role.py:129 msgid "Role" msgstr "" -#: ipalib/plugins/role.py:87 +#: ipalib/plugins/role.py:134 msgid "Role name" msgstr "" -#: ipalib/plugins/role.py:93 +#: ipalib/plugins/role.py:140 msgid "A description of this role-group" msgstr "" -#: ipalib/plugins/role.py:101 +#: ipalib/plugins/role.py:148 msgid "Add a new role." msgstr "" -#: ipalib/plugins/role.py:103 +#: ipalib/plugins/role.py:150 #, python-format msgid "Added role \"%(value)s\"" msgstr "" -#: ipalib/plugins/role.py:109 +#: ipalib/plugins/role.py:156 msgid "Delete a role." msgstr "" -#: ipalib/plugins/role.py:111 +#: ipalib/plugins/role.py:158 #, python-format msgid "Deleted role \"%(value)s\"" msgstr "" -#: ipalib/plugins/role.py:117 +#: ipalib/plugins/role.py:164 msgid "Modify a role." msgstr "" -#: ipalib/plugins/role.py:119 +#: ipalib/plugins/role.py:166 #, python-format msgid "Modified role \"%(value)s\"" msgstr "" -#: ipalib/plugins/role.py:125 +#: ipalib/plugins/role.py:172 msgid "Search for roles." msgstr "" -#: ipalib/plugins/role.py:128 +#: ipalib/plugins/role.py:175 #, python-format msgid "%(count)d role matched" msgid_plural "%(count)d roles matched" msgstr[0] "" msgstr[1] "" -#: ipalib/plugins/role.py:135 +#: ipalib/plugins/role.py:182 msgid "Display information about a role." msgstr "" -#: ipalib/plugins/role.py:141 +#: ipalib/plugins/role.py:188 msgid "Add members to a role." msgstr "" -#: ipalib/plugins/role.py:147 +#: ipalib/plugins/role.py:194 msgid "Remove members from a role." msgstr "" -#: ipalib/plugins/role.py:153 +#: ipalib/plugins/role.py:200 msgid "Add privileges to a role." msgstr "" -#: ipalib/plugins/role.py:168 +#: ipalib/plugins/role.py:215 msgid "Number of privileges added" msgstr "" -#: ipalib/plugins/role.py:176 +#: ipalib/plugins/role.py:223 msgid "Remove privileges from a role." msgstr "" -#: ipalib/plugins/role.py:191 +#: ipalib/plugins/role.py:238 msgid "Number of privileges removed" msgstr "" -#: ipalib/plugins/selfservice.py:28 +#: ipalib/plugins/selfservice.py:29 msgid "" "\n" "Self-service Permissions\n" @@ -8379,73 +9503,73 @@ msgid "" " ipa selfservice-del \"Users manage their own address\"\n" msgstr "" -#: ipalib/plugins/selfservice.py:71 +#: ipalib/plugins/selfservice.py:75 msgid "self service permission" msgstr "" -#: ipalib/plugins/selfservice.py:72 +#: ipalib/plugins/selfservice.py:76 msgid "self service permissions" msgstr "" -#: ipalib/plugins/selfservice.py:73 +#: ipalib/plugins/selfservice.py:77 msgid "Self Service Permissions" msgstr "" -#: ipalib/plugins/selfservice.py:74 +#: ipalib/plugins/selfservice.py:78 msgid "Self Service Permission" msgstr "" -#: ipalib/plugins/selfservice.py:79 ipalib/plugins/selfservice.py:80 +#: ipalib/plugins/selfservice.py:83 ipalib/plugins/selfservice.py:84 msgid "Self-service name" msgstr "" -#: ipalib/plugins/selfservice.py:94 +#: ipalib/plugins/selfservice.py:98 msgid "Attributes to which the permission applies." msgstr "" -#: ipalib/plugins/selfservice.py:123 +#: ipalib/plugins/selfservice.py:127 msgid "Add a new self-service permission." msgstr "" -#: ipalib/plugins/selfservice.py:125 +#: ipalib/plugins/selfservice.py:129 #, python-format msgid "Added selfservice \"%(value)s\"" msgstr "" -#: ipalib/plugins/selfservice.py:145 +#: ipalib/plugins/selfservice.py:149 msgid "Delete a self-service permission." msgstr "" -#: ipalib/plugins/selfservice.py:148 +#: ipalib/plugins/selfservice.py:152 #, python-format msgid "Deleted selfservice \"%(value)s\"" msgstr "" -#: ipalib/plugins/selfservice.py:163 +#: ipalib/plugins/selfservice.py:167 msgid "Modify a self-service permission." msgstr "" -#: ipalib/plugins/selfservice.py:165 +#: ipalib/plugins/selfservice.py:169 #, python-format msgid "Modified selfservice \"%(value)s\"" msgstr "" -#: ipalib/plugins/selfservice.py:185 +#: ipalib/plugins/selfservice.py:189 msgid "Search for a self-service permission." msgstr "" -#: ipalib/plugins/selfservice.py:188 +#: ipalib/plugins/selfservice.py:192 #, python-format msgid "%(count)d selfservice matched" msgid_plural "%(count)d selfservices matched" msgstr[0] "" msgstr[1] "" -#: ipalib/plugins/selfservice.py:212 +#: ipalib/plugins/selfservice.py:216 msgid "Display information about a self-service permission." msgstr "" -#: ipalib/plugins/selinuxusermap.py:26 +#: ipalib/plugins/selinuxusermap.py:27 msgid "" "\n" "SELinux User Mapping\n" @@ -8496,138 +9620,138 @@ msgid "" " and the default SELinux user are available in the config-show command.\n" msgstr "" -#: ipalib/plugins/selinuxusermap.py:71 +#: ipalib/plugins/selinuxusermap.py:74 msgid "HBAC rule and local members cannot both be set" msgstr "" -#: ipalib/plugins/selinuxusermap.py:98 +#: ipalib/plugins/selinuxusermap.py:101 msgid "Invalid SELinux user name, only a-Z and _ are allowed" msgstr "" -#: ipalib/plugins/selinuxusermap.py:100 +#: ipalib/plugins/selinuxusermap.py:103 msgid "Invalid MLS value, must match s[0-15](-s[0-15])" msgstr "" -#: ipalib/plugins/selinuxusermap.py:103 +#: ipalib/plugins/selinuxusermap.py:106 msgid "" "Invalid MCS value, must match c[0-1023].c[0-1023] and/or c[0-1023]-c[0-c0123]" msgstr "" -#: ipalib/plugins/selinuxusermap.py:118 +#: ipalib/plugins/selinuxusermap.py:121 msgid "SELinux user map list not found in configuration" msgstr "" -#: ipalib/plugins/selinuxusermap.py:123 +#: ipalib/plugins/selinuxusermap.py:126 #, python-format msgid "SELinux user %(user)s not found in ordering list (in config)" msgstr "" -#: ipalib/plugins/selinuxusermap.py:134 +#: ipalib/plugins/selinuxusermap.py:138 msgid "SELinux User Map rule" msgstr "" -#: ipalib/plugins/selinuxusermap.py:135 +#: ipalib/plugins/selinuxusermap.py:139 msgid "SELinux User Map rules" msgstr "" -#: ipalib/plugins/selinuxusermap.py:152 +#: ipalib/plugins/selinuxusermap.py:195 msgid "SELinux User Maps" msgstr "" -#: ipalib/plugins/selinuxusermap.py:153 +#: ipalib/plugins/selinuxusermap.py:196 msgid "SELinux User Map" msgstr "" -#: ipalib/plugins/selinuxusermap.py:163 +#: ipalib/plugins/selinuxusermap.py:206 msgid "SELinux User" msgstr "" -#: ipalib/plugins/selinuxusermap.py:168 +#: ipalib/plugins/selinuxusermap.py:211 msgid "HBAC Rule that defines the users, groups and hostgroups" msgstr "" -#: ipalib/plugins/selinuxusermap.py:228 +#: ipalib/plugins/selinuxusermap.py:271 #, python-format msgid "HBAC rule %(rule)s not found" msgstr "" -#: ipalib/plugins/selinuxusermap.py:247 +#: ipalib/plugins/selinuxusermap.py:290 msgid "Create a new SELinux User Map." msgstr "" -#: ipalib/plugins/selinuxusermap.py:249 +#: ipalib/plugins/selinuxusermap.py:292 #, python-format msgid "Added SELinux User Map \"%(value)s\"" msgstr "" -#: ipalib/plugins/selinuxusermap.py:284 +#: ipalib/plugins/selinuxusermap.py:327 msgid "Delete a SELinux User Map." msgstr "" -#: ipalib/plugins/selinuxusermap.py:286 +#: ipalib/plugins/selinuxusermap.py:329 #, python-format msgid "Deleted SELinux User Map \"%(value)s\"" msgstr "" -#: ipalib/plugins/selinuxusermap.py:292 +#: ipalib/plugins/selinuxusermap.py:335 msgid "Modify a SELinux User Map." msgstr "" -#: ipalib/plugins/selinuxusermap.py:294 +#: ipalib/plugins/selinuxusermap.py:337 #, python-format msgid "Modified SELinux User Map \"%(value)s\"" msgstr "" -#: ipalib/plugins/selinuxusermap.py:348 +#: ipalib/plugins/selinuxusermap.py:391 msgid "Search for SELinux User Maps." msgstr "" -#: ipalib/plugins/selinuxusermap.py:351 +#: ipalib/plugins/selinuxusermap.py:394 #, python-format msgid "%(count)d SELinux User Map matched" msgid_plural "%(count)d SELinux User Maps matched" msgstr[0] "" msgstr[1] "" -#: ipalib/plugins/selinuxusermap.py:381 +#: ipalib/plugins/selinuxusermap.py:423 msgid "Display the properties of a SELinux User Map rule." msgstr "" -#: ipalib/plugins/selinuxusermap.py:392 +#: ipalib/plugins/selinuxusermap.py:434 msgid "Enable an SELinux User Map rule." msgstr "" -#: ipalib/plugins/selinuxusermap.py:394 +#: ipalib/plugins/selinuxusermap.py:436 #, python-format msgid "Enabled SELinux User Map \"%(value)s\"" msgstr "" -#: ipalib/plugins/selinuxusermap.py:419 +#: ipalib/plugins/selinuxusermap.py:464 msgid "Disable an SELinux User Map rule." msgstr "" -#: ipalib/plugins/selinuxusermap.py:421 +#: ipalib/plugins/selinuxusermap.py:466 #, python-format msgid "Disabled SELinux User Map \"%(value)s\"" msgstr "" -#: ipalib/plugins/selinuxusermap.py:446 +#: ipalib/plugins/selinuxusermap.py:494 msgid "Add users and groups to an SELinux User Map rule." msgstr "" -#: ipalib/plugins/selinuxusermap.py:469 +#: ipalib/plugins/selinuxusermap.py:518 msgid "Remove users and groups from an SELinux User Map rule." msgstr "" -#: ipalib/plugins/selinuxusermap.py:478 +#: ipalib/plugins/selinuxusermap.py:527 msgid "Add target hosts and hostgroups to an SELinux User Map rule." msgstr "" -#: ipalib/plugins/selinuxusermap.py:501 +#: ipalib/plugins/selinuxusermap.py:551 msgid "Remove target hosts and hostgroups from an SELinux User Map rule." msgstr "" -#: ipalib/plugins/service.py:35 +#: ipalib/plugins/service.py:36 msgid "" "\n" "Services\n" @@ -8690,133 +9814,133 @@ msgid "" "\n" msgstr "" -#: ipalib/plugins/service.py:133 +#: ipalib/plugins/service.py:136 msgid "Requires pre-authentication" msgstr "" -#: ipalib/plugins/service.py:134 +#: ipalib/plugins/service.py:137 msgid "Pre-authentication is required for the service" msgstr "" -#: ipalib/plugins/service.py:139 +#: ipalib/plugins/service.py:142 msgid "Trusted for delegation" msgstr "" -#: ipalib/plugins/service.py:140 +#: ipalib/plugins/service.py:143 msgid "Client credentials may be delegated to the service" msgstr "" -#: ipalib/plugins/service.py:159 +#: ipalib/plugins/service.py:162 msgid "missing service" msgstr "" -#: ipalib/plugins/service.py:163 +#: ipalib/plugins/service.py:166 msgid "blank service" msgstr "" -#: ipalib/plugins/service.py:167 +#: ipalib/plugins/service.py:170 msgid "unable to determine realm" msgstr "" -#: ipalib/plugins/service.py:240 +#: ipalib/plugins/service.py:243 msgid "This principal is required by the IPA master" msgstr "" -#: ipalib/plugins/service.py:295 +#: ipalib/plugins/service.py:299 msgid "service" msgstr "" -#: ipalib/plugins/service.py:296 +#: ipalib/plugins/service.py:300 msgid "services" msgstr "" -#: ipalib/plugins/service.py:322 +#: ipalib/plugins/service.py:372 msgid "Service principal" msgstr "" -#: ipalib/plugins/service.py:334 +#: ipalib/plugins/service.py:384 msgid "PAC type" msgstr "" -#: ipalib/plugins/service.py:335 +#: ipalib/plugins/service.py:385 msgid "" "Override default list of supported PAC types. Use 'NONE' to disable PAC " "support for this service, e.g. this might be necessary for NFS services." msgstr "" -#: ipalib/plugins/service.py:356 +#: ipalib/plugins/service.py:406 msgid "NONE value cannot be combined with other PAC types" msgstr "" -#: ipalib/plugins/service.py:362 +#: ipalib/plugins/service.py:412 msgid "Add a new IPA new service." msgstr "" -#: ipalib/plugins/service.py:364 +#: ipalib/plugins/service.py:414 #, python-format msgid "Added service \"%(value)s\"" msgstr "" -#: ipalib/plugins/service.py:370 +#: ipalib/plugins/service.py:420 msgid "force principal name even if not in DNS" msgstr "" -#: ipalib/plugins/service.py:384 +#: ipalib/plugins/service.py:434 #, python-format msgid "The host '%s' does not exist to add a service to." msgstr "" -#: ipalib/plugins/service.py:424 +#: ipalib/plugins/service.py:474 msgid "Delete an IPA service." msgstr "" -#: ipalib/plugins/service.py:426 +#: ipalib/plugins/service.py:476 #, python-format msgid "Deleted service \"%(value)s\"" msgstr "" -#: ipalib/plugins/service.py:469 +#: ipalib/plugins/service.py:519 msgid "Modify an existing IPA service." msgstr "" -#: ipalib/plugins/service.py:471 +#: ipalib/plugins/service.py:521 #, python-format msgid "Modified service \"%(value)s\"" msgstr "" -#: ipalib/plugins/service.py:517 +#: ipalib/plugins/service.py:566 msgid "Search for IPA services." msgstr "" -#: ipalib/plugins/service.py:520 +#: ipalib/plugins/service.py:569 #, python-format msgid "%(count)d service matched" msgid_plural "%(count)d services matched" msgstr[0] "" msgstr[1] "" -#: ipalib/plugins/service.py:555 +#: ipalib/plugins/service.py:603 msgid "Display information about an IPA service." msgstr "" -#: ipalib/plugins/service.py:590 +#: ipalib/plugins/service.py:638 msgid "Add hosts that can manage this service." msgstr "" -#: ipalib/plugins/service.py:599 +#: ipalib/plugins/service.py:647 msgid "Remove hosts that can manage this service." msgstr "" -#: ipalib/plugins/service.py:608 +#: ipalib/plugins/service.py:656 msgid "Disable the Kerberos key and SSL certificate of a service." msgstr "" -#: ipalib/plugins/service.py:611 +#: ipalib/plugins/service.py:659 #, python-format msgid "Disabled service \"%(value)s\"" msgstr "" -#: ipalib/plugins/sudocmd.py:29 +#: ipalib/plugins/sudocmd.py:30 msgid "" "\n" "Sudo Commands\n" @@ -8833,73 +9957,73 @@ msgid "" "\n" msgstr "" -#: ipalib/plugins/sudocmd.py:44 ipalib/plugins/sudocmdgroup.py:48 +#: ipalib/plugins/sudocmd.py:47 ipalib/plugins/sudocmdgroup.py:51 msgid "commands for controlling sudo configuration" msgstr "" -#: ipalib/plugins/sudocmd.py:51 +#: ipalib/plugins/sudocmd.py:55 msgid "sudo command" msgstr "" -#: ipalib/plugins/sudocmd.py:52 +#: ipalib/plugins/sudocmd.py:56 msgid "sudo commands" msgstr "" -#: ipalib/plugins/sudocmd.py:66 +#: ipalib/plugins/sudocmd.py:108 msgid "Sudo Commands" msgstr "" -#: ipalib/plugins/sudocmd.py:67 ipalib/plugins/sudocmd.py:72 +#: ipalib/plugins/sudocmd.py:109 ipalib/plugins/sudocmd.py:114 msgid "Sudo Command" msgstr "" -#: ipalib/plugins/sudocmd.py:78 +#: ipalib/plugins/sudocmd.py:120 msgid "A description of this command" msgstr "" -#: ipalib/plugins/sudocmd.py:101 +#: ipalib/plugins/sudocmd.py:143 msgid "Create new Sudo Command." msgstr "" -#: ipalib/plugins/sudocmd.py:103 +#: ipalib/plugins/sudocmd.py:145 #, python-format msgid "Added Sudo Command \"%(value)s\"" msgstr "" -#: ipalib/plugins/sudocmd.py:108 +#: ipalib/plugins/sudocmd.py:150 msgid "Delete Sudo Command." msgstr "" -#: ipalib/plugins/sudocmd.py:110 +#: ipalib/plugins/sudocmd.py:152 #, python-format msgid "Deleted Sudo Command \"%(value)s\"" msgstr "" -#: ipalib/plugins/sudocmd.py:141 +#: ipalib/plugins/sudocmd.py:183 msgid "Modify Sudo Command." msgstr "" -#: ipalib/plugins/sudocmd.py:143 +#: ipalib/plugins/sudocmd.py:185 #, python-format msgid "Modified Sudo Command \"%(value)s\"" msgstr "" -#: ipalib/plugins/sudocmd.py:148 +#: ipalib/plugins/sudocmd.py:190 msgid "Search for Sudo Commands." msgstr "" -#: ipalib/plugins/sudocmd.py:151 +#: ipalib/plugins/sudocmd.py:193 #, python-format msgid "%(count)d Sudo Command matched" msgid_plural "%(count)d Sudo Commands matched" msgstr[0] "" msgstr[1] "" -#: ipalib/plugins/sudocmd.py:157 +#: ipalib/plugins/sudocmd.py:199 msgid "Display Sudo Command." msgstr "" -#: ipalib/plugins/sudocmdgroup.py:25 +#: ipalib/plugins/sudocmdgroup.py:26 msgid "" "\n" "Groups of Sudo Commands\n" @@ -8925,77 +10049,85 @@ msgid "" " ipa group-show localadmins\n" msgstr "" -#: ipalib/plugins/sudocmdgroup.py:55 +#: ipalib/plugins/sudocmdgroup.py:59 msgid "sudo command group" msgstr "" -#: ipalib/plugins/sudocmdgroup.py:56 +#: ipalib/plugins/sudocmdgroup.py:60 msgid "sudo command groups" msgstr "" -#: ipalib/plugins/sudocmdgroup.py:67 ipalib/plugins/sudocmdgroup.py:72 +#: ipalib/plugins/sudocmdgroup.py:111 ipalib/plugins/sudocmdgroup.py:116 msgid "Sudo Command Group" msgstr "" -#: ipalib/plugins/sudocmdgroup.py:95 +#: ipalib/plugins/sudocmdgroup.py:139 msgid "Create new Sudo Command Group." msgstr "" -#: ipalib/plugins/sudocmdgroup.py:97 +#: ipalib/plugins/sudocmdgroup.py:141 #, python-format msgid "Added Sudo Command Group \"%(value)s\"" msgstr "" -#: ipalib/plugins/sudocmdgroup.py:103 +#: ipalib/plugins/sudocmdgroup.py:147 msgid "Delete Sudo Command Group." msgstr "" -#: ipalib/plugins/sudocmdgroup.py:105 +#: ipalib/plugins/sudocmdgroup.py:149 #, python-format msgid "Deleted Sudo Command Group \"%(value)s\"" msgstr "" -#: ipalib/plugins/sudocmdgroup.py:111 +#: ipalib/plugins/sudocmdgroup.py:155 msgid "Modify Sudo Command Group." msgstr "" -#: ipalib/plugins/sudocmdgroup.py:113 +#: ipalib/plugins/sudocmdgroup.py:157 #, python-format msgid "Modified Sudo Command Group \"%(value)s\"" msgstr "" -#: ipalib/plugins/sudocmdgroup.py:119 +#: ipalib/plugins/sudocmdgroup.py:163 msgid "Search for Sudo Command Groups." msgstr "" -#: ipalib/plugins/sudocmdgroup.py:122 +#: ipalib/plugins/sudocmdgroup.py:166 #, python-format msgid "%(count)d Sudo Command Group matched" msgid_plural "%(count)d Sudo Command Groups matched" msgstr[0] "" msgstr[1] "" -#: ipalib/plugins/sudocmdgroup.py:130 +#: ipalib/plugins/sudocmdgroup.py:174 msgid "Display Sudo Command Group." msgstr "" -#: ipalib/plugins/sudocmdgroup.py:136 +#: ipalib/plugins/sudocmdgroup.py:180 msgid "Add members to Sudo Command Group." msgstr "" -#: ipalib/plugins/sudocmdgroup.py:142 +#: ipalib/plugins/sudocmdgroup.py:186 msgid "Remove members from Sudo Command Group." msgstr "" -#: ipalib/plugins/sudorule.py:26 +#: ipalib/plugins/sudorule.py:38 msgid "" "\n" "Sudo Rules\n" +msgstr "" + +#: ipalib/plugins/sudorule.py:40 +msgid "" "\n" "Sudo (su \"do\") allows a system administrator to delegate authority to\n" "give certain users (or groups of users) the ability to run some (or all)\n" "commands as root or another user while providing an audit trail of the\n" "commands and their arguments.\n" +msgstr "" + +#: ipalib/plugins/sudorule.py:45 +msgid "" "\n" "FreeIPA provides a means to configure the various aspects of Sudo:\n" " Users: The user(s)/group(s) allowed to invoke Sudo.\n" @@ -9007,308 +10139,401 @@ msgid "" "invoked with.\n" " RunAsGroup: The group(s) whose gid rights Sudo will be invoked with.\n" " Options: The various Sudoers Options that can modify Sudo's behavior.\n" +msgstr "" + +#: ipalib/plugins/sudorule.py:54 +msgid "" "\n" "An order can be added to a sudorule to control the order in which they\n" "are evaluated (if the client supports it). This order is an integer and\n" "must be unique.\n" +msgstr "" + +#: ipalib/plugins/sudorule.py:58 +msgid "" "\n" "FreeIPA provides a designated binddn to use with Sudo located at:\n" "uid=sudo,cn=sysaccounts,cn=etc,dc=example,dc=com\n" +msgstr "" + +#: ipalib/plugins/sudorule.py:61 +msgid "" "\n" "To enable the binddn run the following command to set the password:\n" "LDAPTLS_CACERT=/etc/ipa/ca.crt /usr/bin/ldappasswd -S -W -h ipa.example.com -" "ZZ -D \"cn=Directory Manager\" uid=sudo,cn=sysaccounts,cn=etc,dc=example," "dc=com\n" +msgstr "" + +#: ipalib/plugins/sudorule.py:68 +msgid "" "\n" -"For more information, see the FreeIPA Documentation to Sudo.\n" +" Create a new rule:\n" +" ipa sudorule-add readfiles\n" msgstr "" -#: ipalib/plugins/sudorule.py:58 +#: ipalib/plugins/sudorule.py:71 +msgid "" +"\n" +" Add sudo command object and add it as allowed command in the rule:\n" +" ipa sudocmd-add /usr/bin/less\n" +" ipa sudorule-add-allow-command readfiles --sudocmds /usr/bin/less\n" +msgstr "" + +#: ipalib/plugins/sudorule.py:75 +msgid "" +"\n" +" Add a host to the rule:\n" +" ipa sudorule-add-host readfiles --hosts server.example.com\n" +msgstr "" + +#: ipalib/plugins/sudorule.py:78 +msgid "" +"\n" +" Add a user to the rule:\n" +" ipa sudorule-add-user readfiles --users jsmith\n" +msgstr "" + +#: ipalib/plugins/sudorule.py:81 +msgid "" +"\n" +" Add a special Sudo rule for default Sudo server configuration:\n" +" ipa sudorule-add defaults\n" +msgstr "" + +#: ipalib/plugins/sudorule.py:84 +msgid "" +"\n" +" Set a default Sudo option:\n" +" ipa sudorule-add-option defaults --sudooption '!authenticate'\n" +msgstr "" + +#: ipalib/plugins/sudorule.py:91 msgid "Commands for controlling sudo configuration" msgstr "" -#: ipalib/plugins/sudorule.py:61 +#: ipalib/plugins/sudorule.py:97 msgid "this option has been deprecated." msgstr "" -#: ipalib/plugins/sudorule.py:77 +#: ipalib/plugins/sudorule.py:101 +msgid "host masks of allowed hosts" +msgstr "" + +#: ipalib/plugins/sudorule.py:124 msgid "sudo rule" msgstr "" -#: ipalib/plugins/sudorule.py:78 +#: ipalib/plugins/sudorule.py:125 msgid "sudo rules" msgstr "" -#: ipalib/plugins/sudorule.py:100 +#: ipalib/plugins/sudorule.py:212 msgid "Sudo Rules" msgstr "" -#: ipalib/plugins/sudorule.py:101 +#: ipalib/plugins/sudorule.py:213 msgid "Sudo Rule" msgstr "" -#: ipalib/plugins/sudorule.py:131 +#: ipalib/plugins/sudorule.py:243 msgid "Command category" msgstr "" -#: ipalib/plugins/sudorule.py:132 +#: ipalib/plugins/sudorule.py:244 msgid "Command category the rule applies to" msgstr "" -#: ipalib/plugins/sudorule.py:137 +#: ipalib/plugins/sudorule.py:249 msgid "RunAs User category" msgstr "" -#: ipalib/plugins/sudorule.py:138 +#: ipalib/plugins/sudorule.py:250 msgid "RunAs User category the rule applies to" msgstr "" -#: ipalib/plugins/sudorule.py:143 +#: ipalib/plugins/sudorule.py:255 msgid "RunAs Group category" msgstr "" -#: ipalib/plugins/sudorule.py:144 +#: ipalib/plugins/sudorule.py:256 msgid "RunAs Group category the rule applies to" msgstr "" -#: ipalib/plugins/sudorule.py:149 +#: ipalib/plugins/sudorule.py:261 msgid "Sudo order" msgstr "" -#: ipalib/plugins/sudorule.py:150 +#: ipalib/plugins/sudorule.py:262 msgid "integer to order the Sudo rules" msgstr "" -#: ipalib/plugins/sudorule.py:171 +#: ipalib/plugins/sudorule.py:276 +msgid "External User" +msgstr "" + +#: ipalib/plugins/sudorule.py:277 +msgid "External User the rule applies to (sudorule-find only)" +msgstr "" + +#: ipalib/plugins/sudorule.py:289 +msgid "Host Masks" +msgstr "" + +#: ipalib/plugins/sudorule.py:295 msgid "Sudo Allow Commands" msgstr "" -#: ipalib/plugins/sudorule.py:175 +#: ipalib/plugins/sudorule.py:299 msgid "Sudo Deny Commands" msgstr "" -#: ipalib/plugins/sudorule.py:179 +#: ipalib/plugins/sudorule.py:303 msgid "Sudo Allow Command Groups" msgstr "" -#: ipalib/plugins/sudorule.py:183 +#: ipalib/plugins/sudorule.py:307 msgid "Sudo Deny Command Groups" msgstr "" -#: ipalib/plugins/sudorule.py:187 +#: ipalib/plugins/sudorule.py:311 msgid "RunAs Users" msgstr "" -#: ipalib/plugins/sudorule.py:188 +#: ipalib/plugins/sudorule.py:312 msgid "Run as a user" msgstr "" -#: ipalib/plugins/sudorule.py:192 +#: ipalib/plugins/sudorule.py:316 msgid "Groups of RunAs Users" msgstr "" -#: ipalib/plugins/sudorule.py:193 +#: ipalib/plugins/sudorule.py:317 msgid "Run as any user within a specified group" msgstr "" -#: ipalib/plugins/sudorule.py:198 -msgid "External User" +#: ipalib/plugins/sudorule.py:322 +msgid "RunAs External User" msgstr "" -#: ipalib/plugins/sudorule.py:199 -msgid "External User the rule applies to (sudorule-find only)" +#: ipalib/plugins/sudorule.py:323 +msgid "External User the commands can run as (sudorule-find only)" msgstr "" -#: ipalib/plugins/sudorule.py:203 -msgid "RunAs External User" +#: ipalib/plugins/sudorule.py:327 +msgid "External Groups of RunAs Users" msgstr "" -#: ipalib/plugins/sudorule.py:204 -msgid "External User the commands can run as (sudorule-find only)" +#: ipalib/plugins/sudorule.py:328 +msgid "External Groups of users that the command can run as" msgstr "" -#: ipalib/plugins/sudorule.py:208 -msgid "RunAs External Group" +#: ipalib/plugins/sudorule.py:332 +msgid "RunAs Groups" msgstr "" -#: ipalib/plugins/sudorule.py:209 -msgid "External Group the commands can run as (sudorule-find only)" +#: ipalib/plugins/sudorule.py:333 +msgid "Run with the gid of a specified POSIX group" msgstr "" -#: ipalib/plugins/sudorule.py:212 ipalib/plugins/sudorule.py:612 -#: ipalib/plugins/sudorule.py:665 -msgid "Sudo Option" +#: ipalib/plugins/sudorule.py:338 +msgid "RunAs External Group" msgstr "" -#: ipalib/plugins/sudorule.py:216 -msgid "RunAs Groups" +#: ipalib/plugins/sudorule.py:339 +msgid "External Group the commands can run as (sudorule-find only)" msgstr "" -#: ipalib/plugins/sudorule.py:217 -msgid "Run with the gid of a specified POSIX group" +#: ipalib/plugins/sudorule.py:342 ipalib/plugins/sudorule.py:915 +#: ipalib/plugins/sudorule.py:968 +msgid "Sudo Option" msgstr "" -#: ipalib/plugins/sudorule.py:224 +#: ipalib/plugins/sudorule.py:348 #, python-format msgid "order must be a unique value (%(order)d already used by %(rule)s)" msgstr "" -#: ipalib/plugins/sudorule.py:246 +#: ipalib/plugins/sudorule.py:370 msgid "Create new Sudo Rule." msgstr "" -#: ipalib/plugins/sudorule.py:255 +#: ipalib/plugins/sudorule.py:379 #, python-format msgid "Added Sudo Rule \"%(value)s\"" msgstr "" -#: ipalib/plugins/sudorule.py:261 +#: ipalib/plugins/sudorule.py:384 msgid "Delete Sudo Rule." msgstr "" -#: ipalib/plugins/sudorule.py:263 +#: ipalib/plugins/sudorule.py:386 #, python-format msgid "Deleted Sudo Rule \"%(value)s\"" msgstr "" -#: ipalib/plugins/sudorule.py:269 +#: ipalib/plugins/sudorule.py:391 msgid "Modify Sudo Rule." msgstr "" -#: ipalib/plugins/sudorule.py:271 +#: ipalib/plugins/sudorule.py:393 #, python-format msgid "Modified Sudo Rule \"%(value)s\"" msgstr "" -#: ipalib/plugins/sudorule.py:294 +#: ipalib/plugins/sudorule.py:413 +#, python-format msgid "" -"command category cannot be set to 'all' while there are allow or deny " -"commands" +"%(type)s category cannot be set to 'all' while there are allowed %(objects)s" +msgstr "" + +#: ipalib/plugins/sudorule.py:419 ipalib/plugins/user.py:228 +msgid "user" +msgstr "" + +#: ipalib/plugins/sudorule.py:419 ipalib/plugins/user.py:229 +msgid "users" +msgstr "" + +#: ipalib/plugins/sudorule.py:429 +msgid "command" +msgstr "" + +#: ipalib/plugins/sudorule.py:429 +msgid "commands" +msgstr "" + +#: ipalib/plugins/sudorule.py:435 +msgid "runAs user" +msgstr "" + +#: ipalib/plugins/sudorule.py:435 +msgid "runAs users" msgstr "" -#: ipalib/plugins/sudorule.py:296 -msgid "user runAs category cannot be set to 'all' while there are users" +#: ipalib/plugins/sudorule.py:440 +msgid "group runAs" msgstr "" -#: ipalib/plugins/sudorule.py:298 -msgid "group runAs category cannot be set to 'all' while there are groups" +#: ipalib/plugins/sudorule.py:440 +msgid "runAs groups" msgstr "" -#: ipalib/plugins/sudorule.py:306 +#: ipalib/plugins/sudorule.py:458 msgid "Search for Sudo Rule." msgstr "" -#: ipalib/plugins/sudorule.py:309 +#: ipalib/plugins/sudorule.py:461 #, python-format msgid "%(count)d Sudo Rule matched" msgid_plural "%(count)d Sudo Rules matched" msgstr[0] "" msgstr[1] "" -#: ipalib/plugins/sudorule.py:316 +#: ipalib/plugins/sudorule.py:467 msgid "Display Sudo Rule." msgstr "" -#: ipalib/plugins/sudorule.py:322 +#: ipalib/plugins/sudorule.py:472 msgid "Enable a Sudo Rule." msgstr "" -#: ipalib/plugins/sudorule.py:340 +#: ipalib/plugins/sudorule.py:493 #, python-format msgid "Enabled Sudo Rule \"%s\"" msgstr "" -#: ipalib/plugins/sudorule.py:346 +#: ipalib/plugins/sudorule.py:498 msgid "Disable a Sudo Rule." msgstr "" -#: ipalib/plugins/sudorule.py:364 +#: ipalib/plugins/sudorule.py:519 #, python-format msgid "Disabled Sudo Rule \"%s\"" msgstr "" -#: ipalib/plugins/sudorule.py:370 ipalib/plugins/sudorule.py:399 +#: ipalib/plugins/sudorule.py:524 ipalib/plugins/sudorule.py:555 msgid "Add commands and sudo command groups affected by Sudo Rule." msgstr "" -#: ipalib/plugins/sudorule.py:382 ipalib/plugins/sudorule.py:411 +#: ipalib/plugins/sudorule.py:539 msgid "commands cannot be added when command category='all'" msgstr "" -#: ipalib/plugins/sudorule.py:390 ipalib/plugins/sudorule.py:418 +#: ipalib/plugins/sudorule.py:547 ipalib/plugins/sudorule.py:567 msgid "Remove commands and sudo command groups affected by Sudo Rule." msgstr "" -#: ipalib/plugins/sudorule.py:427 +#: ipalib/plugins/sudorule.py:575 msgid "Add users and groups affected by Sudo Rule." msgstr "" -#: ipalib/plugins/sudorule.py:450 +#: ipalib/plugins/sudorule.py:607 msgid "Remove users and groups affected by Sudo Rule." msgstr "" -#: ipalib/plugins/sudorule.py:463 +#: ipalib/plugins/sudorule.py:625 msgid "Add hosts and hostgroups affected by Sudo Rule." msgstr "" -#: ipalib/plugins/sudorule.py:486 +#: ipalib/plugins/sudorule.py:682 msgid "Remove hosts and hostgroups affected by Sudo Rule." msgstr "" -#: ipalib/plugins/sudorule.py:498 +#: ipalib/plugins/sudorule.py:727 msgid "Add users and groups for Sudo to execute as." msgstr "" -#: ipalib/plugins/sudorule.py:517 ipalib/plugins/sudorule.py:574 +#: ipalib/plugins/sudorule.py:750 ipalib/plugins/sudorule.py:863 msgid "users cannot be added when runAs user or runAs group category='all'" msgstr "" -#: ipalib/plugins/sudorule.py:523 +#: ipalib/plugins/sudorule.py:757 #, python-format msgid "RunAsUser does not accept '%(name)s' as a user name" msgstr "" -#: ipalib/plugins/sudorule.py:529 +#: ipalib/plugins/sudorule.py:765 #, python-format msgid "RunAsUser does not accept '%(name)s' as a group name" msgstr "" -#: ipalib/plugins/sudorule.py:542 +#: ipalib/plugins/sudorule.py:804 msgid "Remove users and groups for Sudo to execute as." msgstr "" -#: ipalib/plugins/sudorule.py:555 +#: ipalib/plugins/sudorule.py:842 msgid "Add group for Sudo to execute as." msgstr "" -#: ipalib/plugins/sudorule.py:580 +#: ipalib/plugins/sudorule.py:870 #, python-format msgid "RunAsGroup does not accept '%(name)s' as a group name" msgstr "" -#: ipalib/plugins/sudorule.py:593 +#: ipalib/plugins/sudorule.py:890 msgid "Remove group for Sudo to execute as." msgstr "" -#: ipalib/plugins/sudorule.py:606 +#: ipalib/plugins/sudorule.py:909 msgid "Add an option to the Sudo Rule." msgstr "" -#: ipalib/plugins/sudorule.py:649 +#: ipalib/plugins/sudorule.py:953 #, python-format msgid "Added option \"%(option)s\" to Sudo Rule \"%(rule)s\"" msgstr "" -#: ipalib/plugins/sudorule.py:659 +#: ipalib/plugins/sudorule.py:962 msgid "Remove an option from Sudo Rule." msgstr "" -#: ipalib/plugins/sudorule.py:705 +#: ipalib/plugins/sudorule.py:1011 #, python-format msgid "Removed option \"%(option)s\" from Sudo Rule \"%(rule)s\"" msgstr "" -#: ipalib/plugins/trust.py:49 +#: ipalib/plugins/trust.py:50 msgid "" "\n" "Cross-realm trusts\n" @@ -9409,72 +10634,72 @@ msgid "" "\"\n" msgstr "" -#: ipalib/plugins/trust.py:141 +#: ipalib/plugins/trust.py:144 msgid "Non-Active Directory domain" msgstr "" -#: ipalib/plugins/trust.py:143 +#: ipalib/plugins/trust.py:146 msgid "RFC4120-compliant Kerberos realm" msgstr "" -#: ipalib/plugins/trust.py:144 +#: ipalib/plugins/trust.py:147 msgid "Trusting forest" msgstr "" -#: ipalib/plugins/trust.py:145 +#: ipalib/plugins/trust.py:148 msgid "Trusted forest" msgstr "" -#: ipalib/plugins/trust.py:146 +#: ipalib/plugins/trust.py:149 msgid "Two-way trust" msgstr "" -#: ipalib/plugins/trust.py:147 +#: ipalib/plugins/trust.py:150 msgid "Established and verified" msgstr "" -#: ipalib/plugins/trust.py:148 +#: ipalib/plugins/trust.py:151 msgid "Waiting for confirmation by remote side" msgstr "" -#: ipalib/plugins/trust.py:149 +#: ipalib/plugins/trust.py:152 msgid "Unknown" msgstr "" -#: ipalib/plugins/trust.py:153 +#: ipalib/plugins/trust.py:156 msgid "Trust type (ad for Active Directory, default)" msgstr "" -#: ipalib/plugins/trust.py:197 +#: ipalib/plugins/trust.py:309 msgid "trust" msgstr "" -#: ipalib/plugins/trust.py:198 +#: ipalib/plugins/trust.py:310 msgid "trusts" msgstr "" -#: ipalib/plugins/trust.py:209 +#: ipalib/plugins/trust.py:347 msgid "Trust" msgstr "" -#: ipalib/plugins/trust.py:214 ipa-client/ipa-rmkeytab.c:176 +#: ipalib/plugins/trust.py:352 ipa-client/ipa-rmkeytab.c:176 msgid "Realm name" msgstr "" -#: ipalib/plugins/trust.py:228 +#: ipalib/plugins/trust.py:366 msgid "SID blacklist incoming" msgstr "" -#: ipalib/plugins/trust.py:233 +#: ipalib/plugins/trust.py:371 msgid "SID blacklist outgoing" msgstr "" -#: ipalib/plugins/trust.py:250 +#: ipalib/plugins/trust.py:388 #, python-format msgid "invalid SID: %(value)s" msgstr "" -#: ipalib/plugins/trust.py:274 +#: ipalib/plugins/trust.py:410 msgid "" "\n" "Add new trust to use.\n" @@ -9491,144 +10716,145 @@ msgid "" " " msgstr "" -#: ipalib/plugins/trust.py:298 +#: ipalib/plugins/trust.py:434 msgid "Active Directory domain administrator" msgstr "" -#: ipalib/plugins/trust.py:302 +#: ipalib/plugins/trust.py:438 msgid "Active directory domain administrator's password" msgstr "" -#: ipalib/plugins/trust.py:307 +#: ipalib/plugins/trust.py:443 msgid "Domain controller for the Active Directory domain (optional)" msgstr "" -#: ipalib/plugins/trust.py:311 +#: ipalib/plugins/trust.py:447 msgid "Shared secret for the trust" msgstr "" -#: ipalib/plugins/trust.py:316 +#: ipalib/plugins/trust.py:452 msgid "First Posix ID of the range reserved for the trusted domain" msgstr "" -#: ipalib/plugins/trust.py:320 +#: ipalib/plugins/trust.py:456 msgid "Size of the ID range reserved for the trusted domain" msgstr "" -#: ipalib/plugins/trust.py:325 +#: ipalib/plugins/trust.py:461 +#, python-brace-format msgid "Type of trusted domain ID range, one of {vals}" msgstr "" -#: ipalib/plugins/trust.py:331 +#: ipalib/plugins/trust.py:467 #, python-format msgid "Added Active Directory trust for realm \"%(value)s\"" msgstr "" -#: ipalib/plugins/trust.py:372 ipalib/plugins/trust.py:414 -#: ipalib/plugins/trust.py:434 ipalib/plugins/trust.py:444 -#: ipalib/plugins/trust.py:671 ipalib/plugins/trust.py:697 -#: ipalib/plugins/trust.py:1230 ipalib/plugins/trust.py:1242 +#: ipalib/plugins/trust.py:468 +#, python-format +msgid "Re-established trust to domain \"%(value)s\"" +msgstr "" + +#: ipalib/plugins/trust.py:517 ipalib/plugins/trust.py:559 +#: ipalib/plugins/trust.py:579 ipalib/plugins/trust.py:589 +#: ipalib/plugins/trust.py:711 ipalib/plugins/trust.py:743 +#: ipalib/plugins/trust.py:1320 ipalib/plugins/trust.py:1332 msgid "AD Trust setup" msgstr "" -#: ipalib/plugins/trust.py:374 ipalib/plugins/trust.py:1232 +#: ipalib/plugins/trust.py:519 ipalib/plugins/trust.py:1322 msgid "" "Cannot perform join operation without Samba 4 support installed. Make sure " "you have installed server-trust-ad sub-package of IPA" msgstr "" -#: ipalib/plugins/trust.py:382 +#: ipalib/plugins/trust.py:527 msgid "missing base_id" msgstr "" -#: ipalib/plugins/trust.py:384 +#: ipalib/plugins/trust.py:529 msgid "pysss_murmur is not available on the server and no base-id is given." msgstr "" -#: ipalib/plugins/trust.py:390 ipalib/plugins/trust.py:394 +#: ipalib/plugins/trust.py:535 ipalib/plugins/trust.py:539 msgid "trust type" msgstr "" -#: ipalib/plugins/trust.py:395 +#: ipalib/plugins/trust.py:540 msgid "only \"ad\" is supported" msgstr "" -#: ipalib/plugins/trust.py:405 +#: ipalib/plugins/trust.py:550 msgid "Realm-domain mismatch" msgstr "" -#: ipalib/plugins/trust.py:406 +#: ipalib/plugins/trust.py:551 msgid "" -"To estabilish trust with Active Directory, the domain name and the realm " -"name of the IPA server must match" +"To establish trust with Active Directory, the domain name and the realm name " +"of the IPA server must match" msgstr "" -#: ipalib/plugins/trust.py:436 +#: ipalib/plugins/trust.py:581 msgid "Trusted domain and administrator account use different realms" msgstr "" -#: ipalib/plugins/trust.py:445 +#: ipalib/plugins/trust.py:590 msgid "Realm administrator password should be specified" msgstr "" -#: ipalib/plugins/trust.py:466 +#: ipalib/plugins/trust.py:611 msgid "id range type" msgstr "" -#: ipalib/plugins/trust.py:468 +#: ipalib/plugins/trust.py:613 msgid "" "Only the ipa-ad-trust and ipa-ad-trust-posix are allowed values for --range-" "type when adding an AD trust." msgstr "" -#: ipalib/plugins/trust.py:478 +#: ipalib/plugins/trust.py:623 msgid "id range" msgstr "" -#: ipalib/plugins/trust.py:480 +#: ipalib/plugins/trust.py:625 msgid "" "An id range already exists for this trust. You should either delete the old " "range, or exclude --base-id/--range-size options from the command." msgstr "" -#: ipalib/plugins/trust.py:502 +#: ipalib/plugins/trust.py:647 msgid "range exists" msgstr "" -#: ipalib/plugins/trust.py:504 +#: ipalib/plugins/trust.py:649 msgid "" "ID range with the same name but different domain SID already exists. The ID " "range for the new trusted domain must be created manually." msgstr "" -#: ipalib/plugins/trust.py:511 +#: ipalib/plugins/trust.py:656 msgid "range type change" msgstr "" -#: ipalib/plugins/trust.py:512 +#: ipalib/plugins/trust.py:657 msgid "" "ID range for the trusted domain already exists, but it has a different type. " "Please remove the old range manually, or do not enforce type via --range-" "type option." msgstr "" -#: ipalib/plugins/trust.py:631 -#, python-format -msgid "Re-established trust to domain \"%(value)s\"" -msgstr "" - -#: ipalib/plugins/trust.py:646 +#: ipalib/plugins/trust.py:686 #, python-format msgid "Unable to resolve domain controller for '%s' domain. " msgstr "" -#: ipalib/plugins/trust.py:652 +#: ipalib/plugins/trust.py:692 msgid "" "Forward policy is defined for it in IPA DNS, perhaps forwarder points to " "incorrect host?" msgstr "" -#: ipalib/plugins/trust.py:655 +#: ipalib/plugins/trust.py:695 #, python-format msgid "" "IPA manages DNS, please verify your DNS configuration and make sure that " @@ -9637,31 +10863,31 @@ msgid "" "documentation. " msgstr "" -#: ipalib/plugins/trust.py:665 +#: ipalib/plugins/trust.py:705 #, python-format msgid "" "Since IPA does not manage DNS records, ensure DNS is configured to resolve " "'%(domain)s' domain from IPA hosts and back." msgstr "" -#: ipalib/plugins/trust.py:672 +#: ipalib/plugins/trust.py:712 msgid "Unable to verify write permissions to the AD" msgstr "" -#: ipalib/plugins/trust.py:698 +#: ipalib/plugins/trust.py:744 msgid "Not enough arguments specified to perform trust setup" msgstr "" -#: ipalib/plugins/trust.py:701 +#: ipalib/plugins/trust.py:748 msgid "Delete a trust." msgstr "" -#: ipalib/plugins/trust.py:703 +#: ipalib/plugins/trust.py:750 #, python-format msgid "Deleted trust \"%(value)s\"" msgstr "" -#: ipalib/plugins/trust.py:706 +#: ipalib/plugins/trust.py:754 msgid "" "\n" " Modify a trust (for future use).\n" @@ -9671,199 +10897,203 @@ msgid "" " " msgstr "" -#: ipalib/plugins/trust.py:713 +#: ipalib/plugins/trust.py:761 #, python-format msgid "Modified trust \"%(value)s\" (change will be effective in 60 seconds)" msgstr "" -#: ipalib/plugins/trust.py:724 +#: ipalib/plugins/trust.py:773 msgid "Search for trusts." msgstr "" -#: ipalib/plugins/trust.py:729 +#: ipalib/plugins/trust.py:778 #, python-format msgid "%(count)d trust matched" msgid_plural "%(count)d trusts matched" msgstr[0] "" msgstr[1] "" -#: ipalib/plugins/trust.py:755 +#: ipalib/plugins/trust.py:804 msgid "Display information about a trust." msgstr "" -#: ipalib/plugins/trust.py:792 +#: ipalib/plugins/trust.py:839 msgid "trust configuration" msgstr "" -#: ipalib/plugins/trust.py:798 ipalib/plugins/trust.py:799 +#: ipalib/plugins/trust.py:845 ipalib/plugins/trust.py:846 msgid "Global Trust Configuration" msgstr "" -#: ipalib/plugins/trust.py:807 +#: ipalib/plugins/trust.py:854 msgid "Security Identifier" msgstr "" -#: ipalib/plugins/trust.py:811 +#: ipalib/plugins/trust.py:858 msgid "NetBIOS name" msgstr "" -#: ipalib/plugins/trust.py:815 +#: ipalib/plugins/trust.py:862 msgid "Domain GUID" msgstr "" -#: ipalib/plugins/trust.py:820 +#: ipalib/plugins/trust.py:867 msgid "Fallback primary group" msgstr "" -#: ipalib/plugins/trust.py:832 +#: ipalib/plugins/trust.py:879 msgid "unsupported trust type" msgstr "" -#: ipalib/plugins/trust.py:895 +#: ipalib/plugins/trust.py:942 msgid "Modify global trust configuration." msgstr "" -#: ipalib/plugins/trust.py:898 +#: ipalib/plugins/trust.py:945 #, python-format msgid "Modified \"%(value)s\" trust configuration" msgstr "" -#: ipalib/plugins/trust.py:917 +#: ipalib/plugins/trust.py:964 msgid "Show global trust configuration." msgstr "" -#: ipalib/plugins/trust.py:943 +#: ipalib/plugins/trust.py:991 msgid "Resolve security identifiers of users and groups in trusted domains" msgstr "" -#: ipalib/plugins/trust.py:947 +#: ipalib/plugins/trust.py:995 msgid "Security Identifiers (SIDs)" msgstr "" -#: ipalib/plugins/trust.py:953 +#: ipalib/plugins/trust.py:1001 msgid "Name" msgstr "" -#: ipalib/plugins/trust.py:954 +#: ipalib/plugins/trust.py:1002 msgid "SID" msgstr "" -#: ipalib/plugins/trust.py:985 +#: ipalib/plugins/trust.py:1033 msgid "Determine whether ipa-adtrust-install has been run on this system" msgstr "" -#: ipalib/plugins/trust.py:1012 +#: ipalib/plugins/trust.py:1060 msgid "" "Determine whether Schema Compatibility plugin is configured to serve trusted " "domain users and groups" msgstr "" -#: ipalib/plugins/trust.py:1065 +#: ipalib/plugins/trust.py:1113 msgid "Determine whether ipa-adtrust-install has been run with sidgen task" msgstr "" -#: ipalib/plugins/trust.py:1081 +#: ipalib/plugins/trust.py:1129 msgid "sidgen_was_run" msgstr "" -#: ipalib/plugins/trust.py:1083 +#: ipalib/plugins/trust.py:1131 msgid "" "This command relies on the existence of the \"editors\" group, but this " "group was not found." msgstr "" -#: ipalib/plugins/trust.py:1102 +#: ipalib/plugins/trust.py:1150 msgid "trust domain" msgstr "" -#: ipalib/plugins/trust.py:1103 +#: ipalib/plugins/trust.py:1151 msgid "trust domains" msgstr "" -#: ipalib/plugins/trust.py:1108 +#: ipalib/plugins/trust.py:1156 msgid "Trusted domains" msgstr "" -#: ipalib/plugins/trust.py:1109 +#: ipalib/plugins/trust.py:1157 msgid "Trusted domain" msgstr "" -#: ipalib/plugins/trust.py:1113 +#: ipalib/plugins/trust.py:1161 msgid "Domain name" msgstr "" -#: ipalib/plugins/trust.py:1126 +#: ipalib/plugins/trust.py:1174 msgid "Trusted domain partner" msgstr "" -#: ipalib/plugins/trust.py:1146 +#: ipalib/plugins/trust.py:1194 msgid "Search domains of the trust" msgstr "" -#: ipalib/plugins/trust.py:1153 +#: ipalib/plugins/trust.py:1197 +msgid "Domain enabled" +msgstr "" + +#: ipalib/plugins/trust.py:1224 msgid "Modify trustdomain of the trust" msgstr "" -#: ipalib/plugins/trust.py:1160 +#: ipalib/plugins/trust.py:1231 msgid "Allow access from the trusted domain" msgstr "" -#: ipalib/plugins/trust.py:1171 +#: ipalib/plugins/trust.py:1242 msgid "Remove infromation about the domain associated with the trust." msgstr "" -#: ipalib/plugins/trust.py:1173 +#: ipalib/plugins/trust.py:1244 #, python-format msgid "Removed information about the trusted domain \"%(value)s\"" msgstr "" -#: ipalib/plugins/trust.py:1182 +#: ipalib/plugins/trust.py:1253 msgid "" "cannot delete root domain of the trust, use trust-del to delete the trust " "itself" msgstr "" -#: ipalib/plugins/trust.py:1223 +#: ipalib/plugins/trust.py:1313 msgid "Refresh list of the domains associated with the trust" msgstr "" -#: ipalib/plugins/trust.py:1253 +#: ipalib/plugins/trust.py:1343 msgid "List of trust domains successfully refreshed" msgstr "" -#: ipalib/plugins/trust.py:1255 +#: ipalib/plugins/trust.py:1345 msgid "No new trust domains were found" msgstr "" -#: ipalib/plugins/trust.py:1265 +#: ipalib/plugins/trust.py:1355 msgid "Allow use of IPA resources by the domain of the trust" msgstr "" -#: ipalib/plugins/trust.py:1268 +#: ipalib/plugins/trust.py:1358 #, python-format msgid "Enabled trust domain \"%(value)s\"" msgstr "" -#: ipalib/plugins/trust.py:1275 +#: ipalib/plugins/trust.py:1365 msgid "Root domain of the trust is always enabled for the existing trust" msgstr "" -#: ipalib/plugins/trust.py:1305 +#: ipalib/plugins/trust.py:1395 msgid "Disable use of IPA resources by the domain of the trust" msgstr "" -#: ipalib/plugins/trust.py:1308 +#: ipalib/plugins/trust.py:1398 #, python-format msgid "Disabled trust domain \"%(value)s\"" msgstr "" -#: ipalib/plugins/trust.py:1315 +#: ipalib/plugins/trust.py:1405 msgid "" "cannot disable root domain of the trust, use trust-del to delete the trust " "itself" msgstr "" -#: ipalib/plugins/user.py:41 +#: ipalib/plugins/user.py:43 msgid "" "\n" "Users\n" @@ -9909,250 +11139,276 @@ msgid "" " ipa user-del tuser1\n" msgstr "" -#: ipalib/plugins/user.py:89 +#: ipalib/plugins/user.py:92 msgid "Kerberos keys available" msgstr "" -#: ipalib/plugins/user.py:98 -msgid "Server" -msgstr "" - -#: ipalib/plugins/user.py:101 +#: ipalib/plugins/user.py:104 msgid "Failed logins" msgstr "" -#: ipalib/plugins/user.py:104 +#: ipalib/plugins/user.py:107 msgid "Last successful authentication" msgstr "" -#: ipalib/plugins/user.py:107 +#: ipalib/plugins/user.py:110 msgid "Last failed authentication" msgstr "" -#: ipalib/plugins/user.py:110 +#: ipalib/plugins/user.py:113 msgid "Time now" msgstr "" -#: ipalib/plugins/user.py:125 +#: ipalib/plugins/user.py:134 msgid "must be TRUE or FALSE" msgstr "" -#: ipalib/plugins/user.py:197 -msgid "user" -msgstr "" - -#: ipalib/plugins/user.py:198 -msgid "users" -msgstr "" - -#: ipalib/plugins/user.py:234 +#: ipalib/plugins/user.py:438 msgid "User login" msgstr "" -#: ipalib/plugins/user.py:241 +#: ipalib/plugins/user.py:445 msgid "First name" msgstr "" -#: ipalib/plugins/user.py:245 +#: ipalib/plugins/user.py:449 msgid "Last name" msgstr "" -#: ipalib/plugins/user.py:248 +#: ipalib/plugins/user.py:452 msgid "Full name" msgstr "" -#: ipalib/plugins/user.py:253 +#: ipalib/plugins/user.py:457 msgid "Display name" msgstr "" -#: ipalib/plugins/user.py:258 +#: ipalib/plugins/user.py:462 msgid "Initials" msgstr "" -#: ipalib/plugins/user.py:264 +#: ipalib/plugins/user.py:468 msgid "Home directory" msgstr "" -#: ipalib/plugins/user.py:267 +#: ipalib/plugins/user.py:471 msgid "GECOS" msgstr "" -#: ipalib/plugins/user.py:273 +#: ipalib/plugins/user.py:477 msgid "Login shell" msgstr "" -#: ipalib/plugins/user.py:277 +#: ipalib/plugins/user.py:481 msgid "Kerberos principal" msgstr "" -#: ipalib/plugins/user.py:285 +#: ipalib/plugins/user.py:489 +msgid "Kerberos principal expiration" +msgstr "" + +#: ipalib/plugins/user.py:493 msgid "Email address" msgstr "" -#: ipalib/plugins/user.py:290 +#: ipalib/plugins/user.py:498 msgid "Prompt to set the user password" msgstr "" -#: ipalib/plugins/user.py:296 +#: ipalib/plugins/user.py:504 msgid "Generate a random user password" msgstr "" -#: ipalib/plugins/user.py:306 +#: ipalib/plugins/user.py:514 msgid "UID" msgstr "" -#: ipalib/plugins/user.py:307 +#: ipalib/plugins/user.py:515 msgid "User ID Number (system will assign one if not provided)" msgstr "" -#: ipalib/plugins/user.py:312 +#: ipalib/plugins/user.py:520 msgid "Group ID Number" msgstr "" -#: ipalib/plugins/user.py:317 +#: ipalib/plugins/user.py:525 msgid "Street address" msgstr "" -#: ipalib/plugins/user.py:321 +#: ipalib/plugins/user.py:529 msgid "City" msgstr "" -#: ipalib/plugins/user.py:325 +#: ipalib/plugins/user.py:533 msgid "State/Province" msgstr "" -#: ipalib/plugins/user.py:328 +#: ipalib/plugins/user.py:536 msgid "ZIP" msgstr "" -#: ipalib/plugins/user.py:332 +#: ipalib/plugins/user.py:540 msgid "Telephone Number" msgstr "" -#: ipalib/plugins/user.py:335 +#: ipalib/plugins/user.py:543 msgid "Mobile Telephone Number" msgstr "" -#: ipalib/plugins/user.py:338 +#: ipalib/plugins/user.py:546 msgid "Pager Number" msgstr "" -#: ipalib/plugins/user.py:342 +#: ipalib/plugins/user.py:550 msgid "Fax Number" msgstr "" -#: ipalib/plugins/user.py:346 +#: ipalib/plugins/user.py:554 msgid "Org. Unit" msgstr "" -#: ipalib/plugins/user.py:349 +#: ipalib/plugins/user.py:557 msgid "Job Title" msgstr "" -#: ipalib/plugins/user.py:352 -msgid "Manager" -msgstr "" - -#: ipalib/plugins/user.py:355 +#: ipalib/plugins/user.py:563 msgid "Car License" msgstr "" -#: ipalib/plugins/user.py:358 +#: ipalib/plugins/user.py:566 msgid "Account disabled" msgstr "" -#: ipalib/plugins/user.py:385 ipalib/plugins/user.py:389 +#: ipalib/plugins/user.py:578 +msgid "User authentication types" +msgstr "" + +#: ipalib/plugins/user.py:579 +msgid "Types of supported user authentication" +msgstr "" + +#: ipalib/plugins/user.py:586 +msgid "" +"User category (semantics placed on this attribute are for local " +"interpretation)" +msgstr "" + +#: ipalib/plugins/user.py:591 +msgid "RADIUS proxy configuration" +msgstr "" + +#: ipalib/plugins/user.py:595 +msgid "RADIUS proxy username" +msgstr "" + +#: ipalib/plugins/user.py:598 +msgid "Department Number" +msgstr "" + +#: ipalib/plugins/user.py:601 +msgid "Employee Number" +msgstr "" + +#: ipalib/plugins/user.py:604 +msgid "Employee Type" +msgstr "" + +#: ipalib/plugins/user.py:607 +msgid "Preferred Language" +msgstr "" + +#: ipalib/plugins/user.py:629 ipalib/plugins/user.py:633 #, python-format msgid "invalid e-mail format: %(email)s" msgstr "" -#: ipalib/plugins/user.py:415 +#: ipalib/plugins/user.py:659 #, python-format msgid "manager %(manager)s not found" msgstr "" -#: ipalib/plugins/user.py:434 +#: ipalib/plugins/user.py:677 msgid "Add a new user." msgstr "" -#: ipalib/plugins/user.py:436 +#: ipalib/plugins/user.py:679 #, python-format msgid "Added user \"%(value)s\"" msgstr "" -#: ipalib/plugins/user.py:443 +#: ipalib/plugins/user.py:686 msgid "Don't create user private group" msgstr "" -#: ipalib/plugins/user.py:487 ipalib/plugins/user.py:623 +#: ipalib/plugins/user.py:730 ipalib/plugins/user.py:891 #, python-format msgid "can be at most %(len)d characters" msgstr "" -#: ipalib/plugins/user.py:522 +#: ipalib/plugins/user.py:762 msgid "Default group for new users is not POSIX" msgstr "" -#: ipalib/plugins/user.py:596 +#: ipalib/plugins/user.py:852 msgid "Delete a user." msgstr "" -#: ipalib/plugins/user.py:598 +#: ipalib/plugins/user.py:854 #, python-format msgid "Deleted user \"%(value)s\"" msgstr "" -#: ipalib/plugins/user.py:609 +#: ipalib/plugins/user.py:877 msgid "Modify a user." msgstr "" -#: ipalib/plugins/user.py:611 +#: ipalib/plugins/user.py:879 #, python-format msgid "Modified user \"%(value)s\"" msgstr "" -#: ipalib/plugins/user.py:664 +#: ipalib/plugins/user.py:950 msgid "Search for users." msgstr "" -#: ipalib/plugins/user.py:671 +#: ipalib/plugins/user.py:957 msgid "Self" msgstr "" -#: ipalib/plugins/user.py:672 +#: ipalib/plugins/user.py:958 msgid "Display user record for current Kerberos principal" msgstr "" -#: ipalib/plugins/user.py:703 +#: ipalib/plugins/user.py:994 #, python-format msgid "%(count)d user matched" msgid_plural "%(count)d users matched" msgstr[0] "" msgstr[1] "" -#: ipalib/plugins/user.py:710 +#: ipalib/plugins/user.py:1000 msgid "Display information about a user." msgstr "" -#: ipalib/plugins/user.py:726 +#: ipalib/plugins/user.py:1016 msgid "Disable a user account." msgstr "" -#: ipalib/plugins/user.py:729 +#: ipalib/plugins/user.py:1019 #, python-format msgid "Disabled user account \"%(value)s\"" msgstr "" -#: ipalib/plugins/user.py:748 +#: ipalib/plugins/user.py:1037 msgid "Enable a user account." msgstr "" -#: ipalib/plugins/user.py:752 +#: ipalib/plugins/user.py:1041 #, python-format msgid "Enabled user account \"%(value)s\"" msgstr "" -#: ipalib/plugins/user.py:769 +#: ipalib/plugins/user.py:1058 msgid "" "\n" " Unlock a user account\n" @@ -10164,12 +11420,12 @@ msgid "" " an administrator." msgstr "" -#: ipalib/plugins/user.py:778 +#: ipalib/plugins/user.py:1067 #, python-format msgid "Unlocked account \"%(value)s\"" msgstr "" -#: ipalib/plugins/user.py:794 +#: ipalib/plugins/user.py:1087 msgid "" "\n" " Lockout status of a user account\n" @@ -10198,17 +11454,17 @@ msgid "" " means that the user may attempt a login again. " msgstr "" -#: ipalib/plugins/user.py:852 +#: ipalib/plugins/user.py:1145 #, python-format msgid "%(host)s failed: %(error)s" msgstr "" -#: ipalib/plugins/user.py:888 +#: ipalib/plugins/user.py:1181 #, python-format msgid "%(host)s failed" msgstr "" -#: ipalib/plugins/user.py:898 +#: ipalib/plugins/user.py:1191 #, python-format msgid "Account disabled: %(disabled)s" msgstr "" @@ -10225,107 +11481,100 @@ msgstr "" msgid "No such virtual command" msgstr "" -#: ipalib/rpc.py:673 +#: ipalib/rpc.py:839 msgid "any of the configured servers" msgstr "" -#: ipalib/session.py:776 ipalib/session.py:879 +#: ipalib/session.py:777 ipalib/session.py:880 msgid "could not allocate unique new session_id" msgstr "" -#: ipalib/util.py:186 +#: ipalib/util.py:191 msgid "Filename is empty" msgstr "" -#: ipalib/util.py:190 +#: ipalib/util.py:195 #, python-format msgid "Permission denied: %(file)s" msgstr "" -#: ipalib/util.py:228 -msgid "empty DNS label" -msgstr "" - -#: ipalib/util.py:231 +#: ipalib/util.py:243 msgid "DNS label cannot be longer that 63 characters" msgstr "" -#: ipalib/util.py:234 +#: ipalib/util.py:248 #, python-format msgid "" -"only letters, numbers,%(underscore)s and - are allowed. DNS label may not " -"start or end with -" +"only letters, numbers, %(chars)s are allowed. DNS label may not start or end " +"with %(chars2)s" msgstr "" -#: ipalib/util.py:252 -msgid "" -"mail account may only include letters, numbers, -, _ and a dot. There may " -"not be consecutive -, _ and . characters. Its parts may not start or end " -"with - or _" -msgstr "" - -#: ipalib/util.py:258 ipalib/util.py:297 -msgid "cannot be longer that 255 characters" -msgstr "" - -#: ipalib/util.py:266 +#: ipalib/util.py:268 msgid "too many '@' characters" msgstr "" -#: ipalib/util.py:279 +#: ipalib/util.py:270 msgid "missing address domain" msgstr "" -#: ipalib/util.py:284 +#: ipalib/util.py:272 msgid "missing mail account" msgstr "" -#: ipalib/util.py:303 +#: ipalib/util.py:286 +msgid "cannot be longer that 255 characters" +msgstr "" + +#: ipalib/util.py:292 msgid "hostname contains empty label (consecutive dots)" msgstr "" -#: ipalib/util.py:307 +#: ipalib/util.py:296 msgid "not fully qualified" msgstr "" -#: ipalib/util.py:319 ipalib/util.py:325 +#: ipalib/util.py:308 ipalib/util.py:314 msgid "invalid SSH public key" msgstr "" -#: ipalib/util.py:328 +#: ipalib/util.py:317 msgid "options are not allowed" msgstr "" -#: ipalib/x509.py:207 +#: ipalib/util.py:553 +msgid "invalid hostmask" +msgstr "" + +#: ipalib/x509.py:208 msgid "improperly formatted DER-encoded certificate" msgstr "" -#: ipalib/x509.py:244 +#: ipalib/x509.py:245 #, python-format msgid "Issuer \"%(issuer)s\" does not match the expected issuer" msgstr "" -#: ipapython/dogtag.py:176 +#: ipapython/dogtag.py:181 #, python-format msgid "Retrieving CA cert chain failed: %s" msgstr "" -#: ipapython/dogtag.py:182 +#: ipapython/dogtag.py:187 #, python-format msgid "request failed with HTTP status %d" msgstr "" -#: ipapython/dogtag.py:205 ipapython/dogtag.py:212 +#: ipapython/dogtag.py:214 ipapython/dogtag.py:221 #, python-format msgid "Retrieving CA status failed: %s" msgstr "" -#: ipapython/ipaldap.py:1000 +#: ipapython/ipaldap.py:1229 #, python-format msgid "objectclass %s not found" msgstr "" -#: ipaserver/dcerpc.py:59 +#: ipaserver/dcerpc.py:60 msgid "" "\n" "Classes to manage trust joins using DCE-RPC calls\n" @@ -10334,136 +11583,142 @@ msgid "" "and Samba4 python bindings.\n" msgstr "" -#: ipaserver/dcerpc.py:76 +#: ipaserver/dcerpc.py:77 msgid "CIFS server denied your credentials" msgstr "" -#: ipaserver/dcerpc.py:79 +#: ipaserver/dcerpc.py:80 msgid "communication with CIFS server was unsuccessful" msgstr "" -#: ipaserver/dcerpc.py:84 +#: ipaserver/dcerpc.py:85 msgid "AD domain controller" msgstr "" -#: ipaserver/dcerpc.py:84 +#: ipaserver/dcerpc.py:85 msgid "unsupported functional level" msgstr "" -#: ipaserver/dcerpc.py:89 +#: ipaserver/dcerpc.py:88 +msgid "" +"AD domain controller complains about communication sequence. It may mean " +"unsynchronized time on both sides, for example" +msgstr "" + +#: ipaserver/dcerpc.py:93 msgid "Cannot find specified domain or server name" msgstr "" -#: ipaserver/dcerpc.py:91 +#: ipaserver/dcerpc.py:95 msgid "At least the domain or IP address should be specified" msgstr "" -#: ipaserver/dcerpc.py:103 +#: ipaserver/dcerpc.py:107 #, python-format msgid "" "CIFS server communication error: code \"%(num)s\",\n" " message \"%(message)s\" (both may be \"None\")" msgstr "" -#: ipaserver/dcerpc.py:203 +#: ipaserver/dcerpc.py:207 msgid "no trusted domain is configured" msgstr "" -#: ipaserver/dcerpc.py:210 +#: ipaserver/dcerpc.py:214 msgid "domain is not configured" msgstr "" -#: ipaserver/dcerpc.py:217 +#: ipaserver/dcerpc.py:221 msgid "SID is not valid" msgstr "" -#: ipaserver/dcerpc.py:232 +#: ipaserver/dcerpc.py:236 msgid "SID does not match exactlywith any trusted domain's SID" msgstr "" -#: ipaserver/dcerpc.py:243 +#: ipaserver/dcerpc.py:247 msgid "SID does not match any trusted domain" msgstr "" -#: ipaserver/dcerpc.py:283 ipaserver/dcerpc.py:289 ipaserver/dcerpc.py:511 +#: ipaserver/dcerpc.py:287 ipaserver/dcerpc.py:293 ipaserver/dcerpc.py:515 msgid "Trust setup" msgstr "" -#: ipaserver/dcerpc.py:284 +#: ipaserver/dcerpc.py:288 msgid "Our domain is not configured" msgstr "" -#: ipaserver/dcerpc.py:290 +#: ipaserver/dcerpc.py:294 msgid "No trusted domain is not configured" msgstr "" -#: ipaserver/dcerpc.py:295 ipaserver/dcerpc.py:310 ipaserver/dcerpc.py:327 -#: ipaserver/dcerpc.py:339 ipaserver/dcerpc.py:346 ipaserver/dcerpc.py:391 +#: ipaserver/dcerpc.py:299 ipaserver/dcerpc.py:314 ipaserver/dcerpc.py:331 +#: ipaserver/dcerpc.py:343 ipaserver/dcerpc.py:350 ipaserver/dcerpc.py:395 msgid "trusted domain object" msgstr "" -#: ipaserver/dcerpc.py:296 +#: ipaserver/dcerpc.py:300 msgid "domain is not trusted" msgstr "" -#: ipaserver/dcerpc.py:311 +#: ipaserver/dcerpc.py:315 msgid "no trusted domain matched the specified flat name" msgstr "" -#: ipaserver/dcerpc.py:313 +#: ipaserver/dcerpc.py:317 msgid "trusted domain object not found" msgstr "" -#: ipaserver/dcerpc.py:328 ipaserver/dcerpc.py:392 +#: ipaserver/dcerpc.py:332 ipaserver/dcerpc.py:396 msgid "Ambiguous search, user domain was not specified" msgstr "" -#: ipaserver/dcerpc.py:340 +#: ipaserver/dcerpc.py:344 msgid "Trusted domain did not return a unique object" msgstr "" -#: ipaserver/dcerpc.py:347 +#: ipaserver/dcerpc.py:351 msgid "Trusted domain did not return a valid SID for the object" msgstr "" -#: ipaserver/dcerpc.py:377 ipaserver/dcerpc.py:387 +#: ipaserver/dcerpc.py:381 ipaserver/dcerpc.py:391 msgid "trusted domain user not found" msgstr "" -#: ipaserver/dcerpc.py:512 +#: ipaserver/dcerpc.py:516 msgid "Cannot retrieve trusted domain GC list" msgstr "" -#: ipaserver/dcerpc.py:648 +#: ipaserver/dcerpc.py:652 msgid "CIFS credentials object" msgstr "" -#: ipaserver/dcerpc.py:681 +#: ipaserver/dcerpc.py:685 #, python-format msgid "CIFS server %(host)s denied your credentials" msgstr "" -#: ipaserver/dcerpc.py:685 +#: ipaserver/dcerpc.py:689 #, python-format msgid "Cannot establish LSA connection to %(host)s. Is CIFS server running?" msgstr "" -#: ipaserver/dcerpc.py:874 +#: ipaserver/dcerpc.py:878 #, python-format msgid "" "the IPA server and the remote domain cannot share the same NetBIOS name: %s" msgstr "" -#: ipaserver/install/certs.py:640 +#: ipaserver/install/certs.py:641 #, python-format msgid "Unable to communicate with CMS (%s)" msgstr "" -#: ipaserver/plugins/dogtag.py:1252 +#: ipaserver/plugins/dogtag.py:1253 msgid "Unable to communicate with CMS" msgstr "" -#: ipaserver/plugins/dogtag.py:1834 +#: ipaserver/plugins/dogtag.py:1833 msgid "find not supported on CAs upgraded from 9 to 10" msgstr "" @@ -10490,31 +11745,35 @@ msgid "" "'%s'." msgstr "" -#: ipaserver/rpcserver.py:538 +#: ipaserver/plugins/ldap2.py:323 +msgid "Could not read UPG Definition originfilter. Check your permissions." +msgstr "" + +#: ipaserver/rpcserver.py:475 msgid "Request must be a dict" msgstr "" -#: ipaserver/rpcserver.py:540 +#: ipaserver/rpcserver.py:477 msgid "Request is missing \"method\"" msgstr "" -#: ipaserver/rpcserver.py:542 +#: ipaserver/rpcserver.py:479 msgid "Request is missing \"params\"" msgstr "" -#: ipaserver/rpcserver.py:548 +#: ipaserver/rpcserver.py:485 msgid "params must be a list" msgstr "" -#: ipaserver/rpcserver.py:550 +#: ipaserver/rpcserver.py:487 msgid "params must contain [args, options]" msgstr "" -#: ipaserver/rpcserver.py:553 +#: ipaserver/rpcserver.py:490 msgid "params[0] (aka args) must be a list" msgstr "" -#: ipaserver/rpcserver.py:556 +#: ipaserver/rpcserver.py:493 msgid "params[1] (aka options) must be a dict" msgstr "" @@ -10538,236 +11797,337 @@ msgstr "" msgid "read error\n" msgstr "" -#: ipa-client/ipa-getkeytab.c:61 +#: ipa-client/ipa-getkeytab.c:62 #, c-format msgid "Kerberos context initialization failed: %1$s (%2$d)\n" msgstr "" -#: ipa-client/ipa-getkeytab.c:72 +#: ipa-client/ipa-getkeytab.c:73 #, c-format msgid "Unable to parse principal: %1$s (%2$d)\n" msgstr "" -#: ipa-client/ipa-getkeytab.c:127 +#: ipa-client/ipa-getkeytab.c:128 #, c-format msgid "No keys accepted by KDC\n" msgstr "" -#: ipa-client/ipa-getkeytab.c:142 +#: ipa-client/ipa-getkeytab.c:143 #, c-format msgid "Out of memory \n" msgstr "" -#: ipa-client/ipa-getkeytab.c:181 +#: ipa-client/ipa-getkeytab.c:169 #, c-format -msgid "Out of Memory!\n" +msgid "Unable to set LDAP_OPT_X_TLS_CERTIFICATE\n" +msgstr "" + +#: ipa-client/ipa-getkeytab.c:175 +#, c-format +msgid "Unable to init for ldaps(636) connection\n" +msgstr "" + +#: ipa-client/ipa-getkeytab.c:182 +#, c-format +msgid "Unable to set LDAP_OPT_X_TLS\n" msgstr "" #: ipa-client/ipa-getkeytab.c:188 #, c-format -msgid "Failed to create control!\n" +msgid "Unable to init for ldap(389) connection\n" msgstr "" -#: ipa-client/ipa-getkeytab.c:212 +#: ipa-client/ipa-getkeytab.c:194 #, c-format msgid "Unable to initialize ldap library!\n" msgstr "" -#: ipa-client/ipa-getkeytab.c:220 ipa-client/ipa-join.c:240 +#: ipa-client/ipa-getkeytab.c:202 ipa-client/ipa-join.c:240 #, c-format msgid "Unable to set LDAP_OPT_X_SASL_NOCANON\n" msgstr "" -#: ipa-client/ipa-getkeytab.c:228 +#: ipa-client/ipa-getkeytab.c:210 #, c-format -msgid "Unable to set ldap options!\n" +msgid "Unable to set LDAP_OPT_PROTOCOL_VERSION\n" msgstr "" -#: ipa-client/ipa-getkeytab.c:241 +#: ipa-client/ipa-getkeytab.c:221 #, c-format msgid "Simple bind failed\n" msgstr "" -#: ipa-client/ipa-getkeytab.c:273 ipa-client/ipa-getkeytab.c:286 -#: ipa-client/ipa-getkeytab.c:293 ipa-client/ipa-getkeytab.c:300 +#: ipa-client/ipa-getkeytab.c:264 #, c-format msgid "Operation failed! %s\n" msgstr "" -#: ipa-client/ipa-getkeytab.c:306 ipa-client/ipa-getkeytab.c:316 +#: ipa-client/ipa-getkeytab.c:273 +#, c-format +msgid "Failed to get result! %s\n" +msgstr "" + +#: ipa-client/ipa-getkeytab.c:279 +#, c-format +msgid "Failed to parse extended result! %s\n" +msgstr "" + +#: ipa-client/ipa-getkeytab.c:286 +#, c-format +msgid "Failed to parse result! %s\n" +msgstr "" + +#: ipa-client/ipa-getkeytab.c:304 +#, c-format +msgid "Missing reply control list!\n" +msgstr "" + +#: ipa-client/ipa-getkeytab.c:314 #, c-format msgid "Missing reply control!\n" msgstr "" -#: ipa-client/ipa-getkeytab.c:323 +#: ipa-client/ipa-getkeytab.c:342 +#, c-format +msgid "Out of Memory!\n" +msgstr "" + +#: ipa-client/ipa-getkeytab.c:349 ipa-client/ipa-getkeytab.c:595 +#, c-format +msgid "Failed to create control!\n" +msgstr "" + +#: ipa-client/ipa-getkeytab.c:355 ipa-client/ipa-getkeytab.c:602 +#, c-format +msgid "Failed to bind to server!\n" +msgstr "" + +#: ipa-client/ipa-getkeytab.c:362 +#, c-format +msgid "Failed to get keytab!\n" +msgstr "" + +#: ipa-client/ipa-getkeytab.c:371 #, c-format msgid "ber_init() failed, Invalid control ?!\n" msgstr "" -#: ipa-client/ipa-getkeytab.c:342 +#: ipa-client/ipa-getkeytab.c:390 #, c-format msgid "ber_scanf() failed, unable to find kvno ?!\n" msgstr "" -#: ipa-client/ipa-getkeytab.c:354 +#: ipa-client/ipa-getkeytab.c:402 #, c-format msgid "Failed to retrieve encryption type type #%d\n" msgstr "" -#: ipa-client/ipa-getkeytab.c:358 +#: ipa-client/ipa-getkeytab.c:406 #, c-format msgid "Failed to retrieve encryption type %1$s (#%2$d)\n" msgstr "" -#: ipa-client/ipa-getkeytab.c:368 +#: ipa-client/ipa-getkeytab.c:416 #, c-format msgid "Failed to retrieve any keys" msgstr "" -#: ipa-client/ipa-getkeytab.c:405 +#: ipa-client/ipa-getkeytab.c:614 +msgid "Failed to find or parse reply control!\n" +msgstr "" + +#: ipa-client/ipa-getkeytab.c:621 +msgid "Failed to parse control head!\n" +msgstr "" + +#: ipa-client/ipa-getkeytab.c:636 ipa-client/ipa-getkeytab.c:656 +#: ipa-client/ipa-getkeytab.c:675 ipa-client/ipa-join.c:408 +#: ipa-client/ipa-join.c:483 ipa-client/ipa-join.c:501 +#: ipa-client/ipa-join.c:602 ipa-client/ipa-join.c:808 +#: ipa-client/ipa-join.c:869 util/ipa_krb5.c:1002 util/ipa_krb5.c:1036 +#, c-format +msgid "Out of memory!\n" +msgstr "" + +#: ipa-client/ipa-getkeytab.c:647 +msgid "Failed to parse enctype in key data!\n" +msgstr "" + +#: ipa-client/ipa-getkeytab.c:667 +msgid "Failed to parse salt in key data!\n" +msgstr "" + +#: ipa-client/ipa-getkeytab.c:684 +msgid "Failed to parse ending of key data!\n" +msgstr "" + +#: ipa-client/ipa-getkeytab.c:694 +msgid "Failed to parse ending of control!\n" +msgstr "" + +#: ipa-client/ipa-getkeytab.c:724 msgid "New Principal Password" msgstr "" -#: ipa-client/ipa-getkeytab.c:411 +#: ipa-client/ipa-getkeytab.c:730 msgid "Verify Principal Password" msgstr "" -#: ipa-client/ipa-getkeytab.c:445 +#: ipa-client/ipa-getkeytab.c:765 msgid "Print as little as possible" msgstr "" -#: ipa-client/ipa-getkeytab.c:445 +#: ipa-client/ipa-getkeytab.c:765 msgid "Output only on errors" msgstr "" -#: ipa-client/ipa-getkeytab.c:447 +#: ipa-client/ipa-getkeytab.c:767 msgid "Contact this specific KDC Server" msgstr "" -#: ipa-client/ipa-getkeytab.c:448 +#: ipa-client/ipa-getkeytab.c:768 msgid "Server Name" msgstr "" -#: ipa-client/ipa-getkeytab.c:450 ipa-client/ipa-rmkeytab.c:171 +#: ipa-client/ipa-getkeytab.c:770 ipa-client/ipa-rmkeytab.c:171 msgid "The principal to get a keytab for (ex: ftp/ftp.example.com@EXAMPLE.COM)" msgstr "" -#: ipa-client/ipa-getkeytab.c:451 ipa-client/ipa-rmkeytab.c:172 +#: ipa-client/ipa-getkeytab.c:771 ipa-client/ipa-rmkeytab.c:172 msgid "Kerberos Service Principal Name" msgstr "" -#: ipa-client/ipa-getkeytab.c:453 ipa-client/ipa-rmkeytab.c:174 +#: ipa-client/ipa-getkeytab.c:773 ipa-client/ipa-rmkeytab.c:174 msgid "File were to store the keytab information" msgstr "" -#: ipa-client/ipa-getkeytab.c:454 ipa-client/ipa-rmkeytab.c:174 +#: ipa-client/ipa-getkeytab.c:774 ipa-client/ipa-rmkeytab.c:174 msgid "Keytab File Name" msgstr "" -#: ipa-client/ipa-getkeytab.c:456 +#: ipa-client/ipa-getkeytab.c:776 msgid "Encryption types to request" msgstr "" -#: ipa-client/ipa-getkeytab.c:457 +#: ipa-client/ipa-getkeytab.c:777 msgid "Comma separated encryption types list" msgstr "" -#: ipa-client/ipa-getkeytab.c:459 +#: ipa-client/ipa-getkeytab.c:779 msgid "Show the list of permitted encryption types and exit" msgstr "" -#: ipa-client/ipa-getkeytab.c:460 +#: ipa-client/ipa-getkeytab.c:780 msgid "Permitted Encryption Types" msgstr "" -#: ipa-client/ipa-getkeytab.c:462 +#: ipa-client/ipa-getkeytab.c:782 msgid "Asks for a non-random password to use for the principal" msgstr "" -#: ipa-client/ipa-getkeytab.c:464 +#: ipa-client/ipa-getkeytab.c:784 msgid "LDAP DN" msgstr "" -#: ipa-client/ipa-getkeytab.c:464 +#: ipa-client/ipa-getkeytab.c:784 msgid "DN to bind as if not using kerberos" msgstr "" -#: ipa-client/ipa-getkeytab.c:466 +#: ipa-client/ipa-getkeytab.c:786 msgid "LDAP password" msgstr "" -#: ipa-client/ipa-getkeytab.c:466 +#: ipa-client/ipa-getkeytab.c:786 msgid "password to use if not using kerberos" msgstr "" -#: ipa-client/ipa-getkeytab.c:491 ipa-client/ipa-rmkeytab.c:190 +#: ipa-client/ipa-getkeytab.c:788 +msgid "Retrieve current keys without changing them" +msgstr "" + +#: ipa-client/ipa-getkeytab.c:813 ipa-client/ipa-rmkeytab.c:190 #, c-format msgid "Kerberos context initialization failed\n" msgstr "" -#: ipa-client/ipa-getkeytab.c:504 util/ipa_krb5.c:792 +#: ipa-client/ipa-getkeytab.c:826 util/ipa_krb5.c:874 #, c-format msgid "No system preferred enctypes ?!\n" msgstr "" -#: ipa-client/ipa-getkeytab.c:507 +#: ipa-client/ipa-getkeytab.c:829 #, c-format msgid "Supported encryption types:\n" msgstr "" -#: ipa-client/ipa-getkeytab.c:511 +#: ipa-client/ipa-getkeytab.c:833 #, c-format msgid "Warning: failed to convert type (#%d)\n" msgstr "" -#: ipa-client/ipa-getkeytab.c:530 +#: ipa-client/ipa-getkeytab.c:852 #, c-format msgid "Bind password required when using a bind DN.\n" msgstr "" -#: ipa-client/ipa-getkeytab.c:543 +#: ipa-client/ipa-getkeytab.c:859 +#, c-format +msgid "Incompatible options provided (-r and -P)\n" +msgstr "" + +#: ipa-client/ipa-getkeytab.c:870 #, c-format msgid "" "Warning: salt types are not honored with randomized passwords (see opt. -P)\n" msgstr "" -#: ipa-client/ipa-getkeytab.c:555 +#: ipa-client/ipa-getkeytab.c:882 #, c-format msgid "Invalid Service Principal Name\n" msgstr "" -#: ipa-client/ipa-getkeytab.c:563 +#: ipa-client/ipa-getkeytab.c:890 #, c-format msgid "Kerberos Credential Cache not found. Do you have a Kerberos Ticket?\n" msgstr "" -#: ipa-client/ipa-getkeytab.c:571 +#: ipa-client/ipa-getkeytab.c:898 #, c-format msgid "" "Kerberos User Principal not found. Do you have a valid Credential Cache?\n" msgstr "" -#: ipa-client/ipa-getkeytab.c:579 +#: ipa-client/ipa-getkeytab.c:906 #, c-format msgid "Failed to open Keytab\n" msgstr "" -#: ipa-client/ipa-getkeytab.c:589 +#: ipa-client/ipa-getkeytab.c:921 +#, c-format +msgid "Retrying with old method\n" +msgstr "" + +#: ipa-client/ipa-getkeytab.c:929 #, c-format msgid "Failed to create key material\n" msgstr "" -#: ipa-client/ipa-getkeytab.c:608 +#: ipa-client/ipa-getkeytab.c:937 +#, c-format +msgid "Failed to get keytab\n" +msgstr "" + +#: ipa-client/ipa-getkeytab.c:951 #, c-format msgid "Failed to add key to the keytab\n" msgstr "" -#: ipa-client/ipa-getkeytab.c:617 +#: ipa-client/ipa-getkeytab.c:960 #, c-format msgid "Failed to close the keytab\n" msgstr "" -#: ipa-client/ipa-getkeytab.c:623 +#: ipa-client/ipa-getkeytab.c:966 #, c-format msgid "Keytab successfully retrieved and stored in: %s\n" msgstr "" @@ -10833,14 +12193,6 @@ msgstr "" msgid "IPA namingContext not found\n" msgstr "" -#: ipa-client/ipa-join.c:408 ipa-client/ipa-join.c:483 -#: ipa-client/ipa-join.c:501 ipa-client/ipa-join.c:602 -#: ipa-client/ipa-join.c:808 ipa-client/ipa-join.c:869 util/ipa_krb5.c:973 -#: util/ipa_krb5.c:1007 -#, c-format -msgid "Out of memory!\n" -msgstr "" - #: ipa-client/ipa-join.c:419 #, c-format msgid "Search for ipaCertificateSubjectBase failed with error %d" @@ -11122,35 +12474,35 @@ msgstr "" msgid "krb5_kt_close %1$d: %2$s\n" msgstr "" -#: util/ipa_krb5.c:800 -msgid "Out of memory!?\n" -msgstr "" - -#: util/ipa_krb5.c:818 util/ipa_krb5.c:833 +#: util/ipa_krb5.c:795 util/ipa_krb5.c:810 msgid "Out of memory\n" msgstr "" -#: util/ipa_krb5.c:847 +#: util/ipa_krb5.c:828 msgid "Warning unrecognized encryption type.\n" msgstr "" -#: util/ipa_krb5.c:861 +#: util/ipa_krb5.c:842 msgid "Warning unrecognized salt type.\n" msgstr "" -#: util/ipa_krb5.c:888 +#: util/ipa_krb5.c:882 +msgid "Out of memory!?\n" +msgstr "" + +#: util/ipa_krb5.c:917 msgid "Enctype comparison failed!\n" msgstr "" -#: util/ipa_krb5.c:953 +#: util/ipa_krb5.c:982 msgid "Failed to create random key!\n" msgstr "" -#: util/ipa_krb5.c:966 util/ipa_krb5.c:984 util/ipa_krb5.c:992 -#: util/ipa_krb5.c:1032 +#: util/ipa_krb5.c:995 util/ipa_krb5.c:1013 util/ipa_krb5.c:1021 +#: util/ipa_krb5.c:1061 msgid "Failed to create key!\n" msgstr "" -#: util/ipa_krb5.c:1018 +#: util/ipa_krb5.c:1047 msgid "Bad or unsupported salt type.\n" msgstr "" diff --git a/install/po/ja.po b/install/po/ja.po index 584223043..1a3f267e6 100644 --- a/install/po/ja.po +++ b/install/po/ja.po @@ -4,16 +4,17 @@ # # Translators: # Tomoyuki KATO <tomo@dream.daynight.jp>, 2012 -# 高一人参 @欠陥遺伝子 <www.carrotsoft@gmail.com>, 2011 +# carrotsoft <www.carrotsoft@gmail.com>, 2011 msgid "" msgstr "" "Project-Id-Version: FreeIPA\n" "Report-Msgid-Bugs-To: https://hosted.fedoraproject.org/projects/freeipa/" "newticket\n" -"POT-Creation-Date: 2013-10-09 14:39+0200\n" -"PO-Revision-Date: 2013-08-01 14:06+0000\n" +"POT-Creation-Date: 2014-06-27 16:29+0200\n" +"PO-Revision-Date: 2014-06-25 19:44+0000\n" "Last-Translator: Petr Viktorin <encukou@gmail.com>\n" -"Language-Team: Japanese <trans-ja@lists.fedoraproject.org>\n" +"Language-Team: Japanese (http://www.transifex.com/projects/p/freeipa/" +"language/ja/)\n" "Language: ja\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -148,10 +149,6 @@ msgid "Fingerprint (SHA1)" msgstr "フィンガープリント (SHA1)" #, python-format -msgid "invalid domain-name: %s" -msgstr "無効なドメイン名: %s" - -#, python-format msgid "%s record" msgstr "%s レコード" @@ -165,9 +162,6 @@ msgstr "IP アドレス" msgid "Port" msgstr "ポート" -msgid "Labels" -msgstr "ラベル" - msgid "Fingerprint" msgstr "フィンガープリント" @@ -270,6 +264,10 @@ msgstr "HBAC サービスグループにメンバーを追加します。" msgid "Remove members from an HBAC service group." msgstr "HBAC サービスグループからメンバーを削除します。" +#, python-format +msgid "invalid domain-name: %s" +msgstr "無効なドメイン名: %s" + msgid "host" msgstr "ホスト" @@ -303,6 +301,7 @@ msgstr "更新" msgid "Set" msgstr "設定" +#, python-brace-format msgid "Edit ${entity}" msgstr "${entity} の編集" @@ -456,8 +455,8 @@ msgstr "ユーザーアカウントを有効化します。" msgid "invalid SSH public key" msgstr "無効な SSH 公開鍵" -msgid "Out of memory!?\n" -msgstr "メモリー不足!?\n" - msgid "Out of memory\n" msgstr "メモリー不足\n" + +msgid "Out of memory!?\n" +msgstr "メモリー不足!?\n" diff --git a/install/po/kn.po b/install/po/kn.po index a6bee8df5..ba0838a96 100644 --- a/install/po/kn.po +++ b/install/po/kn.po @@ -10,10 +10,10 @@ msgstr "" "Project-Id-Version: FreeIPA\n" "Report-Msgid-Bugs-To: https://hosted.fedoraproject.org/projects/freeipa/" "newticket\n" -"POT-Creation-Date: 2013-10-09 14:39+0200\n" -"PO-Revision-Date: 2013-08-01 14:06+0000\n" +"POT-Creation-Date: 2014-06-27 16:29+0200\n" +"PO-Revision-Date: 2014-06-25 19:44+0000\n" "Last-Translator: Petr Viktorin <encukou@gmail.com>\n" -"Language-Team: Kannada (http://www.transifex.com/projects/p/fedora/language/" +"Language-Team: Kannada (http://www.transifex.com/projects/p/freeipa/language/" "kn/)\n" "Language: kn\n" "MIME-Version: 1.0\n" @@ -268,6 +268,12 @@ msgstr "\"%(value)s\" ACIವನ್ನು ಬದಲಾಯಿಸಲಾಗಿದೆ msgid "Description" msgstr "ವಿವರಣೆ" +msgid "Users" +msgstr "ಬಳಕೆದಾರರು" + +msgid "Hosts" +msgstr "ಹೋಸ್ಟ್ಗಳು" + msgid "Location" msgstr "ಸ್ಥಳ" @@ -319,9 +325,6 @@ msgstr "ಹೋಸ್ಟ್-ಗುಂಪಿನ ಸದಸ್ಯ" msgid "External host" msgstr "ಹೊರಗಿನ ಹೋಸ್ಟ್" -msgid "Failure decoding Certificate Signing Request" -msgstr "ಪ್ರಮಾಣಪತ್ರದ ಸಹಿಯ ಕೋರಿಕೆಯ ಡಿಕೋಡಿಂಗ್ನ ವಿಫಲತೆ" - #, python-format msgid "Failure decoding Certificate Signing Request: %s" msgstr "ಪ್ರಮಾಣಪತ್ರದ ಸಹಿಯ ಕೋರಿಕೆಯ ಡಿಕೋಡಿಂಗ್ನ ವಿಫಲತೆ: %s" @@ -416,8 +419,8 @@ msgstr "SOA expire" msgid "SOA minimum" msgstr "SOA minimum" -msgid "SOA time to live" -msgstr "SOA time to live" +msgid "Time to live" +msgstr "ಉಳಿದಿರಬೇಕಾದ ಸಮಯ" msgid "SOA class" msgstr "SOA class" @@ -425,9 +428,6 @@ msgstr "SOA class" msgid "BIND update policy" msgstr "BIND update policy" -msgid "Time to live" -msgstr "ಉಳಿದಿರಬೇಕಾದ ಸಮಯ" - msgid "Class" msgstr "ವರ್ಗ" @@ -473,12 +473,6 @@ msgstr "ಹೋಸ್ಟ್ ವರ್ಗ" msgid "Host category the rule applies to" msgstr "ನಿಯಮ ಅನ್ವಯಿಸುವಂತಹ ಹೋಸ್ಟ್ ವರ್ಗ" -msgid "Users" -msgstr "ಬಳಕೆದಾರರು" - -msgid "Hosts" -msgstr "ಹೋಸ್ಟ್ಗಳು" - msgid "Host Groups" msgstr "ಹೋಸ್ಟ್ ಗುಂಪುಗಳು" diff --git a/install/po/nl.po b/install/po/nl.po index 37c8eeddb..1736a469c 100644 --- a/install/po/nl.po +++ b/install/po/nl.po @@ -9,10 +9,10 @@ msgstr "" "Project-Id-Version: FreeIPA\n" "Report-Msgid-Bugs-To: https://hosted.fedoraproject.org/projects/freeipa/" "newticket\n" -"POT-Creation-Date: 2013-10-09 14:39+0200\n" -"PO-Revision-Date: 2013-08-01 14:06+0000\n" +"POT-Creation-Date: 2014-06-27 16:29+0200\n" +"PO-Revision-Date: 2014-06-25 19:44+0000\n" "Last-Translator: Petr Viktorin <encukou@gmail.com>\n" -"Language-Team: Dutch (http://www.transifex.com/projects/p/fedora/language/" +"Language-Team: Dutch (http://www.transifex.com/projects/p/freeipa/language/" "nl/)\n" "Language: nl\n" "MIME-Version: 1.0\n" diff --git a/install/po/pl.po b/install/po/pl.po index 04d238020..38b50ddd1 100644 --- a/install/po/pl.po +++ b/install/po/pl.po @@ -4,17 +4,18 @@ # # Translators: # jdennis <jdennis@redhat.com>, 2011 -# mmarzantowicz <mmarzantowicz@osdf.com.pl>, 2013 +# Mateusz Marzantowicz <mmarzantowicz@osdf.com.pl>, 2013 # Piotr Drąg <piotrdrag@gmail.com>, 2010,2013 msgid "" msgstr "" "Project-Id-Version: FreeIPA\n" "Report-Msgid-Bugs-To: https://hosted.fedoraproject.org/projects/freeipa/" "newticket\n" -"POT-Creation-Date: 2013-10-09 14:39+0200\n" -"PO-Revision-Date: 2013-08-01 14:06+0000\n" +"POT-Creation-Date: 2014-06-27 16:29+0200\n" +"PO-Revision-Date: 2014-06-25 19:44+0000\n" "Last-Translator: Petr Viktorin <encukou@gmail.com>\n" -"Language-Team: Polish <trans-pl@lists.fedoraproject.org>\n" +"Language-Team: Polish (http://www.transifex.com/projects/p/freeipa/language/" +"pl/)\n" "Language: pl\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -321,9 +322,11 @@ msgstr[2] "Pasuje %(count)d ACI" msgid "Description" msgstr "Opis" -#, python-format -msgid "Group: %s not found!" -msgstr "Grupa: nie odnaleziono %s." +msgid "Users" +msgstr "Użytkownicy" + +msgid "Hosts" +msgstr "Komputery" msgid "Location" msgstr "Położenie" @@ -444,12 +447,6 @@ msgstr "Ograniczenie rozmiaru" msgid "Maximum number of entries returned" msgstr "Maksymalna liczba zwróconych wpisów" -msgid "Failure decoding Certificate Signing Request:" -msgstr "Dekodowanie żądania podpisywania certyfikatu nie powiodło się:" - -msgid "Failure decoding Certificate Signing Request" -msgstr "Dekodowanie żądania podpisywania certyfikatu nie powiodło się" - #, python-format msgid "Failure decoding Certificate Signing Request: %s" msgstr "Dekodowanie żądania podpisywania certyfikatu nie powiodło się: %s" @@ -569,6 +566,12 @@ msgstr "Nazwa strefy" msgid "Zone name (FQDN)" msgstr "Nazwa strefy (FQDN)" +msgid "Active zone" +msgstr "Aktywna strefa" + +msgid "DNS is not configured" +msgstr "DNS nie jest skonfigurowany" + msgid "Administrator e-mail address" msgstr "Adres e-mail administratora" @@ -587,8 +590,8 @@ msgstr "Wygaszenie SOA" msgid "SOA minimum" msgstr "Minimalne SOA" -msgid "SOA time to live" -msgstr "Czas życia SOA" +msgid "Time to live" +msgstr "Czas życia" msgid "SOA class" msgstr "Klasa SOA" @@ -596,15 +599,6 @@ msgstr "Klasa SOA" msgid "BIND update policy" msgstr "Polityka aktualizacji BIND" -msgid "Active zone" -msgstr "Aktywna strefa" - -msgid "DNS is not configured" -msgstr "DNS nie jest skonfigurowany" - -msgid "Time to live" -msgstr "Czas życia" - msgid "Class" msgstr "Klasa" @@ -699,12 +693,6 @@ msgstr "Kategoria usług, do których zastosowywana jest reguła" msgid "Enabled" msgstr "Włączone" -msgid "Users" -msgstr "Użytkownicy" - -msgid "Hosts" -msgstr "Komputery" - msgid "Host Groups" msgstr "Grupy komputerów" @@ -1292,22 +1280,10 @@ msgid "Out of memory \n" msgstr "Brak pamięci \n" #, c-format -msgid "Out of Memory!\n" -msgstr "Brak pamięci.\n" - -#, c-format -msgid "Failed to create control!\n" -msgstr "Utworzenie kontroli nie powiodło się.\n" - -#, c-format msgid "Unable to initialize ldap library!\n" msgstr "Nie można zainicjować biblioteki LDAP.\n" #, c-format -msgid "Unable to set ldap options!\n" -msgstr "Nie można ustawić opcji LDAP.\n" - -#, c-format msgid "Simple bind failed\n" msgstr "Proste dowiązanie nie powiodło się\n" @@ -1320,9 +1296,21 @@ msgid "Missing reply control!\n" msgstr "Brak kontroli odpowiedzi.\n" #, c-format +msgid "Out of Memory!\n" +msgstr "Brak pamięci.\n" + +#, c-format +msgid "Failed to create control!\n" +msgstr "Utworzenie kontroli nie powiodło się.\n" + +#, c-format msgid "ber_init() failed, Invalid control ?!\n" msgstr "ber_init() nie powiodło się, nieprawidłowa kontrola?\n" +#, c-format +msgid "Out of memory!\n" +msgstr "Brak pamięci.\n" + msgid "New Principal Password" msgstr "Nowe hasło naczelnika" @@ -1471,10 +1459,6 @@ msgid "No values for %s" msgstr "Brak wartości dla %s" #, c-format -msgid "Out of memory!\n" -msgstr "Brak pamięci.\n" - -#, c-format msgid "Search for ipaCertificateSubjectBase failed with error %d" msgstr "Wyszukiwanie ipaCertificateSubjectBase nie powiodło się z błędem %d" @@ -1632,12 +1616,12 @@ msgstr "Usuwa wszystkich naczelników w tym obszarze" msgid "Closing keytab failed\n" msgstr "Zamknięcie tablicy kluczy nie powiodło się\n" -msgid "Out of memory!?\n" -msgstr "Brak pamięci?\n" - msgid "Out of memory\n" msgstr "Brak pamięci\n" +msgid "Out of memory!?\n" +msgstr "Brak pamięci?\n" + msgid "Enctype comparison failed!\n" msgstr "Porównanie typów szyfrowania nie powiodło się.\n" @@ -1646,3 +1630,6 @@ msgstr "Utworzenie losowego klucza nie powiodło się.\n" msgid "Failed to create key!\n" msgstr "Utworzenie klucza nie powiodło się.\n" + +#~ msgid "Unable to set ldap options!\n" +#~ msgstr "Nie można ustawić opcji LDAP.\n" diff --git a/install/po/ru.po b/install/po/ru.po index eb15af0ff..258ac7f7d 100644 --- a/install/po/ru.po +++ b/install/po/ru.po @@ -12,10 +12,11 @@ msgstr "" "Project-Id-Version: FreeIPA\n" "Report-Msgid-Bugs-To: https://hosted.fedoraproject.org/projects/freeipa/" "newticket\n" -"POT-Creation-Date: 2013-10-09 14:39+0200\n" -"PO-Revision-Date: 2013-08-01 14:06+0000\n" +"POT-Creation-Date: 2014-06-27 16:29+0200\n" +"PO-Revision-Date: 2014-06-25 19:44+0000\n" "Last-Translator: Petr Viktorin <encukou@gmail.com>\n" -"Language-Team: Russian <trans-ru@lists.fedoraproject.org>\n" +"Language-Team: Russian (http://www.transifex.com/projects/p/freeipa/language/" +"ru/)\n" "Language: ru\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -311,6 +312,12 @@ msgstr[2] "Найдено %(count)d ACI" msgid "Description" msgstr "Описание" +msgid "Users" +msgstr "Пользователи" + +msgid "Hosts" +msgstr "Узлы" + msgid "Location" msgstr "Расположение" @@ -353,12 +360,6 @@ msgstr "Ограничение времени поиска в секундах" msgid "Size Limit" msgstr "Ограничение по размеру" -msgid "Failure decoding Certificate Signing Request:" -msgstr "Сбой при декодировании запроса на создание сертификата:" - -msgid "Failure decoding Certificate Signing Request" -msgstr "Сбой при декодировании запроса на создание сертификата" - #, python-format msgid "Failure decoding Certificate Signing Request: %s" msgstr "Сбой при декодировании запроса на создание сертификата: %s" @@ -472,10 +473,6 @@ msgid "invalid IP network format" msgstr "неправильный формат подсети" #, python-format -msgid "invalid domain-name: %s" -msgstr "неправильное доменное имя: %s" - -#, python-format msgid "(see RFC %s for details)" msgstr "(см. RFC %s для деталей)" @@ -495,12 +492,6 @@ msgstr "Алгоритм" msgid "Certificate/CRL" msgstr "Сертификат/СОС" -msgid "Protocol" -msgstr "Протокол" - -msgid "Public Key" -msgstr "Открытый ключ" - msgid "Altitude" msgstr "Высота над уровнем моря" @@ -532,6 +523,15 @@ msgstr "Тип записи" msgid "Nameserver '%(host)s' does not have a corresponding A/AAAA record" msgstr "У сервера имен «%(host)s» не соответствующей A/AAAA-записи" +msgid "Zone name" +msgstr "Имя зоны" + +msgid "Zone name (FQDN)" +msgstr "Имя зоны (FQDN)" + +msgid "Reverse zone IP network" +msgstr "Зона обратных адресов" + msgid "DNS zone" msgstr "зона DNS" @@ -544,18 +544,12 @@ msgstr "Зоны DNS" msgid "DNS Zone" msgstr "Зона DNS" -msgid "Zone name" -msgstr "Имя зоны" - -msgid "Zone name (FQDN)" -msgstr "Имя зоны (FQDN)" - -msgid "Reverse zone IP network" -msgstr "Зона обратных адресов" - msgid "SOA serial" msgstr "Номер SOA" +msgid "Time to live" +msgstr "Время жизни" + msgid "Dynamic update" msgstr "Динамическое обновление" @@ -568,9 +562,6 @@ msgstr "Создать новую зону DNS (SOA-запись)" msgid "Force" msgstr "Принудительно" -msgid "Time to live" -msgstr "Время жизни" - msgid "Class" msgstr "Класс" @@ -660,12 +651,6 @@ msgstr "Категория службы" msgid "Enabled" msgstr "Включено" -msgid "Users" -msgstr "Пользователи" - -msgid "Hosts" -msgstr "Узлы" - msgid "Host Groups" msgstr "Группы узлов" @@ -684,6 +669,10 @@ msgstr "Имя службы" msgid "Warning" msgstr "Предупреждение" +#, python-format +msgid "invalid domain-name: %s" +msgstr "неправильное доменное имя: %s" + msgid "host" msgstr "узел" @@ -931,6 +920,9 @@ msgstr[0] "Загружен %(count)d подключаемый модуль" msgstr[1] "Загружено %(count)d подключаемых модуля" msgstr[2] "Загружено %(count)d подключаемых модулей" +msgid "Manager" +msgstr "Руководитель" + msgid "permission" msgstr "разрешение" @@ -1032,9 +1024,6 @@ msgstr "Отдел" msgid "Job Title" msgstr "Должность" -msgid "Manager" -msgstr "Руководитель" - msgid "Car License" msgstr "Номер автомобиля" diff --git a/install/po/tg.po b/install/po/tg.po index 2b281bf06..fc8f20cf0 100644 --- a/install/po/tg.po +++ b/install/po/tg.po @@ -9,10 +9,10 @@ msgstr "" "Project-Id-Version: FreeIPA\n" "Report-Msgid-Bugs-To: https://hosted.fedoraproject.org/projects/freeipa/" "newticket\n" -"POT-Creation-Date: 2013-10-09 14:39+0200\n" -"PO-Revision-Date: 2013-08-01 14:06+0000\n" +"POT-Creation-Date: 2014-06-27 16:29+0200\n" +"PO-Revision-Date: 2014-06-25 19:44+0000\n" "Last-Translator: Petr Viktorin <encukou@gmail.com>\n" -"Language-Team: Tajik (http://www.transifex.com/projects/p/fedora/language/" +"Language-Team: Tajik (http://www.transifex.com/projects/p/freeipa/language/" "tg/)\n" "Language: tg\n" "MIME-Version: 1.0\n" @@ -249,6 +249,9 @@ msgstr "Сиёсат" msgid "Sudo" msgstr "Sudo" +msgid "Manager" +msgstr "Диспетчер" + msgid "Group" msgstr "Гурӯҳ" @@ -276,9 +279,6 @@ msgstr "Рақами факс" msgid "Job Title" msgstr "Вазифа" -msgid "Manager" -msgstr "Диспетчер" - #, c-format msgid "out of memory\n" msgstr "берун аз хотира\n" @@ -295,6 +295,10 @@ msgstr "Берун аз хотира \n" msgid "Out of Memory!\n" msgstr "Берун аз хотира!\n" +#, c-format +msgid "Out of memory!\n" +msgstr "Берун аз хотира!\n" + msgid "Server Name" msgstr "Номи сервер" @@ -309,10 +313,6 @@ msgid "Out of memory!" msgstr "Берун аз хотира!" #, c-format -msgid "Out of memory!\n" -msgstr "Берун аз хотира!\n" - -#, c-format msgid "Incorrect password.\n" msgstr "Пароли нодуруст.\n" @@ -325,8 +325,8 @@ msgstr "номи файл" msgid "password" msgstr "парол" -msgid "Out of memory!?\n" -msgstr "Аз хотира берун шуд!?\n" - msgid "Out of memory\n" msgstr "Берун аз хотира \n" + +msgid "Out of memory!?\n" +msgstr "Аз хотира берун шуд!?\n" diff --git a/install/po/uk.po b/install/po/uk.po index a3846c6d9..38db24250 100644 --- a/install/po/uk.po +++ b/install/po/uk.po @@ -4,16 +4,18 @@ # # Translators: # jdennis <jdennis@redhat.com>, 2011 -# Yuri Chornoivan <yurchor@ukr.net>, 2011-2013 +# Petr Viktorin <encukou@gmail.com>, 2014 +# Yuri Chornoivan <yurchor@ukr.net>, 2011-2014 msgid "" msgstr "" "Project-Id-Version: FreeIPA\n" "Report-Msgid-Bugs-To: https://hosted.fedoraproject.org/projects/freeipa/" "newticket\n" -"POT-Creation-Date: 2013-10-09 14:39+0200\n" -"PO-Revision-Date: 2013-08-01 16:10+0000\n" +"POT-Creation-Date: 2014-06-27 16:29+0200\n" +"PO-Revision-Date: 2014-06-26 09:08+0000\n" "Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n" -"Language-Team: Ukrainian <trans-uk@lists.fedoraproject.org>\n" +"Language-Team: Ukrainian (http://www.transifex.com/projects/p/freeipa/" +"language/uk/)\n" "Language: uk\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -53,6 +55,13 @@ msgstr "Назва команди" msgid "Positional arguments" msgstr "Обов’язкові аргументи" +#, python-format +msgid "Same as --%s" +msgstr "Те саме, що і --%s" + +msgid "Deprecated options" +msgstr "Застарілі параметри" + msgid "No file to read" msgstr "Немає файла для читання" @@ -335,6 +344,17 @@ msgid "LDAP timeout" msgstr "Час очікування LDAP" #, python-format +msgid "DNS check failed: Expected {%(expected)s} got {%(got)s}" +msgstr "" +"Перевірка DNS зазнала невдачі: мало бути {%(expected)s}, отримано {%(got)s}" + +#, python-format +msgid "%(task)s LDAP task timeout, Task DN: '%(task_dn)s'" +msgstr "" +"Перевищення часу очікування на завершення завдання LDAP %(task)s, DN " +"завдання: «%(task_dn)s»" + +#, python-format msgid "Certificate operation cannot be completed: %(error)s" msgstr "Не вдалося завершити дію з сертифікатом: %(error)s" @@ -523,12 +543,50 @@ msgstr "має бути «%(value)s»" msgid "must be one of %(values)s" msgstr "має бути одним з таких значень: %(values)s" +msgid "must be datetime value" +msgstr "має бути значенням дати і часу" + +msgid "does not match any of accepted formats: " +msgstr "не відповідає жодному з прийнятних форматів: " + msgid "incomplete time value" msgstr "неповне часове значення" msgid "this option is deprecated" msgstr "цей параметр вважається застарілим" +msgid "must be DNS name" +msgstr "має бути назвою DNS" + +msgid "invalid escape code in domain name" +msgstr "некоректний керівний код у назві домену" + +msgid "empty DNS label" +msgstr "порожня мітка DNS" + +msgid "domain name cannot be longer than 255 characters" +msgstr "назва домену не повинна перевищувати за довжиною 255 символів" + +msgid "DNS label cannot be longer than 63 characters" +msgstr "Довжина мітки DNS не повинна перевищувати 63 символів" + +msgid "invalid domain name" +msgstr "некоректна назва домену" + +#, python-format +msgid "" +"domain name '%(domain)s' and normalized domain name '%(normalized)s' do not " +"match. Please use only normalized domains" +msgstr "" +"назва домену «%(domain)s» і нормалізована назва «%(normalized)s» не " +"збігаються. Будь ласка, використовуйте лише нормалізовані домени." + +msgid "must be absolute" +msgstr "має бути абсолютною" + +msgid "must be relative" +msgstr "має бути відносною" + msgid "A list of ACI values" msgstr "Список значень ACI" @@ -676,6 +734,9 @@ msgstr[0] "встановлено відповідність %(count)d ACI" msgstr[1] "встановлено відповідність %(count)d ACI" msgstr[2] "встановлено відповідність %(count)d ACI" +msgid "Location of the ACI" +msgstr "Розташування ACI" + msgid "New ACI name" msgstr "Нова назва ACI" @@ -686,49 +747,145 @@ msgstr "ACI перейменовано на «%(value)s»" msgid "" "\n" "Auto Membership Rule.\n" +msgstr "" +"\n" +"Правило автоматичної участі.\n" + +msgid "" "\n" "Bring clarity to the membership of hosts and users by configuring inclusive\n" "or exclusive regex patterns, you can automatically assign a new entries " "into\n" "a group or hostgroup based upon attribute information.\n" +msgstr "" +"\n" +"Внесіть ясність у правила участі вузлів та користувачів налаштовуванням\n" +"формальних виразів шаблонів включення або виключення. Ви можете автоматично\n" +"пов’язувати нові записи з групою або групою вузлів на основі даних щодо " +"атрибутів.\n" + +msgid "" "\n" "A rule is directly associated with a group by name, so you cannot create\n" "a rule without an accompanying group or hostgroup.\n" +msgstr "" +"\n" +"Правило безпосередньо пов’язується з групою за назвою, отже ви не можете\n" +"створити правило без визначення групи або групи вузлів.\n" + +msgid "" "\n" "A condition is a regular expression used by 389-ds to match a new incoming\n" "entry with an automember rule. If it matches an inclusive rule then the\n" "entry is added to the appropriate group or hostgroup.\n" +msgstr "" +"\n" +"Умова є формальним виразом, використовується 389-ds для встановлення\n" +"відповідності нового вхідного запису з правилом автоматичної участі.\n" +"Якщо умові відповідає правило включення, запис додається до відповідної\n" +"групи або групи вузлів.\n" + +msgid "" "\n" "A default group or hostgroup could be specified for entries that do not\n" "match any rule. In case of user entries this group will be a fallback group\n" "because all users are by default members of group specified in IPA config.\n" +msgstr "" "\n" +"Можна визначити типову групу або групу вузлів, яку буде використано для\n" +"записів, які не відповідають жодному правилу. У випадку записів " +"користувачів\n" +"ця група буде резервною групою, оскільки усіх користувачі типово є " +"учасниками\n" +"групи, вказаної у налаштуваннях IPA.\n" + +msgid "" +"\n" +"The automember-rebuild command can be used to retroactively run automember " +"rules\n" +"against existing entries, thus rebuilding their membership.\n" +msgstr "" +"\n" +"За допомогою програми automember-rebuild ви можете повторно застосувати " +"правила\n" +"автоматичної участі до вже створених записів, тобто перебудувати схему " +"участі.\n" + +msgid "" "\n" "EXAMPLES:\n" +msgstr "" +"\n" +"ПРИКЛАДИ:\n" + +msgid "" "\n" " Add the initial group or hostgroup:\n" " ipa hostgroup-add --desc=\"Web Servers\" webservers\n" " ipa group-add --desc=\"Developers\" devel\n" +msgstr "" +"\n" +" Додати початкову групу або групу вузлів:\n" +" ipa hostgroup-add --desc=\"Web Servers\" webservers\n" +" ipa group-add --desc=\"Developers\" devel\n" + +msgid "" "\n" " Add the initial rule:\n" " ipa automember-add --type=hostgroup webservers\n" " ipa automember-add --type=group devel\n" +msgstr "" +"\n" +" Додати початкове правило:\n" +" ipa automember-add --type=hostgroup webservers\n" +" ipa automember-add --type=group devel\n" + +msgid "" "\n" " Add a condition to the rule:\n" " ipa automember-add-condition --key=fqdn --type=hostgroup --inclusive-" "regex=^web[1-9]+\\.example\\.com webservers\n" " ipa automember-add-condition --key=manager --type=group --inclusive-" "regex=^uid=mscott devel\n" +msgstr "" +"\n" +" Додати умову до правила:\n" +" ipa automember-add-condition --key=fqdn --type=hostgroup --inclusive-" +"regex=^web[1-9]+\\.example\\.com webservers\n" +" ipa automember-add-condition --key=manager --type=group --inclusive-" +"regex=^uid=mscott devel\n" + +msgid "" "\n" " Add an exclusive condition to the rule to prevent auto assignment:\n" " ipa automember-add-condition --key=fqdn --type=hostgroup --exclusive-" "regex=^web5\\.example\\.com webservers\n" +msgstr "" +"\n" +" Додати умову виключення до правила для запобігання автоматичному " +"пов’язуванню:\n" +" ipa automember-add-condition --key=fqdn --type=hostgroup --exclusive-" +"regex=^web5\\.example\\.com webservers\n" + +msgid "" "\n" " Add a host:\n" " ipa host-add web1.example.com\n" +msgstr "" +"\n" +" Додати вузол:\n" +" ipa host-add web1.example.com\n" + +msgid "" "\n" " Add a user:\n" " ipa user-add --first=Tim --last=User --password tuser1 --manager=mscott\n" +msgstr "" +"\n" +" Додати запис користувача:\n" +" ipa user-add --first=Tim --last=User --password tuser1 --manager=mscott\n" + +msgid "" "\n" " Verify automembership:\n" " ipa hostgroup-show webservers\n" @@ -741,130 +898,143 @@ msgid "" " Description: Developers\n" " GID: 1004200000\n" " Member users: tuser\n" +msgstr "" +"\n" +" Перевірити правила автоматичної участі:\n" +" ipa hostgroup-show webservers\n" +" Група вузлів: webservers\n" +" Опис: Web Servers\n" +" Вузли-учасники: web1.example.com\n" +"\n" +" ipa group-show devel\n" +" Назва групи: devel\n" +" Опис: Developers\n" +" GID: 1004200000\n" +" Користувачі-учасники: tuser\n" + +msgid "" "\n" " Remove a condition from the rule:\n" " ipa automember-remove-condition --key=fqdn --type=hostgroup --inclusive-" "regex=^web[1-9]+\\.example\\.com webservers\n" +msgstr "" +"\n" +" Вилучити умову з правила:\n" +" ipa automember-remove-condition --key=fqdn --type=hostgroup --inclusive-" +"regex=^web[1-9]+\\.example\\.com webservers\n" + +msgid "" "\n" " Modify the automember rule:\n" " ipa automember-mod\n" +msgstr "" +"\n" +" Змінити правило автоматичної участі:\n" +" ipa automember-mod\n" + +msgid "" "\n" " Set the default (fallback) target group:\n" " ipa automember-default-group-set --default-group=webservers --" "type=hostgroup\n" " ipa automember-default-group-set --default-group=ipausers --type=group\n" +msgstr "" +"\n" +" Встановити типову (резервну) групу призначення:\n" +" ipa automember-default-group-set --default-group=webservers --" +"type=hostgroup\n" +" ipa automember-default-group-set --default-group=ipausers --type=group\n" + +msgid "" "\n" " Remove the default (fallback) target group:\n" " ipa automember-default-group-remove --type=hostgroup\n" " ipa automember-default-group-remove --type=group\n" +msgstr "" +"\n" +" Вилучити типову (резервну) групу призначення:\n" +" ipa automember-default-group-remove --type=hostgroup\n" +" ipa automember-default-group-remove --type=group\n" + +msgid "" "\n" " Show the default (fallback) target group:\n" " ipa automember-default-group-show --type=hostgroup\n" " ipa automember-default-group-show --type=group\n" +msgstr "" +"\n" +" Показати типову (резервну) групу призначення:\n" +" ipa automember-default-group-show --type=hostgroup\n" +" ipa automember-default-group-show --type=group\n" + +msgid "" "\n" " Find all of the automember rules:\n" " ipa automember-find\n" +msgstr "" +"\n" +" Знайти усіх правила автоматичної участі:\n" +" ipa automember-find\n" + +msgid "" "\n" " Display a automember rule:\n" " ipa automember-show --type=hostgroup webservers\n" " ipa automember-show --type=group devel\n" +msgstr "" +"\n" +" Показати правило автоматичної участі:\n" +" ipa automember-show --type=hostgroup webservers\n" +" ipa automember-show --type=group devel\n" + +msgid "" "\n" " Delete an automember rule:\n" " ipa automember-del --type=hostgroup webservers\n" " ipa automember-del --type=group devel\n" msgstr "" "\n" -"Правило автоматичної участі.\n" -"\n" -"Спрощує визначення участі вузлів і користувачів за допомогою визначених\n" -"вами шаблонів (формальних виразів) включення чи не включення нових записів\n" -"до груп або груп вузлів на основі даних атрибутів у автоматичному режимі.\n" -"\n" -"Правило безпосередньо пов’язується з групою за назвою, отже ви не можете\n" -"створювати правила, які не буде пов’язано з групою користувачів чи групою\n" -"вузлів.\n" -"Умовою використання правила є формальний вираз, який використовуватиметься\n" -"389-ds для встановлення відповідності нового вхідного запису з правилом\n" -"автоматичної участі. Якщо запис відповідатиме правилу включення, його буде\n" -"додано до відповідної групи або групи вузлів.\n" -"\n" -"Можна вказати типову групу або групу вузлів для записів, які не " -"відповідають\n" -"жодному правилу. У випадку записів користувачів ця група буде резервною,\n" -"оскільки всі користувачі є типовими учасниками групи, вказаної у " -"налаштуваннях\n" -"IPA (файлі налаштувань).\n" -"\n" -"\n" -"ПРИКЛАДИ:\n" -"\n" -" Додавання початкової групи або групи вузлів:\n" -" ipa hostgroup-add --desc=\"Web Servers\" webservers\n" -" ipa group-add --desc=\"Developers\" devel\n" -"\n" -" Додавання початкового правила:\n" -" ipa automember-add --type=hostgroup webservers\n" -" ipa automember-add --type=group devel\n" -"\n" -" Додавання умови до правила:\n" -" ipa automember-add-condition --key=fqdn --type=hostgroup --inclusive-" -"regex=^web[1-9]+\\.example\\.com webservers\n" -" ipa automember-add-condition --key=manager --type=group --inclusive-" -"regex=^uid=mscott devel\n" -"\n" -" Додавання умови виключення до правила з метою запобігання\n" -" автоматичному додаванню:\n" -" ipa automember-add-condition --key=fqdn --type=hostgroup --exclusive-" -"regex=^web5\\.example\\.com webservers\n" -"\n" -" Додавання вузла:\n" -" ipa host-add web1.example.com\n" -"\n" -" Додавання користувача:\n" -" ipa user-add --first=Tim --last=User --password tuser1 --manager=mscott\n" -"\n" -" Перевірка правила:\n" -" ipa hostgroup-show webservers\n" -" Host-group: webservers\n" -" Description: Web Servers\n" -" Member hosts: web1.example.com\n" -"\n" -" ipa group-show devel\n" -" Group name: devel\n" -" Description: Developers\n" -" GID: 1004200000\n" -" Member users: tuser\n" +" Вилучити правило автоматичної участі:\n" +" ipa automember-del --type=hostgroup webservers\n" +" ipa automember-del --type=group devel\n" + +msgid "" "\n" -" Вилучення умови з правила:\n" -" ipa automember-remove-condition --key=fqdn --type=hostgroup --inclusive-" -"regex=^web[1-9]+\\.example\\.com webservers\n" +" Rebuild membership for all users:\n" +" ipa automember-rebuild --type=group\n" +msgstr "" "\n" -" Внесення змін до правила автоматичної участі:\n" -" ipa automember-mod\n" +" Перебудувати записи участі для усіх користувачів:\n" +" ipa automember-rebuild --type=group\n" + +msgid "" "\n" -" Встановлення типової (резервної) групи призначення:\n" -" ipa automember-default-group-set --default-group=webservers --" -"type=hostgroup\n" -" ipa automember-default-group-set --default-group=ipausers --type=group\n" +" Rebuild membership for all hosts:\n" +" ipa automember-rebuild --type=hostgroup\n" +msgstr "" "\n" -" Вилучення типової (резервної) групи призначення:\n" -" ipa automember-default-group-remove --type=hostgroup\n" -" ipa automember-default-group-remove --type=group\n" +" Перебудувати записи участі для усіх вузлів:\n" +" ipa automember-rebuild --type=hostgroup\n" + +msgid "" "\n" -" Показати типову (резервну) групу призначення:\n" -" ipa automember-default-group-show --type=hostgroup\n" -" ipa automember-default-group-show --type=group\n" +" Rebuild membership for specified users:\n" +" ipa automember-rebuild --users=tuser1 --users=tuser2\n" +msgstr "" "\n" -" Знайти всі правила автоматичної участі:\n" -" ipa automember-find\n" +" Перебудувати записи участі для вказаних користувачів:\n" +" ipa automember-rebuild --users=tuser1 --users=tuser2\n" + +msgid "" "\n" -" Показати правило автоматичної участі:\n" -" ipa automember-show --type=hostgroup webservers\n" -" ipa automember-show --type=group devel\n" +" Rebuild membership for specified hosts:\n" +" ipa automember-rebuild --hosts=web1.example.com --hosts=web2.example." +"com\n" +msgstr "" "\n" -" Вилучити правило автоматичної участі:\n" -" ipa automember-del --type=hostgroup webservers\n" -" ipa automember-del --type=group devel\n" +" Перебудувати записи участі для вказаних вузлів:\n" +" ipa automember-rebuild --hosts=web1.example.com --hosts=web2.example." +"com\n" msgid "Inclusive Regex" msgstr "Формальний вираз включення" @@ -907,8 +1077,8 @@ msgid "Default group for entries to land" msgstr "Типова група для додавання записів" #, python-format -msgid "Group: %s not found!" -msgstr "Група: %s не знайдено!" +msgid "%(otype)s \"%(oname)s\" not found" +msgstr "%(otype)s «%(oname)s» не знайдено" #, python-format msgid "%s is not a valid attribute." @@ -1087,6 +1257,61 @@ msgstr "" " Показати дані щодо типових (резервних) груп автоматичної участі.\n" " " +msgid "Rebuild auto membership." +msgstr "Повторне збирання правил автоматичної участі." + +msgid "Rebuild membership for all members of a grouping" +msgstr "Повторне збирання правил участі для усіх учасників угрупування" + +msgid "Users" +msgstr "Користувачі" + +msgid "Rebuild membership for specified users" +msgstr "Повторне збирання правил участі для вказаних користувачів" + +msgid "Hosts" +msgstr "Вузли" + +msgid "Rebuild membership for specified hosts" +msgstr "Повторне збирання правил участі для вказаних вузлів" + +msgid "No wait" +msgstr "Не чекати" + +msgid "Don't wait for rebuilding membership" +msgstr "Не чекати на завершення перебудови записів участі" + +msgid "Task DN" +msgstr "DN завдання" + +msgid "DN of the started task" +msgstr "DN запущеного завдання" + +msgid "at least one of options: type, users, hosts must be specified" +msgstr "має бути вказано принаймні один з варіантів: тип, користувачі чи вузли" + +msgid "users and hosts cannot both be set" +msgstr "не можна одночасно вказувати користувачів і вузли" + +msgid "hosts cannot be set when type is 'group'" +msgstr "не можна вказувати вузли, якщо типом є «group»" + +msgid "users cannot be set when type is 'hostgroup'" +msgstr "не можна вказувати користувачів, якщо типом є «hostgroup»" + +msgid "Automember rebuild membership task started" +msgstr "Виконується завдання з перебудови записів автоматичної участі" + +msgid "Automember rebuild membership task completed" +msgstr "Завдання з перезбирання правил автоматичної участі виконано" + +#, python-format +msgid "Task DN = '%s'" +msgstr "DN завдання = «%s»" + +msgid "Automember" +msgstr "Автоматична участь" + msgid "" "\n" "Automount\n" @@ -1551,7 +1776,7 @@ msgid "Failed members" msgstr "Помилка members" msgid "Member users" -msgstr "Учасник users" +msgstr "Користувачі-учасники" msgid "Member groups" msgstr "Учасник groups" @@ -1560,7 +1785,7 @@ msgid "Member of groups" msgstr "Учасник груп" msgid "Member hosts" -msgstr "Учасник hosts" +msgstr "Вузли-учасники" msgid "Member host-groups" msgstr "Учасник host-groups" @@ -1575,7 +1800,7 @@ msgid "Sudo Command Groups" msgstr "Групи команд sudo" msgid "Granting privilege to roles" -msgstr "Надання уповноважень ролям" +msgstr "Надання привілеїв ролям" msgid "Member netgroups" msgstr "Мережеві групи учасника" @@ -1596,7 +1821,7 @@ msgid "Member HBAC service groups" msgstr "Групи служб HBAC учасника" msgid "Indirect Member users" -msgstr "Опосередковані користувачі учасника" +msgstr "Опосередковані користувачі-учасники" msgid "Indirect Member groups" msgstr "Опосередковані групи учасника" @@ -1964,12 +2189,6 @@ msgstr "" "http://www.ietf.org/rfc/rfc5280.txt\n" "\n" -msgid "Failure decoding Certificate Signing Request:" -msgstr "Помилка під час декодування запиту на підписування сертифіката (CSR):" - -msgid "Failure decoding Certificate Signing Request" -msgstr "Помилка під час декодування запиту на підписування сертифіката (CSR)" - #, python-format msgid "Failure decoding Certificate Signing Request: %s" msgstr "" @@ -2033,6 +2252,14 @@ msgstr "" "назва вузла у призначенні запиту, «%(subject_host)s», не збігається з назвою " "вузла реєстраційного запису, «%(hostname)s»" +#, python-format +msgid "extension %s is forbidden" +msgstr "використання розширення %s заборонено" + +#, python-format +msgid "subject alt name type %s is forbidden" +msgstr "використання типу альтернативної назви об’єкта %s заборонено" + msgid "The service principal for this request doesn't exist." msgstr "Реєстраційного запису служби для цього запиту не існує." @@ -2044,22 +2271,34 @@ msgstr "" msgid "" "Insufficient 'write' privilege to the 'userCertificate' attribute of entry " "'%s'." -msgstr "" -"Недостатні права доступу «write» до атрибута «userCertificate» запису «%s»." +msgstr "Недостатні привілеї «write» до атрибута «userCertificate» запису «%s»." #, python-format -msgid "no host record for subject alt name %s in certificate request" +msgid "" +"The service principal for subject alt name %s in certificate request does " +"not exist" msgstr "" -"немає запису вузла для альтернативної назви призначення, %s, у запиті щодо " -"сертифікації" +"Реєстраційного запису служби для альтернативної назви об’єкта %s запиту щодо " +"сертифіката не існує" #, python-format msgid "" "Insufficient privilege to create a certificate with subject alt name '%s'." msgstr "" -"Недостатні права доступу для створення сертифіката з альтернативною назвою " +"Недостатні привілеї для створення сертифіката з альтернативною назвою " "призначення «%s»." +#, python-format +msgid "" +"Principal '%s' in subject alt name does not match requested service principal" +msgstr "" +"Реєстраційний запис «%s» у альтернативній назві об’єкта не відповідає " +"запитаному реєстраційному запису служби" + +#, python-format +msgid "Subject alt name type %s is forbidden" +msgstr "Використання типу альтернативної назви об’єкта %s заборонено" + msgid "Check the status of a certificate signing request." msgstr "Перевірити стан запиту щодо підписування сертифіката." @@ -2373,6 +2612,12 @@ msgstr "Типові типи PAC" msgid "Default types of PAC supported for services" msgstr "Типові типи PAC, підтримувані для служб" +msgid "Default user authentication types" +msgstr "Типові типи розпізнавання користувачів" + +msgid "Default types of supported user authentication" +msgstr "Типові типи підтримуваного розпізнавання користувачів" + msgid "Modify configuration options." msgstr "Змінити параметри налаштування." @@ -2783,6 +3028,9 @@ msgstr "" " ipa dnszone-add example.com --name-server=ns \\\n" " --admin-email=admin@example.com \\\n" " --ip-address=10.0.0.1\n" +" Додати системні права доступу, якими можна скористатися для делегування " +"привілеїв для окремих зон:\n" +" ipa dnszone-add-permission example.com\n" "\n" " Змінити зону з метою дозволити динамічні оновлення для власних записів " "вузлів у області EXAMPLE.COM:\n" @@ -2948,6 +3196,9 @@ msgstr "" " переспрямовувачів:\n" " ipa dnsconfig-mod --forwarder=10.0.0.1\n" +msgid "Permission value" +msgstr "Значення прав доступу" + #, python-format msgid "invalid IP address version (is %(value)d, must be %(required_value)d)!" msgstr "" @@ -2966,13 +3217,12 @@ msgid "invalid address format" msgstr "некоректний формат адреси" #, python-format -msgid "invalid domain-name: %s" -msgstr "некоректна назва домену: %s" - -#, python-format msgid "%(port)s is not a valid port" msgstr "%(port)s не є чинним портом" +msgid "invalid domain-name: not fully qualified" +msgstr "некоректна назва домену: назва не є повною" + #, python-format msgid "DNS reverse zone for IP address %(addr)s not found" msgstr "Зворотної зони DNS для IP-адреси %(addr)s не знайдено" @@ -3069,15 +3319,6 @@ msgstr "Тип контрольної суми" msgid "Digest" msgstr "Контрольна сума" -msgid "Flags" -msgstr "Прапорці" - -msgid "Protocol" -msgstr "Протокол" - -msgid "Public Key" -msgstr "Відкритий ключ" - msgid "Preference" msgstr "Пріоритет" @@ -3159,18 +3400,21 @@ msgstr "«%(required)s» має бути порожнім, якщо вказан msgid "A host willing to act as a mail exchanger" msgstr "Вузол, який може працювати як обмінник поштовими даними" -msgid "" -"format must be specified as \"NEXT TYPE1 [TYPE2 [TYPE3 [...]]]\" (see RFC " -"4034 for details)" -msgstr "" -"формат має бути таким: «НАСТУПНИЙ ТИП1 [ТИП2 [ТИП3 [...]]]» (докладніше про " -"це у RFC 4034)" +msgid "Flags" +msgstr "Прапорці" + +msgid "Iterations" +msgstr "Ітерації" -msgid "Next Domain Name" -msgstr "Наступна назва домену" +msgid "Salt" +msgstr "Сіль" -msgid "Type Map" -msgstr "Карта типів" +msgid "" +"A hexadecimal salt value. Requires hexadecimal digits or hyphen (\"-\") if " +"no salt is required" +msgstr "" +"Шістнадцяткове значення солі. Складається із шістнадцяткових цифр або дефіса " +"(«-»), якщо сіль не потрібна." msgid "flags must be one of \"S\", \"A\", \"U\", or \"P\"" msgstr "" @@ -3211,27 +3455,6 @@ msgstr "" msgid "the value does not follow \"YYYYMMDDHHMMSS\" time format" msgstr "значення не відповідає формату «РРРРММДДГГХХСС»" -msgid "Type Covered" -msgstr "Тип покриття" - -msgid "Labels" -msgstr "Мітки" - -msgid "Original TTL" -msgstr "Початковий TTL" - -msgid "Signature Expiration" -msgstr "Строк завершення дії підпису" - -msgid "Signature Inception" -msgstr "Початок дії підпису" - -msgid "Signer's Name" -msgstr "Ім’я підписувача" - -msgid "Signature" -msgstr "Підпис" - msgid "Fingerprint Type" msgstr "Тип відбитка" @@ -3254,18 +3477,6 @@ msgstr "Сервер назв «%(host)s» не має відповідного msgid "Managedby permission" msgstr "Права доступу managedby" -msgid "DNS zone" -msgstr "зона DNS" - -msgid "DNS zones" -msgstr "зони DNS" - -msgid "DNS Zones" -msgstr "Зони DNS" - -msgid "DNS Zone" -msgstr "Зона DNS" - msgid "Zone name" msgstr "Назва зони" @@ -3278,6 +3489,67 @@ msgstr "Мережа IP зворотної зони" msgid "IP network to create reverse zone name from" msgstr "Мережа IP для створення зворотних назв зони" +msgid "Active zone" +msgstr "Активна зона" + +msgid "Is zone active?" +msgstr "Чи є зона активною?" + +msgid "Zone forwarders" +msgstr "Переспрямовувачі зон" + +msgid "" +"Per-zone forwarders. A custom port can be specified for each forwarder using " +"a standard format \"IP_ADDRESS port PORT\"" +msgstr "" +"Переспрямовувачі для окремої зони. Можна вказати нетиповий порт для кожного " +"переспрямовувача у стандартному форматі: «IP_АДРЕСА port ПОРТ»" + +msgid "Forward policy" +msgstr "Правила переспрямовування" + +msgid "" +"Per-zone conditional forwarding policy. Set to \"none\" to disable " +"forwarding to global forwarder for this zone. In that case, conditional zone " +"forwarders are disregarded." +msgstr "" +"Умовні правила переспрямування для окремої зони. Встановіть значення «none» " +"для вимикання переспрямовувача загального рівня для цієї зони. Якщо ви " +"встановите це значення, умовні переспрямовувачі зони не братимуться до уваги." + +msgid "DNS is not configured" +msgstr "DNS не налаштовано" + +msgid "Only one zone type is allowed per zone name" +msgstr "Можна використовувати лише один тип зони на одну назву зони" + +msgid "Search for DNS zones (SOA records)." +msgstr "Пошук зон DNS (записів SOA)." + +#, python-format +msgid "Added system permission \"%(value)s\"" +msgstr "Додано системні права доступу «%(value)s»" + +#, python-format +msgid "permission \"%(value)s\" already exists" +msgstr "право доступу «%(value)s» вже існує" + +#, python-format +msgid "Removed system permission \"%(value)s\"" +msgstr "Вилучено системні права доступу «%(value)s»" + +msgid "DNS zone" +msgstr "зона DNS" + +msgid "DNS zones" +msgstr "зони DNS" + +msgid "DNS Zones" +msgstr "Зони DNS" + +msgid "DNS Zone" +msgstr "Зона DNS" + msgid "Authoritative nameserver" msgstr "Основний сервер назв" @@ -3317,11 +3589,11 @@ msgstr "Мінімальний SOA" msgid "How long should negative responses be cached" msgstr "Тривалість кешування відмов" -msgid "SOA time to live" -msgstr "Строк дії SOA" +msgid "Time to live" +msgstr "Строк дії" -msgid "SOA record time to live" -msgstr "Час життя запису SOA" +msgid "Time to live for records at zone apex" +msgstr "Час життя записів у апексі зони" msgid "SOA class" msgstr "Клас SOA" @@ -3332,12 +3604,6 @@ msgstr "Клас записів SOA" msgid "BIND update policy" msgstr "Правила оновлення BIND" -msgid "Active zone" -msgstr "Активна зона" - -msgid "Is zone active?" -msgstr "Чи є зона активною?" - msgid "Dynamic update" msgstr "Динамічне оновлення" @@ -3364,28 +3630,6 @@ msgstr "" "Список відокремлених крапкою з комою записів IP-адрес або мереж, яким надано " "доступ до перенесення зони" -msgid "Zone forwarders" -msgstr "Переспрямовувачі зон" - -msgid "" -"Per-zone forwarders. A custom port can be specified for each forwarder using " -"a standard format \"IP_ADDRESS port PORT\"" -msgstr "" -"Переспрямовувачі для окремої зони. Можна вказати нетиповий порт для кожного " -"переспрямовувача у стандартному форматі: «IP_АДРЕСА port ПОРТ»" - -msgid "Forward policy" -msgstr "Правила переспрямовування" - -msgid "" -"Per-zone conditional forwarding policy. Set to \"none\" to disable " -"forwarding to global forwarder for this zone. In that case, conditional zone " -"forwarders are disregarded." -msgstr "" -"Умовні правила переспрямування для окремої зони. Встановіть значення «none» " -"для вимикання переспрямовувача загального рівня для цієї зони. Якщо ви " -"встановите це значення, умовні переспрямовувачі зони не братимуться до уваги." - msgid "Allow PTR sync" msgstr "Дозволити PTR-синхронізацію" @@ -3395,6 +3639,12 @@ msgid "" msgstr "" "Дозволити у зоні синхронізацію прямих (A, AAAA) і зворотних (PTR) записів" +msgid "Allow in-line DNSSEC signing" +msgstr "Дозволити вбудоване підписування DNSSEC" + +msgid "Allow inline DNSSEC signing of records in the zone" +msgstr "Дозволити вбудоване підписування DNSSEC записів у зоні" + msgid "Create new DNS zone (SOA record)." msgstr "Створити зону DNS (запис SOA)." @@ -3413,9 +3663,6 @@ msgstr "" msgid "Nameserver IP address" msgstr "IP-адреса сервера назв" -msgid "DNS is not configured" -msgstr "DNS не налаштовано" - msgid "Nameserver address is not a domain name" msgstr "Адреса сервера назв не є назвою домену" @@ -3442,9 +3689,6 @@ msgid "Force nameserver change even if nameserver not in DNS" msgstr "" "Примусово змінити сервер назв, навіть якщо запису сервера назв немає у DNS" -msgid "Search for DNS zones (SOA records)." -msgstr "Пошук зон DNS (записів SOA)." - msgid "Forward zones only" msgstr "Лише прямі зони" @@ -3471,17 +3715,9 @@ msgstr "Увімкнено зону DNS «%(value)s»" msgid "Add a permission for per-zone access delegation." msgstr "Додати права доступу до надання доступу до окремих зон." -#, python-format -msgid "Added system permission \"%(value)s\"" -msgstr "Додано системні права доступу «%(value)s»" - msgid "Remove a permission for per-zone access delegation." msgstr "Вилучити права доступу до надання доступу до окремих зон." -#, python-format -msgid "Removed system permission \"%(value)s\"" -msgstr "Вилучено системні права доступу «%(value)s»" - msgid "DNS resource record" msgstr "Запис ресурсу DNS" @@ -3497,9 +3733,6 @@ msgstr "Запис ресурсу DNS" msgid "Record name" msgstr "Назва запису" -msgid "Time to live" -msgstr "Строк дії" - msgid "Class" msgstr "Клас" @@ -3512,6 +3745,15 @@ msgstr "Структурована" msgid "Parse all raw DNS records and return them in a structured way" msgstr "Обробити всі записи DNS і повернути дані у структурованій формі" +msgid "must be in zone record" +msgstr "має бути у записі зони" + +msgid "" +"out-of-zone data: record name must be a subdomain of the zone or a relative " +"name" +msgstr "" +"дані поза зоною: назва запису має бути піддоменом зони або відносною назвою" + #, python-format msgid "" "Reverse zone for PTR record should be a sub-zone of one the following fully " @@ -3528,6 +3770,9 @@ msgstr "" "Зворотна зона %(name)s потребує точно %(count)d компонентів IP-адрес, надано " "%(user_count)d" +msgid "only master zones can contain records" +msgstr "записи можуть містити лише основні зони" + msgid "only one CNAME record is allowed per name (RFC 2136, section 1.1.5)" msgstr "" "можна використовувати лише один запис CNAME на назву (RFC 2136, розділ 1.1.5)" @@ -3550,6 +3795,9 @@ msgstr "" "запис DNAME не можна використовувати разом з записом NS, якщо їх не " "розташовано у запису кореня зони (RFC 6672, розділ 2.3)" +msgid "Only one NSEC3PARAM record is allowed per zone" +msgstr "У зоні може бути лише один запис NSEC3PARAM" + msgid "Add new DNS resource record." msgstr "Додати новий запис ресурсу DNS." @@ -3701,6 +3949,64 @@ msgstr "Змінити загальні налаштування DNS." msgid "Show the current global DNS configuration." msgstr "Показати поточні загальні налаштування DNS." +msgid "DNS forward zone" +msgstr "Зона переспрямовування DNS" + +msgid "DNS forward zones" +msgstr "Зони переспрямовування DNS" + +msgid "DNS Forward Zones" +msgstr "Зони переспрямовування DNS" + +msgid "DNS Forward Zone" +msgstr "Зона переспрямовування DNS" + +msgid "Create new DNS forward zone." +msgstr "Створити зону переспрямовування DNS." + +msgid "Please specify forwarders." +msgstr "Будь ласка, вкажіть переспрямовувачі." + +msgid "Delete DNS forward zone." +msgstr "Вилучити зону переспрямовування DNS." + +#, python-format +msgid "Deleted DNS forward zone \"%(value)s\"" +msgstr "Вилучено зону переспрямовування DNS «%(value)s»" + +msgid "Modify DNS forward zone." +msgstr "Змінити зону переспрямовування DNS." + +msgid "Search for DNS forward zones." +msgstr "Пошук зон переспрямовування DNS." + +msgid "Display information about a DNS forward zone." +msgstr "Показ даних щодо зони переспрямовування DNS." + +msgid "Disable DNS Forward Zone." +msgstr "Вимкнути зону переспрямовування DNS." + +#, python-format +msgid "Disabled DNS forward zone \"%(value)s\"" +msgstr "Вимкнено зону переспрямовування DNS «%(value)s»" + +msgid "Enable DNS Forward Zone." +msgstr "Увімкнути зону переспрямовування DNS" + +#, python-format +msgid "Enabled DNS forward zone \"%(value)s\"" +msgstr "Увімкнено зону переспрямовування DNS «%(value)s»" + +msgid "Add a permission for per-forward zone access delegation." +msgstr "" +"Додати право доступу до делегування доступу на основі окремих зон " +"переспрямовування." + +msgid "Remove a permission for per-forward zone access delegation." +msgstr "" +"Вилучити права доступу до делегування доступу для окремих зон " +"переспрямовування." + msgid "" "\n" "Groups of users\n" @@ -4156,12 +4462,6 @@ msgstr "Категорія служб, до якої застосовуєтьс msgid "Enabled" msgstr "Увімкнено" -msgid "Users" -msgstr "Користувачі" - -msgid "Hosts" -msgstr "Вузли" - msgid "Host Groups" msgstr "Групи вузлів" @@ -4920,13 +5220,12 @@ msgstr "" "\n" "Вузли/Комп’ютери\n" "\n" -"Одному вузлу відповідає один комп’ютер. Вузол може бути використано\n" -"у декількох контекстах:\n" -"- записи служб, пов’язані з вузлом;\n" -"- на вузлі зберігається реєстраційний запис служби вузла\n" -"- вузол може бути використано у правилах Host-based Access Control (HBAC);\n" -"- для кожного зареєстрованого клієнта створюється запис вузла.\n" -"\n" +"Вузол — це окремий комп’ютер. Термін може використовуватися у декількох " +"контекстах:\n" +"- записи служб, пов’язані з певним вузлом\n" +"- вузол зберігає реєстраційні дані вузол/служба\n" +"- вузол можна використовувати у правилах Host-based Access Control (HBAC)\n" +"- для усіх зареєстрованих клієнтів створюється запис вузла\n" msgid "" "\n" @@ -4945,24 +5244,43 @@ msgstr "" "\n" "РЕЄСТРАЦІЯ:\n" "\n" -"Передбачено три сценарії реєстрації нового клієнта:\n" +"Передбачено три сценарії реєстрації нових клієнтів:\n" "\n" -"1. Реєстрація повноцінного адміністратора. Відповідний запис вузла може " -"існувати\n" -" або не існувати. Повноцінний адміністратор є учасником ролі hostadmin " -"або\n" -" групи admins.\n" -"2. Реєстрація обмеженого адміністратора. Відповідний запис вузла вже має " -"існувати\n" -" Обмежений адміністратор є учасником розі з правами реєстрації вузлів.\n" -"3. Створення запису вузла з одноразовим паролем.\n" +"1. Ви реєструєтеся як повноцінний адміністратор. Запис вузла може існувати\n" +" або не існувати. Повноцінний адміністратор виконує роль hostadmin або є\n" +" учасником групи admins.\n" +"2. Ви реєструєтеся як адміністратор з обмеженими правами. Вузол вже має\n" +" існувати. Обмежений адміністратор виконує роль з привілеями\n" +" Host Enrollment.\n" +"3. Вузол було створено з одноразовим паролем.\n" msgid "" "\n" -"EXAMPLES:\n" +"RE-ENROLLMENT:\n" +"\n" +"Host that has been enrolled at some point, and lost its configuration (e.g. " +"VM\n" +"destroyed) can be re-enrolled.\n" +"\n" +"For more information, consult the manual pages for ipa-client-install.\n" +"\n" +"A host can optionally store information such as where it is located,\n" +"the OS that it runs, etc.\n" msgstr "" "\n" -"ПРИКЛАДИ:\n" +"ПОВТОРНА РЕЄСТРАЦІЯ:\n" +"\n" +"Вузол, якому вже колись було надано певну роль, але налаштування було " +"втрачено\n" +"(наприклад через знищення віртуальної машини), можна знову зареєструвати " +"(надати роль).\n" +"\n" +"Щоб дізнатися більше, зверніться до сторінок підручника (man) щодо ipa-" +"client-install.\n" +"\n" +"Запис вузла може, якщо потрібно, зберігати відомості щодо розташування, " +"запущеної\n" +"операційної системи тощо.\n" msgid "" "\n" @@ -4971,7 +5289,7 @@ msgid "" "com\n" msgstr "" "\n" -" Додавання нового вузла:\n" +"Додати новий вузол:\n" " ipa host-add --location=\"3rd floor lab\" --locality=Dallas test.example." "com\n" @@ -4981,7 +5299,7 @@ msgid "" " ipa host-del test.example.com\n" msgstr "" "\n" -" Вилучення вузла:\n" +" Вилучити вузол:\n" " ipa host-del test.example.com\n" msgid "" @@ -4990,7 +5308,7 @@ msgid "" " ipa host-add --os='Fedora 12' --password=Secret123 test.example.com\n" msgstr "" "\n" -" Додавання нового вузла з одноразовим паролем:\n" +" Додати новий вузол з одноразовим паролем:\n" " ipa host-add --os='Fedora 12' --password=Secret123 test.example.com\n" msgid "" @@ -4999,7 +5317,7 @@ msgid "" " ipa host-add --os='Fedora 12' --random test.example.com\n" msgstr "" "\n" -" Додавання нового вузла з випадковим одноразовим паролем:\n" +"Додати новий вузол з випадковим одноразовим паролем:\n" " ipa host-add --os='Fedora 12' --random test.example.com\n" msgid "" @@ -5008,7 +5326,7 @@ msgid "" " ipa host-mod --os='Fedora 12' test.example.com\n" msgstr "" "\n" -" Зміна даних щодо вузла:\n" +" Змінити відомості щодо вузла:\n" " ipa host-mod --os='Fedora 12' test.example.com\n" msgid "" @@ -5017,7 +5335,7 @@ msgid "" " ipa host-mod --sshpubkey= --updatedns test.example.com\n" msgstr "" "\n" -" Вилучення відкритих ключів SSH вузла і оновлення DNS відповідно до внесених " +" Вилучити відкриті ключі SSH вузла і оновити DNS відповідно до внесених " "змін:\n" " ipa host-mod --sshpubkey= --updatedns test.example.com\n" @@ -5027,7 +5345,7 @@ msgid "" " ipa host-disable test.example.com\n" msgstr "" "\n" -" Вимикання ключа Kerberos вузла, сертифіката SSL та всіх його служб:\n" +"Вимкнути ключ Kerberos вузла, сертифікат SSL та усі його служби:\n" " ipa host-disable test.example.com\n" msgid "" @@ -5036,8 +5354,8 @@ msgid "" " ipa host-add-managedby --hosts=test2 test\n" msgstr "" "\n" -" Додавання вузла, який може керувати таблицею ключів і сертифікатів\n" -" цього вузла:\n" +"Додати вузол, який може керувати сховищем ключів та сертифікатом цього " +"вузла :\n" " ipa host-add-managedby --hosts=test2 test\n" msgid "Keytab" @@ -5055,6 +5373,10 @@ msgstr "Помилка managedby" msgid "SSH public key fingerprint" msgstr "Відбиток відкритого ключа SSH" +#, python-format +msgid "invalid domain-name: %s" +msgstr "некоректна назва домену: %s" + msgid "host" msgstr "вузол" @@ -5673,6 +5995,7 @@ msgstr "Назва довіреного домену" msgid "Range type" msgstr "Тип діапазону" +#, python-brace-format msgid "ID range type, one of {vals}" msgstr "Тип діапазону ідентифікаторів, одне з таких значень: {vals}" @@ -5883,84 +6206,117 @@ msgstr "" msgid "Apply" msgstr "Застосувати" -msgid "Are you sure you want to proceed with the action." +msgid "Rebuild auto membership" +msgstr "Повторне збирання правил автоматичної участі" + +msgid "Are you sure you want to rebuild auto membership?" +msgstr "Ви справді хочете перебудувати записи автоматичної участі?" + +msgid "Are you sure you want to proceed with the action?" msgstr "Ви справді хочете виконати цю дію?" -msgid "Are you sure you want to delete ${object}" -msgstr "Ви справді хочете вилучити ${object}" +#, python-brace-format +msgid "Are you sure you want to delete ${object}?" +msgstr "Ви справді хочете вилучити ${object}?" -msgid "Are you sure you want to disable ${object}" -msgstr "Ви справді хочете вимкнути ${object}" +#, python-brace-format +msgid "Are you sure you want to disable ${object}?" +msgstr "Ви справді хочете вимкнути ${object}?" -msgid "Are you sure you want to enable ${object}" -msgstr "Ви справді хочете увімкнути ${object}" +#, python-brace-format +msgid "Are you sure you want to enable ${object}?" +msgstr "Ви справді хочете увімкнути ${object}?" msgid "Actions" msgstr "Дії" +#, python-brace-format msgid "Add RunAs ${other_entity} into ${entity} ${primary_key}" msgstr "Додати ${other_entity} запуск від імені до ${entity} ${primary_key}" +#, python-brace-format msgid "Add RunAs Groups into ${entity} ${primary_key}" msgstr "Додати групи запуску від імені до ${entity} ${primary_key}" +#, python-brace-format msgid "Add ${other_entity} Managing ${entity} ${primary_key}" msgstr "Додати ${other_entity}, керування ${entity} ${primary_key}" +#, python-brace-format msgid "Add ${other_entity} into ${entity} ${primary_key}" msgstr "Додати ${other_entity} до ${entity} ${primary_key}" +#, python-brace-format msgid "Add Allow ${other_entity} into ${entity} ${primary_key}" msgstr "Додано дозвіл ${other_entity} до ${entity} ${primary_key}" +#, python-brace-format msgid "Add Deny ${other_entity} into ${entity} ${primary_key}" msgstr "Додано заборону ${other_entity} до ${entity} ${primary_key}" +#, python-brace-format msgid "Add ${entity} ${primary_key} into ${other_entity}" msgstr "Додати ${entity} ${primary_key} до ${other_entity}" +#, python-brace-format msgid "${count} item(s) added" msgstr "Додано ${count} записів" msgid "Direct Membership" msgstr "Безпосередня участь" +#, python-brace-format +msgid "Filter available ${other_entity}" +msgstr "Доступний фільтр ${other_entity}" + msgid "Indirect Membership" msgstr "Опосередкована участь" msgid "No entries." msgstr "Немає записів." +#, python-brace-format msgid "Showing ${start} to ${end} of ${total} entries." msgstr "Показано записи від ${start} до ${end} з ${total} записів." +#, python-brace-format msgid "Remove RunAs ${other_entity} from ${entity} ${primary_key}" msgstr "Вилучити ${other_entity} запуску від імені з ${entity} ${primary_key}" +#, python-brace-format msgid "Remove RunAs Groups from ${entity} ${primary_key}" msgstr "Вилучити групи запуску від імені з ${entity} ${primary_key}" +#, python-brace-format msgid "Remove ${other_entity} Managing ${entity} ${primary_key}" msgstr "Вилучити ${other_entity}, керування ${entity} ${primary_key}" +#, python-brace-format msgid "Remove ${other_entity} from ${entity} ${primary_key}" msgstr "Вилучити ${other_entity} з ${entity} ${primary_key}" +#, python-brace-format msgid "Remove Allow ${other_entity} from ${entity} ${primary_key}" msgstr "Вилучити дозвіл ${other_entity} з ${entity} ${primary_key}" +#, python-brace-format msgid "Remove Deny ${other_entity} from ${entity} ${primary_key}" msgstr "Вилучити заборону ${other_entity} з ${entity} ${primary_key}" +#, python-brace-format msgid "Remove ${entity} ${primary_key} from ${other_entity}" msgstr "Вилучити ${entity} ${primary_key} з ${other_entity}" +#, python-brace-format msgid "${count} item(s) removed" msgstr "Вилучено ${count} записів" msgid "Show Results" msgstr "Показати результати" +msgid "About" +msgstr "Про програму" + msgid "Add" msgstr "Додати" @@ -6048,18 +6404,22 @@ msgstr "Загальне" msgid "Identity Settings" msgstr "Параметри профілю" +#, python-brace-format msgid "${entity} ${primary_key} Settings" msgstr "Параметри ${primary_key} ${entity}" msgid "Back to Top" msgstr "Повернутися до початку" +#, python-brace-format msgid "${entity} ${primary_key} updated" msgstr "Оновлено ${primary_key} ${entity}" +#, python-brace-format msgid "${entity} successfully added" msgstr "${entity} успішно додано" +#, python-brace-format msgid "Add ${entity}" msgstr "Додати ${entity}" @@ -6083,12 +6443,17 @@ msgstr "" msgid "Unsaved Changes" msgstr "Незбережені зміни" +#, python-brace-format msgid "Edit ${entity}" msgstr "Змінити ${entity}" msgid "Hide details" msgstr "Сховати подробиці" +#, python-brace-format +msgid "${product}, version: ${version}" +msgstr "${product}, версія: ${version}" + msgid "Prospective" msgstr "Очікуваний" @@ -6098,6 +6463,7 @@ msgstr "Переспрямування" msgid "Select entries to be removed." msgstr "Виберіть записи, які слід вилучити." +#, python-brace-format msgid "Remove ${entity}" msgstr "Вилучити ${entity}" @@ -6128,6 +6494,7 @@ msgstr "Перезавантажити переглядач." msgid "Return to the main page and retry the operation" msgstr "Повернутися до головної сторінки і повторити спробу" +#, python-brace-format msgid "An error has occurred (${error})" msgstr "Сталася помилка (${error})" @@ -6149,12 +6516,15 @@ msgstr "Невідома помилка" msgid "URL" msgstr "Адреса" +#, python-brace-format msgid "${primary_key} is managed by:" msgstr "${primary_key} керується:" +#, python-brace-format msgid "${primary_key} members:" msgstr "Учасники ${primary_key}:" +#, python-brace-format msgid "${primary_key} is a member of:" msgstr "${primary_key} міститься у:" @@ -6189,6 +6559,7 @@ msgstr "" msgid "Logged In As" msgstr "Вхід до системи від імені" +#, python-brace-format msgid "" "To login with Kerberos, please make sure you have valid tickets (obtainable " "via kinit) and <a href='http://${host}/ipa/config/unauthorized." @@ -6220,6 +6591,7 @@ msgstr "секунд" msgid "Attribute" msgstr "Атрибут" +#, python-brace-format msgid "Add Condition into ${pkey}" msgstr "Додати умову до ${pkey}" @@ -6322,6 +6694,10 @@ msgstr "Чинний не раніше" msgid "Fingerprints" msgstr "Відбитки" +msgid "Get Certificate" +msgstr "Отримати сертифікат" + +#, python-brace-format msgid "Issue New Certificate for ${entity} ${primary_key}" msgstr "Створити сертифікат для ${primary_key} ${entity}" @@ -6356,7 +6732,7 @@ msgid "Organizational Unit" msgstr "Підрозділ установи" msgid "Privilege Withdrawn" -msgstr "Уповноваження відкликано" +msgstr "Привілей відкликано" msgid "Reason for Revocation" msgstr "Причина відкликання" @@ -6364,6 +6740,7 @@ msgstr "Причина відкликання" msgid "Remove from CRL" msgstr "Вилучити з CRL" +#, python-brace-format msgid "" "<ol> <li>Create a certificate database or use an existing one. To create a " "new database:<br/> <code># certutil -N -d <database path></code> </li> " @@ -6386,6 +6763,7 @@ msgstr "" msgid "Certificate requested" msgstr "Надіслано запит щодо сертифікації" +#, python-brace-format msgid "Restore Certificate for ${entity} ${primary_key}" msgstr "Відновити сертифікат для ${primary_key} ${entity}" @@ -6402,6 +6780,7 @@ msgstr "" msgid "Certificate restored" msgstr "Сертифікат відновлено" +#, python-brace-format msgid "Revoke Certificate for ${entity} ${primary_key}" msgstr "Відкликати сертифікат для ${primary_key} ${entity}" @@ -6433,9 +6812,13 @@ msgstr "Є чинний сертифікат" msgid "Validity" msgstr "Коректність" +#, python-brace-format msgid "Certificate for ${entity} ${primary_key}" msgstr "Сертифікат для ${primary_key} ${entity}" +msgid "View Certificate" +msgstr "Переглянути сертифікат" + msgid "Group Options" msgstr "Параметри групи" @@ -6493,6 +6876,7 @@ msgstr "Запис не знайдено." msgid "Redirection to PTR record" msgstr "Переспрямовування на запис PTR" +#, python-brace-format msgid "Zone found: ${zone}" msgstr "Виявлено зону: ${zone}" @@ -6607,6 +6991,7 @@ msgstr "Правила" msgid "Run Test" msgstr "Запустити тест…" +#, python-brace-format msgid "Specify external ${entity}" msgstr "Вкажіть зовнішній ${entity}" @@ -6673,6 +7058,7 @@ msgstr "Скасування передбачення" msgid "Are you sure you want to unprovision this host?" msgstr "Ви справді бажаєте скасувати передбачення цього вузла?" +#, python-brace-format msgid "Unprovisioning ${entity}" msgstr "Скасування передбачення ${entity}" @@ -6691,14 +7077,14 @@ msgstr "Параметри мережевої групи" msgid "User" msgstr "Користувач" -msgid "Identity" -msgstr "Профіль" +msgid "Permission settings" +msgstr "Параметри прав доступу" -msgid "Permission with invalid target specification" -msgstr "Права доступу з некоректним визначенням призначення" +msgid "Attribute breakdown" +msgstr "Розбиття за атрибутами" msgid "Privilege Settings" -msgstr "Параметри уповноваження" +msgstr "Параметри привілеїв" msgid "Password Policy" msgstr "Правила для паролів" @@ -6727,6 +7113,9 @@ msgstr "Домен Active Directory" msgid "Active Directory domain with POSIX attributes" msgstr "Домен Active Directory з атрибутами POSIX" +msgid "Detect" +msgstr "Визначити" + msgid "Local domain" msgstr "Локальний домен" @@ -6736,6 +7125,9 @@ msgstr "Довіра IPA" msgid "Active Directory winsync" msgstr "winsync Active Directory" +msgid "RADIUS Proxy Server Settings" +msgstr "Параметри проксі-сервера RADIUS" + msgid "Realm Domains" msgstr "Домени області" @@ -6820,6 +7212,7 @@ msgstr "Доступ до цього вузла" msgid "Option added" msgstr "Додано параметр" +#, python-brace-format msgid "${count} option(s) removed" msgstr "Вилучено ${count} параметрів" @@ -6850,6 +7243,9 @@ msgstr "Домен" msgid "Establish using" msgstr "Встановити за допомогою" +msgid "Fetch domains" +msgstr "Отримати домени" + msgid "Domain NetBIOS name" msgstr "Назва домену у NetBIOS" @@ -6892,6 +7288,7 @@ msgstr "Адреса ел. пошти" msgid "Misc. Information" msgstr "Інша інформація" +#, python-brace-format msgid "" "Are you sure you want to ${action} the user?<br/>The change will take effect " "immediately." @@ -6899,6 +7296,7 @@ msgstr "" "Ви справді бажаєте виконати щодо користувача дію «${action}»?<br/>Зміни буде " "внесено негайно." +#, python-brace-format msgid "Click to ${action}" msgstr "Натисніть, щоб ${action}" @@ -6908,6 +7306,7 @@ msgstr "Поточний пароль" msgid "Current password is required" msgstr "Слід вказати поточний пароль" +#, python-brace-format msgid "Your password expires in ${days} days." msgstr "Строк дії вашого пароля буде вичерпано за ${days} днів." @@ -6941,18 +7340,21 @@ msgstr "Повторіть пароль" msgid "Are you sure you want to delete selected entries?" msgstr "Ви справді бажаєте вилучити позначені записи?" +#, python-brace-format msgid "${count} item(s) deleted" msgstr "Вилучено ${count} записів" msgid "Are you sure you want to disable selected entries?" msgstr "Ви справді хочете вимкнути позначені записи?" +#, python-brace-format msgid "${count} item(s) disabled" msgstr "Вимкнено ${count} записів" msgid "Are you sure you want to enable selected entries?" msgstr "Ви справді бажаєте увімкнути позначені записи?" +#, python-brace-format msgid "${count} item(s) enabled" msgstr "Увімкнено ${count} записів" @@ -6965,6 +7367,7 @@ msgstr "Швидкі посилання" msgid "Select All" msgstr "Вибрати все" +#, python-brace-format msgid "" "Query returned more results than the configured size limit. Displaying the " "first ${counter} results." @@ -6978,12 +7381,12 @@ msgstr "Скасувати вибір всього" msgid "Disabled" msgstr "Вимкнено" +msgid "Working" +msgstr "Працює" + msgid "Audit" msgstr "Аудит" -msgid "Automember" -msgstr "Автоматична участь" - msgid "Automount" msgstr "Автоматичне монтування" @@ -6993,6 +7396,9 @@ msgstr "DNS" msgid "Host Based Access Control" msgstr "Керування доступом на основі вузлів" +msgid "Identity" +msgstr "Профіль" + msgid "IPA Server" msgstr "Сервер IPA" @@ -7011,6 +7417,12 @@ msgstr "Записи довіри" msgid "True" msgstr "Так" +msgid "First" +msgstr "Перший" + +msgid "Last" +msgstr "Останній" + msgid "Next" msgstr "Далі" @@ -7029,9 +7441,17 @@ msgstr "скасувати всі дії" msgid "Text does not match field pattern" msgstr "Текст не відповідає шаблону поля" +msgid "Must be an UTC date/time value (e.g., \"2014-01-20 17:58:01Z\")" +msgstr "" +"Має бути значенням дати часу за Гринвічем (UTC) (наприклад, «2014-01-20 " +"17:58:01Z»)" + msgid "Must be a decimal number" msgstr "Має бути десятковим числом" +msgid "Format error" +msgstr "Помилка форматування" + msgid "Must be an integer" msgstr "Має бути цілим числом" @@ -7044,15 +7464,21 @@ msgstr "Некоректна адреса IPv4" msgid "Not a valid IPv6 address" msgstr "Некоректна адреса IPv6" +#, python-brace-format msgid "Maximum value is ${value}" msgstr "Максимальним є значення ${value}" +#, python-brace-format msgid "Minimum value is ${value}" msgstr "Мінімальним є значення ${value}" msgid "Not a valid network address" msgstr "Некоректна адреса у мережі" +msgid "Parse error" +msgstr "Помилка обробки" + +#, python-brace-format msgid "'${port}' is not a valid port" msgstr "«${port}» не є коректним визначенням порту" @@ -7166,6 +7592,13 @@ msgstr "Змінити правила квитків Kerberos." msgid "Display the current Kerberos ticket policy." msgstr "Показати поточні правила квитків Kerberos." +#, python-format +msgid "Ticket policy for %s could not be read" +msgstr "Не вдалося прочитати правила щодо квитків для %s" + +msgid "Default ticket policy could not be read" +msgstr "Не вдалося прочитати типові правила щодо квитків" + msgid "Reset Kerberos ticket policy to the default values." msgstr "Відновити типові правила квитків Kerberos." @@ -7516,6 +7949,12 @@ msgstr "Ігнорувати додаток compat" msgid "Allows migration despite the usage of compat plugin" msgstr "Уможливлює перенесення, незважаючи на використання додатка compat" +msgid "CA certificate" +msgstr "Сертифікат CA" + +msgid "Load CA certificate of LDAP server from FILE" +msgstr "Завантажити сертифікат CA сервера LDAP з вказаного файла" + msgid "Lists of objects migrated; categorized by type." msgstr "Списки об’єктів, міграцію яких виконано; впорядкований за типами." @@ -7738,6 +8177,159 @@ msgstr "Вилучити учасників з мережевої групи." msgid "" "\n" +"OTP Tokens\n" +msgstr "" +"\n" +"Маркери OTP\n" + +msgid "" +"\n" +"Manage OTP tokens.\n" +msgstr "" +"\n" +"Керування маркерами OTP.\n" + +msgid "" +"\n" +"IPA supports the use of OTP tokens for multi-factor authentication. This\n" +"code enables the management of OTP tokens.\n" +msgstr "" +"\n" +"У IPA передбачено підтримку використання маркерів OTP для багатофакторного " +"розпізнавання.\n" +"За допомогою цього коду уможливлюється керування маркерами OTP.\n" + +msgid "" +"\n" +" Add a new token:\n" +" ipa otptoken-add --type=totp --owner=jdoe --desc=\"My soft token\"\n" +msgstr "" +"\n" +" Додати новий маркер:\n" +" ipa otptoken-add --type=totp --owner=jdoe --desc=\"My soft token\"\n" + +msgid "" +"\n" +" Examine the token:\n" +" ipa otptoken-show a93db710-a31a-4639-8647-f15b2c70b78a\n" +msgstr "" +"\n" +" Перевірити маркер:\n" +" ipa otptoken-show a93db710-a31a-4639-8647-f15b2c70b78a\n" + +msgid "" +"\n" +" Change the vendor:\n" +" ipa otptoken-mod a93db710-a31a-4639-8647-f15b2c70b78a --vendor=\"Red Hat" +"\"\n" +msgstr "" +"\n" +" Змінити постачальника:\n" +" ipa otptoken-mod a93db710-a31a-4639-8647-f15b2c70b78a --vendor=\"Red Hat" +"\"\n" + +msgid "" +"\n" +" Delete a token:\n" +" ipa otptoken-del a93db710-a31a-4639-8647-f15b2c70b78a\n" +msgstr "" +"\n" +" Вилучити маркер:\n" +" ipa otptoken-del a93db710-a31a-4639-8647-f15b2c70b78a\n" + +msgid "OTP token" +msgstr "Маркер OTP" + +msgid "OTP tokens" +msgstr "Маркери OTP" + +msgid "OTP Tokens" +msgstr "Маркери OTP" + +msgid "OTP Token" +msgstr "Маркер OTP" + +msgid "Unique ID" +msgstr "Унікальний ід." + +msgid "Owner" +msgstr "Власник" + +msgid "Manager" +msgstr "Керівник" + +msgid "Disabled state" +msgstr "Вимкнений стан" + +msgid "Validity start" +msgstr "Початок чинності" + +msgid "Validity end" +msgstr "Завершення чинності" + +msgid "Vendor" +msgstr "Постачальник" + +msgid "Model" +msgstr "Модель" + +msgid "Serial" +msgstr "Серійний номер" + +msgid "Clock offset" +msgstr "Зсув годинника" + +msgid "Clock interval" +msgstr "Інтервал годинника" + +msgid "Counter" +msgstr "Лічильник" + +msgid "Add a new OTP token." +msgstr "Додати новий маркер OTP." + +#, python-format +msgid "Added OTP token \"%(value)s\"" +msgstr "Додано маркер OTP «%(value)s»" + +msgid "Display QR code (requires wide terminal)" +msgstr "Показати QR-код (потребує широкого термінала)" + +msgid "URI" +msgstr "URI" + +msgid "Delete an OTP token." +msgstr "Вилучити маркер OTP." + +#, python-format +msgid "Deleted OTP token \"%(value)s\"" +msgstr "Вилучено маркер OTP «%(value)s»" + +msgid "Modify a OTP token." +msgstr "Змінити маркер OTP." + +#, python-format +msgid "Modified OTP token \"%(value)s\"" +msgstr "Змінено маркер OTP «%(value)s»" + +msgid "Search for OTP token." +msgstr "Шукати маркер OTP." + +#, python-format +msgid "%(count)d OTP token matched" +msgid_plural "%(count)d OTP tokens matched" +msgstr[0] "встановлено відповідність %(count)d маркера OTP" +msgstr[1] "встановлено відповідність %(count)d маркери OTP" +msgstr[2] "встановлено відповідність %(count)d маркерів OTP" + +msgid "Display information about an OTP token." +msgstr "Показати інформацію щодо маркера OTP." + +msgid "Add users that can manage this token." +msgstr "Додати записи користувачів, які можуть керувати цим ключем." + +msgid "" +"\n" "Set a user's password\n" "\n" "If someone other than a user changes that user's password (e.g., Helpdesk\n" @@ -7787,117 +8379,196 @@ msgstr "Реєстраційні дані вказано з помилками" msgid "" "\n" "Permissions\n" +msgstr "" +"\n" +"Права доступу\n" + +msgid "" "\n" "A permission enables fine-grained delegation of rights. A permission is\n" -"a human-readable form of a 389-ds Access Control Rule, or instruction " -"(ACI).\n" +"a human-readable wrapper around a 389-ds Access Control Rule,\n" +"or instruction (ACI).\n" "A permission grants the right to perform a specific task such as adding a\n" "user, modifying a group, etc.\n" +msgstr "" +"\n" +"Запис правил доступу уможливлює точне делегування прав. Запис прав доступу\n" +"є зручною для читання обгорткою навколо правила керування доступом 389-ds\n" +"або інструкції (ACI).\n" +"Право доступу надає право виконувати специфічне завдання, зокрема додавання\n" +"запису користувача, внесення зміни до групи тощо.\n" + +msgid "" "\n" "A permission may not contain other permissions.\n" +msgstr "" "\n" -"* A permission grants access to read, write, add or delete.\n" +"Запис прав доступу не може містити інших прав доступу.\n" + +msgid "" +"\n" +"* A permission grants access to read, write, add, delete, read, search,\n" +" or compare.\n" "* A privilege combines similar permissions (for example all the permissions\n" " needed to add a user).\n" "* A role grants a set of privileges to users, groups, hosts or hostgroups.\n" +msgstr "" +"\n" +"* Права доступу надають можливість читати, записувати, вилучати, шукати або\n" +" порівнювати.\n" +"* Привілеї поєднують подібні права доступу (наприклад усі права доступу,\n" +" потрібні для додавання запису користувача).\n" +"* Роль надає набір привілеїв користувачам, групам, вузлам або групам " +"вузлів.\n" + +msgid "" "\n" "A permission is made up of a number of different parts:\n" "\n" "1. The name of the permission.\n" "2. The target of the permission.\n" "3. The rights granted by the permission.\n" +msgstr "" +"\n" +"Запис права доступу складається з декількох різних частин:\n" +"\n" +"1. Назви запису права доступу.\n" +"2. Призначення права доступу.\n" +"3. Права, які надаються записом.\n" + +msgid "" "\n" "Rights define what operations are allowed, and may be one or more\n" "of the following:\n" "1. write - write one or more attributes\n" "2. read - read one or more attributes\n" -"3. add - add a new entry to the tree\n" -"4. delete - delete an existing entry\n" -"5. all - all permissions are granted\n" +"3. search - search on one or more attributes\n" +"4. compare - compare one or more attributes\n" +"5. add - add a new entry to the tree\n" +"6. delete - delete an existing entry\n" +"7. all - all permissions are granted\n" +msgstr "" "\n" -"Read permission is granted for most attributes by default so the read\n" -"permission is not expected to be used very often.\n" +"Права визначають список дій, які можна виконувати. Запис прав може\n" +"бути один або може бути декілька записів з такого набору:\n" +"1. write - запис одного або декількох атрибутів\n" +"2. read - читання одного або декількох атрибутів\n" +"3. search - пошук одного або декількох атрибутів\n" +"4. compare - порівняння одного або декількох атрибутів\n" +"5. add - додавання нового запису до ієрархії\n" +"6. delete - вилучення наявного запису\n" +"7. all - надати усі права доступу\n" + +msgid "" "\n" "Note the distinction between attributes and entries. The permissions are\n" "independent, so being able to add a user does not mean that the user will\n" "be editable.\n" +msgstr "" "\n" -"There are a number of allowed targets:\n" -"1. type: a type of object (user, group, etc).\n" -"2. memberof: a member of a group or hostgroup\n" -"3. filter: an LDAP filter\n" -"4. subtree: an LDAP filter specifying part of the LDAP DIT. This is a\n" -" super-set of the \"type\" target.\n" -"5. targetgroup: grant access to modify a specific group (such as granting\n" -" the rights to manage group membership)\n" +"Зауважте відмінність між атрибутами і записами. Права доступу є " +"незалежними,\n" +"отже можливість додавання запису користувача не означає, що цей запис " +"згодом\n" +"буде придатним до редагування.\n" + +msgid "" "\n" -"EXAMPLES:\n" +"There are a number of allowed targets:\n" +"1. subtree: a DN; the permission applies to the subtree under this DN\n" +"2. target filter: an LDAP filter\n" +"3. target: DN with possible wildcards, specifies entries permission applies " +"to\n" +msgstr "" "\n" -" Add a permission that grants the creation of users:\n" -" ipa permission-add --type=user --permissions=add \"Add Users\"\n" +"Передбачено декілька можливих призначень:\n" +"1. subtree: DN; право доступу застосовується до піддерева DN\n" +"2. target filter: фільтр LDAP\n" +"3. target: DN з можливими символами-замінниками, що визначає записи, яких " +"стосуються права доступу\n" + +msgid "" "\n" -" Add a permission that grants the ability to manage group membership:\n" -" ipa permission-add --attrs=member --permissions=write --type=group " -"\"Manage Group Members\"\n" +"Additionally, there are the following convenience options.\n" +"Setting one of these options will set the corresponding attribute(s).\n" +"1. type: a type of object (user, group, etc); sets subtree and target " +"filter.\n" +"2. memberof: apply to members of a group; sets target filter\n" +"3. targetgroup: grant access to modify a specific group (such as granting\n" +" the rights to manage group membership); sets target.\n" msgstr "" "\n" -"Права доступу\n" +"Крім того, передбачено вказані нижче параметри.\n" +"Встановлення одного з цих параметрів призводить до встановлення відповідних " +"атрибутів.\n" +"1. type: тип об’єкта (користувач, група тощо); встановлює фільтрування за " +"піддеревом (subtree) та фільтрування за призначенням (target filter).\n" +"2. memberof: застосовувати до учасників групи; встановлює фільтр за " +"призначенням (target filter).\n" +"3. targetgroup: надає доступ до внесення змін до певної групи (зокрема, " +"доступ до\n" +" надання можливості керування участю у групі); встановлює призначення " +"(target).\n" + +msgid "" "\n" -"Права доступу надають змогу точно налаштувати уповноваження. Права доступу\n" -"визначаються звичайним текстом у форматі правила керування доступом 389-ds\n" -"або інструкції (ACI). Права доступу надають можливість виконувати певне\n" -"завдання, зокрема додавання запису користувача, внесення змін до запису\n" -"групи.\n" +"Managed permissions\n" +msgstr "" "\n" -"Права доступу можуть містити інші права доступу.\n" +"Керовані права доступу\n" + +msgid "" "\n" -"* Право доступу надає доступ до читання, запису, додавання або вилучення.\n" -"* Уповноваження поєднують у собі подібні права доступу (наприклад всі\n" -" права доступу, потрібні для додавання запису користувача).\n" -"* Роль надає користувачам, групам, вузлам або групам вузлів певний набір\n" -" уповноважень.\n" +"Permissions that come with IPA by default can be so-called \"managed\"\n" +"permissions. These have a default set of attributes they apply to,\n" +"but the administrator can add/remove individual attributes to/from the set.\n" +msgstr "" "\n" -"Право доступу складається з декількох різних частин:\n" +"Права доступу, які типово встановлюються разом з IPA, можуть бути\n" +"так званими «керованим» правами доступу. Такі права доступу мають\n" +"типовий набір атрибутів, до яких вони застосовуються. Втім, адміністратор\n" +"може додавати або вилучати окремі атрибути набору.\n" + +msgid "" "\n" -"1. Назви права доступу.\n" -"2. Призначення права доступу.\n" -"3. Прав, які надаються.\n" -"\n" -"Права визначають набір дозволених дій і можуть складатися з одного або\n" -"декількох таких записів:\n" -"1. write — запис одного або декількох атрибутів\n" -"2. read — читання одного або декількох атрибутів\n" -"3. add — додавання нового запису до ієрархії\n" -"4. delete — вилучення вже створеного запису\n" -"5. all — надання всіх прав доступу\n" -"\n" -"Типово, право доступу до читання надається для більшості атрибутів, отже\n" -"право доступу «read» не використовуватиметься часто.\n" -"\n" -"Зауваження щодо відмінностей між атрибутами та записами. Права доступу\n" -"є незалежними, отже можливість додавання запису користувача не означає\n" -"можливості вносити зміни до доданого запису.\n" -"\n" -"Передбачено декілька можливих цілей:\n" -"1. type: тип об’єкта (user, group тощо).\n" -"2. memberof: учасник групи користувачів або вузлів\n" -"3. filter: фільтр LDAP\n" -"4. subtree: фільтр LDAP, що визначає частину DIT LDAP DIT. Надмножина\n" -" цілі «type».\n" -"5. targetgroup: надати доступ до внесення змін до запису певної групи\n" -" (зокрема до керування участю у групі)\n" +"Deleting or renaming a managed permission, as well as changing its target,\n" +"is not allowed.\n" +msgstr "" "\n" -"ПРИКЛАДИ:\n" +"Вилучення або перейменування керованих прав доступу, а також зміну " +"призначення\n" +"таких прав, заборонено.\n" + +msgid "" +"\n" +" Add a permission that grants the creation of users:\n" +" ipa permission-add --type=user --permissions=add \"Add Users\"\n" +msgstr "" "\n" -" Додавання права доступу до створення записів користувачів:\n" +" Додати право доступу до створення записів користувачів:\n" " ipa permission-add --type=user --permissions=add \"Add Users\"\n" + +msgid "" "\n" -" Додавання права доступу до можливості керування участю у групі:\n" +" Add a permission that grants the ability to manage group membership:\n" +" ipa permission-add --attrs=member --permissions=write --type=group " +"\"Manage Group Members\"\n" +msgstr "" +"\n" +" Додати право доступу, яке надає можливість керувати участю у групах:\n" " ipa permission-add --attrs=member --permissions=write --type=group " "\"Manage Group Members\"\n" -msgid "Permission Type" -msgstr "Тип прав доступу" +msgid "must be enclosed in parentheses" +msgstr "слід брати у дужки" + +#, python-format +msgid "\"%s\" is not an object type" +msgstr "«%s» не є об’єктним типом" + +#, python-format +msgid "\"%s\" is not a valid permission type" +msgstr "«%s» не є коректним типом прав доступу" msgid "permission" msgstr "права доступу" @@ -7908,39 +8579,146 @@ msgstr "права доступу" msgid "Permission name" msgstr "Назва прав доступу" -msgid "Permissions to grant (read, write, add, delete, all)" -msgstr "Права доступу, які слід надати (read, write, add, delete, all)" +msgid "Granted rights" +msgstr "Надані права" + +msgid "Rights to grant (read, search, compare, write, add, delete, all)" +msgstr "" +"Права доступу, які слід надати (read, search, compare, write, add, delete, " +"all)" + +msgid "Effective attributes" +msgstr "Ефективні атрибути" + +msgid "All attributes to which the permission applies" +msgstr "Усі атрибути, яких стосуються ці права доступу" + +msgid "Included attributes" +msgstr "Атрибути включення" + +msgid "User-specified attributes to which the permission applies" +msgstr "Вказані користувачем атрибути, до яких застосовується правило доступу" + +msgid "Excluded attributes" +msgstr "Атрибути виключення" msgid "" -"Type of IPA object (user, group, host, hostgroup, service, netgroup, dns)" +"User-specified attributes to which the permission explicitly does not apply" msgstr "" -"Тип об’єкта IPA (user (користувач), group (група), host (вузол), hostgroup " -"(група вузлів), service (служба), netgroup (мережева група), dns)" +"Вказані користувачем атрибути, до яких права доступу явним чином не " +"застосовуватимуться" -msgid "Member of group" -msgstr "Учасник групи" +msgid "Default attributes" +msgstr "Типові атрибути" + +msgid "Attributes to which the permission applies by default" +msgstr "Атрибути, до яких типово застосовується правило доступу" -msgid "Target members of a group" -msgstr "Цільові учасники групи" +msgid "Bind rule type" +msgstr "Тип правила прив’язування" msgid "Subtree to apply permissions to" msgstr "Піддерево, до якого буде застосовано права доступу" -msgid "User group to apply permissions to" -msgstr "Група користувачів, до якої буде застосовано права доступу" +msgid "Extra target filter" +msgstr "Додатковий фільтр призначення" -msgid "Add a new permission." -msgstr "Додати нові права доступу." +msgid "Raw target filter" +msgstr "Фільтр призначення без обробки" + +msgid "All target filters, including those implied by type and memberof" +msgstr "" +"Усі фільтри призначення, зокрема ті, які визначаються типом та членством" + +msgid "ACI target DN" +msgstr "DN призначення ACI" + +msgid "Member of group" +msgstr "Учасник групи" + +msgid "Target members of a group (sets memberOf targetfilter)" +msgstr "Цільові учасники групи (встановлює фільтр призначення memberOf)" + +msgid "User group to apply permissions to (sets target)" +msgstr "" +"Група користувачів, до якої буде застосовано права доступу (встановлює " +"target)" + +msgid "Type of IPA object (sets subtree and objectClass targetfilter)" +msgstr "Тип об’єкта IPA (встановлює фільтри призначення subtree і objectClass)" + +#, python-format +msgid "Deprecated; use %s" +msgstr "Застаріло; користуйтеся %s" + +#, python-format +msgid "Permission with unknown flag %s may not be modified or removed" +msgstr "Не можна змінювати чи вилучати права доступу з невідомим прапорцем %s" + +msgid "A SYSTEM permission may not be modified or removed" +msgstr "Права доступу SYSTEM не можна змінювати чи вилучати" + +#, python-format +msgid "Entry %s not found" +msgstr "Запису %s не знайдено" + +#, python-format +msgid "The ACI for permission %(name)s was not found in %(dn)s " +msgstr "ACI для прав доступу %(name)s у %(dn)s не знайдено " + +msgid "" +"cannot specify full target filter and extra target filter simultaneously" +msgstr "" +"не можна одразу вказувати повне фільтрування за призначенням та фільтрування " +"за додатковими параметрами призначення" + +#, python-format +msgid "option was renamed; use %s" +msgstr "назву параметра змінено; користуйтеся новою назвою — %s" + +#, python-format +msgid "Cannot use %(old_name)s with %(new_name)s" +msgstr "Не можна одночасно використовувати %(old_name)s і %(new_name)s" + +#, python-format +msgid "%s: group not found" +msgstr "%s: групи не знайдено" + +msgid "target and targetgroup are mutually exclusive" +msgstr "не можна одночасно використовувати target і targetgroup" + +msgid "subtree and type are mutually exclusive" +msgstr "не можна одночасно використовувати subtree і type" + +msgid "Bad search filter" +msgstr "Помилковий фільтр пошуку" + +#, python-format +msgid "Entry %s does not exist" +msgstr "Запису %s не існує" + +msgid "" +"there must be at least one target entry specifier (e.g. target, " +"targetfilter, attrs)" +msgstr "" +"має бути вказано хоча б один специфікатор запису призначення (наприклад " +"target, targetfilter, attrs)" + +msgid "Add a system permission without an ACI (internal command)" +msgstr "Додати системні права доступу без ACI (внутрішня команда)" #, python-format msgid "Added permission \"%(value)s\"" msgstr "Додано права доступу «%(value)s»" -msgid "Add a system permission without an ACI" -msgstr "Додати системні права доступу без ACI" +msgid "Permission flags" +msgstr "Прапорці прав доступу" + +msgid "Add a new permission." +msgstr "Додати нові права доступу." -msgid "Permission type" -msgstr "Тип прав доступу" +msgid "attrs and included attributes are mutually exclusive" +msgstr "не можна одразу вказувати attrs та атрибути включення" msgid "Delete a permission." msgstr "Вилучити права доступу." @@ -7952,8 +8730,12 @@ msgstr "Вилучено права доступу «%(value)s»" msgid "force delete of SYSTEM permissions" msgstr "примусове вилучення прав доступу SYSTEM" -msgid "A SYSTEM permission may not be removed" -msgstr "Права доступу SYSTEM не можна вилучати" +msgid "cannot delete managed permissions" +msgstr "неможливо вилучити керовані права доступу" + +#, python-format +msgid "ACI of permission %s was not found" +msgstr "ACI права доступу %s не знайдено" msgid "Modify a permission." msgstr "Змінити права доступу." @@ -7962,11 +8744,22 @@ msgstr "Змінити права доступу." msgid "Modified permission \"%(value)s\"" msgstr "Змінено права доступу «%(value)s»" -msgid "A SYSTEM permission may not be modified" -msgstr "Права доступу SYSTEM не можна змінювати" +msgid "cannot rename managed permissions" +msgstr "неможливо перейменувати керовані права доступу" -msgid "New name can not be empty" -msgstr "Нова назва має бути непорожньою" +msgid "not modifiable on managed permissions" +msgstr "не можна змінювати для керованих прав доступу" + +msgid "only available on managed permissions" +msgstr "доступне лише для керованих прав доступу" + +msgid "attrs and included/excluded attributes are mutually exclusive" +msgstr "не можна одразу вказувати attrs та атрибути включення або виключення" + +msgid "cannot set bindtype for a permission that is assigned to a privilege" +msgstr "" +"не можна встановлювати типу прив’язки для прав доступу, які пов’язано з " +"привілеєм" msgid "Search for permissions." msgstr "Знайти права доступу." @@ -8032,8 +8825,7 @@ msgstr "" " Перевірити луна-імпульсом сервер IPA і отримати докладні дані:\n" " ipa -v ping\n" " ipa: INFO: trying https://ipa.example.com/ipa/xml\n" -" ipa: INFO: Forwarding 'ping' to server 'https://ipa.example.com/ipa/" -"xml'\n" +" ipa: INFO: Forwarding 'ping' to server 'https://ipa.example.com/ipa/xml'\n" " -----------------------------------------------------\n" " Сервер IPA версії 2.1.9. Версія API 2.20\n" " -----------------------------------------------------\n" @@ -8115,11 +8907,11 @@ msgid "" "See role and permission for additional information.\n" msgstr "" "\n" -"Уповноваження\n" +"Привілей\n" "\n" -"Уповноваження поєднує права доступу у одне логічне завдання. Право доступу\n" +"Привілей поєднує права доступу у одне логічне завдання. Право доступу\n" "надає можливість виконувати лише одне завдання. У IPA є декілька дій,\n" -"виконання яких потребує одразу декількох прав доступу. В уповноваженні такі\n" +"виконання яких потребує одразу декількох прав доступу. У привілеї такі\n" "права доступу поєднуються з метою виконання певної дії.\n" "\n" "Наприклад, додавання запису користувача потребує таких прав доступу:\n" @@ -8128,75 +8920,83 @@ msgstr "" " * право додавання користувача до типової групи користувачів IPA.\n" "\n" "Поєднання цих трьох низькорівневих завдань у високорівневе завдання у\n" -"форматі уповноваження з назвою «Add User» полегшує керування ролями.\n" +"форматі привілею з назвою «Add User» полегшує керування ролями.\n" "\n" -"Уповноваження не може містити інших уповноважень.\n" +"Привілей не може містити інших привілеїв.\n" "\n" "Щоб дізнатися більше, ознайомтеся з довідною щодо ролей та прав доступу.\n" msgid "privilege" -msgstr "уповноваження" +msgstr "привілей" msgid "privileges" -msgstr "уповноваження" +msgstr "привілеї" msgid "Privileges" -msgstr "Уповноваження" +msgstr "Привілеї" msgid "Privilege" -msgstr "Уповноваження" +msgstr "Привілей" msgid "Privilege name" -msgstr "Назва уповноваження" +msgstr "Назва привілею" msgid "Privilege description" -msgstr "Опис уповноваження" +msgstr "Опис привілею" msgid "Add a new privilege." -msgstr "Додати нове уповноваження." +msgstr "Додати новий привілей." #, python-format msgid "Added privilege \"%(value)s\"" -msgstr "Додано уповноваження «%(value)s»" +msgstr "Додано привілей «%(value)s»" msgid "Delete a privilege." -msgstr "Вилучити уповноваження." +msgstr "Вилучити привілей." #, python-format msgid "Deleted privilege \"%(value)s\"" -msgstr "Вилучено уповноваження «%(value)s»" +msgstr "Вилучено привілей «%(value)s»" msgid "Modify a privilege." -msgstr "Змінити уповноваження." +msgstr "Змінити привілей." #, python-format msgid "Modified privilege \"%(value)s\"" -msgstr "Змінено уповноваження «%(value)s»" +msgstr "Змінено привілей «%(value)s»" msgid "Search for privileges." -msgstr "Знайти уповноваження." +msgstr "Знайти привілеї." #, python-format msgid "%(count)d privilege matched" msgid_plural "%(count)d privileges matched" -msgstr[0] "встановлено відповідність %(count)d уповноваження" -msgstr[1] "встановлено відповідність %(count)d уповноваження" -msgstr[2] "встановлено відповідність %(count)d уповноважень" +msgstr[0] "встановлено відповідність %(count)d привілею" +msgstr[1] "встановлено відповідність %(count)d привілеїв" +msgstr[2] "встановлено відповідність %(count)d привілеїв" msgid "Display information about a privilege." -msgstr "Показати дані щодо уповноваження." +msgstr "Показати дані щодо привілею." msgid "Add members to a privilege." -msgstr "Додати учасників до запису уповноваження." +msgstr "Додати учасників до запису привілею." msgid "Add permissions to a privilege." -msgstr "Додати права доступу до уповноваження." +msgstr "Додати права доступу до привілею." msgid "Number of permissions added" msgstr "Кількість доданих прав доступу" +#, python-format +msgid "" +"cannot add permission \"%(perm)s\" with bindtype \"%(bindtype)s\" to a " +"privilege" +msgstr "" +"неможливо додати права доступу «%(perm)s» з типом прив’язки «%(bindtype)s» " +"до привілею" + msgid "Remove permissions from a privilege." -msgstr "Вилучити права доступу з уповноваження." +msgstr "Вилучити права доступу з привілею." msgid "Number of permissions removed" msgstr "Кількість вилучених записів прав доступу" @@ -8392,6 +9192,164 @@ msgstr "Знайти групу правил для паролів." msgid "" "\n" +"RADIUS Proxy Servers\n" +msgstr "" +"\n" +"Проксі-сервери RADIUS\n" + +msgid "" +"\n" +"Manage RADIUS Proxy Servers.\n" +msgstr "" +"\n" +"Керування проксі-серверами RADIUS.\n" + +msgid "" +"\n" +"IPA supports the use of an external RADIUS proxy server for krb5 OTP\n" +"authentications. This permits a great deal of flexibility when\n" +"integrating with third-party authentication services.\n" +msgstr "" +"\n" +"У IPA передбачено підтримку зовнішнього проксі-сервера RADIUS для\n" +"виконання розпізнавання OTP krb5. Це надає системі значної гнучкості\n" +"з метою інтеграції зі сторонніми службами розпізнавання.\n" + +msgid "" +"\n" +" Add a new server:\n" +" ipa radiusproxy-add MyRADIUS --server=radius.example.com:1812\n" +msgstr "" +"\n" +" Додати новий сервер:\n" +" ipa radiusproxy-add MyRADIUS --server=radius.example.com:1812\n" + +msgid "" +"\n" +" Find all servers whose entries include the string \"example.com\":\n" +" ipa radiusproxy-find example.com\n" +msgstr "" +"\n" +" Знайти усі сервери, чиї запис містять рядок «example.com»:\n" +" ipa radiusproxy-find example.com\n" + +msgid "" +"\n" +" Examine the configuration:\n" +" ipa radiusproxy-show MyRADIUS\n" +msgstr "" +"\n" +" Перевірити налаштування:\n" +" ipa radiusproxy-show MyRADIUS\n" + +msgid "" +"\n" +" Change the secret:\n" +" ipa radiusproxy-mod MyRADIUS --secret\n" +msgstr "" +"\n" +" Змінити реєстраційні дані:\n" +" ipa radiusproxy-mod MyRADIUS --secret\n" + +msgid "" +"\n" +" Delete a configuration:\n" +" ipa radiusproxy-del MyRADIUS\n" +msgstr "" +"\n" +" Вилучити налаштування:\n" +" ipa radiusproxy-del MyRADIUS\n" + +msgid "invalid attribute name" +msgstr "некоректна назва атрибута" + +msgid "invalid port number" +msgstr "некоректний номер порту" + +msgid "RADIUS proxy server" +msgstr "Проксі-сервер RADIUS" + +msgid "RADIUS proxy servers" +msgstr "Проксі-сервери RADIUS" + +msgid "RADIUS Servers" +msgstr "Сервери RADIUS" + +msgid "RADIUS Server" +msgstr "Сервер RADIUS" + +msgid "RADIUS proxy server name" +msgstr "Назва проксі-сервера RADIUS" + +msgid "A description of this RADIUS proxy server" +msgstr "Опис цього проксі-сервера RADIUS" + +msgid "Server" +msgstr "Сервер" + +msgid "The hostname or IP (with or without port)" +msgstr "Назва вузла або IP-адреса (з портом або без порту)" + +msgid "Secret" +msgstr "Ключ" + +msgid "The secret used to encrypt data" +msgstr "Ключ, який використовується для шифрування даних" + +msgid "Timeout" +msgstr "Час очікування" + +msgid "The total timeout across all retries (in seconds)" +msgstr "Загальний час очікування за усіма спробами (у секундах)" + +msgid "Retries" +msgstr "Кількість спроб" + +msgid "The number of times to retry authentication" +msgstr "Кількість спроб пройти розпізнавання" + +msgid "User attribute" +msgstr "Атрибут користувача" + +msgid "The username attribute on the user object" +msgstr "Атрибут імені користувача об’єкта користувача" + +msgid "Add a new RADIUS proxy server." +msgstr "Додати новий проксі-сервер RADIUS." + +#, python-format +msgid "Added RADIUS proxy server \"%(value)s\"" +msgstr "Додано проксі-сервер RADIUS «%(value)s»" + +msgid "Delete a RADIUS proxy server." +msgstr "Вилучити проксі-сервер RADIUS." + +#, python-format +msgid "Deleted RADIUS proxy server \"%(value)s\"" +msgstr "Вилучити проксі-сервер RADIUS «%(value)s»" + +msgid "Modify a RADIUS proxy server." +msgstr "Змінити запис проксі-сервера RADIUS." + +#, python-format +msgid "Modified RADIUS proxy server \"%(value)s\"" +msgstr "Змінено запис проксі-сервера RADIUS «%(value)s»" + +msgid "Search for RADIUS proxy servers." +msgstr "Шукати проксі-сервери RADIUS." + +#, python-format +msgid "%(count)d RADIUS proxy server matched" +msgid_plural "%(count)d RADIUS proxy servers matched" +msgstr[0] "Встановлено відповідність %(count)d проксі-сервера RADIUS" +msgstr[1] "Встановлено відповідність %(count)d проксі-серверів RADIUS" +msgstr[2] "Встановлено відповідність %(count)d проксі-серверів RADIUS" + +msgid "Display information about a RADIUS proxy server." +msgstr "Показати дані щодо проксі-сервера RADIUS." + +msgid "" +"\n" "Realm domains\n" "\n" "Manage the list of domains associated with IPA realm.\n" @@ -8510,7 +9468,7 @@ msgstr "" "Роль використовується для уточнення налаштування прав доступу. Право " "доступу\n" "надає можливість виконувати деякі низькорівневі завдання (додавання запису\n" -"користувача, внесення змін до групи тощо). Уповноваження поєднують одне або " +"користувача, внесення змін до групи тощо). Привілей поєднують одне або " "декілька\n" "прав доступу у високорівневу абстракцію, наприклад «адміністратор " "користувачів»\n" @@ -8518,7 +9476,7 @@ msgstr "" "записів\n" "користувачів.\n" "\n" -"Уповноваження пов’язуються з ролями.\n" +"Привілеї пов’язуються з ролями.\n" "\n" "Учасниками ролі можуть бути користувачі, групи, вузли та групи вузлів.\n" "\n" @@ -8529,7 +9487,7 @@ msgstr "" " Додавання нової ролі:\n" " ipa role-add --desc=\"Junior-level admin\" junioradmin\n" "\n" -" Додавання уповноважень до цієї ролі:\n" +" Додавання привілеїв до цієї ролі:\n" " ipa role-add-privilege --privileges=addusers junioradmin\n" " ipa role-add-privilege --privileges=change_password junioradmin\n" " ipa role-add-privilege --privileges=add_user_to_default_group " @@ -8604,16 +9562,16 @@ msgid "Remove members from a role." msgstr "Вилучити учасників з запису ролі." msgid "Add privileges to a role." -msgstr "Додати уповноваження до запису ролі." +msgstr "Додати привілеї до запису ролі." msgid "Number of privileges added" -msgstr "Кількість доданих уповноважень" +msgstr "Кількість доданих привілеїв" msgid "Remove privileges from a role." -msgstr "Вилучити уповноваження з запису ролі." +msgstr "Вилучити привілеї з запису ролі." msgid "Number of privileges removed" -msgstr "Кількість вилучених уповноважень" +msgstr "Кількість вилучених привілеїв" msgid "" "\n" @@ -9351,11 +10309,25 @@ msgstr "Вилучити учасників з групи команд sudo." msgid "" "\n" "Sudo Rules\n" +msgstr "" +"\n" +"Правила sudo\n" + +msgid "" "\n" "Sudo (su \"do\") allows a system administrator to delegate authority to\n" "give certain users (or groups of users) the ability to run some (or all)\n" "commands as root or another user while providing an audit trail of the\n" "commands and their arguments.\n" +msgstr "" +"\n" +"Sudo (su \"do\") надає системному адміністратору змогу делегувати\n" +"повноваження певним користувачам (або групам користувачів) на виконання\n" +"деяких (або усіх) команд від імені адміністратора (root) або іншого\n" +"користувача, зберігаючи водночас журнал виконання команд та\n" +"аргументів.\n" + +msgid "" "\n" "FreeIPA provides a means to configure the various aspects of Sudo:\n" " Users: The user(s)/group(s) allowed to invoke Sudo.\n" @@ -9367,57 +10339,112 @@ msgid "" "invoked with.\n" " RunAsGroup: The group(s) whose gid rights Sudo will be invoked with.\n" " Options: The various Sudoers Options that can modify Sudo's behavior.\n" +msgstr "" +"\n" +"У FreeIPA передбачено декілька параметрів налаштовування роботи sudo:\n" +" Users: користувачі або групи, які можуть викликати sudo.\n" +" Hosts: вузли або групи вузлів, користувачі якого можуть викликати sudo.\n" +" Allow Command: специфічні команди, які можна виконувати за допомогою " +"sudo.\n" +" Deny Command: специфічні команди, які не можна виконувати за допомогою " +"sudo.\n" +" RunAsUser: користувачі або групи, від імені яких sudo виконуватиме " +"команди.\n" +" RunAsGroup: групи, ідентифікатори яких буде використано sudo для " +"виконання команд.\n" +" Options: різноманітні параметри sudoers, які можуть змінити поведінку " +"sudo.\n" + +msgid "" "\n" "An order can be added to a sudorule to control the order in which they\n" "are evaluated (if the client supports it). This order is an integer and\n" "must be unique.\n" +msgstr "" +"\n" +"До правила sudo можна додати порядок, який керуватиме порядком\n" +"обробки записів (якщо такий порядок передбачено на клієнтському боці).\n" +"Порядок визначається числовим індексом, який не повинен повторюватися.\n" + +msgid "" "\n" "FreeIPA provides a designated binddn to use with Sudo located at:\n" "uid=sudo,cn=sysaccounts,cn=etc,dc=example,dc=com\n" +msgstr "" +"\n" +"У FreeIPA передбачено визначений binddn для використання з sudo, який " +"розташовано у\n" +"uid=sudo,cn=sysaccounts,cn=etc,dc=example,dc=com\n" + +msgid "" "\n" "To enable the binddn run the following command to set the password:\n" "LDAPTLS_CACERT=/etc/ipa/ca.crt /usr/bin/ldappasswd -S -W -h ipa.example.com -" "ZZ -D \"cn=Directory Manager\" uid=sudo,cn=sysaccounts,cn=etc,dc=example," "dc=com\n" +msgstr "" "\n" -"For more information, see the FreeIPA Documentation to Sudo.\n" +"Щоб увімкнути binddn, віддайте таку команду для встановлення пароля:\n" +"LDAPTLS_CACERT=/etc/ipa/ca.crt /usr/bin/ldappasswd -S -W -h ipa.example.com -" +"ZZ -D \"cn=Directory Manager\" uid=sudo,cn=sysaccounts,cn=etc,dc=example," +"dc=com\n" + +msgid "" +"\n" +" Create a new rule:\n" +" ipa sudorule-add readfiles\n" msgstr "" "\n" -"Правила sudo\n" +" Створити правило:\n" +" ipa sudorule-add readfiles\n" + +msgid "" "\n" -"Sudo (su \"do\") надає змогу адміністраторові системи уповноважити\n" -"певних користувачів (або групи користувачів) на виконання певних (або\n" -"всіх) команд від імені адміністратора або іншого користувача зі\n" -"збереженням можливості ознайомлення з журналом команд і аргументів.\n" +" Add sudo command object and add it as allowed command in the rule:\n" +" ipa sudocmd-add /usr/bin/less\n" +" ipa sudorule-add-allow-command readfiles --sudocmds /usr/bin/less\n" +msgstr "" "\n" -"У FreeIPA передбачено можливість налаштування різноманітних аспектів\n" -"роботи sudo:\n" -" Користувачі: користувачі і групи, яким можна використовувати sudo.\n" -" Вузли: вузли і групи вузлів, користувачам яких можна використовувати " -"sudo.\n" -" Дозволена команда: команда, яку можна виконувати за допомогою sudo.\n" -" Заборонена команда: команда, яку не можна виконувати за допомогою sudo.\n" -" Користувач запуску: користувач або група користувачів, від імені яких " -"виконується sudo.\n" -" Група запуску: група, з ідентифікатором якої буде запущено sudo.\n" -" Параметри: різноманітні параметри sudoers, які можуть змінювати поведінку " -"sudo.\n" +" Додати об’єкт команди sudo і записати його як дозволену команду до " +"правила:\n" +" ipa sudocmd-add /usr/bin/less\n" +" ipa sudorule-add-allow-command readfiles --sudocmds /usr/bin/less\n" + +msgid "" "\n" -"До правила sudo може бути додано порядковий номер з метою керування " -"порядком, у якому\n" -"застосовуються правила (якщо клієнтом передбачено можливість впорядковування " -"правил).\n" -"Порядковий номер є цілим числом, унікальним для кожного з правил правила.\n" +" Add a host to the rule:\n" +" ipa sudorule-add-host readfiles --hosts server.example.com\n" +msgstr "" "\n" -"FreeIPA надає підписаний binddn для використання з sudo з адресою:\n" -"uid=sudo,cn=sysaccounts,cn=etc,dc=example,dc=com\n" +" Додати запис вузла до правила:\n" +" ipa sudorule-add-host readfiles --hosts server.example.com\n" + +msgid "" "\n" -"Щоб увімкнути binddn, виконайте таку команду для встановлення пароля:\n" -"LDAPTLS_CACERT=/etc/ipa/ca.crt /usr/bin/ldappasswd -S -W -h ipa.example.com -" -"ZZ -D \"cn=Directory Manager\" uid=sudo,cn=sysaccounts,cn=etc,dc=example," -"dc=com\n" +" Add a user to the rule:\n" +" ipa sudorule-add-user readfiles --users jsmith\n" +msgstr "" +"\n" +" Додати запис користувача до правила:\n" +" ipa sudorule-add-user readfiles --users jsmith\n" + +msgid "" +"\n" +" Add a special Sudo rule for default Sudo server configuration:\n" +" ipa sudorule-add defaults\n" +msgstr "" +"\n" +" Додати особливе правило sudo для типового налаштовування сервера sudo:\n" +" ipa sudorule-add defaults\n" + +msgid "" +"\n" +" Set a default Sudo option:\n" +" ipa sudorule-add-option defaults --sudooption '!authenticate'\n" +msgstr "" "\n" -"Докладніші відомості можна знайти у документації до FreeIPA з sudo.\n" +" Встановити типовий варіант дій для sudo:\n" +" ipa sudorule-add-option defaults --sudooption '!authenticate'\n" msgid "Commands for controlling sudo configuration" msgstr "Команди керування налаштуванням sudo" @@ -9425,6 +10452,9 @@ msgstr "Команди керування налаштуванням sudo" msgid "this option has been deprecated." msgstr "цей параметр вважається застарілим." +msgid "host masks of allowed hosts" +msgstr "маски для дозволених вузлів" + msgid "sudo rule" msgstr "правило sudo" @@ -9462,6 +10492,17 @@ msgstr "Порядок sudo" msgid "integer to order the Sudo rules" msgstr "ціле число для впорядковування правил sudo" +msgid "External User" +msgstr "Зовнішній користувач" + +msgid "External User the rule applies to (sudorule-find only)" +msgstr "" +"Зовнішній користувач, до якого застосовуватиметься правило (лише sudorule-" +"find)" + +msgid "Host Masks" +msgstr "Маски вузлів" + msgid "Sudo Allow Commands" msgstr "Дозволені команди sudo" @@ -9486,14 +10527,6 @@ msgstr "Групи користувачів запуску від імені" msgid "Run as any user within a specified group" msgstr "Запускати від імені будь-якого користувача вказаної групи" -msgid "External User" -msgstr "Зовнішній користувач" - -msgid "External User the rule applies to (sudorule-find only)" -msgstr "" -"Зовнішній користувач, до якого застосовуватиметься правило (лише sudorule-" -"find)" - msgid "RunAs External User" msgstr "Зовнішній користувач для RunAs" @@ -9502,6 +10535,18 @@ msgstr "" "Зовнішній користувач, від імені якого можна віддавати команди (лише sudorule-" "find)" +msgid "External Groups of RunAs Users" +msgstr "Зовнішні групи користувачів для запуску від імені" + +msgid "External Groups of users that the command can run as" +msgstr "Зовнішні групи користувачів, від імені яких можна виконувати команду" + +msgid "RunAs Groups" +msgstr "Групи запуску від імені" + +msgid "Run with the gid of a specified POSIX group" +msgstr "Запускати з ідентифікатором вказаної групи POSIX" + msgid "RunAs External Group" msgstr "Зовнішня група для RunAs" @@ -9512,12 +10557,6 @@ msgstr "" msgid "Sudo Option" msgstr "Пункт sudo" -msgid "RunAs Groups" -msgstr "Групи запуску від імені" - -msgid "Run with the gid of a specified POSIX group" -msgstr "Запускати з ідентифікатором вказаної групи POSIX" - #, python-format msgid "order must be a unique value (%(order)d already used by %(rule)s)" msgstr "" @@ -9545,22 +10584,36 @@ msgstr "Змінити правило sudo." msgid "Modified Sudo Rule \"%(value)s\"" msgstr "Змінено правило sudo «%(value)s»" +#, python-format msgid "" -"command category cannot be set to 'all' while there are allow or deny " -"commands" +"%(type)s category cannot be set to 'all' while there are allowed %(objects)s" msgstr "" -"не можна встановлювати для категорії команд значення «all», доки є записи " -"дозволу або заборони команд" +"Значенням категорії %(type)s не можна встановлювати «all», якщо існують " +"дозволені %(objects)s" -msgid "user runAs category cannot be set to 'all' while there are users" -msgstr "" -"не можна встановлювати для категорії запуску від імені користувачів значення " -"«all», доки є записи для окремих користувачів" +msgid "user" +msgstr "користувач" -msgid "group runAs category cannot be set to 'all' while there are groups" -msgstr "" -"не можна встановлювати для категорії запуску від імені груп значення «all», " -"доки є записи для окремих груп" +msgid "users" +msgstr "користувачі" + +msgid "command" +msgstr "команда" + +msgid "commands" +msgstr "команди" + +msgid "runAs user" +msgstr "користувач, від імені якого виконуватиметься" + +msgid "runAs users" +msgstr "користувачі, від імені яких виконуватиметься" + +msgid "group runAs" +msgstr "група, від імені якої виконуватиметься" + +msgid "runAs groups" +msgstr "групи, від імені яких виконуватиметься" msgid "Search for Sudo Rule." msgstr "Знайти правило sudo." @@ -9957,6 +11010,7 @@ msgid "Size of the ID range reserved for the trusted domain" msgstr "" "Розмір діапазону ідентифікаторів, зарезервованого для довіреного домену" +#, python-brace-format msgid "Type of trusted domain ID range, one of {vals}" msgstr "" "Тип діапазону ідентифікаторів довіреного домену, одне з таких значень: {vals}" @@ -9965,6 +11019,10 @@ msgstr "" msgid "Added Active Directory trust for realm \"%(value)s\"" msgstr "Додано запис довіри Active Directory для області «%(value)s»" +#, python-format +msgid "Re-established trust to domain \"%(value)s\"" +msgstr "Відновлено довіру до домену «%(value)s»" + msgid "AD Trust setup" msgstr "Налаштування довіри AD" @@ -9987,6 +11045,16 @@ msgstr "тип довіри" msgid "only \"ad\" is supported" msgstr "передбачено підтримку лише «ad»" +msgid "Realm-domain mismatch" +msgstr "Невідповідність між областю і доменом" + +msgid "" +"To establish trust with Active Directory, the domain name and the realm name " +"of the IPA server must match" +msgstr "" +"Для встановлення довіри з Active Directory назва домену і назва області " +"сервера IPA мають збігатися" + msgid "Trusted domain and administrator account use different realms" msgstr "" "Довіреним доменом і обліковим записом адміністратора використовуються різні " @@ -10040,10 +11108,6 @@ msgstr "" "визначайте тип у примусовому порядку за допомогою параметра --range-type." #, python-format -msgid "Re-established trust to domain \"%(value)s\"" -msgstr "Відновлено довіру до домену «%(value)s»" - -#, python-format msgid "Unable to resolve domain controller for '%s' domain. " msgstr "Не вдалося визначити контролер домену для домену «%s». " @@ -10167,6 +11231,104 @@ msgid "Determine whether ipa-adtrust-install has been run on this system" msgstr "Визначити, чи було запущено ipa-adtrust-install для цієї системи" msgid "" +"Determine whether Schema Compatibility plugin is configured to serve trusted " +"domain users and groups" +msgstr "" +"Визначити, чи налаштовано додаток сумісності схем (Schema Compatibility) на " +"обслуговування користувачів і груп довіреного домену" + +msgid "Determine whether ipa-adtrust-install has been run with sidgen task" +msgstr "Визначити, чи було запущено ipa-adtrust-install з завданням sidgen" + +msgid "sidgen_was_run" +msgstr "sidgen_was_run" + +msgid "" +"This command relies on the existence of the \"editors\" group, but this " +"group was not found." +msgstr "" +"Для виконання цієї команди має існувати група «editors», але групи з такою " +"назвою не знайдено." + +msgid "trust domain" +msgstr "довірений домен" + +msgid "trust domains" +msgstr "довірені домени" + +msgid "Trusted domains" +msgstr "Довірені домени" + +msgid "Trusted domain" +msgstr "Довірений домен" + +msgid "Domain name" +msgstr "Назва домену" + +msgid "Trusted domain partner" +msgstr "Партнер довіреного домену" + +msgid "Search domains of the trust" +msgstr "Шукати довірені домени" + +msgid "Domain enabled" +msgstr "Домен увімкнено" + +msgid "Modify trustdomain of the trust" +msgstr "Змінити значення довіреного домену (trustdomain) правила довіри" + +msgid "Allow access from the trusted domain" +msgstr "Дозволити доступ з довіреного домену" + +msgid "Remove infromation about the domain associated with the trust." +msgstr "Вилучити дані щодо домену, пов’язаного з цим правилом довіри." + +#, python-format +msgid "Removed information about the trusted domain \"%(value)s\"" +msgstr "Дані щодо довіреного домену «%(value)s» вилучено" + +msgid "" +"cannot delete root domain of the trust, use trust-del to delete the trust " +"itself" +msgstr "" +"вилучення кореневого домену правила довіри неможливе, скористайтеся trust-" +"del для вилучення самого правила довіри" + +msgid "Refresh list of the domains associated with the trust" +msgstr "Освіжити список доменів, пов’язаних з правилом довіри" + +msgid "List of trust domains successfully refreshed" +msgstr "Список довірених доменів успішно оновлено" + +msgid "No new trust domains were found" +msgstr "Нових довірених доменів не знайдено" + +msgid "Allow use of IPA resources by the domain of the trust" +msgstr "Дозволити використання ресурсів IPA доменом правила довіри" + +#, python-format +msgid "Enabled trust domain \"%(value)s\"" +msgstr "Увімкнено домен довіри «%(value)s»" + +msgid "Root domain of the trust is always enabled for the existing trust" +msgstr "" +"Кореневий домен правила довіри для наявного правила довіри завжди увімкнено" + +msgid "Disable use of IPA resources by the domain of the trust" +msgstr "Вимкнути використання ресурсів IPA доменом правила довіри" + +#, python-format +msgid "Disabled trust domain \"%(value)s\"" +msgstr "Домен довіри «%(value)s» вимкнено" + +msgid "" +"cannot disable root domain of the trust, use trust-del to delete the trust " +"itself" +msgstr "" +"вимикання кореневого домену правила довіри неможливе, скористайтеся trust-" +"del для вилучення самого правила довіри" + +msgid "" "\n" "Users\n" "\n" @@ -10257,9 +11419,6 @@ msgstr "" msgid "Kerberos keys available" msgstr "Доступні ключі Kerberos" -msgid "Server" -msgstr "Сервер" - msgid "Failed logins" msgstr "Кількість невдалих спроб увійти" @@ -10275,12 +11434,6 @@ msgstr "Поточний час" msgid "must be TRUE or FALSE" msgstr "має дорівнювати TRUE або FALSE" -msgid "user" -msgstr "користувач" - -msgid "users" -msgstr "користувачі" - msgid "User login" msgstr "Користувач" @@ -10311,6 +11464,9 @@ msgstr "Оболонка входу" msgid "Kerberos principal" msgstr "Реєстраційний запис Kerberos" +msgid "Kerberos principal expiration" +msgstr "Завершення строку дії реєстраційного запису Kerberos" + msgid "Email address" msgstr "Адреса ел. пошти" @@ -10361,15 +11517,42 @@ msgstr "Підрозділ" msgid "Job Title" msgstr "Посада" -msgid "Manager" -msgstr "Керівник" - msgid "Car License" msgstr "Водійська ліцензія" msgid "Account disabled" msgstr "Обліковий запис вимкнено" +msgid "User authentication types" +msgstr "Типи розпізнавання користувачів" + +msgid "Types of supported user authentication" +msgstr "Типи підтримуваного розпізнавання користувачів" + +msgid "" +"User category (semantics placed on this attribute are for local " +"interpretation)" +msgstr "" +"Категорія вузлів (семантику цього атрибуту призначено для локальної обробки)" + +msgid "RADIUS proxy configuration" +msgstr "Налаштування проксі RADIUS" + +msgid "RADIUS proxy username" +msgstr "Ім’я користувача проксі-сервера RADIUS" + +msgid "Department Number" +msgstr "Номер відділу" + +msgid "Employee Number" +msgstr "Номер працівника" + +msgid "Employee Type" +msgstr "Тип працівника" + +msgid "Preferred Language" +msgstr "Бажана мова" + #, python-format msgid "invalid e-mail format: %(email)s" msgstr "некоректний формат адреси електронної пошти: %(email)s" @@ -10564,32 +11747,16 @@ msgstr "Порожня назва файла" msgid "Permission denied: %(file)s" msgstr "Доступ заборонено: %(file)s" -msgid "empty DNS label" -msgstr "порожня мітка DNS" - msgid "DNS label cannot be longer that 63 characters" msgstr "Довжина мітки DNS не повинна перевищувати 63 символи" #, python-format msgid "" -"only letters, numbers,%(underscore)s and - are allowed. DNS label may not " -"start or end with -" -msgstr "" -"можна використовувати лише літери, цифри, %(underscore)s і символ «-». " -"Символ «-» не повинен бути першим або останнім символом мітки DNS." - -msgid "" -"mail account may only include letters, numbers, -, _ and a dot. There may " -"not be consecutive -, _ and . characters. Its parts may not start or end " -"with - or _" +"only letters, numbers, %(chars)s are allowed. DNS label may not start or end " +"with %(chars2)s" msgstr "" -"назва облікового запису електронної пошти може складатися лише з літер, " -"цифр, символів «-», «_» і крапок. Не можна використовувати у назві " -"послідовності з символів «-», «_» та «.». Його частини не повинні починатися " -"або закінчуватися на «-» або «_»." - -msgid "cannot be longer that 255 characters" -msgstr "не може бути довшим за 255 символів" +"можна використовувати лише літери, цифри, %(chars)s. Символ %(chars2)s не " +"повинен бути першим або останнім символом мітки DNS." msgid "too many '@' characters" msgstr "занадто багато символів «@»" @@ -10600,6 +11767,9 @@ msgstr "не вказано домену адреси" msgid "missing mail account" msgstr "не вказано поштового облікового запису" +msgid "cannot be longer that 255 characters" +msgstr "не може бути довшим за 255 символів" + msgid "hostname contains empty label (consecutive dots)" msgstr "назва вузла містить лише порожню мітку (послідовні крапки)" @@ -10612,6 +11782,9 @@ msgstr "некоректний відкритий ключ SSH" msgid "options are not allowed" msgstr "не можна використовувати параметри" +msgid "invalid hostmask" +msgstr "некоректна маска вузлів" + msgid "improperly formatted DER-encoded certificate" msgstr "неналежне форматування сертифіката у кодуванні DER" @@ -10661,6 +11834,14 @@ msgstr "Контролер домену AD" msgid "unsupported functional level" msgstr "непідтримуваний функціональний рівень" +msgid "" +"AD domain controller complains about communication sequence. It may mean " +"unsynchronized time on both sides, for example" +msgstr "" +"Домен AD скаржиться на послідовність команд встановлення зв’язку. Це, " +"наприклад, може означати розсинхронізацію часу між комп’ютерами, які " +"обмінюються даними." + msgid "Cannot find specified domain or server name" msgstr "Не вдалося знайти домену або сервера з вказаною назвою" @@ -10772,7 +11953,12 @@ msgid "" "Insufficient 'write' privilege to the 'krbLastPwdChange' attribute of entry " "'%s'." msgstr "" -"Недостатні права доступу «write» до атрибута «krbLastPwdChange» запису «%s»." +"Недостатні привілеї «write» до атрибута «krbLastPwdChange» запису «%s»." + +msgid "Could not read UPG Definition originfilter. Check your permissions." +msgstr "" +"Не вдалося прочитати фільтр походження (originfilter) UPG Definition. " +"Переконайтеся, що у вас є відповідні права доступу." msgid "Request must be a dict" msgstr "Запит має належати до типу словника (dict)" @@ -10828,14 +12014,6 @@ msgid "Out of memory \n" msgstr "Не вистачає пам'яті \n" #, c-format -msgid "Out of Memory!\n" -msgstr "Не вистачає пам'яті!\n" - -#, c-format -msgid "Failed to create control!\n" -msgstr "Не вдалося створити керування!\n" - -#, c-format msgid "Unable to initialize ldap library!\n" msgstr "Не вдалося ініціалізувати бібліотеку ldap!\n" @@ -10844,10 +12022,6 @@ msgid "Unable to set LDAP_OPT_X_SASL_NOCANON\n" msgstr "Не вдалося встановити LDAP_OPT_X_SASL_NOCANON\n" #, c-format -msgid "Unable to set ldap options!\n" -msgstr "Не вдалося встановити значення параметрів ldap!\n" - -#, c-format msgid "Simple bind failed\n" msgstr "Невдала спроба простого прив’язування\n" @@ -10860,6 +12034,14 @@ msgid "Missing reply control!\n" msgstr "Немає керування відповіддю!\n" #, c-format +msgid "Out of Memory!\n" +msgstr "Не вистачає пам'яті!\n" + +#, c-format +msgid "Failed to create control!\n" +msgstr "Не вдалося створити керування!\n" + +#, c-format msgid "ber_init() failed, Invalid control ?!\n" msgstr "Спроба виконання ber_init() зазнала невдачі. Некоректне керування?!\n" @@ -10879,6 +12061,10 @@ msgstr "Не вдалося отримати дані щодо типу шифр msgid "Failed to retrieve any keys" msgstr "Не вдалося отримати жодного ключа" +#, c-format +msgid "Out of memory!\n" +msgstr "Не вистачає пам'яті!\n" + msgid "New Principal Password" msgstr "Новий пароль реєстраційного запису" @@ -11054,10 +12240,6 @@ msgid "IPA namingContext not found\n" msgstr "namingContext IPA не знайдено\n" #, c-format -msgid "Out of memory!\n" -msgstr "Не вистачає пам'яті!\n" - -#, c-format msgid "Search for ipaCertificateSubjectBase failed with error %d" msgstr "" "Спроба пошуку ipaCertificateSubjectBase завершилася невдало з повідомлення " @@ -11287,9 +12469,6 @@ msgstr "Спроба закриття таблиці ключів зазнала msgid "krb5_kt_close %1$d: %2$s\n" msgstr "krb5_kt_close %1$d: %2$s\n" -msgid "Out of memory!?\n" -msgstr "Не вистачає пам'яті!?\n" - msgid "Out of memory\n" msgstr "Не вистачає пам'яті\n" @@ -11299,6 +12478,9 @@ msgstr "Попередження: невідомий тип шифрування msgid "Warning unrecognized salt type.\n" msgstr "Попередження: невідомий тип солі (salt).\n" +msgid "Out of memory!?\n" +msgstr "Не вистачає пам'яті!?\n" + msgid "Enctype comparison failed!\n" msgstr "Спроба порівняння значень типу шифрування зазнала невдачі!\n" @@ -11310,3 +12492,9 @@ msgstr "Не вдалося створити ключ!\n" msgid "Bad or unsupported salt type.\n" msgstr "Помилковий або непідтримуваний тип солі (salt).\n" + +#~ msgid "Display length" +#~ msgstr "Ширина дисплея" + +#~ msgid "Unable to set ldap options!\n" +#~ msgstr "Не вдалося встановити значення параметрів ldap!\n" diff --git a/install/po/zh_CN.po b/install/po/zh_CN.po index dca810cb7..c38f024f9 100644 --- a/install/po/zh_CN.po +++ b/install/po/zh_CN.po @@ -10,10 +10,11 @@ msgstr "" "Project-Id-Version: FreeIPA\n" "Report-Msgid-Bugs-To: https://hosted.fedoraproject.org/projects/freeipa/" "newticket\n" -"POT-Creation-Date: 2013-10-09 14:39+0200\n" -"PO-Revision-Date: 2013-08-01 14:06+0000\n" +"POT-Creation-Date: 2014-06-27 16:29+0200\n" +"PO-Revision-Date: 2014-06-25 19:44+0000\n" "Last-Translator: Petr Viktorin <encukou@gmail.com>\n" -"Language-Team: Chinese (China) <trans-zh_cn@lists.fedoraproject.org>\n" +"Language-Team: Chinese (China) (http://www.transifex.com/projects/p/freeipa/" +"language/zh_CN/)\n" "Language: zh_CN\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -135,6 +136,12 @@ msgstr "目标组" msgid "Description" msgstr "描述" +msgid "Users" +msgstr "用户" + +msgid "Hosts" +msgstr "主机" + msgid "Location" msgstr "位置" @@ -249,12 +256,6 @@ msgstr "用户类别" msgid "Host category" msgstr "主机类别" -msgid "Users" -msgstr "用户" - -msgid "Hosts" -msgstr "主机" - msgid "Host Groups" msgstr "主机组" |