From 93b986393431df963e49e3836b155465af26dd5a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=BD=D0=B0=D0=B1=20autouploader?= Date: Wed, 10 Nov 2021 17:36:29 +0000 Subject: [PATCH] Manpage update by job 624978 --- tzpfms.pdf | Bin 60157 -> 60153 bytes tzpfms.ps | 261 ++++++++++++++++++------------------ zfs-tpm-list.8 | 18 +-- zfs-tpm-list.8.html | 22 ++- zfs-tpm1x-change-key.8 | 8 +- zfs-tpm1x-change-key.8.html | 8 +- zfs-tpm1x-clear-key.8 | 4 +- zfs-tpm1x-clear-key.8.html | 4 +- zfs-tpm1x-load-key.8 | 10 +- zfs-tpm1x-load-key.8.html | 12 +- zfs-tpm2-change-key.8 | 6 +- zfs-tpm2-change-key.8.html | 6 +- zfs-tpm2-clear-key.8 | 4 +- zfs-tpm2-clear-key.8.html | 4 +- zfs-tpm2-load-key.8 | 8 +- zfs-tpm2-load-key.8.html | 8 +- 16 files changed, 192 insertions(+), 191 deletions(-) diff --git a/tzpfms.pdf b/tzpfms.pdf index 24c964892a688a651c7b5a39f05e3fc730f222e3..c9b36eaa6c7a99e0008c4307957adad318e9dfcb 100644 GIT binary patch delta 23954 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 delta 23994 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 m!VwZ;|L+JB5(x!7v( diff --git a/tzpfms.ps b/tzpfms.ps index 87ceac3..61747d1 100644 --- a/tzpfms.ps +++ b/tzpfms.ps @@ -1,6 +1,6 @@ %!PS-Adobe-3.0 %%Creator: groff version 1.22.4 -%%CreationDate: Thu Oct 21 21:59:13 2021 +%%CreationDate: Wed Nov 10 17:36:28 2021 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Courier-Bold @@ -272,35 +272,31 @@ ediate operator attention, with either the appropriate)102 270 R F2 (zfs-tpm)102 282 Q/F5 10/Symbol SF(*)A F2(-clear-key)A F0 .462 (program or)2.962 F F2 .462(zfs change-key)2.962 F F0(and)2.962 E F2 .462(zfs inherit)2.962 F F0 2.962<8a69>2.962 G 2.963(ft)-2.962 G .463 -(he k)-2.963 F .763 -.15(ey b)-.1 H .463(ecomes un-).15 F 1.642 -(loaded, the)102 294 R 4.142(yw)-.15 G 1.642 -(ill require restoration from back-up.)-4.142 F(Ho)6.642 E(we)-.25 E --.15(ve)-.25 G 2.441 -.4(r, t).15 H(he).4 E 4.141(ys)-.15 G 1.641 -(hould ne)-4.141 F -.15(ve)-.25 G 4.141(ro).15 G(ccur)-4.141 E 4.141(,u) --.4 G 1.641(nless something)-4.141 F -(went terribly wrong with the dataset properties.)102 306 Q .468 -(If no datasets are speci\214ed, lists all matching encryption roots.) -102 324 R .468(The def)5.468 F .468 -(ault \214lter is to list all roots managed)-.1 F(by)102 336 Q F2 -(tzpfms)2.5 E F0(.)A F2(\255ab)6.666 E F0 -(can be used to either list all roots or only ones back)2.5 E -(ed by a particular end, respecti)-.1 E -.15(ve)-.25 G(ly).15 E(.)-.65 E -F1(OPTIONS)72 360 Q F2103.666 372 Q F0 .093(Scripting mode \212 d\ -o not print headers and separate \214elds by a single tab instead of co\ -lum-)173 372 R(nating with spaces.)173 384 Q F2103.666 402 Q F0 +(he k)-2.963 F .763 -.15(ey b)-.1 H .463(ecomes un-).15 F .145 +(loaded, the)102 294 R 2.645(yw)-.15 G .145 +(ill require restoration from back-up.)-2.645 F(Ho)5.144 E(we)-.25 E +-.15(ve)-.25 G .944 -.4(r, t).15 H .144(his should ne).4 F -.15(ve)-.25 +G 2.644(ro).15 G(ccur)-2.644 E 2.644(,u)-.4 G .144(nless something went) +-2.644 F(horribly wrong with the dataset properties.)102 306 Q 2.386(If\ + no datasets are speci\214ed, all matching encryption roots are listed \ +\212 by def)102 324 R 2.386(ault, those managed by)-.1 F F2(tzpfms)102 +336 Q F0(.)A F1(OPTIONS)72 360 Q F2103.666 372 Q F0 .447 +(Scripting mode \212 remo)173 372 R .747 -.15(ve h)-.15 H .446 +(eaders and separate \214elds by a single tab instead of columnat-).15 F +(ing them with spaces.)173 384 Q F2103.666 402 Q F0 (Recurse into all descendants of speci\214ed datasets.)173 402 Q F2 103.666 414 Q F3(depth)6 E F0(Recurse at most)173 414 Q F3(depth) 2.5 E F0(datasets deep.)2.5 E(Def)5 E(ault:)-.1 E F1(0)2.5 E F0(.)A F2 103.666 432 Q F0(List all encryption roots, e)173 432 Q -.15(ve) -.25 G 2.5(no).15 G(nes not managed by)-2.5 E F2(tzpfms)2.5 E F0(.)A F2 -103.666 444 Q F3(back-end)6 E F0(List only encryption roots with) -173 456 Q F3(tzpfms)2.5 E F0(back-end)2.5 E F3(back-end)2.5 E F0(.)A F2 -103.666 474 Q F0(List only encryption roots whose k)173 474 Q -.15 -(ey)-.1 G 2.5(sa).15 G(re a)-2.5 E -.25(va)-.2 G(ilable.).25 E F2 -103.666 486 Q F0(List only encryption roots whose k)173 486 Q -.15(ey) --.1 G 2.5(sa).15 G(re una)-2.5 E -.25(va)-.2 G(ilable.).25 E F1 -(EXAMPLES)72 510 Q F4($)102 522 Q F2(zfs-tpm-list)6 E F4 -(NAME BACK-END KEYSTATUS COHERENT)102 534 Q +103.666 444 Q F3(back-end)6 E F0 +(List only encryption roots with the speci\214ed)173 456 Q F2(tzpfms)2.5 +E F3(back-end)2.5 E F0(.)A F2103.666 474 Q F0 +(List only encryption roots whose k)173 474 Q -.15(ey)-.1 G 2.5(sa).15 G +(re a)-2.5 E -.25(va)-.2 G(ilable.).25 E F2103.666 486 Q F0 +(List only encryption roots whose k)173 486 Q -.15(ey)-.1 G 2.5(sa).15 G +(re una)-2.5 E -.25(va)-.2 G(ilable.).25 E F1(EXAMPLES)72 510 Q F4($)102 +522 Q F2(zfs-tpm-list)6 E F4(NAME BACK-END KEYSTATUS COHERENT)102 534 Q (owo/venc TPM2 unavailable yes)102 546 Q(owo/enc TPM1.X available yes) 102 558 Q($)102 582 Q F2 1.666(zfs-tpm-list \255ad0)6 F F4 (NAME BACK-END KEYSTATUS COHERENT)102 594 Q(awa - available yes)102 606 @@ -308,8 +304,9 @@ Q($)102 630 Q F2 1.666(zfs-tpm-list \255b)6 F F1(TPM2)6 E F4 (NAME BACK-END KEYSTATUS COHERENT)102 642 Q (owo/venc TPM2 unavailable yes)102 654 Q($)102 678 Q F2 1.666 (zfs-tpm-list \255ra)6 F F3(owo)6 E F4(NAME BACK-END KEYSTATUS COHERENT) -102 690 Q(owo/venc TPM2 unavailable yes)102 702 Q F0(tzpfms 0.1-7)72 750 -Q(October 17, 2021)148.595 E(1)194.145 E 0 Cg EP +102 690 Q(owo/venc TPM2 unavailable yes)102 702 Q F0(tzpfms 0.1-10)72 +750 Q(No)138.745 E -.15(ve)-.15 G(mber 10, 2021).15 E(1)189.295 E 0 Cg +EP %%Page: 2 2 %%BeginPageSetup BP @@ -331,7 +328,8 @@ Q(owo/vtnc - available yes)102 180 Q(owo/v nc - available yes)102 192 Q -.15(ve)-.25 G 2.5(da).15 G(t)-2.5 E F3(https://lists.sr)2.5 E (.ht/~nabijaczleweli/tzpfms)-1 E F0(.)A F3 1.666(SEE ALSO)72 342 R (https://git.sr)102 354 Q(.ht/~nabijaczleweli/tzpfms)-1 E F0 -(tzpfms 0.1-7)72 750 Q(October 17, 2021)148.595 E(2)194.145 E 0 Cg EP +(tzpfms 0.1-10)72 750 Q(No)138.745 E -.15(ve)-.15 G(mber 10, 2021).15 E +(2)189.295 E 0 Cg EP %%Page: 3 3 %%BeginPageSetup BP @@ -359,22 +357,22 @@ F2(tzpfms)2.553 E F0 .053(and the)2.553 F F1(TPM1.X)2.553 E F0 .054 (be silently cleared.)102 252 R .203(Otherwise, or in case of an error) 5.203 F 2.703(,d)-.4 G .203(ata required for manual interv)-2.703 F .202 (ention will be printed to)-.15 F(the standard error stream.)102 264 Q -(Ne)102 282 Q .519(xt, a ne)-.15 F 3.019(ww)-.25 G .519(rapping k)-3.019 -F .819 -.15(ey i)-.1 H 3.019(sb).15 G 3.019(eg)-3.019 G .519 -(enerated on the TPM, optionally back)-3.019 F .519(ed up)-.1 F 1.666 -(\(s)4.685 G(ee)-1.666 E F1(OPTIONS)3.02 E F0 -2.812 1.666(\), a)1.666 H -.52(nd sealed)-1.666 F 1.782(on the TPM; the user is prompted for an op\ -tional passphrase to protect the k)102 294 R 2.081 -.15(ey w)-.1 H 1.781 -(ith, and for the SRK).15 F(passphrase, set when taking o)102 306 Q -(wnership, if it is not "well-kno)-.25 E(wn" \(all zeroes\).)-.25 E -(The follo)102 324 Q(wing properties are set on)-.25 E F3(dataset)2.5 E -F0(:)A F1<83>122 336 Q F5(xyz.nabijaczleweli:tzpfms.backend)2.5 E F0(=)A -F1(TPM1.X)A<83>122 348 Q F5(xyz.nabijaczleweli:tzpfms.key)2.5 E F0(=)A -F3(parent-key-blob)A F2(:)A F3(sealed-object-blob)A F5(tzpfms.backend) -102 366 Q F0 2.231(identi\214es this dataset for w)4.73 F 2.231 -(ork with)-.1 F F1(TPM1.X)4.731 E F0(-back-ended)A F2(tzpfms)4.731 E F0 -3.897(tools \()4.731 F(namely)1.666 E F5(zfs-tpm1x-change-key)102 378 Q -F0(\(8\),)A F5(zfs-tpm1x-load-key)2.5 E F0(\(8\), and)A F5 +(Ne)102 282 Q .486(xt, a ne)-.15 F 2.986(ww)-.25 G .486(rapping k)-2.986 +F .786 -.15(ey i)-.1 H 2.986(sg).15 G .486 +(enerated on the TPM, optionally back)-2.986 F .486(ed up)-.1 F 1.666 +(\(s)4.652 G(ee)-1.666 E F1(OPTIONS)2.987 E F0 -2.845 1.666(\), a)1.666 +H .487(nd sealed on)-1.666 F 2.575(the TPM; the user is prompted for an\ + optional passphrase to protect the k)102 294 R 2.875 -.15(ey w)-.1 H +2.575(ith, and for the SRK).15 F(passphrase, set when taking o)102 306 Q +(wnership, if not "well-kno)-.25 E(wn" \(all zeroes\).)-.25 E(The follo) +102 324 Q(wing properties are set on)-.25 E F3(dataset)2.5 E F0(:)A F1 +<83>122 336 Q F5(xyz.nabijaczleweli:tzpfms.backend)2.5 E F0(=)A F1 +(TPM1.X)A<83>122 348 Q F5(xyz.nabijaczleweli:tzpfms.key)2.5 E F0(=)A F3 +(parent-key-blob)A F2(:)A F3(sealed-object-blob)A F5(tzpfms.backend)102 +366 Q F0 2.231(identi\214es this dataset for w)4.73 F 2.231(ork with)-.1 +F F1(TPM1.X)4.731 E F0(-back-ended)A F2(tzpfms)4.731 E F0 3.897 +(tools \()4.731 F(namely)1.666 E F5(zfs-tpm1x-change-key)102 378 Q F0 +(\(8\),)A F5(zfs-tpm1x-load-key)2.5 E F0(\(8\), and)A F5 (zfs-tpm1x-clear-key)2.5 E F0 -.834(\(8\) \) .)B F5(tzpfms.key)102 396 Q F0 .334(is a colon-separated pair of he)2.834 F .333 (xadecimal-string \(i.e. "4F7730" for "Ow0"\) blobs; the \214rst one) @@ -419,8 +417,8 @@ F0(Sa)191 618 Q .806 -.15(ve a b)-.2 H .506(ack-up of the k).15 F .805 (case of a catastrophic e)3.181 F -.15(ve)-.25 G .682(nt, the k).15 F .982 -.15(ey c)-.1 H(an).15 E(be loaded by running)191 642 Q F2 (zfs load-key)221 654 Q F3(dataset)6 E F5(<)6 E F3(backup-file)6 E F1 -1.666(TPM1.X back-end con\214guration)72 678 R F0(tzpfms 0.1-7)72 750 Q -(October 17, 2021)148.595 E(3)194.145 E 0 Cg EP +1.666(TPM1.X back-end con\214guration)72 678 R F0(tzpfms 0.1-10)72 750 Q +(No)138.745 E -.15(ve)-.15 G(mber 10, 2021).15 E(3)189.295 E 0 Cg EP %%Page: 4 4 %%BeginPageSetup BP @@ -454,7 +452,8 @@ E(ousers)-.18 E F0(.)A 5.109(The TPM 1.2 main speci\214cation inde)102 -.15(ve)-.25 G 2.5(da).15 G(t)-2.5 E F1(https://lists.sr)2.5 E (.ht/~nabijaczleweli/tzpfms)-1 E F0(.)A F1 1.666(SEE ALSO)72 354 R (https://git.sr)102 366 Q(.ht/~nabijaczleweli/tzpfms)-1 E F0 -(tzpfms 0.1-7)72 750 Q(October 17, 2021)148.595 E(4)194.145 E 0 Cg EP +(tzpfms 0.1-10)72 750 Q(No)138.745 E -.15(ve)-.15 G(mber 10, 2021).15 E +(4)189.295 E 0 Cg EP %%Page: 5 5 %%BeginPageSetup BP @@ -504,7 +503,8 @@ E(ousers)-.18 E F0(.)A 5.109(The TPM 1.2 main speci\214cation inde)102 -.15(ve)-.25 G 2.5(da).15 G(t)-2.5 E F1(https://lists.sr)2.5 E (.ht/~nabijaczleweli/tzpfms)-1 E F0(.)A F1 1.666(SEE ALSO)72 528 R (https://git.sr)102 540 Q(.ht/~nabijaczleweli/tzpfms)-1 E F0 -(tzpfms 0.1-7)72 750 Q(October 17, 2021)148.595 E(5)194.145 E 0 Cg EP +(tzpfms 0.1-10)72 750 Q(No)138.745 E -.15(ve)-.15 G(mber 10, 2021).15 E +(5)189.295 E 0 Cg EP %%Page: 6 6 %%BeginPageSetup BP @@ -513,38 +513,36 @@ BP (System Manager')60.349 E 2.5(sM)-.55 G 55.349(anual ZFS-TPM1X-LO)-2.5 F -.834(AD-KEY \(8\))-.35 F/F1 10/Times-Bold@0 SF -.2(NA)72 96 S(ME).2 E /F2 10/Courier-Bold@0 SF(zfs-tpm1x-load-key)102 108 Q F0 2.5<8a6c>2.5 G -(oad tzpfms TPM1.X-encrypted ZFS dataset k)-2.5 E -.15(ey)-.1 G F1 -(SYNOPSIS)72 132 Q F2(zfs-tpm1x-load-key)102 144 Q F0([)3.333 E F2 -2.499 E F0(]).833 E/F3 10/Courier-Oblique@0 SF(dataset)2.5 E F1 -(DESCRIPTION)72 168 Q F0 1.155(After v)102 180 R(erifying)-.15 E F3 -(dataset)3.655 E F0 -.1(wa)3.655 G 3.655(se).1 G 1.155(ncrypted with) --3.655 F F2(tzpfms)3.655 E F0(back)3.655 E(end)-.1 E F1(TPM1.X)3.655 E -F0 1.156(will unseal the k)3.655 F 1.456 -.15(ey a)-.1 H 1.156 -(nd load it).15 F(into)102 192 Q F3(dataset)2.5 E F0(.)A .422 -(The user is prompted for)102 210 R 2.922<2c8c>-.4 G .422 -(rst, the SRK passphrase, set when taking o)-2.922 F .422 -(wnership, if it')-.25 F 2.921(sn)-.55 G .421(ot "well-kno)-2.921 F .421 -(wn" \(all)-.25 F -(zeroes\), then the additional passphrase set when creating the k)102 -222 Q -.15(ey)-.1 G 2.5(,i)-.5 G 2.5(fi)-2.5 G 2.5(tw)-2.5 G(as pro)-2.6 -E(vided.)-.15 E(See)102 240 Q/F4 10/Courier@0 SF(zfs-tpm1x-change-key) -2.5 E F0(\(8\) for a detailed description.)A F1(OPTIONS)72 264 Q F2 -103.666 276 Q F0 .178(Do a no-op/dry run, can be used e)119 288 R --.15(ve)-.25 G 2.678(ni).15 G 2.679(ft)-2.678 G .179(he k)-2.679 F .479 --.15(ey i)-.1 H 2.679(sa).15 G .179(lready loaded.)-2.679 F(Equi)5.179 E --.25(va)-.25 G .179(lent to).25 F F2 .179(zfs load-key)2.679 F F0 -.55 -('s)C F24.895 E F0(option.)119 300 Q F1 1.666 -(TPM1.X back-end con\214guration)72 324 R .625(TPM selection)84 336 R F0 -(The)102 348 Q F2(tzpfms)2.768 E F0 .267(suite connects to a local)2.767 -F F4(tcsd)2.767 E F0 .267(\(8\) process)B 1.666(\(a)4.433 G(t)-1.666 E -F4(localhost:30003)2.767 E F0 4.433(\)b)1.666 G 2.767(yd)-4.433 G(ef) --2.767 E 2.767(ault. Use)-.1 F .267(the en-)2.767 F(vironment v)102 360 -Q(ariable)-.25 E F4(TZPFMS_TPM1X)2.5 E F0 -(to specify a remote TCS hostname.)2.5 E .391(The T)102 378 R(rouSerS) --.35 E F4(tcsd)2.891 E F0 .391(\(8\) daemon will try)B F4(/dev/tpm0) -2.892 E F0 2.892(,t)C(hen)-2.892 E F4(/udev/tpm0)2.892 E F0 2.892(,t)C -(hen)-2.892 E F4(/dev/tpm)2.892 E F0 2.892(;b)C 2.892(yo)-2.892 G(ccup) --2.892 E(ying)-.1 E(one of the earlier ones with, for e)102 390 Q +(oad TPM1.X-encrypted ZFS dataset k)-2.5 E -.15(ey)-.1 G F1(SYNOPSIS)72 +132 Q F2(zfs-tpm1x-load-key)102 144 Q F0([)3.333 E F22.499 E F0(]) +.833 E/F3 10/Courier-Oblique@0 SF(dataset)2.5 E F1(DESCRIPTION)72 168 Q +F0 1.155(After v)102 180 R(erifying)-.15 E F3(dataset)3.655 E F0 -.1(wa) +3.655 G 3.655(se).1 G 1.155(ncrypted with)-3.655 F F2(tzpfms)3.655 E F0 +(back)3.655 E(end)-.1 E F1(TPM1.X)3.655 E F0 1.156(will unseal the k) +3.655 F 1.456 -.15(ey a)-.1 H 1.156(nd load it).15 F(into)102 192 Q F3 +(dataset)2.5 E F0(.)A .694 +(The user is \214rst prompted for the SRK passphrase, set when taking o) +102 210 R .693(wnership, if not "well-kno)-.25 F .693(wn" \(all ze-)-.25 +F(roes\); then for the additional passphrase, set when creating the k) +102 222 Q -.15(ey)-.1 G 2.5(,i)-.5 G 2.5(fo)-2.5 G(ne w)-2.5 E(as set.) +-.1 E(See)102 240 Q/F4 10/Courier@0 SF(zfs-tpm1x-change-key)2.5 E F0 +(\(8\) for a detailed description.)A F1(OPTIONS)72 264 Q F2103.666 +276 Q F0 .178(Do a no-op/dry run, can be used e)119 288 R -.15(ve)-.25 G +2.678(ni).15 G 2.679(ft)-2.678 G .179(he k)-2.679 F .479 -.15(ey i)-.1 H +2.679(sa).15 G .179(lready loaded.)-2.679 F(Equi)5.179 E -.25(va)-.25 G +.179(lent to).25 F F2 .179(zfs load-key)2.679 F F0 -.55('s)C F2 +4.895 E F0(option.)119 300 Q F1 1.666(TPM1.X back-end con\214guration)72 +324 R .625(TPM selection)84 336 R F0(The)102 348 Q F2(tzpfms)2.768 E F0 +.267(suite connects to a local)2.767 F F4(tcsd)2.767 E F0 .267 +(\(8\) process)B 1.666(\(a)4.433 G(t)-1.666 E F4(localhost:30003)2.767 E +F0 4.433(\)b)1.666 G 2.767(yd)-4.433 G(ef)-2.767 E 2.767(ault. Use)-.1 F +.267(the en-)2.767 F(vironment v)102 360 Q(ariable)-.25 E F4 +(TZPFMS_TPM1X)2.5 E F0(to specify a remote TCS hostname.)2.5 E .391 +(The T)102 378 R(rouSerS)-.35 E F4(tcsd)2.891 E F0 .391 +(\(8\) daemon will try)B F4(/dev/tpm0)2.892 E F0 2.892(,t)C(hen)-2.892 E +F4(/udev/tpm0)2.892 E F0 2.892(,t)C(hen)-2.892 E F4(/dev/tpm)2.892 E F0 +2.892(;b)C 2.892(yo)-2.892 G(ccup)-2.892 E(ying)-.1 E +(one of the earlier ones with, for e)102 390 Q (xample, shell redirection, a later one can be selected.)-.15 E F1 .625 (See also)84 414 R F0(The T)102 426 Q(rouSerS project page at)-.35 E F1 (https://sour)2.5 E(cef)-.18 E(or)-.25 E(ge.net/pr)-.1 E(ojects/tr)-.18 @@ -560,7 +558,8 @@ E(ousers)-.18 E F0(.)A 5.109(The TPM 1.2 main speci\214cation inde)102 -.15(ve)-.25 G 2.5(da).15 G(t)-2.5 E F1(https://lists.sr)2.5 E (.ht/~nabijaczleweli/tzpfms)-1 E F0(.)A F1 1.666(SEE ALSO)72 594 R (https://git.sr)102 606 Q(.ht/~nabijaczleweli/tzpfms)-1 E F0 -(tzpfms 0.1-7)72 750 Q(October 17, 2021)148.595 E(6)194.145 E 0 Cg EP +(tzpfms 0.1-10)72 750 Q(No)138.745 E -.15(ve)-.15 G(mber 10, 2021).15 E +(6)189.295 E 0 Cg EP %%Page: 7 7 %%BeginPageSetup BP @@ -588,19 +587,18 @@ F0(be TPM-2.0-compatible.)2.5 E(If)102 240 Q F3(dataset)3.42 E F0 -.1 (will be freed from the TPM.)102 252 R .382 (Otherwise, or in case of an error)5.382 F 2.882(,d)-.4 G .382 (ata required for manual interv)-2.882 F .382(ention will be)-.15 F -(printed to the standard error stream.)102 264 Q(Ne)102 282 Q .519 -(xt, a ne)-.15 F 3.019(ww)-.25 G .519(rapping k)-3.019 F .819 -.15(ey i) --.1 H 3.019(sb).15 G 3.019(eg)-3.019 G .519 -(enerated on the TPM, optionally back)-3.019 F .519(ed up)-.1 F 1.666 -(\(s)4.685 G(ee)-1.666 E F1(OPTIONS)3.02 E F0 -2.812 1.666(\), a)1.666 H -.52(nd sealed)-1.666 F .248 -(to a persistent object on the TPM under the o)102 294 R .248 -(wner hierarch)-.25 F .248(y; if there is a passphrase set on the o)-.05 -F .248(wner hierar)-.25 F(-)-.2 E(ch)102 306 Q 1.772 -.65(y, t)-.05 H -.472(he user is prompted for it; the user is al).65 F -.1(wa)-.1 G .472 -(ys prompted for an optional passphrase to protect the sealed).1 F -(object with.)102 318 Q(The follo)102 336 Q(wing properties are set on) --.25 E F3(dataset)2.5 E F0(:)A F1<83>122 348 Q F5 +(printed to the standard error stream.)102 264 Q(Ne)102 282 Q .197 +(xt, a ne)-.15 F 2.697(ww)-.25 G .197(rapping k)-2.697 F .497 -.15(ey i) +-.1 H 2.697(sg).15 G .197(enerated on the TPM, optionally back)-2.697 F +.197(ed up)-.1 F 1.666(\(s)4.363 G(ee)-1.666 E F1(OPTIONS)2.697 E F0 +-3.135 1.666(\), a)1.666 H .197(nd sealed to a)-1.666 F .504 +(persistent object on the TPM under the o)102 294 R .504(wner hierarch) +-.25 F .504(y; if there is a passphrase set on the o)-.05 F .503 +(wner hierarch)-.25 F -.65(y,)-.05 G .04 +(the user is prompted for it; the user is al)102 306 R -.1(wa)-.1 G .041 +(ys prompted for an optional passphrase to protect the sealed object).1 +F(with.)102 318 Q(The follo)102 336 Q(wing properties are set on)-.25 E +F3(dataset)2.5 E F0(:)A F1<83>122 348 Q F5 (xyz.nabijaczleweli:tzpfms.backend)2.5 E F0(=)A F1(TPM2)A<83>122 360 Q F5(xyz.nabijaczleweli:tzpfms.key)2.5 E F0(=)A F3 (ID of persistent object)A F5(tzpfms.backend)102 378 Q F0 3.203 @@ -652,7 +650,8 @@ F(This)5.505 E(back-up)191 630 Q F4(must)3.181 E F0 .681 .682(nt, the k).15 F .982 -.15(ey c)-.1 H(an).15 E(be loaded by running) 191 642 Q F2(zfs load-key)221 654 Q F3(dataset)6 E F5(<)6 E F3 (backup-file)6 E F1 1.666(TPM2 back-end con\214guration)72 678 R F0 -(tzpfms 0.1-7)72 750 Q(October 17, 2021)148.595 E(7)194.145 E 0 Cg EP +(tzpfms 0.1-10)72 750 Q(No)138.745 E -.15(ve)-.15 G(mber 10, 2021).15 E +(7)189.295 E 0 Cg EP %%Page: 8 8 %%BeginPageSetup BP @@ -691,8 +690,8 @@ E F0 .576(will be tried,)3.076 F(in order)102 168 Q 1.666(\(s)4.166 G -.15(ve)-.25 G 2.5(da).15 G(t)-2.5 E F1(https://lists.sr)2.5 E (.ht/~nabijaczleweli/tzpfms)-1 E F0(.)A F1 1.666(SEE ALSO)72 384 R F2 (tpm2_unseal)102 396 Q F0(\(1\))A F1(https://git.sr)102 414 Q -(.ht/~nabijaczleweli/tzpfms)-1 E F0(tzpfms 0.1-7)72 750 Q -(October 17, 2021)148.595 E(8)194.145 E 0 Cg EP +(.ht/~nabijaczleweli/tzpfms)-1 E F0(tzpfms 0.1-10)72 750 Q(No)138.745 E +-.15(ve)-.15 G(mber 10, 2021).15 E(8)189.295 E 0 Cg EP %%Page: 9 9 %%BeginPageSetup BP @@ -747,7 +746,8 @@ E F0 .575(will be tried,)3.076 F(in order)102 354 Q 1.666(\(s)4.166 G -.15(ve)-.25 G 2.5(da).15 G(t)-2.5 E F1(https://lists.sr)2.5 E (.ht/~nabijaczleweli/tzpfms)-1 E F0(.)A F1 1.666(SEE ALSO)72 570 R (https://git.sr)102 582 Q(.ht/~nabijaczleweli/tzpfms)-1 E F0 -(tzpfms 0.1-7)72 750 Q(October 17, 2021)148.595 E(9)194.145 E 0 Cg EP +(tzpfms 0.1-10)72 750 Q(No)138.745 E -.15(ve)-.15 G(mber 10, 2021).15 E +(9)189.295 E 0 Cg EP %%Page: 10 10 %%BeginPageSetup BP @@ -756,48 +756,51 @@ BP (System Manager')67.569 E 2.5(sM)-.55 G 62.569(anual ZFS-TPM2-LO)-2.5 F -.834(AD-KEY \(8\))-.35 F/F1 10/Times-Bold@0 SF -.2(NA)72 96 S(ME).2 E /F2 10/Courier-Bold@0 SF(zfs-tpm2-load-key)102 108 Q F0 2.5<8a6c>2.5 G -(oad tzpfms TPM2-encrypted ZFS dataset k)-2.5 E -.15(ey)-.1 G F1 -(SYNOPSIS)72 132 Q F2(zfs-tpm2-load-key)102 144 Q F0([)3.333 E F2 -2.499 E F0(]).833 E/F3 10/Courier-Oblique@0 SF(dataset)2.5 E F1 -(DESCRIPTION)72 168 Q F0 1.118(After v)102 180 R(erifying)-.15 E F3 -(dataset)3.618 E F0 -.1(wa)3.618 G 3.618(se).1 G 1.118(ncrypted with) --3.618 F F2(tzpfms)3.618 E F0(back)3.618 E(end)-.1 E F1(TPM2)3.618 E F0 -3.618(,u)C 1.118(nseals the k)-3.618 F 1.418 -.15(ey a)-.1 H 1.118 -(nd loads it into).15 F F3(dataset)102 192 Q F0(.)A(See)102 210 Q/F4 10 -/Courier@0 SF(zfs-tpm2-change-key)2.5 E F0 -(\(8\) for a detailed description.)A F1(OPTIONS)72 234 Q F2103.666 -246 Q F0 .179(Do a no-op/dry run, can be used e)119 258 R -.15(ve)-.25 G -2.679(ni).15 G 2.679(ft)-2.679 G .179(he k)-2.679 F .478 -.15(ey i)-.1 H -2.678(sa).15 G .178(lready loaded.)-2.678 F(Equi)5.178 E -.25(va)-.25 G -.178(lent to).25 F F2 .178(zfs load-key)2.678 F F0 -.55('s)C F2 -4.894 E F0(option.)119 270 Q F1 1.666(TPM1.X back-end con\214guration)72 -294 R .625(TPM selection)84 306 R F0(The)102 318 Q F2(tzpfms)2.767 E F0 -.267(suite connects to a local)2.767 F F4(tcsd)2.767 E F0 .267 +(oad TPM2-encrypted ZFS dataset k)-2.5 E -.15(ey)-.1 G F1(SYNOPSIS)72 +132 Q F2(zfs-tpm2-load-key)102 144 Q F0([)3.333 E F22.499 E F0(]) +.833 E/F3 10/Courier-Oblique@0 SF(dataset)2.5 E F1(DESCRIPTION)72 168 Q +F0 1.118(After v)102 180 R(erifying)-.15 E F3(dataset)3.618 E F0 -.1(wa) +3.618 G 3.618(se).1 G 1.118(ncrypted with)-3.618 F F2(tzpfms)3.618 E F0 +(back)3.618 E(end)-.1 E F1(TPM2)3.618 E F0 3.618(,u)C 1.118 +(nseals the k)-3.618 F 1.418 -.15(ey a)-.1 H 1.118(nd loads it into).15 +F F3(dataset)102 192 Q F0(.)A(The user is prompted for the additional p\ +assphrase, set when creating the k)102 210 Q -.15(ey)-.1 G 2.5(,i)-.5 G +2.5(fo)-2.5 G(ne w)-2.5 E(as set.)-.1 E(See)102 228 Q/F4 10/Courier@0 SF +(zfs-tpm2-change-key)2.5 E F0(\(8\) for a detailed description.)A F1 +(OPTIONS)72 252 Q F2103.666 264 Q F0 .179 +(Do a no-op/dry run, can be used e)119 276 R -.15(ve)-.25 G 2.679(ni).15 +G 2.679(ft)-2.679 G .179(he k)-2.679 F .478 -.15(ey i)-.1 H 2.678(sa).15 +G .178(lready loaded.)-2.678 F(Equi)5.178 E -.25(va)-.25 G .178(lent to) +.25 F F2 .178(zfs load-key)2.678 F F0 -.55('s)C F24.894 E F0 +(option.)119 288 Q F1 1.666(TPM1.X back-end con\214guration)72 312 R +.625(TPM selection)84 324 R F0(The)102 336 Q F2(tzpfms)2.767 E F0 .267 +(suite connects to a local)2.767 F F4(tcsd)2.767 E F0 .267 (\(8\) process)B 1.666(\(a)4.433 G(t)-1.666 E F4(localhost:30003)2.767 E F0 4.433(\)b)1.666 G 2.767(yd)-4.433 G(ef)-2.767 E 2.767(ault. Use)-.1 F -.268(the en-)2.767 F(vironment v)102 330 Q(ariable)-.25 E F4 +.268(the en-)2.767 F(vironment v)102 348 Q(ariable)-.25 E F4 (TZPFMS_TPM1X)2.5 E F0(to specify a remote TCS hostname.)2.5 E .392 -(The T)102 348 R(rouSerS)-.35 E F4(tcsd)2.892 E F0 .392 +(The T)102 366 R(rouSerS)-.35 E F4(tcsd)2.892 E F0 .392 (\(8\) daemon will try)B F4(/dev/tpm0)2.892 E F0 2.892(,t)C(hen)-2.892 E F4(/udev/tpm0)2.892 E F0 2.891(,t)C(hen)-2.891 E F4(/dev/tpm)2.891 E F0 2.891(;b)C 2.891(yo)-2.891 G(ccup)-2.891 E(ying)-.1 E -(one of the earlier ones with, for e)102 360 Q +(one of the earlier ones with, for e)102 378 Q (xample, shell redirection, a later one can be selected.)-.15 E F1 .625 -(See also)84 384 R F0(The T)102 396 Q(rouSerS project page at)-.35 E F1 +(See also)84 402 R F0(The T)102 414 Q(rouSerS project page at)-.35 E F1 (https://sour)2.5 E(cef)-.18 E(or)-.25 E(ge.net/pr)-.1 E(ojects/tr)-.18 E(ousers)-.18 E F0(.)A 5.108(The TPM 1.2 main speci\214cation inde)102 -414 R 7.609(xa)-.15 G(t)-7.609 E F1(https://trustedcomputinggr)7.609 E +432 R 7.609(xa)-.15 G(t)-7.609 E F1(https://trustedcomputinggr)7.609 E (oup.or)-.18 E(g/r)-.1 E(esour)-.18 E(ce/tpm-main-)-.18 E -(speci\214cation)102 426 Q F0(.)A F1 1.666(SPECIAL THANKS)72 450 R F0 -1.6 -.8(To a)102 462 T(ll who support further de).8 E -.15(ve)-.25 G -(lopment, in particular:).15 E F1<83>122 474 Q F0(ThePhD)2.5 E F1<83>122 -486 Q F0(Embark Studios)2.5 E F1(REPOR)72 510 Q 1.666(TING B)-.4 F(UGS) --.1 E(https://todo.sr)102 522 Q(.ht/~nabijaczleweli/tzpfms)-1 E F4 -(~nabijaczleweli/tzpfms@lists.sr.ht)102 540 Q F0 2.5(,a)C(rchi)-2.5 E +(speci\214cation)102 444 Q F0(.)A F1 1.666(SPECIAL THANKS)72 468 R F0 +1.6 -.8(To a)102 480 T(ll who support further de).8 E -.15(ve)-.25 G +(lopment, in particular:).15 E F1<83>122 492 Q F0(ThePhD)2.5 E F1<83>122 +504 Q F0(Embark Studios)2.5 E F1(REPOR)72 528 Q 1.666(TING B)-.4 F(UGS) +-.1 E(https://todo.sr)102 540 Q(.ht/~nabijaczleweli/tzpfms)-1 E F4 +(~nabijaczleweli/tzpfms@lists.sr.ht)102 558 Q F0 2.5(,a)C(rchi)-2.5 E -.15(ve)-.25 G 2.5(da).15 G(t)-2.5 E F1(https://lists.sr)2.5 E -(.ht/~nabijaczleweli/tzpfms)-1 E F0(.)A F1 1.666(SEE ALSO)72 564 R -(https://git.sr)102 576 Q(.ht/~nabijaczleweli/tzpfms)-1 E F0 -(tzpfms 0.1-7)72 750 Q(October 17, 2021)148.595 E(10)189.145 E 0 Cg EP +(.ht/~nabijaczleweli/tzpfms)-1 E F0(.)A F1 1.666(SEE ALSO)72 582 R +(https://git.sr)102 594 Q(.ht/~nabijaczleweli/tzpfms)-1 E F0 +(tzpfms 0.1-10)72 750 Q(No)138.745 E -.15(ve)-.15 G(mber 10, 2021).15 E +(10)184.295 E 0 Cg EP %%Trailer end %%EOF diff --git a/zfs-tpm-list.8 b/zfs-tpm-list.8 index 0623148..9f72905 100644 --- a/zfs-tpm-list.8 +++ b/zfs-tpm-list.8 @@ -1,9 +1,9 @@ .\" SPDX-License-Identifier: MIT . -.Dd October 17, 2021 +.Dd November 10, 2021 .ds doc-volume-operating-system .Dt ZFS-TPM-LIST 8 -.Os tzpfms 0.1-7 +.Os tzpfms 0.1-10 . .Sh NAME .Nm zfs-tpm-list @@ -50,18 +50,15 @@ program or and .Nm zfs Cm inherit \(em if the key becomes unloaded, they will require restoration from back-up. -However, they should never occur, unless something went terribly wrong with the dataset properties. +However, this should never occur, unless something went horribly wrong with the dataset properties. .Pp -If no datasets are specified, lists all matching encryption roots. -The default filter is to list all roots managed by +If no datasets are specified, all matching encryption roots are listed \(em by default, those managed by .Nm tzpfms . -.Fl ab -can be used to either list all roots or only ones backed by a particular end, respectively. . .Sh OPTIONS .Bl -tag -compact -width "-b back-end" .It Fl H -Scripting mode \(em do not print headers and separate fields by a single tab instead of columnating with spaces. +Scripting mode \(em remove headers and separate fields by a single tab instead of columnating them with spaces. .Pp .It Fl r Recurse into all descendants of specified datasets. @@ -76,9 +73,8 @@ Default: List all encryption roots, even ones not managed by .Nm tzpfms . .It Fl b Ar back-end -List only encryption roots with -.Ar tzpfms -back-end +List only encryption roots with the specified +.Nm tzpfms .Ar back-end . .Pp .It Fl l diff --git a/zfs-tpm-list.8.html b/zfs-tpm-list.8.html index f791972..fb776b8 100644 --- a/zfs-tpm-list.8.html +++ b/zfs-tpm-list.8.html @@ -71,20 +71,18 @@ zfs change-key and zfs inherit — if the key becomes unloaded, they will require restoration from back-up. However, - they should never occur, unless something went terribly wrong with the + this should never occur, unless something went horribly wrong with the dataset properties.

-

If no datasets are specified, lists all matching encryption roots. - The default filter is to list all roots managed by - tzpfms. -ab can be used to - either list all roots or only ones backed by a particular end, - respectively.

+

If no datasets are specified, all matching encryption roots are + listed — by default, those managed by + tzpfms.

-
Scripting mode — do not print headers and separate fields by a - single tab instead of columnating with spaces. +
Scripting mode — remove headers and separate fields by a single tab + instead of columnating them with spaces.

@@ -100,8 +98,8 @@ tzpfms.
back-end
-
List only encryption roots with tzpfms back-end - back-end. +
List only encryption roots with the specified + tzpfms back-end.

@@ -170,8 +168,8 @@ owo/enc TPM1.X available yes - - + +
October 17, 2021tzpfms 0.1-7November 10, 2021tzpfms 0.1-10
diff --git a/zfs-tpm1x-change-key.8 b/zfs-tpm1x-change-key.8 index 2ab4905..057693f 100644 --- a/zfs-tpm1x-change-key.8 +++ b/zfs-tpm1x-change-key.8 @@ -1,9 +1,9 @@ .\" SPDX-License-Identifier: MIT . -.Dd October 17, 2021 +.Dd November 10, 2021 .ds doc-volume-operating-system .Dt ZFS-TPM1X-CHANGE-KEY 8 -.Os tzpfms 0.1-7 +.Os tzpfms 0.1-10 . .Sh NAME .Nm zfs-tpm1x-change-key @@ -38,11 +38,11 @@ and the back-end was used, the metadata will be silently cleared. Otherwise, or in case of an error, data required for manual intervention will be printed to the standard error stream. .Pp -Next, a new wrapping key is be generated on the TPM, optionally backed up +Next, a new wrapping key is generated on the TPM, optionally backed up .Pq see Sx OPTIONS , and sealed on the TPM; the user is prompted for an optional passphrase to protect the key with, -and for the SRK passphrase, set when taking ownership, if it is not "well-known" (all zeroes). +and for the SRK passphrase, set when taking ownership, if not "well-known" (all zeroes). .Pp The following properties are set on .Ar dataset : diff --git a/zfs-tpm1x-change-key.8.html b/zfs-tpm1x-change-key.8.html index e6acf45..bb77293 100644 --- a/zfs-tpm1x-change-key.8.html +++ b/zfs-tpm1x-change-key.8.html @@ -49,10 +49,10 @@ used, the metadata will be silently cleared. Otherwise, or in case of an error, data required for manual intervention will be printed to the standard error stream.

-

Next, a new wrapping key is be generated on the TPM, optionally +

Next, a new wrapping key is generated on the TPM, optionally backed up (see OPTIONS), and sealed on the TPM; the user is prompted for an optional passphrase to protect the key - with, and for the SRK passphrase, set when taking ownership, if it is not + with, and for the SRK passphrase, set when taking ownership, if not "well-known" (all zeroes).

The following properties are set on dataset:

@@ -165,8 +165,8 @@ - - + +
October 17, 2021tzpfms 0.1-7November 10, 2021tzpfms 0.1-10
diff --git a/zfs-tpm1x-clear-key.8 b/zfs-tpm1x-clear-key.8 index e311c95..772f5eb 100644 --- a/zfs-tpm1x-clear-key.8 +++ b/zfs-tpm1x-clear-key.8 @@ -1,9 +1,9 @@ .\" SPDX-License-Identifier: MIT . -.Dd October 17, 2021 +.Dd November 10, 2021 .ds doc-volume-operating-system .Dt ZFS-TPM1X-CLEAR-KEY 8 -.Os tzpfms 0.1-7 +.Os tzpfms 0.1-10 . .Sh NAME .Nm zfs-tpm1x-clear-key diff --git a/zfs-tpm1x-clear-key.8.html b/zfs-tpm1x-clear-key.8.html index 57e3689..4763001 100644 --- a/zfs-tpm1x-clear-key.8.html +++ b/zfs-tpm1x-clear-key.8.html @@ -105,8 +105,8 @@ - - + +
October 17, 2021tzpfms 0.1-7November 10, 2021tzpfms 0.1-10
diff --git a/zfs-tpm1x-load-key.8 b/zfs-tpm1x-load-key.8 index f4d509c..a683a3d 100644 --- a/zfs-tpm1x-load-key.8 +++ b/zfs-tpm1x-load-key.8 @@ -1,13 +1,13 @@ .\" SPDX-License-Identifier: MIT . -.Dd October 17, 2021 +.Dd November 10, 2021 .ds doc-volume-operating-system .Dt ZFS-TPM1X-LOAD-KEY 8 -.Os tzpfms 0.1-7 +.Os tzpfms 0.1-10 . .Sh NAME .Nm zfs-tpm1x-load-key -.Nd load tzpfms TPM1.X-encrypted ZFS dataset key +.Nd load TPM1.X-encrypted ZFS dataset key .Sh SYNOPSIS .Nm .Op Fl n @@ -23,8 +23,8 @@ backend will unseal the key and load it into .Ar dataset . .Pp -The user is prompted for, first, the SRK passphrase, set when taking ownership, if it's not "well-known" (all zeroes), -then the additional passphrase set when creating the key, if it was provided. +The user is first prompted for the SRK passphrase, set when taking ownership, if not "well-known" (all zeroes); +then for the additional passphrase, set when creating the key, if one was set. .Pp See .Xr zfs-tpm1x-change-key 8 diff --git a/zfs-tpm1x-load-key.8.html b/zfs-tpm1x-load-key.8.html index 0d6ebb0..d87cf65 100644 --- a/zfs-tpm1x-load-key.8.html +++ b/zfs-tpm1x-load-key.8.html @@ -21,7 +21,7 @@

zfs-tpm1x-load-key — - load tzpfms TPM1.X-encrypted ZFS dataset key

+ load TPM1.X-encrypted ZFS dataset key

@@ -38,9 +38,9 @@ tzpfms backend will unseal the key and load it into dataset.

-

The user is prompted for, first, the SRK passphrase, set when - taking ownership, if it's not "well-known" (all zeroes), then the - additional passphrase set when creating the key, if it was provided.

+

The user is first prompted for the SRK passphrase, set when taking + ownership, if not "well-known" (all zeroes); then for the + additional passphrase, set when creating the key, if one was set.

See zfs-tpm1x-change-key(8) for a detailed description.

@@ -106,8 +106,8 @@ - - + +
October 17, 2021tzpfms 0.1-7November 10, 2021tzpfms 0.1-10
diff --git a/zfs-tpm2-change-key.8 b/zfs-tpm2-change-key.8 index f57628a..c59ff10 100644 --- a/zfs-tpm2-change-key.8 +++ b/zfs-tpm2-change-key.8 @@ -1,9 +1,9 @@ .\" SPDX-License-Identifier: MIT . -.Dd October 17, 2021 +.Dd November 10, 2021 .ds doc-volume-operating-system .Dt ZFS-TPM2-CHANGE-KEY 8 -.Os tzpfms 0.1-7 +.Os tzpfms 0.1-10 . .Sh NAME .Nm zfs-tpm2-change-key @@ -38,7 +38,7 @@ and the back-end was used, the previous key will be freed from the TPM. Otherwise, or in case of an error, data required for manual intervention will be printed to the standard error stream. .Pp -Next, a new wrapping key is be generated on the TPM, optionally backed up +Next, a new wrapping key is generated on the TPM, optionally backed up .Pq see Sx OPTIONS , and sealed to a persistent object on the TPM under the owner hierarchy; if there is a passphrase set on the owner hierarchy, the user is prompted for it; diff --git a/zfs-tpm2-change-key.8.html b/zfs-tpm2-change-key.8.html index 1d09a82..f2ebd78 100644 --- a/zfs-tpm2-change-key.8.html +++ b/zfs-tpm2-change-key.8.html @@ -49,7 +49,7 @@ used, the previous key will be freed from the TPM. Otherwise, or in case of an error, data required for manual intervention will be printed to the standard error stream.

-

Next, a new wrapping key is be generated on the TPM, optionally +

Next, a new wrapping key is generated on the TPM, optionally backed up (see OPTIONS), and sealed to a persistent object on the TPM under the owner hierarchy; if there is a passphrase set on the owner hierarchy, the user is prompted for it; the user @@ -178,8 +178,8 @@ - - + +
October 17, 2021tzpfms 0.1-7November 10, 2021tzpfms 0.1-10
diff --git a/zfs-tpm2-clear-key.8 b/zfs-tpm2-clear-key.8 index a8b1dac..83f5123 100644 --- a/zfs-tpm2-clear-key.8 +++ b/zfs-tpm2-clear-key.8 @@ -1,9 +1,9 @@ .\" SPDX-License-Identifier: MIT . -.Dd October 17, 2021 +.Dd November 10, 2021 .ds doc-volume-operating-system .Dt ZFS-TPM2-CLEAR-KEY 8 -.Os tzpfms 0.1-7 +.Os tzpfms 0.1-10 . .Sh NAME .Nm zfs-tpm2-clear-key diff --git a/zfs-tpm2-clear-key.8.html b/zfs-tpm2-clear-key.8.html index f67cadb..11b32ba 100644 --- a/zfs-tpm2-clear-key.8.html +++ b/zfs-tpm2-clear-key.8.html @@ -120,8 +120,8 @@ - - + +
October 17, 2021tzpfms 0.1-7November 10, 2021tzpfms 0.1-10
diff --git a/zfs-tpm2-load-key.8 b/zfs-tpm2-load-key.8 index fe4abe8..9e153b9 100644 --- a/zfs-tpm2-load-key.8 +++ b/zfs-tpm2-load-key.8 @@ -1,13 +1,13 @@ .\" SPDX-License-Identifier: MIT . -.Dd October 17, 2021 +.Dd November 10, 2021 .ds doc-volume-operating-system .Dt ZFS-TPM2-LOAD-KEY 8 -.Os tzpfms 0.1-7 +.Os tzpfms 0.1-10 . .Sh NAME .Nm zfs-tpm2-load-key -.Nd load tzpfms TPM2-encrypted ZFS dataset key +.Nd load TPM2-encrypted ZFS dataset key .Sh SYNOPSIS .Nm .Op Fl n @@ -23,6 +23,8 @@ backend unseals the key and loads it into .Ar dataset . .Pp +The user is prompted for the additional passphrase, set when creating the key, if one was set. +.Pp See .Xr zfs-tpm2-change-key 8 for a detailed description. diff --git a/zfs-tpm2-load-key.8.html b/zfs-tpm2-load-key.8.html index 9304ba6..a5a5d2c 100644 --- a/zfs-tpm2-load-key.8.html +++ b/zfs-tpm2-load-key.8.html @@ -21,7 +21,7 @@

zfs-tpm2-load-key — - load tzpfms TPM2-encrypted ZFS dataset key

+ load TPM2-encrypted ZFS dataset key

@@ -38,6 +38,8 @@ tzpfms backend , unseals the key and loads it into dataset.

+

The user is prompted for the additional passphrase, set when + creating the key, if one was set.

See zfs-tpm2-change-key(8) for a detailed description.

@@ -103,8 +105,8 @@ - - + +
October 17, 2021tzpfms 0.1-7November 10, 2021tzpfms 0.1-10