Compare commits

...

39 Commits

Author SHA1 Message Date
Milan Broz
ff51d5a8fa Version 2.4.2. 2021-11-18 11:35:45 +01:00
Jakub Bogusz
949ed8c9e2 po: update pl.po (from translationproject.org) 2021-11-18 10:57:02 +01:00
Milan Broz
31698f8388 LUKS convert: also check sysfs for device activity.
On some "broken" systems, udev directory (where we try to check
if device is active) is present, but the symlink is missing.

Let's fallback in this case on sysfs scanning also, otherwise
possible conversion of an active device can cause data corruption.
2021-11-18 08:15:09 +00:00
Milan Broz
c400a84987 Add 2.4.2 release notes. 2021-11-17 13:11:26 +01:00
Yuri Chornoivan
ce52bb2f5a po: update uk.po (from translationproject.org) 2021-11-16 16:53:12 +01:00
Yuri Kozlov
bf374ca9e6 po: update ru.po (from translationproject.org) 2021-11-16 16:53:12 +01:00
Hiroshi Takekawa
17ca463767 po: update ja.po (from translationproject.org) 2021-11-16 16:53:12 +01:00
Frédéric Marchal
aa8d8ec0ae po: update fr.po (from translationproject.org) 2021-11-16 16:53:12 +01:00
Roland Illig
1b08d47045 po: update de.po (from translationproject.org) 2021-11-16 16:53:12 +01:00
Petr Pisar
0f656105e2 po: update cs.po (from translationproject.org) 2021-11-16 16:53:12 +01:00
Milan Broz
0b3a7ecd01 Update cryptsetup.pot. 2021-11-16 16:52:22 +01:00
Milan Broz
a364355c16 Fix missing translation macros. 2021-11-10 15:29:29 +00:00
Milan Broz
7086c414bc Avoid casting of uint64_t to unsigned int in debug messages. 2021-11-10 13:39:54 +00:00
Milan Broz
0bb193d487 Fix code style.
We do not use curly brackets in this context.
2021-11-10 13:39:54 +00:00
Milan Broz
80b57c6e24 Free json buffer on error path.
Code should not return allocated buffer if validation fails.

(But this does not fix a leak, memory is freed later, it is just more readable.)
2021-11-10 13:39:54 +00:00
Milan Broz
9576549fee Fix bogus memory allocation if LUKS2 header size is invalid.
LUKS2 code read the whole header to buffer to verify checksum,
so malloc is called on unvalidated input size parameter.

This can cause out of memory or unintentional device reads.
(Header validation will fail later anyway - the size is unsupported.)

Just do not allow too small and too big allocations here and fail quickly.

Fixes: #683.
2021-11-10 13:39:54 +00:00
Milan Broz
0cc5f2fdf9 Fix debug message printing LUKS2 checksum.
The trailing NUL is written already by snprintf, moreover,
it is written on wrong place here.

Just rely on snprintf here.

Fixes: #685.
2021-11-10 12:56:20 +01:00
Abhijit Menon-Sen
26a3f3b058 Fix typo ("Veryfing") 2021-11-02 08:08:28 +01:00
Milan Broz
e03f3bb36e Set devel version. 2021-11-01 17:11:33 +01:00
Daniel Zaťovič
be5ab79c9d Switch GitLab CI tags for the libvirt custom runner. 2021-10-26 19:28:42 +02:00
Milan Broz
083cdb9310 Add a debug message before running keyslot PBKDF.
This is useful for debugging if the process is killed by OOM.
2021-10-15 19:17:45 +02:00
leongross
ca30d3cda9 fix minor README.md issues 2021-10-12 14:55:16 +00:00
Мирослав Николић
5c17722854 po: update sr.po (from translationproject.org) 2021-10-12 16:54:00 +02:00
Milan Broz
49177aac46 Add test vector for empty password for Argon2.
While it is insecure, we need crypto backend to support this :)
2021-10-06 21:54:49 +02:00
Milan Broz
d20beacba0 Remove redundant link to uuid lib for static build.
Veritysetup does not need to link this library at all, for others
we have link already in flags.
2021-10-06 13:02:51 +02:00
Milan Broz
26cc1644b4 Do not link integritysetup and veritysetup with pwquality.
These tools do not read passphrases, no need to link to these libraries.

Just move the helper code that introduced this dependence as a side-effect.

Fixes: #677
2021-10-06 13:02:19 +02:00
Milan Broz
9ed0036286 CI: comment out fixed project rule for merge request jobs.
We need pipeline to be created here, seems GitLab does not
allow it otherwise.
2021-09-29 15:20:54 +02:00
Milan Broz
00f7d92514 OpenSSL backend: no need to use strlen for KDF param length. 2021-09-29 10:24:45 +00:00
Milan Broz
43674b2903 OpenSSL3 backend: avoid remaining deprecated calls in API.
Implement HMAC through new API.

In reality, these calls are never used (the only user is internal PBKDF2
that is never called with OpenSSL backend).
2021-09-29 10:24:45 +00:00
Milan Broz
5cfd5fc4cd Crypt vectors test: add test for hash/hmac context reset.
The crypto API expects that after final() call the context is reset,
let's test if backend properly supports it.
2021-09-29 10:24:45 +00:00
Milan Broz
9f252d4bf8 Install openssl binary for CI test. 2021-09-27 22:31:34 +02:00
Ondrej Kozina
321057eed5 Add Fedora rawhide runner to CI. 2021-09-27 17:25:13 +02:00
Ondrej Kozina
1a3d049454 Add tags for currently available runners. 2021-09-27 17:09:21 +02:00
Milan Broz
9d1f29a9fd OpenSSL backend: separate KDF wrappers.
Prepare code for later to add Argon2 OpenSSL wrapper more easily.
2021-09-22 08:25:19 +00:00
Milan Broz
da31341d5d OpenSSL3 backend: use predefined macros to construct KDF params. 2021-09-22 08:25:19 +00:00
Milan Broz
10b1d6493e Check if DM create device failed in an early phase.
This happens when concurrent creation of DM devices meets
in the very early state (no device node exists but creation fails).

Return -ENODEV here instead of -EINVAL.

(Should "fix" random verity concurrent test failure.)
2021-09-21 17:58:34 +02:00
Milan Broz
a76310b53f Do not try to set compiler optimization flag if wipe is implemented in libc.
If zeroing memory is implemented through libc call (like memset_bzero),
compiler should never remove such call. It is not needed to set O0
optimization flag explicitly.

Various checkers like annocheck causes problems with these flags,
just remove it where it makes no sense.

(Moreover, we use the same pattern without compiler magic
in crypt_backend_memzero() already.)
2021-09-20 17:42:20 +02:00
Yuri Kozlov
26d26d7134 po: update ru.po (from translationproject.org) 2021-09-17 18:52:18 +02:00
Hector Martin
a1b577c085 Do not attempt to unload external tokens if USE_EXTERNAL_TOKENS is disabled.
This allows building a static binary as long as --disable-external-tokens is used
2021-09-17 05:44:18 +00:00
33 changed files with 2454 additions and 1558 deletions

View File

@@ -1,4 +1,7 @@
default:
stages:
- test
.debian-prep:
before_script:
- sudo apt-get -y update --fix-missing
- >
@@ -13,16 +16,32 @@ default:
- ./autogen.sh
- ./configure --enable-libargon2
stages:
- test
.dnf-openssl-backend:
before_script:
- >
sudo dnf -y -q install
autoconf automake device-mapper-devel gcc gettext-devel json-c-devel
libargon2-devel libblkid-devel libpwquality-devel libselinux-devel
libssh-devel libtool libuuid-devel make popt-devel
libsepol-devel.x86_64 netcat openssh-clients passwd pkgconfig sharutils
sshpass tar uuid-devel vim-common device-mapper expect gettext git jq
keyutils openssl-devel openssl
- sudo -E git clean -xdf
- ./autogen.sh
- ./configure --enable-fips --enable-pwquality --enable-libargon2 --with-crypto_backend=openssl
# Merge request: Build and run only non-root tests
test-mergerq-job:
test-mergerq-job-debian-noroot:
extends:
- .debian-prep
tags:
- libvirt
- debian10
stage: test
interruptible: true
rules:
- if: $CI_PROJECT_PATH != "cryptsetup/cryptsetup"
when: never
# - if: $CI_PROJECT_PATH != "cryptsetup/cryptsetup"
# when: never
- if: $CI_PIPELINE_SOURCE == "merge_request_event"
script:
- make -j
@@ -30,7 +49,12 @@ test-mergerq-job:
- make check
# For main branch commit, run all tests as root
test-main-commit-job:
test-main-commit-job-debian:
extends:
- .debian-prep
tags:
- libvirt
- debian10
stage: test
interruptible: true
variables:
@@ -44,3 +68,41 @@ test-main-commit-job:
- make -j -C tests check-programs
- sudo -E make check
- sudo -E make clean
test-main-commit-job-dnf:
extends:
- .dnf-openssl-backend
tags:
- libvirt
- fedora-rawhide
stage: test
interruptible: true
variables:
RUN_SSH_PLUGIN_TEST: "1"
rules:
- if: $CI_PROJECT_PATH != "cryptsetup/cryptsetup"
when: never
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
script:
- make -j
- make -j -C tests check-programs
- sudo -E make check
test-mergerq-job-dnf:
extends:
- .dnf-openssl-backend
tags:
- libvirt
- fedora-rawhide
stage: test
interruptible: true
variables:
RUN_SSH_PLUGIN_TEST: "1"
rules:
# - if: $CI_PROJECT_PATH != "cryptsetup/cryptsetup"
# when: never
- if: $CI_PIPELINE_SOURCE == "merge_request_event"
script:
- make -j
- make -j -C tests check-programs
- sudo -E make check

View File

@@ -46,11 +46,11 @@ Download
--------
All release tarballs and release notes are hosted on [kernel.org](https://www.kernel.org/pub/linux/utils/cryptsetup/).
**The latest stable cryptsetup version is 2.4.1**
* [cryptsetup-2.4.1.tar.xz](https://www.kernel.org/pub/linux/utils/cryptsetup/v2.4/cryptsetup-2.4.1.tar.xz)
* Signature [cryptsetup-2.4.1.tar.sign](https://www.kernel.org/pub/linux/utils/cryptsetup/v2.4/cryptsetup-2.4.1.tar.sign)
**The latest stable cryptsetup version is 2.4.2**
* [cryptsetup-2.4.2.tar.xz](https://www.kernel.org/pub/linux/utils/cryptsetup/v2.4/cryptsetup-2.4.2.tar.xz)
* Signature [cryptsetup-2.4.2.tar.sign](https://www.kernel.org/pub/linux/utils/cryptsetup/v2.4/cryptsetup-2.4.2.tar.sign)
_(You need to decompress file first to check signature.)_
* [Cryptsetup 2.4.1 Release Notes](https://www.kernel.org/pub/linux/utils/cryptsetup/v2.4/v2.4.1-ReleaseNotes).
* [Cryptsetup 2.4.2 Release Notes](https://www.kernel.org/pub/linux/utils/cryptsetup/v2.4/v2.4.2-ReleaseNotes).
Previous versions
* [Version 2.3.6](https://www.kernel.org/pub/linux/utils/cryptsetup/v2.3/cryptsetup-2.3.6.tar.xz) -
@@ -74,14 +74,14 @@ NLS PO files are maintained by [TranslationProject](https://translationproject.o
Required packages
-----------------
All distributions provide cryptsetup as distro package. If you need to compile cryptsetup youfself, some packages are required for compilation. Please always prefer distro specific build tools to manually configuring cryptsetup.
Fo available compile options, check ``configure --help`` for more info. If you are using a git snapshot, you need to generate configure script with ``autogen.sh`` script.
For available compile options, check ``configure --help`` for more info. If you are using a git snapshot, you need to generate a configure script with ``autogen.sh`` script.
Here is the list of packages needed for the compilation of project for particular distributions:
* For Fedora: `git gcc make autoconf automake gettext-devel pkgconfig openssl-devel popt-devel device-mapper-devel libuuid-devel json-c-devel libblkid-devel findutils libtool libssh-devel tar`. Optionally `libargon2-devel libpwquality-devel`. To run internal testsuite you also need `sharutils device-mapper jq vim-common expect keyutils netcat shadow-utils openssh-clients openssh sshpass`.
* For Fedora: `git gcc make autoconf automake gettext-devel pkgconfig openssl-devel popt-devel device-mapper-devel libuuid-devel json-c-devel libblkid-devel findutils libtool libssh-devel tar`. Optionally `libargon2-devel libpwquality-devel`. To run the internal testsuite you also need to install `sharutils device-mapper jq vim-common expect keyutils netcat shadow-utils openssh-clients openssh sshpass`.
* For Debian and Ubuntu: `git gcc make autoconf automake autopoint pkg-config libtool gettext libssl-dev libdevmapper-dev libpopt-dev uuid-dev libsepol1-dev libjson-c-dev libssh-dev libblkid-dev tar`. Optionally `libargon2-0-dev libpwquality-dev`. To run internal testsuite you also need `sharutils dmsetup jq xxd expect keyutils netcat passwd openssh-client sshpass`
* For Debian and Ubuntu: `git gcc make autoconf automake autopoint pkg-config libtool gettext libssl-dev libdevmapper-dev libpopt-dev uuid-dev libsepol1-dev libjson-c-dev libssh-dev libblkid-dev tar`. Optionally `libargon2-0-dev libpwquality-dev`. To run the internal testsuite you also need to install `sharutils dmsetup jq xxd expect keyutils netcat passwd openssh-client sshpass`
Note that the list could change as distributions evolve.
Note that the list could change as the distributions evolve.
Help!
-----

View File

@@ -1,5 +1,5 @@
AC_PREREQ([2.67])
AC_INIT([cryptsetup],[2.4.1])
AC_INIT([cryptsetup],[2.4.2])
dnl library version from <major>.<minor>.<release>[-<suffix>]
LIBCRYPTSETUP_VERSION=$(echo $PACKAGE_VERSION | cut -f1 -d-)

37
docs/v2.4.2-ReleaseNotes Normal file
View File

@@ -0,0 +1,37 @@
Cryptsetup 2.4.2 Release Notes
==============================
Stable bug-fix release.
All users of cryptsetup 2.4.1 should upgrade to this version.
Changes since version 2.4.1
~~~~~~~~~~~~~~~~~~~~~~~~~~~
* Fix possible large memory allocation if LUKS2 header size is invalid.
LUKS2 code read the full header to buffer to verify the checksum.
The maximal supported header size now limits the memory allocation.
* Fix memory corruption in debug message printing LUKS2 checksum.
* veritysetup: remove link to the UUID library for the static build.
* Remove link to pwquality library for integritysetup and veritysetup.
These tools do not read passphrases.
* OpenSSL3 backend: avoid remaining deprecated calls in API.
Crypto backend no longer use API deprecated in OpenSSL 3.0
* Check if kernel device-mapper create device failed in an early phase.
This happens when a concurrent creation of device-mapper devices
meets in the very early state.
* Do not set compiler optimization flag for Argon2 KDF if the memory
wipe is implemented in libc.
* Do not attempt to unload LUKS2 tokens if external tokens are disabled.
This allows building a static binary with --disable-external-tokens.
* LUKS convert: also check sysfs for device activity.
If udev symlink is missing, code fallbacks to sysfs scan to prevent
data corruption for the active device.

View File

@@ -947,12 +947,12 @@ static int get_startup_key(struct crypt_device *cd,
return -EPERM;
if (bek_header.metadata_version != 1) {
log_err(cd, "Unsupported BEK metadata version %" PRIu32 "", bek_header.metadata_version);
log_err(cd, _("Unsupported BEK metadata version %" PRIu32), bek_header.metadata_version);
return -ENOTSUP;
}
if (bek_header.metadata_size != passwordLen) {
log_err(cd, "Unexpected BEK metadata size %" PRIu32 " does not match BEK file length", bek_header.metadata_size);
log_err(cd, _("Unexpected BEK metadata size %" PRIu32 " does not match BEK file length"), bek_header.metadata_size);
return -EINVAL;
}

View File

@@ -120,18 +120,24 @@ void free_memory(const argon2_context *context, uint8_t *memory,
}
}
void NOT_OPTIMIZED secure_wipe_memory(void *v, size_t n) {
#if defined(_MSC_VER) && VC_GE_2005(_MSC_VER)
void secure_wipe_memory(void *v, size_t n) {
SecureZeroMemory(v, n);
}
#elif defined memset_s
void secure_wipe_memory(void *v, size_t n) {
memset_s(v, n, 0, n);
}
#elif defined(HAVE_EXPLICIT_BZERO)
void secure_wipe_memory(void *v, size_t n) {
explicit_bzero(v, n);
}
#else
void NOT_OPTIMIZED secure_wipe_memory(void *v, size_t n) {
static void *(*const volatile memset_sec)(void *, int, size_t) = &memset;
memset_sec(v, 0, n);
#endif
}
#endif
/* Memory clear flag defaults to true. */
int FLAG_clear_internal_memory = 1;

View File

@@ -28,11 +28,6 @@
* for all of the code used other than OpenSSL.
*/
/*
* HMAC will be later rewritten to a new API from OpenSSL 3
*/
#define OPENSSL_SUPPRESS_DEPRECATED
#include <string.h>
#include <errno.h>
#include <openssl/evp.h>
@@ -42,6 +37,7 @@
#if OPENSSL_VERSION_MAJOR >= 3
#include <openssl/provider.h>
#include <openssl/kdf.h>
#include <openssl/core_names.h>
static OSSL_PROVIDER *ossl_legacy = NULL;
static OSSL_PROVIDER *ossl_default = NULL;
static OSSL_LIB_CTX *ossl_ctx = NULL;
@@ -59,8 +55,14 @@ struct crypt_hash {
};
struct crypt_hmac {
#if OPENSSL_VERSION_MAJOR >= 3
EVP_MAC *mac;
EVP_MAC_CTX *md;
EVP_MAC_CTX *md_org;
#else
HMAC_CTX *md;
const EVP_MD *hash_id;
#endif
int hash_len;
};
@@ -397,7 +399,39 @@ int crypt_hmac_init(struct crypt_hmac **ctx, const char *name,
const void *key, size_t key_length)
{
struct crypt_hmac *h;
#if OPENSSL_VERSION_MAJOR >= 3
OSSL_PARAM params[] = {
OSSL_PARAM_utf8_string(OSSL_MAC_PARAM_DIGEST, CONST_CAST(void*)name, 0),
OSSL_PARAM_END
};
h = malloc(sizeof(*h));
if (!h)
return -ENOMEM;
h->mac = EVP_MAC_fetch(ossl_ctx, OSSL_MAC_NAME_HMAC, NULL);
if (!h->mac) {
free(h);
return -EINVAL;
}
h->md = EVP_MAC_CTX_new(h->mac);
if (!h->md) {
EVP_MAC_free(h->mac);
free(h);
return -ENOMEM;
}
if (EVP_MAC_init(h->md, key, key_length, params) != 1) {
EVP_MAC_CTX_free(h->md);
EVP_MAC_free(h->mac);
free(h);
return -EINVAL;
}
h->hash_len = EVP_MAC_CTX_get_mac_size(h->md);
h->md_org = EVP_MAC_CTX_dup(h->md);
#else
h = malloc(sizeof(*h));
if (!h)
return -ENOMEM;
@@ -418,46 +452,75 @@ int crypt_hmac_init(struct crypt_hmac **ctx, const char *name,
HMAC_Init_ex(h->md, key, key_length, h->hash_id, NULL);
h->hash_len = EVP_MD_size(h->hash_id);
#endif
*ctx = h;
return 0;
}
static void crypt_hmac_restart(struct crypt_hmac *ctx)
static int crypt_hmac_restart(struct crypt_hmac *ctx)
{
#if OPENSSL_VERSION_MAJOR >= 3
EVP_MAC_CTX_free(ctx->md);
ctx->md = EVP_MAC_CTX_dup(ctx->md_org);
if (!ctx->md)
return -EINVAL;
#else
HMAC_Init_ex(ctx->md, NULL, 0, ctx->hash_id, NULL);
#endif
return 0;
}
int crypt_hmac_write(struct crypt_hmac *ctx, const char *buffer, size_t length)
{
#if OPENSSL_VERSION_MAJOR >= 3
return EVP_MAC_update(ctx->md, (const unsigned char *)buffer, length) == 1 ? 0 : -EINVAL;
#else
HMAC_Update(ctx->md, (const unsigned char *)buffer, length);
return 0;
#endif
}
int crypt_hmac_final(struct crypt_hmac *ctx, char *buffer, size_t length)
{
unsigned char tmp[EVP_MAX_MD_SIZE];
#if OPENSSL_VERSION_MAJOR >= 3
size_t tmp_len = 0;
if (length > (size_t)ctx->hash_len)
return -EINVAL;
if (EVP_MAC_final(ctx->md, tmp, &tmp_len, sizeof(tmp)) != 1)
return -EINVAL;
#else
unsigned int tmp_len = 0;
if (length > (size_t)ctx->hash_len)
return -EINVAL;
HMAC_Final(ctx->md, tmp, &tmp_len);
#endif
memcpy(buffer, tmp, length);
crypt_backend_memzero(tmp, sizeof(tmp));
if (tmp_len < length)
return -EINVAL;
crypt_hmac_restart(ctx);
if (crypt_hmac_restart(ctx))
return -EINVAL;
return 0;
}
void crypt_hmac_destroy(struct crypt_hmac *ctx)
{
#if OPENSSL_VERSION_MAJOR >= 3
EVP_MAC_CTX_free(ctx->md);
EVP_MAC_CTX_free(ctx->md_org);
EVP_MAC_free(ctx->mac);
#else
hash_id_free(ctx->hash_id);
HMAC_CTX_free(ctx->md);
#endif
memset(ctx, 0, sizeof(*ctx));
free(ctx);
}
@@ -472,65 +535,56 @@ int crypt_backend_rng(char *buffer, size_t length,
return 0;
}
static int pbkdf2(const char *password, size_t password_length,
const char *salt, size_t salt_length,
uint32_t iterations, const char *hash, size_t key_length,
unsigned char *key)
static int openssl_pbkdf2(const char *password, size_t password_length,
const char *salt, size_t salt_length, uint32_t iterations,
const char *hash, char *key, size_t key_length)
{
int r;
#if OPENSSL_VERSION_MAJOR >= 3
EVP_KDF_CTX *ctx;
EVP_KDF *pbkdf2;
int r;
OSSL_PARAM params[] = {
{ .key = "pass",
.data_type = OSSL_PARAM_OCTET_STRING,
.data = CONST_CAST(void*)password,
.data_size = password_length
},
{ .key = "salt",
.data_type = OSSL_PARAM_OCTET_STRING,
.data = CONST_CAST(void*)salt,
.data_size = salt_length
},
{ .key = "iter",
.data_type = OSSL_PARAM_UNSIGNED_INTEGER,
.data = &iterations,
.data_size = sizeof(iterations)
},
{ .key = "digest",
.data_type = OSSL_PARAM_UTF8_STRING,
.data = CONST_CAST(void*)hash,
.data_size = strlen(hash)
},
{ NULL, 0, NULL, 0, 0 }
OSSL_PARAM_octet_string(OSSL_KDF_PARAM_PASSWORD,
CONST_CAST(void*)password, password_length),
OSSL_PARAM_octet_string(OSSL_KDF_PARAM_SALT,
CONST_CAST(void*)salt, salt_length),
OSSL_PARAM_uint32(OSSL_KDF_PARAM_ITER, &iterations),
OSSL_PARAM_utf8_string(OSSL_KDF_PARAM_DIGEST,
CONST_CAST(void*)hash, 0),
OSSL_PARAM_END
};
pbkdf2 = EVP_KDF_fetch(ossl_ctx, "pbkdf2", NULL);
if (!pbkdf2)
return 0;
return -EINVAL;
ctx = EVP_KDF_CTX_new(pbkdf2);
if (!ctx) {
EVP_KDF_free(pbkdf2);
return 0;
return -EINVAL;
}
r = EVP_KDF_derive(ctx, key, key_length, params);
r = EVP_KDF_derive(ctx, (unsigned char*)key, key_length, params);
EVP_KDF_CTX_free(ctx);
EVP_KDF_free(pbkdf2);
/* _derive() returns 0 or negative value on error, 1 on success */
return r <= 0 ? 0 : 1;
#else
const EVP_MD *hash_id = EVP_get_digestbyname(crypt_hash_compat_name(hash));
if (!hash_id)
return 0;
return -EINVAL;
return PKCS5_PBKDF2_HMAC(password, (int)password_length, (const unsigned char *)salt,
(int)salt_length, iterations, hash_id,
(int)key_length, key);
r = PKCS5_PBKDF2_HMAC(password, (int)password_length, (const unsigned char *)salt,
(int)salt_length, iterations, hash_id, (int)key_length, (unsigned char*) key);
#endif
return r == 1 ? 0 : -EINVAL;
}
static int openssl_argon2(const char *type, const char *password, size_t password_length,
const char *salt, size_t salt_length, char *key, size_t key_length,
uint32_t iterations, uint32_t memory, uint32_t parallel)
{
return argon2(type, password, password_length, salt, salt_length,
key, key_length, iterations, memory, parallel);
}
/* PBKDF */
@@ -539,21 +593,16 @@ int crypt_pbkdf(const char *kdf, const char *hash,
const char *salt, size_t salt_length,
char *key, size_t key_length,
uint32_t iterations, uint32_t memory, uint32_t parallel)
{
if (!kdf)
return -EINVAL;
if (!strcmp(kdf, "pbkdf2")) {
if (!pbkdf2(password, password_length,
salt, salt_length, iterations, hash, key_length, (unsigned char *)key))
return -EINVAL;
return 0;
} else if (!strncmp(kdf, "argon2", 6)) {
return argon2(kdf, password, password_length, salt, salt_length,
key, key_length, iterations, memory, parallel);
}
if (!strcmp(kdf, "pbkdf2"))
return openssl_pbkdf2(password, password_length, salt, salt_length,
iterations, hash, key, key_length);
if (!strncmp(kdf, "argon2", 6))
return openssl_argon2(kdf, password, password_length, salt, salt_length,
key, key_length, iterations, memory, parallel);
return -EINVAL;
}

View File

@@ -1243,7 +1243,7 @@ static int dm_prepare_uuid(struct crypt_device *cd, const char *name, const char
int lookup_dm_dev_by_uuid(struct crypt_device *cd, const char *uuid, const char *type)
{
int r;
int r_udev, r;
char *c;
char dev_uuid[DM_UUID_LEN + DM_BY_ID_PREFIX_LEN] = DM_BY_ID_PREFIX;
@@ -1257,13 +1257,16 @@ int lookup_dm_dev_by_uuid(struct crypt_device *cd, const char *uuid, const char
/* cut of dm name */
*c = '\0';
/* Either udev or sysfs can report that device is active. */
r = lookup_by_disk_id(dev_uuid);
if (r == -ENOENT) {
log_dbg(cd, "Search by disk id not available. Using sysfs instead.");
r = lookup_by_sysfs_uuid_field(dev_uuid + DM_BY_ID_PREFIX_LEN);
}
if (r > 0)
return r;
return r;
r_udev = r;
if (r_udev <= 0)
r = lookup_by_sysfs_uuid_field(dev_uuid + DM_BY_ID_PREFIX_LEN);
return r == -ENOENT ? r_udev : r;
}
static int _add_dm_targets(struct dm_task *dmt, struct crypt_dm_active_device *dmd)
@@ -1346,12 +1349,6 @@ err:
return r;
}
static bool dm_device_exists(struct crypt_device *cd, const char *name)
{
int r = dm_status_device(cd, name);
return (r >= 0 || r == -EEXIST);
}
static int _dm_create_device(struct crypt_device *cd, const char *name, const char *type,
struct crypt_dm_active_device *dmd)
{
@@ -1402,8 +1399,11 @@ static int _dm_create_device(struct crypt_device *cd, const char *name, const ch
goto out;
if (!dm_task_run(dmt)) {
if (dm_device_exists(cd, name))
r = dm_status_device(cd, name);;
if (r >= 0)
r = -EEXIST;
if (r != -EEXIST && r != -ENODEV)
r = -EINVAL;
goto out;
}

View File

@@ -62,8 +62,8 @@ static void log_dbg_checksum(struct crypt_device *cd,
int i;
for (i = 0; i < crypt_hash_size(csum_alg); i++)
snprintf(&csum_txt[i*2], 3, "%02hhx", (const char)csum[i]);
csum_txt[i*2+1] = '\0'; /* Just to be safe, sprintf should write \0 there. */
if (snprintf(&csum_txt[i*2], 3, "%02hhx", (const char)csum[i]) != 2)
return;
log_dbg(cd, "Checksum:%s (%s)", &csum_txt[0], info);
}
@@ -195,6 +195,8 @@ static int hdr_disk_sanity_check_pre(struct crypt_device *cd,
size_t *hdr_json_size, int secondary,
uint64_t offset)
{
uint64_t hdr_size;
if (memcmp(hdr->magic, secondary ? LUKS2_MAGIC_2ND : LUKS2_MAGIC_1ST, LUKS2_MAGIC_L))
return -EINVAL;
@@ -204,24 +206,31 @@ static int hdr_disk_sanity_check_pre(struct crypt_device *cd,
}
if (offset != be64_to_cpu(hdr->hdr_offset)) {
log_dbg(cd, "LUKS2 offset 0x%04x on device differs to expected offset 0x%04x.",
(unsigned)be64_to_cpu(hdr->hdr_offset), (unsigned)offset);
log_dbg(cd, "LUKS2 offset 0x%04" PRIx64 " on device differs to expected offset 0x%04" PRIx64 ".",
be64_to_cpu(hdr->hdr_offset), offset);
return -EINVAL;
}
if (secondary && (offset != be64_to_cpu(hdr->hdr_size))) {
log_dbg(cd, "LUKS2 offset 0x%04x in secondary header does not match size 0x%04x.",
(unsigned)offset, (unsigned)be64_to_cpu(hdr->hdr_size));
hdr_size = be64_to_cpu(hdr->hdr_size);
if (hdr_size < LUKS2_HDR_16K_LEN || hdr_size > LUKS2_HDR_OFFSET_MAX) {
log_dbg(cd, "LUKS2 header has bogus size 0x%04" PRIx64 ".", hdr_size);
return -EINVAL;
}
if (secondary && (offset != hdr_size)) {
log_dbg(cd, "LUKS2 offset 0x%04" PRIx64 " in secondary header does not match size 0x%04" PRIx64 ".",
offset, hdr_size);
return -EINVAL;
}
/* FIXME: sanity check checksum alg. */
log_dbg(cd, "LUKS2 header version %u of size %u bytes, checksum %s.",
(unsigned)be16_to_cpu(hdr->version), (unsigned)be64_to_cpu(hdr->hdr_size),
log_dbg(cd, "LUKS2 header version %u of size %" PRIu64 " bytes, checksum %s.",
be16_to_cpu(hdr->version), hdr_size,
hdr->checksum_alg);
*hdr_json_size = be64_to_cpu(hdr->hdr_size) - LUKS2_HDR_BIN_LEN;
*hdr_json_size = hdr_size - LUKS2_HDR_BIN_LEN;
return 0;
}
@@ -252,18 +261,19 @@ static int hdr_read_disk(struct crypt_device *cd,
return -EIO;
}
/*
* hdr_json_size is validated if this call succeeds
*/
r = hdr_disk_sanity_check_pre(cd, hdr_disk, &hdr_json_size, secondary, offset);
if (r < 0) {
if (r < 0)
return r;
}
/*
* Allocate and read JSON area. Always the whole area must be read.
*/
*json_area = malloc(hdr_json_size);
if (!*json_area) {
if (!*json_area)
return -ENOMEM;
}
if (read_lseek_blockwise(devfd, device_block_size(cd, device),
device_alignment(device), *json_area, hdr_json_size,
@@ -279,6 +289,8 @@ static int hdr_read_disk(struct crypt_device *cd,
if (hdr_checksum_check(cd, hdr_disk->checksum_alg, hdr_disk,
*json_area, hdr_json_size)) {
log_dbg(cd, "LUKS2 header checksum error (offset %" PRIu64 ").", offset);
free(*json_area);
*json_area = NULL;
r = -EINVAL;
}
memset(hdr_disk->csum, 0, LUKS2_CHECKSUM_L);

View File

@@ -248,6 +248,7 @@ static int luks2_keyslot_set_key(struct crypt_device *cd,
/*
* Calculate keyslot content, split and store it to keyslot area.
*/
log_dbg(cd, "Running keyslot key derivation.");
r = crypt_pbkdf(pbkdf.type, pbkdf.hash, password, passwordLen,
salt, LUKS_SALTSIZE,
derived_key->key, derived_key->keylength,
@@ -269,7 +270,7 @@ static int luks2_keyslot_set_key(struct crypt_device *cd,
r = AF_split(cd, volume_key, AfKey, volume_key_len, LUKS_STRIPES, af_hash);
if (r == 0) {
log_dbg(cd, "Updating keyslot area [0x%04x].", (unsigned)area_offset);
log_dbg(cd, "Updating keyslot area [0x%04" PRIx64 "].", area_offset);
/* FIXME: sector_offset should be size_t, fix LUKS_encrypt... accordingly */
r = luks2_encrypt_to_storage(AfKey, AFEKSize, cipher, cipher_mode,
derived_key, (unsigned)(area_offset / SECTOR_SIZE), cd);
@@ -350,6 +351,7 @@ static int luks2_keyslot_get_key(struct crypt_device *cd,
/*
* Calculate derived key, decrypt keyslot content and merge it.
*/
log_dbg(cd, "Running keyslot key derivation.");
r = crypt_pbkdf(pbkdf.type, pbkdf.hash, password, passwordLen,
salt, LUKS_SALTSIZE,
derived_key->key, derived_key->keylength,
@@ -360,7 +362,7 @@ static int luks2_keyslot_get_key(struct crypt_device *cd,
crypt_serialize_unlock(cd);
if (r == 0) {
log_dbg(cd, "Reading keyslot area [0x%04x].", (unsigned)area_offset);
log_dbg(cd, "Reading keyslot area [0x%04" PRIx64 "].", area_offset);
/* FIXME: sector_offset should be size_t, fix LUKS_decrypt... accordingly */
r = luks2_decrypt_from_storage(AfKey, AFEKSize, cipher, cipher_mode,
derived_key, (unsigned)(area_offset / SECTOR_SIZE), cd);

View File

@@ -3293,7 +3293,7 @@ static void reencrypt_teardown_fatal(struct crypt_device *cd, struct luks2_reenc
(rh->offset >> SECTOR_SHIFT) + crypt_get_data_offset(cd), rh->length >> SECTOR_SHIFT);
if (rh->online) {
log_err(cd, "Reencryption was run in online mode.");
log_err(cd, _("Online reencryption failed."));
if (dm_status_suspended(cd, rh->hotzone_name) > 0) {
log_dbg(cd, "Hotzone device %s suspended, replacing with dm-error.", rh->hotzone_name);
if (dm_error_device(cd, rh->hotzone_name)) {

View File

@@ -245,6 +245,7 @@ int crypt_token_register(const crypt_token_handler *handler)
void crypt_token_unload_external_all(struct crypt_device *cd)
{
#if USE_EXTERNAL_TOKENS
int i;
for (i = LUKS2_TOKENS_MAX - 1; i >= 0; i--) {
@@ -258,6 +259,7 @@ void crypt_token_unload_external_all(struct crypt_device *cd)
if (dlclose(CONST_CAST(void *)token_handlers[i].u.v2.dlhandle))
log_dbg(cd, "%s", dlerror());
}
#endif
}
static const void

View File

@@ -505,11 +505,11 @@ int device_locked_verify(struct crypt_device *cd, int dev_fd, struct crypt_lock_
/* if device handle is regular file the handle must match the lock handle */
if (S_ISREG(dev_st.st_mode)) {
log_dbg(cd, "Veryfing locked device handle (regular file)");
log_dbg(cd, "Verifying locked device handle (regular file)");
if (!same_inode(dev_st, lck_st))
return 1;
} else if (S_ISBLK(dev_st.st_mode)) {
log_dbg(cd, "Veryfing locked device handle (bdev)");
log_dbg(cd, "Verifying locked device handle (bdev)");
if (resource_by_devno(res, sizeof(res), dev_st.st_rdev, 1) ||
stat(res, &st) ||
!same_inode(lck_st, st))

View File

@@ -5,9 +5,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: cryptsetup 2.4.1\n"
"Project-Id-Version: cryptsetup 2.4.2-rc0\n"
"Report-Msgid-Bugs-To: dm-crypt@saout.de\n"
"POT-Creation-Date: 2021-09-15 09:53+0200\n"
"POT-Creation-Date: 2021-11-16 16:52+0100\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"
@@ -33,45 +33,45 @@ msgstr ""
msgid "DM-UUID for device %s was truncated."
msgstr ""
#: lib/libdevmapper.c:1570
#: lib/libdevmapper.c:1567
msgid "Unknown dm target type."
msgstr ""
#: lib/libdevmapper.c:1691 lib/libdevmapper.c:1696 lib/libdevmapper.c:1760
#: lib/libdevmapper.c:1763
#: lib/libdevmapper.c:1688 lib/libdevmapper.c:1693 lib/libdevmapper.c:1757
#: lib/libdevmapper.c:1760
msgid "Requested dm-crypt performance options are not supported."
msgstr ""
#: lib/libdevmapper.c:1703 lib/libdevmapper.c:1707
#: lib/libdevmapper.c:1700 lib/libdevmapper.c:1704
msgid "Requested dm-verity data corruption handling options are not supported."
msgstr ""
#: lib/libdevmapper.c:1711
#: lib/libdevmapper.c:1708
msgid "Requested dm-verity FEC options are not supported."
msgstr ""
#: lib/libdevmapper.c:1715
#: lib/libdevmapper.c:1712
msgid "Requested data integrity options are not supported."
msgstr ""
#: lib/libdevmapper.c:1717
#: lib/libdevmapper.c:1714
msgid "Requested sector_size option is not supported."
msgstr ""
#: lib/libdevmapper.c:1722 lib/libdevmapper.c:1726
#: lib/libdevmapper.c:1719 lib/libdevmapper.c:1723
msgid "Requested automatic recalculation of integrity tags is not supported."
msgstr ""
#: lib/libdevmapper.c:1730 lib/libdevmapper.c:1766 lib/libdevmapper.c:1769
#: lib/libdevmapper.c:1727 lib/libdevmapper.c:1763 lib/libdevmapper.c:1766
#: lib/luks2/luks2_json_metadata.c:2204
msgid "Discard/TRIM is not supported."
msgstr ""
#: lib/libdevmapper.c:1734
#: lib/libdevmapper.c:1731
msgid "Requested dm-integrity bitmap mode is not supported."
msgstr ""
#: lib/libdevmapper.c:2708
#: lib/libdevmapper.c:2705
#, c-format
msgid "Failed to query dm-%s segment."
msgstr ""
@@ -1146,6 +1146,16 @@ msgstr ""
msgid "Unexpected metadata entry value '%u' found when parsing external key."
msgstr ""
#: lib/bitlk/bitlk.c:950
#, c-format
msgid "Unsupported BEK metadata version %<PRIu32>"
msgstr ""
#: lib/bitlk/bitlk.c:955
#, c-format
msgid "Unexpected BEK metadata size %<PRIu32> does not match BEK file length"
msgstr ""
#: lib/bitlk/bitlk.c:980
msgid "Unexpected metadata entry found when parsing startup key."
msgstr ""
@@ -1337,18 +1347,18 @@ msgid ""
"activation options to override)."
msgstr ""
#: lib/luks2/luks2_disk_metadata.c:381 lib/luks2/luks2_json_metadata.c:973
#: lib/luks2/luks2_disk_metadata.c:393 lib/luks2/luks2_json_metadata.c:973
#: lib/luks2/luks2_json_metadata.c:1268
#, c-format
msgid "Failed to acquire write lock on device %s."
msgstr ""
#: lib/luks2/luks2_disk_metadata.c:390
#: lib/luks2/luks2_disk_metadata.c:402
msgid ""
"Detected attempt for concurrent LUKS2 metadata update. Aborting operation."
msgstr ""
#: lib/luks2/luks2_disk_metadata.c:689 lib/luks2/luks2_disk_metadata.c:710
#: lib/luks2/luks2_disk_metadata.c:701 lib/luks2/luks2_disk_metadata.c:722
msgid ""
"Device contains ambiguous signatures, cannot auto-recover LUKS2.\n"
"Please run \"cryptsetup repair\" for recovery."
@@ -1480,7 +1490,7 @@ msgstr ""
msgid "Cannot use %s-%s cipher for keyslot encryption."
msgstr ""
#: lib/luks2/luks2_keyslot_luks2.c:483
#: lib/luks2/luks2_keyslot_luks2.c:485
msgid "No space for new keyslot."
msgstr ""
@@ -1736,6 +1746,10 @@ msgid ""
"sectors long."
msgstr ""
#: lib/luks2/luks2_reencrypt.c:3296
msgid "Online reencryption failed."
msgstr ""
#: lib/luks2/luks2_reencrypt.c:3301
msgid "Do not resume the device unless replaced with error target manually."
msgstr ""
@@ -2221,6 +2235,15 @@ msgstr ""
msgid "Cannot create temporary header file %s."
msgstr ""
#: src/cryptsetup.c:2975
msgid "LUKS2 metadata size is larger than data shift value."
msgstr ""
#: src/cryptsetup.c:3007
#, c-format
msgid "Failed to place new header at head of device %s."
msgstr ""
#: src/cryptsetup.c:3018
#, c-format
msgid "%s/%s is now active and ready for online encryption.\n"
@@ -2954,6 +2977,10 @@ msgstr ""
msgid "Cannot read reencryption log file."
msgstr ""
#: src/cryptsetup_reencrypt.c:353
msgid "Wrong log format."
msgstr ""
#: src/cryptsetup_reencrypt.c:380
#, c-format
msgid "Log file %s exists, resuming reencryption.\n"
@@ -3113,124 +3140,160 @@ msgstr ""
msgid "Invalid luks type. Use one of these: 'luks', 'luks1' or 'luks2'."
msgstr ""
#: src/utils_tools.c:126
#: src/utils_tools.c:119
msgid ""
"\n"
"WARNING!\n"
"========\n"
msgstr ""
#. TRANSLATORS: User must type "YES" (in capital letters), do not translate this word.
#: src/utils_tools.c:121
#, c-format
msgid ""
"%s\n"
"\n"
"Are you sure? (Type 'yes' in capital letters): "
msgstr ""
#: src/utils_tools.c:127
msgid "Error reading response from terminal."
msgstr ""
#: src/utils_tools.c:158
#: src/utils_tools.c:159
msgid "Command successful."
msgstr ""
#: src/utils_tools.c:166
#: src/utils_tools.c:167
msgid "wrong or missing parameters"
msgstr ""
#: src/utils_tools.c:168
#: src/utils_tools.c:169
msgid "no permission or bad passphrase"
msgstr ""
#: src/utils_tools.c:170
#: src/utils_tools.c:171
msgid "out of memory"
msgstr ""
#: src/utils_tools.c:172
#: src/utils_tools.c:173
msgid "wrong device or file specified"
msgstr ""
#: src/utils_tools.c:174
#: src/utils_tools.c:175
msgid "device already exists or device is busy"
msgstr ""
#: src/utils_tools.c:176
#: src/utils_tools.c:177
msgid "unknown error"
msgstr ""
#: src/utils_tools.c:178
#: src/utils_tools.c:179
#, c-format
msgid "Command failed with code %i (%s)."
msgstr ""
#: src/utils_tools.c:256
#: src/utils_tools.c:257
#, c-format
msgid "Key slot %i created."
msgstr ""
#: src/utils_tools.c:258
#: src/utils_tools.c:259
#, c-format
msgid "Key slot %i unlocked."
msgstr ""
#: src/utils_tools.c:260
#: src/utils_tools.c:261
#, c-format
msgid "Key slot %i removed."
msgstr ""
#: src/utils_tools.c:269
#: src/utils_tools.c:270
#, c-format
msgid "Token %i created."
msgstr ""
#: src/utils_tools.c:271
#: src/utils_tools.c:272
#, c-format
msgid "Token %i removed."
msgstr ""
#: src/utils_tools.c:281
#: src/utils_tools.c:282
msgid "No token could be unlocked with this PIN."
msgstr ""
#: src/utils_tools.c:283
#: src/utils_tools.c:284
#, c-format
msgid "Token %i requires PIN."
msgstr ""
#: src/utils_tools.c:285
#: src/utils_tools.c:286
#, c-format
msgid "Token (type %s) requires PIN."
msgstr ""
#: src/utils_tools.c:288
#: src/utils_tools.c:289
#, c-format
msgid "Token %i cannot unlock assigned keyslot(s) (wrong keyslot passphrase)."
msgstr ""
#: src/utils_tools.c:290
#: src/utils_tools.c:291
#, c-format
msgid ""
"Token (type %s) cannot unlock assigned keyslot(s) (wrong keyslot passphrase)."
msgstr ""
#: src/utils_tools.c:293
#: src/utils_tools.c:294
#, c-format
msgid "Token %i requires additional missing resource."
msgstr ""
#: src/utils_tools.c:295
#: src/utils_tools.c:296
#, c-format
msgid "Token (type %s) requires additional missing resource."
msgstr ""
#: src/utils_tools.c:298
#: src/utils_tools.c:299
#, c-format
msgid "No usable token (type %s) is available."
msgstr ""
#: src/utils_tools.c:300
#: src/utils_tools.c:301
msgid "No usable token is available."
msgstr ""
#: src/utils_tools.c:462
#: src/utils_tools.c:463
msgid ""
"\n"
"Wipe interrupted."
msgstr ""
#: src/utils_tools.c:491
#: src/utils_tools.c:492
msgid ""
"\n"
"Reencryption interrupted."
msgstr ""
#: src/utils_tools.c:511
#, c-format
msgid "Cannot read keyfile %s."
msgstr ""
#: src/utils_tools.c:516
#, c-format
msgid "Cannot read %d bytes from keyfile %s."
msgstr ""
#: src/utils_tools.c:541
#, c-format
msgid "Cannot open keyfile %s for write."
msgstr ""
#: src/utils_tools.c:548
#, c-format
msgid "Cannot write to keyfile %s."
msgstr ""
#: src/utils_password.c:41 src/utils_password.c:74
#, c-format
msgid "Cannot check password quality: %s"
@@ -3282,26 +3345,6 @@ msgstr ""
msgid "No usable keyslot is available."
msgstr ""
#: src/utils_password.c:335
#, c-format
msgid "Cannot read keyfile %s."
msgstr ""
#: src/utils_password.c:340
#, c-format
msgid "Cannot read %d bytes from keyfile %s."
msgstr ""
#: src/utils_password.c:365
#, c-format
msgid "Cannot open keyfile %s for write."
msgstr ""
#: src/utils_password.c:372
#, c-format
msgid "Cannot write to keyfile %s."
msgstr ""
#: src/utils_luks2.c:47
#, c-format
msgid "Failed to open file %s in read-only mode."
@@ -3365,6 +3408,16 @@ msgstr ""
msgid "Failed to open file %s in read/write mode."
msgstr ""
#: src/utils_blockdev.c:294
#, c-format
msgid "Existing '%s' partition signature on device %s will be wiped."
msgstr ""
#: src/utils_blockdev.c:297
#, c-format
msgid "Existing '%s' superblock signature on device %s will be wiped."
msgstr ""
#: src/utils_blockdev.c:300
msgid "Failed to wipe device signature."
msgstr ""

287
po/cs.po
View File

@@ -29,10 +29,10 @@
#
msgid ""
msgstr ""
"Project-Id-Version: cryptsetup 2.4.1-rc0\n"
"Project-Id-Version: cryptsetup 2.4.2-rc0\n"
"Report-Msgid-Bugs-To: dm-crypt@saout.de\n"
"POT-Creation-Date: 2021-08-30 12:40+0200\n"
"PO-Revision-Date: 2021-08-31 20:49+02:00\n"
"POT-Creation-Date: 2021-11-11 19:08+0100\n"
"PO-Revision-Date: 2021-11-13 14:47+01:00\n"
"Last-Translator: Petr Pisar <petr.pisar@atlas.cz>\n"
"Language-Team: Czech <translation-team-cs@lists.sourceforge.net>\n"
"Language: cs\n"
@@ -59,45 +59,45 @@ msgstr "Požadovaný příznak odložení není podporován."
msgid "DM-UUID for device %s was truncated."
msgstr "DM-UUID pro zařízení %s bylo zkráceno."
#: lib/libdevmapper.c:1570
#: lib/libdevmapper.c:1567
msgid "Unknown dm target type."
msgstr "Neznámý druh cíle DM."
#: lib/libdevmapper.c:1691 lib/libdevmapper.c:1696 lib/libdevmapper.c:1760
#: lib/libdevmapper.c:1763
#: lib/libdevmapper.c:1688 lib/libdevmapper.c:1693 lib/libdevmapper.c:1757
#: lib/libdevmapper.c:1760
msgid "Requested dm-crypt performance options are not supported."
msgstr "Požadované výkonnostní volby dm-cryptu nejsou podporovány."
#: lib/libdevmapper.c:1703 lib/libdevmapper.c:1707
#: lib/libdevmapper.c:1700 lib/libdevmapper.c:1704
msgid "Requested dm-verity data corruption handling options are not supported."
msgstr "Požadované volby, jak zacházet s poškozením dat dm-verity, nejsou podporovány."
#: lib/libdevmapper.c:1711
#: lib/libdevmapper.c:1708
msgid "Requested dm-verity FEC options are not supported."
msgstr "Požadované FEC volby dm-cryptu nejsou podporovány."
#: lib/libdevmapper.c:1715
#: lib/libdevmapper.c:1712
msgid "Requested data integrity options are not supported."
msgstr "Požadované volby integrity dat nejsou podporovány."
#: lib/libdevmapper.c:1717
#: lib/libdevmapper.c:1714
msgid "Requested sector_size option is not supported."
msgstr "Požadované volby sector_size není podporována."
#: lib/libdevmapper.c:1722 lib/libdevmapper.c:1726
#: lib/libdevmapper.c:1719 lib/libdevmapper.c:1723
msgid "Requested automatic recalculation of integrity tags is not supported."
msgstr "Požadovaný automatický přepočet značek integrity není podporován."
#: lib/libdevmapper.c:1730 lib/libdevmapper.c:1766 lib/libdevmapper.c:1769
#: lib/libdevmapper.c:1727 lib/libdevmapper.c:1763 lib/libdevmapper.c:1766
#: lib/luks2/luks2_json_metadata.c:2204
msgid "Discard/TRIM is not supported."
msgstr "Zahazování (TRIM) není podporováno."
#: lib/libdevmapper.c:1734
#: lib/libdevmapper.c:1731
msgid "Requested dm-integrity bitmap mode is not supported."
msgstr "Požadovaný režim bitmapy integrity DM není podporován."
#: lib/libdevmapper.c:2708
#: lib/libdevmapper.c:2705
#, c-format
msgid "Failed to query dm-%s segment."
msgstr "Dotaz na část dm-%s selhal."
@@ -162,7 +162,7 @@ msgstr "Tato operace je podporována jen u zařízení LUKS."
msgid "This operation is supported only for LUKS2 device."
msgstr "Tato operace je podporována jen u zařízení LUKS2."
#: lib/setup.c:420 lib/luks2/luks2_reencrypt.c:2436
#: lib/setup.c:420 lib/luks2/luks2_reencrypt.c:2440
msgid "All key slots full."
msgstr "Všechny pozice klíčů jsou obsazeny."
@@ -225,7 +225,7 @@ msgstr "UUID není na šifře tohoto typu podporováno."
msgid "Detached metadata device is not supported for this crypt type."
msgstr "Zařízení s oddělenými metadaty není na šifře tohoto typu podporováno."
#: lib/setup.c:1552 lib/setup.c:1754 lib/luks2/luks2_reencrypt.c:2397
#: lib/setup.c:1552 lib/setup.c:1754 lib/luks2/luks2_reencrypt.c:2401
#: src/cryptsetup.c:1358 src/cryptsetup.c:3723
msgid "Unsupported encryption sector size."
msgstr "Nepodporovaná velikost šifrovaného sektoru."
@@ -275,7 +275,7 @@ msgid "WARNING: LUKS2 keyslots area size changed to %<PRIu64> bytes.\n"
msgstr "POZOR: Oblast s pozicemi klíčů pro LUKS2 změnila velikost na %<PRIu64> bajtů.\n"
#: lib/setup.c:1915 lib/utils_device.c:909 lib/luks1/keyencryption.c:255
#: lib/luks2/luks2_reencrypt.c:2447 lib/luks2/luks2_reencrypt.c:3484
#: lib/luks2/luks2_reencrypt.c:2451 lib/luks2/luks2_reencrypt.c:3488
#, c-format
msgid "Device %s is too small."
msgstr "Zařízení %s je příliš malé."
@@ -353,8 +353,8 @@ msgstr "Požadován neznámý typ šifrovaného zařízení %s."
msgid "Unsupported parameters on device %s."
msgstr "Nepodporované parametry na zařízení %s."
#: lib/setup.c:2622 lib/setup.c:2708 lib/luks2/luks2_reencrypt.c:2499
#: lib/luks2/luks2_reencrypt.c:2843
#: lib/setup.c:2622 lib/setup.c:2708 lib/luks2/luks2_reencrypt.c:2503
#: lib/luks2/luks2_reencrypt.c:2847
#, c-format
msgid "Mismatching parameters on device %s."
msgstr "Neodpovídající parametry an za zařízení %s."
@@ -364,7 +364,7 @@ msgid "Crypt devices mismatch."
msgstr "Zařízení dmcryptu si neodpovídají."
#: lib/setup.c:2765 lib/setup.c:2770 lib/luks2/luks2_reencrypt.c:2143
#: lib/luks2/luks2_reencrypt.c:3251
#: lib/luks2/luks2_reencrypt.c:3255
#, c-format
msgid "Failed to reload device %s."
msgstr "Zařízení %s nebylo možné znovu zavést."
@@ -376,7 +376,7 @@ msgid "Failed to suspend device %s."
msgstr "Zařízení %s nebylo možné pozastavit."
#: lib/setup.c:2788 lib/luks2/luks2_reencrypt.c:2128
#: lib/luks2/luks2_reencrypt.c:3186 lib/luks2/luks2_reencrypt.c:3255
#: lib/luks2/luks2_reencrypt.c:3190 lib/luks2/luks2_reencrypt.c:3259
#, c-format
msgid "Failed to resume device %s."
msgstr "Zařízení %s nebylo možné probudit."
@@ -471,11 +471,11 @@ msgid "Reencryption in-progress. Cannot activate device."
msgstr "Přešifrování již probíhá. Zařízení nelze aktivovat."
#: lib/setup.c:4091 lib/luks2/luks2_json_metadata.c:2287
#: lib/luks2/luks2_reencrypt.c:2942
#: lib/luks2/luks2_reencrypt.c:2946
msgid "Failed to get reencryption lock."
msgstr "Získání zámku pro přešifrování selhalo."
#: lib/setup.c:4104 lib/luks2/luks2_reencrypt.c:2961
#: lib/setup.c:4104 lib/luks2/luks2_reencrypt.c:2965
msgid "LUKS2 reencryption recovery failed."
msgstr "Obnova přešifrování LUKS2 selhalo."
@@ -578,7 +578,7 @@ msgstr "Přiřazení pozice klíče %d k otisku se nezdařilo."
msgid "Kernel keyring is not supported by the kernel."
msgstr "Jaderná klíčenka není jádrem podporována."
#: lib/setup.c:6161 lib/luks2/luks2_reencrypt.c:3058
#: lib/setup.c:6161 lib/luks2/luks2_reencrypt.c:3062
#, c-format
msgid "Failed to read passphrase from keyring (error %d)."
msgstr "Čtení hesla z klíčenky selhalo (chyba %d)."
@@ -1160,6 +1160,16 @@ msgstr "Při rozboru externího klíče byla v metadatech nalezena položka ne
msgid "Unexpected metadata entry value '%u' found when parsing external key."
msgstr "Při rozboru externího klíče byla v metadatech nalezena položka s nečekanou hodnotou „%u“."
#: lib/bitlk/bitlk.c:950
#, c-format
msgid "Unsupported BEK metadata version %<PRIu32>"
msgstr "Nepodporovaná metadata BEK verze %<PRIu32>."
#: lib/bitlk/bitlk.c:955
#, c-format
msgid "Unexpected BEK metadata size %<PRIu32> does not match BEK file length"
msgstr "Nečekaná velikost metadat BEK %<PRIu32> neodpovídá délce souboru BEK"
#: lib/bitlk/bitlk.c:980
msgid "Unexpected metadata entry found when parsing startup key."
msgstr "Při rozboru startovacího klíče byla v metadatech nalezena nečekaná položka."
@@ -1347,17 +1357,17 @@ msgstr "Jádro nepodporuje drobné zarovnání metadat dm-integrity."
msgid "Kernel refuses to activate insecure recalculate option (see legacy activation options to override)."
msgstr "Jádro odmítá aktivovat volbu nebezpečného přepočtu (pro přebití vizte zastaralé volby aktivace)"
#: lib/luks2/luks2_disk_metadata.c:381 lib/luks2/luks2_json_metadata.c:973
#: lib/luks2/luks2_disk_metadata.c:393 lib/luks2/luks2_json_metadata.c:973
#: lib/luks2/luks2_json_metadata.c:1268
#, c-format
msgid "Failed to acquire write lock on device %s."
msgstr "Získání zámku pro zápis do zařízení %s selhalo."
#: lib/luks2/luks2_disk_metadata.c:390
#: lib/luks2/luks2_disk_metadata.c:402
msgid "Detected attempt for concurrent LUKS2 metadata update. Aborting operation."
msgstr "Zjištěn pokus o současnou aktualizaci metadat LUKS2. Operace se ruší."
#: lib/luks2/luks2_disk_metadata.c:689 lib/luks2/luks2_disk_metadata.c:710
#: lib/luks2/luks2_disk_metadata.c:701 lib/luks2/luks2_disk_metadata.c:722
msgid ""
"Device contains ambiguous signatures, cannot auto-recover LUKS2.\n"
"Please run \"cryptsetup repair\" for recovery."
@@ -1433,7 +1443,7 @@ msgstr ""
msgid "Ignored unknown flag %s."
msgstr "Neznámý příznak %s ignorován."
#: lib/luks2/luks2_json_metadata.c:2054 lib/luks2/luks2_reencrypt.c:1840
#: lib/luks2/luks2_json_metadata.c:2054 lib/luks2/luks2_reencrypt.c:1843
#, c-format
msgid "Missing key for dm-crypt segment %u"
msgstr "Chybí klíč pro dm-crypt část %u."
@@ -1454,7 +1464,7 @@ msgstr "Nepodporovaná konfigurace integrity zařízení."
msgid "Reencryption in-progress. Cannot deactivate device."
msgstr "Probíhá přešifrování. Zařízení nelze deaktivovat."
#: lib/luks2/luks2_json_metadata.c:2296 lib/luks2/luks2_reencrypt.c:3296
#: lib/luks2/luks2_json_metadata.c:2296 lib/luks2/luks2_reencrypt.c:3300
#, c-format
msgid "Failed to replace suspended device %s with dm-error target."
msgstr "Výměna pozastaveného zařízení %s za cíl dm-error selhala."
@@ -1488,7 +1498,7 @@ msgstr "Otevření pozice s klíčem selhalo."
msgid "Cannot use %s-%s cipher for keyslot encryption."
msgstr "Šifru %s-%s nelze použít pro pozici s klíčem."
#: lib/luks2/luks2_keyslot_luks2.c:483
#: lib/luks2/luks2_keyslot_luks2.c:485
msgid "No space for new keyslot."
msgstr "Pro novou pozicí klíče není místo."
@@ -1564,7 +1574,7 @@ msgstr "Nepodporovaný režim odolnosti %s"
#: lib/luks2/luks2_reencrypt.c:1259 lib/luks2/luks2_reencrypt.c:1414
#: lib/luks2/luks2_reencrypt.c:1497 lib/luks2/luks2_reencrypt.c:1531
#: lib/luks2/luks2_reencrypt.c:3136
#: lib/luks2/luks2_reencrypt.c:3140
msgid "Failed to initialize old segment storage wrapper."
msgstr "Obálku pro starou část úložiště se nepodařilo inicializovat."
@@ -1576,7 +1586,7 @@ msgstr "Obálku pro novou část úložiště se nepodařilo inicializovat."
msgid "Failed to read checksums for current hotzone."
msgstr "Kontrolní součty pro aktuální horkou zónu se nepodařilo přečíst."
#: lib/luks2/luks2_reencrypt.c:1448 lib/luks2/luks2_reencrypt.c:3144
#: lib/luks2/luks2_reencrypt.c:1448 lib/luks2/luks2_reencrypt.c:3148
#, c-format
msgid "Failed to read hotzone area starting at %<PRIu64>."
msgstr "Čtení oblasti s horkou zónou počínaje na %<PRIu64> selhalo."
@@ -1615,138 +1625,142 @@ msgstr "Zavedení nového mapování pro zařízení %s selhalo."
msgid "Failed to refresh reencryption devices stack."
msgstr "Zásobník zařízení k přešifrování se nepodařilo obnovit."
#: lib/luks2/luks2_reencrypt.c:2305
#: lib/luks2/luks2_reencrypt.c:2309
msgid "Failed to set new keyslots area size."
msgstr "Nastavení velikosti nové oblasti s pozicemi klíčů selhalo."
#: lib/luks2/luks2_reencrypt.c:2409
#: lib/luks2/luks2_reencrypt.c:2413
#, c-format
msgid "Data shift is not aligned to requested encryption sector size (%<PRIu32> bytes)."
msgstr "Posun dat není zarovnán s požadovanou velikostí šifrovaného sektoru (%<PRIu32> bajtů)."
#: lib/luks2/luks2_reencrypt.c:2430
#: lib/luks2/luks2_reencrypt.c:2434
#, c-format
msgid "Data device is not aligned to requested encryption sector size (%<PRIu32> bytes)."
msgstr "Zařízení s daty není zarovnáno na požadovanou velikost šifrovaného sektoru (%<PRIu32> bajtů)."
#: lib/luks2/luks2_reencrypt.c:2451
#: lib/luks2/luks2_reencrypt.c:2455
#, c-format
msgid "Data shift (%<PRIu64> sectors) is less than future data offset (%<PRIu64> sectors)."
msgstr "Posun dat (%<PRIu64> sektorů) je menší než budoucí poloha dat (%<PRIu64> sektorů)."
#: lib/luks2/luks2_reencrypt.c:2457 lib/luks2/luks2_reencrypt.c:2885
#: lib/luks2/luks2_reencrypt.c:2906
#: lib/luks2/luks2_reencrypt.c:2461 lib/luks2/luks2_reencrypt.c:2889
#: lib/luks2/luks2_reencrypt.c:2910
#, c-format
msgid "Failed to open %s in exclusive mode (already mapped or mounted)."
msgstr "Zařízení %s nebylo možné otevřít ve výlučném režimu (již namapováno nebo připojeno)."
#: lib/luks2/luks2_reencrypt.c:2625
#: lib/luks2/luks2_reencrypt.c:2629
msgid "Device not marked for LUKS2 reencryption."
msgstr "Zařízení není označeno pro přešifrování LUKS2."
#: lib/luks2/luks2_reencrypt.c:2631 lib/luks2/luks2_reencrypt.c:3411
#: lib/luks2/luks2_reencrypt.c:2635 lib/luks2/luks2_reencrypt.c:3415
msgid "Failed to load LUKS2 reencryption context."
msgstr "Načtení kontextu přešifrování LUKS2 selhalo."
#: lib/luks2/luks2_reencrypt.c:2711
#: lib/luks2/luks2_reencrypt.c:2715
msgid "Failed to get reencryption state."
msgstr "Stavu přešifrování se nepodařilo zjistit."
#: lib/luks2/luks2_reencrypt.c:2715
#: lib/luks2/luks2_reencrypt.c:2719
msgid "Device is not in reencryption."
msgstr "Zařízení se nepřešifrovává."
#: lib/luks2/luks2_reencrypt.c:2722
#: lib/luks2/luks2_reencrypt.c:2726
msgid "Reencryption process is already running."
msgstr "Proces přešifrování již běží."
#: lib/luks2/luks2_reencrypt.c:2724
#: lib/luks2/luks2_reencrypt.c:2728
msgid "Failed to acquire reencryption lock."
msgstr "Získání zámku pro přešifrování selhalo."
#: lib/luks2/luks2_reencrypt.c:2742
#: lib/luks2/luks2_reencrypt.c:2746
msgid "Cannot proceed with reencryption. Run reencryption recovery first."
msgstr "V přešifrování nelze pokračovat. Spusťte nejprve obnovu přešifrování."
#: lib/luks2/luks2_reencrypt.c:2856
#: lib/luks2/luks2_reencrypt.c:2860
msgid "Active device size and requested reencryption size don't match."
msgstr "Aktivní velikost zařízení a velikost požadovaná k přešifrování si neodpovídají."
#: lib/luks2/luks2_reencrypt.c:2870
#: lib/luks2/luks2_reencrypt.c:2874
msgid "Illegal device size requested in reencryption parameters."
msgstr "V parametrech přešifrování je požadována zakázaná velikost zařízení."
#: lib/luks2/luks2_reencrypt.c:2940
#: lib/luks2/luks2_reencrypt.c:2944
msgid "Reencryption in-progress. Cannot perform recovery."
msgstr "Probíhá přešifrování. Obnovu nelze provést."
#: lib/luks2/luks2_reencrypt.c:3012
#: lib/luks2/luks2_reencrypt.c:3016
msgid "LUKS2 reencryption already initialized in metadata."
msgstr "V metadatech je přešifrování LUKS2 již inicializováno."
#: lib/luks2/luks2_reencrypt.c:3019
#: lib/luks2/luks2_reencrypt.c:3023
msgid "Failed to initialize LUKS2 reencryption in metadata."
msgstr "Inicializace přešifrování LUKS2 v metadatech selhala."
#: lib/luks2/luks2_reencrypt.c:3110
#: lib/luks2/luks2_reencrypt.c:3114
msgid "Failed to set device segments for next reencryption hotzone."
msgstr "Nastavení segmentů zařízení pro další horkou zónu přešifrování selhalo."
#: lib/luks2/luks2_reencrypt.c:3152
#: lib/luks2/luks2_reencrypt.c:3156
msgid "Failed to write reencryption resilience metadata."
msgstr "Metadata pro odolnost při přešifrování se nepodařilo zapsat."
#: lib/luks2/luks2_reencrypt.c:3159
#: lib/luks2/luks2_reencrypt.c:3163
msgid "Decryption failed."
msgstr "Rozšifrování selhalo."
#: lib/luks2/luks2_reencrypt.c:3164
#: lib/luks2/luks2_reencrypt.c:3168
#, c-format
msgid "Failed to write hotzone area starting at %<PRIu64>."
msgstr "Zápis oblasti s horkou zónou počínaje na %<PRIu64> selhal."
#: lib/luks2/luks2_reencrypt.c:3169
#: lib/luks2/luks2_reencrypt.c:3173
msgid "Failed to sync data."
msgstr "Synchronizace dat selhala."
#: lib/luks2/luks2_reencrypt.c:3177
#: lib/luks2/luks2_reencrypt.c:3181
msgid "Failed to update metadata after current reencryption hotzone completed."
msgstr "Po dokončení přešifrování aktuální horké zóny se nepodařilo aktualizovat metadata."
#: lib/luks2/luks2_reencrypt.c:3244
#: lib/luks2/luks2_reencrypt.c:3248
msgid "Failed to write LUKS2 metadata."
msgstr "Zápis metadat LUKS2 selhal."
#: lib/luks2/luks2_reencrypt.c:3267
#: lib/luks2/luks2_reencrypt.c:3271
msgid "Failed to wipe backup segment data."
msgstr "Vyčištění dat záložní části selhalo."
#: lib/luks2/luks2_reencrypt.c:3280
#: lib/luks2/luks2_reencrypt.c:3284
msgid "Failed to disable reencryption requirement flag."
msgstr "Vypnutí příznaku požadavku na přešifrování selhalo."
#: lib/luks2/luks2_reencrypt.c:3288
#: lib/luks2/luks2_reencrypt.c:3292
#, c-format
msgid "Fatal error while reencrypting chunk starting at %<PRIu64>, %<PRIu64> sectors long."
msgstr "Nepřekonatelná chyba při přešifrování bloku na pozici %<PRIu64> dlouhého %<PRIu64> sektorů."
#: lib/luks2/luks2_reencrypt.c:3297
#: lib/luks2/luks2_reencrypt.c:3296
msgid "Online reencryption failed."
msgstr "Přešifrování za běhu selhalo."
#: lib/luks2/luks2_reencrypt.c:3301
msgid "Do not resume the device unless replaced with error target manually."
msgstr "Zařízení neprobouzejte, dokud jej ručně nenahradíte chybovým cílem."
#: lib/luks2/luks2_reencrypt.c:3349
#: lib/luks2/luks2_reencrypt.c:3353
msgid "Cannot proceed with reencryption. Unexpected reencryption status."
msgstr "V přešifrování nelze pokračovat. Přešifrování se nachází v nečekaném stavu."
#: lib/luks2/luks2_reencrypt.c:3355
#: lib/luks2/luks2_reencrypt.c:3359
msgid "Missing or invalid reencrypt context."
msgstr "Chybějící nebo neplatný kontext přešifrování."
#: lib/luks2/luks2_reencrypt.c:3362
#: lib/luks2/luks2_reencrypt.c:3366
msgid "Failed to initialize reencryption device stack."
msgstr "Zásobník zařízení k přešifrování se nepodařilo inicializovat."
#: lib/luks2/luks2_reencrypt.c:3381 lib/luks2/luks2_reencrypt.c:3424
#: lib/luks2/luks2_reencrypt.c:3385 lib/luks2/luks2_reencrypt.c:3428
msgid "Failed to update reencryption context."
msgstr "Kontext přešifrování se nepodařilo aktualizovat."
@@ -2215,6 +2229,15 @@ msgstr "Dočasný soubor s hlavičkou %s již existuje. Operace se ruší."
msgid "Cannot create temporary header file %s."
msgstr "Dočasný soubor s hlavičkou %s nelze vytvořit."
#: src/cryptsetup.c:2975
msgid "LUKS2 metadata size is larger than data shift value."
msgstr "Velikost metadat LUKS2 je větší než hodnota posunu dat."
#: src/cryptsetup.c:3007
#, c-format
msgid "Failed to place new header at head of device %s."
msgstr "Umístění nové hlavičky na začátek zařízení %s selhalo."
#: src/cryptsetup.c:3018
#, c-format
msgid "%s/%s is now active and ready for online encryption.\n"
@@ -2955,6 +2978,10 @@ msgstr "Nelze zapsat soubor s protokolem přešifrování."
msgid "Cannot read reencryption log file."
msgstr "Soubor s protokolem přešifrování nelze načíst."
#: src/cryptsetup_reencrypt.c:353
msgid "Wrong log format."
msgstr "Chybný formát protokolu."
#: src/cryptsetup_reencrypt.c:380
#, c-format
msgid "Log file %s exists, resuming reencryption.\n"
@@ -3107,112 +3134,134 @@ msgstr "Přepínač --uuid lze použít jen spolu s přepínačem --decrypt."
msgid "Invalid luks type. Use one of these: 'luks', 'luks1' or 'luks2'."
msgstr "Neplatný druh LUKS. Použijte jeden z: „luks“, „luks1“ nebo „luks2“"
#: src/utils_tools.c:126
#: src/utils_tools.c:119
msgid ""
"\n"
"WARNING!\n"
"========\n"
msgstr ""
"\n"
"POZOR!\n"
"======\n"
#. TRANSLATORS: User must type "YES" (in capital letters), do not translate this word.
#: src/utils_tools.c:121
#, c-format
msgid ""
"%s\n"
"\n"
"Are you sure? (Type 'yes' in capital letters): "
msgstr ""
"%s\n"
"\n"
"Jste si jisti? (Napište „yes“ velkými písmeny): "
#: src/utils_tools.c:127
msgid "Error reading response from terminal."
msgstr "Chyba při čtení odpovědi z terminálu."
#: src/utils_tools.c:158
#: src/utils_tools.c:159
msgid "Command successful."
msgstr "Příkaz úspěšně vykonán."
#: src/utils_tools.c:166
#: src/utils_tools.c:167
msgid "wrong or missing parameters"
msgstr "špatné nebo chybějící parametry"
#: src/utils_tools.c:168
#: src/utils_tools.c:169
msgid "no permission or bad passphrase"
msgstr "žádné oprávnění nebo chybné heslo"
#: src/utils_tools.c:170
#: src/utils_tools.c:171
msgid "out of memory"
msgstr "nedostatek paměti"
#: src/utils_tools.c:172
#: src/utils_tools.c:173
msgid "wrong device or file specified"
msgstr "zadáno špatné zařízení nebo soubor"
#: src/utils_tools.c:174
#: src/utils_tools.c:175
msgid "device already exists or device is busy"
msgstr "zařízení již existuje nebo zařízení je zaneprázdněno"
#: src/utils_tools.c:176
#: src/utils_tools.c:177
msgid "unknown error"
msgstr "neznámá chyba"
#: src/utils_tools.c:178
#: src/utils_tools.c:179
#, c-format
msgid "Command failed with code %i (%s)."
msgstr "Příkaz selhal s kódem %i (%s)."
#: src/utils_tools.c:256
#: src/utils_tools.c:257
#, c-format
msgid "Key slot %i created."
msgstr "Pozice klíče %i vytvořena."
#: src/utils_tools.c:258
#: src/utils_tools.c:259
#, c-format
msgid "Key slot %i unlocked."
msgstr "Pozice klíče %i odemknuta."
#: src/utils_tools.c:260
#: src/utils_tools.c:261
#, c-format
msgid "Key slot %i removed."
msgstr "Pozice klíče %i odemknuta."
#: src/utils_tools.c:269
#: src/utils_tools.c:270
#, c-format
msgid "Token %i created."
msgstr "Token %i vytvořen."
#: src/utils_tools.c:271
#: src/utils_tools.c:272
#, c-format
msgid "Token %i removed."
msgstr "Token %i se odstraněn."
#: src/utils_tools.c:281
#: src/utils_tools.c:282
msgid "No token could be unlocked with this PIN."
msgstr "Tímto PIN nebylo možné odemknou žádný token."
#: src/utils_tools.c:283
#: src/utils_tools.c:284
#, c-format
msgid "Token %i requires PIN."
msgstr "Token %i vyžaduje PIN."
#: src/utils_tools.c:285
#: src/utils_tools.c:286
#, c-format
msgid "Token (type %s) requires PIN."
msgstr "Token (druh %s) vyžaduje PIN."
#: src/utils_tools.c:288
#: src/utils_tools.c:289
#, c-format
msgid "Token %i cannot unlock assigned keyslot(s) (wrong keyslot passphrase)."
msgstr "Token %i nedokáže odemknout přiřazené pozice s klíči (chybné heslo pozice)."
#: src/utils_tools.c:290
#: src/utils_tools.c:291
#, c-format
msgid "Token (type %s) cannot unlock assigned keyslot(s) (wrong keyslot passphrase)."
msgstr "Token (druh %s) nedokáže odemknout přiřazené pozice s klíči (chybné heslo pozice)."
#: src/utils_tools.c:293
#: src/utils_tools.c:294
#, c-format
msgid "Token %i requires additional missing resource."
msgstr "Token %i vyžaduje dodatečné chybějící zdroje."
#: src/utils_tools.c:295
#: src/utils_tools.c:296
#, c-format
msgid "Token (type %s) requires additional missing resource."
msgstr "Token (druh %s) vyžaduje dodatečné chybějící zdroje."
#: src/utils_tools.c:298
#: src/utils_tools.c:299
#, c-format
msgid "No usable token (type %s) is available."
msgstr "Žádný token (druhu %s) není dostupný."
#: src/utils_tools.c:300
#: src/utils_tools.c:301
msgid "No usable token is available."
msgstr "Není dostupný žádný použitelný token."
#: src/utils_tools.c:462
#: src/utils_tools.c:463
msgid ""
"\n"
"Wipe interrupted."
@@ -3220,7 +3269,7 @@ msgstr ""
"\n"
"Výmaz přerušen."
#: src/utils_tools.c:491
#: src/utils_tools.c:492
msgid ""
"\n"
"Reencryption interrupted."
@@ -3228,6 +3277,27 @@ msgstr ""
"\n"
"Přešifrování přerušeno."
#: src/utils_tools.c:511
#, c-format
msgid "Cannot read keyfile %s."
msgstr "Soubor s klíčem %s nelze číst."
# FIXME: Pluralize
#: src/utils_tools.c:516
#, c-format
msgid "Cannot read %d bytes from keyfile %s."
msgstr "Ze souboru s klíčem %2$s nelze přečíst %1$d bajtů."
#: src/utils_tools.c:541
#, c-format
msgid "Cannot open keyfile %s for write."
msgstr "Soubor s klíčem %s nelze otevřít pro zápis."
#: src/utils_tools.c:548
#, c-format
msgid "Cannot write to keyfile %s."
msgstr "Do souboru s klíčem %s nelze zapsat."
#: src/utils_password.c:41 src/utils_password.c:74
#, c-format
msgid "Cannot check password quality: %s"
@@ -3281,27 +3351,6 @@ msgstr "S tímto heslem není dostupný žádný klíč."
msgid "No usable keyslot is available."
msgstr "Nejsou dostupné žádné použitelné pozice s klíči."
#: src/utils_password.c:335
#, c-format
msgid "Cannot read keyfile %s."
msgstr "Soubor s klíčem %s nelze číst."
# FIXME: Pluralize
#: src/utils_password.c:340
#, c-format
msgid "Cannot read %d bytes from keyfile %s."
msgstr "Ze souboru s klíčem %2$s nelze přečíst %1$d bajtů."
#: src/utils_password.c:365
#, c-format
msgid "Cannot open keyfile %s for write."
msgstr "Soubor s klíčem %s nelze otevřít pro zápis."
#: src/utils_password.c:372
#, c-format
msgid "Cannot write to keyfile %s."
msgstr "Do souboru s klíčem %s nelze zapsat."
#: src/utils_luks2.c:47
#, c-format
msgid "Failed to open file %s in read-only mode."
@@ -3369,6 +3418,16 @@ msgstr "Zařízení %s se používá. K formátování nelze přikročit."
msgid "Failed to open file %s in read/write mode."
msgstr "Soubor %s nebylo možné otevřít pro čtení i zápis."
#: src/utils_blockdev.c:294
#, c-format
msgid "Existing '%s' partition signature on device %s will be wiped."
msgstr "Existující vzorec oddílu „%s“ na zařízení %s bude vymazán."
#: src/utils_blockdev.c:297
#, c-format
msgid "Existing '%s' superblock signature on device %s will be wiped."
msgstr "Existující vzorec superbloku „%s“ na zařízení %s bude vymazán."
#: src/utils_blockdev.c:300
msgid "Failed to wipe device signature."
msgstr "Odstranění vzorce ze zařízení selhalo."
@@ -4083,12 +4142,6 @@ msgstr "Chyba při autentizaci veřejným klíčem: "
#~ msgid "Type of LUKS metadata: luks1, luks2"
#~ msgstr "Druh metadat LUKS: luks1, luks2"
#~ msgid "Existing '%s' partition signature (offset: %<PRIi64> bytes) on device %s will be wiped."
#~ msgstr "Existující vzorec „%s“ oddílu (poloha: %<PRIi64> bajtů) na zařízení %s bude vymazán."
#~ msgid "Existing '%s' superblock signature (offset: %<PRIi64> bytes) on device %s will be wiped."
#~ msgstr "Existující vzorec superbloku „%s“ (poloha: %<PRIi64> bajtů) na zařízení %s bude vymazán."
#~ msgid "WARNING: Locking directory %s/%s is missing!\n"
#~ msgstr "POZOR: Adresář se zámkem %s/%s chybí!\n"

285
po/de.po
View File

@@ -5,10 +5,10 @@
#
msgid ""
msgstr ""
"Project-Id-Version: cryptsetup 2.4.1-rc0\n"
"Project-Id-Version: cryptsetup 2.4.2-rc0\n"
"Report-Msgid-Bugs-To: dm-crypt@saout.de\n"
"POT-Creation-Date: 2021-08-30 12:40+0200\n"
"PO-Revision-Date: 2021-08-30 20:47+0200\n"
"POT-Creation-Date: 2021-11-11 19:08+0100\n"
"PO-Revision-Date: 2021-11-13 21:05+0100\n"
"Last-Translator: Roland Illig <roland.illig@gmx.de>\n"
"Language-Team: German <translation-team-de@lists.sourceforge.net>\n"
"Language: de\n"
@@ -36,45 +36,45 @@ msgstr "Verlangter »deferred«-Schalter wird nicht unterstützt."
msgid "DM-UUID for device %s was truncated."
msgstr "DM-UUID für Gerät »%s« wurde verkürzt."
#: lib/libdevmapper.c:1570
#: lib/libdevmapper.c:1567
msgid "Unknown dm target type."
msgstr "Unbekannte Art des dm-Ziels."
#: lib/libdevmapper.c:1691 lib/libdevmapper.c:1696 lib/libdevmapper.c:1760
#: lib/libdevmapper.c:1763
#: lib/libdevmapper.c:1688 lib/libdevmapper.c:1693 lib/libdevmapper.c:1757
#: lib/libdevmapper.c:1760
msgid "Requested dm-crypt performance options are not supported."
msgstr "Die verlangten dm-crypt-Performance-Optionen werden nicht unterstützt."
#: lib/libdevmapper.c:1703 lib/libdevmapper.c:1707
#: lib/libdevmapper.c:1700 lib/libdevmapper.c:1704
msgid "Requested dm-verity data corruption handling options are not supported."
msgstr "Die verlangten dm-verity-Datenbeschädigungs-Optionen werden nicht unterstützt."
#: lib/libdevmapper.c:1711
#: lib/libdevmapper.c:1708
msgid "Requested dm-verity FEC options are not supported."
msgstr "Die verlangten dm-verity-FEC-Optionen werden nicht unterstützt."
#: lib/libdevmapper.c:1715
#: lib/libdevmapper.c:1712
msgid "Requested data integrity options are not supported."
msgstr "Die verlangten Datenintegritäts-Optionen werden nicht unterstützt."
#: lib/libdevmapper.c:1717
#: lib/libdevmapper.c:1714
msgid "Requested sector_size option is not supported."
msgstr "Die verlangte sector_size-Option wird nicht unterstützt."
#: lib/libdevmapper.c:1722 lib/libdevmapper.c:1726
#: lib/libdevmapper.c:1719 lib/libdevmapper.c:1723
msgid "Requested automatic recalculation of integrity tags is not supported."
msgstr "Die verlangte automatische Berechnung der Integritätsangaben wird nicht unterstützt."
#: lib/libdevmapper.c:1730 lib/libdevmapper.c:1766 lib/libdevmapper.c:1769
#: lib/libdevmapper.c:1727 lib/libdevmapper.c:1763 lib/libdevmapper.c:1766
#: lib/luks2/luks2_json_metadata.c:2204
msgid "Discard/TRIM is not supported."
msgstr "»Discard/TRIM« wird nicht unterstützt."
#: lib/libdevmapper.c:1734
#: lib/libdevmapper.c:1731
msgid "Requested dm-integrity bitmap mode is not supported."
msgstr "Der verlangte Bitmap-Modus für dm-Integrität wird nicht unterstützt."
#: lib/libdevmapper.c:2708
#: lib/libdevmapper.c:2705
#, c-format
msgid "Failed to query dm-%s segment."
msgstr "Fehler beim Abfragen des »dm-%s«-Segments."
@@ -138,7 +138,7 @@ msgstr "Diese Operation wird nur für LUKS-Geräte unterstützt."
msgid "This operation is supported only for LUKS2 device."
msgstr "Diese Operation wird nur für LUKS2-Geräte unterstützt."
#: lib/setup.c:420 lib/luks2/luks2_reencrypt.c:2436
#: lib/setup.c:420 lib/luks2/luks2_reencrypt.c:2440
msgid "All key slots full."
msgstr "Alle Schlüsselfächer sind voll."
@@ -201,7 +201,7 @@ msgstr "UUID wird für diese Verschlüsselungsart nicht unterstützt."
msgid "Detached metadata device is not supported for this crypt type."
msgstr "Gerät für separierte Metadaten wird für diese Verschlüsselungsart nicht unterstützt."
#: lib/setup.c:1552 lib/setup.c:1754 lib/luks2/luks2_reencrypt.c:2397
#: lib/setup.c:1552 lib/setup.c:1754 lib/luks2/luks2_reencrypt.c:2401
#: src/cryptsetup.c:1358 src/cryptsetup.c:3723
msgid "Unsupported encryption sector size."
msgstr "Nicht unterstützte Sektorengröße für Verschlüsselung."
@@ -251,7 +251,7 @@ msgid "WARNING: LUKS2 keyslots area size changed to %<PRIu64> bytes.\n"
msgstr "Warnung: Größe des LUKS2-Schlüsselfachbereichs wurde auf %<PRIu64> Bytes geändert.\n"
#: lib/setup.c:1915 lib/utils_device.c:909 lib/luks1/keyencryption.c:255
#: lib/luks2/luks2_reencrypt.c:2447 lib/luks2/luks2_reencrypt.c:3484
#: lib/luks2/luks2_reencrypt.c:2451 lib/luks2/luks2_reencrypt.c:3488
#, c-format
msgid "Device %s is too small."
msgstr "Gerät »%s« ist zu klein."
@@ -328,8 +328,8 @@ msgstr "Unbekannte Art des Verschlüsselungsgeräts »%s« verlangt."
msgid "Unsupported parameters on device %s."
msgstr "Nicht unterstützte Parameter für Gerät %s."
#: lib/setup.c:2622 lib/setup.c:2708 lib/luks2/luks2_reencrypt.c:2499
#: lib/luks2/luks2_reencrypt.c:2843
#: lib/setup.c:2622 lib/setup.c:2708 lib/luks2/luks2_reencrypt.c:2503
#: lib/luks2/luks2_reencrypt.c:2847
#, c-format
msgid "Mismatching parameters on device %s."
msgstr "Parameter für Gerät %s sind durcheinander."
@@ -339,7 +339,7 @@ msgid "Crypt devices mismatch."
msgstr "Verschlüsselungsgeräte passen nicht zusammen."
#: lib/setup.c:2765 lib/setup.c:2770 lib/luks2/luks2_reencrypt.c:2143
#: lib/luks2/luks2_reencrypt.c:3251
#: lib/luks2/luks2_reencrypt.c:3255
#, c-format
msgid "Failed to reload device %s."
msgstr "Gerät »%s« konnte nicht neugeladen werden."
@@ -351,7 +351,7 @@ msgid "Failed to suspend device %s."
msgstr "Gerät »%s« konnte nicht stillgelegt werden."
#: lib/setup.c:2788 lib/luks2/luks2_reencrypt.c:2128
#: lib/luks2/luks2_reencrypt.c:3186 lib/luks2/luks2_reencrypt.c:3255
#: lib/luks2/luks2_reencrypt.c:3190 lib/luks2/luks2_reencrypt.c:3259
#, c-format
msgid "Failed to resume device %s."
msgstr "Gerät »%s« konnte nicht fortgesetzt werden."
@@ -446,11 +446,11 @@ msgid "Reencryption in-progress. Cannot activate device."
msgstr "Wiederverschlüsselung läuft bereits. Das Gerät kann nicht aktiviert werden."
#: lib/setup.c:4091 lib/luks2/luks2_json_metadata.c:2287
#: lib/luks2/luks2_reencrypt.c:2942
#: lib/luks2/luks2_reencrypt.c:2946
msgid "Failed to get reencryption lock."
msgstr "Fehler beim Zugriff auf die Sperre zur Wiederverschlüsselung."
#: lib/setup.c:4104 lib/luks2/luks2_reencrypt.c:2961
#: lib/setup.c:4104 lib/luks2/luks2_reencrypt.c:2965
msgid "LUKS2 reencryption recovery failed."
msgstr "Fehler beim Wiederherstellen der LUKS2-Wiederverschlüsselung."
@@ -553,7 +553,7 @@ msgstr "Schlüsselfach %d konnte nicht dem Digest zugeordnet werden."
msgid "Kernel keyring is not supported by the kernel."
msgstr "Der Kernel-Schlüsselbund wird vom Kernel nicht unterstützt."
#: lib/setup.c:6161 lib/luks2/luks2_reencrypt.c:3058
#: lib/setup.c:6161 lib/luks2/luks2_reencrypt.c:3062
#, c-format
msgid "Failed to read passphrase from keyring (error %d)."
msgstr "Fehler beim Lesen der Passphrase vom Schlüsselbund (Fehler %d)."
@@ -1136,6 +1136,16 @@ msgstr "Unerwartete Art »%u« des Metadaten-Eintrags beim Parsen des externen S
msgid "Unexpected metadata entry value '%u' found when parsing external key."
msgstr "Unerwarteter Metadaten-Eintrag »%u« beim Einlesen des externen Schlüssels gefunden."
#: lib/bitlk/bitlk.c:950
#, c-format
msgid "Unsupported BEK metadata version %<PRIu32>"
msgstr "Nicht unterstützte BEK-Metadatenversion %<PRIu32>"
#: lib/bitlk/bitlk.c:955
#, c-format
msgid "Unexpected BEK metadata size %<PRIu32> does not match BEK file length"
msgstr "Unerwartete BEK-Metadatengröße %<PRIu32> stimmt nicht mit BEK-Dateilänge überein"
#: lib/bitlk/bitlk.c:980
msgid "Unexpected metadata entry found when parsing startup key."
msgstr "Unerwartete Art »%u« des Metadaten-Eintrags beim Einlesen des Startschlüssels gefunden."
@@ -1320,17 +1330,17 @@ msgstr "Kernel unterstützt feste Ausrichtung der Metadaten für dm-integrity ni
msgid "Kernel refuses to activate insecure recalculate option (see legacy activation options to override)."
msgstr "Der Kernel weigert sich, die unsichere Neuberechnungs-Option zu aktivieren. Um dies zu übersteuern, können Sie die veralteten Aktivierungsoptionen nutzen."
#: lib/luks2/luks2_disk_metadata.c:381 lib/luks2/luks2_json_metadata.c:973
#: lib/luks2/luks2_disk_metadata.c:393 lib/luks2/luks2_json_metadata.c:973
#: lib/luks2/luks2_json_metadata.c:1268
#, c-format
msgid "Failed to acquire write lock on device %s."
msgstr "Fehler beim exklusiven Schreibzugriff auf Gerät »%s«."
#: lib/luks2/luks2_disk_metadata.c:390
#: lib/luks2/luks2_disk_metadata.c:402
msgid "Detected attempt for concurrent LUKS2 metadata update. Aborting operation."
msgstr "Es wurde ein Versuch erkannt, die LUKS2-Metadaten nebenläufig zu ändern. Die Operation wird abgebrochen."
#: lib/luks2/luks2_disk_metadata.c:689 lib/luks2/luks2_disk_metadata.c:710
#: lib/luks2/luks2_disk_metadata.c:701 lib/luks2/luks2_disk_metadata.c:722
msgid ""
"Device contains ambiguous signatures, cannot auto-recover LUKS2.\n"
"Please run \"cryptsetup repair\" for recovery."
@@ -1405,7 +1415,7 @@ msgstr ""
msgid "Ignored unknown flag %s."
msgstr "Unbekannter Schalter »%s« wird ignoriert."
#: lib/luks2/luks2_json_metadata.c:2054 lib/luks2/luks2_reencrypt.c:1840
#: lib/luks2/luks2_json_metadata.c:2054 lib/luks2/luks2_reencrypt.c:1843
#, c-format
msgid "Missing key for dm-crypt segment %u"
msgstr "Fehlender Schlüssel für dm-crypt-Segment %u"
@@ -1426,7 +1436,7 @@ msgstr "Nicht unterstützte Konfiguration für Geräteintegrität."
msgid "Reencryption in-progress. Cannot deactivate device."
msgstr "Wiederverschlüsselung läuft gerade. Das Gerät kann nicht deaktiviert werden."
#: lib/luks2/luks2_json_metadata.c:2296 lib/luks2/luks2_reencrypt.c:3296
#: lib/luks2/luks2_json_metadata.c:2296 lib/luks2/luks2_reencrypt.c:3300
#, c-format
msgid "Failed to replace suspended device %s with dm-error target."
msgstr "Das stillgelegte Gerät »%s« mit dm-error-Ziel konnte nicht in den Fehlerzustand gesetzt werden."
@@ -1460,7 +1470,7 @@ msgstr "Fehler beim Öffnen des Schlüsselfachs."
msgid "Cannot use %s-%s cipher for keyslot encryption."
msgstr "Der Algorithmus %s-%s kann nicht für Schlüsselfach-Verschlüsselung verwendet werden."
#: lib/luks2/luks2_keyslot_luks2.c:483
#: lib/luks2/luks2_keyslot_luks2.c:485
msgid "No space for new keyslot."
msgstr "Nicht genug Speicherplatz für neues Schlüsselfach."
@@ -1535,7 +1545,7 @@ msgstr "Nicht unterstützter Modus »%s« für Widerstandsfähigkeit"
#: lib/luks2/luks2_reencrypt.c:1259 lib/luks2/luks2_reencrypt.c:1414
#: lib/luks2/luks2_reencrypt.c:1497 lib/luks2/luks2_reencrypt.c:1531
#: lib/luks2/luks2_reencrypt.c:3136
#: lib/luks2/luks2_reencrypt.c:3140
msgid "Failed to initialize old segment storage wrapper."
msgstr "Fehler beim Initialisieren der Umverpackung für den Speicher alter Segmente."
@@ -1547,7 +1557,7 @@ msgstr "Fehler beim Initialisieren der Umverpackung für den Speicher neuer Segm
msgid "Failed to read checksums for current hotzone."
msgstr "Fehler beim Lesen der Prüfsummen für die aktuelle Hotzone."
#: lib/luks2/luks2_reencrypt.c:1448 lib/luks2/luks2_reencrypt.c:3144
#: lib/luks2/luks2_reencrypt.c:1448 lib/luks2/luks2_reencrypt.c:3148
#, c-format
msgid "Failed to read hotzone area starting at %<PRIu64>."
msgstr "Fehler beim Lesen des Hotzone-Bereichs, der bei %<PRIu64> beginnt."
@@ -1586,138 +1596,142 @@ msgstr "Fehler beim Laden der neuen Zuordnung für Gerät »%s«."
msgid "Failed to refresh reencryption devices stack."
msgstr "Fehler beim Auffrischen des Gerätestapels für Wiederverschlüsselung."
#: lib/luks2/luks2_reencrypt.c:2305
#: lib/luks2/luks2_reencrypt.c:2309
msgid "Failed to set new keyslots area size."
msgstr "Fehler beim Festlegen der neuen Bereichsgröße für Schlüsselfächer."
#: lib/luks2/luks2_reencrypt.c:2409
#: lib/luks2/luks2_reencrypt.c:2413
#, c-format
msgid "Data shift is not aligned to requested encryption sector size (%<PRIu32> bytes)."
msgstr "Datenverschiebung ist nicht an der angeforderten Verschlüsselungs-Sektorgröße (%<PRIu32> Bytes) ausgerichtet."
#: lib/luks2/luks2_reencrypt.c:2430
#: lib/luks2/luks2_reencrypt.c:2434
#, c-format
msgid "Data device is not aligned to requested encryption sector size (%<PRIu32> bytes)."
msgstr "Datengerät ist nicht an der angeforderten Verschlüsselungs-Sektorgröße (%<PRIu32> Bytes) ausgerichtet."
#: lib/luks2/luks2_reencrypt.c:2451
#: lib/luks2/luks2_reencrypt.c:2455
#, c-format
msgid "Data shift (%<PRIu64> sectors) is less than future data offset (%<PRIu64> sectors)."
msgstr "Datenverschiebung (%<PRIu64> Sektoren) ist weniger als der zukünftige Datenoffset (%<PRIu64> Sektoren)."
#: lib/luks2/luks2_reencrypt.c:2457 lib/luks2/luks2_reencrypt.c:2885
#: lib/luks2/luks2_reencrypt.c:2906
#: lib/luks2/luks2_reencrypt.c:2461 lib/luks2/luks2_reencrypt.c:2889
#: lib/luks2/luks2_reencrypt.c:2910
#, c-format
msgid "Failed to open %s in exclusive mode (already mapped or mounted)."
msgstr "Fehler beim exklusiven Öffnen von »%s« (wird bereits anderweitig benutzt)."
#: lib/luks2/luks2_reencrypt.c:2625
#: lib/luks2/luks2_reencrypt.c:2629
msgid "Device not marked for LUKS2 reencryption."
msgstr "Das Gerät ist nicht für LUKS2-Wiederverschlüsselung markiert."
#: lib/luks2/luks2_reencrypt.c:2631 lib/luks2/luks2_reencrypt.c:3411
#: lib/luks2/luks2_reencrypt.c:2635 lib/luks2/luks2_reencrypt.c:3415
msgid "Failed to load LUKS2 reencryption context."
msgstr "Fehler beim Laden des LUKS2-Wiederverschlüsselungs-Kontextes."
#: lib/luks2/luks2_reencrypt.c:2711
#: lib/luks2/luks2_reencrypt.c:2715
msgid "Failed to get reencryption state."
msgstr "Fehler beim Einlesen des Wiederverschlüsselungs-Zustands."
#: lib/luks2/luks2_reencrypt.c:2715
#: lib/luks2/luks2_reencrypt.c:2719
msgid "Device is not in reencryption."
msgstr "Das Gerät befindet sich nicht in der Wiederverschlüsselung."
#: lib/luks2/luks2_reencrypt.c:2722
#: lib/luks2/luks2_reencrypt.c:2726
msgid "Reencryption process is already running."
msgstr "Der Wiederverschlüsselungs-Vorgang läuft bereits."
#: lib/luks2/luks2_reencrypt.c:2724
#: lib/luks2/luks2_reencrypt.c:2728
msgid "Failed to acquire reencryption lock."
msgstr "Fehler beim Zugriff auf die Schreibsperre für die Wiederverschlüsselung."
#: lib/luks2/luks2_reencrypt.c:2742
#: lib/luks2/luks2_reencrypt.c:2746
msgid "Cannot proceed with reencryption. Run reencryption recovery first."
msgstr "Wiederverschlüsselung kann nicht fortgesetzt werden. Führen Sie zuerst die Wiederverschlüsselungs-Wiederherstellung durch."
#: lib/luks2/luks2_reencrypt.c:2856
#: lib/luks2/luks2_reencrypt.c:2860
msgid "Active device size and requested reencryption size don't match."
msgstr "Aktive Gerätegröße und angeforderte Wiederverschlüsselungsgröße passen nicht zusammen."
#: lib/luks2/luks2_reencrypt.c:2870
#: lib/luks2/luks2_reencrypt.c:2874
msgid "Illegal device size requested in reencryption parameters."
msgstr "Ungültige Gerätegröße wurde in den Wiederverschlüsselungsparametern angefordert."
#: lib/luks2/luks2_reencrypt.c:2940
#: lib/luks2/luks2_reencrypt.c:2944
msgid "Reencryption in-progress. Cannot perform recovery."
msgstr "Wiederverschlüsselung läuft bereits. Wiederherstellung ist nicht möglich."
#: lib/luks2/luks2_reencrypt.c:3012
#: lib/luks2/luks2_reencrypt.c:3016
msgid "LUKS2 reencryption already initialized in metadata."
msgstr "LUKS2-Wiederverschlüsselung ist in den Metadaten bereits initialisiert."
#: lib/luks2/luks2_reencrypt.c:3019
#: lib/luks2/luks2_reencrypt.c:3023
msgid "Failed to initialize LUKS2 reencryption in metadata."
msgstr "LUKS2-Wiederverschlüsselung konnte in den Metadaten nicht initialisiert werden."
#: lib/luks2/luks2_reencrypt.c:3110
#: lib/luks2/luks2_reencrypt.c:3114
msgid "Failed to set device segments for next reencryption hotzone."
msgstr "Fehler beim Festlegen der Gerätesegmente für die nächste Wiederverschlüsselungs-Hotzone."
#: lib/luks2/luks2_reencrypt.c:3152
#: lib/luks2/luks2_reencrypt.c:3156
msgid "Failed to write reencryption resilience metadata."
msgstr "Fehler beim Schreiben der Metadaten für robuste Wiederverschlüsselung."
#: lib/luks2/luks2_reencrypt.c:3159
#: lib/luks2/luks2_reencrypt.c:3163
msgid "Decryption failed."
msgstr "Fehler beim Entschlüsseln."
#: lib/luks2/luks2_reencrypt.c:3164
#: lib/luks2/luks2_reencrypt.c:3168
#, c-format
msgid "Failed to write hotzone area starting at %<PRIu64>."
msgstr "Fehler beim Schreiben des Hotzone-Bereichs, der bei %<PRIu64> beginnt."
#: lib/luks2/luks2_reencrypt.c:3169
#: lib/luks2/luks2_reencrypt.c:3173
msgid "Failed to sync data."
msgstr "Fehler beim Synchronisieren von Daten."
#: lib/luks2/luks2_reencrypt.c:3177
#: lib/luks2/luks2_reencrypt.c:3181
msgid "Failed to update metadata after current reencryption hotzone completed."
msgstr "Fehler beim Aktualisieren der Metadaten, nachdem die aktuelle Wiederverschlüsselungs-Hotzone beendet wurde."
#: lib/luks2/luks2_reencrypt.c:3244
#: lib/luks2/luks2_reencrypt.c:3248
msgid "Failed to write LUKS2 metadata."
msgstr "Fehler beim Schreiben der LUKS2-Metadaten."
#: lib/luks2/luks2_reencrypt.c:3267
#: lib/luks2/luks2_reencrypt.c:3271
msgid "Failed to wipe backup segment data."
msgstr "Fehler beim gründlichen Löschen der Backupsegmentdaten."
#: lib/luks2/luks2_reencrypt.c:3280
#: lib/luks2/luks2_reencrypt.c:3284
msgid "Failed to disable reencryption requirement flag."
msgstr "Fehler beim Deaktivieren der Wiederverschlüsselungsanforderung."
#: lib/luks2/luks2_reencrypt.c:3288
#: lib/luks2/luks2_reencrypt.c:3292
#, c-format
msgid "Fatal error while reencrypting chunk starting at %<PRIu64>, %<PRIu64> sectors long."
msgstr "Schwerwiegender Fehler beim Wiederverschlüsseln des Blocks bei %<PRIu64>, %<PRIu64> Sektoren lang."
#: lib/luks2/luks2_reencrypt.c:3297
#: lib/luks2/luks2_reencrypt.c:3296
msgid "Online reencryption failed."
msgstr "Fehler bei Online-Wiederverschlüsselung."
#: lib/luks2/luks2_reencrypt.c:3301
msgid "Do not resume the device unless replaced with error target manually."
msgstr "Das Gerät nicht fortsetzen, außer es wird manuell durch das Fehlerziel ersetzt."
#: lib/luks2/luks2_reencrypt.c:3349
#: lib/luks2/luks2_reencrypt.c:3353
msgid "Cannot proceed with reencryption. Unexpected reencryption status."
msgstr "Wiederverschlüsselung kann nicht fortgesetzt werden. Unerwarteter Zustand der Wiederverschlüsselung."
#: lib/luks2/luks2_reencrypt.c:3355
#: lib/luks2/luks2_reencrypt.c:3359
msgid "Missing or invalid reencrypt context."
msgstr "Fehlender oder ungültiger Wiederverschlüsselungs-Kontext."
#: lib/luks2/luks2_reencrypt.c:3362
#: lib/luks2/luks2_reencrypt.c:3366
msgid "Failed to initialize reencryption device stack."
msgstr "Fehler beim Initialisieren des Gerätestapels für Wiederverschlüsselung."
#: lib/luks2/luks2_reencrypt.c:3381 lib/luks2/luks2_reencrypt.c:3424
#: lib/luks2/luks2_reencrypt.c:3385 lib/luks2/luks2_reencrypt.c:3428
msgid "Failed to update reencryption context."
msgstr "Fehler beim Aktualisieren des Wiederverschlüsselungskontexts."
@@ -2192,6 +2206,15 @@ msgstr "Temporäre Headerdatei »%s« existiert bereits. Wird abgebrochen."
msgid "Cannot create temporary header file %s."
msgstr "Fehler beim Anlegen der temporären Headerdatei »%s«."
#: src/cryptsetup.c:2975
msgid "LUKS2 metadata size is larger than data shift value."
msgstr "Die Größe der LUKS2-Metadaten ist größer als der Wert der Datenverschiebung."
#: src/cryptsetup.c:3007
#, c-format
msgid "Failed to place new header at head of device %s."
msgstr "Der neue Header konnte nicht am Kopf des Geräts %s platziert werden."
#: src/cryptsetup.c:3018
#, c-format
msgid "%s/%s is now active and ready for online encryption.\n"
@@ -2925,6 +2948,10 @@ msgstr "Fehler beim Speichern der Wiederverschlüsselungs-Logdatei."
msgid "Cannot read reencryption log file."
msgstr "Fehler beim Einlesen der Wiederverschlüsselungs-Logdatei."
#: src/cryptsetup_reencrypt.c:353
msgid "Wrong log format."
msgstr "Falsches Protokollformat."
#: src/cryptsetup_reencrypt.c:380
#, c-format
msgid "Log file %s exists, resuming reencryption.\n"
@@ -3077,112 +3104,134 @@ msgstr "Die Option »--uuid« kann nur zusammen mit »--decrypt« benutzt werden
msgid "Invalid luks type. Use one of these: 'luks', 'luks1' or 'luks2'."
msgstr "Ungültiger LUKS-Typ. Verwenden Sie einen von diesen: luks, luks1, luks2."
#: src/utils_tools.c:126
#: src/utils_tools.c:119
msgid ""
"\n"
"WARNING!\n"
"========\n"
msgstr ""
"\n"
"WARNUNG!\n"
"========\n"
#. TRANSLATORS: User must type "YES" (in capital letters), do not translate this word.
#: src/utils_tools.c:121
#, c-format
msgid ""
"%s\n"
"\n"
"Are you sure? (Type 'yes' in capital letters): "
msgstr ""
"%s\n"
"\n"
"Sind Sie sicher? (Tippen Sie 'yes' in Großbuchstaben): "
#: src/utils_tools.c:127
msgid "Error reading response from terminal."
msgstr "Fehler beim Lesen der Antwort vom Terminal."
#: src/utils_tools.c:158
#: src/utils_tools.c:159
msgid "Command successful."
msgstr "Befehl erfolgreich."
#: src/utils_tools.c:166
#: src/utils_tools.c:167
msgid "wrong or missing parameters"
msgstr "Falsche oder fehlende Parameter"
#: src/utils_tools.c:168
#: src/utils_tools.c:169
msgid "no permission or bad passphrase"
msgstr "Kein Zugriff, oder falsche Passphrase"
#: src/utils_tools.c:170
#: src/utils_tools.c:171
msgid "out of memory"
msgstr "Nicht genug Speicher"
#: src/utils_tools.c:172
#: src/utils_tools.c:173
msgid "wrong device or file specified"
msgstr "Falsches Gerät oder falsche Datei angegeben"
#: src/utils_tools.c:174
#: src/utils_tools.c:175
msgid "device already exists or device is busy"
msgstr "Das Gerät existiert bereits oder wird bereits benutzt"
#: src/utils_tools.c:176
#: src/utils_tools.c:177
msgid "unknown error"
msgstr "Unbekannter Fehler"
#: src/utils_tools.c:178
#: src/utils_tools.c:179
#, c-format
msgid "Command failed with code %i (%s)."
msgstr "Fehler %i beim Ausführen des Befehls »%s«."
#: src/utils_tools.c:256
#: src/utils_tools.c:257
#, c-format
msgid "Key slot %i created."
msgstr "Schlüsselfach %i erstellt."
#: src/utils_tools.c:258
#: src/utils_tools.c:259
#, c-format
msgid "Key slot %i unlocked."
msgstr "Schlüsselfach %i entsperrt."
#: src/utils_tools.c:260
#: src/utils_tools.c:261
#, c-format
msgid "Key slot %i removed."
msgstr "Schlüsselfach %i entfernt."
#: src/utils_tools.c:269
#: src/utils_tools.c:270
#, c-format
msgid "Token %i created."
msgstr "Token %i erstellt."
#: src/utils_tools.c:271
#: src/utils_tools.c:272
#, c-format
msgid "Token %i removed."
msgstr "Token %i entfernt."
#: src/utils_tools.c:281
#: src/utils_tools.c:282
msgid "No token could be unlocked with this PIN."
msgstr "Mit dieser PIN konnte kein Token entsperrt werden."
#: src/utils_tools.c:283
#: src/utils_tools.c:284
#, c-format
msgid "Token %i requires PIN."
msgstr "Token %i benötigt eine PIN."
#: src/utils_tools.c:285
#: src/utils_tools.c:286
#, c-format
msgid "Token (type %s) requires PIN."
msgstr "Token (Art %s) benötigt eine PIN."
#: src/utils_tools.c:288
#: src/utils_tools.c:289
#, c-format
msgid "Token %i cannot unlock assigned keyslot(s) (wrong keyslot passphrase)."
msgstr "Token %i kann zugewiesenes Schlüsselfach nicht freischalten (falsche Schlüsselfach-Passphrase)."
#: src/utils_tools.c:290
#: src/utils_tools.c:291
#, c-format
msgid "Token (type %s) cannot unlock assigned keyslot(s) (wrong keyslot passphrase)."
msgstr "Token (Art %s) kann zugewiesenes Schlüsselfach nicht freischalten (falsche Schlüsselfach-Passphrase)."
#: src/utils_tools.c:293
#: src/utils_tools.c:294
#, c-format
msgid "Token %i requires additional missing resource."
msgstr "Token %i erfordert zusätzliche fehlende Ressource."
#: src/utils_tools.c:295
#: src/utils_tools.c:296
#, c-format
msgid "Token (type %s) requires additional missing resource."
msgstr "Token (Art %s) erfordert zusätzliche fehlende Ressource."
#: src/utils_tools.c:298
#: src/utils_tools.c:299
#, c-format
msgid "No usable token (type %s) is available."
msgstr "Es ist kein verwendbares Token (Art %s) vorhanden."
#: src/utils_tools.c:300
#: src/utils_tools.c:301
msgid "No usable token is available."
msgstr "Es ist kein verwendbares Token verfügbar."
#: src/utils_tools.c:462
#: src/utils_tools.c:463
msgid ""
"\n"
"Wipe interrupted."
@@ -3190,7 +3239,7 @@ msgstr ""
"\n"
"Gründlich löschen unterbrochen."
#: src/utils_tools.c:491
#: src/utils_tools.c:492
msgid ""
"\n"
"Reencryption interrupted."
@@ -3198,6 +3247,26 @@ msgstr ""
"\n"
"Wiederverschlüsselung unterbrochen."
#: src/utils_tools.c:511
#, c-format
msgid "Cannot read keyfile %s."
msgstr "Fehler beim Einlesen der Schlüsseldatei »%s«."
#: src/utils_tools.c:516
#, c-format
msgid "Cannot read %d bytes from keyfile %s."
msgstr "Fehler beim Einlesen von %d Bytes aus der Schlüsseldatei »%s«."
#: src/utils_tools.c:541
#, c-format
msgid "Cannot open keyfile %s for write."
msgstr "Fehler beim Schreiben der Schlüsseldatei »%s«."
#: src/utils_tools.c:548
#, c-format
msgid "Cannot write to keyfile %s."
msgstr "Fehler beim Schreiben der Schlüsseldatei »%s«."
#: src/utils_password.c:41 src/utils_password.c:74
#, c-format
msgid "Cannot check password quality: %s"
@@ -3251,26 +3320,6 @@ msgstr "Kein Schlüssel mit dieser Passphrase verfügbar."
msgid "No usable keyslot is available."
msgstr "Es ist kein nutzbares Schlüsselfach verfügbar."
#: src/utils_password.c:335
#, c-format
msgid "Cannot read keyfile %s."
msgstr "Fehler beim Einlesen der Schlüsseldatei »%s«."
#: src/utils_password.c:340
#, c-format
msgid "Cannot read %d bytes from keyfile %s."
msgstr "Fehler beim Einlesen von %d Bytes aus der Schlüsseldatei »%s«."
#: src/utils_password.c:365
#, c-format
msgid "Cannot open keyfile %s for write."
msgstr "Fehler beim Schreiben der Schlüsseldatei »%s«."
#: src/utils_password.c:372
#, c-format
msgid "Cannot write to keyfile %s."
msgstr "Fehler beim Schreiben der Schlüsseldatei »%s«."
#: src/utils_luks2.c:47
#, c-format
msgid "Failed to open file %s in read-only mode."
@@ -3338,6 +3387,16 @@ msgstr "Gerät %s wird gerade benutzt. Das Formatieren ist gerade nicht möglich
msgid "Failed to open file %s in read/write mode."
msgstr "Datei %s konnte nicht im Lese-/Schreibmodus geöffnet werden."
#: src/utils_blockdev.c:294
#, c-format
msgid "Existing '%s' partition signature on device %s will be wiped."
msgstr "Die bestehende »%s«-Partitionssignatur auf Gerät %s wird gelöscht."
#: src/utils_blockdev.c:297
#, c-format
msgid "Existing '%s' superblock signature on device %s will be wiped."
msgstr "Die bestehende »%s«-Superblocksignatur auf Gerät %s wird gelöscht."
#: src/utils_blockdev.c:300
msgid "Failed to wipe device signature."
msgstr "Fehler beim Löschen der Gerätesignatur."
@@ -4055,12 +4114,6 @@ msgstr "Fehler bei der Authentifizierung mit öffentlichem Schlüssel: "
#~ msgid "Type of LUKS metadata: luks1, luks2"
#~ msgstr "Art der LUKS-Metadaten: luks1, luks2"
#~ msgid "Existing '%s' partition signature (offset: %<PRIi64> bytes) on device %s will be wiped."
#~ msgstr "Die bestehende Partitionssignatur »%s« (Offset: %<PRIi64> Bytes) auf Gerät %s wird dadurch gelöscht."
#~ msgid "Existing '%s' superblock signature (offset: %<PRIi64> bytes) on device %s will be wiped."
#~ msgstr "Die bestehende Superblocksignatur »%s« (Offset: %<PRIi64> Bytes) auf Gerät %s wird dadurch gelöscht."
#~ msgid "WARNING: Locking directory %s/%s is missing!\n"
#~ msgstr "WARNUNG: Zugriffssperren-Verzeichnis %s/%s ist nicht vorhanden!\n"

285
po/fr.po
View File

@@ -7,10 +7,10 @@
# Frédéric Marchal <fmarchal@perso.be>, 2021.
msgid ""
msgstr ""
"Project-Id-Version: cryptsetup 2.4.1-rc0\n"
"Project-Id-Version: cryptsetup 2.4.2-rc0\n"
"Report-Msgid-Bugs-To: dm-crypt@saout.de\n"
"POT-Creation-Date: 2021-08-30 12:40+0200\n"
"PO-Revision-Date: 2021-08-30 18:58+0200\n"
"POT-Creation-Date: 2021-11-11 19:08+0100\n"
"PO-Revision-Date: 2021-11-13 11:00+0100\n"
"Last-Translator: Frédéric Marchal <fmarchal@perso.be>\n"
"Language-Team: French <traduc@traduc.org>\n"
"Language: fr\n"
@@ -37,45 +37,45 @@ msgstr "Le fanion différé demandé n'est pas supporté."
msgid "DM-UUID for device %s was truncated."
msgstr "Le DM-UUID du périphérique %s a été tronqué."
#: lib/libdevmapper.c:1570
#: lib/libdevmapper.c:1567
msgid "Unknown dm target type."
msgstr "Type de cible dm inconnu."
#: lib/libdevmapper.c:1691 lib/libdevmapper.c:1696 lib/libdevmapper.c:1760
#: lib/libdevmapper.c:1763
#: lib/libdevmapper.c:1688 lib/libdevmapper.c:1693 lib/libdevmapper.c:1757
#: lib/libdevmapper.c:1760
msgid "Requested dm-crypt performance options are not supported."
msgstr "Les options de performance dm-crypt demandées ne sont pas supportées."
#: lib/libdevmapper.c:1703 lib/libdevmapper.c:1707
#: lib/libdevmapper.c:1700 lib/libdevmapper.c:1704
msgid "Requested dm-verity data corruption handling options are not supported."
msgstr "Les options demandées de gestion de corruption des données dm-verity ne sont pas supportées."
#: lib/libdevmapper.c:1711
#: lib/libdevmapper.c:1708
msgid "Requested dm-verity FEC options are not supported."
msgstr "Les options dm-verity FEC demandées ne sont pas supportées."
#: lib/libdevmapper.c:1715
#: lib/libdevmapper.c:1712
msgid "Requested data integrity options are not supported."
msgstr "Les options d'intégrité de données demandées ne sont pas supportées."
#: lib/libdevmapper.c:1717
#: lib/libdevmapper.c:1714
msgid "Requested sector_size option is not supported."
msgstr "L'option sector_size demandée n'est pas supportée."
#: lib/libdevmapper.c:1722 lib/libdevmapper.c:1726
#: lib/libdevmapper.c:1719 lib/libdevmapper.c:1723
msgid "Requested automatic recalculation of integrity tags is not supported."
msgstr "Le recalcule automatique des balises de sécurité demandés n'est pas supporté."
#: lib/libdevmapper.c:1730 lib/libdevmapper.c:1766 lib/libdevmapper.c:1769
#: lib/libdevmapper.c:1727 lib/libdevmapper.c:1763 lib/libdevmapper.c:1766
#: lib/luks2/luks2_json_metadata.c:2204
msgid "Discard/TRIM is not supported."
msgstr "Discard/TRIM n'est pas supporté."
#: lib/libdevmapper.c:1734
#: lib/libdevmapper.c:1731
msgid "Requested dm-integrity bitmap mode is not supported."
msgstr "Le mode de carte de bits d'intégrité dm demandé n'est pas supporté."
#: lib/libdevmapper.c:2708
#: lib/libdevmapper.c:2705
#, c-format
msgid "Failed to query dm-%s segment."
msgstr "Échec lors de l'interrogation du segment dm-%s."
@@ -139,7 +139,7 @@ msgstr "Cette opération n'est possible que pour les périphériques LUKS."
msgid "This operation is supported only for LUKS2 device."
msgstr "Cette opération n'est possible que pour les périphériques LUKS2."
#: lib/setup.c:420 lib/luks2/luks2_reencrypt.c:2436
#: lib/setup.c:420 lib/luks2/luks2_reencrypt.c:2440
msgid "All key slots full."
msgstr "Tous les emplacements de clés sont utilisés."
@@ -202,7 +202,7 @@ msgstr "le UUID n'est pas supporté avec ce type de chiffrement."
msgid "Detached metadata device is not supported for this crypt type."
msgstr "Un périphérique avec des métadonnées détachées n'est pas supporté avec ce type de chiffrement."
#: lib/setup.c:1552 lib/setup.c:1754 lib/luks2/luks2_reencrypt.c:2397
#: lib/setup.c:1552 lib/setup.c:1754 lib/luks2/luks2_reencrypt.c:2401
#: src/cryptsetup.c:1358 src/cryptsetup.c:3723
msgid "Unsupported encryption sector size."
msgstr "Taille de secteur de chiffrement non supportée."
@@ -252,7 +252,7 @@ msgid "WARNING: LUKS2 keyslots area size changed to %<PRIu64> bytes.\n"
msgstr "ATTENTION: La taille de la zone des emplacements de clés LUKS2 est devenue %<PRIu64> octets.\n"
#: lib/setup.c:1915 lib/utils_device.c:909 lib/luks1/keyencryption.c:255
#: lib/luks2/luks2_reencrypt.c:2447 lib/luks2/luks2_reencrypt.c:3484
#: lib/luks2/luks2_reencrypt.c:2451 lib/luks2/luks2_reencrypt.c:3488
#, c-format
msgid "Device %s is too small."
msgstr "Le périphérique %s est trop petit."
@@ -329,8 +329,8 @@ msgstr "Type de chiffrement de périphérique demandé (%s) inconnu."
msgid "Unsupported parameters on device %s."
msgstr "Paramètres non supportés sur le périphérique %s."
#: lib/setup.c:2622 lib/setup.c:2708 lib/luks2/luks2_reencrypt.c:2499
#: lib/luks2/luks2_reencrypt.c:2843
#: lib/setup.c:2622 lib/setup.c:2708 lib/luks2/luks2_reencrypt.c:2503
#: lib/luks2/luks2_reencrypt.c:2847
#, c-format
msgid "Mismatching parameters on device %s."
msgstr "Paramètres non concordants sur le périphérique %s."
@@ -340,7 +340,7 @@ msgid "Crypt devices mismatch."
msgstr "Désaccord entre les périphériques crypt."
#: lib/setup.c:2765 lib/setup.c:2770 lib/luks2/luks2_reencrypt.c:2143
#: lib/luks2/luks2_reencrypt.c:3251
#: lib/luks2/luks2_reencrypt.c:3255
#, c-format
msgid "Failed to reload device %s."
msgstr "Impossible de recharger le périphérique %s."
@@ -352,7 +352,7 @@ msgid "Failed to suspend device %s."
msgstr "Impossible de suspendre le périphérique %s."
#: lib/setup.c:2788 lib/luks2/luks2_reencrypt.c:2128
#: lib/luks2/luks2_reencrypt.c:3186 lib/luks2/luks2_reencrypt.c:3255
#: lib/luks2/luks2_reencrypt.c:3190 lib/luks2/luks2_reencrypt.c:3259
#, c-format
msgid "Failed to resume device %s."
msgstr "Impossible de redémarrer le périphérique %s."
@@ -447,11 +447,11 @@ msgid "Reencryption in-progress. Cannot activate device."
msgstr "Re-chiffrement en cours. Impossible d'activer le périphérique."
#: lib/setup.c:4091 lib/luks2/luks2_json_metadata.c:2287
#: lib/luks2/luks2_reencrypt.c:2942
#: lib/luks2/luks2_reencrypt.c:2946
msgid "Failed to get reencryption lock."
msgstr "Impossible d'obtenir le verrou de re-chiffrement."
#: lib/setup.c:4104 lib/luks2/luks2_reencrypt.c:2961
#: lib/setup.c:4104 lib/luks2/luks2_reencrypt.c:2965
msgid "LUKS2 reencryption recovery failed."
msgstr "La récupération du rechiffrement LUKS2 a échoué."
@@ -554,7 +554,7 @@ msgstr "Échec de l'affectation de l'emplacement de clé %d aux résumé."
msgid "Kernel keyring is not supported by the kernel."
msgstr "Le porte-clé du noyau n'est pas supporté par ce noyau."
#: lib/setup.c:6161 lib/luks2/luks2_reencrypt.c:3058
#: lib/setup.c:6161 lib/luks2/luks2_reencrypt.c:3062
#, c-format
msgid "Failed to read passphrase from keyring (error %d)."
msgstr "Échec lors de la lecture du mot de passe depuis le porte-clé (erreur %d)."
@@ -1135,6 +1135,16 @@ msgstr "Un type d'entrée « %u » inattendu a été trouvé dans la méta-don
msgid "Unexpected metadata entry value '%u' found when parsing external key."
msgstr "La valeur « %u » pour l'entrée de la méta-donnée est inattendue en analysant la clé externe."
#: lib/bitlk/bitlk.c:950
#, c-format
msgid "Unsupported BEK metadata version %<PRIu32>"
msgstr "Métadonnées BEK version %<PRIu32> non supportées"
#: lib/bitlk/bitlk.c:955
#, c-format
msgid "Unexpected BEK metadata size %<PRIu32> does not match BEK file length"
msgstr "La taille inattendue des métadonnées BEK %<PRIu32> ne correspond pas à la longueur du fichier BEK"
#: lib/bitlk/bitlk.c:980
msgid "Unexpected metadata entry found when parsing startup key."
msgstr "Une entrée de méta-donnée inattendue a été trouvée en analysant la clé de démarrage."
@@ -1319,17 +1329,17 @@ msgstr "Le noyau ne supporte pas les alignements de méta-données fixés de dm-
msgid "Kernel refuses to activate insecure recalculate option (see legacy activation options to override)."
msgstr "Le noyau refuse d'activer l'option de recalcul non sûre (voyez les options d'activation historique pour outrepasser)."
#: lib/luks2/luks2_disk_metadata.c:381 lib/luks2/luks2_json_metadata.c:973
#: lib/luks2/luks2_disk_metadata.c:393 lib/luks2/luks2_json_metadata.c:973
#: lib/luks2/luks2_json_metadata.c:1268
#, c-format
msgid "Failed to acquire write lock on device %s."
msgstr "Impossible d'acquérir un verrou en écriture sur le périphérique %s."
#: lib/luks2/luks2_disk_metadata.c:390
#: lib/luks2/luks2_disk_metadata.c:402
msgid "Detected attempt for concurrent LUKS2 metadata update. Aborting operation."
msgstr "Tentative détectée de mettre à jour les métadonnées LUKS2 de manière concurrent. L'opération est abandonnée."
#: lib/luks2/luks2_disk_metadata.c:689 lib/luks2/luks2_disk_metadata.c:710
#: lib/luks2/luks2_disk_metadata.c:701 lib/luks2/luks2_disk_metadata.c:722
msgid ""
"Device contains ambiguous signatures, cannot auto-recover LUKS2.\n"
"Please run \"cryptsetup repair\" for recovery."
@@ -1404,7 +1414,7 @@ msgstr ""
msgid "Ignored unknown flag %s."
msgstr "Fanion inconnu %s ignoré."
#: lib/luks2/luks2_json_metadata.c:2054 lib/luks2/luks2_reencrypt.c:1840
#: lib/luks2/luks2_json_metadata.c:2054 lib/luks2/luks2_reencrypt.c:1843
#, c-format
msgid "Missing key for dm-crypt segment %u"
msgstr "Clé manquante pour le segment %u de dm-crypt"
@@ -1425,7 +1435,7 @@ msgstr "Configuration d'intégrité du périphérique non supportée."
msgid "Reencryption in-progress. Cannot deactivate device."
msgstr "Re-chiffrement en cours. Le périphérique ne peut être désactivé."
#: lib/luks2/luks2_json_metadata.c:2296 lib/luks2/luks2_reencrypt.c:3296
#: lib/luks2/luks2_json_metadata.c:2296 lib/luks2/luks2_reencrypt.c:3300
#, c-format
msgid "Failed to replace suspended device %s with dm-error target."
msgstr "Échec du remplacement du périphérique suspendu %s avec la cible dm-error."
@@ -1459,7 +1469,7 @@ msgstr "Échec de l'ouverture de l'emplacement de clé."
msgid "Cannot use %s-%s cipher for keyslot encryption."
msgstr "Impossible d'utiliser le chiffrement %s-%s pour le chiffrement de l'emplacement de clé"
#: lib/luks2/luks2_keyslot_luks2.c:483
#: lib/luks2/luks2_keyslot_luks2.c:485
msgid "No space for new keyslot."
msgstr "Plus d'espace pour le nouvel emplacement de clé."
@@ -1534,7 +1544,7 @@ msgstr "Mode de résilience %s non supporté"
#: lib/luks2/luks2_reencrypt.c:1259 lib/luks2/luks2_reencrypt.c:1414
#: lib/luks2/luks2_reencrypt.c:1497 lib/luks2/luks2_reencrypt.c:1531
#: lib/luks2/luks2_reencrypt.c:3136
#: lib/luks2/luks2_reencrypt.c:3140
msgid "Failed to initialize old segment storage wrapper."
msgstr "Impossible d'initialiser l'encapsulation pour le stockage de l'ancien segment."
@@ -1546,7 +1556,7 @@ msgstr "Impossible d'initialiser l'encapsulation pour le stockage du nouveau seg
msgid "Failed to read checksums for current hotzone."
msgstr "Impossible de lire les sommes de contrôle pour la zone chaude actuelle."
#: lib/luks2/luks2_reencrypt.c:1448 lib/luks2/luks2_reencrypt.c:3144
#: lib/luks2/luks2_reencrypt.c:1448 lib/luks2/luks2_reencrypt.c:3148
#, c-format
msgid "Failed to read hotzone area starting at %<PRIu64>."
msgstr "Échec de la lecture de la zone chaude démarrant à %<PRIu64>."
@@ -1585,139 +1595,143 @@ msgstr "Impossible de charger la nouvelle cartographie du périphérique %s."
msgid "Failed to refresh reencryption devices stack."
msgstr "Impossible de rafraîchir la pile des périphériques de rechiffrement."
#: lib/luks2/luks2_reencrypt.c:2305
#: lib/luks2/luks2_reencrypt.c:2309
msgid "Failed to set new keyslots area size."
msgstr "Impossible de définir la taille de la nouvelle zone des emplacements de clés."
#: lib/luks2/luks2_reencrypt.c:2409
#: lib/luks2/luks2_reencrypt.c:2413
#, c-format
msgid "Data shift is not aligned to requested encryption sector size (%<PRIu32> bytes)."
msgstr "Le décalage de données n'est pas aligné sur la taille de secteur de chiffrement demandée (%<PRIu32> octets)."
#: lib/luks2/luks2_reencrypt.c:2430
#: lib/luks2/luks2_reencrypt.c:2434
#, c-format
msgid "Data device is not aligned to requested encryption sector size (%<PRIu32> bytes)."
msgstr "Le périphérique de données n'est pas aligné sur la taille de secteur de chiffrement demandée (%<PRIu32> octets)."
#: lib/luks2/luks2_reencrypt.c:2451
#: lib/luks2/luks2_reencrypt.c:2455
#, c-format
msgid "Data shift (%<PRIu64> sectors) is less than future data offset (%<PRIu64> sectors)."
msgstr "Le décalage de données (%<PRIu64> secteurs) est plus petit que le décalage de données future (%<PRIu64> secteurs)."
#: lib/luks2/luks2_reencrypt.c:2457 lib/luks2/luks2_reencrypt.c:2885
#: lib/luks2/luks2_reencrypt.c:2906
#: lib/luks2/luks2_reencrypt.c:2461 lib/luks2/luks2_reencrypt.c:2889
#: lib/luks2/luks2_reencrypt.c:2910
#, c-format
msgid "Failed to open %s in exclusive mode (already mapped or mounted)."
msgstr "Erreur lors de l'ouverture de %s en mode exclusif (déjà mappé ou monté)."
#: lib/luks2/luks2_reencrypt.c:2625
#: lib/luks2/luks2_reencrypt.c:2629
msgid "Device not marked for LUKS2 reencryption."
msgstr "Le périphérique n'est pas marqué pour le rechiffrement LUKS2."
#: lib/luks2/luks2_reencrypt.c:2631 lib/luks2/luks2_reencrypt.c:3411
#: lib/luks2/luks2_reencrypt.c:2635 lib/luks2/luks2_reencrypt.c:3415
msgid "Failed to load LUKS2 reencryption context."
msgstr "Échec du chargement du contexte de rechiffrement LUKS2"
#: lib/luks2/luks2_reencrypt.c:2711
#: lib/luks2/luks2_reencrypt.c:2715
msgid "Failed to get reencryption state."
msgstr "Impossible d'obtenir l'état de rechiffrement."
#: lib/luks2/luks2_reencrypt.c:2715
#: lib/luks2/luks2_reencrypt.c:2719
msgid "Device is not in reencryption."
msgstr "Le périphérique n'est pas en rechiffrement."
#: lib/luks2/luks2_reencrypt.c:2722
#: lib/luks2/luks2_reencrypt.c:2726
msgid "Reencryption process is already running."
msgstr "Le rechiffrement est déjà en cours."
#: lib/luks2/luks2_reencrypt.c:2724
#: lib/luks2/luks2_reencrypt.c:2728
msgid "Failed to acquire reencryption lock."
msgstr "Impossible d'acquérir le verrou de rechiffrement."
#: lib/luks2/luks2_reencrypt.c:2742
#: lib/luks2/luks2_reencrypt.c:2746
msgid "Cannot proceed with reencryption. Run reencryption recovery first."
msgstr "Impossible de réaliser le rechiffrement. Exécutez d'abord la récupération du rechiffrement."
#: lib/luks2/luks2_reencrypt.c:2856
#: lib/luks2/luks2_reencrypt.c:2860
msgid "Active device size and requested reencryption size don't match."
msgstr "La taille du périphérique actif et la taille de rechiffrement demandée ne correspondent pas."
#: lib/luks2/luks2_reencrypt.c:2870
#: lib/luks2/luks2_reencrypt.c:2874
msgid "Illegal device size requested in reencryption parameters."
msgstr "Taille de périphérique illégale demandée dans les paramètres de rechiffrement."
#: lib/luks2/luks2_reencrypt.c:2940
#: lib/luks2/luks2_reencrypt.c:2944
msgid "Reencryption in-progress. Cannot perform recovery."
msgstr "Rechiffrement en cours. La récupération ne peut pas être réalisée."
#: lib/luks2/luks2_reencrypt.c:3012
#: lib/luks2/luks2_reencrypt.c:3016
msgid "LUKS2 reencryption already initialized in metadata."
msgstr "Rechiffrement LUKS2 déjà initialisé dans les métadonnées."
#: lib/luks2/luks2_reencrypt.c:3019
#: lib/luks2/luks2_reencrypt.c:3023
msgid "Failed to initialize LUKS2 reencryption in metadata."
msgstr "Échec de l'initialisation du rechiffrement LUKS2 dans les métadonnées."
#: lib/luks2/luks2_reencrypt.c:3110
#: lib/luks2/luks2_reencrypt.c:3114
msgid "Failed to set device segments for next reencryption hotzone."
msgstr "Impossible de définir les segments du périphérique pour le rechiffrement suivant de la zone chaude."
#: lib/luks2/luks2_reencrypt.c:3152
#: lib/luks2/luks2_reencrypt.c:3156
msgid "Failed to write reencryption resilience metadata."
msgstr "Échec lors de l'écriture des métadonnées de la résilience du rechiffrement."
#: lib/luks2/luks2_reencrypt.c:3159
#: lib/luks2/luks2_reencrypt.c:3163
msgid "Decryption failed."
msgstr "Échec du déchiffrement."
#: lib/luks2/luks2_reencrypt.c:3164
#: lib/luks2/luks2_reencrypt.c:3168
#, c-format
msgid "Failed to write hotzone area starting at %<PRIu64>."
msgstr "Échec de l'écriture de la zone chaude démarrant à %<PRIu64>."
#: lib/luks2/luks2_reencrypt.c:3169
#: lib/luks2/luks2_reencrypt.c:3173
msgid "Failed to sync data."
msgstr "Erreur lors de la synchronisation des données."
#: lib/luks2/luks2_reencrypt.c:3177
#: lib/luks2/luks2_reencrypt.c:3181
msgid "Failed to update metadata after current reencryption hotzone completed."
msgstr "Échec de la mise à jour des métadonnées après la fin du rechiffrement de la zone chaude courante."
#: lib/luks2/luks2_reencrypt.c:3244
#: lib/luks2/luks2_reencrypt.c:3248
msgid "Failed to write LUKS2 metadata."
msgstr "Échec lors de l'écriture des métadonnées LUKS2"
#: lib/luks2/luks2_reencrypt.c:3267
#: lib/luks2/luks2_reencrypt.c:3271
msgid "Failed to wipe backup segment data."
msgstr "Échec lors de l'effacement des données du segment de sauvegarde."
#: lib/luks2/luks2_reencrypt.c:3280
#: lib/luks2/luks2_reencrypt.c:3284
msgid "Failed to disable reencryption requirement flag."
msgstr "Impossible de désactiver le fanion de demande de rechiffrement."
#: lib/luks2/luks2_reencrypt.c:3288
#: lib/luks2/luks2_reencrypt.c:3292
#, c-format
msgid "Fatal error while reencrypting chunk starting at %<PRIu64>, %<PRIu64> sectors long."
msgstr "Erreur fatale en rechiffrant le morceau commençant à %<PRIu64> d'une longueur de %<PRIu64> secteurs."
#: lib/luks2/luks2_reencrypt.c:3296
msgid "Online reencryption failed."
msgstr "Échec du rechiffrement en-ligne."
# Frédéric: Je n'ai pas la moindre idée de ce que le développeur a voulu écrire. Qu'est-ce que "error target" dans ce contexte ?
#: lib/luks2/luks2_reencrypt.c:3297
#: lib/luks2/luks2_reencrypt.c:3301
msgid "Do not resume the device unless replaced with error target manually."
msgstr "Ne pas redémarrer le périphérique à moins qu'il ait été remplacé manuellement par la cible en erreur."
#: lib/luks2/luks2_reencrypt.c:3349
#: lib/luks2/luks2_reencrypt.c:3353
msgid "Cannot proceed with reencryption. Unexpected reencryption status."
msgstr "Impossible de réaliser le rechiffrement. Statut de rechiffrement inattendu."
#: lib/luks2/luks2_reencrypt.c:3355
#: lib/luks2/luks2_reencrypt.c:3359
msgid "Missing or invalid reencrypt context."
msgstr "Contexte de rechiffrement manquant ou invalide."
#: lib/luks2/luks2_reencrypt.c:3362
#: lib/luks2/luks2_reencrypt.c:3366
msgid "Failed to initialize reencryption device stack."
msgstr "Impossible d'initialiser la pile du périphérique de rechiffrement."
#: lib/luks2/luks2_reencrypt.c:3381 lib/luks2/luks2_reencrypt.c:3424
#: lib/luks2/luks2_reencrypt.c:3385 lib/luks2/luks2_reencrypt.c:3428
msgid "Failed to update reencryption context."
msgstr "Échec de la mise à jour du contexte de rechiffrement."
@@ -2182,6 +2196,15 @@ msgstr "Le fichier temporaire d'en-tête %s existe déjà. Abandon."
msgid "Cannot create temporary header file %s."
msgstr "Impossible de créer le fichier temporaire d'en-tête %s."
#: src/cryptsetup.c:2975
msgid "LUKS2 metadata size is larger than data shift value."
msgstr "La taille des métadonnées LUKS2 est plus grande que la valeur de décalage des données."
#: src/cryptsetup.c:3007
#, c-format
msgid "Failed to place new header at head of device %s."
msgstr "Impossible de placer le nouvel en-tête au début du périphérique %s."
#: src/cryptsetup.c:3018
#, c-format
msgid "%s/%s is now active and ready for online encryption.\n"
@@ -2915,6 +2938,10 @@ msgstr "Impossible d'écrire le journal de re-chiffrement."
msgid "Cannot read reencryption log file."
msgstr "Impossible de lire le journal de re-chiffrement."
#: src/cryptsetup_reencrypt.c:353
msgid "Wrong log format."
msgstr "Format de journal incorrect."
#: src/cryptsetup_reencrypt.c:380
#, c-format
msgid "Log file %s exists, resuming reencryption.\n"
@@ -3067,112 +3094,134 @@ msgstr "L'option --uuid ne peut être utilisée qu'avec --decrypt."
msgid "Invalid luks type. Use one of these: 'luks', 'luks1' or 'luks2'."
msgstr "Type luks invalide. Utilisez « luks », « luks1 » ou « luks2 »."
#: src/utils_tools.c:126
#: src/utils_tools.c:119
msgid ""
"\n"
"WARNING!\n"
"========\n"
msgstr ""
"\n"
"ATTENTION !\n"
"===========\n"
#. TRANSLATORS: User must type "YES" (in capital letters), do not translate this word.
#: src/utils_tools.c:121
#, c-format
msgid ""
"%s\n"
"\n"
"Are you sure? (Type 'yes' in capital letters): "
msgstr ""
"%s\n"
"\n"
"Êtes-vous sûr ? (Typez « yes » en majuscules) : "
#: src/utils_tools.c:127
msgid "Error reading response from terminal."
msgstr "Erreur de lecture de la réponse depuis le terminal."
#: src/utils_tools.c:158
#: src/utils_tools.c:159
msgid "Command successful."
msgstr "Commande réussie."
#: src/utils_tools.c:166
#: src/utils_tools.c:167
msgid "wrong or missing parameters"
msgstr "paramètres erronés ou manquants"
#: src/utils_tools.c:168
#: src/utils_tools.c:169
msgid "no permission or bad passphrase"
msgstr "Aucune permission ou mauvais mot de passe"
#: src/utils_tools.c:170
#: src/utils_tools.c:171
msgid "out of memory"
msgstr "mémoire épuisée"
#: src/utils_tools.c:172
#: src/utils_tools.c:173
msgid "wrong device or file specified"
msgstr "mauvais périphérique ou fichier spécifié"
#: src/utils_tools.c:174
#: src/utils_tools.c:175
msgid "device already exists or device is busy"
msgstr "le périphérique existe déjà ou est utilisé"
#: src/utils_tools.c:176
#: src/utils_tools.c:177
msgid "unknown error"
msgstr "erreur inconnue"
#: src/utils_tools.c:178
#: src/utils_tools.c:179
#, c-format
msgid "Command failed with code %i (%s)."
msgstr "La commande a échoué avec le code %i (%s)."
#: src/utils_tools.c:256
#: src/utils_tools.c:257
#, c-format
msgid "Key slot %i created."
msgstr "Emplacement de clef %i créé."
#: src/utils_tools.c:258
#: src/utils_tools.c:259
#, c-format
msgid "Key slot %i unlocked."
msgstr "Emplacement de clé %i déverrouillé."
#: src/utils_tools.c:260
#: src/utils_tools.c:261
#, c-format
msgid "Key slot %i removed."
msgstr "Emplacement de clé %i supprimé."
#: src/utils_tools.c:269
#: src/utils_tools.c:270
#, c-format
msgid "Token %i created."
msgstr "Jeton %i créé."
#: src/utils_tools.c:271
#: src/utils_tools.c:272
#, c-format
msgid "Token %i removed."
msgstr "Jeton %i supprimé."
#: src/utils_tools.c:281
#: src/utils_tools.c:282
msgid "No token could be unlocked with this PIN."
msgstr "Aucun jeton n'a pu être déverrouillé avec ce code PIN."
#: src/utils_tools.c:283
#: src/utils_tools.c:284
#, c-format
msgid "Token %i requires PIN."
msgstr "Jeton %i requiert un code PIN."
#: src/utils_tools.c:285
#: src/utils_tools.c:286
#, c-format
msgid "Token (type %s) requires PIN."
msgstr "Le jeton (type %s) exige un code PIN."
#: src/utils_tools.c:288
#: src/utils_tools.c:289
#, c-format
msgid "Token %i cannot unlock assigned keyslot(s) (wrong keyslot passphrase)."
msgstr "Le jeton %i ne sait pas déverrouiller le/les emplacement(s) de clé assigné(s) (mauvaise phrase secrète pour l'emplacement de clé)."
#: src/utils_tools.c:290
#: src/utils_tools.c:291
#, c-format
msgid "Token (type %s) cannot unlock assigned keyslot(s) (wrong keyslot passphrase)."
msgstr "Le jeton (type %s) ne sait pas déverrouiller le/les emplacement(s) de clé assigné(s) (mauvaise phrase secrète pour l'emplacement de clé)."
#: src/utils_tools.c:293
#: src/utils_tools.c:294
#, c-format
msgid "Token %i requires additional missing resource."
msgstr "Le jeton %i a besoin d'une ressource supplémentaire qui est manquante."
#: src/utils_tools.c:295
#: src/utils_tools.c:296
#, c-format
msgid "Token (type %s) requires additional missing resource."
msgstr "Le jeton (type %s) a besoin d'une ressource supplémentaire qui est manquante."
#: src/utils_tools.c:298
#: src/utils_tools.c:299
#, c-format
msgid "No usable token (type %s) is available."
msgstr "Aucun jeton (type %s) utilisable est disponible."
#: src/utils_tools.c:300
#: src/utils_tools.c:301
msgid "No usable token is available."
msgstr "Aucun jeton utilisable est disponible."
#: src/utils_tools.c:462
#: src/utils_tools.c:463
msgid ""
"\n"
"Wipe interrupted."
@@ -3180,7 +3229,7 @@ msgstr ""
"\n"
"Effacement interrompu."
#: src/utils_tools.c:491
#: src/utils_tools.c:492
msgid ""
"\n"
"Reencryption interrupted."
@@ -3188,6 +3237,26 @@ msgstr ""
"\n"
"Rechiffrement interrompu."
#: src/utils_tools.c:511
#, c-format
msgid "Cannot read keyfile %s."
msgstr "Impossible de lire le fichier de clé %s."
#: src/utils_tools.c:516
#, c-format
msgid "Cannot read %d bytes from keyfile %s."
msgstr "Échec à la lecture de %d octets du fichier de clé %s."
#: src/utils_tools.c:541
#, c-format
msgid "Cannot open keyfile %s for write."
msgstr "Impossible d'ouvrir le fichier de clé %s en écriture."
#: src/utils_tools.c:548
#, c-format
msgid "Cannot write to keyfile %s."
msgstr "Impossible d'écrire dans le fichier de clé %s."
#: src/utils_password.c:41 src/utils_password.c:74
#, c-format
msgid "Cannot check password quality: %s"
@@ -3241,26 +3310,6 @@ msgstr "Aucune clé disponible avec cette phrase secrète."
msgid "No usable keyslot is available."
msgstr "Aucun emplacement de clé utilisable est disponible."
#: src/utils_password.c:335
#, c-format
msgid "Cannot read keyfile %s."
msgstr "Impossible de lire le fichier de clé %s."
#: src/utils_password.c:340
#, c-format
msgid "Cannot read %d bytes from keyfile %s."
msgstr "Échec à la lecture de %d octets du fichier de clé %s."
#: src/utils_password.c:365
#, c-format
msgid "Cannot open keyfile %s for write."
msgstr "Impossible d'ouvrir le fichier de clé %s en écriture."
#: src/utils_password.c:372
#, c-format
msgid "Cannot write to keyfile %s."
msgstr "Impossible d'écrire dans le fichier de clé %s."
#: src/utils_luks2.c:47
#, c-format
msgid "Failed to open file %s in read-only mode."
@@ -3328,6 +3377,16 @@ msgstr "Le périphérique %s est utilisé. Impossible de continuer avec l'opéra
msgid "Failed to open file %s in read/write mode."
msgstr "Impossible d'ouvrir le fichier %s en mode lecture/écriture."
#: src/utils_blockdev.c:294
#, c-format
msgid "Existing '%s' partition signature on device %s will be wiped."
msgstr "La signature de partition « %s » existante sur le périphérique %s sera effacée."
#: src/utils_blockdev.c:297
#, c-format
msgid "Existing '%s' superblock signature on device %s will be wiped."
msgstr "La signature de superbloc « %s » existante sur le périphérique %s sera effacée."
#: src/utils_blockdev.c:300
msgid "Failed to wipe device signature."
msgstr "Impossible d'effacer la signature du périphérique."
@@ -4041,12 +4100,6 @@ msgstr "Erreur durant l'authentification par clé publique : "
#~ msgid "Type of LUKS metadata: luks1, luks2"
#~ msgstr "Type de métadonnées LUKS: luks1, luks2"
#~ msgid "Existing '%s' partition signature (offset: %<PRIi64> bytes) on device %s will be wiped."
#~ msgstr "La signature de partition « %s » existante (offset: %<PRIi64> octets) sur le périphérique %s sera effacée."
#~ msgid "Existing '%s' superblock signature (offset: %<PRIi64> bytes) on device %s will be wiped."
#~ msgstr "La signature de superbloc « %s » existante (offset: %<PRIi64> octets) sur le périphérique %s sera effacée."
#~ msgid "WARNING: Locking directory %s/%s is missing!\n"
#~ msgstr "ATTENTION: Le répertoire verrou %s/%s est manquant !\n"

279
po/ja.po
View File

@@ -5,10 +5,10 @@
#
msgid ""
msgstr ""
"Project-Id-Version: cryptsetup 2.4.1-rc0\n"
"Project-Id-Version: cryptsetup 2.4.2-rc0\n"
"Report-Msgid-Bugs-To: dm-crypt@saout.de\n"
"POT-Creation-Date: 2021-08-30 12:40+0200\n"
"PO-Revision-Date: 2021-08-31 18:56+0900\n"
"POT-Creation-Date: 2021-11-11 19:08+0100\n"
"PO-Revision-Date: 2021-11-13 11:23+0900\n"
"Last-Translator: Hiroshi Takekawa <sian@big.or.jp>\n"
"Language-Team: Japanese <translation-team-ja@lists.sourceforge.net>\n"
"Language: ja\n"
@@ -34,45 +34,45 @@ msgstr "指定された延期フラグはサポートされていません。"
msgid "DM-UUID for device %s was truncated."
msgstr "デバイス %s の DM-UUID は短縮されています。"
#: lib/libdevmapper.c:1570
#: lib/libdevmapper.c:1567
msgid "Unknown dm target type."
msgstr "不明な dm target タイプです。"
#: lib/libdevmapper.c:1691 lib/libdevmapper.c:1696 lib/libdevmapper.c:1760
#: lib/libdevmapper.c:1763
#: lib/libdevmapper.c:1688 lib/libdevmapper.c:1693 lib/libdevmapper.c:1757
#: lib/libdevmapper.c:1760
msgid "Requested dm-crypt performance options are not supported."
msgstr "指定された dm-crypt パフォーマンスオプションはサポートされていません。"
#: lib/libdevmapper.c:1703 lib/libdevmapper.c:1707
#: lib/libdevmapper.c:1700 lib/libdevmapper.c:1704
msgid "Requested dm-verity data corruption handling options are not supported."
msgstr "指定された dm-verity のデータ破壊時の対応についてのオプションはサポートされていません。"
#: lib/libdevmapper.c:1711
#: lib/libdevmapper.c:1708
msgid "Requested dm-verity FEC options are not supported."
msgstr "指定された dm-verity の誤り訂正(FEC)オプションはサポートされていません。"
#: lib/libdevmapper.c:1715
#: lib/libdevmapper.c:1712
msgid "Requested data integrity options are not supported."
msgstr "指定されたデータの無改ざん確認のオプションはサポートされていません。"
#: lib/libdevmapper.c:1717
#: lib/libdevmapper.c:1714
msgid "Requested sector_size option is not supported."
msgstr "指定された sector_size オプションはサポートされていません。"
#: lib/libdevmapper.c:1722 lib/libdevmapper.c:1726
#: lib/libdevmapper.c:1719 lib/libdevmapper.c:1723
msgid "Requested automatic recalculation of integrity tags is not supported."
msgstr "指定された改ざん確認タグの自動再計算はサポートされていません。"
#: lib/libdevmapper.c:1730 lib/libdevmapper.c:1766 lib/libdevmapper.c:1769
#: lib/libdevmapper.c:1727 lib/libdevmapper.c:1763 lib/libdevmapper.c:1766
#: lib/luks2/luks2_json_metadata.c:2204
msgid "Discard/TRIM is not supported."
msgstr "Discard/TRIM はサポートしていません。"
#: lib/libdevmapper.c:1734
#: lib/libdevmapper.c:1731
msgid "Requested dm-integrity bitmap mode is not supported."
msgstr "要求された dm-integrity のビットマップモードはサポートされていません。"
#: lib/libdevmapper.c:2708
#: lib/libdevmapper.c:2705
#, c-format
msgid "Failed to query dm-%s segment."
msgstr "dm-%s のクエリーに失敗しました。"
@@ -136,7 +136,7 @@ msgstr "この操作は LUKS デバイスでしかサポートされていませ
msgid "This operation is supported only for LUKS2 device."
msgstr "この操作は LUKS2 デバイスでしかサポートされていません。"
#: lib/setup.c:420 lib/luks2/luks2_reencrypt.c:2436
#: lib/setup.c:420 lib/luks2/luks2_reencrypt.c:2440
msgid "All key slots full."
msgstr "キースロットがいっぱいです。"
@@ -199,7 +199,7 @@ msgstr "UUID はこの暗号タイプではサポートされていません。"
msgid "Detached metadata device is not supported for this crypt type."
msgstr "分離したメタデータデバイスはこの暗号タイプではサポートされていません。"
#: lib/setup.c:1552 lib/setup.c:1754 lib/luks2/luks2_reencrypt.c:2397
#: lib/setup.c:1552 lib/setup.c:1754 lib/luks2/luks2_reencrypt.c:2401
#: src/cryptsetup.c:1358 src/cryptsetup.c:3723
msgid "Unsupported encryption sector size."
msgstr "サポートされていない暗号化セクタサイズです。"
@@ -249,7 +249,7 @@ msgid "WARNING: LUKS2 keyslots area size changed to %<PRIu64> bytes.\n"
msgstr "警告: LUKS2 キースロット領域サイズが %<PRIu64> バイトに変更されました。\n"
#: lib/setup.c:1915 lib/utils_device.c:909 lib/luks1/keyencryption.c:255
#: lib/luks2/luks2_reencrypt.c:2447 lib/luks2/luks2_reencrypt.c:3484
#: lib/luks2/luks2_reencrypt.c:2451 lib/luks2/luks2_reencrypt.c:3488
#, c-format
msgid "Device %s is too small."
msgstr "デバイス %s のサイズが小さすぎます。"
@@ -326,8 +326,8 @@ msgstr "不明な暗号デバイスタイプ %s が指定されました。"
msgid "Unsupported parameters on device %s."
msgstr "デバイス %s のパラメータはサポートしていません。"
#: lib/setup.c:2622 lib/setup.c:2708 lib/luks2/luks2_reencrypt.c:2499
#: lib/luks2/luks2_reencrypt.c:2843
#: lib/setup.c:2622 lib/setup.c:2708 lib/luks2/luks2_reencrypt.c:2503
#: lib/luks2/luks2_reencrypt.c:2847
#, c-format
msgid "Mismatching parameters on device %s."
msgstr "デバイス %s のパラメータがミスマッチしています。"
@@ -337,7 +337,7 @@ msgid "Crypt devices mismatch."
msgstr "Crypt デバイスが一致しません。"
#: lib/setup.c:2765 lib/setup.c:2770 lib/luks2/luks2_reencrypt.c:2143
#: lib/luks2/luks2_reencrypt.c:3251
#: lib/luks2/luks2_reencrypt.c:3255
#, c-format
msgid "Failed to reload device %s."
msgstr "デバイス %s のリロードに失敗しました。"
@@ -349,7 +349,7 @@ msgid "Failed to suspend device %s."
msgstr "デバイス %s のサスペンドに失敗しました。"
#: lib/setup.c:2788 lib/luks2/luks2_reencrypt.c:2128
#: lib/luks2/luks2_reencrypt.c:3186 lib/luks2/luks2_reencrypt.c:3255
#: lib/luks2/luks2_reencrypt.c:3190 lib/luks2/luks2_reencrypt.c:3259
#, c-format
msgid "Failed to resume device %s."
msgstr "デバイス %s のリジュームに失敗しました。"
@@ -444,11 +444,11 @@ msgid "Reencryption in-progress. Cannot activate device."
msgstr "既に再暗号化中です。デバイスをアクティベートできません。"
#: lib/setup.c:4091 lib/luks2/luks2_json_metadata.c:2287
#: lib/luks2/luks2_reencrypt.c:2942
#: lib/luks2/luks2_reencrypt.c:2946
msgid "Failed to get reencryption lock."
msgstr "再暗号化ロックを取得できません。"
#: lib/setup.c:4104 lib/luks2/luks2_reencrypt.c:2961
#: lib/setup.c:4104 lib/luks2/luks2_reencrypt.c:2965
msgid "LUKS2 reencryption recovery failed."
msgstr "LUKS2 の再暗号化は既に初期化されました。"
@@ -551,7 +551,7 @@ msgstr "ダイジェストするためのキースロット %d が確保でき
msgid "Kernel keyring is not supported by the kernel."
msgstr "カーネルがカーネルキーリングをサポートしていません。"
#: lib/setup.c:6161 lib/luks2/luks2_reencrypt.c:3058
#: lib/setup.c:6161 lib/luks2/luks2_reencrypt.c:3062
#, c-format
msgid "Failed to read passphrase from keyring (error %d)."
msgstr "キーリングからパスフレーズが読み出せません (エラー %d)。"
@@ -1131,6 +1131,16 @@ msgstr "外部キーを解釈中に予期しないメタデータエントリタ
msgid "Unexpected metadata entry value '%u' found when parsing external key."
msgstr "外部キーを解釈中に予期しないメタデータエントリー値 '%u' が見つかりました。"
#: lib/bitlk/bitlk.c:950
#, c-format
msgid "Unsupported BEK metadata version %<PRIu32>"
msgstr "サポートされていない BEK メタデータバージョン %<PRIu32> です。"
#: lib/bitlk/bitlk.c:955
#, c-format
msgid "Unexpected BEK metadata size %<PRIu32> does not match BEK file length"
msgstr "予期しない BEK メタデータサイズ %<PRIu32> は BEK ファイルサイズと合いません"
#: lib/bitlk/bitlk.c:980
msgid "Unexpected metadata entry found when parsing startup key."
msgstr "スタートアップキーを解釈中に予期しないメタデータエントリが見つかりました。"
@@ -1315,17 +1325,17 @@ msgstr "カーネルが dm-integrity 固定メタデータアラインメント
msgid "Kernel refuses to activate insecure recalculate option (see legacy activation options to override)."
msgstr "カーネルが安全でない再計算オプションを拒否しました (レガジーアクティベーションオプションでオーバーライドできます)。"
#: lib/luks2/luks2_disk_metadata.c:381 lib/luks2/luks2_json_metadata.c:973
#: lib/luks2/luks2_disk_metadata.c:393 lib/luks2/luks2_json_metadata.c:973
#: lib/luks2/luks2_json_metadata.c:1268
#, c-format
msgid "Failed to acquire write lock on device %s."
msgstr "デバイス %s の書き込みのためのロックを取得できませんでした。"
#: lib/luks2/luks2_disk_metadata.c:390
#: lib/luks2/luks2_disk_metadata.c:402
msgid "Detected attempt for concurrent LUKS2 metadata update. Aborting operation."
msgstr "LUKS2 メタデータの更新の並列実行をしそうになりました。実行を中止します。"
#: lib/luks2/luks2_disk_metadata.c:689 lib/luks2/luks2_disk_metadata.c:710
#: lib/luks2/luks2_disk_metadata.c:701 lib/luks2/luks2_disk_metadata.c:722
msgid ""
"Device contains ambiguous signatures, cannot auto-recover LUKS2.\n"
"Please run \"cryptsetup repair\" for recovery."
@@ -1400,7 +1410,7 @@ msgstr ""
msgid "Ignored unknown flag %s."
msgstr "不明なフラグ %s を無視しました。"
#: lib/luks2/luks2_json_metadata.c:2054 lib/luks2/luks2_reencrypt.c:1840
#: lib/luks2/luks2_json_metadata.c:2054 lib/luks2/luks2_reencrypt.c:1843
#, c-format
msgid "Missing key for dm-crypt segment %u"
msgstr "dm-crypt セグメント %u にキーがありません"
@@ -1421,7 +1431,7 @@ msgstr "サポートしていないデバイス整合性設定です。"
msgid "Reencryption in-progress. Cannot deactivate device."
msgstr "再暗号化が実行中なのでデバイスのデアクティベートできません。. Cannot deactivate device."
#: lib/luks2/luks2_json_metadata.c:2296 lib/luks2/luks2_reencrypt.c:3296
#: lib/luks2/luks2_json_metadata.c:2296 lib/luks2/luks2_reencrypt.c:3300
#, c-format
msgid "Failed to replace suspended device %s with dm-error target."
msgstr "サスペンドされたデバイス %s を dm-error ターゲットで置き換えられません。"
@@ -1455,7 +1465,7 @@ msgstr "キースロットのオープンに失敗しました。"
msgid "Cannot use %s-%s cipher for keyslot encryption."
msgstr "キースロットの暗号化に %s- %s 暗号は使えません。"
#: lib/luks2/luks2_keyslot_luks2.c:483
#: lib/luks2/luks2_keyslot_luks2.c:485
msgid "No space for new keyslot."
msgstr "新しいキースロット用の領域がありません。"
@@ -1530,7 +1540,7 @@ msgstr "弾性(resilience)モード %s はサポートしていません"
#: lib/luks2/luks2_reencrypt.c:1259 lib/luks2/luks2_reencrypt.c:1414
#: lib/luks2/luks2_reencrypt.c:1497 lib/luks2/luks2_reencrypt.c:1531
#: lib/luks2/luks2_reencrypt.c:3136
#: lib/luks2/luks2_reencrypt.c:3140
msgid "Failed to initialize old segment storage wrapper."
msgstr "古いセグメントのストレージラッパの初期化に失敗しました。"
@@ -1542,7 +1552,7 @@ msgstr "新しいセグメントのストレージラッパの初期化に失敗
msgid "Failed to read checksums for current hotzone."
msgstr "現在のホットゾーンのチェックサムを読み込めません。"
#: lib/luks2/luks2_reencrypt.c:1448 lib/luks2/luks2_reencrypt.c:3144
#: lib/luks2/luks2_reencrypt.c:1448 lib/luks2/luks2_reencrypt.c:3148
#, c-format
msgid "Failed to read hotzone area starting at %<PRIu64>."
msgstr "%<PRIu64> から始めるホットゾーンエリアを読み込めません。"
@@ -1581,138 +1591,142 @@ msgstr "デバイス %s の新しいマッピングをロードできません
msgid "Failed to refresh reencryption devices stack."
msgstr "再暗号化デバイススタックのリフレッシュに失敗しました。"
#: lib/luks2/luks2_reencrypt.c:2305
#: lib/luks2/luks2_reencrypt.c:2309
msgid "Failed to set new keyslots area size."
msgstr "新しいキースロットエリアサイズを設定できません。"
#: lib/luks2/luks2_reencrypt.c:2409
#: lib/luks2/luks2_reencrypt.c:2413
#, c-format
msgid "Data shift is not aligned to requested encryption sector size (%<PRIu32> bytes)."
msgstr "データシフトが要求された暗号化セクタサイズにアラインされていません(%<PRIu32> bytes)。"
#: lib/luks2/luks2_reencrypt.c:2430
#: lib/luks2/luks2_reencrypt.c:2434
#, c-format
msgid "Data device is not aligned to requested encryption sector size (%<PRIu32> bytes)."
msgstr "データデバイスが要求された暗号化セクタサイズにアラインされていません(%<PRIu32> bytes)."
#: lib/luks2/luks2_reencrypt.c:2451
#: lib/luks2/luks2_reencrypt.c:2455
#, c-format
msgid "Data shift (%<PRIu64> sectors) is less than future data offset (%<PRIu64> sectors)."
msgstr "データシフト (%<PRIu64> セクタ) が今後のデータオフセットより少ないです (%<PRIu64> セクタ)。"
#: lib/luks2/luks2_reencrypt.c:2457 lib/luks2/luks2_reencrypt.c:2885
#: lib/luks2/luks2_reencrypt.c:2906
#: lib/luks2/luks2_reencrypt.c:2461 lib/luks2/luks2_reencrypt.c:2889
#: lib/luks2/luks2_reencrypt.c:2910
#, c-format
msgid "Failed to open %s in exclusive mode (already mapped or mounted)."
msgstr "デバイス %s を排他モードでオープンでません (既にマップされているかマウントされています)。"
#: lib/luks2/luks2_reencrypt.c:2625
#: lib/luks2/luks2_reencrypt.c:2629
msgid "Device not marked for LUKS2 reencryption."
msgstr "デバイスは LUKS2 再暗号化向けにマークされていません。"
#: lib/luks2/luks2_reencrypt.c:2631 lib/luks2/luks2_reencrypt.c:3411
#: lib/luks2/luks2_reencrypt.c:2635 lib/luks2/luks2_reencrypt.c:3415
msgid "Failed to load LUKS2 reencryption context."
msgstr "LUKS2 再暗号化コンテキストをロードできません。"
#: lib/luks2/luks2_reencrypt.c:2711
#: lib/luks2/luks2_reencrypt.c:2715
msgid "Failed to get reencryption state."
msgstr "再暗号化状態を取得できません。"
#: lib/luks2/luks2_reencrypt.c:2715
#: lib/luks2/luks2_reencrypt.c:2719
msgid "Device is not in reencryption."
msgstr "デバイス %s は再暗号化中ではありません。"
#: lib/luks2/luks2_reencrypt.c:2722
#: lib/luks2/luks2_reencrypt.c:2726
msgid "Reencryption process is already running."
msgstr "既に再暗号化中です。"
#: lib/luks2/luks2_reencrypt.c:2724
#: lib/luks2/luks2_reencrypt.c:2728
msgid "Failed to acquire reencryption lock."
msgstr "再暗号化ロックを取得できません。"
#: lib/luks2/luks2_reencrypt.c:2742
#: lib/luks2/luks2_reencrypt.c:2746
msgid "Cannot proceed with reencryption. Run reencryption recovery first."
msgstr "再暗号化を開始できません。再暗号化のリカバリを先にしてください。"
#: lib/luks2/luks2_reencrypt.c:2856
#: lib/luks2/luks2_reencrypt.c:2860
msgid "Active device size and requested reencryption size don't match."
msgstr "実際のデバイスサイズと要求された再暗号化サイズが一致しません。"
#: lib/luks2/luks2_reencrypt.c:2870
#: lib/luks2/luks2_reencrypt.c:2874
msgid "Illegal device size requested in reencryption parameters."
msgstr "再暗号化のパラメータとして不正なデバイスサイズが要求されました。"
#: lib/luks2/luks2_reencrypt.c:2940
#: lib/luks2/luks2_reencrypt.c:2944
msgid "Reencryption in-progress. Cannot perform recovery."
msgstr "既に再暗号化中です。復元を実行できません。"
#: lib/luks2/luks2_reencrypt.c:3012
#: lib/luks2/luks2_reencrypt.c:3016
msgid "LUKS2 reencryption already initialized in metadata."
msgstr "メタデータの LUKS2 の再暗号化は既に初期化されました。"
#: lib/luks2/luks2_reencrypt.c:3019
#: lib/luks2/luks2_reencrypt.c:3023
msgid "Failed to initialize LUKS2 reencryption in metadata."
msgstr "メタデータの LUKS2 再暗号化に失敗しました。"
#: lib/luks2/luks2_reencrypt.c:3110
#: lib/luks2/luks2_reencrypt.c:3114
msgid "Failed to set device segments for next reencryption hotzone."
msgstr "デバイスセグメントの次の再暗号化ホットゾーンの設定に失敗しました。"
#: lib/luks2/luks2_reencrypt.c:3152
#: lib/luks2/luks2_reencrypt.c:3156
msgid "Failed to write reencryption resilience metadata."
msgstr "再暗号化した耐性用メタデータを書き込めません。"
#: lib/luks2/luks2_reencrypt.c:3159
#: lib/luks2/luks2_reencrypt.c:3163
msgid "Decryption failed."
msgstr "復号に失敗しました。"
#: lib/luks2/luks2_reencrypt.c:3164
#: lib/luks2/luks2_reencrypt.c:3168
#, c-format
msgid "Failed to write hotzone area starting at %<PRIu64>."
msgstr "%<PRIu64> から始まるホットゾーンエリアに書き込めません。"
#: lib/luks2/luks2_reencrypt.c:3169
#: lib/luks2/luks2_reencrypt.c:3173
msgid "Failed to sync data."
msgstr "データを sync できません。"
#: lib/luks2/luks2_reencrypt.c:3177
#: lib/luks2/luks2_reencrypt.c:3181
msgid "Failed to update metadata after current reencryption hotzone completed."
msgstr "現在のホットゾーンの再暗号化完了後にメタデータが更新できません。"
#: lib/luks2/luks2_reencrypt.c:3244
#: lib/luks2/luks2_reencrypt.c:3248
msgid "Failed to write LUKS2 metadata."
msgstr "LUKS2 メタデータが書き込めません。"
#: lib/luks2/luks2_reencrypt.c:3267
#: lib/luks2/luks2_reencrypt.c:3271
msgid "Failed to wipe backup segment data."
msgstr "バックアップセグメントデータを消せません。"
#: lib/luks2/luks2_reencrypt.c:3280
#: lib/luks2/luks2_reencrypt.c:3284
msgid "Failed to disable reencryption requirement flag."
msgstr "再暗号化の要求(requirement)フラグを禁止できません。"
#: lib/luks2/luks2_reencrypt.c:3288
#: lib/luks2/luks2_reencrypt.c:3292
#, c-format
msgid "Fatal error while reencrypting chunk starting at %<PRIu64>, %<PRIu64> sectors long."
msgstr "%<PRIu64> から %<PRIu64> セクタのチャンクの再暗号化中に致命的なエラー。"
#: lib/luks2/luks2_reencrypt.c:3297
#: lib/luks2/luks2_reencrypt.c:3296
msgid "Online reencryption failed."
msgstr "オンライン再暗号化に失敗しました。"
#: lib/luks2/luks2_reencrypt.c:3301
msgid "Do not resume the device unless replaced with error target manually."
msgstr "手動でエラーターゲットに置き換えた場合以外はデバイスのレジュームをしないでください。"
#: lib/luks2/luks2_reencrypt.c:3349
#: lib/luks2/luks2_reencrypt.c:3353
msgid "Cannot proceed with reencryption. Unexpected reencryption status."
msgstr "再暗号化を開始できません。予期しない再暗号化状態です。"
#: lib/luks2/luks2_reencrypt.c:3355
#: lib/luks2/luks2_reencrypt.c:3359
msgid "Missing or invalid reencrypt context."
msgstr "ないか不正な再暗号化コンテキストです。"
#: lib/luks2/luks2_reencrypt.c:3362
#: lib/luks2/luks2_reencrypt.c:3366
msgid "Failed to initialize reencryption device stack."
msgstr "再暗号化デバイススタックの初期化に失敗しました。"
#: lib/luks2/luks2_reencrypt.c:3381 lib/luks2/luks2_reencrypt.c:3424
#: lib/luks2/luks2_reencrypt.c:3385 lib/luks2/luks2_reencrypt.c:3428
msgid "Failed to update reencryption context."
msgstr "再暗号化コンテキストが更新できません。"
@@ -2177,6 +2191,15 @@ msgstr "テンポラリヘッダファイル %s は既に存在しているの
msgid "Cannot create temporary header file %s."
msgstr "テンポラリヘッダファイル %s を作成できません。"
#: src/cryptsetup.c:2975
msgid "LUKS2 metadata size is larger than data shift value."
msgstr "LUKS2 メタデータサイズがデータシフト値より大きいです。"
#: src/cryptsetup.c:3007
#, c-format
msgid "Failed to place new header at head of device %s."
msgstr "デバイス %s の先頭に新しいヘッダを置けません。"
#: src/cryptsetup.c:3018
#, c-format
msgid "%s/%s is now active and ready for online encryption.\n"
@@ -2910,6 +2933,10 @@ msgstr "再暗号化ログファイルに書きこめません。"
msgid "Cannot read reencryption log file."
msgstr "再暗号化ログファイルを読み込めません。"
#: src/cryptsetup_reencrypt.c:353
msgid "Wrong log format."
msgstr "誤ったログフォーマットです。"
#: src/cryptsetup_reencrypt.c:380
#, c-format
msgid "Log file %s exists, resuming reencryption.\n"
@@ -3062,112 +3089,134 @@ msgstr "--uuid は --decrypt と一緒にしか使えません。"
msgid "Invalid luks type. Use one of these: 'luks', 'luks1' or 'luks2'."
msgstr "不正な luks タイプです。'luks', 'luks1', 'luks2' のいずれかを使ってください。"
#: src/utils_tools.c:126
#: src/utils_tools.c:119
msgid ""
"\n"
"WARNING!\n"
"========\n"
msgstr ""
"\n"
"警告!!\n"
"========\n"
#. TRANSLATORS: User must type "YES" (in capital letters), do not translate this word.
#: src/utils_tools.c:121
#, c-format
msgid ""
"%s\n"
"\n"
"Are you sure? (Type 'yes' in capital letters): "
msgstr ""
"%s\n"
"\n"
"よろしいですか? ('yes' を大文字で入力してください): "
#: src/utils_tools.c:127
msgid "Error reading response from terminal."
msgstr "端末から応答を読み込み中にエラー。"
#: src/utils_tools.c:158
#: src/utils_tools.c:159
msgid "Command successful."
msgstr "コマンド成功。"
#: src/utils_tools.c:166
#: src/utils_tools.c:167
msgid "wrong or missing parameters"
msgstr "パラメータが間違っているか指定されていません"
#: src/utils_tools.c:168
#: src/utils_tools.c:169
msgid "no permission or bad passphrase"
msgstr "権限がないかパスフレーズが間違っています"
#: src/utils_tools.c:170
#: src/utils_tools.c:171
msgid "out of memory"
msgstr "メモリ不足"
#: src/utils_tools.c:172
#: src/utils_tools.c:173
msgid "wrong device or file specified"
msgstr "間違ったデバイスかファイルが指定されました"
#: src/utils_tools.c:174
#: src/utils_tools.c:175
msgid "device already exists or device is busy"
msgstr "デバイスが既にあるかビジーです"
#: src/utils_tools.c:176
#: src/utils_tools.c:177
msgid "unknown error"
msgstr "不明なエラー"
#: src/utils_tools.c:178
#: src/utils_tools.c:179
#, c-format
msgid "Command failed with code %i (%s)."
msgstr "コマンド失敗:コード %i (%s)"
#: src/utils_tools.c:256
#: src/utils_tools.c:257
#, c-format
msgid "Key slot %i created."
msgstr "キースロット %i が作成されました。"
#: src/utils_tools.c:258
#: src/utils_tools.c:259
#, c-format
msgid "Key slot %i unlocked."
msgstr "キースロット %i がアンロックされました。"
#: src/utils_tools.c:260
#: src/utils_tools.c:261
#, c-format
msgid "Key slot %i removed."
msgstr "キースロット %i が削除されました。"
#: src/utils_tools.c:269
#: src/utils_tools.c:270
#, c-format
msgid "Token %i created."
msgstr "トークン %i が作成されました。"
#: src/utils_tools.c:271
#: src/utils_tools.c:272
#, c-format
msgid "Token %i removed."
msgstr "トークン %i が削除されました。"
#: src/utils_tools.c:281
#: src/utils_tools.c:282
msgid "No token could be unlocked with this PIN."
msgstr "この PIN でアンロックできるトークンがありません。"
#: src/utils_tools.c:283
#: src/utils_tools.c:284
#, c-format
msgid "Token %i requires PIN."
msgstr "トークン %i は PIN が必要です。"
#: src/utils_tools.c:285
#: src/utils_tools.c:286
#, c-format
msgid "Token (type %s) requires PIN."
msgstr "トークン (タイプ %s) は PIN が必要です。"
#: src/utils_tools.c:288
#: src/utils_tools.c:289
#, c-format
msgid "Token %i cannot unlock assigned keyslot(s) (wrong keyslot passphrase)."
msgstr "トークン %i では割り当てられたキースロットをアンロックできません (間違ったキースロットパスフレーズ)。"
#: src/utils_tools.c:290
#: src/utils_tools.c:291
#, c-format
msgid "Token (type %s) cannot unlock assigned keyslot(s) (wrong keyslot passphrase)."
msgstr "トークン (タイプ %s) では割り当てられたキースロットをアンロックできません (間違ったキースロットパスフレーズ)。"
#: src/utils_tools.c:293
#: src/utils_tools.c:294
#, c-format
msgid "Token %i requires additional missing resource."
msgstr "トークン %i は追加のリソースが必要です。"
#: src/utils_tools.c:295
#: src/utils_tools.c:296
#, c-format
msgid "Token (type %s) requires additional missing resource."
msgstr "トークン (タイプ %s) は追加のリソースが必要です。"
#: src/utils_tools.c:298
#: src/utils_tools.c:299
#, c-format
msgid "No usable token (type %s) is available."
msgstr "使用可能なトークン (タイプ %s) がありません。"
#: src/utils_tools.c:300
#: src/utils_tools.c:301
msgid "No usable token is available."
msgstr "使用可能なトークンがありません。"
#: src/utils_tools.c:462
#: src/utils_tools.c:463
msgid ""
"\n"
"Wipe interrupted."
@@ -3175,7 +3224,7 @@ msgstr ""
"\n"
"ワイプが中断されました。"
#: src/utils_tools.c:491
#: src/utils_tools.c:492
msgid ""
"\n"
"Reencryption interrupted."
@@ -3183,6 +3232,26 @@ msgstr ""
"\n"
"再暗号化が中断されました。"
#: src/utils_tools.c:511
#, c-format
msgid "Cannot read keyfile %s."
msgstr "キーファイル %s を読みこめませんでした。"
#: src/utils_tools.c:516
#, c-format
msgid "Cannot read %d bytes from keyfile %s."
msgstr "%d バイトをキーファイル %s から読みこめませんでした。"
#: src/utils_tools.c:541
#, c-format
msgid "Cannot open keyfile %s for write."
msgstr "キーファイル %s を書き込み用にオープンできません。"
#: src/utils_tools.c:548
#, c-format
msgid "Cannot write to keyfile %s."
msgstr "キーファイル %s に書き込めません。"
#: src/utils_password.c:41 src/utils_password.c:74
#, c-format
msgid "Cannot check password quality: %s"
@@ -3236,26 +3305,6 @@ msgstr "このパスフレーズで使用可能なキーはありません。"
msgid "No usable keyslot is available."
msgstr "使用可能なキースロットがありません。"
#: src/utils_password.c:335
#, c-format
msgid "Cannot read keyfile %s."
msgstr "キーファイル %s を読みこめませんでした。"
#: src/utils_password.c:340
#, c-format
msgid "Cannot read %d bytes from keyfile %s."
msgstr "%d バイトをキーファイル %s から読みこめませんでした。"
#: src/utils_password.c:365
#, c-format
msgid "Cannot open keyfile %s for write."
msgstr "キーファイル %s を書き込み用にオープンできません。"
#: src/utils_password.c:372
#, c-format
msgid "Cannot write to keyfile %s."
msgstr "キーファイル %s に書き込めません。"
#: src/utils_luks2.c:47
#, c-format
msgid "Failed to open file %s in read-only mode."
@@ -3323,6 +3372,16 @@ msgstr "デバイス %s は使用中です。フォーマットを続けられ
msgid "Failed to open file %s in read/write mode."
msgstr "ファイル %s を読み書き可能なモードでオープンできません。"
#: src/utils_blockdev.c:294
#, c-format
msgid "Existing '%s' partition signature on device %s will be wiped."
msgstr "今ある '%s' パーティションシグネチャはデバイス %s から消されます。"
#: src/utils_blockdev.c:297
#, c-format
msgid "Existing '%s' superblock signature on device %s will be wiped."
msgstr "今ある '%s' スーパーブロックシグネチャはデバイス %s から消されます。"
#: src/utils_blockdev.c:300
msgid "Failed to wipe device signature."
msgstr "デバイスシグネチャを消せません。"

279
po/pl.po
View File

@@ -5,10 +5,10 @@
#
msgid ""
msgstr ""
"Project-Id-Version: cryptsetup 2.4.1-rc0\n"
"Project-Id-Version: cryptsetup 2.4.2-rc0\n"
"Report-Msgid-Bugs-To: dm-crypt@saout.de\n"
"POT-Creation-Date: 2021-08-30 12:40+0200\n"
"PO-Revision-Date: 2021-08-31 20:30+0200\n"
"POT-Creation-Date: 2021-11-11 19:08+0100\n"
"PO-Revision-Date: 2021-11-17 17:45+0100\n"
"Last-Translator: Jakub Bogusz <qboosh@pld-linux.org>\n"
"Language-Team: Polish <translation-team-pl@lists.sourceforge.net>\n"
"Language: pl\n"
@@ -35,45 +35,45 @@ msgstr "Żądana flaga odroczona nie jest obsługiwana."
msgid "DM-UUID for device %s was truncated."
msgstr "DM-UUID dla urządzenia %s został skrócony."
#: lib/libdevmapper.c:1570
#: lib/libdevmapper.c:1567
msgid "Unknown dm target type."
msgstr "Nieznany typ celu dm."
#: lib/libdevmapper.c:1691 lib/libdevmapper.c:1696 lib/libdevmapper.c:1760
#: lib/libdevmapper.c:1763
#: lib/libdevmapper.c:1688 lib/libdevmapper.c:1693 lib/libdevmapper.c:1757
#: lib/libdevmapper.c:1760
msgid "Requested dm-crypt performance options are not supported."
msgstr "Żądane opcje dm-crypta dotyczące wydajności nie są obsługiwane."
#: lib/libdevmapper.c:1703 lib/libdevmapper.c:1707
#: lib/libdevmapper.c:1700 lib/libdevmapper.c:1704
msgid "Requested dm-verity data corruption handling options are not supported."
msgstr "Żądane opcje dm-verity dotyczące obsługi uszkodzenia danych nie są obsługiwane."
#: lib/libdevmapper.c:1711
#: lib/libdevmapper.c:1708
msgid "Requested dm-verity FEC options are not supported."
msgstr "Żądane opcje FEC dm-verity nie są obsługiwane."
#: lib/libdevmapper.c:1715
#: lib/libdevmapper.c:1712
msgid "Requested data integrity options are not supported."
msgstr "Żądane opcje integralności danych nie są obsługiwane."
#: lib/libdevmapper.c:1717
#: lib/libdevmapper.c:1714
msgid "Requested sector_size option is not supported."
msgstr "Żądana opcja sector_size nie jest obsługiwana."
#: lib/libdevmapper.c:1722 lib/libdevmapper.c:1726
#: lib/libdevmapper.c:1719 lib/libdevmapper.c:1723
msgid "Requested automatic recalculation of integrity tags is not supported."
msgstr "Żądane automatyczne przeliczenie znaczników integralności nie jest obsługiwane."
#: lib/libdevmapper.c:1730 lib/libdevmapper.c:1766 lib/libdevmapper.c:1769
#: lib/libdevmapper.c:1727 lib/libdevmapper.c:1763 lib/libdevmapper.c:1766
#: lib/luks2/luks2_json_metadata.c:2204
msgid "Discard/TRIM is not supported."
msgstr "Porzucenie/TRIM nie jest obsługiwane."
#: lib/libdevmapper.c:1734
#: lib/libdevmapper.c:1731
msgid "Requested dm-integrity bitmap mode is not supported."
msgstr "Żądany tryb bitmapy dm-integrity nie jest obsługiwany."
#: lib/libdevmapper.c:2708
#: lib/libdevmapper.c:2705
#, c-format
msgid "Failed to query dm-%s segment."
msgstr "Nie udało się odpytać segmentu dm-%s."
@@ -137,7 +137,7 @@ msgstr "Ta operacja jest obsługiwana tylko dla urządzeń LUKS."
msgid "This operation is supported only for LUKS2 device."
msgstr "Ta operacja jest obsługiwana tylko dla urządzeń LUKS2."
#: lib/setup.c:420 lib/luks2/luks2_reencrypt.c:2436
#: lib/setup.c:420 lib/luks2/luks2_reencrypt.c:2440
msgid "All key slots full."
msgstr "Wszyskie miejsca na klucze są pełne."
@@ -200,7 +200,7 @@ msgstr "UUID nie jest obsługiwany dla tego rodzaju szyfrowania."
msgid "Detached metadata device is not supported for this crypt type."
msgstr "Osobne urządzenie metadanych nie jest obsługiwane dla tego rodzaju szyfrowania."
#: lib/setup.c:1552 lib/setup.c:1754 lib/luks2/luks2_reencrypt.c:2397
#: lib/setup.c:1552 lib/setup.c:1754 lib/luks2/luks2_reencrypt.c:2401
#: src/cryptsetup.c:1358 src/cryptsetup.c:3723
msgid "Unsupported encryption sector size."
msgstr "Nieobsługiwany rozmiar sektora szyfrowania."
@@ -250,7 +250,7 @@ msgid "WARNING: LUKS2 keyslots area size changed to %<PRIu64> bytes.\n"
msgstr "UWAGA: rozmiar obszaru kluczy LUKS2 zmienił się na %<PRIu64> (w bajtach).\n"
#: lib/setup.c:1915 lib/utils_device.c:909 lib/luks1/keyencryption.c:255
#: lib/luks2/luks2_reencrypt.c:2447 lib/luks2/luks2_reencrypt.c:3484
#: lib/luks2/luks2_reencrypt.c:2451 lib/luks2/luks2_reencrypt.c:3488
#, c-format
msgid "Device %s is too small."
msgstr "Urządzenie %s jest zbyt małe."
@@ -327,8 +327,8 @@ msgstr "Nieznany typ żądanego urządzenia szyfrującego %s."
msgid "Unsupported parameters on device %s."
msgstr "Nieobsługiwane parametry urządzenia %s."
#: lib/setup.c:2622 lib/setup.c:2708 lib/luks2/luks2_reencrypt.c:2499
#: lib/luks2/luks2_reencrypt.c:2843
#: lib/setup.c:2622 lib/setup.c:2708 lib/luks2/luks2_reencrypt.c:2503
#: lib/luks2/luks2_reencrypt.c:2847
#, c-format
msgid "Mismatching parameters on device %s."
msgstr "Niezgodne parametry dla urządzenia %s."
@@ -338,7 +338,7 @@ msgid "Crypt devices mismatch."
msgstr "Urządzenia szyfrowane nie zgadzają się."
#: lib/setup.c:2765 lib/setup.c:2770 lib/luks2/luks2_reencrypt.c:2143
#: lib/luks2/luks2_reencrypt.c:3251
#: lib/luks2/luks2_reencrypt.c:3255
#, c-format
msgid "Failed to reload device %s."
msgstr "Nie udało się przeładować urządzenia %s."
@@ -350,7 +350,7 @@ msgid "Failed to suspend device %s."
msgstr "Nie udało się wstrzymać urządzenia %s."
#: lib/setup.c:2788 lib/luks2/luks2_reencrypt.c:2128
#: lib/luks2/luks2_reencrypt.c:3186 lib/luks2/luks2_reencrypt.c:3255
#: lib/luks2/luks2_reencrypt.c:3190 lib/luks2/luks2_reencrypt.c:3259
#, c-format
msgid "Failed to resume device %s."
msgstr "Nie udało wznowić urządzenia %s."
@@ -445,11 +445,11 @@ msgid "Reencryption in-progress. Cannot activate device."
msgstr "Ponowne szyfrowanie trwa. Nie można uaktywnić urządzenia."
#: lib/setup.c:4091 lib/luks2/luks2_json_metadata.c:2287
#: lib/luks2/luks2_reencrypt.c:2942
#: lib/luks2/luks2_reencrypt.c:2946
msgid "Failed to get reencryption lock."
msgstr "Nie udało się uzyskać blokady ponownego szyfrowania."
#: lib/setup.c:4104 lib/luks2/luks2_reencrypt.c:2961
#: lib/setup.c:4104 lib/luks2/luks2_reencrypt.c:2965
msgid "LUKS2 reencryption recovery failed."
msgstr "Odtwarzanie ponownego szyfrowania LUKS2 nie powiodło się."
@@ -552,7 +552,7 @@ msgstr "Nie udało się przypisać klucza %d do skrótu."
msgid "Kernel keyring is not supported by the kernel."
msgstr "Pęk kluczy w jądrze nie jest obsługiwany przez jądro."
#: lib/setup.c:6161 lib/luks2/luks2_reencrypt.c:3058
#: lib/setup.c:6161 lib/luks2/luks2_reencrypt.c:3062
#, c-format
msgid "Failed to read passphrase from keyring (error %d)."
msgstr "Nie udało się odczytać hasła z pęku kluczy (błąd %d)."
@@ -1132,6 +1132,16 @@ msgstr "Przy analizie zewnętrznego klucza napotkano nieoczekiwany wpis metadany
msgid "Unexpected metadata entry value '%u' found when parsing external key."
msgstr "Przy analizie zewnętrznego klucza napotkano nieoczekiwaną wartość wpisu metadanych '%u'."
#: lib/bitlk/bitlk.c:950
#, c-format
msgid "Unsupported BEK metadata version %<PRIu32>"
msgstr "Nieobsługiwana wersja metadanych BEK %<PRIu32>"
#: lib/bitlk/bitlk.c:955
#, c-format
msgid "Unexpected BEK metadata size %<PRIu32> does not match BEK file length"
msgstr "Nieoczekiwany rozmiar metadanych BEK %<PRIu32> nie zgadza się z długością pliku BEK"
#: lib/bitlk/bitlk.c:980
msgid "Unexpected metadata entry found when parsing startup key."
msgstr "Przy analizie klucza początkowego napotkano nieoczekiwany wpis metadanych."
@@ -1316,17 +1326,17 @@ msgstr "Jądro nie obsługuje stałego wyrównania metadanych dm-integrity."
msgid "Kernel refuses to activate insecure recalculate option (see legacy activation options to override)."
msgstr "Jądro odmawia uaktywnienia niebezpiecznej opcji przeliczenia (p. stare opcje aktywacji, aby wymusić)."
#: lib/luks2/luks2_disk_metadata.c:381 lib/luks2/luks2_json_metadata.c:973
#: lib/luks2/luks2_disk_metadata.c:393 lib/luks2/luks2_json_metadata.c:973
#: lib/luks2/luks2_json_metadata.c:1268
#, c-format
msgid "Failed to acquire write lock on device %s."
msgstr "Nie udało się uzyskać blokady dla zapisu na urządzeniu %s."
#: lib/luks2/luks2_disk_metadata.c:390
#: lib/luks2/luks2_disk_metadata.c:402
msgid "Detected attempt for concurrent LUKS2 metadata update. Aborting operation."
msgstr "Wykryto próbę jednoczesnego uaktualnienia metadanych LUKS2. Przerywanie operacji."
#: lib/luks2/luks2_disk_metadata.c:689 lib/luks2/luks2_disk_metadata.c:710
#: lib/luks2/luks2_disk_metadata.c:701 lib/luks2/luks2_disk_metadata.c:722
msgid ""
"Device contains ambiguous signatures, cannot auto-recover LUKS2.\n"
"Please run \"cryptsetup repair\" for recovery."
@@ -1401,7 +1411,7 @@ msgstr ""
msgid "Ignored unknown flag %s."
msgstr "Zignorowano nieznaną flagę %s."
#: lib/luks2/luks2_json_metadata.c:2054 lib/luks2/luks2_reencrypt.c:1840
#: lib/luks2/luks2_json_metadata.c:2054 lib/luks2/luks2_reencrypt.c:1843
#, c-format
msgid "Missing key for dm-crypt segment %u"
msgstr "Brak klucza dla segmentu dm-crypt %u"
@@ -1422,7 +1432,7 @@ msgstr "Nieobsługiwana konfiguracja integralności urządzenia."
msgid "Reencryption in-progress. Cannot deactivate device."
msgstr "Podobne szyfrowanie trwa. Nie można dezaktywować urządzenia."
#: lib/luks2/luks2_json_metadata.c:2296 lib/luks2/luks2_reencrypt.c:3296
#: lib/luks2/luks2_json_metadata.c:2296 lib/luks2/luks2_reencrypt.c:3300
#, c-format
msgid "Failed to replace suspended device %s with dm-error target."
msgstr "Nie udało się zastąpić wstrzymanego urządzenia %s celem dm-error."
@@ -1456,7 +1466,7 @@ msgstr "Nie udało się otworzyć klucza."
msgid "Cannot use %s-%s cipher for keyslot encryption."
msgstr "Nie można użyć szyfru %s-%s do szyfrowania kluczy."
#: lib/luks2/luks2_keyslot_luks2.c:483
#: lib/luks2/luks2_keyslot_luks2.c:485
msgid "No space for new keyslot."
msgstr "Brak miejsca na nowy klucz."
@@ -1531,7 +1541,7 @@ msgstr "Nieobsługiwany tryb odporności %s"
#: lib/luks2/luks2_reencrypt.c:1259 lib/luks2/luks2_reencrypt.c:1414
#: lib/luks2/luks2_reencrypt.c:1497 lib/luks2/luks2_reencrypt.c:1531
#: lib/luks2/luks2_reencrypt.c:3136
#: lib/luks2/luks2_reencrypt.c:3140
msgid "Failed to initialize old segment storage wrapper."
msgstr "Nie udało się zainicjować obudowania przestrzeni starego segmentu."
@@ -1543,7 +1553,7 @@ msgstr "Nie udało się zainicjować obudowania przestrzeni nowego segmentu."
msgid "Failed to read checksums for current hotzone."
msgstr "Nie udało się odczytać sum kontrolnych dla aktualnej strefy hotzone."
#: lib/luks2/luks2_reencrypt.c:1448 lib/luks2/luks2_reencrypt.c:3144
#: lib/luks2/luks2_reencrypt.c:1448 lib/luks2/luks2_reencrypt.c:3148
#, c-format
msgid "Failed to read hotzone area starting at %<PRIu64>."
msgstr "Nie udało się odczytać obszaru hotzone zaczynającego się od %<PRIu64>."
@@ -1582,138 +1592,142 @@ msgstr "Nie udało się załadować nowego odwzorowania dla urządzenia %s."
msgid "Failed to refresh reencryption devices stack."
msgstr "Nie udało się odświeżyć stosu urządzenia ponownego szyfrowania."
#: lib/luks2/luks2_reencrypt.c:2305
#: lib/luks2/luks2_reencrypt.c:2309
msgid "Failed to set new keyslots area size."
msgstr "Nie udało się ustawić nowego rozmiaru obszaru kluczy."
#: lib/luks2/luks2_reencrypt.c:2409
#: lib/luks2/luks2_reencrypt.c:2413
#, c-format
msgid "Data shift is not aligned to requested encryption sector size (%<PRIu32> bytes)."
msgstr "Przesunięcie danych nie jest wyrównane do żądanego rozmiaru sektora szyfrowania (bajtów: %<PRIu32>)."
#: lib/luks2/luks2_reencrypt.c:2430
#: lib/luks2/luks2_reencrypt.c:2434
#, c-format
msgid "Data device is not aligned to requested encryption sector size (%<PRIu32> bytes)."
msgstr "Urzędzenie danych nie jest wyrównane do żądanego rozmiaru sektora szyfrowania (bajtów: %<PRIu32>)."
#: lib/luks2/luks2_reencrypt.c:2451
#: lib/luks2/luks2_reencrypt.c:2455
#, c-format
msgid "Data shift (%<PRIu64> sectors) is less than future data offset (%<PRIu64> sectors)."
msgstr "Przesunięcie danych (sektorów: %<PRIu64>) jest mniejsze niż przyszły offset danych (sektorów: %<PRIu64>)."
#: lib/luks2/luks2_reencrypt.c:2457 lib/luks2/luks2_reencrypt.c:2885
#: lib/luks2/luks2_reencrypt.c:2906
#: lib/luks2/luks2_reencrypt.c:2461 lib/luks2/luks2_reencrypt.c:2889
#: lib/luks2/luks2_reencrypt.c:2910
#, c-format
msgid "Failed to open %s in exclusive mode (already mapped or mounted)."
msgstr "Nie udało się otworzyć %s w trybie wyłączności (już odwzorowano lub zamontowano)."
#: lib/luks2/luks2_reencrypt.c:2625
#: lib/luks2/luks2_reencrypt.c:2629
msgid "Device not marked for LUKS2 reencryption."
msgstr "Urządzenie nie jest oznaczone do ponownego szyfrowania LUKS2."
#: lib/luks2/luks2_reencrypt.c:2631 lib/luks2/luks2_reencrypt.c:3411
#: lib/luks2/luks2_reencrypt.c:2635 lib/luks2/luks2_reencrypt.c:3415
msgid "Failed to load LUKS2 reencryption context."
msgstr "Nie udało się załadować kontekstu ponownego szyfrowania LUKS2."
#: lib/luks2/luks2_reencrypt.c:2711
#: lib/luks2/luks2_reencrypt.c:2715
msgid "Failed to get reencryption state."
msgstr "Nie udało się pobrać stanu ponownego szyfrowania."
#: lib/luks2/luks2_reencrypt.c:2715
#: lib/luks2/luks2_reencrypt.c:2719
msgid "Device is not in reencryption."
msgstr "Urządzenie nie jest w trakcie ponownego szyfrowania."
#: lib/luks2/luks2_reencrypt.c:2722
#: lib/luks2/luks2_reencrypt.c:2726
msgid "Reencryption process is already running."
msgstr "Proces ponownego szyfrowania już trwa."
#: lib/luks2/luks2_reencrypt.c:2724
#: lib/luks2/luks2_reencrypt.c:2728
msgid "Failed to acquire reencryption lock."
msgstr "Nie udało się uzyskać blokady dla ponownego szyfrowania."
#: lib/luks2/luks2_reencrypt.c:2742
#: lib/luks2/luks2_reencrypt.c:2746
msgid "Cannot proceed with reencryption. Run reencryption recovery first."
msgstr "Nie można kontynuować ponownego szyfrowania. Należy najpierw uruchomić odtworzenie ponownego szyfrowania."
#: lib/luks2/luks2_reencrypt.c:2856
#: lib/luks2/luks2_reencrypt.c:2860
msgid "Active device size and requested reencryption size don't match."
msgstr "Rozmiar urządzenia aktywnego oraz żądany rozmiar ponownego szyfrowania różnią się."
#: lib/luks2/luks2_reencrypt.c:2870
#: lib/luks2/luks2_reencrypt.c:2874
msgid "Illegal device size requested in reencryption parameters."
msgstr "W parametrach ponownego szyfrowania zażądano niedozwolonego rozmiaru urządzenia."
#: lib/luks2/luks2_reencrypt.c:2940
#: lib/luks2/luks2_reencrypt.c:2944
msgid "Reencryption in-progress. Cannot perform recovery."
msgstr "Ponowne szyfrowanie trwa. Nie można wykonać odzyskiwania."
#: lib/luks2/luks2_reencrypt.c:3012
#: lib/luks2/luks2_reencrypt.c:3016
msgid "LUKS2 reencryption already initialized in metadata."
msgstr "Ponowne szyfrowanie LUKS2 jest już zainicjowane w metadanych."
#: lib/luks2/luks2_reencrypt.c:3019
#: lib/luks2/luks2_reencrypt.c:3023
msgid "Failed to initialize LUKS2 reencryption in metadata."
msgstr "Nie udało się zainicjować ponownego szyfrowania LUKS2 w metadanych."
#: lib/luks2/luks2_reencrypt.c:3110
#: lib/luks2/luks2_reencrypt.c:3114
msgid "Failed to set device segments for next reencryption hotzone."
msgstr "Nie udało się ustawić segmentów urządzeń dla następnej strefy hotzone ponownego szyfrowania."
#: lib/luks2/luks2_reencrypt.c:3152
#: lib/luks2/luks2_reencrypt.c:3156
msgid "Failed to write reencryption resilience metadata."
msgstr "Nie udało się zapisać metadanych odporności ponownego szyfrowania."
#: lib/luks2/luks2_reencrypt.c:3159
#: lib/luks2/luks2_reencrypt.c:3163
msgid "Decryption failed."
msgstr "Odszyfrowanie nie powiodło się."
#: lib/luks2/luks2_reencrypt.c:3164
#: lib/luks2/luks2_reencrypt.c:3168
#, c-format
msgid "Failed to write hotzone area starting at %<PRIu64>."
msgstr "Nie udało się zapisać obszaru hotzone zaczynającego się od %<PRIu64>."
#: lib/luks2/luks2_reencrypt.c:3169
#: lib/luks2/luks2_reencrypt.c:3173
msgid "Failed to sync data."
msgstr "Nie udało się zsynchronizować danych."
#: lib/luks2/luks2_reencrypt.c:3177
#: lib/luks2/luks2_reencrypt.c:3181
msgid "Failed to update metadata after current reencryption hotzone completed."
msgstr "Nie udało się uaktualnić metadanych po zakończeniu aktualnej strefy hotzone ponownego szyfrowania."
#: lib/luks2/luks2_reencrypt.c:3244
#: lib/luks2/luks2_reencrypt.c:3248
msgid "Failed to write LUKS2 metadata."
msgstr "Nie udało się zapisać metadanych LUKS2."
#: lib/luks2/luks2_reencrypt.c:3267
#: lib/luks2/luks2_reencrypt.c:3271
msgid "Failed to wipe backup segment data."
msgstr "Nie udało wymazać danych segmentu zapasowego."
#: lib/luks2/luks2_reencrypt.c:3280
#: lib/luks2/luks2_reencrypt.c:3284
msgid "Failed to disable reencryption requirement flag."
msgstr "Nie udało się wyłączyć flagi wymagania ponownego szyfrowania."
#: lib/luks2/luks2_reencrypt.c:3288
#: lib/luks2/luks2_reencrypt.c:3292
#, c-format
msgid "Fatal error while reencrypting chunk starting at %<PRIu64>, %<PRIu64> sectors long."
msgstr "Błąd krytyczny podczas ponownego szyfrowania fragmentu zaczynającego się od %<PRIu64> o długości w sektorach %<PRIu64>."
#: lib/luks2/luks2_reencrypt.c:3297
#: lib/luks2/luks2_reencrypt.c:3296
msgid "Online reencryption failed."
msgstr "Ponowne szyfrowanie online nie powiodło się."
#: lib/luks2/luks2_reencrypt.c:3301
msgid "Do not resume the device unless replaced with error target manually."
msgstr "Proszę nie wznawiać urządzenia dopóki nie zostanie zastąpione celem błędnym ręcznie."
#: lib/luks2/luks2_reencrypt.c:3349
#: lib/luks2/luks2_reencrypt.c:3353
msgid "Cannot proceed with reencryption. Unexpected reencryption status."
msgstr "Nie można kontynuować ponownego szyfrowania. Nieoczekiwany stan ponownego szyfrowania."
#: lib/luks2/luks2_reencrypt.c:3355
#: lib/luks2/luks2_reencrypt.c:3359
msgid "Missing or invalid reencrypt context."
msgstr "Brak lub błędny kontekst ponownego szyfrowania."
#: lib/luks2/luks2_reencrypt.c:3362
#: lib/luks2/luks2_reencrypt.c:3366
msgid "Failed to initialize reencryption device stack."
msgstr "Nie udało się zainicjować stosu urządzenia ponownego szyfrowania."
#: lib/luks2/luks2_reencrypt.c:3381 lib/luks2/luks2_reencrypt.c:3424
#: lib/luks2/luks2_reencrypt.c:3385 lib/luks2/luks2_reencrypt.c:3428
msgid "Failed to update reencryption context."
msgstr "Nie udało się uaktualnić kontekstu ponownego szyfrowania."
@@ -2182,6 +2196,15 @@ msgstr "Plik nagłówka %s już istnieje. Przerwano."
msgid "Cannot create temporary header file %s."
msgstr "Nie można utworzyć pliku tymczasowego nagłówka %s."
#: src/cryptsetup.c:2975
msgid "LUKS2 metadata size is larger than data shift value."
msgstr "Rozmiar metadanych LUKS2 jest większy niż wartość przesunięcia danych."
#: src/cryptsetup.c:3007
#, c-format
msgid "Failed to place new header at head of device %s."
msgstr "Nie udało się umieścić nowego nagłówka na początku urządzenia %s."
#: src/cryptsetup.c:3018
#, c-format
msgid "%s/%s is now active and ready for online encryption.\n"
@@ -2915,6 +2938,10 @@ msgstr "Nie można zapisać pliku logu ponownego szyfrowania."
msgid "Cannot read reencryption log file."
msgstr "Nie można odczytać pliku logu ponownego szyfrowania."
#: src/cryptsetup_reencrypt.c:353
msgid "Wrong log format."
msgstr "Niewłaściwy format logu."
#: src/cryptsetup_reencrypt.c:380
#, c-format
msgid "Log file %s exists, resuming reencryption.\n"
@@ -3067,112 +3094,134 @@ msgstr "Opcja --uuid jest dozwolona tylko wraz z --decrypt."
msgid "Invalid luks type. Use one of these: 'luks', 'luks1' or 'luks2'."
msgstr "Błędny typ LUKS - musi być jednym z 'luks', 'luks1' lub 'luks2'."
#: src/utils_tools.c:126
#: src/utils_tools.c:119
msgid ""
"\n"
"WARNING!\n"
"========\n"
msgstr ""
"\n"
"UWAGA!\n"
"======\n"
#. TRANSLATORS: User must type "YES" (in capital letters), do not translate this word.
#: src/utils_tools.c:121
#, c-format
msgid ""
"%s\n"
"\n"
"Are you sure? (Type 'yes' in capital letters): "
msgstr ""
"%s\n"
"\n"
"Na pewno? (należy wpisać 'yes' wielkimi literami): "
#: src/utils_tools.c:127
msgid "Error reading response from terminal."
msgstr "Błąd podczas odczytu odpowiedzi z terminala."
#: src/utils_tools.c:158
#: src/utils_tools.c:159
msgid "Command successful."
msgstr "Polecenie się powiodło."
#: src/utils_tools.c:166
#: src/utils_tools.c:167
msgid "wrong or missing parameters"
msgstr "niewłaściwe lub brakujące parametry"
#: src/utils_tools.c:168
#: src/utils_tools.c:169
msgid "no permission or bad passphrase"
msgstr "brak uprawnień lub błędne hasło"
#: src/utils_tools.c:170
#: src/utils_tools.c:171
msgid "out of memory"
msgstr "brak pamięci"
#: src/utils_tools.c:172
#: src/utils_tools.c:173
msgid "wrong device or file specified"
msgstr "podano niewłaściwe urządzenie lub plik"
#: src/utils_tools.c:174
#: src/utils_tools.c:175
msgid "device already exists or device is busy"
msgstr "urządzenie już istnieje lub jest zajęte"
#: src/utils_tools.c:176
#: src/utils_tools.c:177
msgid "unknown error"
msgstr "nieznany błąd"
#: src/utils_tools.c:178
#: src/utils_tools.c:179
#, c-format
msgid "Command failed with code %i (%s)."
msgstr "Polecenie nie powiodło się z kodem %i (%s)."
#: src/utils_tools.c:256
#: src/utils_tools.c:257
#, c-format
msgid "Key slot %i created."
msgstr "Klucz numer %i utworzony."
#: src/utils_tools.c:258
#: src/utils_tools.c:259
#, c-format
msgid "Key slot %i unlocked."
msgstr "Klucz numer %i odblokowany."
#: src/utils_tools.c:260
#: src/utils_tools.c:261
#, c-format
msgid "Key slot %i removed."
msgstr "Klucz numer %i usunięty."
#: src/utils_tools.c:269
#: src/utils_tools.c:270
#, c-format
msgid "Token %i created."
msgstr "Token %i utworzony."
#: src/utils_tools.c:271
#: src/utils_tools.c:272
#, c-format
msgid "Token %i removed."
msgstr "Token %i usunięty."
#: src/utils_tools.c:281
#: src/utils_tools.c:282
msgid "No token could be unlocked with this PIN."
msgstr "Przy użyciu tego PIN-u nie udało się odblokować żadnego tokenu."
#: src/utils_tools.c:283
#: src/utils_tools.c:284
#, c-format
msgid "Token %i requires PIN."
msgstr "Token %i wymaga PIN-u."
#: src/utils_tools.c:285
#: src/utils_tools.c:286
#, c-format
msgid "Token (type %s) requires PIN."
msgstr "Token (typu %s) wymaga PIN-u."
#: src/utils_tools.c:288
#: src/utils_tools.c:289
#, c-format
msgid "Token %i cannot unlock assigned keyslot(s) (wrong keyslot passphrase)."
msgstr "Token %i nie może odblokować przypisanych obszarów kluczy (błędne hasło klucza)."
#: src/utils_tools.c:290
#: src/utils_tools.c:291
#, c-format
msgid "Token (type %s) cannot unlock assigned keyslot(s) (wrong keyslot passphrase)."
msgstr "Token (typu %s) nie może odblokować przypisanych obszarów kluczy (błędne hasło klucza)."
#: src/utils_tools.c:293
#: src/utils_tools.c:294
#, c-format
msgid "Token %i requires additional missing resource."
msgstr "Token %i wymaga dodatkowego, brakującego zasobu."
#: src/utils_tools.c:295
#: src/utils_tools.c:296
#, c-format
msgid "Token (type %s) requires additional missing resource."
msgstr "Token (typu %s) wymaga dodatkowego, brakującego zasobu."
#: src/utils_tools.c:298
#: src/utils_tools.c:299
#, c-format
msgid "No usable token (type %s) is available."
msgstr "Brak dostępnego użytecznego tokenu (typu %s)."
#: src/utils_tools.c:300
#: src/utils_tools.c:301
msgid "No usable token is available."
msgstr "Brak dostępnego użytecznego tokenu."
#: src/utils_tools.c:462
#: src/utils_tools.c:463
msgid ""
"\n"
"Wipe interrupted."
@@ -3180,7 +3229,7 @@ msgstr ""
"\n"
"Wymazywanie przerwane."
#: src/utils_tools.c:491
#: src/utils_tools.c:492
msgid ""
"\n"
"Reencryption interrupted."
@@ -3188,6 +3237,26 @@ msgstr ""
"\n"
"Ponowne szyfrowanie przerwane."
#: src/utils_tools.c:511
#, c-format
msgid "Cannot read keyfile %s."
msgstr "Nie można odczytać pliku klucza %s."
#: src/utils_tools.c:516
#, c-format
msgid "Cannot read %d bytes from keyfile %s."
msgstr "Nie można odczytać %d bajtów z pliku klucza %s."
#: src/utils_tools.c:541
#, c-format
msgid "Cannot open keyfile %s for write."
msgstr "Nie można otworzyć pliku klucza %s do zapisu."
#: src/utils_tools.c:548
#, c-format
msgid "Cannot write to keyfile %s."
msgstr "Nie można zapisać pliku klucza %s."
#: src/utils_password.c:41 src/utils_password.c:74
#, c-format
msgid "Cannot check password quality: %s"
@@ -3241,26 +3310,6 @@ msgstr "Dla tego hasła nie ma dostępnego klucza."
msgid "No usable keyslot is available."
msgstr "Brak dostępnego miejsca na klucz."
#: src/utils_password.c:335
#, c-format
msgid "Cannot read keyfile %s."
msgstr "Nie można odczytać pliku klucza %s."
#: src/utils_password.c:340
#, c-format
msgid "Cannot read %d bytes from keyfile %s."
msgstr "Nie można odczytać %d bajtów z pliku klucza %s."
#: src/utils_password.c:365
#, c-format
msgid "Cannot open keyfile %s for write."
msgstr "Nie można otworzyć pliku klucza %s do zapisu."
#: src/utils_password.c:372
#, c-format
msgid "Cannot write to keyfile %s."
msgstr "Nie można zapisać pliku klucza %s."
#: src/utils_luks2.c:47
#, c-format
msgid "Failed to open file %s in read-only mode."
@@ -3328,6 +3377,16 @@ msgstr "Urządzenie %s jest w użyciu. Nie można kontynuować operacji formatow
msgid "Failed to open file %s in read/write mode."
msgstr "Nie udało się otworzyć pliku %s do odczytu i zapisu."
#: src/utils_blockdev.c:294
#, c-format
msgid "Existing '%s' partition signature on device %s will be wiped."
msgstr "Istniejąca sygnatura partycji '%s' na urządzeniu %s zostanie wymazana."
#: src/utils_blockdev.c:297
#, c-format
msgid "Existing '%s' superblock signature on device %s will be wiped."
msgstr "Istniejąca sygnatura superbloku '%s' na urządzeniu %s zostanie wymazana."
#: src/utils_blockdev.c:300
msgid "Failed to wipe device signature."
msgstr "Nie udało się wymazać sygnatury urządzenia."

813
po/ru.po

File diff suppressed because it is too large Load Diff

532
po/sr.po

File diff suppressed because it is too large Load Diff

285
po/uk.po
View File

@@ -5,10 +5,10 @@
# Yuri Chornoivan <yurchor@ukr.net>, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021.
msgid ""
msgstr ""
"Project-Id-Version: cryptsetup 2.4.1-rc0\n"
"Project-Id-Version: cryptsetup 2.4.2-rc0\n"
"Report-Msgid-Bugs-To: dm-crypt@saout.de\n"
"POT-Creation-Date: 2021-08-30 12:40+0200\n"
"PO-Revision-Date: 2021-08-30 17:33+0300\n"
"POT-Creation-Date: 2021-11-11 19:08+0100\n"
"PO-Revision-Date: 2021-11-12 17:12+0200\n"
"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
"Language-Team: Ukrainian <trans-uk@lists.fedoraproject.org>\n"
"Language: uk\n"
@@ -36,45 +36,45 @@ msgstr "Підтримки бажаного прапорця відкладен
msgid "DM-UUID for device %s was truncated."
msgstr "DM-UUID для пристрою %s було обрізано."
#: lib/libdevmapper.c:1570
#: lib/libdevmapper.c:1567
msgid "Unknown dm target type."
msgstr "Невідомий тип призначення dm."
#: lib/libdevmapper.c:1691 lib/libdevmapper.c:1696 lib/libdevmapper.c:1760
#: lib/libdevmapper.c:1763
#: lib/libdevmapper.c:1688 lib/libdevmapper.c:1693 lib/libdevmapper.c:1757
#: lib/libdevmapper.c:1760
msgid "Requested dm-crypt performance options are not supported."
msgstr "Підтримки вказаних параметрів швидкодії dm-crypt не передбачено."
#: lib/libdevmapper.c:1703 lib/libdevmapper.c:1707
#: lib/libdevmapper.c:1700 lib/libdevmapper.c:1704
msgid "Requested dm-verity data corruption handling options are not supported."
msgstr "Підтримки вказаних параметрів обробки пошкоджених даних за допомогою dm-verity не передбачено."
#: lib/libdevmapper.c:1711
#: lib/libdevmapper.c:1708
msgid "Requested dm-verity FEC options are not supported."
msgstr "Підтримки вказаних параметрів FEC за допомогою dm-verity не передбачено."
#: lib/libdevmapper.c:1715
#: lib/libdevmapper.c:1712
msgid "Requested data integrity options are not supported."
msgstr "Підтримки вказаних параметрів цілісності даних не передбачено."
#: lib/libdevmapper.c:1717
#: lib/libdevmapper.c:1714
msgid "Requested sector_size option is not supported."
msgstr "Підтримки вказаного параметра sector_size не передбачено."
#: lib/libdevmapper.c:1722 lib/libdevmapper.c:1726
#: lib/libdevmapper.c:1719 lib/libdevmapper.c:1723
msgid "Requested automatic recalculation of integrity tags is not supported."
msgstr "Підтримки потрібного вам автоматичного повторного обчислення міток цілісності не передбачено."
#: lib/libdevmapper.c:1730 lib/libdevmapper.c:1766 lib/libdevmapper.c:1769
#: lib/libdevmapper.c:1727 lib/libdevmapper.c:1763 lib/libdevmapper.c:1766
#: lib/luks2/luks2_json_metadata.c:2204
msgid "Discard/TRIM is not supported."
msgstr "Підтримки відкидання або обрізання не передбачено."
#: lib/libdevmapper.c:1734
#: lib/libdevmapper.c:1731
msgid "Requested dm-integrity bitmap mode is not supported."
msgstr "Підтримки вказаного режиму бітової карти цілісності dm не передбачено."
#: lib/libdevmapper.c:2708
#: lib/libdevmapper.c:2705
#, c-format
msgid "Failed to query dm-%s segment."
msgstr "Не вдалося опитати сегмент dm-%s."
@@ -138,7 +138,7 @@ msgstr "Підтримку цієї дії передбачено лише дл
msgid "This operation is supported only for LUKS2 device."
msgstr "Підтримку цієї дії передбачено лише для пристроїв LUKS2."
#: lib/setup.c:420 lib/luks2/luks2_reencrypt.c:2436
#: lib/setup.c:420 lib/luks2/luks2_reencrypt.c:2440
msgid "All key slots full."
msgstr "Заповнено всі слоти ключів."
@@ -201,7 +201,7 @@ msgstr "Підтримки UUID для цього типу шифрування
msgid "Detached metadata device is not supported for this crypt type."
msgstr "Підтримки пристрою від'єднаних метаданих для цього типу шифрування не передбачено."
#: lib/setup.c:1552 lib/setup.c:1754 lib/luks2/luks2_reencrypt.c:2397
#: lib/setup.c:1552 lib/setup.c:1754 lib/luks2/luks2_reencrypt.c:2401
#: src/cryptsetup.c:1358 src/cryptsetup.c:3723
msgid "Unsupported encryption sector size."
msgstr "Непідтримуваний розмір сектора шифрування."
@@ -251,7 +251,7 @@ msgid "WARNING: LUKS2 keyslots area size changed to %<PRIu64> bytes.\n"
msgstr "Увага: розмір області слотів ключів LUKS2 змінено до %<PRIu64> байтів.\n"
#: lib/setup.c:1915 lib/utils_device.c:909 lib/luks1/keyencryption.c:255
#: lib/luks2/luks2_reencrypt.c:2447 lib/luks2/luks2_reencrypt.c:3484
#: lib/luks2/luks2_reencrypt.c:2451 lib/luks2/luks2_reencrypt.c:3488
#, c-format
msgid "Device %s is too small."
msgstr "Об’єм пристрою %s є надто малим."
@@ -328,8 +328,8 @@ msgstr "Надіслано запит щодо невідомого типу п
msgid "Unsupported parameters on device %s."
msgstr "Непідтримувані параметри на пристрої %s."
#: lib/setup.c:2622 lib/setup.c:2708 lib/luks2/luks2_reencrypt.c:2499
#: lib/luks2/luks2_reencrypt.c:2843
#: lib/setup.c:2622 lib/setup.c:2708 lib/luks2/luks2_reencrypt.c:2503
#: lib/luks2/luks2_reencrypt.c:2847
#, c-format
msgid "Mismatching parameters on device %s."
msgstr "Невідповідність параметрів на пристрої %s."
@@ -339,7 +339,7 @@ msgid "Crypt devices mismatch."
msgstr "Невідповідність пристроїв шифрування."
#: lib/setup.c:2765 lib/setup.c:2770 lib/luks2/luks2_reencrypt.c:2143
#: lib/luks2/luks2_reencrypt.c:3251
#: lib/luks2/luks2_reencrypt.c:3255
#, c-format
msgid "Failed to reload device %s."
msgstr "Не вдалося перезавантажити пристрій %s."
@@ -351,7 +351,7 @@ msgid "Failed to suspend device %s."
msgstr "Не вдалося приспати пристрій %s."
#: lib/setup.c:2788 lib/luks2/luks2_reencrypt.c:2128
#: lib/luks2/luks2_reencrypt.c:3186 lib/luks2/luks2_reencrypt.c:3255
#: lib/luks2/luks2_reencrypt.c:3190 lib/luks2/luks2_reencrypt.c:3259
#, c-format
msgid "Failed to resume device %s."
msgstr "Не вдалося відновити роботу пристрою %s."
@@ -446,11 +446,11 @@ msgid "Reencryption in-progress. Cannot activate device."
msgstr "Виконуємо повторне шифрування. Не можна активувати пристрій."
#: lib/setup.c:4091 lib/luks2/luks2_json_metadata.c:2287
#: lib/luks2/luks2_reencrypt.c:2942
#: lib/luks2/luks2_reencrypt.c:2946
msgid "Failed to get reencryption lock."
msgstr "Не вдалося отримати стан блокування для повторного шифрування."
#: lib/setup.c:4104 lib/luks2/luks2_reencrypt.c:2961
#: lib/setup.c:4104 lib/luks2/luks2_reencrypt.c:2965
msgid "LUKS2 reencryption recovery failed."
msgstr "Не вдалося виконати відновлення даних повторного шифрування LUKS2."
@@ -553,7 +553,7 @@ msgstr "Не вдалося прив'язати слот ключа %d до ко
msgid "Kernel keyring is not supported by the kernel."
msgstr "У ядрі не передбачено підтримки сховища ключів ядра."
#: lib/setup.c:6161 lib/luks2/luks2_reencrypt.c:3058
#: lib/setup.c:6161 lib/luks2/luks2_reencrypt.c:3062
#, c-format
msgid "Failed to read passphrase from keyring (error %d)."
msgstr "Не вдалося прочитати пароль із ключа зі сховища ключів (помилка %d)."
@@ -1133,6 +1133,16 @@ msgstr "Під час обробки зовнішнього ключа вияв
msgid "Unexpected metadata entry value '%u' found when parsing external key."
msgstr "Під час обробки зовнішнього ключа виявлено неочікуване значення запису метаданих «%u»."
#: lib/bitlk/bitlk.c:950
#, c-format
msgid "Unsupported BEK metadata version %<PRIu32>"
msgstr "Непідтримувана версія метаданих BEK, %<PRIu32>"
#: lib/bitlk/bitlk.c:955
#, c-format
msgid "Unexpected BEK metadata size %<PRIu32> does not match BEK file length"
msgstr "Неочікуваний розмір метаданих BEK, %<PRIu32>, не відповідає довжині файла BEK"
#: lib/bitlk/bitlk.c:980
msgid "Unexpected metadata entry found when parsing startup key."
msgstr "Під час обробки ключа запуску виявлено неочікуваний запис метаданих."
@@ -1317,17 +1327,17 @@ msgstr "У ядрі не передбачено підтримки вирівн
msgid "Kernel refuses to activate insecure recalculate option (see legacy activation options to override)."
msgstr "Ядром відмовлено у активації небезпечного параметра повторного обчислення (див. застарілі параметри активації, щоб скористатися обчисленням попри це)."
#: lib/luks2/luks2_disk_metadata.c:381 lib/luks2/luks2_json_metadata.c:973
#: lib/luks2/luks2_disk_metadata.c:393 lib/luks2/luks2_json_metadata.c:973
#: lib/luks2/luks2_json_metadata.c:1268
#, c-format
msgid "Failed to acquire write lock on device %s."
msgstr "Не вдалося отримати блокування запису на пристрої %s."
#: lib/luks2/luks2_disk_metadata.c:390
#: lib/luks2/luks2_disk_metadata.c:402
msgid "Detected attempt for concurrent LUKS2 metadata update. Aborting operation."
msgstr "Виявлено спробу конкурентного оновлення метаданих LUKS2. Перериваємо виконання дії."
#: lib/luks2/luks2_disk_metadata.c:689 lib/luks2/luks2_disk_metadata.c:710
#: lib/luks2/luks2_disk_metadata.c:701 lib/luks2/luks2_disk_metadata.c:722
msgid ""
"Device contains ambiguous signatures, cannot auto-recover LUKS2.\n"
"Please run \"cryptsetup repair\" for recovery."
@@ -1402,7 +1412,7 @@ msgstr ""
msgid "Ignored unknown flag %s."
msgstr "Проігноровано невідомий прапорець %s."
#: lib/luks2/luks2_json_metadata.c:2054 lib/luks2/luks2_reencrypt.c:1840
#: lib/luks2/luks2_json_metadata.c:2054 lib/luks2/luks2_reencrypt.c:1843
#, c-format
msgid "Missing key for dm-crypt segment %u"
msgstr "Не вистачає ключа для сегмента dm-crypt %u"
@@ -1423,7 +1433,7 @@ msgstr "Непідтримувані налаштування цілісност
msgid "Reencryption in-progress. Cannot deactivate device."
msgstr "Виконуємо повторне шифрування. Не можна деактивувати пристрій."
#: lib/luks2/luks2_json_metadata.c:2296 lib/luks2/luks2_reencrypt.c:3296
#: lib/luks2/luks2_json_metadata.c:2296 lib/luks2/luks2_reencrypt.c:3300
#, c-format
msgid "Failed to replace suspended device %s with dm-error target."
msgstr "Не вдалося замінити пристрій %s, роботу якого призупинено, ціллю dm-error."
@@ -1457,7 +1467,7 @@ msgstr "Не вдалося відкрити слот ключів."
msgid "Cannot use %s-%s cipher for keyslot encryption."
msgstr "Не можна використовувати шифрування %s-%s для слотів ключів."
#: lib/luks2/luks2_keyslot_luks2.c:483
#: lib/luks2/luks2_keyslot_luks2.c:485
msgid "No space for new keyslot."
msgstr "Немає простору для нового слоту ключа."
@@ -1532,7 +1542,7 @@ msgstr "Непідтримуваний режим стійкості %s"
#: lib/luks2/luks2_reencrypt.c:1259 lib/luks2/luks2_reencrypt.c:1414
#: lib/luks2/luks2_reencrypt.c:1497 lib/luks2/luks2_reencrypt.c:1531
#: lib/luks2/luks2_reencrypt.c:3136
#: lib/luks2/luks2_reencrypt.c:3140
msgid "Failed to initialize old segment storage wrapper."
msgstr "Не вдалося ініціалізувати обгортку старого сховища сегментів."
@@ -1544,7 +1554,7 @@ msgstr "Не вдалося ініціалізувати обгортку нов
msgid "Failed to read checksums for current hotzone."
msgstr "Не вдалося прочитати контрольні суми для поточної «гарячої» ділянки."
#: lib/luks2/luks2_reencrypt.c:1448 lib/luks2/luks2_reencrypt.c:3144
#: lib/luks2/luks2_reencrypt.c:1448 lib/luks2/luks2_reencrypt.c:3148
#, c-format
msgid "Failed to read hotzone area starting at %<PRIu64>."
msgstr "Не вдалося прочитати «гарячу» ділянку, починаючи з %<PRIu64>."
@@ -1583,138 +1593,142 @@ msgstr "Не вдалося завантажити нову прив'язку д
msgid "Failed to refresh reencryption devices stack."
msgstr "Не вдалося освіжити тек пристрої для повторного шифрування."
#: lib/luks2/luks2_reencrypt.c:2305
#: lib/luks2/luks2_reencrypt.c:2309
msgid "Failed to set new keyslots area size."
msgstr "Не вдалося встановити розмір області нових слотів ключів."
#: lib/luks2/luks2_reencrypt.c:2409
#: lib/luks2/luks2_reencrypt.c:2413
#, c-format
msgid "Data shift is not aligned to requested encryption sector size (%<PRIu32> bytes)."
msgstr "Зміщення даних не вирівняно до запитаного розміру сектора для шифрування (%<PRIu32> байтів)."
#: lib/luks2/luks2_reencrypt.c:2430
#: lib/luks2/luks2_reencrypt.c:2434
#, c-format
msgid "Data device is not aligned to requested encryption sector size (%<PRIu32> bytes)."
msgstr "Пристрій зберігання даних не вирівняно до запитаного розміру сектора для шифрування (%<PRIu32> байтів)."
#: lib/luks2/luks2_reencrypt.c:2451
#: lib/luks2/luks2_reencrypt.c:2455
#, c-format
msgid "Data shift (%<PRIu64> sectors) is less than future data offset (%<PRIu64> sectors)."
msgstr "Зміщення даних (%<PRIu64> секторів) є меншим за майбутній зсув даних (%<PRIu64> секторів)."
#: lib/luks2/luks2_reencrypt.c:2457 lib/luks2/luks2_reencrypt.c:2885
#: lib/luks2/luks2_reencrypt.c:2906
#: lib/luks2/luks2_reencrypt.c:2461 lib/luks2/luks2_reencrypt.c:2889
#: lib/luks2/luks2_reencrypt.c:2910
#, c-format
msgid "Failed to open %s in exclusive mode (already mapped or mounted)."
msgstr "Не вдалося відкрити %s в ексклюзивному режимі (вже пов'язано або змонтовано)."
#: lib/luks2/luks2_reencrypt.c:2625
#: lib/luks2/luks2_reencrypt.c:2629
msgid "Device not marked for LUKS2 reencryption."
msgstr "Пристрій не позначено для повторного шифрування LUKS2."
#: lib/luks2/luks2_reencrypt.c:2631 lib/luks2/luks2_reencrypt.c:3411
#: lib/luks2/luks2_reencrypt.c:2635 lib/luks2/luks2_reencrypt.c:3415
msgid "Failed to load LUKS2 reencryption context."
msgstr "Не вдалося завантажити контекст повторного шифрування LUKS2."
#: lib/luks2/luks2_reencrypt.c:2711
#: lib/luks2/luks2_reencrypt.c:2715
msgid "Failed to get reencryption state."
msgstr "Не вдалося отримати стан повторного шифрування."
#: lib/luks2/luks2_reencrypt.c:2715
#: lib/luks2/luks2_reencrypt.c:2719
msgid "Device is not in reencryption."
msgstr "Пристрій не перебуває у повторному шифруванні."
#: lib/luks2/luks2_reencrypt.c:2722
#: lib/luks2/luks2_reencrypt.c:2726
msgid "Reencryption process is already running."
msgstr "Процес повторного шифрування вже виконується."
#: lib/luks2/luks2_reencrypt.c:2724
#: lib/luks2/luks2_reencrypt.c:2728
msgid "Failed to acquire reencryption lock."
msgstr "Не вдалося створити блокування для повторного шифрування."
#: lib/luks2/luks2_reencrypt.c:2742
#: lib/luks2/luks2_reencrypt.c:2746
msgid "Cannot proceed with reencryption. Run reencryption recovery first."
msgstr "Продовження повторного шифрування неможливе. Спочатку слід виконати відновлення повторного шифрування."
#: lib/luks2/luks2_reencrypt.c:2856
#: lib/luks2/luks2_reencrypt.c:2860
msgid "Active device size and requested reencryption size don't match."
msgstr "Не збігаються розмір активного пристрою і запитаний розмір повторного шифрування."
#: lib/luks2/luks2_reencrypt.c:2870
#: lib/luks2/luks2_reencrypt.c:2874
msgid "Illegal device size requested in reencryption parameters."
msgstr "У параметрах повторного шифрування вказано некоректний розмір пристрою."
#: lib/luks2/luks2_reencrypt.c:2940
#: lib/luks2/luks2_reencrypt.c:2944
msgid "Reencryption in-progress. Cannot perform recovery."
msgstr "Виконується повторне шифрування. Неможливо виконати відновлення."
#: lib/luks2/luks2_reencrypt.c:3012
#: lib/luks2/luks2_reencrypt.c:3016
msgid "LUKS2 reencryption already initialized in metadata."
msgstr "Повторне шифрування LUKS2 вже ініційовано у метаданих."
#: lib/luks2/luks2_reencrypt.c:3019
#: lib/luks2/luks2_reencrypt.c:3023
msgid "Failed to initialize LUKS2 reencryption in metadata."
msgstr "Не вдалося ініціалізувати повторне шифрування LUKS2 лише у метаданих."
#: lib/luks2/luks2_reencrypt.c:3110
#: lib/luks2/luks2_reencrypt.c:3114
msgid "Failed to set device segments for next reencryption hotzone."
msgstr "Не вдалося встановити сегменти пристрою для наступної «гарячої» ділянки повторного шифрування."
#: lib/luks2/luks2_reencrypt.c:3152
#: lib/luks2/luks2_reencrypt.c:3156
msgid "Failed to write reencryption resilience metadata."
msgstr "Не вдалося записати метадані стійкості для повторного шифрування."
#: lib/luks2/luks2_reencrypt.c:3159
#: lib/luks2/luks2_reencrypt.c:3163
msgid "Decryption failed."
msgstr "Помилка розшифрування."
#: lib/luks2/luks2_reencrypt.c:3164
#: lib/luks2/luks2_reencrypt.c:3168
#, c-format
msgid "Failed to write hotzone area starting at %<PRIu64>."
msgstr "Не вдалося записати «гарячу» ділянку, починаючи з %<PRIu64>."
#: lib/luks2/luks2_reencrypt.c:3169
#: lib/luks2/luks2_reencrypt.c:3173
msgid "Failed to sync data."
msgstr "Не вдалося синхронізувати дані."
#: lib/luks2/luks2_reencrypt.c:3177
#: lib/luks2/luks2_reencrypt.c:3181
msgid "Failed to update metadata after current reencryption hotzone completed."
msgstr "Не вдалося оновити метадані після завершення обробки поточної «гарячої» зони повторного шифрування."
#: lib/luks2/luks2_reencrypt.c:3244
#: lib/luks2/luks2_reencrypt.c:3248
msgid "Failed to write LUKS2 metadata."
msgstr "Не вдалося записати метадані LUKS2."
#: lib/luks2/luks2_reencrypt.c:3267
#: lib/luks2/luks2_reencrypt.c:3271
msgid "Failed to wipe backup segment data."
msgstr "Не вдалося витерти дані резервного сегмента."
#: lib/luks2/luks2_reencrypt.c:3280
#: lib/luks2/luks2_reencrypt.c:3284
msgid "Failed to disable reencryption requirement flag."
msgstr "Не вдалося вимкнути прапорець вимоги повторного шифрування."
#: lib/luks2/luks2_reencrypt.c:3288
#: lib/luks2/luks2_reencrypt.c:3292
#, c-format
msgid "Fatal error while reencrypting chunk starting at %<PRIu64>, %<PRIu64> sectors long."
msgstr "Критична помилка під час повторного шифрування фрагмента, починаючи з %<PRIu64>, довжиною у %<PRIu64> секторів."
#: lib/luks2/luks2_reencrypt.c:3297
#: lib/luks2/luks2_reencrypt.c:3296
msgid "Online reencryption failed."
msgstr "Не вдалося виконати інтерактивне повторне шифрування."
#: lib/luks2/luks2_reencrypt.c:3301
msgid "Do not resume the device unless replaced with error target manually."
msgstr "Не відновлюйте пристрій, якщо не заміните вручну пристрій призначення для помилок."
#: lib/luks2/luks2_reencrypt.c:3349
#: lib/luks2/luks2_reencrypt.c:3353
msgid "Cannot proceed with reencryption. Unexpected reencryption status."
msgstr "Не вдалося виконати повторне шифрування. Неочікуваний стан засобу повторного шифрування."
#: lib/luks2/luks2_reencrypt.c:3355
#: lib/luks2/luks2_reencrypt.c:3359
msgid "Missing or invalid reencrypt context."
msgstr "Не вказано контекст повторного шифрування або вказано некоректний контекст."
#: lib/luks2/luks2_reencrypt.c:3362
#: lib/luks2/luks2_reencrypt.c:3366
msgid "Failed to initialize reencryption device stack."
msgstr "Не вдалося ініціалізувати стос пристроїв повторного шифрування."
#: lib/luks2/luks2_reencrypt.c:3381 lib/luks2/luks2_reencrypt.c:3424
#: lib/luks2/luks2_reencrypt.c:3385 lib/luks2/luks2_reencrypt.c:3428
msgid "Failed to update reencryption context."
msgstr "Не вдалося оновити контекст повторного шифрування."
@@ -2181,6 +2195,15 @@ msgstr "Файл тимчасового заголовка %s вже існує.
msgid "Cannot create temporary header file %s."
msgstr "Не вдалося створити файл тимчасового заголовка %s."
#: src/cryptsetup.c:2975
msgid "LUKS2 metadata size is larger than data shift value."
msgstr "Розмір метаданих LUKS2 перевищує значення зсуву даних."
#: src/cryptsetup.c:3007
#, c-format
msgid "Failed to place new header at head of device %s."
msgstr "Не вдалося розмістити новий заголовок на початку пристрою %s."
#: src/cryptsetup.c:3018
#, c-format
msgid "%s/%s is now active and ready for online encryption.\n"
@@ -2915,6 +2938,10 @@ msgstr "Не вдалося записати файл журналу повто
msgid "Cannot read reencryption log file."
msgstr "Не вдалося прочитати файл журналу повторного шифрування."
#: src/cryptsetup_reencrypt.c:353
msgid "Wrong log format."
msgstr "Помилкове форматування журналу."
#: src/cryptsetup_reencrypt.c:380
#, c-format
msgid "Log file %s exists, resuming reencryption.\n"
@@ -3067,112 +3094,134 @@ msgstr "Параметр --uuid можна використовувати лиш
msgid "Invalid luks type. Use one of these: 'luks', 'luks1' or 'luks2'."
msgstr "Некоректний тип luks. Скористайтеся одним з таких типів: luks, luks1 або luks2."
#: src/utils_tools.c:126
#: src/utils_tools.c:119
msgid ""
"\n"
"WARNING!\n"
"========\n"
msgstr ""
"\n"
"УВАГА!\n"
"======\n"
#. TRANSLATORS: User must type "YES" (in capital letters), do not translate this word.
#: src/utils_tools.c:121
#, c-format
msgid ""
"%s\n"
"\n"
"Are you sure? (Type 'yes' in capital letters): "
msgstr ""
"%s\n"
"\n"
"Ви впевнені? (Введіть «yes» великими літерами): "
#: src/utils_tools.c:127
msgid "Error reading response from terminal."
msgstr "Помилка під час спроби читання відповіді з термінала."
#: src/utils_tools.c:158
#: src/utils_tools.c:159
msgid "Command successful."
msgstr "Команду виконано успішно."
#: src/utils_tools.c:166
#: src/utils_tools.c:167
msgid "wrong or missing parameters"
msgstr "помилкові параметри або параметри не вказано"
#: src/utils_tools.c:168
#: src/utils_tools.c:169
msgid "no permission or bad passphrase"
msgstr "немає права доступу або помилковий пароль"
#: src/utils_tools.c:170
#: src/utils_tools.c:171
msgid "out of memory"
msgstr "недостатньо пам'яті"
#: src/utils_tools.c:172
#: src/utils_tools.c:173
msgid "wrong device or file specified"
msgstr "вказано помилковий пристрій або файл"
#: src/utils_tools.c:174
#: src/utils_tools.c:175
msgid "device already exists or device is busy"
msgstr "пристрій вже існує або пристрій зайнято"
#: src/utils_tools.c:176
#: src/utils_tools.c:177
msgid "unknown error"
msgstr "невідома помилка"
#: src/utils_tools.c:178
#: src/utils_tools.c:179
#, c-format
msgid "Command failed with code %i (%s)."
msgstr "Спроба виконання команди завершилася повідомленням про помилку з кодом %i (%s)."
#: src/utils_tools.c:256
#: src/utils_tools.c:257
#, c-format
msgid "Key slot %i created."
msgstr "Створено слот ключа %i."
#: src/utils_tools.c:258
#: src/utils_tools.c:259
#, c-format
msgid "Key slot %i unlocked."
msgstr "Слот ключа %i розблоковано."
#: src/utils_tools.c:260
#: src/utils_tools.c:261
#, c-format
msgid "Key slot %i removed."
msgstr "Слот ключа %i вилучено."
#: src/utils_tools.c:269
#: src/utils_tools.c:270
#, c-format
msgid "Token %i created."
msgstr "Створено жетон %i."
#: src/utils_tools.c:271
#: src/utils_tools.c:272
#, c-format
msgid "Token %i removed."
msgstr "Жетон %i вилучено."
#: src/utils_tools.c:281
#: src/utils_tools.c:282
msgid "No token could be unlocked with this PIN."
msgstr "За допомогою цього коду не можна розблокувати жоден жетон."
#: src/utils_tools.c:283
#: src/utils_tools.c:284
#, c-format
msgid "Token %i requires PIN."
msgstr "Для доступу до жетона %i потрібен пінкод."
#: src/utils_tools.c:285
#: src/utils_tools.c:286
#, c-format
msgid "Token (type %s) requires PIN."
msgstr "Для доступу до жетона (тип %s) потрібен пінкод."
#: src/utils_tools.c:288
#: src/utils_tools.c:289
#, c-format
msgid "Token %i cannot unlock assigned keyslot(s) (wrong keyslot passphrase)."
msgstr "Жетон %i не може розблокувати пов'язані слоти ключів (помилковий пароль до слота ключів)."
#: src/utils_tools.c:290
#: src/utils_tools.c:291
#, c-format
msgid "Token (type %s) cannot unlock assigned keyslot(s) (wrong keyslot passphrase)."
msgstr "Жетон (типу %s) не може розблокувати пов'язані слоти ключів (помилковий пароль до слота ключів)."
#: src/utils_tools.c:293
#: src/utils_tools.c:294
#, c-format
msgid "Token %i requires additional missing resource."
msgstr "Жетону %i потрібен додатковий ресурс, якого не вистачає."
#: src/utils_tools.c:295
#: src/utils_tools.c:296
#, c-format
msgid "Token (type %s) requires additional missing resource."
msgstr "Жетону (типу %s) потрібен додатковий ресурс, якого не вистачає."
#: src/utils_tools.c:298
#: src/utils_tools.c:299
#, c-format
msgid "No usable token (type %s) is available."
msgstr "Немає придатного до використання жетона (типу %s)."
#: src/utils_tools.c:300
#: src/utils_tools.c:301
msgid "No usable token is available."
msgstr "Немає придатного до використання жетона."
#: src/utils_tools.c:462
#: src/utils_tools.c:463
msgid ""
"\n"
"Wipe interrupted."
@@ -3180,7 +3229,7 @@ msgstr ""
"\n"
"Витирання перервано."
#: src/utils_tools.c:491
#: src/utils_tools.c:492
msgid ""
"\n"
"Reencryption interrupted."
@@ -3188,6 +3237,26 @@ msgstr ""
"\n"
"Повторне шифрування перервано."
#: src/utils_tools.c:511
#, c-format
msgid "Cannot read keyfile %s."
msgstr "Не вдалося прочитати файл ключа %s."
#: src/utils_tools.c:516
#, c-format
msgid "Cannot read %d bytes from keyfile %s."
msgstr "Не вдалося прочитати %d байтів з файла ключа %s."
#: src/utils_tools.c:541
#, c-format
msgid "Cannot open keyfile %s for write."
msgstr "Не вдалося відкрити файл ключа %s для запису."
#: src/utils_tools.c:548
#, c-format
msgid "Cannot write to keyfile %s."
msgstr "Не вдалося виконати запису до файла ключа %s."
#: src/utils_password.c:41 src/utils_password.c:74
#, c-format
msgid "Cannot check password quality: %s"
@@ -3241,26 +3310,6 @@ msgstr "Для цього пароля немає відповідного кл
msgid "No usable keyslot is available."
msgstr "Немає доступних придатних до користування слотів ключів."
#: src/utils_password.c:335
#, c-format
msgid "Cannot read keyfile %s."
msgstr "Не вдалося прочитати файл ключа %s."
#: src/utils_password.c:340
#, c-format
msgid "Cannot read %d bytes from keyfile %s."
msgstr "Не вдалося прочитати %d байтів з файла ключа %s."
#: src/utils_password.c:365
#, c-format
msgid "Cannot open keyfile %s for write."
msgstr "Не вдалося відкрити файл ключа %s для запису."
#: src/utils_password.c:372
#, c-format
msgid "Cannot write to keyfile %s."
msgstr "Не вдалося виконати запису до файла ключа %s."
#: src/utils_luks2.c:47
#, c-format
msgid "Failed to open file %s in read-only mode."
@@ -3328,6 +3377,16 @@ msgstr "Пристрій %s використовується сторонньо
msgid "Failed to open file %s in read/write mode."
msgstr "Не вдалося відкрити файл %s у режимі читання-запису."
#: src/utils_blockdev.c:294
#, c-format
msgid "Existing '%s' partition signature on device %s will be wiped."
msgstr "Наявний підпис розділу «%s» на пристрої %s буде витерто."
#: src/utils_blockdev.c:297
#, c-format
msgid "Existing '%s' superblock signature on device %s will be wiped."
msgstr "Наявний підпис суперблоку «%s» на пристрої %s буде витерто."
#: src/utils_blockdev.c:300
msgid "Failed to wipe device signature."
msgstr "Не вдалося витерти підпис пристрою."
@@ -4038,12 +4097,6 @@ msgstr "Помилка розпізнавання за відкритим клю
#~ msgid "Type of LUKS metadata: luks1, luks2"
#~ msgstr "Тип метаданих LUKS (luks1 або luks2)"
#~ msgid "Existing '%s' partition signature (offset: %<PRIi64> bytes) on device %s will be wiped."
#~ msgstr "Наявний підпис розділу «%s» (зміщення: %<PRIi64> байтів) на пристрої %s буде витерто."
#~ msgid "Existing '%s' superblock signature (offset: %<PRIi64> bytes) on device %s will be wiped."
#~ msgstr "Наявний підпис суперблоку «%s» (зміщення: %<PRIi64> байтів) на пристрої %s буде витерто."
#~ msgid "WARNING: Locking directory %s/%s is missing!\n"
#~ msgstr "ПОПЕРЕДЖЕННЯ: не вистачає блокування каталогу %s/%s!\n"

View File

@@ -52,7 +52,6 @@ veritysetup_SOURCES = \
src/utils_arg_names.h \
src/utils_arg_macros.h \
src/utils_tools.c \
src/utils_password.c \
src/veritysetup.c \
src/veritysetup_args.h \
src/veritysetup_arg_list.h \
@@ -61,8 +60,6 @@ veritysetup_SOURCES = \
veritysetup_LDADD = $(LDADD) \
libcryptsetup.la \
@POPT_LIBS@ \
@PWQUALITY_LIBS@ \
@PASSWDQC_LIBS@ \
@BLKID_LIBS@
sbin_PROGRAMS += veritysetup
@@ -74,8 +71,7 @@ veritysetup_static_LDFLAGS = $(AM_LDFLAGS) -all-static
veritysetup_static_LDADD = \
$(veritysetup_LDADD) \
@CRYPTO_STATIC_LIBS@ \
@DEVMAPPER_STATIC_LIBS@ \
@UUID_LIBS@
@DEVMAPPER_STATIC_LIBS@
endif
endif
@@ -91,7 +87,6 @@ integritysetup_SOURCES = \
src/utils_arg_names.h \
src/utils_arg_macros.h \
src/utils_tools.c \
src/utils_password.c \
src/utils_blockdev.c \
src/integritysetup.c \
src/integritysetup_args.h \
@@ -101,8 +96,6 @@ integritysetup_SOURCES = \
integritysetup_LDADD = $(LDADD) \
libcryptsetup.la \
@POPT_LIBS@ \
@PWQUALITY_LIBS@ \
@PASSWDQC_LIBS@ \
@UUID_LIBS@ \
@BLKID_LIBS@
@@ -115,8 +108,7 @@ integritysetup_static_LDFLAGS = $(AM_LDFLAGS) -all-static
integritysetup_static_LDADD = \
$(integritysetup_LDADD) \
@CRYPTO_STATIC_LIBS@ \
@DEVMAPPER_STATIC_LIBS@ \
@UUID_LIBS@
@DEVMAPPER_STATIC_LIBS@
endif
endif

View File

@@ -2972,7 +2972,7 @@ static int action_encrypt_luks2(struct crypt_device **cd)
if (!ARG_SET(OPT_LUKS2_KEYSLOTS_SIZE_ID))
ARG_SET_UINT64(OPT_LUKS2_KEYSLOTS_SIZE_ID, -data_shift - 2 * ARG_UINT64(OPT_LUKS2_METADATA_SIZE_ID));
if (2 * ARG_UINT64(OPT_LUKS2_METADATA_SIZE_ID) + ARG_UINT64(OPT_LUKS2_KEYSLOTS_SIZE_ID) > (uint64_t)-data_shift) {
log_err("LUKS2 metadata size is larger than data shift value.");
log_err(_("LUKS2 metadata size is larger than data shift value."));
return -EINVAL;
}
}
@@ -3004,7 +3004,7 @@ static int action_encrypt_luks2(struct crypt_device **cd)
r = crypt_header_restore(*cd, CRYPT_LUKS2, header_file);
if (r) {
log_err("Failed to place new header at head of device %s.", action_argv[0]);
log_err(_("Failed to place new header at head of device %s."), action_argv[0]);
goto out;
}
}

View File

@@ -350,7 +350,7 @@ static int parse_log(struct reenc_ctx *rc)
if (end) {
*end++ = '\0';
if (parse_line_log(rc, start)) {
log_err("Wrong log format.");
log_err(_("Wrong log format."));
return -EINVAL;
}
}

View File

@@ -291,10 +291,10 @@ int tools_wipe_all_signatures(const char *path)
while ((pr = blk_probe(h)) < PRB_EMPTY) {
if (blk_is_partition(h))
log_verbose("Existing '%s' partition signature on device %s will be wiped.",
log_verbose(_("Existing '%s' partition signature on device %s will be wiped."),
blk_get_partition_type(h), path);
if (blk_is_superblock(h))
log_verbose("Existing '%s' superblock signature on device %s will be wiped.",
log_verbose(_("Existing '%s' superblock signature on device %s will be wiped."),
blk_get_superblock_type(h), path);
if (blk_do_wipe(h)) {
log_err(_("Failed to wipe device signature."));

View File

@@ -318,59 +318,3 @@ void tools_passphrase_msg(int r)
else if (r == -ENOENT)
log_err(_("No usable keyslot is available."));
}
int tools_read_mk(const char *file, char **key, int keysize)
{
int fd = -1, r = -EINVAL;
if (keysize <= 0 || !key)
return -EINVAL;
*key = crypt_safe_alloc(keysize);
if (!*key)
return -ENOMEM;
fd = open(file, O_RDONLY);
if (fd == -1) {
log_err(_("Cannot read keyfile %s."), file);
goto out;
}
if (read_buffer(fd, *key, keysize) != keysize) {
log_err(_("Cannot read %d bytes from keyfile %s."), keysize, file);
goto out;
}
r = 0;
out:
if (fd != -1)
close(fd);
if (r) {
crypt_safe_free(*key);
*key = NULL;
}
return r;
}
int tools_write_mk(const char *file, const char *key, int keysize)
{
int fd, r = -EINVAL;
if (keysize <= 0 || !key)
return -EINVAL;
fd = open(file, O_CREAT|O_EXCL|O_WRONLY, S_IRUSR);
if (fd < 0) {
log_err(_("Cannot open keyfile %s for write."), file);
return r;
}
if (write_buffer(fd, key, keysize) == keysize)
r = 0;
else
log_err(_("Cannot write to keyfile %s."), file);
close(fd);
return r;
}

View File

@@ -116,8 +116,9 @@ static int _dialog(const char *msg, void *usrptr, int default_answer)
set_int_block(0);
if (isatty(STDIN_FILENO)) {
log_std("\nWARNING!\n========\n");
log_std("%s\n\nAre you sure? (Type 'yes' in capital letters): ", msg);
log_std(_("\nWARNING!\n========\n"));
/* TRANSLATORS: User must type "YES" (in capital letters), do not translate this word. */
log_std(_("%s\n\nAre you sure? (Type 'yes' in capital letters): "), msg);
fflush(stdout);
if(getline(&answer, &size, stdin) == -1) {
r = 0;
@@ -493,3 +494,59 @@ int tools_reencrypt_progress(uint64_t size, uint64_t offset, void *usrptr)
return r;
}
int tools_read_mk(const char *file, char **key, int keysize)
{
int fd = -1, r = -EINVAL;
if (keysize <= 0 || !key)
return -EINVAL;
*key = crypt_safe_alloc(keysize);
if (!*key)
return -ENOMEM;
fd = open(file, O_RDONLY);
if (fd == -1) {
log_err(_("Cannot read keyfile %s."), file);
goto out;
}
if (read_buffer(fd, *key, keysize) != keysize) {
log_err(_("Cannot read %d bytes from keyfile %s."), keysize, file);
goto out;
}
r = 0;
out:
if (fd != -1)
close(fd);
if (r) {
crypt_safe_free(*key);
*key = NULL;
}
return r;
}
int tools_write_mk(const char *file, const char *key, int keysize)
{
int fd, r = -EINVAL;
if (keysize <= 0 || !key)
return -EINVAL;
fd = open(file, O_CREAT|O_EXCL|O_WRONLY, S_IRUSR);
if (fd < 0) {
log_err(_("Cannot open keyfile %s for write."), file);
return r;
}
if (write_buffer(fd, key, keysize) == keysize)
r = 0;
else
log_err(_("Cannot write to keyfile %s."), file);
close(fd);
return r;
}

View File

@@ -124,6 +124,27 @@ static struct kdf_test_vector kdf_test_vectors[] = {
// "\xd0\x1e\xf0\x45\x2d\x75\xb6\x5e"
// "\xb5\x25\x20\xe9\x6b\x01\xe6\x59", 32
},
/* empty password */
{
"argon2i", NULL, 0, 3, 128, 1,
"", 0,
"\x00\x01\x02\x03\x04\x05\x06\x07"
"\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f", 16,
"\xbb\x1f\xf2\xb9\x9f\xd4\x4a\xd9"
"\xdf\x7f\xb9\x54\x55\x9e\xb8\xeb"
"\xb5\x9d\xab\xce\x2e\x62\x9f\x9b"
"\x89\x09\xfe\xde\x57\xcc\x63\x86", 32
},
{
"argon2id", NULL, 0, 3, 128, 1,
"", 0,
"\x00\x01\x02\x03\x04\x05\x06\x07"
"\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f", 16,
"\x09\x2f\x38\x35\xac\xb2\x43\x92"
"\x93\xeb\xcd\xe8\x04\x16\x6a\x31"
"\xce\x14\xd4\x55\xdb\xd8\xf7\xe6"
"\xb4\xf5\x9d\x64\x8e\xd0\x3a\xdb", 32
},
/* RFC 3962 */
{
"pbkdf2", "sha1", 64, 1, 0, 0,
@@ -938,7 +959,7 @@ static int pbkdf_test_vectors(void)
unsigned int i;
const struct kdf_test_vector *vec;
for (i = 0; i < (sizeof(kdf_test_vectors) / sizeof(*kdf_test_vectors)); i++) {
for (i = 0; i < ARRAY_SIZE(kdf_test_vectors); i++) {
crypt_backend_memzero(result, sizeof(result));
vec = &kdf_test_vectors[i];
printf("PBKDF vector %02d %s ", i, vec->type);
@@ -1032,17 +1053,37 @@ static int hash_test(void)
if (!r)
r = crypt_hash_final(h, result, vector->out[j].length);
crypt_hash_destroy(h);
if (r)
if (r) {
crypt_hash_destroy(h);
return EXIT_FAILURE;
}
if (memcmp(result, vector->out[j].out, vector->out[j].length)) {
printf("[FAILED]\n");
printhex(" got", result, vector->out[j].length);
printhex("want", vector->out[j].out, vector->out[j].length);
crypt_hash_destroy(h);
return EXIT_FAILURE;
}
/*
* After crypt_hash_final() the context must be reset, repeat
*/
crypt_backend_memzero(result, sizeof(result));
r = crypt_hash_write(h, vector->data, vector->data_length);
if (!r)
r = crypt_hash_final(h, result, vector->out[j].length);
if (r || memcmp(result, vector->out[j].out, vector->out[j].length)) {
printf("[FAILED (RESET CONTEXT)]\n");
printhex(" got", result, vector->out[j].length);
printhex("want", vector->out[j].out, vector->out[j].length);
crypt_hash_destroy(h);
return EXIT_FAILURE;
}
crypt_hash_destroy(h);
}
printf("\n");
}
@@ -1085,17 +1126,36 @@ static int hmac_test(void)
if (!r)
r = crypt_hmac_final(hmac, result, vector->out[j].length);
crypt_hmac_destroy(hmac);
if (r)
if (r) {
crypt_hmac_destroy(hmac);
return EXIT_FAILURE;
}
if (memcmp(result, vector->out[j].out, vector->out[j].length)) {
printf("[FAILED]\n");
printhex(" got", result, vector->out[j].length);
printhex("want", vector->out[j].out, vector->out[j].length);
crypt_hmac_destroy(hmac);
return EXIT_FAILURE;
}
/*
* After crypt_hmac_final() the context must be reset, repeat
*/
crypt_backend_memzero(result, sizeof(result));
r = crypt_hmac_write(hmac, vector->data, vector->data_length);
if (!r)
r = crypt_hmac_final(hmac, result, vector->out[j].length);
if (r || memcmp(result, vector->out[j].out, vector->out[j].length)) {
printf("[FAILED (RESET CONTEXT)]\n");
printhex(" got", result, vector->out[j].length);
printhex("want", vector->out[j].out, vector->out[j].length);
crypt_hmac_destroy(hmac);
return EXIT_FAILURE;
}
crypt_hmac_destroy(hmac);
}
printf("\n");
}

View File

@@ -0,0 +1,96 @@
#!/bin/bash
. lib.sh
#
# *** Description ***
#
# generate primary with predefined json_size. There's only limited
# set of values allowed as json size in config section of LUKS2
# metadata
#
# secondary header is corrupted on purpose as well
#
# $1 full target dir
# $2 full source luks2 image
function prepare()
{
cp $SRC_IMG $TGT_IMG
test -d $TMPDIR || mkdir $TMPDIR
read_luks2_json0 $TGT_IMG $TMPDIR/json0
read_luks2_bin_hdr0 $TGT_IMG $TMPDIR/hdr0
read_luks2_bin_hdr1 $TGT_IMG $TMPDIR/hdr1
}
function generate()
{
TEST_MDA_SIZE=$LUKS2_HDR_SIZE_1M
TEST_MDA_SIZE_BYTES=$((TEST_MDA_SIZE*512))
TEST_MDA_SIZE_BOGUS_BYTES=$((TEST_MDA_SIZE*512*2*1024))
TEST_JSN_SIZE=$((TEST_MDA_SIZE-LUKS2_BIN_HDR_SIZE))
KEYSLOTS_OFFSET=$((TEST_MDA_SIZE*1024))
JSON_DIFF=$(((TEST_MDA_SIZE-LUKS2_HDR_SIZE)*1024))
JSON_SIZE=$((TEST_JSN_SIZE*512))
DATA_OFFSET=16777216
json_str=$(jq -c --arg jdiff $JSON_DIFF --arg jsize $JSON_SIZE --arg off $DATA_OFFSET \
'.keyslots[].area.offset |= ( . | tonumber + ($jdiff | tonumber) | tostring) |
.config.json_size = $jsize |
.segments."0".offset = $off' $TMPDIR/json0)
test -n "$json_str" || exit 2
test ${#json_str} -lt $((LUKS2_JSON_SIZE*512)) || exit 2
write_luks2_json "$json_str" $TMPDIR/json0 $TEST_JSN_SIZE
write_bin_hdr_size $TMPDIR/hdr0 $TEST_MDA_SIZE_BYTES
write_bin_hdr_size $TMPDIR/hdr1 $TEST_MDA_SIZE_BOGUS_BYTES
write_bin_hdr_offset $TMPDIR/hdr1 $TEST_MDA_SIZE_BYTES
merge_bin_hdr_with_json $TMPDIR/hdr0 $TMPDIR/json0 $TMPDIR/area0 $TEST_JSN_SIZE
merge_bin_hdr_with_json $TMPDIR/hdr1 $TMPDIR/json0 $TMPDIR/area1 $TEST_JSN_SIZE
erase_checksum $TMPDIR/area0
chks0=$(calc_sha256_checksum_file $TMPDIR/area0)
write_checksum $chks0 $TMPDIR/area0
erase_checksum $TMPDIR/area1
chks0=$(calc_sha256_checksum_file $TMPDIR/area1)
write_checksum $chks0 $TMPDIR/area1
kill_bin_hdr $TMPDIR/area0
write_luks2_hdr0 $TMPDIR/area0 $TGT_IMG $TEST_MDA_SIZE
write_luks2_hdr1 $TMPDIR/area1 $TGT_IMG $TEST_MDA_SIZE
}
function check()
{
read_luks2_bin_hdr0 $TGT_IMG $TMPDIR/hdr_res0 $TEST_MDA_SIZE
local str_res0=$(head -c 6 $TMPDIR/hdr_res0)
test "$str_res0" = "VACUUM" || exit 2
read_luks2_json1 $TGT_IMG $TMPDIR/json_res1 $TEST_JSN_SIZE
jq -c --arg koff $KEYSLOTS_OFFSET --arg jsize $JSON_SIZE \
'if ([.keyslots[].area.offset] | map(tonumber) | min | tostring != $koff) or
(.config.json_size != $jsize)
then error("Unexpected value in result json") else empty end' $TMPDIR/json_res1 || exit 5
}
function cleanup()
{
rm -f $TMPDIR/*
rm -fd $TMPDIR
}
test $# -eq 2 || exit 1
TGT_IMG=$1/$(test_img_name $0)
SRC_IMG=$2
prepare
generate
check
cleanup

View File

@@ -0,0 +1,94 @@
#!/bin/bash
. lib.sh
#
# *** Description ***
#
# generate primary with predefined json_size. There's only limited
# set of values allowed as json size in config section of LUKS2
# metadata
#
# secondary header is corrupted on purpose as well
#
# $1 full target dir
# $2 full source luks2 image
function prepare()
{
cp $SRC_IMG $TGT_IMG
test -d $TMPDIR || mkdir $TMPDIR
read_luks2_json0 $TGT_IMG $TMPDIR/json0
read_luks2_bin_hdr0 $TGT_IMG $TMPDIR/hdr0
read_luks2_bin_hdr1 $TGT_IMG $TMPDIR/hdr1
}
function generate()
{
TEST_MDA_SIZE=$LUKS2_HDR_SIZE_1M
TEST_MDA_SIZE_BYTES=$((TEST_MDA_SIZE*512))
TEST_MDA_SIZE_BOGUS_BYTES=$((TEST_MDA_SIZE*512*2*1024))
TEST_JSN_SIZE=$((TEST_MDA_SIZE-LUKS2_BIN_HDR_SIZE))
KEYSLOTS_OFFSET=$((TEST_MDA_SIZE*1024))
JSON_DIFF=$(((TEST_MDA_SIZE-LUKS2_HDR_SIZE)*1024))
JSON_SIZE=$((TEST_JSN_SIZE*512))
DATA_OFFSET=16777216
json_str=$(jq -c --arg jdiff $JSON_DIFF --arg jsize $JSON_SIZE --arg off $DATA_OFFSET \
'.keyslots[].area.offset |= ( . | tonumber + ($jdiff | tonumber) | tostring) |
.config.json_size = $jsize |
.segments."0".offset = $off' $TMPDIR/json0)
test -n "$json_str" || exit 2
test ${#json_str} -lt $((LUKS2_JSON_SIZE*512)) || exit 2
write_luks2_json "$json_str" $TMPDIR/json0 $TEST_JSN_SIZE
write_bin_hdr_size $TMPDIR/hdr0 $TEST_MDA_SIZE_BOGUS_BYTES
write_bin_hdr_size $TMPDIR/hdr1 $TEST_MDA_SIZE_BOGUS_BYTES
merge_bin_hdr_with_json $TMPDIR/hdr0 $TMPDIR/json0 $TMPDIR/area0 $TEST_JSN_SIZE
merge_bin_hdr_with_json $TMPDIR/hdr1 $TMPDIR/json0 $TMPDIR/area1 $TEST_JSN_SIZE
erase_checksum $TMPDIR/area0
chks0=$(calc_sha256_checksum_file $TMPDIR/area0)
write_checksum $chks0 $TMPDIR/area0
erase_checksum $TMPDIR/area1
chks0=$(calc_sha256_checksum_file $TMPDIR/area1)
write_checksum $chks0 $TMPDIR/area1
kill_bin_hdr $TMPDIR/area1
write_luks2_hdr0 $TMPDIR/area0 $TGT_IMG $TEST_MDA_SIZE
write_luks2_hdr1 $TMPDIR/area1 $TGT_IMG $TEST_MDA_SIZE
}
function check()
{
read_luks2_bin_hdr1 $TGT_IMG $TMPDIR/hdr_res1 $TEST_MDA_SIZE
local str_res1=$(head -c 6 $TMPDIR/hdr_res1)
test "$str_res1" = "VACUUM" || exit 2
read_luks2_json0 $TGT_IMG $TMPDIR/json_res0 $TEST_JSN_SIZE
jq -c --arg koff $KEYSLOTS_OFFSET --arg jsize $JSON_SIZE \
'if ([.keyslots[].area.offset] | map(tonumber) | min | tostring != $koff) or
(.config.json_size != $jsize)
then error("Unexpected value in result json") else empty end' $TMPDIR/json_res0 || exit 5
}
function cleanup()
{
rm -f $TMPDIR/*
rm -fd $TMPDIR
}
test $# -eq 2 || exit 1
TGT_IMG=$1/$(test_img_name $0)
SRC_IMG=$2
prepare
generate
check
cleanup

View File

@@ -229,6 +229,8 @@ RUN luks2-metadata-size-512k-secondary.img "R" "Valid 512KiB metadata size in s
RUN luks2-metadata-size-1m-secondary.img "R" "Valid 1MiB metadata size in secondary hdr failed to validate"
RUN luks2-metadata-size-2m-secondary.img "R" "Valid 2MiB metadata size in secondary hdr failed to validate"
RUN luks2-metadata-size-4m-secondary.img "R" "Valid 4MiB metadata size in secondary hdr failed to validate"
RUN luks2-metadata-size-invalid.img "F" "Invalid metadata size in secondary hdr not rejected"
RUN luks2-metadata-size-invalid-secondary.img "F" "Invalid metadata size in secondary hdr not rejected"
remove_mapping

View File

@@ -41,7 +41,7 @@ function create_user()
[ $? -eq 0 ] && skip "User account $USER exists, aborting."
[ -f $SSH_KEY_PATH ] && skip "SSH key $SSH_KEY_PATH already exists, aborting."
useradd -m $USER -p $(openssl passwd -crypt $PASSWD) || skip "Failed to add user for SSH plugin test."
useradd -m $USER -p $(openssl passwd $PASSWD) || skip "Failed to add user for SSH plugin test."
ssh-keygen -f $SSH_KEY_PATH -q -N "" >/dev/null 2>&1
[ $? -ne 0 ] && remove_user && skip "Failed to create SSH key."
@@ -142,6 +142,7 @@ bin_check useradd
bin_check ssh
bin_check ssh-keygen
bin_check sshpass
bin_check openssl
format