ディスクが接続されたときのみ luks パーティションを自動的にマウントする方法

ディスクが接続されたときのみ luks パーティションを自動的にマウントする方法

次のようなシナリオがあります。

ラップトップ (Fedora Core 17) から外部の暗号化された (luks) ハード ディスクに一部のデータを自動的にバックアップしたいです。ディスクは、ラップトップの暗号化されたルート パーティションにあるキー ファイルで開くことができます。ハード ディスクはドッキング ステーションに接続されているため、自宅にいるときだけ「存在」します (ラップトップが稼働している時間の約半分)。

1 つの例外を除いて、すべてが希望どおりに設定されています。

ハードディスクが存在する場合にのみ、起動時にハードディスクを自動的にマウントする適切な方法がありません。

これを crypttab と fstab に追加しないとnoauto、起動時にマウントしようとして、非常に時間がかかり、存在しない場合はエラー メッセージが表示されます。noauto を追加すると、自動的にマウントされなくなります ;)

luks/crypttab を次のように設定する方法はありますか?

  • ディスクが存在するかどうかを確認する
  • はいの場合: 復号化/マウント
  • いいえの場合: やめてください

答え1

正確なファイル名とコマンドを含む既成の回答はありませんが、/etc/init.d/local などの後から実行される init スクリプトに、/dev/disk/by-* ディレクトリの 1 つを参照して LUKS パーティションが使用可能かどうかを確認し、使用可能であれば続行する何かを追加します。

おそらく次のようなものでしょう:

start_luks_backup_disk() {
  cryptdisks_start yourlukspartition && \
  mount /mnt /dev/mapper/yourlukspartition
}

test -b /dev/disk/by-uuid/8317fb0e-0707-11e2-8a07-5b563062136f \
&& start_luks_backup_disk

関連情報