Fix deactivation of device when failed underlying node disappeared
[platform/upstream/cryptsetup.git] / po / vi.po
index 6099bf2..afa4ee7 100644 (file)
--- a/po/vi.po
+++ b/po/vi.po
 # Vietnamese translation for CryptSetup.
-# Copyright © 2012 Free Software Foundation, Inc.
+# Copyright © 2013 Free Software Foundation, Inc.
 # This file is distributed under the same license as the cryptsetup package.
 # Clytie Siddall <clytie@riverland.net.au>, 2010.
-# Trần Ngọc Quân <vnwildman@gmail.com>, 2012.
+# Trần Ngọc Quân <vnwildman@gmail.com>, 2012-2013.
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: cryptsetup-1.5.1\n"
+"Project-Id-Version: cryptsetup-1.6.0\n"
 "Report-Msgid-Bugs-To: dm-crypt@saout.de\n"
-"POT-Creation-Date: 2012-09-19 15:48+0200\n"
-"PO-Revision-Date: 2012-10-14 14:51+0700\n"
+"POT-Creation-Date: 2013-01-07 18:59+0100\n"
+"PO-Revision-Date: 2013-01-12 08:01+0700\n"
 "Last-Translator: Trần Ngọc Quân <vnwildman@gmail.com>\n"
 "Language-Team: Vietnamese <translation-team-vi@lists.sourceforge.net>\n"
 "Language: vi\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
+"Team-Website: <http://translationproject.org/team/vi.html>\n"
 "Plural-Forms: nplurals=1; plural=0;\n"
 "X-Generator: LocFactoryEditor 1.8\n"
 "X-Poedit-SourceCharset: UTF-8\n"
 
-#: lib/libdevmapper.c:230
+#: lib/libdevmapper.c:232
 msgid "Cannot initialize device-mapper, running as non-root user.\n"
 msgstr "Không thể khởi tạo ánh-xạ-thiết-bị (device-mapper), do không chạy dưới quyền siêu người dùng.\n"
 
-#: lib/libdevmapper.c:233
+#: lib/libdevmapper.c:235
 msgid "Cannot initialize device-mapper. Is dm_mod kernel module loaded?\n"
-msgstr "Không thể khởi tạo tiến trình ánh xạ thiết bị. Mô-đun hạt nhân`dm_mod'  được nạp chưa?\n"
+msgstr "Không thể khởi tạo tiến trình ánh xạ thiết bị. Mô-đun hạt nhân“dm_mod”  được nạp chưa?\n"
 
-#: lib/libdevmapper.c:516
+#: lib/libdevmapper.c:518
 #, c-format
 msgid "DM-UUID for device %s was truncated.\n"
-msgstr "Mã số DM-UUID cho thiết bị %s bị cắt bớt.\n"
+msgstr "Mã số DM-UUID cho thiết bị %s bị cắt ngắn.\n"
 
-#: lib/random.c:74
+#: lib/random.c:75
 msgid ""
 "System is out of entropy while generating volume key.\n"
 "Please move mouse or type some text in another window to gather some random events.\n"
 msgstr ""
-"Hệ thống bị nằm ngoài en-trô-pi trong khi tạo khóa dung lượng.\n"
+"Hệ thống bị nằm ngoài en-trô-pi trong khi tạo khóa vùng chứa.\n"
 "Xin hãy di chuyển con chuột hay gõ vài chữ trong cửa sổ khác để thu thập sự kiện ngẫu nhiên.\n"
 
-#: lib/random.c:78
+#: lib/random.c:79
 #, c-format
 msgid "Generating key (%d%% done).\n"
 msgstr "Tạo khoá (%d%% hoàn tất).\n"
 
-#: lib/random.c:167
+#: lib/random.c:168
 msgid "Fatal error during RNG initialisation.\n"
 msgstr "Gặp lỗi nghiêm trọng trong quá trình khởi tạo RNG.\n"
 
-#: lib/random.c:204
+#: lib/random.c:205
 msgid "Unknown RNG quality requested.\n"
 msgstr "Không hiểu chất lượng RNG đã yêu cầu.\n"
 
-#: lib/random.c:209
+#: lib/random.c:210
 #, c-format
 msgid "Error %d reading from RNG: %s\n"
-msgstr "Lỗi %d khi đọc một từ RNG: %s\n"
+msgstr "Lỗi %d khi đọc từ RNG: %s\n"
 
-#: lib/setup.c:179
+#: lib/setup.c:192
 msgid "Cannot initialize crypto RNG backend.\n"
 msgstr "Không thể khởi tạo ứng dụng chạy ở phía sau (backend) mã hóa RNG.\n"
 
-#: lib/setup.c:185
+#: lib/setup.c:198
 msgid "Cannot initialize crypto backend.\n"
 msgstr "Không thể khởi ứng dụng mã hóa chạy ở phía sau (backend).\n"
 
-#: lib/setup.c:208 lib/setup.c:1060 lib/verity/verity.c:120
+#: lib/setup.c:221 lib/setup.c:1112 lib/verity/verity.c:123
 #, c-format
 msgid "Hash algorithm %s not supported.\n"
 msgstr "Thuật toán băm %s không được hỗ trợ.\n"
 
-#: lib/setup.c:211 lib/loopaes/loopaes.c:88
+#: lib/setup.c:224 lib/loopaes/loopaes.c:90
 #, c-format
 msgid "Key processing error (using hash %s).\n"
 msgstr "Lỗi xử lý khoá (dùng mã băm %s).\n"
 
-#: lib/setup.c:252
+#: lib/setup.c:270
 msgid "All key slots full.\n"
 msgstr "Mọi khe khoá đều bị đầy.\n"
 
-#: lib/setup.c:259
+#: lib/setup.c:277
 #, c-format
 msgid "Key slot %d is invalid, please select between 0 and %d.\n"
 msgstr "Khe khoá %d không đúng, hãy chọn một giá trị trong phạm vi 0 đến %d.\n"
 
-#: lib/setup.c:265
+#: lib/setup.c:283
 #, c-format
 msgid "Key slot %d is full, please select another one.\n"
 msgstr "Khe khoá %d bị đầy, hãy chọn một khe khác.\n"
 
-#: lib/setup.c:379
+#: lib/setup.c:397
 #, c-format
 msgid "Enter passphrase for %s: "
-msgstr " cụm từ mật khẩu cho %s: "
+msgstr "Nhập cụm từ mật khẩu cho %s: "
 
-#: lib/setup.c:560
+#: lib/setup.c:578
 #, c-format
 msgid "Header detected but device %s is too small.\n"
 msgstr "Phát hiện được phần đầu nhưng mà thiết bị %s quá nhỏ.\n"
 
-#: lib/setup.c:576 lib/setup.c:1278
+#: lib/setup.c:594 lib/setup.c:1339
 msgid "This operation is not supported for this device type.\n"
 msgstr "Thao tác này không được hỗ trợ cho kiểu thiết bị này.\n"
 
-#: lib/setup.c:782 lib/setup.c:1242 lib/setup.c:2034
+#: lib/setup.c:832 lib/setup.c:1300 lib/setup.c:2168
 #, c-format
 msgid "Device %s is not active.\n"
 msgstr "Thiết bị %s không hoạt động.\n"
 
-#: lib/setup.c:799
+#: lib/setup.c:849
 #, c-format
 msgid "Underlying device for crypt device %s disappeared.\n"
 msgstr "Thiết bị nằm dưới cho thiết bị crypt %s đã bị biến mất.\n"
 
-#: lib/setup.c:862
+#: lib/setup.c:914
 msgid "Invalid plain crypt parameters.\n"
 msgstr "Đặt sai tham số mã hóa bình thường.\n"
 
-#: lib/setup.c:867 lib/setup.c:989
+#: lib/setup.c:919 lib/setup.c:1041
 msgid "Invalid key size.\n"
 msgstr "Kích cỡ khoá không đúng.\n"
 
-#: lib/setup.c:911
+#: lib/setup.c:963
 msgid "Can't format LUKS without device.\n"
 msgstr "Không thể định dạng LUKS mà không có thiết bị.\n"
 
-#: lib/setup.c:959
+#: lib/setup.c:1011
 #, c-format
 msgid "Cannot format device %s which is still in use.\n"
 msgstr "Không thể định dạng thiết bị %s mà nó lại vẫn đang được sử dụng.\n"
 
-#: lib/setup.c:962
+#: lib/setup.c:1014
 #, c-format
 msgid "Cannot format device %s, permission denied.\n"
 msgstr "Không thể định dạng thiết bị %s, không đủ thẩm quyền.\n"
 
-#: lib/setup.c:966
+#: lib/setup.c:1018
 #, c-format
 msgid "Cannot wipe header on device %s.\n"
 msgstr "Không thể tẩy xoá phần đầu trên thiết bị %s.\n"
 
-#: lib/setup.c:984
+#: lib/setup.c:1036
 msgid "Can't format LOOPAES without device.\n"
 msgstr "Không thể định dạng LOOPAES bên ngoài thiết bị.\n"
 
-#: lib/setup.c:1020
+#: lib/setup.c:1072
 msgid "Can't format VERITY without device.\n"
 msgstr "Không thể định dạng VERITY mà không có thiết bị.\n"
 
-#: lib/setup.c:1028 lib/verity/verity.c:103
+#: lib/setup.c:1080 lib/verity/verity.c:106
 #, c-format
 msgid "Unsupported VERITY hash type %d.\n"
 msgstr "Kiểu băm VERITY %d không được hỗ trợ.\n"
 
-#: lib/setup.c:1034 lib/verity/verity.c:111
+#: lib/setup.c:1086 lib/verity/verity.c:114
 msgid "Unsupported VERITY block size.\n"
 msgstr "Kích thước khối VERITY không được hỗ trợ.\n"
 
-#: lib/setup.c:1039 lib/verity/verity.c:74
+#: lib/setup.c:1091 lib/verity/verity.c:76
 msgid "Unsupported VERITY hash offset.\n"
 msgstr "Khoảng bù (offset) mã băm VERITY không được hỗ trợ.\n"
 
-#: lib/setup.c:1151
+#: lib/setup.c:1203
 #, c-format
 msgid "Unknown crypt device type %s requested.\n"
 msgstr "Không rõ kiểu thiết bị mã hóa %s được yêu cầu.\n"
 
-#: lib/setup.c:1293
+#: lib/setup.c:1354
 msgid "Do you really want to change UUID of device?"
 msgstr "Bạn có thực sự muốn thay đổi UUID cho thiết bị?"
 
-#: lib/setup.c:1379 lib/setup.c:1424 lib/setup.c:1473 lib/setup.c:1539
-#: lib/setup.c:1615 lib/setup.c:1696 lib/setup.c:1742 lib/setup.c:2099
-#: lib/setup.c:2382
+#: lib/setup.c:1444 lib/setup.c:1489 lib/setup.c:1538 lib/setup.c:1604
+#: lib/setup.c:1677 lib/setup.c:1741 lib/setup.c:1822 lib/setup.c:1868
+#: lib/setup.c:2234 lib/setup.c:2534
 msgid "This operation is supported only for LUKS device.\n"
 msgstr "Thao tác này được hỗ trợ chỉ cho thiết bị LUKS.\n"
 
-#: lib/setup.c:1386
+#: lib/setup.c:1451
 #, c-format
 msgid "Volume %s is not active.\n"
 msgstr "Khối tin %s không hoạt động.\n"
 
-#: lib/setup.c:1397
+#: lib/setup.c:1462
 #, c-format
 msgid "Volume %s is already suspended.\n"
 msgstr "Khối %s đã bị ngưng.\n"
 
-#: lib/setup.c:1434 lib/setup.c:1483
+#: lib/setup.c:1469
+#, c-format
+msgid "Suspend is not supported for device %s.\n"
+msgstr "Tạm dừng không được hỗ trợ cho kiểu thiết bị %s.\n"
+
+#: lib/setup.c:1471
+#, c-format
+msgid "Error during suspending device %s.\n"
+msgstr "Gặp lỗi khi tạm dừng thiết bị %s.\n"
+
+#: lib/setup.c:1499 lib/setup.c:1548
 #, c-format
 msgid "Volume %s is not suspended.\n"
 msgstr "Khối %s không bị ngưng.\n"
 
-#: lib/setup.c:1490 lib/setup.c:1867 lib/setup.c:1881 src/cryptsetup.c:194
+#: lib/setup.c:1513
+#, c-format
+msgid "Resume is not supported for device %s.\n"
+msgstr "Thao tác phục hồi không được hỗ trợ cho kiểu thiết bị %s.\n"
+
+#: lib/setup.c:1515 lib/setup.c:1569
+#, c-format
+msgid "Error during resuming device %s.\n"
+msgstr "Gặp lỗi khi cho hoạt động trở lại thiết bị %s.\n"
+
+#: lib/setup.c:1555 lib/setup.c:1993 lib/setup.c:2007 src/cryptsetup.c:151
+#: src/cryptsetup.c:229 src/cryptsetup.c:316
 msgid "Enter passphrase: "
 msgstr "Gõ cụm từ mật khẩu: "
 
-#: lib/setup.c:1553 lib/setup.c:1629
+#: lib/setup.c:1618 lib/setup.c:1755
 msgid "Cannot add key slot, all slots disabled and no volume key provided.\n"
 msgstr "Không thể thêm khe khoá vì mọi khe đều bị tắt và không cung cấp khoá khối tin.\n"
 
-#: lib/setup.c:1562 lib/setup.c:1635 lib/setup.c:1639
+#: lib/setup.c:1627 lib/setup.c:1761 lib/setup.c:1765 src/cryptsetup.c:928
 msgid "Enter any passphrase: "
-msgstr " bất cứ cụm từ mật khẩu nào: "
+msgstr "Nhập bất cứ cụm từ mật khẩu nào: "
 
-#: lib/setup.c:1579 lib/setup.c:1652 lib/setup.c:1656 lib/setup.c:1719
+#: lib/setup.c:1644 lib/setup.c:1778 lib/setup.c:1782 lib/setup.c:1845
+#: src/cryptsetup.c:942
 msgid "Enter new passphrase for key slot: "
 msgstr "Gõ cụm từ mật khẩu mới cho khe khoá: "
 
-#: lib/setup.c:1710 lib/setup.c:1971 lib/setup.c:1984 lib/setup.c:2110
+#: lib/setup.c:1709
+#, c-format
+msgid "Key slot %d changed.\n"
+msgstr "Khe khoá %d đã thay đổi.\n"
+
+#: lib/setup.c:1712
+#, c-format
+msgid "Replaced with key slot %d.\n"
+msgstr "Đã thay thế với khe khoá %d.\n"
+
+#: lib/setup.c:1717
+msgid "Failed to swap new key slot.\n"
+msgstr "Gặp lỗi khi hoán đổi khe khoá mới.\n"
+
+#: lib/setup.c:1836 lib/setup.c:2097 lib/setup.c:2110 lib/setup.c:2245
 msgid "Volume key does not match the volume.\n"
 msgstr "Khoá khối tin không tương ứng với khối tin đó.\n"
 
-#: lib/setup.c:1748
+#: lib/setup.c:1874
 #, c-format
 msgid "Key slot %d is invalid.\n"
 msgstr "Khe khoá %d không đúng.\n"
 
-#: lib/setup.c:1753
+#: lib/setup.c:1879
 #, c-format
 msgid "Key slot %d is not used.\n"
 msgstr "Khe khoá %d không được dùng.\n"
 
-#: lib/setup.c:1783 lib/setup.c:1855 lib/setup.c:1947
+#: lib/setup.c:1909 lib/setup.c:1981 lib/setup.c:2073
 #, c-format
 msgid "Device %s already exists.\n"
-msgstr "Thiết bị %s đã có.\n"
+msgstr "Thiết bị %s đã sẵn có.\n"
 
-#: lib/setup.c:1958
+#: lib/setup.c:2084
 msgid "Incorrect volume key specified for plain device.\n"
-msgstr "Khóa dung lượng đã chỉ định không dúng cho thiết bị thường.\n"
+msgstr "Khóa vùng chứa đã chỉ định không đúng cho thiết bị thường.\n"
 
-#: lib/setup.c:1991
+#: lib/setup.c:2117
 msgid "Incorrect root hash specified for verity device.\n"
-msgstr "Mã băm gốc đã chỉ định không dúng cho thiết bị verity.\n"
+msgstr "Mã băm gốc đã chỉ định không đúng cho thiết bị chứng thực (verity).\n"
 
-#: lib/setup.c:2009
+#: lib/setup.c:2140
 msgid "Device type is not properly initialised.\n"
 msgstr "Kiểu thiết bị gần như chắc chắn là chưa được thiết lập.\n"
 
-#: lib/setup.c:2038
+#: lib/setup.c:2172
 #, c-format
 msgid "Invalid device %s.\n"
 msgstr "Thiết bị không đúng %s.\n"
 
-#: lib/setup.c:2066
+#: lib/setup.c:2194
+msgid "Function not available in FIPS mode.\n"
+msgstr "Chức năng không khả dụng trong chế độ FIPS.\n"
+
+#: lib/setup.c:2200
 msgid "Volume key buffer too small.\n"
 msgstr "Vùng đệm khoá khối tin quá nhỏ.\n"
 
-#: lib/setup.c:2074
+#: lib/setup.c:2208
 msgid "Cannot retrieve volume key for plain device.\n"
 msgstr "Không thể lấy khoá khối tin cho thiết bị bình thường.\n"
 
-#: lib/setup.c:2080
+#: lib/setup.c:2215
 #, c-format
 msgid "This operation is not supported for %s crypt device.\n"
 msgstr "Thao tác này không được hỗ trợ cho thiết bị mã hóa %s.\n"
 
-#: lib/setup.c:2275
+#: lib/setup.c:2412
 msgid "Dump operation is not supported for this device type.\n"
 msgstr "Thao tác đổ đống (dump) không được hỗ trợ cho kiểu thiết bị này.\n"
 
-#: lib/utils.c:238
+#: lib/utils.c:244
 msgid "Cannot get process priority.\n"
 msgstr "Không thể lấy mức ưu tiên của tiến trình.\n"
 
-#: lib/utils.c:241 lib/utils.c:254
-#, c-format
-msgid "setpriority %d failed: %s\n"
-msgstr "đặt quyền ưu tiên %d gặp lỗi: %s\n"
-
-#: lib/utils.c:252
+#: lib/utils.c:258
 msgid "Cannot unlock memory.\n"
 msgstr "Không thể mở khoá bộ nhớ.\n"
 
-#: lib/utils_crypt.c:225 lib/utils_crypt.c:238 lib/utils_crypt.c:385
-#: lib/utils_crypt.c:400
+#: lib/utils_crypt.c:227 lib/utils_crypt.c:240 lib/utils_crypt.c:387
+#: lib/utils_crypt.c:402
 msgid "Out of memory while reading passphrase.\n"
 msgstr "Tràn bộ nhớ trong khi đọc cụm từ mật khẩu.\n"
 
-#: lib/utils_crypt.c:230 lib/utils_crypt.c:245
+#: lib/utils_crypt.c:232 lib/utils_crypt.c:247
 msgid "Error reading passphrase from terminal.\n"
 msgstr "Gặp lỗi khi đọc cụm từ mật khẩu từ thiết bị cuối.\n"
 
-#: lib/utils_crypt.c:243
+#: lib/utils_crypt.c:245
 msgid "Verify passphrase: "
 msgstr "Thẩm tra cụm từ mật khẩu: "
 
-#: lib/utils_crypt.c:250
+#: lib/utils_crypt.c:252
 msgid "Passphrases do not match.\n"
 msgstr "Hai cụm từ mật khẩu không trùng nhau.\n"
 
-#: lib/utils_crypt.c:334
+#: lib/utils_crypt.c:336
 msgid "Cannot use offset with terminal input.\n"
 msgstr "Không thể sử dụng khoảng bù (offset) với đầu vào thiết bị cuối.\n"
 
-#: lib/utils_crypt.c:353
+#: lib/utils_crypt.c:355 lib/tcrypt/tcrypt.c:443
 msgid "Failed to open key file.\n"
 msgstr "Gặp lỗi khi mở tập tin khoá.\n"
 
-#: lib/utils_crypt.c:362
+#: lib/utils_crypt.c:364
 msgid "Failed to stat key file.\n"
 msgstr "Gặp lỗi khi lấy thông tin tập tin khoá.\n"
 
-#: lib/utils_crypt.c:370 lib/utils_crypt.c:391
+#: lib/utils_crypt.c:372 lib/utils_crypt.c:393
 msgid "Cannot seek to requested keyfile offset.\n"
 msgstr "Không thể tìm (seek) tới vị trí bù (offset) tập tin khóa đã yêu cầu.\n"
 
-#: lib/utils_crypt.c:408
+#: lib/utils_crypt.c:410
 msgid "Error reading passphrase.\n"
 msgstr "Lỗi đọc cụm từ mật khẩu.\n"
 
-#: lib/utils_crypt.c:426
+#: lib/utils_crypt.c:428
 msgid "Maximum keyfile size exceeded.\n"
 msgstr "Đã vượt quá kích thước tập tin khóa tối đa.\n"
 
-#: lib/utils_crypt.c:431
+#: lib/utils_crypt.c:433
 msgid "Cannot read requested amount of data.\n"
 msgstr "Không thể đọc đống dữ liệu đã yêu cầu.\n"
 
-#: lib/utils_fips.c:46
+#: lib/utils_fips.c:47
 msgid "FIPS checksum verification failed.\n"
 msgstr "Thẩm tra mã băm FIPS không đạt.\n"
 
-#: lib/utils_fips.c:50
+#: lib/utils_fips.c:51
 msgid "Running in FIPS mode.\n"
 msgstr "Đang chạy trong chế độ FIPS.\n"
 
-#: lib/utils_device.c:48
+#: lib/utils_device.c:52 lib/luks1/keyencryption.c:81
 #, c-format
 msgid "Device %s doesn't exist or access denied.\n"
 msgstr "Thiết bị %s không tồn tại hoặc không đủ quyền truy cập.\n"
 
-#: lib/utils_device.c:58 lib/luks1/keymanage.c:298 lib/luks1/keymanage.c:527
-#: lib/luks1/keymanage.c:567 lib/verity/verity.c:80 lib/verity/verity.c:174
-#: lib/verity/verity_hash.c:293 lib/verity/verity_hash.c:304
-#: lib/verity/verity_hash.c:324
-#, c-format
-msgid "Cannot open device %s.\n"
-msgstr "Không thể mở thiết bị %s.\n"
-
-#: lib/utils_device.c:333
+#: lib/utils_device.c:346
 msgid "Cannot use a loopback device, running as non-root user.\n"
 msgstr "Không thể sử dụng thiết-bị vòng lặp (loopback), do không chạy dưới quyền siêu người dùng.\n"
 
-#: lib/utils_device.c:336
+#: lib/utils_device.c:349
 msgid "Cannot find a free loopback device.\n"
 msgstr "Không tìm thấy thiết bị vòng ngược (loopback ) nào còn rảnh.\n"
 
-#: lib/utils_device.c:343
+#: lib/utils_device.c:356
 msgid "Attaching loopback device failed (loop device with autoclear flag is required).\n"
 msgstr "Gặp lỗi khi gắn thiết bị vòng lặp (loopback) (thiết bị lặp với cờ autoclear là bắt buộc).\n"
 
-#: lib/utils_device.c:383
+#: lib/utils_device.c:396
 #, c-format
 msgid "Cannot use device %s which is in use (already mapped or mounted).\n"
 msgstr "Không thể sử dụng thiết bị %s mà nó lại đang được sử dụng(đang được ánh xạ hoặc gắn).\n"
 
-#: lib/utils_device.c:387
+#: lib/utils_device.c:400
 #, c-format
 msgid "Cannot get info about device %s.\n"
 msgstr "Không thể lấy thông tin về thiết bị %s.\n"
 
-#: lib/utils_device.c:393
+#: lib/utils_device.c:406
 #, c-format
 msgid "Requested offset is beyond real size of device %s.\n"
 msgstr "Khoảng bù (offset) đã yêu cầu nằm ngoài kích thước thật của thiết bị %s.\n"
 
-#: lib/utils_device.c:401
+#: lib/utils_device.c:414
 #, c-format
 msgid "Device %s has zero size.\n"
 msgstr "Thiết bị %s có kích cỡ số không.\n"
 
-#: lib/utils_device.c:412 lib/luks1/keymanage.c:89
+#: lib/utils_device.c:425 lib/luks1/keymanage.c:89
 #, c-format
 msgid "Device %s is too small.\n"
 msgstr "Thiết bị %s có kích cỡ quá nhỏ.\n"
 
-#: lib/luks1/keyencryption.c:66 lib/luks1/keymanage.c:295
-#: lib/luks1/keymanage.c:564 lib/luks1/keymanage.c:981
+#: lib/luks1/keyencryption.c:30
 #, c-format
-msgid "Cannot write to device %s, permission denied.\n"
-msgstr "Không thể ghi thiết bị %s, không đủ thẩm quyền.\n"
+msgid ""
+"Failed to setup dm-crypt key mapping for device %s.\n"
+"Check that kernel supports %s cipher (check syslog for more info).\n"
+msgstr ""
+"Gặp lỗi khi cài đặt ánh xạ khoá dm-crypt cho thiết bị %s.\n"
+"Kiểm tra lại hạt nhân hỗ trợ mật mã %s (kiểu tra sổ theo dõi hệ thống để tìm thêm thông tin.)\n"
 
-#: lib/luks1/keyencryption.c:91
+#: lib/luks1/keyencryption.c:35
 msgid "Key size in XTS mode must be 256 or 512 bits.\n"
 msgstr "Kích thước khóa trong chế độ XTS phải là 256 hay 512 bit.\n"
 
-#: lib/luks1/keyencryption.c:117
-msgid "Failed to obtain device mapper directory."
-msgstr "Lỗi lấy thư mục trình ánh xạ thiết bị."
-
-#: lib/luks1/keyencryption.c:133
+#: lib/luks1/keyencryption.c:87 lib/luks1/keymanage.c:290
+#: lib/luks1/keymanage.c:559 lib/luks1/keymanage.c:971
 #, c-format
-msgid ""
-"Failed to setup dm-crypt key mapping for device %s.\n"
-"Check that kernel supports %s cipher (check syslog for more info).\n"
-"%s"
-msgstr ""
-"Lỗi thiết lập chức năng ánh xạ khoá dm-crypt cho thiết bị %s.\n"
-"Kiểm tra lại hạt nhân hỗ trợ mã hóa %s\n"
-"(xem sổ theo dõi hệ thống để tìm thêm thông tin.)\n"
-"%s"
+msgid "Cannot write to device %s, permission denied.\n"
+msgstr "Không thể ghi thiết bị %s, không đủ thẩm quyền.\n"
 
-#: lib/luks1/keyencryption.c:143
+#: lib/luks1/keyencryption.c:102
 msgid "Failed to open temporary keystore device.\n"
 msgstr "Lỗi mở thiết bị lưu trữ khoá tạm thời.\n"
 
-#: lib/luks1/keyencryption.c:150
+#: lib/luks1/keyencryption.c:109
 msgid "Failed to access temporary keystore device.\n"
 msgstr "Lỗi truy cập đến thiết bị lưu trữ khoá tạm thời.\n"
 
-#: lib/luks1/keymanage.c:161
-#, c-format
-msgid "Requested file %s already exist.\n"
-msgstr "Yêu cầu tập tin %s đã có.\n"
-
-#: lib/luks1/keymanage.c:181 lib/luks1/keymanage.c:417
-#: src/cryptsetup_reencrypt.c:1014
+#: lib/luks1/keymanage.c:175 lib/luks1/keymanage.c:412
+#: src/cryptsetup_reencrypt.c:978
 #, c-format
 msgid "Device %s is not a valid LUKS device.\n"
 msgstr "Thiết bị %s không phải là một thiết bị kiểu LUKS đúng.\n"
 
-#: lib/luks1/keymanage.c:202
+#: lib/luks1/keymanage.c:193
 #, c-format
-msgid "Cannot write header backup file %s.\n"
-msgstr "Không thể ghi nhớ tập tin sao lưu phần đầu %s.\n"
+msgid "Requested header backup file %s already exists.\n"
+msgstr "Phần đầu tập tin sao lưu dự phòng đã yêu cầu %s đã sẵn có.\n"
+
+#: lib/luks1/keymanage.c:195
+#, c-format
+msgid "Cannot create header backup file %s.\n"
+msgstr "Không thể tạo phần đầu của tập tin sao lưu dự phòng %s.\n"
 
-#: lib/luks1/keymanage.c:229
+#: lib/luks1/keymanage.c:200
 #, c-format
-msgid "Backup file %s doesn't exist.\n"
-msgstr "Tập tin sao lưu %s không tồn tại.\n"
+msgid "Cannot write header backup file %s.\n"
+msgstr "Không thể ghi nhớ tập tin sao lưu phần đầu %s.\n"
 
-#: lib/luks1/keymanage.c:238
+#: lib/luks1/keymanage.c:233
 msgid "Backup file doesn't contain valid LUKS header.\n"
 msgstr "Tập tin sao lưu không chứa phần đầu LUKS hợp lệ.\n"
 
-#: lib/luks1/keymanage.c:251
+#: lib/luks1/keymanage.c:246 lib/luks1/keymanage.c:483
 #, c-format
 msgid "Cannot open header backup file %s.\n"
 msgstr "Không mở được tập tin sao lưu phần đầu %s.\n"
 
-#: lib/luks1/keymanage.c:257
+#: lib/luks1/keymanage.c:252
 #, c-format
 msgid "Cannot read header backup file %s.\n"
 msgstr "Không đọc được tập tin sao lưu phần đầu %s.\n"
 
-#: lib/luks1/keymanage.c:268
+#: lib/luks1/keymanage.c:263
 msgid "Data offset or key size differs on device and backup, restore failed.\n"
 msgstr "Khoảng bù dữ liệu hoặc kích cỡ khoá vẫn khác nhau trên thiết bị và bản sao lưu thì chức năng phục hồi bị lỗi.\n"
 
-#: lib/luks1/keymanage.c:276
+#: lib/luks1/keymanage.c:271
 #, c-format
 msgid "Device %s %s%s"
 msgstr "Thiết bị %s %s%s"
 
-#: lib/luks1/keymanage.c:277
+#: lib/luks1/keymanage.c:272
 msgid "does not contain LUKS header. Replacing header can destroy data on that device."
 msgstr "không chứa phần đầu LUKS. Thay thế phần đầu thì cũng có thể hủy dữ liệu trên thiết bị đó."
 
-#: lib/luks1/keymanage.c:278
+#: lib/luks1/keymanage.c:273
 msgid "already contains LUKS header. Replacing header will destroy existing keyslots."
 msgstr "đã chứa phần đầu LUKS. Thay thế phần đầu thì cũng hủy các khe khoá đã có."
 
-#: lib/luks1/keymanage.c:279
+#: lib/luks1/keymanage.c:274
 msgid ""
 "\n"
 "WARNING: real device header has different UUID than backup!"
@@ -472,445 +493,512 @@ msgstr ""
 "\n"
 "CẢNH BÁO: phần đầu thiết bị thật có mã số UUID khác với bản sao lưu!"
 
-#: lib/luks1/keymanage.c:328
+#: lib/luks1/keymanage.c:293 lib/luks1/keymanage.c:522
+#: lib/luks1/keymanage.c:562 lib/tcrypt/tcrypt.c:575 lib/verity/verity.c:82
+#: lib/verity/verity.c:179 lib/verity/verity_hash.c:294
+#: lib/verity/verity_hash.c:305 lib/verity/verity_hash.c:325
+#, c-format
+msgid "Cannot open device %s.\n"
+msgstr "Không thể mở thiết bị %s.\n"
+
+#: lib/luks1/keymanage.c:323
 msgid "Non standard key size, manual repair required.\n"
 msgstr "Kích thước khóa không tiêu chuẩn, yêu cầu sửa chữa bằng tay.\n"
 
-#: lib/luks1/keymanage.c:333
+#: lib/luks1/keymanage.c:328
 msgid "Non standard keyslots alignment, manual repair required.\n"
 msgstr "Không thể đồng chỉnh các khe khóa (keyslot) tiêu chuẩn, yêu cầu sửa chữa bằng tay.\n"
 
-#: lib/luks1/keymanage.c:339
+#: lib/luks1/keymanage.c:334
 msgid "Repairing keyslots.\n"
 msgstr "Đang chuẩn bị keyslots.\n"
 
-#: lib/luks1/keymanage.c:350
+#: lib/luks1/keymanage.c:345
 msgid "Repair failed."
 msgstr "Sửa chữa gặp lỗi."
 
-#: lib/luks1/keymanage.c:362
+#: lib/luks1/keymanage.c:357
 #, c-format
 msgid "Keyslot %i: offset repaired (%u -> %u).\n"
 msgstr "Khe-khoá (keyslot) %i: khoảng bù (offset) được sửa chữa (%u -> %u).\n"
 
-#: lib/luks1/keymanage.c:370
+#: lib/luks1/keymanage.c:365
 #, c-format
 msgid "Keyslot %i: stripes repaired (%u -> %u).\n"
 msgstr "Khe-khoá (keyslot) %i: stripes được sửa chữa (%u -> %u).\n"
 
-#: lib/luks1/keymanage.c:379
+#: lib/luks1/keymanage.c:374
 #, c-format
 msgid "Keyslot %i: bogus partition signature.\n"
 msgstr "Khe-khoá (keyslot) %i: chữ ký phân vùng không có thật.\n"
 
-#: lib/luks1/keymanage.c:384
+#: lib/luks1/keymanage.c:379
 #, c-format
 msgid "Keyslot %i: salt wiped.\n"
 msgstr "Khe-khoá (keyslot) %i: salt bị tẩy xóa.\n"
 
-#: lib/luks1/keymanage.c:395
+#: lib/luks1/keymanage.c:390
 msgid "Writing LUKS header to disk.\n"
 msgstr "Đang ghi phần đầu của LUKS lên đĩa.\n"
 
-#: lib/luks1/keymanage.c:420
+#: lib/luks1/keymanage.c:415
 #, c-format
 msgid "Unsupported LUKS version %d.\n"
 msgstr "Phiên bản LUKS không được hỗ trợ %d.\n"
 
-#: lib/luks1/keymanage.c:426 lib/luks1/keymanage.c:639
+#: lib/luks1/keymanage.c:421 lib/luks1/keymanage.c:619
 #, c-format
 msgid "Requested LUKS hash %s is not supported.\n"
 msgstr "Không hỗ trợ chuỗi duy nhất LUKS %s được yêu cầu.\n"
 
-#: lib/luks1/keymanage.c:441
+#: lib/luks1/keymanage.c:436
 #, c-format
 msgid "LUKS keyslot %u is invalid.\n"
 msgstr "khe-khoá LUKS %u là không hợp lệ.\n"
 
-#: lib/luks1/keymanage.c:455 src/cryptsetup.c:388
+#: lib/luks1/keymanage.c:450 src/cryptsetup.c:596
 msgid "No known problems detected for LUKS header.\n"
 msgstr "Không phát hiện thấy vấn đề với phần đầu LUKS.\n"
 
-#: lib/luks1/keymanage.c:488
-#, c-format
-msgid "Cannot open file %s.\n"
-msgstr "Không thể mở tập tin %s.\n"
-
-#: lib/luks1/keymanage.c:588
+#: lib/luks1/keymanage.c:583
 #, c-format
 msgid "Error during update of LUKS header on device %s.\n"
 msgstr "Gặp lỗi trong khi cập nhật phần đầu LUKS trên thiết bị %s.\n"
 
-#: lib/luks1/keymanage.c:595
+#: lib/luks1/keymanage.c:590
 #, c-format
 msgid "Error re-reading LUKS header after update on device %s.\n"
 msgstr "Gặp lỗi trong khi đọc lại phần đầu LUKS sau khi cập nhật trên thiết bị %s.\n"
 
-#: lib/luks1/keymanage.c:608
-#, c-format
-msgid "Not compatible PBKDF2 options (using hash algorithm %s).\n"
-msgstr "Gặp các tùy chọn PBKDF2 không tương thích (dùng thuật toán chuỗi duy nhất %s).\n"
-
-#: lib/luks1/keymanage.c:644 lib/luks1/keymanage.c:726
+#: lib/luks1/keymanage.c:624 lib/luks1/keymanage.c:711
 msgid "Wrong LUKS UUID format provided.\n"
 msgstr "Đưa ra định dạng mã số UUID LUKS không đúng.\n"
 
-#: lib/luks1/keymanage.c:669
+#: lib/luks1/keymanage.c:649
 msgid "Cannot create LUKS header: reading random salt failed.\n"
 msgstr "Không thể tạo phần đầu LUKS: lỗi đọc salt ngẫu nhiên.\n"
 
-#: lib/luks1/keymanage.c:686
+#: lib/luks1/keymanage.c:656 lib/luks1/keymanage.c:752
+#, c-format
+msgid "Not compatible PBKDF2 options (using hash algorithm %s).\n"
+msgstr "Gặp các tùy chọn PBKDF2 không tương thích (dùng thuật toán chuỗi duy nhất %s).\n"
+
+#: lib/luks1/keymanage.c:671
 #, c-format
 msgid "Cannot create LUKS header: header digest failed (using hash %s).\n"
 msgstr "Không thể tạo phần đầu LUKS: lỗi tạo bản tóm tắt (dùng chuỗi duy nhất %s).\n"
 
-#: lib/luks1/keymanage.c:751
+#: lib/luks1/keymanage.c:736
 #, c-format
 msgid "Key slot %d active, purge first.\n"
 msgstr "Khe khoá %d vẫn hoạt động: cần tẩy trước.\n"
 
-#: lib/luks1/keymanage.c:757
+#: lib/luks1/keymanage.c:742
 #, c-format
 msgid "Key slot %d material includes too few stripes. Header manipulation?\n"
 msgstr "Nguyên liệu khe khoá %d gồm có quá ít sọc. Có nên thao tác phần đầu không?\n"
 
-#: lib/luks1/keymanage.c:914
+#: lib/luks1/keymanage.c:904
 #, c-format
 msgid "Key slot %d unlocked.\n"
 msgstr "Khe khoá %d được mở khoá.\n"
 
-#: lib/luks1/keymanage.c:949 src/cryptsetup.c:587 src/cryptsetup.c:771
-#: src/cryptsetup_reencrypt.c:918 src/cryptsetup_reencrypt.c:952
+#: lib/luks1/keymanage.c:939 src/cryptsetup.c:796
+#: src/cryptsetup_reencrypt.c:882 src/cryptsetup_reencrypt.c:916
 msgid "No key available with this passphrase.\n"
 msgstr "Không có khoá sẵn sàng dùng với cụm từ mật khẩu này.\n"
 
-#: lib/luks1/keymanage.c:967
+#: lib/luks1/keymanage.c:957
 #, c-format
 msgid "Key slot %d is invalid, please select keyslot between 0 and %d.\n"
 msgstr "Khe khoá %d không đúng: hãy chọn khe khoá trong phạm vi 0 đến %d.\n"
 
-#: lib/luks1/keymanage.c:985
+#: lib/luks1/keymanage.c:975
 #, c-format
 msgid "Cannot wipe device %s.\n"
 msgstr "Không thể xoá thiết bị %s.\n"
 
-#: lib/loopaes/loopaes.c:143
+#: lib/loopaes/loopaes.c:145
 msgid "Detected not yet supported GPG encrypted keyfile.\n"
 msgstr "Tìm thấy tập tin khóa mã hóa GPG vẫn chưa được hỗ trợ.\n"
 
-#: lib/loopaes/loopaes.c:144
+#: lib/loopaes/loopaes.c:146
 msgid "Please use gpg --decrypt <KEYFILE> | cryptsetup --keyfile=- ...\n"
 msgstr "Hãy sử dụng gpg --decrypt <KEYFILE> | cryptsetup --keyfile=- ...\n"
 
-#: lib/loopaes/loopaes.c:176
+#: lib/loopaes/loopaes.c:178
 msgid "Incompatible loop-AES keyfile detected.\n"
 msgstr "Tập tin khoá (keyfile) loop-AES không tương thích được tìm thấy.\n"
 
-#: lib/loopaes/loopaes.c:230
+#: lib/loopaes/loopaes.c:232
 msgid "Kernel doesn't support loop-AES compatible mapping.\n"
 msgstr "Nhân không hỗ trợ ánh xạ tương thích loop-AES.\n"
 
-#: lib/verity/verity.c:69 lib/verity/verity.c:168
+#: lib/tcrypt/tcrypt.c:451
+#, c-format
+msgid "Error reading keyfile %s.\n"
+msgstr "Gặp lỗi khi đọc tập-tin khóa %s.\n"
+
+#: lib/tcrypt/tcrypt.c:512
+#, c-format
+msgid "PBKDF2 hash algorithm %s not available, skipping.\n"
+msgstr "Thuật toán băm PBKDF2 không khả dụng %s, bỏ qua.\n"
+
+#: lib/tcrypt/tcrypt.c:530 src/cryptsetup.c:549
+msgid "Required kernel crypto interface not available.\n"
+msgstr "Giao diện mã hóa từ nhân đã yêu cầu không khả dụng.\n"
+
+#: lib/tcrypt/tcrypt.c:532 src/cryptsetup.c:551
+msgid "Ensure you have algif_skcipher kernel module loaded.\n"
+msgstr "Bạn cần chắc chắn là mô-đun nhân algif_skcipher đã được tải.\n"
+
+#: lib/tcrypt/tcrypt.c:654
+#, c-format
+msgid "Activation is not supported for %d sector size.\n"
+msgstr "Hoạt hóa không được hỗ trợ cho kích thước cung %d.\n"
+
+#: lib/tcrypt/tcrypt.c:660
+msgid "Kernel doesn't support activation for this TCRYPT legacy mode.\n"
+msgstr "Nhân không hỗ trợ hoạt hóa cho chế độ cũ của TCRYPT.\n"
+
+#: lib/tcrypt/tcrypt.c:720
+msgid "Kernel doesn't support plain64 IV.\n"
+msgstr "Nhân không hỗ trợ plain64 IV.\n"
+
+#: lib/tcrypt/tcrypt.c:924
+msgid "This function is not supported without TCRYPT header load."
+msgstr "Chức năng này không được hỗ trợ mà không có phần tải đầu TCRYPT."
+
+#: lib/verity/verity.c:70 lib/verity/verity.c:172
 msgid "Verity device doesn't use on-disk header.\n"
 msgstr "Thiết bị verity không sử dụng phần đầu on-disk.\n"
 
-#: lib/verity/verity.c:92
+#: lib/verity/verity.c:94
 #, c-format
 msgid "Device %s is not a valid VERITY device.\n"
 msgstr "Thiết bị %s không phải là thiết bị VERITY thích hợp.\n"
 
-#: lib/verity/verity.c:98
+#: lib/verity/verity.c:101
 #, c-format
 msgid "Unsupported VERITY version %d.\n"
 msgstr "Không hỗ trợ phiên bản VERITY %d.\n"
 
-#: lib/verity/verity.c:128
+#: lib/verity/verity.c:131
 msgid "VERITY header corrupted.\n"
 msgstr "phần đầu VERITY sai hỏng.\n"
 
-#: lib/verity/verity.c:163
+#: lib/verity/verity.c:166
 msgid "Wrong VERITY UUID format provided.\n"
 msgstr "Đưa ra định dạng mã số UUID VERITY không đúng.\n"
 
-#: lib/verity/verity.c:191
+#: lib/verity/verity.c:196
 #, c-format
 msgid "Error during update of verity header on device %s.\n"
 msgstr "Gặp lỗi trong khi cập nhật phần đầu verity trên thiết bị %s.\n"
 
-#: lib/verity/verity.c:270
+#: lib/verity/verity.c:276
 msgid "Kernel doesn't support dm-verity mapping.\n"
 msgstr "Nhân không hỗ trợ ánh xạ dm-verity.\n"
 
-#: lib/verity/verity.c:281
+#: lib/verity/verity.c:287
 msgid "Verity device detected corruption after activation.\n"
 msgstr "Thiết bị verity đã được phát hiện sai hỏng sau khi hoạt hóa.\n"
 
-#: lib/verity/verity_hash.c:58
+#: lib/verity/verity_hash.c:59
 #, c-format
 msgid "Spare area is not zeroed at position %<PRIu64>.\n"
 msgstr "Vùng để dành không được điền đầy bằng số không tại vị trí %<PRIu64>.\n"
 
-#: lib/verity/verity_hash.c:120 lib/verity/verity_hash.c:248
-#: lib/verity/verity_hash.c:278 lib/verity/verity_hash.c:285
+#: lib/verity/verity_hash.c:121 lib/verity/verity_hash.c:249
+#: lib/verity/verity_hash.c:279 lib/verity/verity_hash.c:286
 msgid "Device offset overflow.\n"
 msgstr "Khoảng bù (offset) thiết bị bị tràn.\n"
 
-#: lib/verity/verity_hash.c:160
+#: lib/verity/verity_hash.c:161
 #, c-format
 msgid "Verification failed at position %<PRIu64>.\n"
 msgstr "Thẩm tra gặp lỗi tại vị trí %<PRIu64>.\n"
 
-#: lib/verity/verity_hash.c:234
+#: lib/verity/verity_hash.c:235
 msgid "Invalid size parameters for verity device.\n"
 msgstr "Các tham số kích thước cho thiết bị verity không hợp lệ.\n"
 
-#: lib/verity/verity_hash.c:266
+#: lib/verity/verity_hash.c:267
 msgid "Too many tree levels for verity volume.\n"
 msgstr "Có quá nhiều mức cây cho mỗi vùng verity.\n"
 
-#: lib/verity/verity_hash.c:355
+#: lib/verity/verity_hash.c:356
 msgid "Verification of data area failed.\n"
 msgstr "Việc thẩm tra vùng dữ liệu gặp lỗi.\n"
 
-#: lib/verity/verity_hash.c:360
+#: lib/verity/verity_hash.c:361
 msgid "Verification of root hash failed.\n"
 msgstr "Việc thẩm tra mã băm gốc gặp lỗi.\n"
 
-#: lib/verity/verity_hash.c:366
+#: lib/verity/verity_hash.c:367
 msgid "Input/output error while creating hash area.\n"
 msgstr "Lỗi Vào/Ra trong khi đang tạo vùng băm.\n"
 
-#: lib/verity/verity_hash.c:368
+#: lib/verity/verity_hash.c:369
 msgid "Creation of hash area failed.\n"
 msgstr "Việc tạo vùng dữ liệu băm gặp lỗi.\n"
 
-#: lib/verity/verity_hash.c:415
+#: lib/verity/verity_hash.c:416
 #, c-format
 msgid "WARNING: Kernel cannot activate device if data block size exceeds page size (%u).\n"
 msgstr "CẢNH BÁO: Nhân (kernel) không thể kích hoạt thiết bị nếu kích thước khối dữ liệu vượt quá kích cỡ trang (%u).\n"
 
-#: src/cryptsetup.c:88
-msgid "<name> <device>"
-msgstr "<tên> <thiết_bị>"
+#: src/cryptsetup.c:79
+msgid "Can't do passphrase verification on non-tty inputs.\n"
+msgstr "Không thể thẩm tra cụm từ mật khẩu trên đầu vào khác TTY.\n"
+
+#: src/cryptsetup.c:110
+msgid "Ignoring keyfile offset and size options, keyfile read size is always the same as encryption key size.\n"
+msgstr "Đang bỏ qua các tùy-chọn khảng bù và kích thước tập-tin-khóa, kích thước đọc tập-tin-khóa thì luôn giống với kích thước khóa mã hóa.\n"
 
-#: src/cryptsetup.c:88
-msgid "create device"
-msgstr "tạo thiết bị"
+#: src/cryptsetup.c:116 src/cryptsetup.c:495 src/cryptsetup.c:639
+#: src/cryptsetup_reencrypt.c:485 src/cryptsetup_reencrypt.c:520
+msgid "No known cipher specification pattern detected.\n"
+msgstr "Không phát hiện mẫu đặc tả mã hóa đã biết.\n"
 
-#: src/cryptsetup.c:89 src/cryptsetup.c:90 src/cryptsetup.c:91
-#: src/cryptsetup.c:101 src/cryptsetup.c:108 src/veritysetup.c:311
-#: src/veritysetup.c:312
+#: src/cryptsetup.c:183
+msgid "Option --key-file is required.\n"
+msgstr "Cần tùy chọn “--key-file”.\n"
+
+#: src/cryptsetup.c:254 src/cryptsetup.c:340
+msgid "No device header detected with this passphrase.\n"
+msgstr "Không có phần đầu thiết bị cho cụm từ mật khẩu này.\n"
+
+#: src/cryptsetup.c:269 src/cryptsetup.c:1059
+msgid ""
+"Header dump with volume key is sensitive information\n"
+"which allows access to encrypted partition without passphrase.\n"
+"This dump should be always stored encrypted on safe place."
+msgstr ""
+"Đổ đống phần đầu với khóa vùng chứa là thông tin phân biệt hoa thường\n"
+"cái mà cho phép truy cập phân vùng được mã hóa mà không cần mật khẩu.\n"
+"Việc đổ đống này nên luôn được lưu trữ mã hóa tại một nơi an toàn."
+
+#: src/cryptsetup.c:489
+msgid "# Tests are approximate using memory only (no storage IO).\n"
+msgstr "# Các kiểm tra là chỉ ước lượng việc sử dụng bộ nhớ (không tính IO ổ đĩa).\n"
+
+#: src/cryptsetup.c:511 src/cryptsetup.c:533
+msgid "#  Algorithm | Key |  Encryption |  Decryption\n"
+msgstr "#  Thuật toán| Khóa| Mã hóa      | Giải mã\n"
+
+#: src/cryptsetup.c:515
+#, c-format
+msgid "Cipher %s is not available.\n"
+msgstr "Mã hóa kiểu %s không sẵn có.\n"
+
+#: src/cryptsetup.c:542
+msgid "N/A"
+msgstr "N/A"
+
+#: src/cryptsetup.c:567
+#, c-format
+msgid "Cannot read keyfile %s.\n"
+msgstr "Không thể đọc tập-tin khóa %s.\n"
+
+#: src/cryptsetup.c:571
+#, c-format
+msgid "Cannot read %d bytes from keyfile %s.\n"
+msgstr "Không thể đọc %d byte từ tập tin khóa %s.\n"
+
+#: src/cryptsetup.c:600
+msgid "Really try to repair LUKS device header?"
+msgstr "Bạn có thực sự muốn thử sửa chữa phần đầu thiết bị LUKS không?"
+
+#: src/cryptsetup.c:625
+#, c-format
+msgid "This will overwrite data on %s irrevocably."
+msgstr "Hành động này sẽ ghi đè lên dữ liệu trên thiết bị %s một cách không phục hồi được."
+
+#: src/cryptsetup.c:627
+msgid "memory allocation error in action_luksFormat"
+msgstr "gặp lỗi phân cấp vùng nhớ trong“action_luksFormat”"
+
+#: src/cryptsetup.c:645
+#, c-format
+msgid "Cannot use %s as on-disk header.\n"
+msgstr "Không thể sử dụng %s như là phần đầu on-disk.\n"
+
+#: src/cryptsetup.c:660 src/cryptsetup.c:1070
+msgid "Enter LUKS passphrase: "
+msgstr "Gõ cụm từ mật khẩu LUKS: "
+
+#: src/cryptsetup.c:718
+msgid "Reduced data offset is allowed only for detached LUKS header.\n"
+msgstr "Giảm khoảng bù (offset) dữ liệu chỉ cho phép khi phần đầu LUKS được tách rời.\n"
+
+#: src/cryptsetup.c:819 src/cryptsetup.c:875
+#, c-format
+msgid "Key slot %d selected for deletion.\n"
+msgstr "Khe khoá %d đã được chọn để xoá.\n"
+
+#: src/cryptsetup.c:822
+#, c-format
+msgid "Key %d not active. Can't wipe.\n"
+msgstr "Khoá %d không hoạt động thì không xoá được.\n"
+
+#: src/cryptsetup.c:830 src/cryptsetup.c:878
+msgid "This is the last keyslot. Device will become unusable after purging this key."
+msgstr "Đây là khe khoá cuối cùng. Sau khi tẩy khoá này thì thiết bị không dùng được."
+
+#: src/cryptsetup.c:831
+msgid "Enter any remaining LUKS passphrase: "
+msgstr "Gõ cụm từ mật khẩu LUKS nào còn lại: "
+
+#: src/cryptsetup.c:859
+msgid "Enter LUKS passphrase to be deleted: "
+msgstr "Gõ cụm từ mật khẩu LUKS cần xoá: "
+
+#: src/cryptsetup.c:977
+msgid "Enter LUKS passphrase to be changed: "
+msgstr "Gõ cụm từ mật khẩu LUKS được thay đổi: "
+
+#: src/cryptsetup.c:991 src/cryptsetup_reencrypt.c:934
+msgid "Enter new LUKS passphrase: "
+msgstr "Gõ cụm từ mật khẩu LUKS:"
+
+#: src/cryptsetup.c:1165 src/cryptsetup.c:1186
+msgid "Option --header-backup-file is required.\n"
+msgstr "Cần tùy chọn“--header-backup-file”.\n"
+
+#: src/cryptsetup.c:1223
+#, c-format
+msgid "Unrecognized metadata device type %s.\n"
+msgstr "Không nhận ra siêu dữ liệu của kiểu thiết bị %s.\n"
+
+#: src/cryptsetup.c:1226
+msgid "Command requires device and mapped name as arguments.\n"
+msgstr "Lệnh cần thiết bị và tên ánh xạ như là các tham số.\n"
+
+#: src/cryptsetup.c:1238
+msgid "<device> [--type <type>] [<name>]"
+msgstr "<thiết-bị> [--type <kiểu>] [<tên>]"
+
+#: src/cryptsetup.c:1238
+msgid "open device as mapping <name>"
+msgstr "mở thiết bị như là ánh xạ <tên>"
+
+#: src/cryptsetup.c:1239 src/cryptsetup.c:1240 src/cryptsetup.c:1241
+#: src/cryptsetup.c:1242 src/veritysetup.c:310 src/veritysetup.c:311
 msgid "<name>"
 msgstr "<tên>"
 
-#: src/cryptsetup.c:89
-msgid "remove device"
-msgstr "gỡ bỏ thiết bị"
+#: src/cryptsetup.c:1239
+msgid "close device (remove mapping)"
+msgstr "đóng thiết bị (gỡ bỏ ánh xạ)"
 
-#: src/cryptsetup.c:90
+#: src/cryptsetup.c:1240
 msgid "resize active device"
 msgstr "thay đổi kích cỡ của thiết bị hoạt động"
 
-#: src/cryptsetup.c:91
+#: src/cryptsetup.c:1241
 msgid "show device status"
 msgstr "hiển thị trạng thái về thiết bị"
 
-#: src/cryptsetup.c:92 src/cryptsetup.c:99 src/cryptsetup.c:100
-#: src/cryptsetup.c:102 src/cryptsetup.c:103 src/cryptsetup.c:104
-#: src/cryptsetup.c:105 src/cryptsetup.c:106
+#: src/cryptsetup.c:1242
+msgid "benchmark cipher"
+msgstr "đo kiểm mật mã"
+
+#: src/cryptsetup.c:1243 src/cryptsetup.c:1249 src/cryptsetup.c:1250
+#: src/cryptsetup.c:1251 src/cryptsetup.c:1252 src/cryptsetup.c:1253
+#: src/cryptsetup.c:1254 src/cryptsetup.c:1255 src/cryptsetup.c:1256
 msgid "<device>"
 msgstr "<thiết_bị>"
 
-#: src/cryptsetup.c:92
+#: src/cryptsetup.c:1243
 msgid "try to repair on-disk metadata"
 msgstr "thử sửa chữa siêu dữ liệu (metadata) on-disk"
 
-#: src/cryptsetup.c:93 src/cryptsetup.c:95
+#: src/cryptsetup.c:1244 src/cryptsetup.c:1245
 msgid "<device> [<new key file>]"
 msgstr "<thiết_bị> [<tập_tin_khoá_mới>]"
 
-#: src/cryptsetup.c:93
+#: src/cryptsetup.c:1244
 msgid "formats a LUKS device"
 msgstr "định dạng một thiết bị kiểu LUKS"
 
-#: src/cryptsetup.c:94 src/cryptsetup.c:107
-msgid "<device> <name> "
-msgstr "<thiết_bị> <tên> "
-
-#: src/cryptsetup.c:94
-msgid "open LUKS device as mapping <name>"
-msgstr "mở thiết bị LUKS như là bản ánh xạ <tên>"
-
-#: src/cryptsetup.c:95
+#: src/cryptsetup.c:1245
 msgid "add key to LUKS device"
 msgstr "thêm khoá vào thiết bị LUKS"
 
-#: src/cryptsetup.c:96 src/cryptsetup.c:97
+#: src/cryptsetup.c:1246 src/cryptsetup.c:1247
 msgid "<device> [<key file>]"
 msgstr "<thiết_bị> [<tập_tin_khoá>]"
 
-#: src/cryptsetup.c:96
+#: src/cryptsetup.c:1246
 msgid "removes supplied key or key file from LUKS device"
 msgstr "gỡ bỏ khỏi thiết bị LUKS khoá hoặc tập tin khoá đưa ra"
 
-#: src/cryptsetup.c:97
+#: src/cryptsetup.c:1247
 msgid "changes supplied key or key file of LUKS device"
 msgstr "thay đổi khóa hay tập tin khóa đã áp dụng của thiết bị LUKS"
 
-#: src/cryptsetup.c:98
+#: src/cryptsetup.c:1248
 msgid "<device> <key slot>"
 msgstr "<thiết_bị> <khe_khoá>"
 
-#: src/cryptsetup.c:98
+#: src/cryptsetup.c:1248
 msgid "wipes key with number <key slot> from LUKS device"
 msgstr "xoá khỏi thiết bị LUKS khoá có số <khe_khoá>"
 
-#: src/cryptsetup.c:99
+#: src/cryptsetup.c:1249
 msgid "print UUID of LUKS device"
 msgstr "in ra mã số UUID của thiết bị LUKS"
 
-#: src/cryptsetup.c:100
+#: src/cryptsetup.c:1250
 msgid "tests <device> for LUKS partition header"
 msgstr "thử <thiết_bị> có phần đầu phân vùng LUKS không"
 
-#: src/cryptsetup.c:101
-msgid "remove LUKS mapping"
-msgstr "gỡ bỏ sự ánh xạ LUKS"
-
-#: src/cryptsetup.c:102
+#: src/cryptsetup.c:1251
 msgid "dump LUKS partition information"
 msgstr "đổ thông tin về phân vùng LUKS"
 
-#: src/cryptsetup.c:103
+#: src/cryptsetup.c:1252
+msgid "dump TCRYPT device information"
+msgstr "dump thông tin thiết bị TCRYPT"
+
+#: src/cryptsetup.c:1253
 msgid "Suspend LUKS device and wipe key (all IOs are frozen)."
 msgstr "Ngưng thiết bị LUKS và xoá khoá (thì mọi việc V/R đều đông cứng)."
 
-#: src/cryptsetup.c:104
+#: src/cryptsetup.c:1254
 msgid "Resume suspended LUKS device."
 msgstr "Tiếp tục lại sử dụng thiết bị LUKS bị ngưng."
 
-#: src/cryptsetup.c:105
+#: src/cryptsetup.c:1255
 msgid "Backup LUKS device header and keyslots"
 msgstr "Sao lưu phần đầu và các khe khoá của thiết bị LUKS"
 
-#: src/cryptsetup.c:106
+#: src/cryptsetup.c:1256
 msgid "Restore LUKS device header and keyslots"
 msgstr "Phục hồi phần đầu và các khe khoá của thiết bị LUKS"
 
-#: src/cryptsetup.c:107
-msgid "open loop-AES device as mapping <name>"
-msgstr "mở thiết bị loop-AES như là ánh xạ <tên>"
-
-#: src/cryptsetup.c:108
-msgid "remove loop-AES mapping"
-msgstr "gỡ bỏ ánh xạ loop-AES"
-
-#: src/cryptsetup.c:123
-msgid "Can't do passphrase verification on non-tty inputs.\n"
-msgstr "Không thể thẩm tra cụm từ mật khẩu trên đầu vào khác TTY.\n"
-
-#: src/cryptsetup.c:226
-msgid "Option --key-file is required.\n"
-msgstr "Cần tùy chọn `--key-file'.\n"
-
-#: src/cryptsetup.c:392
-msgid "Really try to repair LUKS device header?"
-msgstr "Bạn có thực sự muốn thử sửa chữa phần đầu thiết bị LUKS không?"
-
-#: src/cryptsetup.c:417
-#, c-format
-msgid "This will overwrite data on %s irrevocably."
-msgstr "Hành động này sẽ ghi đè lên dữ liệu trên thiết bị %s một cách không phục hồi được."
-
-#: src/cryptsetup.c:419
-msgid "memory allocation error in action_luksFormat"
-msgstr "gặp lỗi phân cấp vùng nhớ trong`action_luksFormat'"
-
-#: src/cryptsetup.c:431 src/cryptsetup_reencrypt.c:522
-#: src/cryptsetup_reencrypt.c:557
-msgid "No known cipher specification pattern detected.\n"
-msgstr "Không phát hiện mẫu đặc tả mã hóa đã biết.\n"
-
-#: src/cryptsetup.c:437
-#, c-format
-msgid "Cannot use %s as on-disk header.\n"
-msgstr "Không thể sử dụng %s như là phần đầu on-disk.\n"
-
-#: src/cryptsetup.c:452 src/cryptsetup.c:885
-msgid "Enter LUKS passphrase: "
-msgstr "Gõ cụm từ mật khẩu LUKS: "
-
-#: src/cryptsetup.c:509
-msgid "Reduced data offset is allowed only for detached LUKS header.\n"
-msgstr "Giảm khoảng bù (offset) dữ liệu chỉ cho phép khi phần đầu LUKS được tách rời.\n"
-
-#: src/cryptsetup.c:610 src/cryptsetup.c:665
-#, c-format
-msgid "Key slot %d selected for deletion.\n"
-msgstr "Khe khoá %d đã được chọn để xoá.\n"
-
-#: src/cryptsetup.c:613
-#, c-format
-msgid "Key %d not active. Can't wipe.\n"
-msgstr "Khoá %d không hoạt động thì không xoá được.\n"
-
-#: src/cryptsetup.c:621 src/cryptsetup.c:668
-msgid "This is the last keyslot. Device will become unusable after purging this key."
-msgstr "Đây là khe khoá cuối cùng. Sau khi tẩy khoá này thì thiết bị không dùng được."
-
-#: src/cryptsetup.c:622
-msgid "Enter any remaining LUKS passphrase: "
-msgstr "Gõ cụm từ mật khẩu LUKS nào còn lại: "
-
-#: src/cryptsetup.c:650
-msgid "Enter LUKS passphrase to be deleted: "
-msgstr "Gõ cụm từ mật khẩu LUKS cần xoá: "
-
-#: src/cryptsetup.c:753
-msgid "Enter LUKS passphrase to be changed: "
-msgstr "Gõ cụm từ mật khẩu LUKS được thay đổi: "
-
-#: src/cryptsetup.c:790 src/cryptsetup_reencrypt.c:970
-msgid "Enter new LUKS passphrase: "
-msgstr "Gõ cụm từ mật khẩu LUKS:"
-
-#: src/cryptsetup.c:804
-#, c-format
-msgid "Key slot %d changed.\n"
-msgstr "Khe khoá %d đã thay đổi.\n"
-
-#: src/cryptsetup.c:810
-#, c-format
-msgid "Replaced with key slot %d.\n"
-msgstr "Đã thay thế với khe khoá %d.\n"
-
-#: src/cryptsetup.c:815
-msgid "Failed to swap new key slot.\n"
-msgstr "Gặp lỗi khi hoán đổi khe khoá mới.\n"
-
-#: src/cryptsetup.c:874
+#: src/cryptsetup.c:1273 src/veritysetup.c:327
 msgid ""
-"LUKS header dump with volume key is sensitive information\n"
-"which allows access to encrypted partition without passphrase.\n"
-"This dump should be always stored encrypted on safe place."
+"\n"
+"<action> is one of:\n"
 msgstr ""
-"Đổ đống đầu LUKS với khóa dung lượng là thông tin phân biệt hoa thường\n"
-"cái mà cho phép truy cập phân vùng được mã hóa mà không cần mật khẩu.\n"
-"Việc đổ đống này nên luôn được lưu trữ mã hóa tại một nơi an toàn."
-
-#: src/cryptsetup.c:979 src/cryptsetup.c:1000
-msgid "Option --header-backup-file is required.\n"
-msgstr "Cần tùy chọn`--header-backup-file'.\n"
+"\n"
+"<hành_động> là một trong:\n"
 
-#: src/cryptsetup.c:1027 src/veritysetup.c:328
+#: src/cryptsetup.c:1279
 msgid ""
 "\n"
-"<action> is one of:\n"
+"You can also use old <action> syntax aliases:\n"
+"\topen: create (plainOpen), luksOpen, loopaesOpen, tcryptOpen\n"
+"\tclose: remove (plainClose), luksClose, loopaesClose, tcryptClose\n"
 msgstr ""
 "\n"
-"<hành_động> là một trong:\n"
+"Bạn còn có thể sử dụng cú pháp bí danh <action> kiểu cũ:\n"
+"\topen: create (plainOpen), luksOpen, loopaesOpen, tcryptOpen\n"
+"\tclose: remove (plainClose), luksClose, loopaesClose, tcryptClose\n"
 
-#: src/cryptsetup.c:1033
+#: src/cryptsetup.c:1283
 #, c-format
 msgid ""
 "\n"
@@ -925,18 +1013,20 @@ msgstr ""
 "<khe_khoá> là số thứ tự khe khoá LUKS cần sửa đổi\n"
 "<tập_tin_khoá> là tập tin khoá tùy chọn cho khoá mới trong hành động luksAddKey\n"
 
-#: src/cryptsetup.c:1040
+#: src/cryptsetup.c:1290
 #, c-format
 msgid ""
 "\n"
-"Default compiled-in keyfile parameters:\n"
+"Default compiled-in key and passphrase parameters:\n"
 "\tMaximum keyfile size: %dkB, Maximum interactive passphrase length %d (characters)\n"
+"Default PBKDF2 iteration time for LUKS: %d (ms)\n"
 msgstr ""
 "\n"
 "Các tham số khóa tập tin mặc định đã được dịch sẵn:\n"
 "\tKích thước tập tin khóa tối đa: %dkB, Độ dài mật khẩu trao đổi tối đa %d (ký tự)\n"
+"Thời gian tương tác PBKDF2 mặc định cho LUKS: %d (ms)\n"
 
-#: src/cryptsetup.c:1045
+#: src/cryptsetup.c:1297
 #, c-format
 msgid ""
 "\n"
@@ -951,303 +1041,323 @@ msgstr ""
 "\tbình thường: %s, Khoá: %d bit, Mã băm mật khẩu: %s\n"
 "\tLUKS1: %s, Khoá: %d bit, Mã băm phần đầu LUKS: %s, RNG: %s\n"
 
-#: src/cryptsetup.c:1085 src/veritysetup.c:368 src/cryptsetup_reencrypt.c:1135
+#: src/cryptsetup.c:1314 src/veritysetup.c:459
+#, c-format
+msgid "%s: requires %s as arguments"
+msgstr "%s: cần thiết %s làm đối số"
+
+#: src/cryptsetup.c:1347 src/veritysetup.c:367 src/cryptsetup_reencrypt.c:1099
 msgid "Show this help message"
 msgstr "Hiển thị trợ giúp này"
 
-#: src/cryptsetup.c:1086 src/veritysetup.c:369 src/cryptsetup_reencrypt.c:1136
+#: src/cryptsetup.c:1348 src/veritysetup.c:368 src/cryptsetup_reencrypt.c:1100
 msgid "Display brief usage"
 msgstr "Hiển thị thông tin ngắn về cách sử dụng"
 
-#: src/cryptsetup.c:1090 src/veritysetup.c:373 src/cryptsetup_reencrypt.c:1140
+#: src/cryptsetup.c:1352 src/veritysetup.c:372 src/cryptsetup_reencrypt.c:1104
 msgid "Help options:"
 msgstr "Tùy chọn trợ giúp:"
 
-#: src/cryptsetup.c:1091 src/veritysetup.c:374 src/cryptsetup_reencrypt.c:1141
+#: src/cryptsetup.c:1353 src/veritysetup.c:373 src/cryptsetup_reencrypt.c:1105
 msgid "Print package version"
-msgstr "In ra phiên bản gói"
+msgstr "Hiển thị phiên bản của gói"
 
-#: src/cryptsetup.c:1092 src/veritysetup.c:375 src/cryptsetup_reencrypt.c:1142
+#: src/cryptsetup.c:1354 src/veritysetup.c:374 src/cryptsetup_reencrypt.c:1106
 msgid "Shows more detailed error messages"
 msgstr "Hiển thị các thông điệp lỗi chi tiết hơn"
 
-#: src/cryptsetup.c:1093 src/veritysetup.c:376 src/cryptsetup_reencrypt.c:1143
+#: src/cryptsetup.c:1355 src/veritysetup.c:375 src/cryptsetup_reencrypt.c:1107
 msgid "Show debug messages"
 msgstr "Hiển thị thông điệp gỡ lỗi"
 
-#: src/cryptsetup.c:1094 src/cryptsetup_reencrypt.c:1145
+#: src/cryptsetup.c:1356 src/cryptsetup_reencrypt.c:1109
 msgid "The cipher used to encrypt the disk (see /proc/crypto)"
-msgstr "Mật mã dùng để bảo vệ đĩa (xem`/proc/crypto')"
+msgstr "Mật mã dùng để bảo vệ đĩa (xem“/proc/crypto”)"
 
-#: src/cryptsetup.c:1095 src/cryptsetup_reencrypt.c:1147
+#: src/cryptsetup.c:1357 src/cryptsetup_reencrypt.c:1111
 msgid "The hash used to create the encryption key from the passphrase"
 msgstr "Chuỗi duy nhất dùng để tạo khoá mã hóa từ cụm từ mật khẩu"
 
-#: src/cryptsetup.c:1096
+#: src/cryptsetup.c:1358
 msgid "Verifies the passphrase by asking for it twice"
 msgstr "Thẩm tra cụm từ mật khẩu bằng cách yêu cầu nó hai lần"
 
-#: src/cryptsetup.c:1097 src/cryptsetup_reencrypt.c:1148
+#: src/cryptsetup.c:1359 src/cryptsetup_reencrypt.c:1112
 msgid "Read the key from a file."
 msgstr "Đọc khoá từ một tập tin."
 
-#: src/cryptsetup.c:1098
+#: src/cryptsetup.c:1360
 msgid "Read the volume (master) key from file."
 msgstr "Đọc khoá khối tin (chủ) từ tập tin."
 
-#: src/cryptsetup.c:1099
+#: src/cryptsetup.c:1361
 msgid "Dump volume (master) key instead of keyslots info."
-msgstr "Dump (đổ thành đống) khóa dung lượng (master) thay vì thông tin khe-khóa."
+msgstr "Dump (đổ thành đống) khóa vùng chứa (master) thay vì thông tin khe-khóa."
 
-#: src/cryptsetup.c:1100 src/cryptsetup_reencrypt.c:1146
+#: src/cryptsetup.c:1362 src/cryptsetup_reencrypt.c:1110
 msgid "The size of the encryption key"
 msgstr "Kích cỡ của khoá mã hóa"
 
-#: src/cryptsetup.c:1100 src/cryptsetup_reencrypt.c:1146
+#: src/cryptsetup.c:1362 src/cryptsetup_reencrypt.c:1110
 msgid "BITS"
 msgstr "BIT"
 
-#: src/cryptsetup.c:1101 src/cryptsetup_reencrypt.c:1159
+#: src/cryptsetup.c:1363 src/cryptsetup_reencrypt.c:1123
 msgid "Limits the read from keyfile"
 msgstr "Giới hạn việc đọc từ tệp-tin-khoá"
 
-#: src/cryptsetup.c:1101 src/cryptsetup.c:1102 src/cryptsetup.c:1103
-#: src/cryptsetup.c:1104 src/veritysetup.c:379 src/veritysetup.c:380
-#: src/veritysetup.c:382 src/cryptsetup_reencrypt.c:1158
-#: src/cryptsetup_reencrypt.c:1159 src/cryptsetup_reencrypt.c:1160
-#: src/cryptsetup_reencrypt.c:1161
+#: src/cryptsetup.c:1363 src/cryptsetup.c:1364 src/cryptsetup.c:1365
+#: src/cryptsetup.c:1366 src/veritysetup.c:378 src/veritysetup.c:379
+#: src/veritysetup.c:381 src/cryptsetup_reencrypt.c:1122
+#: src/cryptsetup_reencrypt.c:1123 src/cryptsetup_reencrypt.c:1124
+#: src/cryptsetup_reencrypt.c:1125
 msgid "bytes"
 msgstr "byte"
 
-#: src/cryptsetup.c:1102 src/cryptsetup_reencrypt.c:1158
+#: src/cryptsetup.c:1364 src/cryptsetup_reencrypt.c:1122
 msgid "Number of bytes to skip in keyfile"
 msgstr "Số lượng byte nhảy qua trong tập tin khoá"
 
-#: src/cryptsetup.c:1103
+#: src/cryptsetup.c:1365
 msgid "Limits the read from newly added keyfile"
 msgstr "Giới hạn đọc từ tập tin khóa mới thêm vào"
 
-#: src/cryptsetup.c:1104
+#: src/cryptsetup.c:1366
 msgid "Number of bytes to skip in newly added keyfile"
 msgstr "Số lượng byte để nhảy qua trong tập tin khóa mới thêm"
 
-#: src/cryptsetup.c:1105
+#: src/cryptsetup.c:1367
 msgid "Slot number for new key (default is first free)"
 msgstr "Số thứ tự khe cho khoá mới (mặc định là khe trống thứ nhất)"
 
-#: src/cryptsetup.c:1106
+#: src/cryptsetup.c:1368
 msgid "The size of the device"
 msgstr "Kích cỡ của thiết bị"
 
-#: src/cryptsetup.c:1106 src/cryptsetup.c:1107 src/cryptsetup.c:1108
-#: src/cryptsetup.c:1114
+#: src/cryptsetup.c:1368 src/cryptsetup.c:1369 src/cryptsetup.c:1370
+#: src/cryptsetup.c:1376
 msgid "SECTORS"
 msgstr "RÃNH GHI"
 
-#: src/cryptsetup.c:1107
+#: src/cryptsetup.c:1369
 msgid "The start offset in the backend device"
 msgstr "Khoảng bù đầu tiên trong thiết bị hậu phương"
 
-#: src/cryptsetup.c:1108
+#: src/cryptsetup.c:1370
 msgid "How many sectors of the encrypted data to skip at the beginning"
 msgstr "Bao nhiêu rãnh ghi dữ liệu mã hóa cần bỏ qua ở đầu"
 
-#: src/cryptsetup.c:1109
+#: src/cryptsetup.c:1371
 msgid "Create a readonly mapping"
 msgstr "Tạo một sự ánh xạ chỉ cho phép đọc"
 
-#: src/cryptsetup.c:1110 src/cryptsetup_reencrypt.c:1149
+#: src/cryptsetup.c:1372 src/cryptsetup_reencrypt.c:1113
 msgid "PBKDF2 iteration time for LUKS (in ms)"
 msgstr "Thời gian lặp lại PBKDF2 cho LUKS (theo mili-giây)"
 
-#: src/cryptsetup.c:1110 src/cryptsetup_reencrypt.c:1149
+#: src/cryptsetup.c:1372 src/cryptsetup_reencrypt.c:1113
 msgid "msecs"
 msgstr "mili-giây"
 
-#: src/cryptsetup.c:1111 src/cryptsetup_reencrypt.c:1150
+#: src/cryptsetup.c:1373 src/cryptsetup_reencrypt.c:1114
 msgid "Do not ask for confirmation"
 msgstr "Đừng yêu cầu xác nhận"
 
-#: src/cryptsetup.c:1112
+#: src/cryptsetup.c:1374
 msgid "Timeout for interactive passphrase prompt (in seconds)"
 msgstr "Thời hạn khi nhắc gõ cụm từ mật khẩu (theo giây)"
 
-#: src/cryptsetup.c:1112
+#: src/cryptsetup.c:1374
 msgid "secs"
 msgstr "giây"
 
-#: src/cryptsetup.c:1113 src/cryptsetup_reencrypt.c:1151
+#: src/cryptsetup.c:1375 src/cryptsetup_reencrypt.c:1115
 msgid "How often the input of the passphrase can be retried"
 msgstr "Số các lần có thể thử lại gõ cụm từ mật khẩu"
 
-#: src/cryptsetup.c:1114
+#: src/cryptsetup.c:1376
 msgid "Align payload at <n> sector boundaries - for luksFormat"
-msgstr "Sắp hàng trọng tải ở <n> biên giới rãnh ghi — cho định dạng `luksFormat'"
+msgstr "Sắp hàng trọng tải ở <n> biên giới rãnh ghi — cho định dạng “luksFormat”"
 
-#: src/cryptsetup.c:1115
+#: src/cryptsetup.c:1377
 msgid "File with LUKS header and keyslots backup."
 msgstr "Tập tin chứa bản sao lưu phần đầu và các khe khoá của thiết bị LUKS."
 
-#: src/cryptsetup.c:1116 src/cryptsetup_reencrypt.c:1152
+#: src/cryptsetup.c:1378 src/cryptsetup_reencrypt.c:1116
 msgid "Use /dev/random for generating volume key."
 msgstr "Sử dụng /dev/random để tạo khoá volume."
 
-#: src/cryptsetup.c:1117 src/cryptsetup_reencrypt.c:1153
+#: src/cryptsetup.c:1379 src/cryptsetup_reencrypt.c:1117
 msgid "Use /dev/urandom for generating volume key."
 msgstr "Sử dụng /dev/urandom để tạo khoá volume."
 
-#: src/cryptsetup.c:1118
+#: src/cryptsetup.c:1380
 msgid "Share device with another non-overlapping crypt segment."
 msgstr "Thiết bị chia sẻ với đoạn crypt không-chồng-lên-nhau khác."
 
-#: src/cryptsetup.c:1119 src/veritysetup.c:385
+#: src/cryptsetup.c:1381 src/veritysetup.c:384
 msgid "UUID for device to use."
 msgstr "UUID dành cho tập tin sử dụng."
 
-#: src/cryptsetup.c:1120
+#: src/cryptsetup.c:1382
 msgid "Allow discards (aka TRIM) requests for device."
 msgstr "Cho phép huỷ bỏ (được biết đến như là TRIM) các yêu cầu cho thiết bị."
 
-#: src/cryptsetup.c:1121
+#: src/cryptsetup.c:1383
 msgid "Device or file with separated LUKS header."
 msgstr "Thiết bị hay tập tin với phần đầu LUKS tách nhau."
 
-#: src/cryptsetup.c:1122
+#: src/cryptsetup.c:1384
 msgid "Do not activate device, just check passphrase."
 msgstr "Không kích hoạt thiết bị, chỉ cần kiểm tra mật khẩu."
 
-#: src/cryptsetup.c:1140 src/veritysetup.c:402
+#: src/cryptsetup.c:1385
+msgid "Use hidden header (hidden TCRYPT device)."
+msgstr "Dùng phần đầu ẩn (thiết bị TCRYPT ẩn)."
+
+#: src/cryptsetup.c:1386
+msgid "Device is system TCRYPT drive (with bootloader)."
+msgstr "Thiết bị là ổ đĩa TCRYPT hệ thống (có bootloader)."
+
+#: src/cryptsetup.c:1387
+msgid "Type of device metadata: luks, plain, loopaes, tcrypt."
+msgstr "Kiểu của siêu dữ liệu thiết bị: luks, plain, loopaes, tcrypt."
+
+#: src/cryptsetup.c:1388
+msgid "Disable password quality check (if enabled)."
+msgstr "Tắt chức năng kiểm tra chất lượng mật khẩu (nếu nó đang bật)."
+
+#: src/cryptsetup.c:1406 src/veritysetup.c:401
 msgid "[OPTION...] <action> <action-specific>"
 msgstr "[TÙY_CHỌN...] <hành_động> <đặc_tả_hành_động>"
 
-#: src/cryptsetup.c:1180 src/veritysetup.c:439
+#: src/cryptsetup.c:1452 src/veritysetup.c:438
 msgid "Argument <action> missing."
 msgstr "Đối số <hành_động> còn thiếu."
 
-#: src/cryptsetup.c:1186 src/veritysetup.c:445
+#: src/cryptsetup.c:1500 src/veritysetup.c:444
 msgid "Unknown action."
 msgstr "Hành động không rõ."
 
-#: src/cryptsetup.c:1201 src/veritysetup.c:460
-#, c-format
-msgid "%s: requires %s as arguments"
-msgstr "%s: cần thiết %s làm đối số"
-
-#: src/cryptsetup.c:1210
-msgid "Option --shared is allowed only for create operation.\n"
-msgstr "Tùy chọn `--shared' chỉ cho phép với thao tác tạo (create).\n"
+#: src/cryptsetup.c:1510
+msgid "Option --shared is allowed only for open of plain device.\n"
+msgstr "Tùy chọn “--shared” chỉ cho phép với thao tác tạo mở của thiết bị thường.\n"
 
-#: src/cryptsetup.c:1218
-msgid "Option --allow-discards is allowed only for luksOpen, loopaesOpen and create operation.\n"
-msgstr "Tùy chọn `--allow-discards' thì chỉ cho phép với thao tác `luksOpen', `loopaesOpen' và tạo (create).\n"
+#: src/cryptsetup.c:1515
+msgid "Option --allow-discards is allowed only for open operation.\n"
+msgstr "Tùy chọn “--allow-discards” chỉ cho phép với thao tác tạo mở.\n"
 
-#: src/cryptsetup.c:1226
+#: src/cryptsetup.c:1523
 msgid ""
-"Option --key-size is allowed only for luksFormat, create and loopaesOpen.\n"
+"Option --key-size is allowed only for luksFormat, open and benchmark.\n"
 "To limit read from keyfile use --keyfile-size=(bytes)."
 msgstr ""
-"Tùy chọn `--key-size' thì chỉ cho phép với các thao tác `luksFormat', tạo (create) và `loopaesOpen'.\n"
-"Để giới hạn đọc từ tệp-tin-khoá sử dụng tùy chọn `--keyfile-size=(bytes)'."
+"Tuỳ chọn --key-size thì chỉ cho phép với các thao tác luksFormat, mở và đo kiểm.\n"
+"Để giới hạn đọc từ tệp-tin-khoá sử dụng tuỳ chọn --keyfile-size=(bytes)."
 
-#: src/cryptsetup.c:1233
-msgid "Option --test-passphrase is allowed only for luksOpen.\n"
-msgstr "Tùy chọn `--test-passphrase' chỉ được phép cho `luksOpen'.\n"
+#: src/cryptsetup.c:1530
+msgid "Option --test-passphrase is allowed only for open of LUKS and TCRYPT devices.\n"
+msgstr "Tùy chọn “--test-passphrase” chỉ được phép cho lệnh mở thiết bị LUKS và TCRYPT.\n"
 
-#: src/cryptsetup.c:1238 src/cryptsetup_reencrypt.c:1221
+#: src/cryptsetup.c:1535 src/cryptsetup_reencrypt.c:1185
 msgid "Key size must be a multiple of 8 bits"
 msgstr "Kích cỡ khoá phải là bội số cho 8 bit"
 
-#: src/cryptsetup.c:1245 src/cryptsetup_reencrypt.c:1226
+#: src/cryptsetup.c:1542 src/cryptsetup_reencrypt.c:1190
 msgid "Key slot is invalid."
 msgstr "Khe khoá không đúng."
 
-#: src/cryptsetup.c:1252
+#: src/cryptsetup.c:1549
 msgid "Option --key-file takes precedence over specified key file argument.\n"
 msgstr "Tùy chọn --key-file giữ quyền ưu tiên cao hơn tham số tập tin khoá đã chỉ định.\n"
 
-#: src/cryptsetup.c:1260 src/veritysetup.c:467 src/cryptsetup_reencrypt.c:1210
+#: src/cryptsetup.c:1557 src/veritysetup.c:466 src/cryptsetup_reencrypt.c:1174
 msgid "Negative number for option not permitted."
 msgstr "Tùy chọn không chấp nhận giá trị là số âm."
 
-#: src/cryptsetup.c:1264 src/cryptsetup_reencrypt.c:1204
-#: src/cryptsetup_reencrypt.c:1230
+#: src/cryptsetup.c:1561 src/cryptsetup_reencrypt.c:1168
+#: src/cryptsetup_reencrypt.c:1194
 msgid "Only one of --use-[u]random options is allowed."
-msgstr "Chỉ cho phép một tùy chọn `--use-[u]random'."
+msgstr "Chỉ cho phép một tùy chọn “--use-[u]random”."
 
-#: src/cryptsetup.c:1268
+#: src/cryptsetup.c:1565
 msgid "Option --use-[u]random is allowed only for luksFormat."
-msgstr "Tùy chọn `--use-[u]random' chỉ được phép cho `luksFormat'."
+msgstr "Tùy chọn “--use-[u]random” chỉ được phép cho “luksFormat”."
 
-#: src/cryptsetup.c:1272
+#: src/cryptsetup.c:1569
 msgid "Option --uuid is allowed only for luksFormat and luksUUID."
-msgstr "Tùy chọn `--uuid' thì chỉ cho phép với `luksFormat' và `luksUUID'."
+msgstr "Tùy chọn “--uuid” thì chỉ cho phép với “luksFormat” và “luksUUID”."
 
-#: src/cryptsetup.c:1276
+#: src/cryptsetup.c:1573
 msgid "Option --align-payload is allowed only for luksFormat."
-msgstr "Tùy chọn `--align-payload' chỉ được phép cho `luksFormat'."
+msgstr "Tùy chọn “--align-payload” chỉ được phép cho “luksFormat”."
 
-#: src/cryptsetup.c:1281
-msgid "Option --skip is supported only for create and loopaesOpen commands.\n"
-msgstr "Tùy chọn `--skip' chỉ hỗ trợ cho lệnh tạo (create) và `loopaesOpen'.\n"
+#: src/cryptsetup.c:1579
+msgid "Option --skip is supported only for open of plain and loopaes devices.\n"
+msgstr "Tùy chọn “--skip” chỉ hỗ trợ cho lệnh mở (open) của thiết bị thường và “loopaes”.\n"
 
-#: src/cryptsetup.c:1286
-msgid "Option --offset is supported only for create and loopaesOpen commands.\n"
-msgstr "Tùy chọn `--offset' chỉ hỗ trợ cho lệnh tạo (create) và `loopaesOpen'.\n"
+#: src/cryptsetup.c:1585
+msgid "Option --offset is supported only for open of plain and loopaes devices.\n"
+msgstr "Tùy chọn “--offset” chỉ hỗ trợ cho lệnh mở (open) của thiết bị thường và “loopaes”.\n"
 
-#: src/veritysetup.c:56
+#: src/cryptsetup.c:1591
+msgid "Option --tcrypt-hidden or --tcrypt-system is supported only for TCRYPT device.\n"
+msgstr "Tùy chọn --tcrypt-hidden hay --tcrypt-system chỉ được hỗ trợ trên thiết bị TCRYPT.\n"
+
+#: src/veritysetup.c:57
 msgid "Invalid salt string specified.\n"
 msgstr "Chuỗi salt (muối) đã chỉ ra không hợp lệ.\n"
 
-#: src/veritysetup.c:89
+#: src/veritysetup.c:87
 #, c-format
 msgid "Cannot create hash image %s for writing.\n"
 msgstr "Không thể tạo ảnh băm %s để ghi.\n"
 
-#: src/veritysetup.c:148
+#: src/veritysetup.c:147
 msgid "Invalid root hash string specified.\n"
 msgstr "Chuỗi mã băm gốc (thư mục root) đã chỉ ra không hợp lệ.\n"
 
-#: src/veritysetup.c:308
+#: src/veritysetup.c:307
 msgid "<data_device> <hash_device>"
 msgstr "<thiết-bị-dữ-liệu> <thiết-bị-băm>"
 
-#: src/veritysetup.c:308
+#: src/veritysetup.c:307
 msgid "format device"
 msgstr "định dạng thiết bị"
 
-#: src/veritysetup.c:309
+#: src/veritysetup.c:308
 msgid "<data_device> <hash_device> <root_hash>"
 msgstr "<thiết-bị-dữ-liệu> <thiết-bị-băm> <mã-băm-gốc>"
 
-#: src/veritysetup.c:309
+#: src/veritysetup.c:308
 msgid "verify device"
 msgstr "thẩm tra thiết bị"
 
-#: src/veritysetup.c:310
+#: src/veritysetup.c:309
 msgid "<name> <data_device> <hash_device> <root_hash>"
 msgstr "<tên> <thiết-bị-dữ-liệu> <thiết-bị-băm> <mã-băm-gốc>"
 
-#: src/veritysetup.c:310
+#: src/veritysetup.c:309
 msgid "create active device"
 msgstr "tạo thiết bị hoạt động"
 
-#: src/veritysetup.c:311
+#: src/veritysetup.c:310
 msgid "remove (deactivate) device"
 msgstr "gỡ bỏ (bất hoạt) thiết bị"
 
-#: src/veritysetup.c:312
+#: src/veritysetup.c:311
 msgid "show active device status"
 msgstr "hiển thị trạng thái các thiết bị đang hoạt động"
 
-#: src/veritysetup.c:313
+#: src/veritysetup.c:312
 msgid "<hash_device>"
 msgstr "<thiết_bị_băm>"
 
-#: src/veritysetup.c:313
+#: src/veritysetup.c:312
 msgid "show on-disk information"
 msgstr "hiển thị thông tin trên-đĩa"
 
-#: src/veritysetup.c:332
+#: src/veritysetup.c:331
 #, c-format
 msgid ""
 "\n"
@@ -1262,7 +1372,7 @@ msgstr ""
 "<thiết-bị-băm> là thiết bị chứa dữ liệu xác thực\n"
 "<mã-băm-gốc> mã băm của nút root (gốc) trên <thiết-bị-băm>\n"
 
-#: src/veritysetup.c:339
+#: src/veritysetup.c:338
 #, c-format
 msgid ""
 "\n"
@@ -1270,270 +1380,326 @@ msgid ""
 "\tHash: %s, Data block (bytes): %u, Hash block (bytes): %u, Salt size: %u, Hash format: %u\n"
 msgstr ""
 "\n"
-"Các tham số compiled-in dm-verity mặc định:\n"
+"Các tham số dm-verity dựng sẵn mặc định:\n"
 "\tBăm: %s, Khối dữ liệu (bytes): %u, Khối băm (bytes): %u, Kích thước salt: %u, Định dạng băm: %u\n"
 
-#: src/veritysetup.c:377
+#: src/veritysetup.c:376
 msgid "Do not use verity superblock"
-msgstr "Không sử dụng siêu khối sự thực"
+msgstr "Không sử dụng siêu khối thẩm định"
 
-#: src/veritysetup.c:378
+#: src/veritysetup.c:377
 msgid "Format type (1 - normal, 0 - original Chrome OS)"
-msgstr "Kiểu định dạng (1 - thông thường, 0 - Chrome OS nguyên gốc)"
+msgstr "Kiểu định dạng (1 - thông thường, 0 - Chrome OS)"
 
-#: src/veritysetup.c:378
+#: src/veritysetup.c:377
 msgid "number"
 msgstr "số"
 
-#: src/veritysetup.c:379
+#: src/veritysetup.c:378
 msgid "Block size on the data device"
 msgstr "Kích cỡ khối trên thiết bị dữ liệu"
 
-#: src/veritysetup.c:380
+#: src/veritysetup.c:379
 msgid "Block size on the hash device"
 msgstr "Kích cỡ của khối trên thiết bị băm"
 
-#: src/veritysetup.c:381
+#: src/veritysetup.c:380
 msgid "The number of blocks in the data file"
 msgstr "Số lượng khối trong tập tin dữ liệu"
 
-#: src/veritysetup.c:381
+#: src/veritysetup.c:380
 msgid "blocks"
 msgstr "khối"
 
-#: src/veritysetup.c:382
+#: src/veritysetup.c:381
 msgid "Starting offset on the hash device"
 msgstr "Khoảng bù (offset) khởi đầu của thiết bị băm"
 
-#: src/veritysetup.c:383
+#: src/veritysetup.c:382
 msgid "Hash algorithm"
 msgstr "Thuật toán băm dữ liệu"
 
-#: src/veritysetup.c:383
+#: src/veritysetup.c:382
 msgid "string"
 msgstr "chuỗi"
 
-#: src/veritysetup.c:384
+#: src/veritysetup.c:383
 msgid "Salt"
 msgstr "Salt"
 
-#: src/veritysetup.c:384
+#: src/veritysetup.c:383
 msgid "hex string"
 msgstr "chuỗi hex"
 
-#: src/cryptsetup_reencrypt.c:164
+#: src/cryptsetup_reencrypt.c:136
 #, c-format
 msgid "Cannot exclusively open %s, device in use.\n"
 msgstr "Không thể mở %s một cách đệ qui, thiết bị vẫn đang được sử dụng.\n"
 
-#: src/cryptsetup_reencrypt.c:168
+#: src/cryptsetup_reencrypt.c:140
 #, c-format
 msgid "Cannot open device %s\n"
 msgstr "Không thể mở thiết bị %s\n"
 
-#: src/cryptsetup_reencrypt.c:178 src/cryptsetup_reencrypt.c:406
-#: src/cryptsetup_reencrypt.c:822
+#: src/cryptsetup_reencrypt.c:150 src/cryptsetup_reencrypt.c:367
+#: src/cryptsetup_reencrypt.c:786
 msgid "Allocation of aligned memory failed.\n"
 msgstr "Phân bổ bộ nhớ điều chỉnh gặp lỗi.\n"
 
-#: src/cryptsetup_reencrypt.c:185
+#: src/cryptsetup_reencrypt.c:157
 #, c-format
 msgid "Cannot read device %s.\n"
 msgstr "Không thể đọc thiết bị %s.\n"
 
-#: src/cryptsetup_reencrypt.c:196
+#: src/cryptsetup_reencrypt.c:168
 #, c-format
 msgid "Marking LUKS device %s unusable.\n"
 msgstr "Đánh dấu thiết bị LUKS %s là không thể dùng.\n"
 
-#: src/cryptsetup_reencrypt.c:201
+#: src/cryptsetup_reencrypt.c:173
 #, c-format
 msgid "Marking LUKS device %s usable.\n"
 msgstr "Đánh dấu thiết bị LUKS %s là có thể dùng.\n"
 
-#: src/cryptsetup_reencrypt.c:217
+#: src/cryptsetup_reencrypt.c:189
 #, c-format
 msgid "Cannot write device %s.\n"
 msgstr "Không thể ghi thiết bị %s.\n"
 
-#: src/cryptsetup_reencrypt.c:298
+#: src/cryptsetup_reencrypt.c:270
 msgid "Cannot write reencryption log file.\n"
 msgstr "Không thể ghi tập tin nhật ký reencryption (mã hóa lại).\n"
 
-#: src/cryptsetup_reencrypt.c:347
+#: src/cryptsetup_reencrypt.c:319
 msgid "Cannot read reencryption log file.\n"
 msgstr "Không đọc được tập tin nhật ký reencryption.\n"
 
-#: src/cryptsetup_reencrypt.c:397
+#: src/cryptsetup_reencrypt.c:358
 #, c-format
 msgid "Log file %s exists, resuming reencryption.\n"
-msgstr "Tập tin nhật ký %s đã có sẵn rồi, coi là reencryption (mã hóa thêm lần nữa).\n"
+msgstr "Tập tin nhật ký %s đã có sẵn rồi, giả định là reencryption (mã hóa thêm lần nữa).\n"
+
+#: src/cryptsetup_reencrypt.c:393
+msgid "Activating temporary device using old LUKS header.\n"
+msgstr "Hoạt hóa thiết bị tạm thời sử dụng phần đầu LUKS kiểu cũ.\n"
 
-#: src/cryptsetup_reencrypt.c:451
+#: src/cryptsetup_reencrypt.c:404
+msgid "Activating temporary device using new LUKS header.\n"
+msgstr "Hoạt hóa thiết bị tạm thời sử dụng phần đầu LUKS kiểu mới.\n"
+
+#: src/cryptsetup_reencrypt.c:414
 msgid "Activation of temporary devices failed.\n"
 msgstr "Việc hoạt hóa các thiết bị tạm thời gặp lỗi.\n"
 
-#: src/cryptsetup_reencrypt.c:476
+#: src/cryptsetup_reencrypt.c:439
 #, c-format
 msgid "New LUKS header for device %s created.\n"
 msgstr "Phần đầu LUKS mới cho thiết bị %s được tạo.\n"
 
-#: src/cryptsetup_reencrypt.c:484
+#: src/cryptsetup_reencrypt.c:447
 #, c-format
 msgid "Activated keyslot %i.\n"
 msgstr "Khe-khoá (keyslot) đã được kích hoạt %i.\n"
 
-#: src/cryptsetup_reencrypt.c:508
+#: src/cryptsetup_reencrypt.c:471
 #, c-format
 msgid "LUKS header backup of device %s created.\n"
 msgstr "Phần đầu sao lưu LUKS của thiết bị %s được tạo.\n"
 
-#: src/cryptsetup_reencrypt.c:536
+#: src/cryptsetup_reencrypt.c:499
 msgid "Creation of LUKS backup headers failed.\n"
 msgstr "Việc tạo phần đầu LUKS sao lưu dự phòng gặp lỗi.\n"
 
-#: src/cryptsetup_reencrypt.c:631
+#: src/cryptsetup_reencrypt.c:594
 #, c-format
 msgid "Cannot restore LUKS header on device %s.\n"
 msgstr "Không thể phục hồi phần đầu LUKS trên thiết bị %s.\n"
 
-#: src/cryptsetup_reencrypt.c:633
+#: src/cryptsetup_reencrypt.c:596
 #, c-format
 msgid "LUKS header on device %s restored.\n"
 msgstr "Phần đầu LUKS trên thiết bị %s đã được phục hồi.\n"
 
-#: src/cryptsetup_reencrypt.c:665
+#: src/cryptsetup_reencrypt.c:629
 #, c-format
 msgid "Progress: %5.1f%%, ETA %02llu:%02llu, %4llu MiB written, speed %5.1f MiB/s%s"
 msgstr "Tiến trình: %5.1f%%, ETA %02llu:%02llu, %4llu MiB đã ghi, tốc độ %5.1f MiB/s%s"
 
-#: src/cryptsetup_reencrypt.c:681 src/cryptsetup_reencrypt.c:757
+#: src/cryptsetup_reencrypt.c:645 src/cryptsetup_reencrypt.c:721
 msgid "Cannot seek to device offset.\n"
 msgstr "Không thể di chuyển vị trí tới vị trí tương đối thiết bị.\n"
 
-#: src/cryptsetup_reencrypt.c:803 src/cryptsetup_reencrypt.c:809
+#: src/cryptsetup_reencrypt.c:767 src/cryptsetup_reencrypt.c:773
 msgid "Cannot open temporary LUKS header file.\n"
 msgstr "Không thể mở tập tin phần đầu LUKS tạm thời.\n"
 
-#: src/cryptsetup_reencrypt.c:815
+#: src/cryptsetup_reencrypt.c:779
 msgid "Cannot get device size.\n"
 msgstr "Không thể lấy kích cỡ thiết bị.\n"
 
-#: src/cryptsetup_reencrypt.c:839
+#: src/cryptsetup_reencrypt.c:803
 msgid "Interrupted by a signal.\n"
 msgstr "Bị ngắt bởi tín hiệu signal.\n"
 
-#: src/cryptsetup_reencrypt.c:841
+#: src/cryptsetup_reencrypt.c:805
 msgid "IO error during reencryption.\n"
 msgstr "Lỗi IO (V/R) trong quá trình reencryption.\n"
 
-#: src/cryptsetup_reencrypt.c:942
+#: src/cryptsetup_reencrypt.c:906
 msgid "Key file can be used only with --key-slot or with exactly one key slot active.\n"
 msgstr "Tập tin khóa có thể sử dụng với tùy chọn --key-slot hoặc với chính xác một khe khóa tích cực.\n"
 
-#: src/cryptsetup_reencrypt.c:984
+#: src/cryptsetup_reencrypt.c:948
 msgid "Enter any LUKS passphrase: "
 msgstr "Nhập mật khẩu LUKS vào: "
 
-#: src/cryptsetup_reencrypt.c:991
+#: src/cryptsetup_reencrypt.c:955
 #, c-format
 msgid "Enter LUKS passphrase for key slot %u: "
 msgstr "Nhập mật khẩu LUKS cho khe khoá %u: "
 
-#: src/cryptsetup_reencrypt.c:1040
+#: src/cryptsetup_reencrypt.c:1004
 msgid "Cannot open reencryption log file.\n"
 msgstr "Không mở được tập tin nhật trình reencryption.\n"
 
-#: src/cryptsetup_reencrypt.c:1144
+#: src/cryptsetup_reencrypt.c:1108
 msgid "Reencryption block size"
 msgstr "Kích thước khối Reencryption"
 
-#: src/cryptsetup_reencrypt.c:1144
+#: src/cryptsetup_reencrypt.c:1108
 msgid "MiB"
 msgstr "MiB"
 
-#: src/cryptsetup_reencrypt.c:1154
+#: src/cryptsetup_reencrypt.c:1118
 msgid "Use direct-io when accesing devices."
 msgstr "Sử dụng vào ra trực tiếp khi truy cập các thiết bị."
 
-#: src/cryptsetup_reencrypt.c:1155
+#: src/cryptsetup_reencrypt.c:1119
 msgid "Use fsync after each block."
 msgstr "Sử dụng fsync sau mỗi khối."
 
-#: src/cryptsetup_reencrypt.c:1156
+#: src/cryptsetup_reencrypt.c:1120
 msgid "Update log file after every block."
 msgstr "Cập nhật tập tin nhật ký sau mỗi khối."
 
-#: src/cryptsetup_reencrypt.c:1157
+#: src/cryptsetup_reencrypt.c:1121
 msgid "Use only this slot (others will be disabled)."
 msgstr "Chỉ sử dụng khe này (những cái khác sẽ bị tắt đi)."
 
-#: src/cryptsetup_reencrypt.c:1160
+#: src/cryptsetup_reencrypt.c:1124
 msgid "Reduce data device size (move data offset). DANGEROUS!"
 msgstr "Giảm kích thước dữ liệu thiết bị (di chuyển offset dữ liệu). NGUY HIỂM!"
 
-#: src/cryptsetup_reencrypt.c:1161
+#: src/cryptsetup_reencrypt.c:1125
 msgid "Use only specified device size (ignore rest of device). DANGEROUS!"
 msgstr "Chỉ sử dụng kích thước dữ liệu thiết bị (bỏ qua phần còn lại của thiết bị). NGUY HIỂM!"
 
-#: src/cryptsetup_reencrypt.c:1162
+#: src/cryptsetup_reencrypt.c:1126
 msgid "Create new header on not encrypted device."
 msgstr "Tạo phần đầu mới không trên thiết bị được mã hóa."
 
-#: src/cryptsetup_reencrypt.c:1178
+#: src/cryptsetup_reencrypt.c:1142
 msgid "[OPTION...] <device>"
 msgstr "[TÙY_CHỌN...] <thiết-bị>"
 
-#: src/cryptsetup_reencrypt.c:1192
+#: src/cryptsetup_reencrypt.c:1156
 msgid "WARNING: this is experimental code, it can completely break your data.\n"
 msgstr "CẢNH BÁO: đây chỉ là mã thử nghiệm, nó có thể phá hoại dữ liệu của bạn.\n"
 
-#: src/cryptsetup_reencrypt.c:1193
+#: src/cryptsetup_reencrypt.c:1157
 #, c-format
 msgid "Reencryption will change: volume key%s%s%s%s.\n"
 msgstr "Reencryption sẽ thay đổi: khóa dung tích%s%s%s%s.\n"
 
-#: src/cryptsetup_reencrypt.c:1194
+#: src/cryptsetup_reencrypt.c:1158
 msgid ", set hash to "
 msgstr ", đặt kiểu băm thành "
 
-#: src/cryptsetup_reencrypt.c:1195
+#: src/cryptsetup_reencrypt.c:1159
 msgid ", set cipher to "
 msgstr ", đặt mã hóa thành "
 
-#: src/cryptsetup_reencrypt.c:1200
+#: src/cryptsetup_reencrypt.c:1164
 msgid "Argument required."
 msgstr "Cần đối số."
 
-#: src/cryptsetup_reencrypt.c:1216
+#: src/cryptsetup_reencrypt.c:1180
 msgid "Only values between 1 MiB and 64 MiB allowed for reencryption block size."
 msgstr "Chỉ những giá trị nằm giữa 1MiB và 64 MiB là cho phép đối với kích thước khối reencryption (mã hóa lại)."
 
-#: src/cryptsetup_reencrypt.c:1235 src/cryptsetup_reencrypt.c:1240
+#: src/cryptsetup_reencrypt.c:1199 src/cryptsetup_reencrypt.c:1204
 msgid "Invalid device size specification."
 msgstr "Đặc tả kích thước thiết bị không đúng."
 
-#: src/cryptsetup_reencrypt.c:1243
+#: src/cryptsetup_reencrypt.c:1207
 msgid "Maximum device reduce size is 64 MiB."
 msgstr "Kích thước thu nhỏ thiết bị tối đa là 64 MiB."
 
-#: src/cryptsetup_reencrypt.c:1246
+#: src/cryptsetup_reencrypt.c:1210
 msgid "Reduce size must be multiple of 512 bytes sector."
 msgstr "Kích cỡ giảm phải là bội số cung từ (sector) 512 byte"
 
-#: src/cryptsetup_reencrypt.c:1250
+#: src/cryptsetup_reencrypt.c:1214
 msgid "Option --new must be used together with --reduce-device-size."
-msgstr "Tùy chọn `--new' phải được sử dụng cùng với `--reduce-device-size'."
+msgstr "Tùy chọn “--new” phải được sử dụng cùng với “--reduce-device-size”."
+
+#: src/utils_tools.c:150
+msgid "Error reading response from terminal.\n"
+msgstr "Gặp lỗi khi đọc phản hồi từ thiết bị cuối.\n"
 
-#: src/utils_tools.c:114
+#: src/utils_tools.c:172
 msgid "Command successful.\n"
 msgstr "Câu lệnh đã chạy thành công.\n"
 
-#: src/utils_tools.c:128
+#: src/utils_tools.c:186
 #, c-format
 msgid "Command failed with code %i"
 msgstr "Câu lệnh đã thất bại với mã %i"
 
+#: src/utils_password.c:42
+#, c-format
+msgid "Cannot check password quality: %s\n"
+msgstr "Không thể kiểm tra chất lượng mật khẩu: %s\n"
+
+#: src/utils_password.c:50
+#, c-format
+msgid ""
+"Password quality check failed:\n"
+" %s\n"
+msgstr ""
+"Chất lượng mật khẩu không đạt:\n"
+" %s\n"
+
+#~ msgid "Failed to obtain device mapper directory."
+#~ msgstr "Lỗi lấy thư mục trình ánh xạ thiết bị."
+
+#~ msgid "Backup file %s doesn't exist.\n"
+#~ msgstr "Tập tin sao lưu %s không tồn tại.\n"
+
+#~ msgid "Cannot open file %s.\n"
+#~ msgstr "Không thể mở tập tin %s.\n"
+
+#~ msgid "<name> <device>"
+#~ msgstr "<tên> <thiết_bị>"
+
+#~ msgid "create device"
+#~ msgstr "tạo thiết bị"
+
+#~ msgid "remove device"
+#~ msgstr "gỡ bỏ thiết bị"
+
+#~ msgid "remove LUKS mapping"
+#~ msgstr "gỡ bỏ sự ánh xạ LUKS"
+
+#~ msgid "open loop-AES device as mapping <name>"
+#~ msgstr "mở thiết bị loop-AES như là ánh xạ <tên>"
+
+#~ msgid "remove loop-AES mapping"
+#~ msgstr "gỡ bỏ ánh xạ loop-AES"
+
+#~ msgid "Option --allow-discards is allowed only for luksOpen, loopaesOpen and create operation.\n"
+#~ msgstr "Tùy chọn “--allow-discards” thì chỉ cho phép với thao tác “luksOpen”, “loopaesOpen” và tạo (create).\n"
+
 #~ msgid "Cannot open device %s for %s%s access.\n"
 #~ msgstr "Không thể mở thiết bị %s cho truy cập %s%s.\n"
 
@@ -1567,9 +1733,6 @@ msgstr "Câu lệnh đã thất bại với mã %i"
 #~ msgid "Cannot find compatible device-mapper kernel modules.\n"
 #~ msgstr "Không tìm thấy mô-đun hạt nhân ánh xạ thiết bị tương thích.\n"
 
-#~ msgid "Cannot not read %d bytes from key file %s.\n"
-#~ msgstr "Không thể đọc %d byte từ tập tin khoá %s.\n"
-
 #~ msgid "Key slot %d verified.\n"
 #~ msgstr "Khe khoá %d được thẩm định.\n"
 
@@ -1598,14 +1761,14 @@ msgstr "Câu lệnh đã thất bại với mã %i"
 #~ "The reload action is deprecated. Please use`dmsetup reload' in case you really need this functionality.\n"
 #~ "WARNING: do not use reload to touch LUKS devices. If that is the case, hit Ctrl-C now.\n"
 #~ msgstr ""
-#~ "Hành động nạp lại bị phản đối. Hãy sử dụng`dmsetup reload' trong trường hợp bạn thực sự yêu cầu chức năng này.\n"
+#~ "Hành động nạp lại bị phản đối. Hãy sử dụng“dmsetup reload” trong trường hợp bạn thực sự yêu cầu chức năng này.\n"
 #~ "CẢNH BÁO: đừng sử dụng chức năng nạp lại để thao tác thiết bị kiểu LUKS. Trong trường hợp đó, bấm tổ hợp phím Ctrl-C ngay bây giờ.\n"
 
 #~ msgid "Obsolete option --non-exclusive is ignored.\n"
-#~ msgstr "Tùy chọn cũ`--non-exclusive' bị bỏ qua.\n"
+#~ msgstr "Tùy chọn cũ“--non-exclusive” bị bỏ qua.\n"
 
 #~ msgid "Read the key from a file (can be /dev/random)"
-#~ msgstr "Đọc khoá từ một tập tin nào đó (có thể là`/dev/random')"
+#~ msgstr "Đọc khoá từ một tập tin nào đó (có thể là“/dev/random”)"
 
 #~ msgid "(Obsoleted, see man page.)"
 #~ msgstr "(Bị phản đối, xem trang hướng dẫn.)"