dm-crypt + LUKSコンテナーにラベルを設定するにはどうすればよいですか?


12

新しいUSBフラッシュドライブを受け取り、それに2つの暗号化パーティションを設定しました。私はからdm-crypt(LUKSモード)を使用しましたcryptsetup。暗号化されていないパーティションを追加すると、ドライブの構造は次のようになります。

  • /dev/sdb1、暗号化され、「パーティション1」というラベルの付いたext4ファイルシステムを非表示にします。
  • /dev/sdb2、暗号化され、「パーティション2」というラベルの付いた別のext4ファイルシステムを非表示にします。
  • /dev/sdb3「パーティション3」というラベルの付いた、明確で目に見えるext4ファイルシステム。

ラベルはext4ファイルシステムに添付されているため、パーティションが復号化されていない限り、最初の2つは完全に非表示のままです。つまり、当面の間、LUKSコンテナーにはラベルがありません。これは、GNOME(自動マウント)を使用する場合に特に煩わしいです。この場合、ロックを解除するまで、パーティションは「x GB暗号化」および「y GB暗号」と表示されます。

これは実際にはブロッキングの問題ではありませんが、ラベルが本当に好きで、パーティションがまだ暗号化されている場合でもラベルが表示されるようにしたいので、非常に迷惑です。

したがって、ラベルをext4ファイルシステムに添付するのと同じように、dm-crypt + LUKSコンテナーにラベルを添付する方法はありますか?dm-crypt + LUKSヘッダーにはそのための余地がありますか?その場合、ラベルを設定するにはどうすればよいですか?

解読前にext4ラベルを公開したくないので注意してください。これはばかげています。コンテナーに他のラベルを追加したいのですが、ext4ラベルが非表示になっているときに表示される可能性があります。


USBドライブはMBRまたはGPTでパーティション分割されましたか?GPTパーティションにラベルを付けると、役立つ場合があると思います。
garethTheRed 2015

1
私はうそをつきました(かなり部分的に)-USBスティックにGPTパーティションを作成し、gdiskそのパーティションにラベルを付けていました。次に、そのパーティションにファイルシステムを作成したとき、GNOMEはそれを「501 MBボリューム」としてのみ認識しました。したがって、ラベルを付けることはできますが、GNOMEはパーティションラベルを認識しません。ファイルシステムのラベルのみ。
garethTheRed 2015

1
@garethTheRedあなたは私がそれと同時にチェックした!GPTを使用してドライブを再フォーマットし(fdiskデフォルトのMBRモードを使用していた)、パーティション名がGNOMEに表示されません。ただし、質問は実際にはGNOME固有のものではなく、GPT名のトリックはより低いレベルで機能しますが、これは私が説明した問題に対する有効な解決策である可能性があります。誰かがLUKSレベルで機能するソリューションがあるかどうかを確認するまでもう少し待ちますが、GPTパーティション名が有効な答えのコンテンツになる可能性があると思います。
ジョンWHスミス

1
LUKSボリュームには名前がありません。デバイスがマップされている場合にのみ割り当てられます。これは、キーを指定するまで発生しません。唯一の解決策は、ボリュームに「物理的に」接続されていない名前をGnomeに伝える方法を見つけるか、または包含ボリューム(パーティションなど)に名前を付けることです。PSこの質問はここで問題ありません。セキュリティに関するものではないため、たまたまセキュリティ関連のことを行うエンドユーザーツールを使用することに関するものであるため、情報セキュリティについては話題外です。
Gilles「SO-邪悪なことをやめよ」

パーティションラベルを設定すると、適切な名前のシンボリックリンクがに表示され/dev/disk/by-partlabelます。私はそれがそこに見えないツールには役に立たないことを知っていますが、スクリプトなどで使用できる安定したパスを提供します。
asciiphil 2016

回答:


2

解決策は、このようなudevルールを作成することだと思います。

KERNEL=="sd*", ENV{ID_FS_UUID}=="your-sdb1-uuid", ENV{ID_FS_LABEL}="Partition_1", ENV{ID_FS_LABEL_ENC}="Partition_1"
KERNEL=="sd*", ENV{ID_FS_UUID}=="your-sdb2-uuid", ENV{ID_FS_LABEL}="Partition_2", ENV{ID_FS_LABEL_ENC}="Partition_2"

1
魅力的な作品!リムーバブルメディアに情報を保存するソリューションを使用したいと思っていたとしても、結局のところ、システム固有の構成にこだわる必要があります。その上、GNOMEが関与するようになると、質問はかなり具体的になりました。その動作に依存しない解決策を誰かが見つけて本当にうれしいです。
ジョンWHスミス

4

コンテナのラベルを変更する恒久的な解決策として、次を使用します:

sudo cryptsetup config /dev/sdb1 --label YOURLABEL

1
これはLUKS2ヘッダーでのみ機能することを明記する価値があるかもしれませんが、間違いなく最良の解決策
Torin

3

この方法は私にとってはうまくいったようです:http : //www.cyberciti.biz/faq/linux-partition-howto-set-labels/

したがって、EXTファイルシステムを使用している場合(ここではext4を使用しています):

  1. LUKSパーティションのロックを解除します。
  2. ロック解除されたファイルシステムの名前を設定します(LUKSパーティションではありません)。

    e2label <path> <name>
    

    一般path的には/dev/mapper/<something>、cryptsetupを使用する場合です。私はudisksを使用していますので、しかし、私の場合には、それがあった/dev/dm-x、どこx数です。

この方法では、必要に応じてリムーバブルメディアに情報を保存すると思いますが、まだテストしていません。


2
ありがとうございます。残念ながら、これはLUKSコンテナーでは機能しません。LUKSコンテナーは、内部ファイルシステム(ラベルを含む)に関するあらゆる情報を隠します。ここでの考え方は、名前はコンテナがまだ暗号化されている場合でも表示されますので、こと、その中に隠されていないものをLUKSコンテナに名前を付けました:P(私の2番目の段落を参照してください)
ジョン・WHスミス

申し訳ありませんが、LUKSパーティションではなく、内部ファイルシステムにラベルを付けたいと思いました。多分それがこの質問にたどり着いたときに私がやりたかったことだからです。= P
誰か

0

@kristóf-szalayと@someoneの回答の組み合わせが私が欲しいものであることがわかり、いくつかのメモを追加しました。

具体的には:

sudo cryptsetup config /dev/sdb1 --label YOURLABEL

ITO元の質問。これにより、DMのアイコンがYOURLABELに表示されます

クリプトをダブルクリックして開くと、次のようにマウントされます

/media/user/uuid
eg:
/media/fred/e54e89a-.....

これは、CLIを使用している場合など、混乱を引き起こす可能性があります。

行うことにより:

e2label <path> <name>

その名前は、マウントされたパスが< name >の値をとるようにします。

/ media / fred / name

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.