swift 2.23.2__py3-none-any.whl → 2.35.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- swift/__init__.py +29 -50
- swift/account/auditor.py +21 -118
- swift/account/backend.py +33 -28
- swift/account/reaper.py +37 -28
- swift/account/replicator.py +22 -0
- swift/account/server.py +60 -26
- swift/account/utils.py +28 -11
- swift-2.23.2.data/scripts/swift-account-audit → swift/cli/account_audit.py +23 -13
- swift-2.23.2.data/scripts/swift-config → swift/cli/config.py +2 -2
- swift/cli/container_deleter.py +5 -11
- swift-2.23.2.data/scripts/swift-dispersion-populate → swift/cli/dispersion_populate.py +8 -7
- swift/cli/dispersion_report.py +10 -9
- swift-2.23.2.data/scripts/swift-drive-audit → swift/cli/drive_audit.py +63 -21
- swift/cli/form_signature.py +3 -7
- swift-2.23.2.data/scripts/swift-get-nodes → swift/cli/get_nodes.py +8 -2
- swift/cli/info.py +183 -29
- swift/cli/manage_shard_ranges.py +708 -37
- swift-2.23.2.data/scripts/swift-oldies → swift/cli/oldies.py +25 -14
- swift-2.23.2.data/scripts/swift-orphans → swift/cli/orphans.py +7 -3
- swift/cli/recon.py +196 -67
- swift-2.23.2.data/scripts/swift-recon-cron → swift/cli/recon_cron.py +17 -20
- swift-2.23.2.data/scripts/swift-reconciler-enqueue → swift/cli/reconciler_enqueue.py +2 -3
- swift/cli/relinker.py +807 -126
- swift/cli/reload.py +135 -0
- swift/cli/ringbuilder.py +217 -20
- swift/cli/ringcomposer.py +0 -1
- swift/cli/shard-info.py +4 -3
- swift/common/base_storage_server.py +9 -20
- swift/common/bufferedhttp.py +48 -74
- swift/common/constraints.py +20 -15
- swift/common/container_sync_realms.py +9 -11
- swift/common/daemon.py +25 -8
- swift/common/db.py +198 -127
- swift/common/db_auditor.py +168 -0
- swift/common/db_replicator.py +95 -55
- swift/common/digest.py +141 -0
- swift/common/direct_client.py +144 -33
- swift/common/error_limiter.py +93 -0
- swift/common/exceptions.py +25 -1
- swift/common/header_key_dict.py +2 -9
- swift/common/http_protocol.py +373 -0
- swift/common/internal_client.py +129 -59
- swift/common/linkat.py +3 -4
- swift/common/manager.py +284 -67
- swift/common/memcached.py +396 -147
- swift/common/middleware/__init__.py +4 -0
- swift/common/middleware/account_quotas.py +211 -46
- swift/common/middleware/acl.py +3 -8
- swift/common/middleware/backend_ratelimit.py +230 -0
- swift/common/middleware/bulk.py +22 -34
- swift/common/middleware/catch_errors.py +1 -3
- swift/common/middleware/cname_lookup.py +6 -11
- swift/common/middleware/container_quotas.py +1 -1
- swift/common/middleware/container_sync.py +39 -17
- swift/common/middleware/copy.py +12 -0
- swift/common/middleware/crossdomain.py +22 -9
- swift/common/middleware/crypto/__init__.py +2 -1
- swift/common/middleware/crypto/crypto_utils.py +11 -15
- swift/common/middleware/crypto/decrypter.py +28 -11
- swift/common/middleware/crypto/encrypter.py +12 -17
- swift/common/middleware/crypto/keymaster.py +8 -15
- swift/common/middleware/crypto/kms_keymaster.py +2 -1
- swift/common/middleware/dlo.py +15 -11
- swift/common/middleware/domain_remap.py +5 -4
- swift/common/middleware/etag_quoter.py +128 -0
- swift/common/middleware/formpost.py +73 -70
- swift/common/middleware/gatekeeper.py +8 -1
- swift/common/middleware/keystoneauth.py +33 -3
- swift/common/middleware/list_endpoints.py +4 -4
- swift/common/middleware/listing_formats.py +85 -49
- swift/common/middleware/memcache.py +4 -81
- swift/common/middleware/name_check.py +3 -2
- swift/common/middleware/proxy_logging.py +160 -92
- swift/common/middleware/ratelimit.py +17 -10
- swift/common/middleware/read_only.py +6 -4
- swift/common/middleware/recon.py +59 -22
- swift/common/middleware/s3api/acl_handlers.py +25 -3
- swift/common/middleware/s3api/acl_utils.py +6 -1
- swift/common/middleware/s3api/controllers/__init__.py +6 -0
- swift/common/middleware/s3api/controllers/acl.py +3 -2
- swift/common/middleware/s3api/controllers/bucket.py +242 -137
- swift/common/middleware/s3api/controllers/logging.py +2 -2
- swift/common/middleware/s3api/controllers/multi_delete.py +43 -20
- swift/common/middleware/s3api/controllers/multi_upload.py +219 -133
- swift/common/middleware/s3api/controllers/obj.py +112 -8
- swift/common/middleware/s3api/controllers/object_lock.py +44 -0
- swift/common/middleware/s3api/controllers/s3_acl.py +2 -2
- swift/common/middleware/s3api/controllers/tagging.py +57 -0
- swift/common/middleware/s3api/controllers/versioning.py +36 -7
- swift/common/middleware/s3api/etree.py +22 -9
- swift/common/middleware/s3api/exception.py +0 -4
- swift/common/middleware/s3api/s3api.py +113 -41
- swift/common/middleware/s3api/s3request.py +384 -218
- swift/common/middleware/s3api/s3response.py +126 -23
- swift/common/middleware/s3api/s3token.py +16 -17
- swift/common/middleware/s3api/schema/delete.rng +1 -1
- swift/common/middleware/s3api/subresource.py +7 -10
- swift/common/middleware/s3api/utils.py +27 -10
- swift/common/middleware/slo.py +665 -358
- swift/common/middleware/staticweb.py +64 -37
- swift/common/middleware/symlink.py +52 -19
- swift/common/middleware/tempauth.py +76 -58
- swift/common/middleware/tempurl.py +192 -174
- swift/common/middleware/versioned_writes/__init__.py +51 -0
- swift/common/middleware/{versioned_writes.py → versioned_writes/legacy.py} +27 -26
- swift/common/middleware/versioned_writes/object_versioning.py +1482 -0
- swift/common/middleware/x_profile/exceptions.py +1 -4
- swift/common/middleware/x_profile/html_viewer.py +18 -19
- swift/common/middleware/x_profile/profile_model.py +1 -2
- swift/common/middleware/xprofile.py +10 -10
- swift-2.23.2.data/scripts/swift-container-server → swift/common/recon.py +13 -8
- swift/common/registry.py +147 -0
- swift/common/request_helpers.py +324 -57
- swift/common/ring/builder.py +67 -25
- swift/common/ring/composite_builder.py +1 -1
- swift/common/ring/ring.py +177 -51
- swift/common/ring/utils.py +1 -1
- swift/common/splice.py +10 -6
- swift/common/statsd_client.py +205 -0
- swift/common/storage_policy.py +49 -44
- swift/common/swob.py +86 -102
- swift/common/{utils.py → utils/__init__.py} +2191 -2762
- swift/common/utils/base.py +131 -0
- swift/common/utils/config.py +433 -0
- swift/common/utils/ipaddrs.py +256 -0
- swift/common/utils/libc.py +345 -0
- swift/common/utils/logs.py +859 -0
- swift/common/utils/timestamp.py +412 -0
- swift/common/wsgi.py +555 -536
- swift/container/auditor.py +14 -100
- swift/container/backend.py +552 -227
- swift/container/reconciler.py +126 -37
- swift/container/replicator.py +96 -22
- swift/container/server.py +397 -176
- swift/container/sharder.py +1580 -639
- swift/container/sync.py +94 -88
- swift/container/updater.py +53 -32
- swift/obj/auditor.py +153 -35
- swift/obj/diskfile.py +466 -217
- swift/obj/expirer.py +406 -124
- swift/obj/mem_diskfile.py +7 -4
- swift/obj/mem_server.py +1 -0
- swift/obj/reconstructor.py +523 -262
- swift/obj/replicator.py +249 -188
- swift/obj/server.py +213 -122
- swift/obj/ssync_receiver.py +145 -85
- swift/obj/ssync_sender.py +113 -54
- swift/obj/updater.py +653 -139
- swift/obj/watchers/__init__.py +0 -0
- swift/obj/watchers/dark_data.py +213 -0
- swift/proxy/controllers/account.py +11 -11
- swift/proxy/controllers/base.py +848 -604
- swift/proxy/controllers/container.py +452 -86
- swift/proxy/controllers/info.py +3 -2
- swift/proxy/controllers/obj.py +1009 -490
- swift/proxy/server.py +185 -112
- swift-2.35.0.dist-info/AUTHORS +501 -0
- swift-2.35.0.dist-info/LICENSE +202 -0
- {swift-2.23.2.dist-info → swift-2.35.0.dist-info}/METADATA +52 -61
- swift-2.35.0.dist-info/RECORD +201 -0
- {swift-2.23.2.dist-info → swift-2.35.0.dist-info}/WHEEL +1 -1
- {swift-2.23.2.dist-info → swift-2.35.0.dist-info}/entry_points.txt +43 -0
- swift-2.35.0.dist-info/pbr.json +1 -0
- swift/locale/de/LC_MESSAGES/swift.po +0 -1216
- swift/locale/en_GB/LC_MESSAGES/swift.po +0 -1207
- swift/locale/es/LC_MESSAGES/swift.po +0 -1085
- swift/locale/fr/LC_MESSAGES/swift.po +0 -909
- swift/locale/it/LC_MESSAGES/swift.po +0 -894
- swift/locale/ja/LC_MESSAGES/swift.po +0 -965
- swift/locale/ko_KR/LC_MESSAGES/swift.po +0 -964
- swift/locale/pt_BR/LC_MESSAGES/swift.po +0 -881
- swift/locale/ru/LC_MESSAGES/swift.po +0 -891
- swift/locale/tr_TR/LC_MESSAGES/swift.po +0 -832
- swift/locale/zh_CN/LC_MESSAGES/swift.po +0 -833
- swift/locale/zh_TW/LC_MESSAGES/swift.po +0 -838
- swift-2.23.2.data/scripts/swift-account-auditor +0 -23
- swift-2.23.2.data/scripts/swift-account-info +0 -51
- swift-2.23.2.data/scripts/swift-account-reaper +0 -23
- swift-2.23.2.data/scripts/swift-account-replicator +0 -34
- swift-2.23.2.data/scripts/swift-account-server +0 -23
- swift-2.23.2.data/scripts/swift-container-auditor +0 -23
- swift-2.23.2.data/scripts/swift-container-info +0 -51
- swift-2.23.2.data/scripts/swift-container-reconciler +0 -21
- swift-2.23.2.data/scripts/swift-container-replicator +0 -34
- swift-2.23.2.data/scripts/swift-container-sharder +0 -33
- swift-2.23.2.data/scripts/swift-container-sync +0 -23
- swift-2.23.2.data/scripts/swift-container-updater +0 -23
- swift-2.23.2.data/scripts/swift-dispersion-report +0 -24
- swift-2.23.2.data/scripts/swift-form-signature +0 -20
- swift-2.23.2.data/scripts/swift-init +0 -119
- swift-2.23.2.data/scripts/swift-object-auditor +0 -29
- swift-2.23.2.data/scripts/swift-object-expirer +0 -33
- swift-2.23.2.data/scripts/swift-object-info +0 -60
- swift-2.23.2.data/scripts/swift-object-reconstructor +0 -33
- swift-2.23.2.data/scripts/swift-object-relinker +0 -41
- swift-2.23.2.data/scripts/swift-object-replicator +0 -37
- swift-2.23.2.data/scripts/swift-object-server +0 -27
- swift-2.23.2.data/scripts/swift-object-updater +0 -23
- swift-2.23.2.data/scripts/swift-proxy-server +0 -23
- swift-2.23.2.data/scripts/swift-recon +0 -24
- swift-2.23.2.data/scripts/swift-ring-builder +0 -24
- swift-2.23.2.data/scripts/swift-ring-builder-analyzer +0 -22
- swift-2.23.2.data/scripts/swift-ring-composer +0 -22
- swift-2.23.2.dist-info/DESCRIPTION.rst +0 -166
- swift-2.23.2.dist-info/RECORD +0 -220
- swift-2.23.2.dist-info/metadata.json +0 -1
- swift-2.23.2.dist-info/pbr.json +0 -1
- {swift-2.23.2.dist-info → swift-2.35.0.dist-info}/top_level.txt +0 -0
@@ -1,891 +0,0 @@
|
|
1
|
-
# Translations template for swift.
|
2
|
-
# Copyright (C) 2015 ORGANIZATION
|
3
|
-
# This file is distributed under the same license as the swift project.
|
4
|
-
#
|
5
|
-
# Translators:
|
6
|
-
# Andreas Jaeger <jaegerandi@gmail.com>, 2016. #zanata
|
7
|
-
msgid ""
|
8
|
-
msgstr ""
|
9
|
-
"Project-Id-Version: swift VERSION\n"
|
10
|
-
"Report-Msgid-Bugs-To: https://bugs.launchpad.net/openstack-i18n/\n"
|
11
|
-
"POT-Creation-Date: 2019-10-03 19:48+0000\n"
|
12
|
-
"MIME-Version: 1.0\n"
|
13
|
-
"Content-Type: text/plain; charset=UTF-8\n"
|
14
|
-
"Content-Transfer-Encoding: 8bit\n"
|
15
|
-
"PO-Revision-Date: 2016-04-12 06:43+0000\n"
|
16
|
-
"Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
|
17
|
-
"Language: ru\n"
|
18
|
-
"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
|
19
|
-
"%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n"
|
20
|
-
"%100>=11 && n%100<=14)? 2 : 3);\n"
|
21
|
-
"Generated-By: Babel 2.0\n"
|
22
|
-
"X-Generator: Zanata 4.3.3\n"
|
23
|
-
"Language-Team: Russian\n"
|
24
|
-
|
25
|
-
msgid ""
|
26
|
-
"\n"
|
27
|
-
"user quit"
|
28
|
-
msgstr ""
|
29
|
-
"\n"
|
30
|
-
"Завершение работы пользователя"
|
31
|
-
|
32
|
-
#, python-format
|
33
|
-
msgid " - %s"
|
34
|
-
msgstr " - %s"
|
35
|
-
|
36
|
-
#, python-format
|
37
|
-
msgid " - parallel, %s"
|
38
|
-
msgstr " - параллельно, %s"
|
39
|
-
|
40
|
-
#, python-format
|
41
|
-
msgid ""
|
42
|
-
"%(checked)d suffixes checked - %(hashed).2f%% hashed, %(synced).2f%% synced"
|
43
|
-
msgstr ""
|
44
|
-
"Проверено суффиксов: %(checked)d - хэшировано: %(hashed).2f%%, "
|
45
|
-
"синхронизировано: %(synced).2f%%"
|
46
|
-
|
47
|
-
#, python-format
|
48
|
-
msgid "%(msg)s %(ip)s:%(port)s/%(device)s"
|
49
|
-
msgstr "%(msg)s %(ip)s:%(port)s/%(device)s"
|
50
|
-
|
51
|
-
#, python-format
|
52
|
-
msgid ""
|
53
|
-
"%(replicated)d/%(total)d (%(percentage).2f%%) partitions replicated in "
|
54
|
-
"%(time).2fs (%(rate).2f/sec, %(remaining)s remaining)"
|
55
|
-
msgstr ""
|
56
|
-
"Реплицировано разделов: %(replicated)d/%(total)d (%(percentage).2f%%) за "
|
57
|
-
"время %(time).2f с (%(rate).2f/с, осталось: %(remaining)s)"
|
58
|
-
|
59
|
-
#, python-format
|
60
|
-
msgid "%(success)s successes, %(failure)s failures"
|
61
|
-
msgstr "%(success)s успешно, %(failure)s с ошибками"
|
62
|
-
|
63
|
-
#, python-format
|
64
|
-
msgid "%(type)s returning 503 for %(statuses)s"
|
65
|
-
msgstr "%(type)s возвратил 503 для %(statuses)s"
|
66
|
-
|
67
|
-
#, python-format
|
68
|
-
msgid "%s already started..."
|
69
|
-
msgstr "%s уже запущен..."
|
70
|
-
|
71
|
-
#, python-format
|
72
|
-
msgid "%s does not exist"
|
73
|
-
msgstr "%s не существует"
|
74
|
-
|
75
|
-
#, python-format
|
76
|
-
msgid "%s is not mounted"
|
77
|
-
msgstr "%s не смонтирован"
|
78
|
-
|
79
|
-
#, python-format
|
80
|
-
msgid "%s responded as unmounted"
|
81
|
-
msgstr "%s ответил как размонтированный"
|
82
|
-
|
83
|
-
#, python-format
|
84
|
-
msgid "%s: Connection reset by peer"
|
85
|
-
msgstr "%s: соединение сброшено на другой стороне"
|
86
|
-
|
87
|
-
msgid "Account"
|
88
|
-
msgstr "Учетная запись"
|
89
|
-
|
90
|
-
#, python-format
|
91
|
-
msgid "Account audit \"once\" mode completed: %.02fs"
|
92
|
-
msgstr "Проверка учетной записи в \"однократном\" режиме завершена: %.02fs"
|
93
|
-
|
94
|
-
#, python-format
|
95
|
-
msgid "Account audit pass completed: %.02fs"
|
96
|
-
msgstr "Проход контроля учетной записи выполнен: %.02fs"
|
97
|
-
|
98
|
-
#, python-format
|
99
|
-
msgid ""
|
100
|
-
"Attempted to replicate %(count)d dbs in %(time).5f seconds (%(rate).5f/s)"
|
101
|
-
msgstr ""
|
102
|
-
"Попытка репликации %(count)d баз данных за %(time).5f секунд (%(rate).5f/s)"
|
103
|
-
|
104
|
-
#, python-format
|
105
|
-
msgid "Bad rsync return code: %(ret)d <- %(args)s"
|
106
|
-
msgstr "Неправильный код возврата rsync: %(ret)d <- %(args)s"
|
107
|
-
|
108
|
-
msgid "Begin account audit \"once\" mode"
|
109
|
-
msgstr "Начать проверку учетной записи в \"однократном\" режиме"
|
110
|
-
|
111
|
-
msgid "Begin account audit pass."
|
112
|
-
msgstr "Начать проход проверки учетной записи."
|
113
|
-
|
114
|
-
msgid "Begin container audit \"once\" mode"
|
115
|
-
msgstr "Начать проверку контейнера в \"однократном\" режиме"
|
116
|
-
|
117
|
-
msgid "Begin container audit pass."
|
118
|
-
msgstr "Начать проход проверки контейнера."
|
119
|
-
|
120
|
-
msgid "Begin container sync \"once\" mode"
|
121
|
-
msgstr "Начать синхронизацию контейнера в \"однократном\" режиме"
|
122
|
-
|
123
|
-
msgid "Begin container update single threaded sweep"
|
124
|
-
msgstr "Начать однонитевую сплошную проверку обновлений контейнера"
|
125
|
-
|
126
|
-
msgid "Begin container update sweep"
|
127
|
-
msgstr "Начать сплошную проверку обновлений контейнера"
|
128
|
-
|
129
|
-
msgid "Begin object update single threaded sweep"
|
130
|
-
msgstr "Начать однонитевую сплошную проверку обновлений объекта"
|
131
|
-
|
132
|
-
msgid "Begin object update sweep"
|
133
|
-
msgstr "Начать сплошную проверку обновлений объекта"
|
134
|
-
|
135
|
-
msgid "Beginning replication run"
|
136
|
-
msgstr "Запуск репликации"
|
137
|
-
|
138
|
-
msgid "Broker error trying to rollback locked connection"
|
139
|
-
msgstr "Ошибка посредника при попытке отката заблокированного соединения"
|
140
|
-
|
141
|
-
#, python-format
|
142
|
-
msgid "Can not access the file %s."
|
143
|
-
msgstr "Отсутствует доступ к файлу %s."
|
144
|
-
|
145
|
-
#, python-format
|
146
|
-
msgid "Can not load profile data from %s."
|
147
|
-
msgstr "Не удается загрузить данные профайла из %s."
|
148
|
-
|
149
|
-
#, python-format
|
150
|
-
msgid "Client did not read from proxy within %ss"
|
151
|
-
msgstr "Клиент не прочитал данные из proxy в %ss"
|
152
|
-
|
153
|
-
msgid "Client disconnected on read"
|
154
|
-
msgstr "Клиент отключен во время чтения"
|
155
|
-
|
156
|
-
msgid "Client disconnected without sending enough data"
|
157
|
-
msgstr "Клиент отключен без отправки данных"
|
158
|
-
|
159
|
-
msgid "Client disconnected without sending last chunk"
|
160
|
-
msgstr "Клиент отключился, не отправив последний фрагмент данных"
|
161
|
-
|
162
|
-
#, python-format
|
163
|
-
msgid ""
|
164
|
-
"Client path %(client)s does not match path stored in object metadata %(meta)s"
|
165
|
-
msgstr ""
|
166
|
-
"Путь клиента %(client)s не соответствует пути в метаданных объекта %(meta)s"
|
167
|
-
|
168
|
-
msgid ""
|
169
|
-
"Configuration option internal_client_conf_path not defined. Using default "
|
170
|
-
"configuration, See internal-client.conf-sample for options"
|
171
|
-
msgstr ""
|
172
|
-
"Опция internal_client_conf_path конфигурации не определена. Используется "
|
173
|
-
"конфигурация по умолчанию. Используйте intenal-client.conf-sample для "
|
174
|
-
"информации об опциях"
|
175
|
-
|
176
|
-
msgid "Connection refused"
|
177
|
-
msgstr "Соединение отклонено"
|
178
|
-
|
179
|
-
msgid "Connection timeout"
|
180
|
-
msgstr "Тайм-аут соединения"
|
181
|
-
|
182
|
-
msgid "Container"
|
183
|
-
msgstr "контейнер"
|
184
|
-
|
185
|
-
#, python-format
|
186
|
-
msgid "Container audit \"once\" mode completed: %.02fs"
|
187
|
-
msgstr "Проверка контейнера в \"однократном\" режиме завершена: %.02fs"
|
188
|
-
|
189
|
-
#, python-format
|
190
|
-
msgid "Container audit pass completed: %.02fs"
|
191
|
-
msgstr "Проход проверки контейнера завершен: %.02fs"
|
192
|
-
|
193
|
-
#, python-format
|
194
|
-
msgid "Container sync \"once\" mode completed: %.02fs"
|
195
|
-
msgstr "Синхронизация контейнера в \"однократном\" режиме завершена: %.02fs"
|
196
|
-
|
197
|
-
#, python-format
|
198
|
-
msgid ""
|
199
|
-
"Container update single threaded sweep completed: %(elapsed).02fs, "
|
200
|
-
"%(success)s successes, %(fail)s failures, %(no_change)s with no changes"
|
201
|
-
msgstr ""
|
202
|
-
"Сплошная однонитевая проверка обновлений контейнера завершена: "
|
203
|
-
"%(elapsed).02fs, успешно: %(success)s, сбоев: %(fail)s, без изменений: "
|
204
|
-
"%(no_change)s"
|
205
|
-
|
206
|
-
#, python-format
|
207
|
-
msgid "Container update sweep completed: %.02fs"
|
208
|
-
msgstr "Сплошная проверка обновлений контейнера завершена: %.02fs"
|
209
|
-
|
210
|
-
#, python-format
|
211
|
-
msgid ""
|
212
|
-
"Container update sweep of %(path)s completed: %(elapsed).02fs, %(success)s "
|
213
|
-
"successes, %(fail)s failures, %(no_change)s with no changes"
|
214
|
-
msgstr ""
|
215
|
-
"Сплошная проверка обновлений контейнера в %(path)s завершена: "
|
216
|
-
"%(elapsed).02fs, успешно: %(success)s, сбоев: %(fail)s, без изменений: "
|
217
|
-
"%(no_change)s"
|
218
|
-
|
219
|
-
#, python-format
|
220
|
-
msgid "Data download error: %s"
|
221
|
-
msgstr "Ошибка загрузки данных: %s"
|
222
|
-
|
223
|
-
#, python-format
|
224
|
-
msgid "ERROR %(db_file)s: %(validate_sync_to_err)s"
|
225
|
-
msgstr "Ошибка %(db_file)s: %(validate_sync_to_err)s"
|
226
|
-
|
227
|
-
#, python-format
|
228
|
-
msgid "ERROR %(status)d %(body)s From %(type)s Server"
|
229
|
-
msgstr "Ошибка %(status)d %(body)s из сервера %(type)s"
|
230
|
-
|
231
|
-
#, python-format
|
232
|
-
msgid "ERROR %(status)d %(body)s From Object Server re: %(path)s"
|
233
|
-
msgstr "Ошибка %(status)d %(body)s, ответ от сервера объекта: %(path)s"
|
234
|
-
|
235
|
-
#, python-format
|
236
|
-
msgid "ERROR %(status)d Expect: 100-continue From Object Server"
|
237
|
-
msgstr "Ошибка %(status)d. Ожидаемое значение от сервера объекта: 100-continue"
|
238
|
-
|
239
|
-
#, python-format
|
240
|
-
msgid ""
|
241
|
-
"ERROR Account update failed with %(ip)s:%(port)s/%(device)s (will retry "
|
242
|
-
"later): Response %(status)s %(reason)s"
|
243
|
-
msgstr ""
|
244
|
-
"Ошибка: обновление учетной записи не выполнено для %(ip)s:%(port)s/"
|
245
|
-
"%(device)s (операция будет повторена позднее): Ответ: %(status)s %(reason)s"
|
246
|
-
|
247
|
-
#, python-format
|
248
|
-
msgid "ERROR Client read timeout (%ss)"
|
249
|
-
msgstr "Ошибка: тайм-аут чтения клиента (%ss)"
|
250
|
-
|
251
|
-
#, python-format
|
252
|
-
msgid ""
|
253
|
-
"ERROR Container update failed (saving for async update later): %(status)d "
|
254
|
-
"response from %(ip)s:%(port)s/%(dev)s"
|
255
|
-
msgstr ""
|
256
|
-
"Ошибка. Обновление контейнера не выполнено (сохранение асинхронных "
|
257
|
-
"обновлений будет выполнено позднее): %(status)d ответ от %(ip)s:%(port)s/"
|
258
|
-
"%(dev)s"
|
259
|
-
|
260
|
-
#, python-format
|
261
|
-
msgid "ERROR Could not get account info %s"
|
262
|
-
msgstr "Ошибка: не удалось получить сведения об учетной записи %s"
|
263
|
-
|
264
|
-
#, python-format
|
265
|
-
msgid "ERROR Could not get container info %s"
|
266
|
-
msgstr "Ошибка: не удалось получить информацию о контейнере %s"
|
267
|
-
|
268
|
-
#, python-format
|
269
|
-
msgid "ERROR DiskFile %(data_file)s close failure: %(exc)s : %(stack)s"
|
270
|
-
msgstr "Ошибка: ошибка закрытия DiskFile %(data_file)s: %(exc)s : %(stack)s"
|
271
|
-
|
272
|
-
msgid "ERROR Exception causing client disconnect"
|
273
|
-
msgstr "Ошибка. Исключительная ситуация при отключении клиента"
|
274
|
-
|
275
|
-
#, python-format
|
276
|
-
msgid "ERROR Exception transferring data to object servers %s"
|
277
|
-
msgstr ""
|
278
|
-
"ОШИБКА. Исключительная ситуация при передаче данных на серверы объектов %s"
|
279
|
-
|
280
|
-
msgid "ERROR Failed to get my own IPs?"
|
281
|
-
msgstr "Ошибка: не удалось получить собственные IP-адреса?"
|
282
|
-
|
283
|
-
msgid "ERROR Insufficient Storage"
|
284
|
-
msgstr "Ошибка - недостаточно памяти"
|
285
|
-
|
286
|
-
#, python-format
|
287
|
-
msgid "ERROR Object %(obj)s failed audit and was quarantined: %(err)s"
|
288
|
-
msgstr ""
|
289
|
-
"Ошибка: контроль объекта %(obj)s не выполнен, объект помещен в карантин: "
|
290
|
-
"%(err)s"
|
291
|
-
|
292
|
-
#, python-format
|
293
|
-
msgid "ERROR Pickle problem, quarantining %s"
|
294
|
-
msgstr "Ошибка Pickle, %s помещается в карантин"
|
295
|
-
|
296
|
-
#, python-format
|
297
|
-
msgid "ERROR Remote drive not mounted %s"
|
298
|
-
msgstr "Ошибка: удаленный накопитель не смонтирован %s"
|
299
|
-
|
300
|
-
#, python-format
|
301
|
-
msgid "ERROR Syncing %(db_file)s %(row)s"
|
302
|
-
msgstr "Ошибка синхронизации %(db_file)s %(row)s"
|
303
|
-
|
304
|
-
#, python-format
|
305
|
-
msgid "ERROR Syncing %s"
|
306
|
-
msgstr "Ошибка синхронизации %s"
|
307
|
-
|
308
|
-
#, python-format
|
309
|
-
msgid "ERROR Trying to audit %s"
|
310
|
-
msgstr "Ошибка при попытке контроля %s"
|
311
|
-
|
312
|
-
msgid "ERROR Unhandled exception in request"
|
313
|
-
msgstr "Ошибка. Необрабатываемая исключительная ситуация в запросе"
|
314
|
-
|
315
|
-
#, python-format
|
316
|
-
msgid "ERROR __call__ error with %(method)s %(path)s "
|
317
|
-
msgstr "Ошибка: ошибка __call__ в %(method)s %(path)s "
|
318
|
-
|
319
|
-
#, python-format
|
320
|
-
msgid ""
|
321
|
-
"ERROR account update failed with %(ip)s:%(port)s/%(device)s (will retry "
|
322
|
-
"later)"
|
323
|
-
msgstr ""
|
324
|
-
"Ошибка: обновление учетной записи не выполнено для %(ip)s:%(port)s/"
|
325
|
-
"%(device)s (операция будет повторена позднее)"
|
326
|
-
|
327
|
-
#, python-format
|
328
|
-
msgid ""
|
329
|
-
"ERROR account update failed with %(ip)s:%(port)s/%(device)s (will retry "
|
330
|
-
"later): "
|
331
|
-
msgstr ""
|
332
|
-
"Ошибка: обновление учетной записи не выполнено для %(ip)s:%(port)s/"
|
333
|
-
"%(device)s (операция будет повторена позднее): "
|
334
|
-
|
335
|
-
#, python-format
|
336
|
-
msgid "ERROR async pending file with unexpected name %s"
|
337
|
-
msgstr ""
|
338
|
-
"Ошибка выполнения асинхронной передачи ожидающего файла с непредвиденным "
|
339
|
-
"именем %s"
|
340
|
-
|
341
|
-
msgid "ERROR auditing"
|
342
|
-
msgstr "ОШИБКА контроля"
|
343
|
-
|
344
|
-
#, python-format
|
345
|
-
msgid "ERROR auditing: %s"
|
346
|
-
msgstr "Ошибка контроля: %s"
|
347
|
-
|
348
|
-
#, python-format
|
349
|
-
msgid ""
|
350
|
-
"ERROR container update failed with %(ip)s:%(port)s/%(dev)s (saving for async "
|
351
|
-
"update later)"
|
352
|
-
msgstr ""
|
353
|
-
"Ошибка. Обновление контейнера не выполнена с %(ip)s:%(port)s/%(dev)s "
|
354
|
-
"(сохранение асинхронного обновления будет выполнено позднее)"
|
355
|
-
|
356
|
-
#, python-format
|
357
|
-
msgid "ERROR reading HTTP response from %s"
|
358
|
-
msgstr "Ошибка чтения ответа HTTP из %s"
|
359
|
-
|
360
|
-
#, python-format
|
361
|
-
msgid "ERROR reading db %s"
|
362
|
-
msgstr "Ошибка чтения базы данных %s"
|
363
|
-
|
364
|
-
#, python-format
|
365
|
-
msgid "ERROR rsync failed with %(code)s: %(args)s"
|
366
|
-
msgstr "Ошибка: команда rsync не выполнена с кодом %(code)s: %(args)s"
|
367
|
-
|
368
|
-
#, python-format
|
369
|
-
msgid "ERROR syncing %(file)s with node %(node)s"
|
370
|
-
msgstr "Ошибка синхронизации %(file)s с узлом %(node)s"
|
371
|
-
|
372
|
-
msgid "ERROR trying to replicate"
|
373
|
-
msgstr "Ошибка при попытке репликации"
|
374
|
-
|
375
|
-
#, python-format
|
376
|
-
msgid "ERROR while trying to clean up %s"
|
377
|
-
msgstr "Ошибка при попытке очистки %s"
|
378
|
-
|
379
|
-
#, python-format
|
380
|
-
msgid "ERROR with %(type)s server %(ip)s:%(port)s/%(device)s re: %(info)s"
|
381
|
-
msgstr ""
|
382
|
-
"Ошибка с сервером %(type)s %(ip)s:%(port)s/%(device)s, возврат: %(info)s"
|
383
|
-
|
384
|
-
#, python-format
|
385
|
-
msgid "ERROR with loading suppressions from %s: "
|
386
|
-
msgstr "Ошибка при загрузки скрытых объектов из %s: "
|
387
|
-
|
388
|
-
#, python-format
|
389
|
-
msgid "ERROR with remote server %(ip)s:%(port)s/%(device)s"
|
390
|
-
msgstr "Ошибка с удаленным сервером %(ip)s:%(port)s/%(device)s"
|
391
|
-
|
392
|
-
#, python-format
|
393
|
-
msgid "ERROR: Failed to get paths to drive partitions: %s"
|
394
|
-
msgstr "Ошибка: не удалось получить пути к разделам накопителей: %s"
|
395
|
-
|
396
|
-
#, python-format
|
397
|
-
msgid "ERROR: Unable to access %(path)s: %(error)s"
|
398
|
-
msgstr "Ошибка: не удалось получить доступ к %(path)s: %(error)s"
|
399
|
-
|
400
|
-
#, python-format
|
401
|
-
msgid "ERROR: Unable to run auditing: %s"
|
402
|
-
msgstr "Ошибка: не удалось запустить процесс контроля: %s"
|
403
|
-
|
404
|
-
msgid "Error hashing suffix"
|
405
|
-
msgstr "Ошибка хэширования суффикса"
|
406
|
-
|
407
|
-
msgid "Error listing devices"
|
408
|
-
msgstr "Ошибка при выводе списка устройств"
|
409
|
-
|
410
|
-
#, python-format
|
411
|
-
msgid "Error on render profiling results: %s"
|
412
|
-
msgstr "Ошибка при выводе результатов профилирования: %s"
|
413
|
-
|
414
|
-
msgid "Error parsing recon cache file"
|
415
|
-
msgstr "Ошибка анализа файла кэша recon"
|
416
|
-
|
417
|
-
msgid "Error reading recon cache file"
|
418
|
-
msgstr "Ошибка чтения файла кэша recon"
|
419
|
-
|
420
|
-
msgid "Error reading ringfile"
|
421
|
-
msgstr "Ошибка при чтении ringfile"
|
422
|
-
|
423
|
-
msgid "Error reading swift.conf"
|
424
|
-
msgstr "Ошибка чтения swift.conf"
|
425
|
-
|
426
|
-
msgid "Error retrieving recon data"
|
427
|
-
msgstr "Ошибка при получении данных recon"
|
428
|
-
|
429
|
-
msgid "Error syncing handoff partition"
|
430
|
-
msgstr "Ошибка при синхронизации раздела передачи управления"
|
431
|
-
|
432
|
-
msgid "Error syncing partition"
|
433
|
-
msgstr "Ошибка синхронизации раздела"
|
434
|
-
|
435
|
-
#, python-format
|
436
|
-
msgid "Error syncing with node: %s"
|
437
|
-
msgstr "Ошибка синхронизации с узлом %s"
|
438
|
-
|
439
|
-
#, python-format
|
440
|
-
msgid "Error trying to rebuild %(path)s policy#%(policy)d frag#%(frag_index)s"
|
441
|
-
msgstr ""
|
442
|
-
"Ошибка при попытке перекомпоновки стратегии %(path)s: номер#%(policy)d "
|
443
|
-
"фрагмент#%(frag_index)s"
|
444
|
-
|
445
|
-
msgid "Error: An error occurred"
|
446
|
-
msgstr "Ошибка: произошла ошибка"
|
447
|
-
|
448
|
-
msgid "Error: missing config path argument"
|
449
|
-
msgstr "Ошибка: отсутствует аргумент пути конфигурации"
|
450
|
-
|
451
|
-
#, python-format
|
452
|
-
msgid "Error: unable to locate %s"
|
453
|
-
msgstr "Ошибка: не удалось найти %s"
|
454
|
-
|
455
|
-
#, python-format
|
456
|
-
msgid "Exception with %(ip)s:%(port)s/%(device)s"
|
457
|
-
msgstr "Исключительная ситуация в %(ip)s:%(port)s/%(device)s"
|
458
|
-
|
459
|
-
#, python-format
|
460
|
-
msgid "Expect: 100-continue on %s"
|
461
|
-
msgstr "Ожидаемое значение: 100-continue в %s"
|
462
|
-
|
463
|
-
#, python-format
|
464
|
-
msgid "Following CNAME chain for %(given_domain)s to %(found_domain)s"
|
465
|
-
msgstr "Следующая цепочка CNAME для %(given_domain)s в %(found_domain)s"
|
466
|
-
|
467
|
-
msgid "Found configs:"
|
468
|
-
msgstr "Обнаружены конфигурации:"
|
469
|
-
|
470
|
-
msgid ""
|
471
|
-
"Handoffs first mode still has handoffs remaining. Aborting current "
|
472
|
-
"replication pass."
|
473
|
-
msgstr ""
|
474
|
-
"В режиме передачи управления не все операции завершены. Принудительное "
|
475
|
-
"завершение текущего прохода репликации."
|
476
|
-
|
477
|
-
msgid "Host unreachable"
|
478
|
-
msgstr "Хост недоступен"
|
479
|
-
|
480
|
-
#, python-format
|
481
|
-
msgid "Invalid X-Container-Sync-To format %r"
|
482
|
-
msgstr "Недопустимый формат X-Container-Sync-To %r"
|
483
|
-
|
484
|
-
#, python-format
|
485
|
-
msgid "Invalid host %r in X-Container-Sync-To"
|
486
|
-
msgstr "Недопустимый хост %r в X-Container-Sync-To"
|
487
|
-
|
488
|
-
#, python-format
|
489
|
-
msgid "Invalid pending entry %(file)s: %(entry)s"
|
490
|
-
msgstr "Недопустимая ожидающая запись %(file)s: %(entry)s"
|
491
|
-
|
492
|
-
#, python-format
|
493
|
-
msgid "Invalid response %(resp)s from %(full_path)s"
|
494
|
-
msgstr "Недопустимый ответ %(resp)s от %(full_path)s"
|
495
|
-
|
496
|
-
#, python-format
|
497
|
-
msgid "Invalid response %(resp)s from %(ip)s"
|
498
|
-
msgstr "Недопустимый ответ %(resp)s от %(ip)s"
|
499
|
-
|
500
|
-
#, python-format
|
501
|
-
msgid ""
|
502
|
-
"Invalid scheme %r in X-Container-Sync-To, must be \"//\", \"http\", or "
|
503
|
-
"\"https\"."
|
504
|
-
msgstr ""
|
505
|
-
"Недопустимая схема %r в X-Container-Sync-To, допустимые значения: \"//\", "
|
506
|
-
"\"http\" или \"https\"."
|
507
|
-
|
508
|
-
#, python-format
|
509
|
-
msgid "Killing long-running rsync: %s"
|
510
|
-
msgstr "Принудительное завершение долго выполняющегося rsync: %s"
|
511
|
-
|
512
|
-
msgid "Lockup detected.. killing live coros."
|
513
|
-
msgstr "Обнаружена блокировка.. принудительное завершение работающих модулей."
|
514
|
-
|
515
|
-
#, python-format
|
516
|
-
msgid "Mapped %(given_domain)s to %(found_domain)s"
|
517
|
-
msgstr "Преобразовано %(given_domain)s в %(found_domain)s"
|
518
|
-
|
519
|
-
#, python-format
|
520
|
-
msgid "No %s running"
|
521
|
-
msgstr "%s не выполняется"
|
522
|
-
|
523
|
-
#, python-format
|
524
|
-
msgid "No permission to signal PID %d"
|
525
|
-
msgstr "Нет прав доступа для отправки сигнала в PID %d"
|
526
|
-
|
527
|
-
#, python-format
|
528
|
-
msgid "No policy with index %s"
|
529
|
-
msgstr "Не найдено стратегии с индексом %s"
|
530
|
-
|
531
|
-
#, python-format
|
532
|
-
msgid "No realm key for %r"
|
533
|
-
msgstr "Отсутствует ключ области для %r"
|
534
|
-
|
535
|
-
#, python-format
|
536
|
-
msgid "Node error limited %(ip)s:%(port)s (%(device)s)"
|
537
|
-
msgstr "Ограниченная ошибка узла %(ip)s:%(port)s (%(device)s)"
|
538
|
-
|
539
|
-
#, python-format
|
540
|
-
msgid "Not enough object servers ack'ed (got %d)"
|
541
|
-
msgstr "Недостаточное число подтверждений с серверов объектов (получено %d)"
|
542
|
-
|
543
|
-
#, python-format
|
544
|
-
msgid ""
|
545
|
-
"Not found %(sync_from)r => %(sync_to)r - object "
|
546
|
-
"%(obj_name)r"
|
547
|
-
msgstr ""
|
548
|
-
"Не найдено: %(sync_from)r => %(sync_to)r - объект "
|
549
|
-
"%(obj_name)r"
|
550
|
-
|
551
|
-
#, python-format
|
552
|
-
msgid "Nothing reconstructed for %s seconds."
|
553
|
-
msgstr "Ничего не реконструировано за %s с."
|
554
|
-
|
555
|
-
#, python-format
|
556
|
-
msgid "Nothing replicated for %s seconds."
|
557
|
-
msgstr "Ничего не реплицировано за %s с."
|
558
|
-
|
559
|
-
msgid "Object"
|
560
|
-
msgstr "Объект"
|
561
|
-
|
562
|
-
msgid "Object PUT"
|
563
|
-
msgstr "Функция PUT объекта"
|
564
|
-
|
565
|
-
#, python-format
|
566
|
-
msgid "Object PUT returning 202 for 409: %(req_timestamp)s <= %(timestamps)r"
|
567
|
-
msgstr ""
|
568
|
-
"Функция PUT объекта возвратила 202 для 409: %(req_timestamp)s <= "
|
569
|
-
"%(timestamps)r"
|
570
|
-
|
571
|
-
#, python-format
|
572
|
-
msgid "Object PUT returning 412, %(statuses)r"
|
573
|
-
msgstr "Функция PUT объекта возвратила 412, %(statuses)r"
|
574
|
-
|
575
|
-
#, python-format
|
576
|
-
msgid ""
|
577
|
-
"Object audit (%(type)s) \"%(mode)s\" mode completed: %(elapsed).02fs. Total "
|
578
|
-
"quarantined: %(quars)d, Total errors: %(errors)d, Total files/sec: "
|
579
|
-
"%(frate).2f, Total bytes/sec: %(brate).2f, Auditing time: %(audit).2f, Rate: "
|
580
|
-
"%(audit_rate).2f"
|
581
|
-
msgstr ""
|
582
|
-
"Контроль объекта (%(type)s) в режиме \"%(mode)s\" завершен: %(elapsed).02fs. "
|
583
|
-
"Всего в карантине: %(quars)d, всего ошибок: %(errors)d, всего файлов/с: "
|
584
|
-
"%(frate).2f, всего байт/с: %(brate).2f, время контроля: %(audit).2f, "
|
585
|
-
"скорость: %(audit_rate).2f"
|
586
|
-
|
587
|
-
#, python-format
|
588
|
-
msgid ""
|
589
|
-
"Object audit (%(type)s). Since %(start_time)s: Locally: %(passes)d passed, "
|
590
|
-
"%(quars)d quarantined, %(errors)d errors, files/sec: %(frate).2f, bytes/sec: "
|
591
|
-
"%(brate).2f, Total time: %(total).2f, Auditing time: %(audit).2f, Rate: "
|
592
|
-
"%(audit_rate).2f"
|
593
|
-
msgstr ""
|
594
|
-
"Проверка объекта (%(type)s). После %(start_time)s: локально: успешно - "
|
595
|
-
"%(passes)d, в карантине - %(quars)d, файлов с ошибками %(errors)d в секунду: "
|
596
|
-
"%(frate).2f , байт/с: %(brate).2f, общее время: %(total).2f, время контроля: "
|
597
|
-
"%(audit).2f, скорость: %(audit_rate).2f"
|
598
|
-
|
599
|
-
#, python-format
|
600
|
-
msgid "Object audit stats: %s"
|
601
|
-
msgstr "Состояние контроля объекта: %s"
|
602
|
-
|
603
|
-
#, python-format
|
604
|
-
msgid "Object reconstruction complete (once). (%.02f minutes)"
|
605
|
-
msgstr "Реконструкция объекта выполнена (однократно). (%.02f мин.)"
|
606
|
-
|
607
|
-
#, python-format
|
608
|
-
msgid "Object reconstruction complete. (%.02f minutes)"
|
609
|
-
msgstr "Реконструкция объекта выполнена. (%.02f мин.)"
|
610
|
-
|
611
|
-
#, python-format
|
612
|
-
msgid "Object replication complete (once). (%.02f minutes)"
|
613
|
-
msgstr "Репликация объекта выполнена (однократно). (%.02f мин.)"
|
614
|
-
|
615
|
-
#, python-format
|
616
|
-
msgid "Object replication complete. (%.02f minutes)"
|
617
|
-
msgstr "Репликация объекта выполнена. (%.02f мин.)"
|
618
|
-
|
619
|
-
#, python-format
|
620
|
-
msgid "Object servers returned %s mismatched etags"
|
621
|
-
msgstr "Серверы объектов вернули несоответствующие etag: %s"
|
622
|
-
|
623
|
-
#, python-format
|
624
|
-
msgid "Object update sweep completed: %.02fs"
|
625
|
-
msgstr "Сплошная проверка обновлений объекта завершена: %.02fs"
|
626
|
-
|
627
|
-
msgid "Params, queries, and fragments not allowed in X-Container-Sync-To"
|
628
|
-
msgstr "В X-Container-Sync-To не разрешены параметры, запросы и фрагменты"
|
629
|
-
|
630
|
-
#, python-format
|
631
|
-
msgid "Partition times: max %(max).4fs, min %(min).4fs, med %(med).4fs"
|
632
|
-
msgstr ""
|
633
|
-
"Время раздела: максимум: %(max).4fs, минимум: %(min).4fs, среднее: %(med).4fs"
|
634
|
-
|
635
|
-
msgid "Path required in X-Container-Sync-To"
|
636
|
-
msgstr "Требуется путь в X-Container-Sync-To"
|
637
|
-
|
638
|
-
#, python-format
|
639
|
-
msgid "Problem cleaning up %s"
|
640
|
-
msgstr "Неполадка при очистке %s"
|
641
|
-
|
642
|
-
#, python-format
|
643
|
-
msgid "Profiling Error: %s"
|
644
|
-
msgstr "Ошибка профилирования: %s"
|
645
|
-
|
646
|
-
#, python-format
|
647
|
-
msgid "Quarantined %(hsh_path)s to %(quar_path)s because it is not a directory"
|
648
|
-
msgstr ""
|
649
|
-
"%(hsh_path)s помещен в карантин в %(quar_path)s, так как не является "
|
650
|
-
"каталогом"
|
651
|
-
|
652
|
-
#, python-format
|
653
|
-
msgid ""
|
654
|
-
"Quarantined %(object_path)s to %(quar_path)s because it is not a directory"
|
655
|
-
msgstr ""
|
656
|
-
"%(object_path)s помещен в карантин в %(quar_path)s, так как не является "
|
657
|
-
"каталогом"
|
658
|
-
|
659
|
-
#, python-format
|
660
|
-
msgid "Quarantining DB %s"
|
661
|
-
msgstr "БД %s помещена в карантин"
|
662
|
-
|
663
|
-
#, python-format
|
664
|
-
msgid "Ratelimit sleep log: %(sleep)s for %(account)s/%(container)s/%(object)s"
|
665
|
-
msgstr ""
|
666
|
-
"Протокол тайм-аута при ограничении скорости %(sleep)s для %(account)s/"
|
667
|
-
"%(container)s/%(object)s"
|
668
|
-
|
669
|
-
#, python-format
|
670
|
-
msgid "Removed %(remove)d dbs"
|
671
|
-
msgstr "Удалено баз данных: %(remove)d"
|
672
|
-
|
673
|
-
#, python-format
|
674
|
-
msgid "Removing %s objects"
|
675
|
-
msgstr "Удаление объектов %s"
|
676
|
-
|
677
|
-
#, python-format
|
678
|
-
msgid "Removing partition: %s"
|
679
|
-
msgstr "Удаление раздела: %s"
|
680
|
-
|
681
|
-
#, python-format
|
682
|
-
msgid "Removing pid file %(pid_file)s with wrong pid %(pid)d"
|
683
|
-
msgstr "Удаление файла pid %(pid_file)s с ошибочным pid %(pid)d"
|
684
|
-
|
685
|
-
#, python-format
|
686
|
-
msgid "Removing pid file %s with invalid pid"
|
687
|
-
msgstr "Удаление pid файла %s с неверным pid-ом"
|
688
|
-
|
689
|
-
#, python-format
|
690
|
-
msgid "Removing stale pid file %s"
|
691
|
-
msgstr "Удаление устаревшего файла pid %s"
|
692
|
-
|
693
|
-
msgid "Replication run OVER"
|
694
|
-
msgstr "Репликация запущена поверх"
|
695
|
-
|
696
|
-
#, python-format
|
697
|
-
msgid "Returning 497 because of blacklisting: %s"
|
698
|
-
msgstr "Возвращено 497 из-за черного списка: %s"
|
699
|
-
|
700
|
-
#, python-format
|
701
|
-
msgid ""
|
702
|
-
"Returning 498 for %(meth)s to %(acc)s/%(cont)s/%(obj)s . Ratelimit (Max "
|
703
|
-
"Sleep) %(e)s"
|
704
|
-
msgstr ""
|
705
|
-
"Возвращено 498 для %(meth)s в %(acc)s/%(cont)s/%(obj)s . Ratelimit "
|
706
|
-
"(максимальная задержка): %(e)s"
|
707
|
-
|
708
|
-
msgid "Ring change detected. Aborting current reconstruction pass."
|
709
|
-
msgstr ""
|
710
|
-
"Обнаружено изменение кольца. Принудительное завершение текущего прохода "
|
711
|
-
"реконструкции."
|
712
|
-
|
713
|
-
msgid "Ring change detected. Aborting current replication pass."
|
714
|
-
msgstr ""
|
715
|
-
"Обнаружено кольцевое изменение. Принудительное завершение текущего прохода "
|
716
|
-
"репликации."
|
717
|
-
|
718
|
-
#, python-format
|
719
|
-
msgid "Running %s once"
|
720
|
-
msgstr "Однократное выполнение %s"
|
721
|
-
|
722
|
-
msgid "Running object reconstructor in script mode."
|
723
|
-
msgstr "Запуск утилиты реконструкции объектов в режиме скрипта."
|
724
|
-
|
725
|
-
msgid "Running object replicator in script mode."
|
726
|
-
msgstr "Запуск утилиты репликации объектов в режиме сценариев."
|
727
|
-
|
728
|
-
#, python-format
|
729
|
-
msgid ""
|
730
|
-
"Since %(time)s: %(sync)s synced [%(delete)s deletes, %(put)s puts], %(skip)s "
|
731
|
-
"skipped, %(fail)s failed"
|
732
|
-
msgstr ""
|
733
|
-
"За %(time)s операций синхронизировано %(sync)s [удалено: %(delete)s, "
|
734
|
-
"добавлено: %(put)s], пропущено: %(skip)s, ошибки: %(fail)s"
|
735
|
-
|
736
|
-
#, python-format
|
737
|
-
msgid ""
|
738
|
-
"Since %(time)s: Account audits: %(passed)s passed audit,%(failed)s failed "
|
739
|
-
"audit"
|
740
|
-
msgstr ""
|
741
|
-
"Выполнено проверок учетной записи: %(time)s, из них успешно: %(passed)s, с "
|
742
|
-
"ошибками: %(failed)s "
|
743
|
-
|
744
|
-
#, python-format
|
745
|
-
msgid ""
|
746
|
-
"Since %(time)s: Container audits: %(pass)s passed audit, %(fail)s failed "
|
747
|
-
"audit"
|
748
|
-
msgstr ""
|
749
|
-
"Выполнено проверок контейнера: %(time)s, из них успешно: %(pass)s, с "
|
750
|
-
"ошибками: %(fail)s "
|
751
|
-
|
752
|
-
#, python-format
|
753
|
-
msgid "Skipping %s as it is not mounted"
|
754
|
-
msgstr "%s будет пропущен, так как он не смонтирован"
|
755
|
-
|
756
|
-
#, python-format
|
757
|
-
msgid "Starting %s"
|
758
|
-
msgstr "Запуск %s"
|
759
|
-
|
760
|
-
msgid "Starting object reconstruction pass."
|
761
|
-
msgstr "Запуск прохода реконструкции объектов."
|
762
|
-
|
763
|
-
msgid "Starting object reconstructor in daemon mode."
|
764
|
-
msgstr "Запуск утилиты реконструкции объектов в режиме демона."
|
765
|
-
|
766
|
-
msgid "Starting object replication pass."
|
767
|
-
msgstr "Запуск прохода репликации объектов."
|
768
|
-
|
769
|
-
msgid "Starting object replicator in daemon mode."
|
770
|
-
msgstr "Запуск утилиты репликации объектов в режиме демона."
|
771
|
-
|
772
|
-
#, python-format
|
773
|
-
msgid "Successful rsync of %(src)s at %(dst)s (%(time).03f)"
|
774
|
-
msgstr "Успешное выполнение rsync для %(src)s на %(dst)s (%(time).03f)"
|
775
|
-
|
776
|
-
msgid "The file type are forbidden to access!"
|
777
|
-
msgstr "Запрещен доступ к этому типу файла!"
|
778
|
-
|
779
|
-
#, python-format
|
780
|
-
msgid ""
|
781
|
-
"The total %(key)s for the container (%(total)s) does not match the sum of "
|
782
|
-
"%(key)s across policies (%(sum)s)"
|
783
|
-
msgstr ""
|
784
|
-
"Общее число %(key)s для контейнера (%(total)s) не соответствует сумме "
|
785
|
-
"%(key)s в стратегиях (%(sum)s)"
|
786
|
-
|
787
|
-
#, python-format
|
788
|
-
msgid "Trying to %(method)s %(path)s"
|
789
|
-
msgstr "Попытка выполнения метода %(method)s %(path)s"
|
790
|
-
|
791
|
-
#, python-format
|
792
|
-
msgid "Trying to GET %(full_path)s"
|
793
|
-
msgstr "Попытка GET-запроса %(full_path)s"
|
794
|
-
|
795
|
-
msgid "Trying to read during GET"
|
796
|
-
msgstr "Попытка чтения во время операции GET"
|
797
|
-
|
798
|
-
msgid "Trying to send to client"
|
799
|
-
msgstr "Попытка отправки клиенту"
|
800
|
-
|
801
|
-
#, python-format
|
802
|
-
msgid "Trying to sync suffixes with %s"
|
803
|
-
msgstr "Попытка синхронизации суффиксов с %s"
|
804
|
-
|
805
|
-
#, python-format
|
806
|
-
msgid "Trying to write to %s"
|
807
|
-
msgstr "Попытка записи в %s"
|
808
|
-
|
809
|
-
msgid "UNCAUGHT EXCEPTION"
|
810
|
-
msgstr "Необрабатываемая исключительная ситуация"
|
811
|
-
|
812
|
-
#, python-format
|
813
|
-
msgid "Unable to locate %s in libc. Leaving as a no-op."
|
814
|
-
msgstr "Не удалось найти %s в libc. Оставлено как no-op."
|
815
|
-
|
816
|
-
#, python-format
|
817
|
-
msgid "Unable to locate config for %s"
|
818
|
-
msgstr "Не удалось найти конфигурационный файл для %s"
|
819
|
-
|
820
|
-
msgid ""
|
821
|
-
"Unable to locate fallocate, posix_fallocate in libc. Leaving as a no-op."
|
822
|
-
msgstr ""
|
823
|
-
"Не удалось найти fallocate, posix_fallocate в libc. Оставлено как no-op."
|
824
|
-
|
825
|
-
#, python-format
|
826
|
-
msgid "Unable to read config from %s"
|
827
|
-
msgstr "Не удалось прочитать конфигурацию из %s"
|
828
|
-
|
829
|
-
#, python-format
|
830
|
-
msgid "Unauth %(sync_from)r => %(sync_to)r"
|
831
|
-
msgstr "Синхронизация %(sync_from)r => %(sync_to)r без прав доступа"
|
832
|
-
|
833
|
-
msgid "Unhandled exception"
|
834
|
-
msgstr "Необработанная исключительная ситуация"
|
835
|
-
|
836
|
-
#, python-format
|
837
|
-
msgid "Unknown exception trying to GET: %(account)r %(container)r %(object)r"
|
838
|
-
msgstr ""
|
839
|
-
"Неизвестное исключение в GET-запросе: %(account)r %(container)r %(object)r"
|
840
|
-
|
841
|
-
#, python-format
|
842
|
-
msgid "Update report failed for %(container)s %(dbfile)s"
|
843
|
-
msgstr "Отчет об обновлении для %(container)s %(dbfile)s не выполнен"
|
844
|
-
|
845
|
-
#, python-format
|
846
|
-
msgid "Update report sent for %(container)s %(dbfile)s"
|
847
|
-
msgstr "Отчет об обновлении отправлен для %(container)s %(dbfile)s"
|
848
|
-
|
849
|
-
msgid ""
|
850
|
-
"WARNING: SSL should only be enabled for testing purposes. Use external SSL "
|
851
|
-
"termination for a production deployment."
|
852
|
-
msgstr ""
|
853
|
-
"Предупреждение: SSL должен быть включен только в целях тестирования. "
|
854
|
-
"Используйте внешнее завершение SSL для развертывания в рабочем режиме."
|
855
|
-
|
856
|
-
msgid "WARNING: Unable to modify file descriptor limit. Running as non-root?"
|
857
|
-
msgstr ""
|
858
|
-
"Предупреждение: не удалось изменить предельное значение для дескриптора "
|
859
|
-
"файла. Запущен без прав доступа root?"
|
860
|
-
|
861
|
-
msgid "WARNING: Unable to modify max process limit. Running as non-root?"
|
862
|
-
msgstr ""
|
863
|
-
"Предупреждение: не удалось изменить предельное значение для числа процессов. "
|
864
|
-
"Запущен без прав доступа root?"
|
865
|
-
|
866
|
-
msgid "WARNING: Unable to modify memory limit. Running as non-root?"
|
867
|
-
msgstr ""
|
868
|
-
"Предупреждение: не удалось изменить предельное значение для памяти. Запущен "
|
869
|
-
"без прав доступа root?"
|
870
|
-
|
871
|
-
msgid "Warning: Cannot ratelimit without a memcached client"
|
872
|
-
msgstr ""
|
873
|
-
"Предупреждение: не удается ограничить скорость без клиента с кэшированием "
|
874
|
-
"памяти"
|
875
|
-
|
876
|
-
#, python-format
|
877
|
-
msgid "method %s is not allowed."
|
878
|
-
msgstr "Метод %s не разрешен."
|
879
|
-
|
880
|
-
msgid "no log file found"
|
881
|
-
msgstr "Не найден файл протокола"
|
882
|
-
|
883
|
-
msgid "odfpy not installed."
|
884
|
-
msgstr "Библиотека odfpy не установлена."
|
885
|
-
|
886
|
-
#, python-format
|
887
|
-
msgid "plotting results failed due to %s"
|
888
|
-
msgstr "Ошибка в результатах plotting из-за %s"
|
889
|
-
|
890
|
-
msgid "python-matplotlib not installed."
|
891
|
-
msgstr "Библиотека python-matplotlib не установлена."
|