LUKSパーティションのロック解除エラー(アクティベータデバイスの障害:ファイル存在)

LUKSパーティションのロック解除エラー(アクティベータデバイスの障害:ファイル存在)

Manjaroを使用するシステムでKDE Dolphinを使用してLuks暗号化ディスクをロック解除するのに問題があります。

この質問は問題ではありません。この問題は再起動すると解決することができますが、時には不便なこともあるので、知っておくと役に立ちます。なぜこの質問が最初に浮上します。

だから、再起動後に初めてデバイスのロックを解除したとき、すべてが大丈夫でした。システムを取り外すと、次にも機能します。問題は、デバイスを接続してパスワードを入力した後に次のエラーが発生することです。

「ホーム」にアクセス中にエラーが発生しました。システムの応答:要求されたジョブが失敗しました。 /dev/sdxy ロック解除中のエラー: デバイスをアクティブにできません: ファイルが存在します。

ただし、このファイルは表示されずdf -h、マウントされず/etc/fstab、接続時に常にマウントおよびロック解除されます。このコマンドは、fuser関連内容を表示せずにlsof次を返します。

lsof: WARNING: can't stat() fuse.gvfsd-fuse file system /run/user/1000/gvfs
      Output information may be incomplete.
lsof: WARNING: can't stat() fuse file system /run/user/1000/doc
      Output information may be incomplete.

実際にこのフォルダ(ps aux | grep 1000)を使用するプロセスがいくつか見られますが、これが実際に問題を解決するのに役立つかどうかわかりません。

1779 ?        Sl     0:03 /usr/lib/gvfsd-fuse /run/user/1000/gvfs -f -o big_writes
1847 ?        S      0:03 file.so [kdeinit5] file local:/run/user/1000/klaunchermRxLKs.1.slave-socket local:/run/user/1000/kded5IKggHu.1.slave-socket
23434 ?        S      0:00 file.so [kdeinit5] file local:/run/user/1000/klauncherDwiyfV.1.slave-socket local:/run/user/1000/dolphinaVwzoi.58.slave-socket

これらのプロセスを終了すると役に立つと思いますが、安全かどうかはわかりません。知っていることが分からないよりも優れているため、リスクを負うことはできません。どんなアイデアがありますか?

編集するdmsetup info:との出力dmsetup table

DM設定ガイド

Name:              luks-92bde790-5ca6-441b-bad3-5c3163292c8b
State:             ACTIVE
Read Ahead:        256
Tables present:    LIVE
Open count:        0
Event number:      0
Major, minor:      254, 1
Number of targets: 1
UUID: CRYPT-LUKS1-92bde7905ca6441bbad35c3163292c8b-luks-92bde790-5ca6-441b-bad3-5c3163292c8b

Name:              luks-1f919383-2d4a-44e2-b28e-21bffd11dd6c
State:             ACTIVE
Read Ahead:        256
Tables present:    LIVE
Open count:        1
Event number:      0
Major, minor:      254, 0
Number of targets: 1
UUID: CRYPT-LUKS1-1f9193832d4a44e2b28e21bffd11dd6c-luks-1f919383-2d4a-44e2-b28e-21bffd11dd6c

DM設定テーブル

luks-92bde790-5ca6-441b-bad3-5c3163292c8b: 0 4294963200 crypt aes-xts-plain64 0000000000000000000000000000000000000000000000000000000000000000 0 8:33 4096
luks-1f919383-2d4a-44e2-b28e-21bffd11dd6c: 0 3906401473 crypt aes-xts-plain64 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0 8:2 4096

答え1

出力を確認した後にdmsetup ls古いデバイスがあることが確認されたら、デバイスを削除できます。dmsetup removeデバイスが実際に使用されていないことを慎重に確認してから削除することをお勧めします。

私も同じ問題があり、これを実行した後、暗号化されたUSBハードドライブを再度ロック解除してマウントできました。

# dmsetup ls --tree
luks-f53274db-3ede-4a27-9aa6-2525d9305f94 (254:5)
 `- (8:34)

# ls -l /dev/mapper/
total 0
crw------- 1 root root 10, 236 Nov 24 15:22 control
lrwxrwxrwx 1 root root       7 Nov 27 09:42 luks-f53274db-3ede-4a27-9aa6-2525d9305f94 -> ../dm-5

# dmsetup remove /dev/dm-5

答え2

同じエラーが発生しました(ManjaroでもKDEを使用)。 USBデバイスにLUKSボリュームがありますが、そのボリュームがコンピュータから完全に削除されていません。 USB デバイスを再接続すると、LUKS ボリュームはロック解除を拒否します。

# udisksctl unlock -b /dev/sdg1
Passphrase:
Error unlocking /dev/sdg1: GDBus.Error:org.freedesktop.UDisks2.Error.Failed: Error unlocking /dev/sdg1: Failed to activate device: File exists

デバイスのロックを解除しようとしていますが、ロックを解除する/dev/sdg1方法がわかりません。@マーティンR問題のあるボリュームUUIDが識別されました(問題のない他のLUKSボリュームの代わりに)。彼らの答え具体的には、項目/etc/fstabに記載されている項目と異なるUUIDがあるためです/dev/mapper

# grep /mount/point /etc/fstab
UUID=33333333-3333-3333-3333-333333333333 /mount/point ext4 defaults 0 0
# ls -lah /dev/mapper
total 0
crw------- 1 root root 10, 236 Oct 10 06:08 control
lrwxrwxrwx 1 root root       7 Oct 10 06:08 luks-11111111-1111-1111-1111-111111111111 -> ../dm-1
lrwxrwxrwx 1 root root       7 Oct 10 17:41 luks-22222222-2222-2222-2222-222222222222 -> ../dm-2
lrwxrwxrwx 1 root root       7 Oct 10 06:08 luks-00000000-0000-0000-0000-000000000000 -> ../dm-0

udisksctlデバイスパーティショニングの使用に問題があったLUKSボリュームUUIDを確認できました。

# udisksctl info -b /dev/sdg1 | grep 'IdUUID'
IdUUID:                     22222222-2222-2222-2222-222222222222

この時点で、どのdmオブジェクトを整理する必要があるのか​​が明らかになりました。

# dmsetup ls
luks-00000000-0000-0000-0000-000000000000       (254:0)
luks-11111111-1111-1111-1111-111111111111       (254:1)
luks-22222222-2222-2222-2222-222222222222       (254:2)
# dmsetup remove /dev/dm-2

その後、ロックを解除して正常にインストールします。

# udisksctl unlock -b /dev/sdg1
Passphrase:
Unlocked /dev/sdg1 as /dev/dm-2.
# mount /mount/point

答え3

私が見るのに問題があります/etc/crypttab

私はいくつかのチュートリアルに従いましたが、実際には理解していなかったので、私は次のようなファイルを作成しました。

secret UUID=AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA /root/AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA.lukskey
secret UUID=BBBBBBBB-BBBB-BBBB-BBBB-BBBBBBBBBBBB /root/BBBBBBBB-BBBB-BBBB-BBBB-BBBBBBBBBBBB.lukskey

上記の構成により、システムは/dev/mapper/secretすべての行に対して生成しようとしますが、2行目では失敗するため、エラーが発生します。

次のように変更しても大丈夫です。

luks-AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA UUID=AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA /root/AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA.lukskey
luks-BBBBBBBB-BBBB-BBBB-BBBB-BBBBBBBBBBBB UUID=BBBBBBBB-BBBB-BBBB-BBBB-BBBBBBBBBBBB /root/BBBBBBBB-BBBB-BBBB-BBBB-BBBBBBBBBBBB.lukskey

/dev/mapper/luks-AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAAこれにより、およびが生成されました/dev/mapper/luks-BBBBBBBB-BBBB-BBBB-BBBB-BBBBBBBBBBBB

関連情報