7.2. 暗号化ボリュームのマウント

インストール中に暗号化ボリュームを作成し、マウントポイントに割り当てると、そのボリュームに対して、起動中にパスフレーズを入力するように訊いてきます。実際の手順は、dm-crypt と loop-AES では若干異なります。

7.2.1. dm-crypt

dm-crypt で暗号化したパーティションでは、起動中に以下のようなプロンプトが表示されます。

Starting early crypto disks... part_crypt(starting)
Enter LUKS passphrase:

プロンプトの最初の行の part は、たとえば sda2 や md0 のような、基本的なパーティション名です。おそらく、ボリュームごとに パスフレーズを入力することに、違和感を覚えるのではないでしょうか。これは /home/var それぞれでパスフレーズを入力させられるのでしょうか? もちろんそうです。暗号化したボリュームが一つだけなら、話は簡単で、セットアップのときに入力したパスフレーズを入力するだけです。インストール時に、暗号化ボリュームを少なくとも一つは設定しているなら、「暗号化ボリュームの設定」 の最後のステップに書き留めたメモが役に立つでしょう。以前の part_crypt とマウントポイントの間のマッピングを記録しない場合、新しいシステムの /etc/crypttab/etc/fstab にあります。

暗号化されたルートファイルシステムがマウントされる時は、プロンプトは少し違って見えるかもしれません。それは、システムの起動に使用される initrd を生成するために、どの initramfs ジェネレータが使われたかによります。以下の例は、initramfs-tools で生成された initrd の場合です。

Begin: Mounting root file system... ...
Begin: Running /scripts/local-top ...
Enter LUKS passphrase:

パスフレーズの入力時には、入力した文字 (やアスタリスク) は表示されません。パスフレーズを間違えた場合、訂正するために 2 回までは試行できます。入力を 3 回間違えると、そのボリュームをスキップして、次のファイルシステムをマウントしようとします。詳細は、「トラブルシュート」 をご覧ください。

パスフレーズをすべて入力すると、通常と同様に起動を継続します。

7.2.2. loop-AES

loop-AES で暗号化したパーティションでは、起動中に以下のようなプロンプトが表示されます。

Checking loop-encrypted file systems.
Setting up /dev/loopX (/mountpoint)
Password:

パスフレーズの入力時には、入力した文字 (やアスタリスク) は表示されません。パスフレーズを間違えた場合、訂正するために 2 回までは試行できます。入力を 3 回間違えると、そのボリュームをスキップして、次のファイルシステムをマウントしようとします。詳細は、「トラブルシュート」 をご覧ください。

パスフレーズをすべて入力すると、通常と同様に起動を継続します。

7.2.3. トラブルシュート

パスフレーズを間違えて、暗号化ボリュームをマウントできなかった場合、ブート後に手動でマウントする必要があります。以下の状況が考えられます。

  • まずはじめの状況は、ルートパーティションに関することです。正しくマウントできないとブートプロセスが停止し、再起動してもう一度行わなければなりません。

  • 最も簡単な状況は、/home/srv といったデータを保持している暗号化ボリュームの場合です。この場合は、ブート後に手動でマウントしてあげるだけです。loop-AES では、以下のように 1 ステップです。

    # mount /mount_point
    Password:
    

    /mount_point は、特定のディレクトリに置き換えてください。(例 /home) 通常のマウントと違うのは、そのボリューム用にパスフレーズを入力するよう促される、ということだけです。

    dm-crypt の場合は少しトリッキーです。まず device mapper を実行して、ボリュームを登録する必要があります。

    # /etc/init.d/cryptdisks start
    

    /etc/crypttab に記述されたボリュームすべてを検査し、正しいパスフレーズを入力すると、/dev ディレクトリ以下に、適切なデバイスを作成します。(既に登録されたボリュームはスキップするので、何度実行しても警告がでません) 登録に成功すると、以下のように通常の方法でマウントできます。

    # mount /mount_point
    

  • If any volume holding noncritical system files could not be mounted (/usr or /var), the system should still boot and you should be able to mount the volumes manually like in the previous case. However, you will also need to (re)start any services usually running in your default runlevel because it is very likely that they were not started. The easiest way is to just reboot the computer.